summaryrefslogtreecommitdiffstats
path: root/lib/keyboard.pm
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2008-12-08 12:03:51 +0000
committerPascal Rigaux <pixel@mandriva.com>2008-12-08 12:03:51 +0000
commit9fee04afd58d7e3407d6550aa6baeae943c94ae1 (patch)
treeb7d80d38af5d6e6aa563e01563dfca7a1ea97545 /lib/keyboard.pm
parent065a9d8b6082a756e4b3697ffe99d3eb13f149b8 (diff)
downloaddrakx-kbd-mouse-x11-9fee04afd58d7e3407d6550aa6baeae943c94ae1.tar
drakx-kbd-mouse-x11-9fee04afd58d7e3407d6550aa6baeae943c94ae1.tar.gz
drakx-kbd-mouse-x11-9fee04afd58d7e3407d6550aa6baeae943c94ae1.tar.bz2
drakx-kbd-mouse-x11-9fee04afd58d7e3407d6550aa6baeae943c94ae1.tar.xz
drakx-kbd-mouse-x11-9fee04afd58d7e3407d6550aa6baeae943c94ae1.zip
- keyboarddrake:
o configure hal so Xorg can get xkb info (nb: for now, you must "service haldaemon restart" to be taken into account)
Diffstat (limited to 'lib/keyboard.pm')
-rw-r--r--lib/keyboard.pm16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/keyboard.pm b/lib/keyboard.pm
index 4ad9a23..a3c7f15 100644
--- a/lib/keyboard.pm
+++ b/lib/keyboard.pm
@@ -620,6 +620,22 @@ sub configure_xorg {
Xconfig::default::config_keyboard($xfree_conf, $keyboard);
$xfree_conf->write;
}
+ my $hal_dir = "$::prefix/etc/hal/fdi/policy";
+ if (-d $hal_dir) {
+ my $xkb = keyboard::keyboard2full_xkb($keyboard);
+ mkdir "$hal_dir/10osvendor";
+ output("$hal_dir/10osvendor/10-keymap.fdi", sprintf(<<'EOF', $xkb->{XkbLayout}, $xkb->{XkbOptions}));
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<deviceinfo version="0.2">
+ <device>
+ <match key="info.capabilities" contains="input.keys">
+ <merge key="input.xkb.layout" type="string">%s</merge>
+ <merge key="input.xkb.options" type="string">%s</merge>
+ </match>
+ </device>
+</deviceinfo>
+EOF
+ }
}
sub configure_and_set_standalone {