Carsten Haitzler (The Rasterman) wrote: > btw - whats up with qt's icccm take_focus handling? if you send a > take_focus client message (as per icccm) WITHOUT first setting the > focus on the window - qt doesnt honor the request and take the focus > (even though it advertises that it does take focus protocol). the > icccm doesnt say the window must have been focused first :) have i > monumentally misunderstood the icccm or is there some deeper meaning > behind doing this?
Qt uses the Locally Active Input model described in section 4.1.7: "The client expects keyboard input and explicitly sets the focus, but it only does so when one of its windows already has the focus." This is indicated by setting the accepts_input field in WM_HINTS and WM_TAKE_FOCUS in WM_PROTOCOLS. I wouldn't call this a bug, but then again, it's all a matter of interpretation, right? :) > ie this works: > ecore_x_window_focus(bd->client.win); > ecore_x_icccm_take_focus_send(bd->client.win, ecore_x_current_time_get()); > > this does not: > ecore_x_icccm_take_focus_send(bd->client.win, ecore_x_current_time_get()); > > gtk advertises take focus proto and it does work with this. is it > possible you guys have a bug? :) Sounds like they are using the Globally Active Input model, where the accepts_focus field is not set. This allows the client to decide if it wants to accept the focus or not. -- Bradley T. Hughes - bhughes at trolltech.com Trolltech AS - Waldemar Thranes gt. 98 N-0175 Oslo, Norway _______________________________________________ wm-spec-list mailing list wm-spec-list@gnome.org http://mail.gnome.org/mailman/listinfo/wm-spec-list