]> www.fi.muni.cz Git - evince.git/commitdiff
Don't jump on scrolling, fix for the bug #333127.
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>
Sun, 5 Mar 2006 16:08:21 +0000 (16:08 +0000)
committerNickolay V. Shmyrev <nshmyrev@src.gnome.org>
Sun, 5 Mar 2006 16:08:21 +0000 (16:08 +0000)
* shell/ev-view.c: (view_update_range_and_current_page),
(page_changed_cb):

Don't jump on scrolling, fix for the bug #333127.

ChangeLog
shell/ev-view.c

index 9b662dadd0eebaa6cfd463fb2d9c7fbd3a6cec20..98b5dc52cf5cebb70d915f910ad6368350caa2d1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2006-03-05  Nickolay V. Shmyrev  <nshmyrev@yandex.ru>
+
+       * shell/ev-view.c: (view_update_range_and_current_page),
+       (page_changed_cb):
+       
+       Don't jump on scrolling, fix for the bug #333127.
+
 2006-03-01  Nickolay V. Shmyrev  <nshmyrev@yandex.ru>
 
        * shell/ev-view.c: (ev_view_next_page), (ev_view_previous_page):
index 0f671c20f5528032752ebf32b51bad3ca6fb0c11..d8a802498de1529a4c8f79733d9f9dbc97a06b1e 100644 (file)
@@ -471,7 +471,7 @@ view_update_range_and_current_page (EvView *view)
                                else 
                                        view->end_page = view->start_page;
                        } else {
-                               if (view->current_page - 1 < 0)
+                               if (view->current_page < 1)
                                        view->start_page = view->current_page;
                                else
                                        view->start_page = view->current_page - 1;
@@ -487,6 +487,7 @@ view_update_range_and_current_page (EvView *view)
        current_page = ev_page_cache_get_current_page (view->page_cache);
 
        if (current_page < view->start_page || current_page > view->end_page) {
+               view->current_page = view->start_page;
                ev_page_cache_set_current_page (view->page_cache, view->start_page);
        }
 
@@ -2612,15 +2613,16 @@ page_changed_cb (EvPageCache *page_cache,
                 EvView      *view)
 {
        if (view->current_page != new_page) {
-
                view->current_page = new_page;
                view->pending_scroll = SCROLL_TO_PAGE_POSITION;
                gtk_widget_queue_resize (GTK_WIDGET (view));
+       } else {
+               gtk_widget_queue_draw (GTK_WIDGET (view));
+       }
 
-               if (EV_IS_DOCUMENT_FIND (view->document)) {
-                       view->find_result = 0;
-                       update_find_status_message (view, TRUE);
-               }
+       if (EV_IS_DOCUMENT_FIND (view->document)) {
+               view->find_result = 0;
+               update_find_status_message (view, TRUE);
        }
 }