Index: panelfront_input.cc
===================================================================
RCS file: /home/dragorn/cvs/kismet/kismet-devel/panelfront_input.cc,v
retrieving revision 1.10
diff -u -r1.10 panelfront_input.cc
--- panelfront_input.cc	2002/09/17 21:23:23	1.10
+++ panelfront_input.cc	2002/09/23 19:25:48
@@ -46,7 +46,6 @@
         } else {
             WriteStatus("Cannot scroll in autofit sort mode.");
         }
-
         break;
     case KEY_DOWN:
         if (sortby != sort_auto) {
@@ -58,6 +57,53 @@
                     kwin->selected++;
             }
 
+        } else {
+            WriteStatus("Cannot scroll in autofit sort mode.");
+        }
+        break;
+    case KEY_PPAGE:
+        if (sortby != sort_auto) {
+            if (kwin->selected > 0)
+                kwin->selected = 0;
+            else if (kwin->start > kwin->max_display)
+            	kwin->start -= kwin->max_display;
+            else
+                kwin->start = 0;
+        } else {
+            WriteStatus("Cannot scroll in autofit sort mode.");
+        }
+        break;
+    case KEY_NPAGE:
+        if (sortby != sort_auto) {
+            if (last_draw_size > kwin->max_display) {
+                if (kwin->selected < kwin->max_display)
+                    kwin->selected = kwin->max_display;
+                else
+                    kwin->start += kwin->max_display;
+                if (kwin->start > (last_draw_size - kwin->max_display - 1))
+                    kwin->start = last_draw_size - kwin->max_display - 1;
+            } else {
+                kwin->selected = kwin->max_display;
+            }
+        } else {
+            WriteStatus("Cannot scroll in autofit sort mode.");
+        }
+        break;
+    case KEY_HOME:
+        if (sortby != sort_auto) {
+            kwin->start = 0;
+            kwin->selected = 0;
+        } else {
+            WriteStatus("Cannot scroll in autofit sort mode.");
+        }
+        break;
+    case KEY_END:
+        if (sortby != sort_auto) {
+            if (last_draw_size > kwin->max_display)
+                kwin->start = last_draw_size - kwin->max_display - 1;
+            else
+                kwin->start = 0;
+            kwin->selected = kwin->max_display;
         } else {
             WriteStatus("Cannot scroll in autofit sort mode.");
         }
