|> 2) Screen corruption when pressing PgUp/PgDown in a long list
|> - I've got a patch for this at home that someone posted to
|> this list ages ago. Haven't tried it with later kernels but
|> I'll try it when I get home.
This is a bug in the lxdialog utility, which tries to write to the lower
right position of a window while scrolling is enabled. This causes the
window to scroll, and messes up the whole display.
--- scripts/lxdialog/menubox.c.~1~ Mon Apr 29 19:45:05 1996
+++ scripts/lxdialog/menubox.c Sun Dec 14 10:47:29 1997
@@ -261,26 +261,26 @@
choice = MIN(choice+1, max_choice-1);
} else if (key == KEY_PPAGE) {
- scrollok (menu, TRUE);
for (i=0; (i < max_choice) && (scroll > 0); i++) {
+ scrollok (menu, TRUE);
wscrl (menu, -1);
+ scrollok (menu, FALSE);
scroll--;
print_item (menu, items[scroll * 2 + 1], 0, FALSE,
(items[scroll*2][0] != ':'));
}
- scrollok (menu, FALSE);
choice = 0;
} else if (key == KEY_NPAGE) {
- scrollok (menu, TRUE);
for (i=0; (i < max_choice) && (scroll+max_choice < item_no); i++) {
+ scrollok (menu, TRUE);
scroll(menu);
+ scrollok (menu, FALSE);
scroll++;
print_item (menu, items[(scroll+max_choice-1)*2+1],
max_choice-1, FALSE,
(items[(scroll+max_choice-1)*2][0] != ':'));
}
- scrollok (menu, FALSE);
choice = 0;
} else
-- Andreas Schwab "And now for something schwab@issan.informatik.uni-dortmund.de completely different" schwab@gnu.org