Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-window.c
diff options
context:
space:
mode:
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-01-07 13:18:28 (GMT)
committer Nickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-01-07 13:18:28 (GMT)
commiteb3d8c8e3df570e32e2591eeb650de55dba2f613 (patch)
treec5bc36c96ca488c1d8e3831b9f6148993e3a21ce /shell/ev-window.c
parentc18ba99a47d356a013ac74febcfca6f8f0e18dd5 (diff)
Dual mode places even pages to the left. Fix for the bug #309393.
* shell/ev-page-cache.c: (build_height_to_page), (ev_page_cache_get_height_to_page): * shell/ev-page-cache.h: * shell/ev-view.c: (view_update_range_and_current_page), (get_page_y_offset), (get_page_extents), (ev_view_next_page), (ev_view_previous_page): Dual mode places even pages to the left. Fix for the bug #309393. * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (setup_view_from_metadata), (view_menu_popup_cb): Don't restore presentation in empty windows, more intelligent next page behaviour in dual mode. * shell/ev-pixbuf-cache.c: (check_job_size_and_unref), (ev_pixbuf_cache_clear_job_sizes): Cleanup job callback on removal. Fix for the bug #325886.
Diffstat (limited to 'shell/ev-window.c')
-rw-r--r--shell/ev-window.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 15d671f..7e6a1bc 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -309,8 +309,8 @@ update_action_sensitivity (EvWindow *ev_window)
/* Go menu */
if (document) {
- set_action_sensitive (ev_window, "GoPreviousPage", ev_view_can_previous_page (view));
- set_action_sensitive (ev_window, "GoNextPage", ev_view_can_next_page (view));
+ set_action_sensitive (ev_window, "GoPreviousPage", page > 0);
+ set_action_sensitive (ev_window, "GoNextPage", page < n_pages - 1);
set_action_sensitive (ev_window, "GoFirstPage", page > 0);
set_action_sensitive (ev_window, "GoLastPage", page < n_pages - 1);
} else {
@@ -751,14 +751,14 @@ setup_view_from_metadata (EvWindow *window)
/* Presentation */
if (ev_metadata_manager_get (uri, "presentation", &presentation, FALSE)) {
- if (g_value_get_boolean (&presentation)) {
+ if (g_value_get_boolean (&presentation) && uri) {
ev_window_run_presentation (window);
}
}
/* Fullscreen */
if (ev_metadata_manager_get (uri, "fullscreen", &fullscreen, FALSE)) {
- if (g_value_get_boolean (&fullscreen)) {
+ if (g_value_get_boolean (&fullscreen) && uri) {
ev_window_run_fullscreen (window);
}
}
@@ -2487,6 +2487,9 @@ view_menu_popup_cb (EvView *view,
gboolean show_external = FALSE;
gboolean show_internal = FALSE;
GtkAction *action;
+
+ if (ev_view_get_presentation (EV_VIEW (ev_window->priv->view)))
+ return FALSE;
if (ev_window->priv->link)
g_object_unref (ev_window->priv->link);
@@ -2530,7 +2533,7 @@ view_menu_popup_cb (EvView *view,
gtk_menu_popup (GTK_MENU (popup), NULL, NULL,
NULL, NULL,
3, gtk_get_current_event_time ());
- return TRUE;
+ return FALSE;
}
static void