Input: rename DeviceIntRec->isMaster to ->type.

isMaster is not enough as long as we differ between master pointers and
keyboard. With flexible device classes, the usual checks for whether a
master device is a pointer (currently check for ->button, ->valuators or
->key) do not work as an SD may post an event through a master and mess this
check up.

Example, a device with valuators but no buttons would remove the button
class from the VCP and thus result in the
IsPointerDevice(inputInfo.pointer) == FALSE.

This will become worse in the future when new device classes are introduced
that aren't provided in the current system (e.g. a switch class).

This patch replaces isMaster with "type", one of SLAVE, MASTER_POINTER and
MASTER_KEYBOARD. All checks for dev->isMaster are replaced with an
IsMaster(dev).
This commit is contained in:
Peter Hutterer 2009-05-20 15:28:16 +10:00
commit b12d302df8
23 changed files with 135 additions and 122 deletions

View file

@ -546,7 +546,7 @@ CoreEnterLeaveEvents(DeviceIntPtr dev,
WindowPtr to,
int mode)
{
if (!dev->isMaster)
if (!IsMaster(dev))
return;
LeaveWindow(dev, from, mode);
@ -1216,7 +1216,7 @@ CoreFocusEvents(DeviceIntPtr dev,
WindowPtr to,
int mode)
{
if (!dev->isMaster)
if (!IsMaster(dev))
return;
SetFocusOut(dev, from);