[PATCH 2/2] Input: Add input.x11_driver

Daniel Stone daniel at fooishbar.org
Tue Aug 7 15:46:53 PDT 2007


Add the input.x11_driver property, which specifies an X11 input driver to use,
as well as an initial FDI that tries to use evdev on Linux.
---
 doc/spec/hal-spec-properties.xml       |    8 ++++++++
 fdi/policy/10osvendor/10-x11-input.fdi |   23 +++++++++++++++++++++++
 fdi/policy/10osvendor/Makefile.am      |    1 +
 3 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/doc/spec/hal-spec-properties.xml b/doc/spec/hal-spec-properties.xml
index b360374..f5865fe 100644
--- a/doc/spec/hal-spec-properties.xml
+++ b/doc/spec/hal-spec-properties.xml
@@ -4634,6 +4634,14 @@ org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'}
               <entry>Yes</entry>
               <entry>Special device file for recieving input events</entry>
             </row>
+            <row>
+              <entry>
+                <literal>input.x11_driver</literal> (string)
+              </entry>
+              <entry>e.g. "evdev"</entry>
+              <entry>No</entry>
+              <entry>X11 input driver to use</entry>
+            </row>
           </tbody>
         </tgroup>
       </informaltable>
diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
new file mode 100644
index 0000000..6bd8e76
--- /dev/null
+++ b/fdi/policy/10osvendor/10-x11-input.fdi
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<deviceinfo version="0.2">
+  <device>
+    <!-- FIXME: Support tablets too. -->
+    <match key="info.capabilities" contains="input.mouse">
+      <merge key="input.x11_driver" type="string">mouse</merge>
+      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
+             string="Linux">
+        <merge key="input.x11_driver" type="string">evdev</merge>
+      </match>
+    </match>
+
+    <match key="info.capabilities" contains="input.keys">
+      <!-- If we're using Linux, we use evdev by default (falling back to
+           keyboard otherwise). -->
+      <merge key="input.x11_driver" type="string">keyboard</merge>
+      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
+             string="Linux">
+        <merge key="input.x11_driver" type="string">evdev</merge>
+      </match>
+    </match>
+  </device>
+</deviceinfo>
diff --git a/fdi/policy/10osvendor/Makefile.am b/fdi/policy/10osvendor/Makefile.am
index f3c7676..91b935e 100644
--- a/fdi/policy/10osvendor/Makefile.am
+++ b/fdi/policy/10osvendor/Makefile.am
@@ -3,6 +3,7 @@ fdidir = $(datadir)/hal/fdi/policy/10osvendor
 
 dist_fdi_DATA = 			\
 	10-input-policy.fdi		\
+	10-x11-input.fdi		\
 	10-power-mgmt-policy.fdi	\
 	10-rfkill-switch.fdi		\
 	10-laptop-panel-mgmt-policy.fdi	\
-- 
1.4.4.2



More information about the hal mailing list