summaryrefslogtreecommitdiff
path: root/dix
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@redhat.com>2008-09-18 18:21:03 +0930
committerPeter Hutterer <peter.hutterer@redhat.com>2008-09-26 13:32:08 +0930
commita2d83b9dc8387ec7e70689db1371cf6500b2f68e (patch)
tree023558fc93239790152337b995c18e95122da413 /dix
parent22e90472681ebc7bdd28f82bbf2753a5b259e931 (diff)
Xi: add "deletable" flag to properties, add DeleteProperty handler.
A property can only be deleted if any of the following is true: - if a property is deletable and all handlers return Success. - if a property is non-deleteable and the all handlers return Success AND the delete request does not come from a client (i.e. driver or the server). A client can never delete a non-deletable property.
Diffstat (limited to 'dix')
-rw-r--r--dix/devices.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/dix/devices.c b/dix/devices.c
index fb634730f..e6f21c924 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -223,7 +223,8 @@ AddInputDevice(ClientPtr client, DeviceProc deviceProc, Bool autoStart)
XIChangeDeviceProperty(dev, XIGetKnownProperty(XI_PROP_ENABLED),
XA_INTEGER, 8, PropModeReplace, 1, &dev->enabled,
FALSE);
- XIRegisterPropertyHandler(dev, DeviceSetProperty, NULL);
+ XISetDevicePropertyDeletable(dev, XIGetKnownProperty(XI_PROP_ENABLED), FALSE);
+ XIRegisterPropertyHandler(dev, DeviceSetProperty, NULL, NULL);
return dev;
}