From: Philip Dexter Date: Sat, 23 Mar 2013 16:33:56 +0000 (-0400) Subject: Add ctrl+u password reset X-Git-Tag: 2.5~6 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=661344463aadbccf85120d056d30f486838c0dbd;p=i3%2Fi3lock Add ctrl+u password reset --- diff --git a/i3lock.c b/i3lock.c index 581ea10..c555ee8 100644 --- a/i3lock.c +++ b/i3lock.c @@ -239,8 +239,10 @@ static void handle_key_press(xcb_key_press_event_t *event) { xkb_keysym_t ksym; char buffer[128]; int n; + bool ctrl; ksym = xkb_state_key_get_one_sym(xkb_state, event->detail); + ctrl = xkb_state_mod_name_is_active(xkb_state, "Control", XKB_STATE_MODS_DEPRESSED); xkb_state_update_key(xkb_state, event->detail, XKB_KEY_DOWN); /* The buffer will be null-terminated, so n >= 2 for 1 actual character. */ @@ -255,6 +257,9 @@ static void handle_key_press(xcb_key_press_event_t *event) { unlock_state = STATE_KEY_PRESSED; redraw_screen(); input_done(); + case XKB_KEY_u: + if (!ctrl) + break; case XKB_KEY_Escape: input_position = 0; clear_password_memory();