bug-gnustep
[Top][All Lists]
Advanced

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

Re: [RFC] Menus in lower left corner, possible patch


From: Michael Hanni
Subject: Re: [RFC] Menus in lower left corner, possible patch
Date: Sun, 9 Mar 2003 16:33:25 -0800 (PST)

Willem,

--- Willem Rein Oudshoorn <woudshoo@xs4all.nl> wrote:
>
> I just tested the use of the override_redirect flag.  Problems:
> 
> * With WindowMaker, they are present on all desktops.
> * Somehow placement is messed after hiding.

Ja, these are the problems with override_redirect...

> After a short time of experimenting I have found a solution.
> However the solution is such a hack that I hardly dare proposing
> it.  
[snip... solution]

I'm unhappy with this solution just because how hacky it is... However, I've
always been unorthodox when it comes to fixing things. ;-)

However, your ideas here reminded me of something I read once on the web and
after some digging I came across the X function that may help out:
XWithdrawWindow.

>From the man page:
       The XWithdrawWindow function unmaps the specified window
       and sends a synthetic UnmapNotify event to the root window
       of the specified screen.  Window managers may elect to
       receive this message and may treat it as a request to
       change the window's state to withdrawn.  When a window is
       in the withdrawn state, neither its normal nor its iconic
       representations is visible.  It returns a nonzero status
       if the UnmapNotify event is successfully sent; otherwise,
       it returns a zero status.

If I switch XUnmapWindow to XWithdrawWindow in XGServerWindow (orderwindow:) I
can scroll up and down the menu without getting permanent hanger ons in the
bottom left corner. They do flicker to life down there but are almost
instantaneously unmapped.

Anyhow, you shouldn't withdraw all windows, but perhaps this will help you on
the right path...

Cheers!

Michael

p.s. check gdkwindow-x11.c in the gtk+ sources for an example.

=====





reply via email to

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