Allow CTRL+J as enter and CTRL+H as backspace (#72)

fixes #71
pull/74/head
Karl Tarbe 2016-04-30 13:25:51 +03:00 committed by Michael Stapelberg
parent 59705b05b5
commit 9a7604bb35
1 changed files with 9 additions and 1 deletions

View File

@ -367,9 +367,13 @@ static void handle_key_press(xcb_key_press_event_t *event) {
} }
switch (ksym) { switch (ksym) {
case XKB_KEY_j:
case XKB_KEY_Return: case XKB_KEY_Return:
case XKB_KEY_KP_Enter: case XKB_KEY_KP_Enter:
case XKB_KEY_XF86ScreenSaver: case XKB_KEY_XF86ScreenSaver:
if (ksym == XKB_KEY_j && !ctrl)
break;
if (pam_state == STATE_PAM_WRONG) if (pam_state == STATE_PAM_WRONG)
return; return;
@ -414,7 +418,11 @@ static void handle_key_press(xcb_key_press_event_t *event) {
* see issue #50. */ * see issue #50. */
return; return;
case XKB_KEY_h:
case XKB_KEY_BackSpace: case XKB_KEY_BackSpace:
if (ksym == XKB_KEY_h && !ctrl)
break;
if (input_position == 0) if (input_position == 0)
return; return;
@ -423,7 +431,7 @@ static void handle_key_press(xcb_key_press_event_t *event) {
password[input_position] = '\0'; password[input_position] = '\0';
/* Hide the unlock indicator after a bit if the password buffer is /* Hide the unlock indicator after a bit if the password buffer is
* empty. */ * empty. */
START_TIMER(clear_indicator_timeout, 1.0, clear_indicator_cb); START_TIMER(clear_indicator_timeout, 1.0, clear_indicator_cb);
unlock_state = STATE_BACKSPACE_ACTIVE; unlock_state = STATE_BACKSPACE_ACTIVE;
redraw_screen(); redraw_screen();