Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-03-05 16:08:21 (GMT)
committer Nickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-03-05 16:08:21 (GMT)
commit817734ffbf42540f8f2bf3175118364a806af70a (patch)
tree5247f75b684cfe8e3de0830d5909afc51aa22a37 /shell
parentff64f5106b41a38729bf65fa41e82a1a8fd388df (diff)
Don't jump on scrolling, fix for the bug #333127.
* shell/ev-view.c: (view_update_range_and_current_page), (page_changed_cb): Don't jump on scrolling, fix for the bug #333127.
Diffstat (limited to 'shell')
-rw-r--r--shell/ev-view.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/shell/ev-view.c b/shell/ev-view.c
index 0f671c2..d8a8024 100644
--- a/shell/ev-view.c
+++ b/shell/ev-view.c
@@ -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);
}
}