On Sun, 2009-03-22 at 10:08 +1000, Peter Hutterer wrote:

> It's all done by the library anyway, libXi provides a double for these values.
> Clients won't notice the difference.

So make it an INT32 and pass around 16.16 coordinates inside the X
server. That will ensure that the fractional coordinates are handled
correctly through all server paths without having to test with devices
that generate fractional data.

> The focus model is the same as it was before, just the wire format has been
> added. So DeliverFocusedEvent() now delivers both XI2 and XI1. Not sure about
> this specific case you mentioned, but if it was covered in the old model, then
> it is covered now. If not - then the model is buggy anyway.

The old model focus stuff was terrible -- you'd get focus events only
when the focus was explicitly moved, not when it moved implicitly to
follow the pointer.

As a further fix, it would be nice to have a focus model which set the
input focus to a specific window and *didn't* follow the pointer inside
sub-windows. Application embedding really wants this.

Fixing focus would be a huge win, and might get applications to abandon
core events more quickly :-)

> So the current solution isn't pretty either and needs to be fixed. which one
> is easier to fix remains to be seen.

Frankly, I expect fixing event routing to be easier than fixing grabs.
But, I haven't tried either...

-- 
[email protected]

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
xorg-devel mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to