diff options
author | Michael Vetter <jubalh@iodoru.org> | 2021-05-31 10:03:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-31 10:03:22 +0200 |
commit | 956fd547c1beaeb1254b2899f1f3576f5511128a (patch) | |
tree | 1e4baf645cd61d75682ccbf722223592ac5fbaca /src/ui/inputwin.c | |
parent | 9f174c53cf7d52a7b684ed1e0d6ed00463eb498b (diff) | |
parent | 6df062b542d2376d464b2a9d8d6577fdf906cab4 (diff) | |
download | profani-tty-956fd547c1beaeb1254b2899f1f3576f5511128a.tar.gz |
Merge pull request #1543 from DebXWoody/feature/attention-flag
Feature - attention flag
Diffstat (limited to 'src/ui/inputwin.c')
-rw-r--r-- | src/ui/inputwin.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/ui/inputwin.c b/src/ui/inputwin.c index 74fcfbb4..b2b2ea33 100644 --- a/src/ui/inputwin.c +++ b/src/ui/inputwin.c @@ -125,6 +125,8 @@ static int _inp_rl_win_20_handler(int count, int key); static int _inp_rl_win_prev_handler(int count, int key); static int _inp_rl_win_next_handler(int count, int key); static int _inp_rl_win_next_unread_handler(int count, int key); +static int _inp_rl_win_attention_handler(int count, int key); +static int _inp_rl_win_attention_next_handler(int count, int key); static int _inp_rl_win_pageup_handler(int count, int key); static int _inp_rl_win_pagedown_handler(int count, int key); static int _inp_rl_subwin_pageup_handler(int count, int key); @@ -480,6 +482,8 @@ _inp_rl_startup_hook(void) rl_bind_keyseq("\\e\\e[C", _inp_rl_win_next_handler); rl_bind_keyseq("\\ea", _inp_rl_win_next_unread_handler); + rl_bind_keyseq("\\ef", _inp_rl_win_attention_handler); + rl_bind_keyseq("\\em", _inp_rl_win_attention_next_handler); rl_bind_keyseq("\\e\\e[5~", _inp_rl_subwin_pageup_handler); rl_bind_keyseq("\\e[5;3~", _inp_rl_subwin_pageup_handler); @@ -807,6 +811,31 @@ _inp_rl_win_next_unread_handler(int count, int key) } static int +_inp_rl_win_attention_handler(int count, int key) { + ProfWin* current = wins_get_current(); + if ( current ) { + gboolean attention = win_toggle_attention(current); + if (attention) { + win_println(current, THEME_DEFAULT, "!", "Attention flag has been activated"); + } else { + win_println(current, THEME_DEFAULT, "!", "Attention flag has been deactivated"); + } + win_redraw(current); + } + return 0; +} + +static int +_inp_rl_win_attention_next_handler(int count, int key) { + ProfWin* window = wins_get_next_attention(); + if (window) { + ui_focus_win(window); + } + return 0; +} + + +static int _inp_rl_win_pageup_handler(int count, int key) { ProfWin* current = wins_get_current(); |