Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/libview/ev-view.c
diff options
context:
space:
mode:
authorCarlos Garcia Campos <carlosgc@gnome.org>2009-06-08 14:24:32 (GMT)
committer Carlos Garcia Campos <carlosgc@gnome.org>2009-06-08 14:24:32 (GMT)
commitd337cbe9269e142f0b70e12a8c58296fe34b4892 (patch)
tree8c7e0e73ba37ce41d080d8f2179068e2b6b5c243 /libview/ev-view.c
parent297ac5b454e37c631fe7379ce89dd3a7ffeb9ec9 (diff)
[libview] Fix page transitions in presentation mode
Set the destination surface as soon as possible when starting a page transition animation. Fixes bgo#583652 and bgo#581881.
Diffstat (limited to 'libview/ev-view.c')
-rw-r--r--libview/ev-view.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libview/ev-view.c b/libview/ev-view.c
index ee81680..f69b7b0 100644
--- a/libview/ev-view.c
+++ b/libview/ev-view.c
@@ -4628,10 +4628,14 @@ ev_view_presentation_animation_start (EvView *view,
if (!effect)
return;
- surface = ev_pixbuf_cache_get_surface (view->pixbuf_cache, view->current_page);
view->animation = ev_transition_animation_new (effect);
+
+ surface = ev_pixbuf_cache_get_surface (view->pixbuf_cache, view->current_page);
ev_transition_animation_set_origin_surface (view->animation, surface);
-
+ surface = ev_pixbuf_cache_get_surface (view->pixbuf_cache, new_page);
+ if (surface)
+ ev_transition_animation_set_dest_surface (view->animation, surface);
+
g_signal_connect (view->animation, "frame",
G_CALLBACK (ev_view_transition_animation_frame), view);
g_signal_connect (view->animation, "finished",