[solang] Quit enlarged mode with Escape
- From: Debarshi Ray <debarshir src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [solang] Quit enlarged mode with Escape
- Date: Sat, 3 Apr 2010 00:11:42 +0000 (UTC)
commit d00f2ab22181c4fc9bea1db2c90580deeedf860b
Author: Florent Thévenet <feuloren free fr>
Date: Sat Apr 3 03:03:14 2010 +0300
Quit enlarged mode with Escape
Fixes: https://bugzilla.gnome.org/613499
data/solang-enlarged-renderer.ui | 1 +
src/renderer/enlarged-renderer.cpp | 24 ++++++++++++++++++++++++
src/renderer/enlarged-renderer.h | 3 +++
3 files changed, 28 insertions(+), 0 deletions(-)
---
diff --git a/data/solang-enlarged-renderer.ui b/data/solang-enlarged-renderer.ui
index 58346b3..0efe0a2 100644
--- a/data/solang-enlarged-renderer.ui
+++ b/data/solang-enlarged-renderer.ui
@@ -46,4 +46,5 @@
<accelerator action="AccelViewEnlargedZoomIn2"/>
<accelerator action="AccelViewEnlargedZoomOut"/>
<accelerator action="AccelViewEnlargedZoomOut1"/>
+ <accelerator action="AccelQuitEnlarged"/>
</ui>
diff --git a/src/renderer/enlarged-renderer.cpp b/src/renderer/enlarged-renderer.cpp
index bb442c1..d017141 100644
--- a/src/renderer/enlarged-renderer.cpp
+++ b/src/renderer/enlarged-renderer.cpp
@@ -491,6 +491,13 @@ EnlargedRenderer::create_action_group() throw()
Gtk::AccelKey("KP_Subtract"),
sigc::mem_fun(*this,
&EnlargedRenderer::on_action_view_zoom_out));
+
+ actionGroup_->add(
+ Gtk::Action::create(
+ "AccelQuitEnlarged", Gtk::StockID()),
+ Gtk::AccelKey("Escape"),
+ sigc::mem_fun(*this,
+ &EnlargedRenderer::on_action_quit_enlarged));
}
PhotoList
@@ -683,6 +690,23 @@ EnlargedRenderer::on_action_go_last() throw()
}
void
+EnlargedRenderer::on_action_quit_enlarged() throw()
+{
+ RendererRegistry & renderer_registry
+ = application_->get_renderer_registry();
+ const IRendererPtr browser_renderer
+ = renderer_registry.select<BrowserRenderer>();
+
+ if (0 == browser_renderer)
+ {
+ return;
+ }
+
+ browser_renderer->present();
+ // NB: BrowserRenderer::render is a no-op.
+}
+
+void
EnlargedRenderer::on_action_view_slideshow() throw()
{
RendererRegistry & renderer_registry
diff --git a/src/renderer/enlarged-renderer.h b/src/renderer/enlarged-renderer.h
index 35b025f..a3b2087 100644
--- a/src/renderer/enlarged-renderer.h
+++ b/src/renderer/enlarged-renderer.h
@@ -101,6 +101,9 @@ class EnlargedRenderer :
on_action_go_last() throw();
void
+ on_action_quit_enlarged() throw();
+
+ void
on_action_view_slideshow() throw();
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]