From e11dc10f01603b181e224c90d1dd4abe940f2ce7 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 12 Mar 2009 10:21:00 +1000 Subject: [PATCH] dix: Send HierarchyEvents when devices are added/removed/enabled/disabled. --- dix/devices.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dix/devices.c b/dix/devices.c index 64af57fd2..8c8a2151a 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -82,6 +82,7 @@ SOFTWARE. #include "xiproperty.h" #include "enterleave.h" /* for EnterWindow() */ #include "xserver-properties.h" +#include "chdevhier.h" /* For XISendDeviceHierarchyEvent */ /** @file * This file handles input device-related stuff. @@ -343,6 +344,7 @@ EnableDevice(DeviceIntPtr dev) TRUE); SendDevicePresenceEvent(dev->id, DeviceEnabled); + XISendDeviceHierarchyEvent(HF_DeviceEnabled); return TRUE; } @@ -413,6 +415,7 @@ DisableDevice(DeviceIntPtr dev) TRUE); SendDevicePresenceEvent(dev->id, DeviceDisabled); + XISendDeviceHierarchyEvent(HF_DeviceDisabled); return TRUE; } @@ -444,6 +447,7 @@ ActivateDevice(DeviceIntPtr dev) pScreen->DeviceCursorInitialize(dev, pScreen); SendDevicePresenceEvent(dev->id, DeviceAdded); + XISendDeviceHierarchyEvent(HF_SlaveAdded); return ret; } @@ -941,6 +945,7 @@ RemoveDevice(DeviceIntPtr dev) if (ret == Success && initialized) { inputInfo.numDevices--; SendDevicePresenceEvent(deviceid, DeviceRemoved); + XISendDeviceHierarchyEvent(HF_SlaveRemoved); } return ret;