diff -Naur epdfview-0.1.6.org/src/gtk/PageView.cxx epdfview-0.1.6/src/gtk/PageView.cxx --- epdfview-0.1.6.org/src/gtk/PageView.cxx 2006-10-17 08:23:18.000000000 -0600 +++ epdfview-0.1.6/src/gtk/PageView.cxx 2008-10-06 10:18:22.000000000 -0600 @@ -568,14 +568,22 @@ { case GDK_Left: case GDK_KP_Left: - direction = GTK_SCROLL_STEP_LEFT; - horizontal = TRUE; + if ( position == adjustment->lower ) + { + pter->scrollToPreviousPage (); + return TRUE; + } + direction = GTK_SCROLL_START; break; case GDK_Right: case GDK_KP_Right: - horizontal = TRUE; - direction = GTK_SCROLL_STEP_RIGHT; + if ( position == ( adjustment->upper - adjustment->page_size) ) + { + pter->scrollToNextPage (); + return TRUE; + } + direction = GTK_SCROLL_END; break; case GDK_Up: