Re: fun with window managers.. (help!)



Matthias Clasen wrote:

> I have once written a little test program to experiment with the 4 ICCCM
> focus modes.
> It is not polished at all, but it is good enough to find wm problems with
> focus handling.
> 
> Maybe it is of interest to you (and wm authors, thus I CC'ed wm-spec-list)
> 
> Matthias

Hi Matthias:

Thanks for this program, it is of interest and helpful.

Part of the problem I am having with GDK (and GTK+) is that GDK windows
always set WM_TAKE_FOCUS as one of their protocols, and gdk_window_new
always sets wm_hints.input to TRUE.  Thus it appears that GdkWindows are
always "LOCALLY ACTIVE" in ICCCM terms.  

GtkWindows that are created with type=POPUP are ignored entirely by the
WM, but that's not exactly what we need for an onscreen keyboard. 

What is the opinion of gtk-devel as to how we should proceed?  I may
well be missing pieces of API here, but so far my experiments suggest
that although sawfish respects output-only windows if the protocols and
input flag are set appropriately at creation time, if these flags are
reset after the window is mapped to the screen they are ignored.  (Note
that I am not 100% sure of this yet, I may not be calling the API
correctly to reset these parameters).  Setting these properties before
the windows are mapped to the display does not appear to be possible via
Gtk+.  GDK would seem to allow this via use of foreign windows, but how
then would one tell GTK+ to use a particular GdkWindow to create its
GtkWindow?

The alternative would be to bypass GTK altogether and resort to X API
for creation of the onscreen keyboard, which seems very unattractive for
something that calls itself "Gnome" and lives in Gnome CVS, and would
present portability problems.

Regards, and suggestions solicited ;-)

-Bill



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