diff options
author | John Ankarström <john@ankarstrom.se> | 2021-06-07 00:26:29 +0200 |
---|---|---|
committer | John Ankarström <john@ankarstrom.se> | 2021-06-07 00:26:29 +0200 |
commit | 3369481138750f57645fff2bc4d65b39d7ebfbc2 (patch) | |
tree | 606450ae759e3ec8d5b66e8a41e6b3e990ea703e | |
parent | a67786845515a084a3fc95473c5505d58909ef45 (diff) | |
download | jwm-3369481138750f57645fff2bc4d65b39d7ebfbc2.tar.gz |
Add 'put#' action
I wanted to call it layer#, but it (rather silently, apart from
the crashing...) conflicted with something else.
-rw-r--r-- | src/event.c | 3 | ||||
-rw-r--r-- | src/hint.h | 4 | ||||
-rw-r--r-- | src/key.c | 1 | ||||
-rw-r--r-- | src/key.h | 9 | ||||
-rw-r--r-- | src/parse.c | 1 |
5 files changed, 12 insertions, 6 deletions
diff --git a/src/event.c b/src/event.c index 3919c94..e8a0049 100644 --- a/src/event.c +++ b/src/event.c @@ -354,6 +354,9 @@ void HandleKeyPress(const XKeyEvent *event) { NextDesktop(); } break; + case KEY_PUT: + SetClientLayer(np, key >> 8); + break; case KEY_SENDTO: SetClientDesktop(np, (key >> 8) - 1); break; @@ -123,8 +123,8 @@ typedef enum { LAYER_BOTTOM = 0, LAYER_NORMAL = 4, DEFAULT_TRAY_LAYER = 8, - LAYER_TOP = 12, - LAYER_COUNT = 13 + LAYER_TOP = 10, + LAYER_COUNT = 11 } WinLayerType; typedef struct ClientState { @@ -254,6 +254,7 @@ int ShouldGrab(KeyType key) { case KEY_ROOT: case KEY_WIN: case KEY_DESKTOP: + case KEY_PUT: case KEY_SENDTO: case KEY_EXEC: case KEY_RESTART: @@ -34,10 +34,11 @@ typedef enum { KEY_ROOT = 18, KEY_WIN = 19, KEY_DESKTOP = 20, - KEY_SENDTO = 21, - KEY_EXEC = 22, - KEY_RESTART = 23, - KEY_EXIT = 24 + KEY_PUT = 21, + KEY_SENDTO = 22, + KEY_EXEC = 23, + KEY_RESTART = 24, + KEY_EXIT = 25 } KeyType; void InitializeKeys(); diff --git a/src/parse.c b/src/parse.c index 5c6cece..65e3197 100644 --- a/src/parse.c +++ b/src/parse.c @@ -63,6 +63,7 @@ static const KeyMapType KEY_MAP[] = { { "exit", KEY_EXIT }, { "desktop", KEY_DESKTOP }, { "desktop#", KEY_DESKTOP }, + { "put#", KEY_PUT }, { "sendto#", KEY_SENDTO }, { NULL, KEY_NONE } }; |