GtkWidget *page_view;
GtkWidget *password_view;
GtkWidget *statusbar;
+ GtkWidget *sidebar_thumbs;
/* Dialogs */
EvProperties *properties;
static void
update_document_mode (EvWindow *window, EvDocumentMode mode)
{
- if (mode == EV_DOCUMENT_MODE_FULL_SCREEN) {
- ev_window_fullscreen (window);
- } else if (mode == EV_DOCUMENT_MODE_PRESENTATION) {
+ if (mode == EV_DOCUMENT_MODE_PRESENTATION) {
ev_window_run_presentation (window);
}
+ else if (mode == EV_DOCUMENT_MODE_FULL_SCREEN) {
+ ev_window_fullscreen (window);
+ }
}
static void
G_CALLBACK (ev_window_load_job_cb),
ev_window);
ev_job_queue_add_job (ev_window->priv->load_job, EV_JOB_PRIORITY_HIGH);
+ g_object_unref (document);
}
}
}
static void
-ev_window_cmd_edit_landscape (GtkAction *action, EvWindow *ev_window)
-{
- ev_view_set_orientation (EV_VIEW (ev_window->priv->view),
- EV_ORIENTATION_LANDSCAPE);
-}
-
-static void
-ev_window_cmd_edit_portrait (GtkAction *action, EvWindow *ev_window)
+ev_window_cmd_edit_rotate_left (GtkAction *action, EvWindow *ev_window)
{
- ev_view_set_orientation (EV_VIEW (ev_window->priv->view),
- EV_ORIENTATION_PORTRAIT);
+ ev_view_rotate_left (EV_VIEW (ev_window->priv->view));
+ ev_sidebar_thumbnails_refresh (EV_SIDEBAR_THUMBNAILS (ev_window->priv->sidebar_thumbs));
}
static void
-ev_window_cmd_edit_flip (GtkAction *action, EvWindow *ev_window)
+ev_window_cmd_edit_rotate_right (GtkAction *action, EvWindow *ev_window)
{
- ev_view_set_orientation (EV_VIEW (ev_window->priv->view),
- EV_ORIENTATION_SEASCAPE);
+ ev_view_rotate_right (EV_VIEW (ev_window->priv->view));
+ ev_sidebar_thumbnails_refresh (EV_SIDEBAR_THUMBNAILS (ev_window->priv->sidebar_thumbs));
}
static void
ev_page_cache_set_current_page (ev_window->priv->page_cache, n_pages - 1);
}
+static void
+ev_window_cmd_go_forward (GtkAction *action, EvWindow *ev_window)
+{
+ int n_pages, current_page;
+
+ g_return_if_fail (EV_IS_WINDOW (ev_window));
+
+ n_pages = ev_page_cache_get_n_pages (ev_window->priv->page_cache);
+ current_page = ev_page_cache_get_current_page (ev_window->priv->page_cache);
+
+ if (current_page + 10 < n_pages)
+ ev_page_cache_set_current_page (ev_window->priv->page_cache, current_page + 10);
+}
+
+static void
+ev_window_cmd_go_backward (GtkAction *action, EvWindow *ev_window)
+{
+ int current_page;
+
+ g_return_if_fail (EV_IS_WINDOW (ev_window));
+
+ current_page = ev_page_cache_get_current_page (ev_window->priv->page_cache);
+
+ if (current_page - 10 >= 0)
+ ev_page_cache_set_current_page (ev_window->priv->page_cache, current_page - 10);
+}
+
static void
ev_window_cmd_view_reload (GtkAction *action, EvWindow *ev_window)
{
{ "EditToolbar", NULL, N_("T_oolbar"), NULL,
N_("Customize the toolbar"),
G_CALLBACK (ev_window_cmd_edit_toolbar) },
- { "EditLandscape", NULL, N_("_Landscape"), NULL,
- N_("Change the document orientation to landscape"),
- G_CALLBACK (ev_window_cmd_edit_landscape) },
- { "EditPortrait", NULL, N_("_Portrait"), NULL,
- N_("Change the document orientation to portrait"),
- G_CALLBACK (ev_window_cmd_edit_portrait) },
- { "EditFlip", NULL, N_("_Flip"), NULL,
- N_("Flip the document"),
- G_CALLBACK (ev_window_cmd_edit_flip) },
+ { "EditRotateLeft", NULL, N_("Rotate _Left"), NULL,
+ N_("Rotate the document to the left"),
+ G_CALLBACK (ev_window_cmd_edit_rotate_left) },
+ { "EditRotateRight", NULL, N_("Rotate _Right"), NULL,
+ N_("Rotate the document to the right"),
+ G_CALLBACK (ev_window_cmd_edit_rotate_right) },
/* View menu */
{ "ViewZoomIn", GTK_STOCK_ZOOM_IN, NULL, "<control>plus",
{ "Plus", GTK_STOCK_ZOOM_IN, NULL, "plus",
N_("Enlarge the document"),
G_CALLBACK (ev_window_cmd_view_zoom_in) },
+ { "CtrlEqual", GTK_STOCK_ZOOM_IN, NULL, "<control>equal",
+ N_("Enlarge the document"),
+ G_CALLBACK (ev_window_cmd_view_zoom_in) },
{ "Minus", GTK_STOCK_ZOOM_OUT, NULL, "minus",
N_("Shrink the document"),
G_CALLBACK (ev_window_cmd_view_zoom_out) },
{ "FocusPageSelector", NULL, "", "<control>l",
N_("Focus the page selector"),
- G_CALLBACK (ev_window_cmd_focus_page_selector) }
+ G_CALLBACK (ev_window_cmd_focus_page_selector) },
+ { "GoBackwardFast", NULL, "", "<shift>Page_Up",
+ N_("Go ten pages backward"),
+ G_CALLBACK (ev_window_cmd_go_backward) },
+ { "GoForwardFast", NULL, "", "<shift>Page_Down",
+ N_("Go ten pages forward"),
+ G_CALLBACK (ev_window_cmd_go_forward) },
};
/* Toggle items */
action = gtk_action_group_get_action (ev_window->priv->action_group, PAGE_SELECTOR_ACTION);
ev_page_action_set_model (EV_PAGE_ACTION (action), model);
+ g_object_unref (model);
}
g_object_get (ev_sidebar_page, "main_widget", &widget, NULL);
- if (widget != NULL) {
- g_signal_connect_object (widget, "focus_in_event",
- G_CALLBACK (view_actions_focus_in_cb),
+ if (widget != NULL) {
+ g_signal_connect_object (widget, "focus_in_event",
+ G_CALLBACK (view_actions_focus_in_cb),
ev_window, 0);
- g_signal_connect_object (widget, "focus_out_event",
- G_CALLBACK (view_actions_focus_out_cb),
+ g_signal_connect_object (widget, "focus_out_event",
+ G_CALLBACK (view_actions_focus_out_cb),
ev_window, 0);
+ g_object_unref (widget);
}
}
sidebar_widget);
sidebar_widget = ev_sidebar_thumbnails_new ();
+ ev_window->priv->sidebar_thumbs = sidebar_widget;
g_signal_connect (sidebar_widget,
"notify::main-widget",
G_CALLBACK (sidebar_page_main_widget_update_cb),