aboutsummaryrefslogtreecommitdiff
path: root/include/swaylock
diff options
context:
space:
mode:
authorDominique Martinet <asmadeus@codewreck.org>2018-06-08 21:58:01 +0900
committerDominique Martinet <asmadeus@codewreck.org>2018-06-08 22:42:15 +0900
commitc78ce0770a8c75d63853c6c85f789b68f56ee3ed (patch)
tree578c0249b9ecf8eb8579b828862db3107d1a22bd /include/swaylock
parentacf71fe8053efadbfb81d2ea010ac6facf41cd81 (diff)
swaylock: implement ^U to clear buffer
The whole state->xcb.modifiers thing didn't work at all (always 0) The xkb doc says "[xkb_state_serialize_mods] should not be used in regular clients; please use the xkb_state_mod_*_is_active API instead" so here it is
Diffstat (limited to 'include/swaylock')
-rw-r--r--include/swaylock/seat.h26
1 files changed, 1 insertions, 25 deletions
diff --git a/include/swaylock/seat.h b/include/swaylock/seat.h
index 180ea7a0..4bcf40c0 100644
--- a/include/swaylock/seat.h
+++ b/include/swaylock/seat.h
@@ -2,36 +2,12 @@
#define _SWAYLOCK_SEAT_H
#include <xkbcommon/xkbcommon.h>
-enum mod_bit {
- MOD_SHIFT = 1<<0,
- MOD_CAPS = 1<<1,
- MOD_CTRL = 1<<2,
- MOD_ALT = 1<<3,
- MOD_MOD2 = 1<<4,
- MOD_MOD3 = 1<<5,
- MOD_LOGO = 1<<6,
- MOD_MOD5 = 1<<7,
-};
-
-enum mask {
- MASK_SHIFT,
- MASK_CAPS,
- MASK_CTRL,
- MASK_ALT,
- MASK_MOD2,
- MASK_MOD3,
- MASK_LOGO,
- MASK_MOD5,
- MASK_LAST
-};
-
struct swaylock_xkb {
- uint32_t modifiers;
bool caps_lock;
+ bool control;
struct xkb_state *state;
struct xkb_context *context;
struct xkb_keymap *keymap;
- xkb_mod_mask_t masks[MASK_LAST];
};
extern const struct wl_seat_listener seat_listener;