diff options
| author | Jari Vetoniemi <mailroxas@gmail.com> | 2014-04-12 18:44:03 +0300 | 
|---|---|---|
| committer | Jari Vetoniemi <mailroxas@gmail.com> | 2014-04-12 18:44:03 +0300 | 
| commit | 3ad042c625d931b7043a857bb49cb0660258f343 (patch) | |
| tree | 1e2f34cc53253a844f259d95bd98896fed34d836 | |
| parent | ad4e0425a6860803e5f31a08c349cd99e02e2847 (diff) | |
| download | bemenu-3ad042c625d931b7043a857bb49cb0660258f343.tar.gz bemenu-3ad042c625d931b7043a857bb49cb0660258f343.tar.bz2 bemenu-3ad042c625d931b7043a857bb49cb0660258f343.zip  | |
S-Return (C-t, insert in curses) should return input, C-Return is mark. (C-r, C-space in curses)
| -rw-r--r-- | lib/bemenu.h | 1 | ||||
| -rw-r--r-- | lib/draw/curses.c | 6 | ||||
| -rw-r--r-- | lib/menu.c | 4 | 
3 files changed, 10 insertions, 1 deletions
diff --git a/lib/bemenu.h b/lib/bemenu.h index 0b0769d..9ef684f 100644 --- a/lib/bemenu.h +++ b/lib/bemenu.h @@ -88,6 +88,7 @@ typedef enum bmKey {      BM_KEY_ESCAPE,      BM_KEY_RETURN,      BM_KEY_SHIFT_RETURN, +    BM_KEY_CONTROL_RETURN,      BM_KEY_UNICODE,      BM_KEY_LAST  } bmKey; diff --git a/lib/draw/curses.c b/lib/draw/curses.c index b54693f..4b467f6 100644 --- a/lib/draw/curses.c +++ b/lib/draw/curses.c @@ -291,7 +291,13 @@ static bmKey _bmDrawCursesGetKey(unsigned int *unicode)          case 9: /* Tab */              return BM_KEY_TAB; +        case 0: /* C-Space */          case 18: /* C-r */ +            return BM_KEY_CONTROL_RETURN; + +        case 20: /* C-t */ +        case 331: /* Insert */ +            _bmDrawCursesEndWin();              return BM_KEY_SHIFT_RETURN;          case 10: /* Return */ @@ -663,7 +663,7 @@ bmRunResult bmMenuRunWithKey(bmMenu *menu, bmKey key, unsigned int unicode)              }              break; -        case BM_KEY_SHIFT_RETURN: +        case BM_KEY_CONTROL_RETURN:          case BM_KEY_RETURN:              {                  bmItem *highlighted = bmMenuGetHighlightedItem(menu); @@ -672,6 +672,7 @@ bmRunResult bmMenuRunWithKey(bmMenu *menu, bmKey key, unsigned int unicode)              }              break; +        case BM_KEY_SHIFT_RETURN:          case BM_KEY_ESCAPE:              _bmItemListFreeList(&menu->selection);              break; @@ -682,6 +683,7 @@ bmRunResult bmMenuRunWithKey(bmMenu *menu, bmKey key, unsigned int unicode)      bmMenuFilter(menu);      switch (key) { +        case BM_KEY_SHIFT_RETURN:          case BM_KEY_RETURN: return BM_RUN_RESULT_SELECTED;          case BM_KEY_ESCAPE: return BM_RUN_RESULT_CANCEL;          default: break;  | 
