+++ /dev/null
-From 9966d0a83ad7cf5ea76a04f31912e92908f3da63 Mon Sep 17 00:00:00 2001
-From: Daniel Stone <daniel@fooishbar.org>
-Date: Thu, 19 Jan 2012 16:36:16 +1100
-Subject: [PATCH] Hide ClearGrab/CloseGrabs actions behind an option
-
-Similar to how we put the Terminate mapping behind an option rather than
-enabling it by default, put the ClearGrab/CloseGrab action handlers
-behind an option too, so we don't ship 'break my screensaver'. Oops.
-
-Signed-off-by: Daniel Stone <daniel@fooishbar.org>
----
- compat/xfree86 | 15 +++++++++------
- rules/base.o_c.part | 1 +
- rules/base.xml.in | 6 ++++++
- 3 files changed, 16 insertions(+), 6 deletions(-)
-
-diff --git a/compat/xfree86 b/compat/xfree86
-index cf4a8b2..52e661d 100644
---- a/compat/xfree86
-+++ b/compat/xfree86
-@@ -41,12 +41,6 @@ default partial xkb_compatibility "basic" {
- action = SwitchScreen(Screen=12, !SameServer);
- };
-
-- interpret XF86_Ungrab {
-- action = Private(type=0x86, data="Ungrab");
-- };
-- interpret XF86_ClearGrab {
-- action = Private(type=0x86, data="ClsGrb");
-- };
- interpret XF86LogGrabInfo {
- action = Private(type=0x86, data="PrGrbs");
- };
-@@ -61,3 +55,12 @@ default partial xkb_compatibility "basic" {
- action = Private(type=0x86, data="-VMode");
- };
- };
-+
-+partial xkb_compatibility "grab_break" {
-+ interpret XF86_Ungrab {
-+ action = Private(type=0x86, data="Ungrab");
-+ };
-+ interpret XF86_ClearGrab {
-+ action = Private(type=0x86, data="ClsGrb");
-+ };
-+};
-diff --git a/rules/base.o_c.part b/rules/base.o_c.part
-index 352f8b3..b80ab6d 100644
---- a/rules/base.o_c.part
-+++ b/rules/base.o_c.part
-@@ -3,4 +3,5 @@
- grp_led:scroll = +ledscroll(group_lock)
- japan:kana_lock = +japan(kana_lock)
- caps:shiftlock = +ledcaps(shift_lock)
-+ grab:break_actions = +xfree86(grab_break)
-
-diff --git a/rules/base.xml.in b/rules/base.xml.in
-index 22b720f..6c17faa 100644
---- a/rules/base.xml.in
-+++ b/rules/base.xml.in
-@@ -6278,6 +6278,12 @@
- <_description>Toggle PointerKeys with Shift + NumLock.</_description>
- </configItem>
- </option>
-+ <option>
-+ <configItem>
-+ <name>grab:break_actions</name>
-+ <_description>Allow breaking grabs with keyboard actions (warning: security risk)</_description>
-+ </configItem>
-+ </option>
- </group>
- <group allowMultipleSelection="true">
- <!-- Special shortcuts for the Euro character -->
---
-1.7.8.3
+++ /dev/null
-commit 1d1338afa6aa555c5f6c83d07fceec43a4d87f0d
-Author: Sergey V. Udaltsov <svu@gnome.org>
-Date: Wed Oct 5 22:26:26 2011 +0100
-
- Levels 2-4 for CTRL+ALT are propagated from level 1
-
-diff --git a/symbols/keypad b/symbols/keypad
-index e85aaac..1bab391 100644
---- a/symbols/keypad
-+++ b/symbols/keypad
-@@ -84,19 +84,19 @@ xkb_symbols "x11" {
- // Ungrab cancels server/keyboard/pointer grabs
- key <KPDV> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Divide, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Ungrab ]
-+ symbols[Group1]= [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86_Ungrab ]
- };
-
- // ClsGrb kills whichever client has a grab in effect
- key <KPMU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Multiply, VoidSymbol, VoidSymbol, VoidSymbol, XF86_ClearGrab ]
-+ symbols[Group1]= [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86_ClearGrab ]
- };
-
- // -VMode switches to the previous video mode
- key <KPSU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Subtract, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Prev_VMode ]
-+ symbols[Group1]= [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86_Prev_VMode ]
- };
-
- key <KP7> { [ KP_Home, KP_7 ] };
-@@ -106,7 +106,7 @@ xkb_symbols "x11" {
- // +VMode switches to the next video mode
- key <KPAD> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Add, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Next_VMode ]
-+ symbols[Group1]= [ KP_Add, KP_Add, KP_Add, KP_Add, XF86_Next_VMode ]
- };
-
- key <KP4> { [ KP_Left, KP_4 ] };
-@@ -242,11 +242,11 @@ xkb_symbols "legacymath" {
-
- key.type[Group1]="CTRL+ALT" ;
-
-- key <KPDV> { [ KP_Divide, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Ungrab ] }; // / <XF86_Ungrab>
-- key <KPMU> { [ KP_Multiply, VoidSymbol, VoidSymbol, VoidSymbol, XF86_ClearGrab ] }; // * <XF86_ClearGrab>
-- key <KPSU> { [ KP_Subtract, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Prev_VMode ] }; // - <XF86_Prev_VMode>
-+ key <KPDV> { [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86_Ungrab ] }; // / <XF86_Ungrab>
-+ key <KPMU> { [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86_ClearGrab ] }; // * <XF86_ClearGrab>
-+ key <KPSU> { [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86_Prev_VMode ] }; // - <XF86_Prev_VMode>
-
-- key <KPAD> { [ KP_Add, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Next_VMode ] }; // + <XF86_Next_VMode>
-+ key <KPAD> { [ KP_Add, KP_Add, KP_Add, KP_Add, XF86_Next_VMode ] }; // + <XF86_Next_VMode>
-
- };
-
-@@ -602,7 +602,7 @@ xkb_symbols "numoperdecsep" {
- // ClsGrb kills whichever client has a grab in effect
- key <KOMU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Multiply, VoidSymbol, VoidSymbol, VoidSymbol, XF86_ClearGrab ]
-+ symbols[Group1]= [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86_ClearGrab ]
- };
-
- key <KO4> { [ KP_4 ] };
-@@ -611,7 +611,7 @@ xkb_symbols "numoperdecsep" {
- // -VMode switches to the previous video mode
- key <KOSU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Subtract, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Prev_VMode ]
-+ symbols[Group1]= [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86_Prev_VMode ]
- };
-
- key <KO1> { [ KP_1 ] };
-@@ -620,7 +620,7 @@ xkb_symbols "numoperdecsep" {
- // +VMode switches to the next video mode
- key <KOAD> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Add, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Next_VMode ]
-+ symbols[Group1]= [ KP_Add, KP_Add, KP_Add, KP_Add, XF86_Next_VMode ]
- };
-
- key <KO0> { [ KP_0 ] };
-@@ -628,6 +628,6 @@ xkb_symbols "numoperdecsep" {
- // Ungrab cancels server/keyboard/pointer grabs
- key <KODV> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Divide, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Ungrab ]
-+ symbols[Group1]= [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86_Ungrab ]
- };
- };
-diff --git a/symbols/srvr_ctrl b/symbols/srvr_ctrl
-index 7d47d66..73b5af2 100644
---- a/symbols/srvr_ctrl
-+++ b/symbols/srvr_ctrl
-@@ -12,25 +12,25 @@ xkb_symbols "stdkeypad" {
- // Ungrab cancels server/keyboard/pointer grabs
- key <KPDV> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Divide, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Ungrab ]
-+ symbols[Group1]= [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86_Ungrab ]
- };
-
- // ClsGrb kills whichever client has a grab in effect
- key <KPMU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Multiply, VoidSymbol, VoidSymbol, VoidSymbol, XF86_ClearGrab ]
-+ symbols[Group1]= [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86_ClearGrab ]
- };
-
- // -VMode switches to the previous video mode
- key <KPSU> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Subtract, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Prev_VMode ]
-+ symbols[Group1]= [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86_Prev_VMode ]
- };
-
- // +VMode switches to the next video mode
- key <KPAD> {
- type="CTRL+ALT",
-- symbols[Group1]= [ KP_Add, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Next_VMode]
-+ symbols[Group1]= [ KP_Add, KP_Add, KP_Add, KP_Add, XF86_Next_VMode]
- };
-
- };
-@@ -40,62 +40,62 @@ xkb_symbols "fkey2vt" {
-
- key <FK01> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F1, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_1 ]
-+ symbols[Group1]= [ F1, F1, F1, F1, XF86_Switch_VT_1 ]
- };
-
- key <FK02> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F2, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_2 ]
-+ symbols[Group1]= [ F2, F2, F2, F2, XF86_Switch_VT_2 ]
- };
-
- key <FK03> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F3, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_3 ]
-+ symbols[Group1]= [ F3, F3, F3, F3, XF86_Switch_VT_3 ]
- };
-
- key <FK04> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F4, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_4 ]
-+ symbols[Group1]= [ F4, F4, F4, F4, XF86_Switch_VT_4 ]
- };
-
- key <FK05> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F5, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_5 ]
-+ symbols[Group1]= [ F5, F5, F5, F5, XF86_Switch_VT_5 ]
- };
-
- key <FK06> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F6, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_6 ]
-+ symbols[Group1]= [ F6, F6, F6, F6, XF86_Switch_VT_6 ]
- };
-
- key <FK07> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F7, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_7 ]
-+ symbols[Group1]= [ F7, F7, F7, F7, XF86_Switch_VT_7 ]
- };
-
- key <FK08> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F8, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_8 ]
-+ symbols[Group1]= [ F8, F8, F8, F8, XF86_Switch_VT_8 ]
- };
-
- key <FK09> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F9, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_9 ]
-+ symbols[Group1]= [ F9, F9, F9, F9, XF86_Switch_VT_9 ]
- };
-
- key <FK10> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F10, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_10 ]
-+ symbols[Group1]= [ F10, F10, F10, F10, XF86_Switch_VT_10 ]
- };
-
- key <FK11> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F11, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_11 ]
-+ symbols[Group1]= [ F11, F11, F11, F11, XF86_Switch_VT_11 ]
- };
-
- key <FK12> {
- type="CTRL+ALT",
-- symbols[Group1]= [ F12, VoidSymbol, VoidSymbol, VoidSymbol, XF86_Switch_VT_12 ]
-+ symbols[Group1]= [ F12, F12, F12, F12, XF86_Switch_VT_12 ]
- };
-
- };
-diff --git a/symbols/terminate b/symbols/terminate
-index 96dd6e8..c74220b 100644
---- a/symbols/terminate
-+++ b/symbols/terminate
-@@ -2,6 +2,6 @@ partial default modifier_keys
- xkb_symbols "ctrl_alt_bksp" {
- key <BKSP> {
- type="CTRL+ALT",
-- symbols[Group1] = [ NoSymbol, VoidSymbol, VoidSymbol, VoidSymbol, Terminate_Server ]
-+ symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Terminate_Server ]
- };
- };