[gthumb] exit from the fullscreen when pressing escape
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] exit from the fullscreen when pressing escape
- Date: Sat, 9 Nov 2013 20:05:29 +0000 (UTC)
commit 7aaa1dd2a67d9229056d11901f86bf77a0c90f04
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat Oct 19 19:58:14 2013 +0200
exit from the fullscreen when pressing escape
gthumb/gth-browser-actions-callbacks.c | 2 +
gthumb/gth-browser.c | 38 ++++++++++++++++++++-----------
gthumb/gth-browser.h | 1 +
3 files changed, 27 insertions(+), 14 deletions(-)
---
diff --git a/gthumb/gth-browser-actions-callbacks.c b/gthumb/gth-browser-actions-callbacks.c
index 33b6638..e06941c 100644
--- a/gthumb/gth-browser-actions-callbacks.c
+++ b/gthumb/gth-browser-actions-callbacks.c
@@ -431,6 +431,8 @@ gth_browser_activate_browser_mode (GSimpleAction *action,
viewer_sidebar = gth_browser_get_viewer_sidebar (browser);
if (gth_sidebar_tool_is_active (GTH_SIDEBAR (viewer_sidebar)))
gth_sidebar_deactivate_tool (GTH_SIDEBAR (viewer_sidebar));
+ else if (gth_browser_get_is_fullscreen (browser))
+ gth_browser_unfullscreen (browser);
else
gth_window_set_current_page (GTH_WINDOW (browser), GTH_BROWSER_PAGE_BROWSER);
}
diff --git a/gthumb/gth-browser.c b/gthumb/gth-browser.c
index fe04c29..e4dd6a1 100644
--- a/gthumb/gth-browser.c
+++ b/gthumb/gth-browser.c
@@ -205,6 +205,7 @@ struct _GthBrowserPrivate {
gboolean viewer_properties;
gboolean viewer_tools;
gboolean thumbnail_list;
+ gboolean browser_properties;
} before_fullscreen;
/* history */
@@ -4292,17 +4293,10 @@ gth_browser_init (GthBrowser *browser)
gtk_widget_set_tooltip_text (button, _("Visited Locations"));
gtk_container_add (GTK_CONTAINER (button), gtk_image_new_from_icon_name
("document-open-recent-symbolic", GTK_ICON_SIZE_MENU));
- /*browser->priv->history_menu = g_menu_new ();
- menu = g_menu_new ();
- g_menu_append_section (menu, _("Visited Locations"), G_MENU_MODEL
(browser->priv->history_menu));
- gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (button), G_MENU_MODEL (menu));
- g_object_unref (menu);
- g_menu_append (menu, _("_Delete History"), "win.clear-history");*/
-
browser->priv->history_menu = G_MENU (gtk_builder_get_object (builder,
"visited-locations"));
gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (button), G_MENU_MODEL
(gtk_builder_get_object (builder, "menu")));
gtk_widget_show_all (button);
- gtk_box_pack_start (GTK_BOX (gth_browser_get_headerbar_section (browser,
GTH_BROWSER_HEADER_SECTION_BROWSER_COMMANDS)), button, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (gth_browser_get_headerbar_section (browser,
GTH_BROWSER_HEADER_SECTION_BROWSER_LOCATIONS)), button, FALSE, FALSE, 0);
g_object_unref (builder);
}
@@ -6504,6 +6498,7 @@ gth_browser_fullscreen (GthBrowser *browser)
browser->priv->before_fullscreen.viewer_properties = _gth_browser_get_action_active (browser,
"Viewer_Properties");
browser->priv->before_fullscreen.viewer_tools = _gth_browser_get_action_active (browser,
"Viewer_Tools");
browser->priv->before_fullscreen.thumbnail_list = _gth_browser_get_action_active (browser,
"View_Thumbnail_List");
+ browser->priv->before_fullscreen.browser_properties = _gth_browser_get_action_active (browser,
"Browser_Properties");
gth_browser_hide_sidebar (browser);
_gth_browser_set_thumbnail_list_visibility (browser, FALSE);
@@ -6545,12 +6540,20 @@ gth_browser_unfullscreen (GthBrowser *browser)
gth_window_set_current_page (GTH_WINDOW (browser), browser->priv->before_fullscreen.page);
_gth_browser_set_thumbnail_list_visibility (browser, browser->priv->before_fullscreen.thumbnail_list);
- if (browser->priv->before_fullscreen.viewer_properties)
- gth_browser_show_file_properties (browser);
- else if (browser->priv->before_fullscreen.viewer_tools)
- gth_browser_show_viewer_tools (browser);
- else
- gth_browser_hide_sidebar (browser);
+ if (browser->priv->before_fullscreen.page == GTH_BROWSER_PAGE_BROWSER) {
+ if (browser->priv->before_fullscreen.browser_properties)
+ gth_browser_show_file_properties (browser);
+ else
+ gth_browser_hide_sidebar (browser);
+ }
+ else if (browser->priv->before_fullscreen.page == GTH_BROWSER_PAGE_VIEWER) {
+ if (browser->priv->before_fullscreen.viewer_properties)
+ gth_browser_show_file_properties (browser);
+ else if (browser->priv->before_fullscreen.viewer_tools)
+ gth_browser_show_viewer_tools (browser);
+ else
+ gth_browser_hide_sidebar (browser);
+ }
browser->priv->properties_on_screen = FALSE;
if (GTH_VIEWER_PAGE_GET_INTERFACE (browser->priv->viewer_page)->show_properties != NULL)
@@ -6571,6 +6574,13 @@ gth_browser_unfullscreen (GthBrowser *browser)
}
+gboolean
+gth_browser_get_is_fullscreen (GthBrowser *browser)
+{
+ return browser->priv->fullscreen;
+}
+
+
void
gth_browser_file_menu_popup (GthBrowser *browser,
GdkEventButton *event)
diff --git a/gthumb/gth-browser.h b/gthumb/gth-browser.h
index 2c45ebd..6918390 100644
--- a/gthumb/gth-browser.h
+++ b/gthumb/gth-browser.h
@@ -220,6 +220,7 @@ void gth_browser_unregister_fullscreen_control
GtkWidget *widget);
void gth_browser_fullscreen (GthBrowser *browser);
void gth_browser_unfullscreen (GthBrowser *browser);
+gboolean gth_browser_get_is_fullscreen (GthBrowser *browser);
void gth_browser_file_menu_popup (GthBrowser *browser,
GdkEventButton *event);
GthFileData * gth_browser_get_folder_popup_file_data (GthBrowser *browser);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]