Index: uspace/app/nav/panel.c
===================================================================
--- uspace/app/nav/panel.c	(revision 9468680f918aea064bdf015898d6c1f8eb63d31b)
+++ uspace/app/nav/panel.c	(revision bdb2a72f86802fff119615849dfc676b05454dbf)
@@ -523,4 +523,5 @@
 	char *olddn;
 	size_t pg_size;
+	size_t max_idx;
 	size_t i;
 	errno_t rc;
@@ -617,4 +618,19 @@
 				--panel->page_idx;
 			}
+
+			/* Make sure page is not beyond the end if possible */
+			if (panel->entries_cnt > pg_size)
+				max_idx = panel->entries_cnt - pg_size;
+			else
+				max_idx = 0;
+
+			while (panel->page_idx > 0 && panel->page_idx > max_idx) {
+				prev = panel_prev(panel->page);
+				if (prev == NULL)
+					break;
+
+				panel->page = prev;
+				--panel->page_idx;
+			}
 		}
 	}
@@ -948,5 +964,9 @@
 	old_cursor = panel->cursor;
 	old_idx = panel->cursor_idx;
-	max_idx = panel->entries_cnt - rows;
+
+	if (panel->entries_cnt > rows)
+		max_idx = panel->entries_cnt - rows;
+	else
+		max_idx = 0;
 
 	/* Move page by rows entries down (if possible) */
