X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=sidebyside;f=shell%2Fev-window.c;h=6f98711f4a38486fd8f01e60fbb42e5c4b382cdc;hb=dc2ae28ea753bb03c69a4ca8e13af8be65d9500a;hp=23ac71ff8071f989fca0715fe9748d3dc2f5d365;hpb=00632264c5cb956ee6d66b00d14bbd4ad9f96efd;p=evince.git diff --git a/shell/ev-window.c b/shell/ev-window.c index 23ac71ff..6f98711f 100644 --- a/shell/ev-window.c +++ b/shell/ev-window.c @@ -395,7 +395,9 @@ ev_window_setup_action_sensitivity (EvWindow *ev_window) /* File menu */ ev_window_set_action_sensitive (ev_window, "FileOpenCopy", has_document); ev_window_set_action_sensitive (ev_window, "FileSaveAs", has_document && ok_to_copy); +#if !GTK_CHECK_VERSION (2, 17, 4) ev_window_set_action_sensitive (ev_window, "FilePageSetup", has_pages && ok_to_print); +#endif ev_window_set_action_sensitive (ev_window, "FilePrint", has_pages && ok_to_print); ev_window_set_action_sensitive (ev_window, "FileProperties", has_document && has_properties); @@ -2908,6 +2910,13 @@ ev_window_print_operation_done (EvPrintOperation *op, print_settings = ev_print_operation_get_print_settings (op); ev_window_save_print_settings (ev_window, print_settings); + + if (ev_print_operation_get_embed_page_setup (op)) { + GtkPageSetup *page_setup; + + page_setup = ev_print_operation_get_default_page_setup (op); + ev_window_save_print_page_setup (ev_window, page_setup); + } } break; @@ -3081,6 +3090,7 @@ ev_window_print_range (EvWindow *ev_window, ev_print_operation_set_current_page (op, current_page); ev_print_operation_set_print_settings (op, print_settings); ev_print_operation_set_default_page_setup (op, print_page_setup); + ev_print_operation_set_embed_page_setup (op, TRUE); g_object_unref (print_settings); g_object_unref (print_page_setup); @@ -5420,6 +5430,7 @@ launch_action (EvWindow *window, EvLinkAction *action) g_object_unref (app_info); g_object_unref (file); + /* FIXMEchpe: unref launch context? */ /* According to the PDF spec filename can be an executable. I'm not sure allowing to launch executables is a good idea though. -- marco */ @@ -5445,10 +5456,10 @@ launch_external_uri (EvWindow *window, EvLinkAction *action) /* Not a valid uri, assuming it's http */ http = g_strdup_printf ("http://%s", uri); - ret = g_app_info_launch_default_for_uri (http, NULL, &error); + ret = g_app_info_launch_default_for_uri (http, context, &error); g_free (http); } else { - ret = g_app_info_launch_default_for_uri (uri, NULL, &error); + ret = g_app_info_launch_default_for_uri (uri, context, &error); } if (ret == FALSE) { @@ -5456,6 +5467,8 @@ launch_external_uri (EvWindow *window, EvLinkAction *action) "%s", _("Unable to open external link")); g_error_free (error); } + + /* FIXMEchpe: unref launch context? */ } static void @@ -6036,7 +6049,17 @@ ev_window_init (EvWindow *ev_window) g_error_free (error); } g_free (ui_path); - + +#if GTK_CHECK_VERSION (2, 17, 4) + { + GtkAction *action; + + action = gtk_action_group_get_action (ev_window->priv->action_group, + "FilePageSetup"); + g_object_set (action, "visible", FALSE, "sensitive", FALSE, NULL); + } +#endif + ev_window->priv->recent_manager = gtk_recent_manager_get_default (); ev_window->priv->recent_action_group = NULL; ev_window->priv->recent_ui_id = 0;