diff --git a/src/application.rs b/src/application.rs index 9abda2f..1309892 100644 --- a/src/application.rs +++ b/src/application.rs @@ -180,8 +180,8 @@ impl LpApplication { self.set_accels_for_action("win.toggle-fullscreen", &["F11"]); self.set_accels_for_action("win.set-background", &["F8"]); - self.set_accels_for_action("win.previous", &["Left", "Page_Down"]); - self.set_accels_for_action("win.next", &["Right", "Page_Up"]); + self.set_accels_for_action("win.image-left", &["Left", "Page_Down"]); + self.set_accels_for_action("win.image-right", &["Right", "Page_Up"]); self.set_accels_for_action("win.first", &["Home"]); self.set_accels_for_action("win.last", &["End"]); diff --git a/src/window.rs b/src/window.rs index 8bcd8ba..05324e5 100644 --- a/src/window.rs +++ b/src/window.rs @@ -106,6 +106,22 @@ mod imp { win.imp().image_view.navigate(Direction::Back); }); + klass.install_action("win.image-right", None, move |win, _, _| { + if win.direction() == gtk::TextDirection::Rtl { + win.imp().image_view.navigate(Direction::Back); + } else { + win.imp().image_view.navigate(Direction::Forward); + } + }); + + klass.install_action("win.image-left", None, move |win, _, _| { + if win.direction() == gtk::TextDirection::Rtl { + win.imp().image_view.navigate(Direction::Forward); + } else { + win.imp().image_view.navigate(Direction::Back); + } + }); + klass.install_action("win.first", None, move |win, _, _| { win.imp().image_view.jump(Position::First); });