button->down used inconsistently

Daniel Stone daniel at fooishbar.org
Wed Jun 18 11:59:29 PDT 2008

On Wed, Jun 18, 2008 at 11:37:00AM -0700, Keith Packard wrote:
> Here's a patch which avoids counting by just having the master release
> code look at the slave devices and release the button when all of the
> slaves have released theirs.
> From dfb622f991ae95f7d56931d898dbc012cf91ad78 Mon Sep 17 00:00:00 2001
> From: Keith Packard <keithp at keithp.com>
> Date: Sat, 14 Jun 2008 13:40:53 -0700
> Subject: [PATCH] Make button down state a bitmask. Master buttons track union of slave buttons
> Mixing usage where some parts of the code treated this field as a bitmask
> and other parts as an array of card8 was wrong, and as the wire protocol
> wanted bitmasks, it was less invasive to switch the newer counting code use
> booleans.
> Master devices track slave buttons by waiting for all slave buttons to be
> released before delivering the release event to the client.
> This also removes the state merging code in DeepCopyDeviceClasses -- that
> code was changing master device state without delivering any events,
> violating protocol invariants. The result will be that existing slave
> button state which does not match the master will not be visible through the
> master device. Fixing this would require that we synthesize events in this
> function, which seems like a bad idea. Note that keyboards have the same
> issue.

Modulo space vs. tab confusion and some unnecessary != 0's:
Signed-off-by: Daniel Stone <daniel at fooishbar.org>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.x.org/archives/xorg/attachments/20080618/5a930351/attachment.pgp>

More information about the xorg mailing list