Re: [PATCH RFC] New raw event behaviour for XI 2.1

2011-05-12 Thread Simon Thum
On 05/12/2011 01:57 AM, Peter Hutterer wrote:
 On Wed, May 11, 2011 at 09:16:15PM +0200, Simon Thum wrote:
 On 05/11/2011 06:59 AM, Peter Hutterer wrote:

 The current raw event behaviour is pretty useless. RawEvents are sent to all
 root windows but only if the device is not grabbed. Clients that need to
 monitor devices can only do so by grabbing the device - rendering it
 unusable to other clients. Real device monitoring (like we want for 2.1
 touch support for example) is not possible.
 I have yet to hear of someone who actually needs the current behaviour and I
 can't imagine a use-case that does either.
 Hi Peter,

 it's great you're tackling this. When I suggested raw events I didn't
 think such limits would apply for whatever reason.

 I haven't read the spec recently, but I'm sure I would have objected
 that when raw events were introduced - given I had noticed. So I'd say
 if there is no explicit statement that raw events are subject to grabs
 before 2.1, why not change it to match common sense, disregarding client
 protocol version?
 
 There is an explicit statement in the protocol:
 RawEvents are sent exclusively to all root windows or to the client
 that grabbed the device only.
Thanks for the clarification. I guess the intent was to support
full-screen apps and those who care, but I don't think a grab implements
that properly.

Cheers,

Simon

 
 So we can't change it for 2.0 anymore, but as you can see from the patchset
 it's quite trivial to support it for 2.1.
 
 Cheers,
   Peter
 
 
 After all, they're separate events. Reliance on such a (unspecified)
 detail should be very low.

 Cheers,

 Simon



 Change the behaviour for clients supporting 2.1 so that raw events are
 delivered regardless whether a grab is active on the device. Behaviour for
 2.0 clients stays the same. Clients that grabbed devices to get raw events
 will still get raw events, so that part of the 2.0 behaviour is preserved
 even with 2.1.

 No protocol additions, only documentation update necessary. No libXi patch
 needed. Note that if you just apply the patch as-is, testing will fail since
 XIQueryVersion still limits the server to 2.0. You need to manually bump the
 server to 2.1 for the changes to take effect.

 The X server patch builds onto the patchset I just sent out before.

 Cheers,
   Peter

 ___
 xorg-devel@lists.x.org: X.Org development
 Archives: http://lists.x.org/archives/xorg-devel
 Info: http://lists.x.org/mailman/listinfo/xorg-devel


 

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


Re: [PATCH RFC] New raw event behaviour for XI 2.1

2011-05-12 Thread Peter Hutterer
On Thu, May 12, 2011 at 10:06:47AM +0200, Simon Thum wrote:
 On 05/12/2011 01:57 AM, Peter Hutterer wrote:
  On Wed, May 11, 2011 at 09:16:15PM +0200, Simon Thum wrote:
  On 05/11/2011 06:59 AM, Peter Hutterer wrote:
 
  The current raw event behaviour is pretty useless. RawEvents are sent to 
  all
  root windows but only if the device is not grabbed. Clients that need to
  monitor devices can only do so by grabbing the device - rendering it
  unusable to other clients. Real device monitoring (like we want for 2.1
  touch support for example) is not possible.
  I have yet to hear of someone who actually needs the current behaviour 
  and I
  can't imagine a use-case that does either.
  Hi Peter,
 
  it's great you're tackling this. When I suggested raw events I didn't
  think such limits would apply for whatever reason.
 
  I haven't read the spec recently, but I'm sure I would have objected
  that when raw events were introduced - given I had noticed. So I'd say
  if there is no explicit statement that raw events are subject to grabs
  before 2.1, why not change it to match common sense, disregarding client
  protocol version?
  
  There is an explicit statement in the protocol:
  RawEvents are sent exclusively to all root windows or to the client
  that grabbed the device only.
 Thanks for the clarification. I guess the intent was to support
 full-screen apps and those who care, but I don't think a grab implements
 that properly.

IIRC the intent was to not make it too easy to build keyloggers, but that
was woefully misguided since that is still rather simple and we lost vital
functionality.

grabbing of course still works for trapping the mouse cursor, especially
so with the recent confine to patches we've had on the list.

Cheers,
  Peter


  
  So we can't change it for 2.0 anymore, but as you can see from the patchset
  it's quite trivial to support it for 2.1.
  
  Cheers,
Peter
  
  
  After all, they're separate events. Reliance on such a (unspecified)
  detail should be very low.
 
  Cheers,
 
  Simon
 
 
 
  Change the behaviour for clients supporting 2.1 so that raw events are
  delivered regardless whether a grab is active on the device. Behaviour for
  2.0 clients stays the same. Clients that grabbed devices to get raw events
  will still get raw events, so that part of the 2.0 behaviour is preserved
  even with 2.1.
 
  No protocol additions, only documentation update necessary. No libXi patch
  needed. Note that if you just apply the patch as-is, testing will fail 
  since
  XIQueryVersion still limits the server to 2.0. You need to manually bump 
  the
  server to 2.1 for the changes to take effect.
 
  The X server patch builds onto the patchset I just sent out before.
 
  Cheers,
Peter
 
  ___
  xorg-devel@lists.x.org: X.Org development
  Archives: http://lists.x.org/archives/xorg-devel
  Info: http://lists.x.org/mailman/listinfo/xorg-devel
 
 
  
 
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


Re: [PATCH RFC] New raw event behaviour for XI 2.1

2011-05-11 Thread Simon Thum
On 05/11/2011 06:59 AM, Peter Hutterer wrote:
 
 The current raw event behaviour is pretty useless. RawEvents are sent to all
 root windows but only if the device is not grabbed. Clients that need to
 monitor devices can only do so by grabbing the device - rendering it
 unusable to other clients. Real device monitoring (like we want for 2.1
 touch support for example) is not possible.
 I have yet to hear of someone who actually needs the current behaviour and I
 can't imagine a use-case that does either.
Hi Peter,

it's great you're tackling this. When I suggested raw events I didn't
think such limits would apply for whatever reason.

I haven't read the spec recently, but I'm sure I would have objected
that when raw events were introduced - given I had noticed. So I'd say
if there is no explicit statement that raw events are subject to grabs
before 2.1, why not change it to match common sense, disregarding client
protocol version?

After all, they're separate events. Reliance on such a (unspecified)
detail should be very low.

Cheers,

Simon


 
 Change the behaviour for clients supporting 2.1 so that raw events are
 delivered regardless whether a grab is active on the device. Behaviour for
 2.0 clients stays the same. Clients that grabbed devices to get raw events
 will still get raw events, so that part of the 2.0 behaviour is preserved
 even with 2.1.
 
 No protocol additions, only documentation update necessary. No libXi patch
 needed. Note that if you just apply the patch as-is, testing will fail since
 XIQueryVersion still limits the server to 2.0. You need to manually bump the
 server to 2.1 for the changes to take effect.
 
 The X server patch builds onto the patchset I just sent out before.
 
 Cheers,
   Peter
 
 ___
 xorg-devel@lists.x.org: X.Org development
 Archives: http://lists.x.org/archives/xorg-devel
 Info: http://lists.x.org/mailman/listinfo/xorg-devel
 

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


Re: [PATCH RFC] New raw event behaviour for XI 2.1

2011-05-11 Thread Peter Hutterer
On Wed, May 11, 2011 at 09:16:15PM +0200, Simon Thum wrote:
 On 05/11/2011 06:59 AM, Peter Hutterer wrote:
  
  The current raw event behaviour is pretty useless. RawEvents are sent to all
  root windows but only if the device is not grabbed. Clients that need to
  monitor devices can only do so by grabbing the device - rendering it
  unusable to other clients. Real device monitoring (like we want for 2.1
  touch support for example) is not possible.
  I have yet to hear of someone who actually needs the current behaviour and I
  can't imagine a use-case that does either.
 Hi Peter,
 
 it's great you're tackling this. When I suggested raw events I didn't
 think such limits would apply for whatever reason.
 
 I haven't read the spec recently, but I'm sure I would have objected
 that when raw events were introduced - given I had noticed. So I'd say
 if there is no explicit statement that raw events are subject to grabs
 before 2.1, why not change it to match common sense, disregarding client
 protocol version?

There is an explicit statement in the protocol:
RawEvents are sent exclusively to all root windows or to the client
that grabbed the device only.

So we can't change it for 2.0 anymore, but as you can see from the patchset
it's quite trivial to support it for 2.1.

Cheers,
  Peter


 After all, they're separate events. Reliance on such a (unspecified)
 detail should be very low.
 
 Cheers,
 
 Simon
 
 
  
  Change the behaviour for clients supporting 2.1 so that raw events are
  delivered regardless whether a grab is active on the device. Behaviour for
  2.0 clients stays the same. Clients that grabbed devices to get raw events
  will still get raw events, so that part of the 2.0 behaviour is preserved
  even with 2.1.
  
  No protocol additions, only documentation update necessary. No libXi patch
  needed. Note that if you just apply the patch as-is, testing will fail since
  XIQueryVersion still limits the server to 2.0. You need to manually bump the
  server to 2.1 for the changes to take effect.
  
  The X server patch builds onto the patchset I just sent out before.
  
  Cheers,
Peter
  
  ___
  xorg-devel@lists.x.org: X.Org development
  Archives: http://lists.x.org/archives/xorg-devel
  Info: http://lists.x.org/mailman/listinfo/xorg-devel
  
 
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


[PATCH RFC] New raw event behaviour for XI 2.1

2011-05-10 Thread Peter Hutterer

The current raw event behaviour is pretty useless. RawEvents are sent to all
root windows but only if the device is not grabbed. Clients that need to
monitor devices can only do so by grabbing the device - rendering it
unusable to other clients. Real device monitoring (like we want for 2.1
touch support for example) is not possible.
I have yet to hear of someone who actually needs the current behaviour and I
can't imagine a use-case that does either.

Change the behaviour for clients supporting 2.1 so that raw events are
delivered regardless whether a grab is active on the device. Behaviour for
2.0 clients stays the same. Clients that grabbed devices to get raw events
will still get raw events, so that part of the 2.0 behaviour is preserved
even with 2.1.

No protocol additions, only documentation update necessary. No libXi patch
needed. Note that if you just apply the patch as-is, testing will fail since
XIQueryVersion still limits the server to 2.0. You need to manually bump the
server to 2.1 for the changes to take effect.

The X server patch builds onto the patchset I just sent out before.

Cheers,
  Peter

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel