[Xfce4-commits] <xfwm4:master> Implement raise or lower shortcut

Olivier Fourdan noreply at xfce.org
Thu Oct 27 13:36:02 CEST 2011


Updating branch refs/heads/master
         to 6fe0c5715ab782e09fa700935bdb0a1aa6c85d90 (commit)
       from 091ea0184ac2b72ffe21fbe6b210e44c6ffb6083 (commit)

commit 6fe0c5715ab782e09fa700935bdb0a1aa6c85d90
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Thu Oct 27 13:35:11 2011 +0200

    Implement raise or lower shortcut

 settings-dialogs/xfwm4-settings.c |    1 +
 src/events.c                      |   10 ++++++++++
 src/settings.c                    |    1 +
 src/settings.h                    |    1 +
 4 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/settings-dialogs/xfwm4-settings.c b/settings-dialogs/xfwm4-settings.c
index 7e1a700..aa7e886 100644
--- a/settings-dialogs/xfwm4-settings.c
+++ b/settings-dialogs/xfwm4-settings.c
@@ -254,6 +254,7 @@ static const ShortcutTemplate shortcut_values[] = {
   { N_("Stick window"), "stick_window_key", NULL },
   { N_("Raise window"), "raise_window_key", NULL },
   { N_("Lower window"), "lower_window_key", NULL },
+  { N_("Raise or loser window"), "raiselower_window_key", NULL },
   { N_("Fill window"), "fill_window_key", NULL },
   { N_("Fill window horizontally"), "fill_horiz_key", NULL },
   { N_("Fill window vertically"), "fill_vert_key", NULL },
diff --git a/src/events.c b/src/events.c
index f26a277..eee501a 100644
--- a/src/events.c
+++ b/src/events.c
@@ -362,6 +362,16 @@ handleKeyPress (DisplayInfo *display_info, XKeyEvent * ev)
             case KEY_LOWER_WINDOW:
                 clientLower (c, None);
                 break;
+            case KEY_RAISELOWER_WINDOW:
+                if (clientIsTopMost (c))
+                {
+                    clientLower (c, None);
+                }
+                else
+                {
+                    clientRaise (c, None);
+                }
+                break;
             case KEY_TOGGLE_ABOVE:
                 clientToggleLayerAbove (c);
                 break;
diff --git a/src/settings.c b/src/settings.c
index da23b10..fd84fe4 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -603,6 +603,7 @@ loadKeyBindings (ScreenInfo *screen_info)
     parseShortcut (screen_info, KEY_POPUP_MENU, "popup_menu_key", shortcuts);
     parseShortcut (screen_info, KEY_PREV_WORKSPACE, "prev_workspace_key", shortcuts);
     parseShortcut (screen_info, KEY_RAISE_WINDOW, "raise_window_key", shortcuts);
+    parseShortcut (screen_info, KEY_RAISELOWER_WINDOW, "raiselower_window_key", shortcuts);
     parseShortcut (screen_info, KEY_RESIZE, "resize_window_key", shortcuts);
     parseShortcut (screen_info, KEY_RIGHT_WORKSPACE, "right_workspace_key", shortcuts);
     parseShortcut (screen_info, KEY_SHADE_WINDOW, "shade_window_key", shortcuts);
diff --git a/src/settings.h b/src/settings.h
index 76ffa62..6642d2a 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -92,6 +92,7 @@ enum
     KEY_POPUP_MENU,
     KEY_PREV_WORKSPACE,
     KEY_RAISE_WINDOW,
+    KEY_RAISELOWER_WINDOW,
     KEY_RESIZE,
     KEY_RIGHT_WORKSPACE,
     KEY_SHADE_WINDOW,


More information about the Xfce4-commits mailing list