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:
parent
c2eabf2be1
commit
92152cb5fb
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
enum mod_bit {
|
||||
MOD_SHIFT = 1<<0,
|
||||
MOD_CTRL = 1<<1,
|
||||
MOD_ALT = 1<<2,
|
||||
};
|
||||
|
||||
struct buffer {
|
||||
|
|
Loading…
Reference in New Issue