mirror of git://git.sv.gnu.org/nano.git
Some better page up/down fixes, added keypad_on() call for now
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@435 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
This commit is contained in:
parent
f4b9601c1b
commit
425a266a92
18
files.c
18
files.c
|
@ -1205,6 +1205,7 @@ char *do_browser(char *inpath)
|
|||
|
||||
titlebar(path);
|
||||
bottombars(browser_list, BROWSER_LIST_LEN);
|
||||
keypad_on(TRUE);
|
||||
curs_set(0);
|
||||
wmove(edit, 0, 0);
|
||||
i = 0;
|
||||
|
@ -1240,28 +1241,29 @@ char *do_browser(char *inpath)
|
|||
case NANO_PREVPAGE_KEY:
|
||||
case KEY_PPAGE:
|
||||
if ((selected / width) % editwinrows == 0) {
|
||||
if (selected - editwinrows >= 0)
|
||||
selected -= editwinrows;
|
||||
if (selected - (editwinrows * width) >= 0)
|
||||
selected -= editwinrows * width;
|
||||
else
|
||||
selected = 0;
|
||||
}
|
||||
else if (selected - (editwinrows +
|
||||
(selected / width) % editwinrows) >= 0)
|
||||
selected -= editwinrows + (selected / width) % editwinrows;
|
||||
(selected / width) % editwinrows) * width >= 0)
|
||||
selected -= (editwinrows + (selected / width) %
|
||||
editwinrows) * width;
|
||||
else
|
||||
selected = 0;
|
||||
break;
|
||||
case NANO_NEXTPAGE_KEY:
|
||||
case KEY_NPAGE:
|
||||
if ((selected / width) % editwinrows == 0) {
|
||||
if (selected + editwinrows <= numents - 1)
|
||||
selected += editwinrows;
|
||||
if (selected + (editwinrows * width) <= numents - 1)
|
||||
selected += editwinrows * width;
|
||||
else
|
||||
selected = numents - 1;
|
||||
}
|
||||
else if (selected + (editwinrows -
|
||||
(selected / width) % editwinrows) <= numents - 1)
|
||||
selected += editwinrows - (selected / width) % editwinrows;
|
||||
(selected / width) % editwinrows) * width <= numents - 1)
|
||||
selected += (editwinrows - (selected / width) % editwinrows) * width;
|
||||
else
|
||||
selected = numents - 1;
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue