1
0
Fork 0
mirror of https://github.com/Cloudef/bemenu synced 2024-06-01 04:16:21 +02:00

Add alt keybindings from demenu to gui backends

This commit is contained in:
Jari Vetoniemi 2015-01-18 03:34:18 +02:00
parent c2eabf2be1
commit 92152cb5fb
4 changed files with 18 additions and 4 deletions

View File

@ -128,14 +128,20 @@ poll_key(const struct bm_menu *menu, unsigned int *unicode)
return (mods & MOD_CTRL ? BM_KEY_BACKSPACE : BM_KEY_UNICODE);
case XKB_KEY_u:
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_LEFT : BM_KEY_UNICODE);
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_LEFT : (mods & MOD_ALT ? BM_KEY_PAGE_UP : BM_KEY_UNICODE));
case XKB_KEY_k:
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_RIGHT : BM_KEY_UNICODE);
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_RIGHT : (mods & MOD_ALT ? BM_KEY_DOWN : BM_KEY_UNICODE));
case XKB_KEY_w:
return (mods & MOD_CTRL ? BM_KEY_WORD_DELETE : BM_KEY_UNICODE);
case XKB_KEY_j:
return (mods & MOD_ALT ? BM_KEY_UP : BM_KEY_UNICODE);
case XKB_KEY_d:
return (mods & MOD_ALT ? BM_KEY_PAGE_DOWN : BM_KEY_UNICODE);
default: break;
}

View File

@ -105,6 +105,7 @@ bm_x11_window_key_press(struct window *window, XKeyEvent *ev)
window->mods = 0;
if (ev->state & ControlMask) window->mods |= MOD_CTRL;
if (ev->state & ShiftMask) window->mods |= MOD_SHIFT;
if (ev->state & Mod1Mask) window->mods |= MOD_ALT;
window->keysym = keysym;
}

View File

@ -117,14 +117,20 @@ poll_key(const struct bm_menu *menu, unsigned int *unicode)
return (mods & MOD_CTRL ? BM_KEY_BACKSPACE : BM_KEY_UNICODE);
case XK_u:
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_LEFT : BM_KEY_UNICODE);
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_LEFT : (mods & MOD_ALT ? BM_KEY_PAGE_UP : BM_KEY_UNICODE));
case XK_k:
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_RIGHT : BM_KEY_UNICODE);
return (mods & MOD_CTRL ? BM_KEY_LINE_DELETE_RIGHT : (mods & MOD_ALT ? BM_KEY_DOWN : BM_KEY_UNICODE));
case XK_w:
return (mods & MOD_CTRL ? BM_KEY_WORD_DELETE : BM_KEY_UNICODE);
case XK_j:
return (mods & MOD_ALT ? BM_KEY_UP : BM_KEY_UNICODE);
case XK_d:
return (mods & MOD_ALT ? BM_KEY_PAGE_DOWN : BM_KEY_UNICODE);
default: break;
}

View File

@ -9,6 +9,7 @@
enum mod_bit {
MOD_SHIFT = 1<<0,
MOD_CTRL = 1<<1,
MOD_ALT = 1<<2,
};
struct buffer {