Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--data/evince-ui.xml2
-rw-r--r--shell/ev-window.c35
3 files changed, 44 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index c07ae98..af75b5b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2005-06-18 Nickolay V. Shmyrev <nshmyrev@yandex.ru>
+
+ * data/evince-ui.xml:
+ * shell/ev-window.c: (ev_window_cmd_go_forward),
+ (ev_window_cmd_go_backward):
+
+ Shift + PageUp moves 10 Pages. Fix for 306125
+
2005-06-17 Marco Pesenti Gritti <mpg@redhat.com>
* pdf/ev-poppler.cc:
diff --git a/data/evince-ui.xml b/data/evince-ui.xml
index be1cf0b..1cb27cf 100644
--- a/data/evince-ui.xml
+++ b/data/evince-ui.xml
@@ -80,4 +80,6 @@
<accelerator name="PlusAccel" action="Plus"/>
<accelerator name="MinusAccel" action="Minus"/>
<accelerator name="CtrlEqualAccel" action="CtrlEqual"/>
+ <accelerator name="GoBackwardFastAccel" action="GoBackwardFast"/>
+ <accelerator name="GoForwardFastAccel" action="GoForwardFast"/>
</ui>
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 579cf65..4e8db2f 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -1898,6 +1898,33 @@ ev_window_cmd_go_last_page (GtkAction *action, EvWindow *ev_window)
}
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)
{
char *uri;
@@ -2584,7 +2611,13 @@ static const GtkActionEntry entries[] = {
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 */