statusbar: on a one-row terminal, drop light messages after a few moments
Only important error messages (ALERT) and information that the user requested (^C, M-D) should stay put until the next keystroke. Other messages should be overwritten by the text of the buffer after just a few moments, to make a one-row terminal slightly more friendly. This addresses https://savannah.gnu.org/bugs/?60570.master
parent
2cf28f9db7
commit
8d974cd292
|
@ -193,7 +193,7 @@ void read_keys_from(WINDOW *win)
|
||||||
curs_set(1);
|
curs_set(1);
|
||||||
|
|
||||||
#ifndef NANO_TINY
|
#ifndef NANO_TINY
|
||||||
if (currmenu == MMAIN && ISSET(MINIBAR) && LINES > 1 && lastmessage > HUSH &&
|
if (currmenu == MMAIN && (ISSET(MINIBAR) || LINES == 1) && lastmessage > HUSH &&
|
||||||
lastmessage != INFO && lastmessage < ALERT) {
|
lastmessage != INFO && lastmessage < ALERT) {
|
||||||
timed = TRUE;
|
timed = TRUE;
|
||||||
halfdelay(ISSET(QUICK_BLANK) ? 8 : 15);
|
halfdelay(ISSET(QUICK_BLANK) ? 8 : 15);
|
||||||
|
@ -216,6 +216,10 @@ void read_keys_from(WINDOW *win)
|
||||||
raw();
|
raw();
|
||||||
|
|
||||||
if (input == ERR) {
|
if (input == ERR) {
|
||||||
|
if (LINES == 1) {
|
||||||
|
edit_refresh();
|
||||||
|
curs_set(1);
|
||||||
|
} else
|
||||||
minibar();
|
minibar();
|
||||||
as_an_at = TRUE;
|
as_an_at = TRUE;
|
||||||
place_the_cursor();
|
place_the_cursor();
|
||||||
|
|
Loading…
Reference in New Issue