[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#25408: Remove Decorations Around Emacs Frame (Windows OS)

From: martin rudalics
Subject: bug#25408: Remove Decorations Around Emacs Frame (Windows OS)
Date: Thu, 13 Apr 2017 09:10:26 +0200

>> When can you remove the decorations?  Does it flicker when you do that?
> I mean, it *can* resize after I remove the decorations.

I wanted to know "when" in the sense of "what do you have to wait for"
to remove the decorations?  Can you send two requests in a row - a first
one to create a decorated frame and a second one to remove the
decorations - or do you have to wait for a response for the first
request before issuing the second one.

> There’s no
> flickering, it’s all quite smooth.

Then I see no problems with an approach that makes the frame initially
decorated and removes the decorations ASAP.

> The actual macOS window resizes, but the contents of that window
> (Emacs) don’t. I’ve attached a screenshot that will hopefully explain
> it better.
> If I add decorations and remove them again:
>      (set-frame-parameter nil 'undecorated nil)
>      (set-frame-parameter nil 'undecorated t)
> Then I can resize it fine. So it seems like the decorations are adding
> something that allows the resize to work.
> I’ve tried turning on NSTRACE, but the output looks identical whether
> resizing works or not.

Is this in windowDidResize or windowWillResize?  I have no idea how the
NS API works.  But if the redecorate/reundecorate approach works well, I
wouldn't care too much.

Can you look also into three other things I added:

- Provide a `move-frame-functions' hook.

- Provide "frame restacking" which should work via orderWindow.  I
  suppose NS has no equivalent for z-groups.

- Provide "child frames" which should work via parentWindow.

I don't know whether NS child windows always behave like NS "drawers" or
may also occlude the parent frame like under X or Windows.  Eventually
I'd like to have them both (like Wayland's subsurfaces if I understand
them correctly).  Drawers look like a pain when you are in fullscreen
mode - IIUC there's no way to open them "into" a fullscreen frame.
X/Windows child windows are annoying when you are in a normal, fairly
small frame where they get clipped too easily.

Thanks, martin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]