XEMBED: Preventing focus loops
Andreas Aardal Hanssen
xdg at andreas.hanssen.name
Thu Aug 21 16:39:40 EEST 2003
Owen,
On Thu, 21 Aug 2003, Owen Taylor wrote:
>My proposed solution to this is to define the currently unused data1
>of the XEMBED_FOCUS_IN, XEMBED_FOCUS_PREV and XEMBED_FOCUS next
>messages as a flags field, with currently one flag defined:
>#define XEMBED_FOCUS_WRAPAROUND (1 << 0)
>When sending one of these messages, the flag is set as follows:
>(...)
>All other bits in the field are unused and must be set to zero.
>Notes about the proposal:
> * The only difficult thing about implementing this proposal
> is detecting when XEMBED_FOCUS_NEXT causes a wrap-around
> at the toplevel. It required some hackiness to implement
> in GTK+. I think most toolkits will be similar - a bit
> hacky to do but possible.
I second this suggestion. Implementation of this feature in the current
work on updated XEmbed support in Qt is trivial. I'm pleased to see a
simpler solution to this problem than the serial number / response message
sketch in the issues section.
> * I didn't up the protocol version because it is a highly
> compatible addition - there is nothing you would do
> differently if you knew that the other side didn't
> understand XEMBED_FOCUS_WRAPAROUND.
I agree in the sense that this suggestion solves a "bug" in the original
specificaion (although it was mentioned in issues in 0.5). However keeping
the version number usually suggests there are no changes.
You may want to add a revision number.
Regards, Andreas
--
Andreas Aardal Hanssen
More information about the xdg
mailing list