I rediffed it against the git repo which I use and removed the
"extra" raise/lower-only shortcuts and pushed it to the 'next'
testing branch:
http://repo.or.cz/w/wmaker-crm.git/shortlog/refs/heads/next

Brad, is the modified patch OK for you? As I kept you as the
author I want to be sure (I can remove it from 'next' if
necessary).

I liked the functionality, as I had the 'do not cover dock' because
there was no quick way of raising it back when I wanted.

PS: I tested it and it indeed raises/lowers the dock on all 
workspaces at the same time.

---8<----
From: Brad Jorsch <ano...@users.sourceforge.net>
Date: Wed, 6 Jan 2010 12:50:36 -0500
Subject: Keyboard shortcut to raise the dock

This patch adds the DockRaiseLowerKey shortcut, which raises/lowers
the dock depending on whether the dock is lowered/raised.

[crmafra: Reformatted Brad's patch against git repo and removed the
 DockRaiseKey and DockLowerKey shortcuts ]

---
 WPrefs.app/KeyboardShortcuts.c      |    2 ++
 WindowMaker/Defaults/WindowMaker.in |    1 +
 src/defaults.c                      |    2 ++
 src/event.c                         |    4 ++++
 src/keybind.h                       |    3 +++
 5 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/WPrefs.app/KeyboardShortcuts.c b/WPrefs.app/KeyboardShortcuts.c
index 2c44b8c..11e2574 100644
--- a/WPrefs.app/KeyboardShortcuts.c
+++ b/WPrefs.app/KeyboardShortcuts.c
@@ -116,6 +116,7 @@ static char *keyOptions[] = {
        "VirtualEdgeUpKey",
        "VirtualEdgeDownKey",
 #endif
+       "DockRaiseLowerKey",
        "ClipRaiseKey",
        "ClipLowerKey",
 #ifndef XKB_MODELOCK
@@ -522,6 +523,7 @@ static void createPanel(Panel * p)
        WMAddListItem(panel->actLs, _("Move VirtualDesktop to next top edge"));
        WMAddListItem(panel->actLs, _("Move VirtualDesktop to next bottom 
edge"));
 #endif
+       WMAddListItem(panel->actLs, _("Raise/Lower Dock"));
        WMAddListItem(panel->actLs, _("Raise Clip"));
        WMAddListItem(panel->actLs, _("Lower Clip"));
        WMAddListItem(panel->actLs, _("Raise/Lower Clip"));
diff --git a/WindowMaker/Defaults/WindowMaker.in 
b/WindowMaker/Defaults/WindowMaker.in
index 045d2a4..7bca457 100644
--- a/WindowMaker/Defaults/WindowMaker.in
+++ b/WindowMaker/Defaults/WindowMaker.in
@@ -102,6 +102,7 @@
   ClipLowerKey = None;
   ClipRaiseKey = None;
   ConstrainWindowSize = NO;
+  DockRaiseLowerKey = None;
   ClipRaiseLowerKey = None;
   TitleJustify = center;
   WindowTitleFont = "Sans:bold:pixelsize=12";
diff --git a/src/defaults.c b/src/defaults.c
index 3611a7d..f32c440 100644
--- a/src/defaults.c
+++ b/src/defaults.c
@@ -559,6 +559,8 @@ WDefaultEntry optionList[] = {
         NULL, getKeybind, setKeyGrab},
        {"WindowMenuKey", "None", (void *)WKBD_WINDOWMENU,
         NULL, getKeybind, setKeyGrab},
+       {"DockRaiseLowerKey", "None", (void*)WKBD_DOCKRAISELOWER,
+        NULL, getKeybind, setKeyGrab},
        {"ClipLowerKey", "None", (void *)WKBD_CLIPLOWER,
         NULL, getKeybind, setKeyGrab},
        {"ClipRaiseKey", "None", (void *)WKBD_CLIPRAISE,
diff --git a/src/event.c b/src/event.c
index b2aeab3..d1c9ef0 100644
--- a/src/event.c
+++ b/src/event.c
@@ -1690,6 +1690,10 @@ static void handleKeyPress(XEvent * event)
                if (!wPreferences.flags.noclip)
                        
wDockRaiseLower(scr->workspaces[scr->current_workspace]->clip);
                break;
+       case WKBD_DOCKRAISELOWER:
+               if (!wPreferences.flags.nodock)
+                       wDockRaiseLower(scr->dock);
+               break;
 #ifdef KEEP_XKB_LOCK_STATUS
        case WKBD_TOGGLE:
                if (wPreferences.modelock) {
diff --git a/src/keybind.h b/src/keybind.h
index 2daca8d..7c36695 100644
--- a/src/keybind.h
+++ b/src/keybind.h
@@ -50,6 +50,9 @@ enum {
        /* window, menu */
        WKBD_CLOSE,
 
+       /* Dock */
+       WKBD_DOCKRAISELOWER,
+
        /* Clip */
        WKBD_CLIPLOWER,
        WKBD_CLIPRAISE,
-- 
1.6.6


-- 
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.

Reply via email to