aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorXan Lopez <xlopez@igalia.com>2011-04-18 10:02:15 +0800
committerXan Lopez <xlopez@igalia.com>2011-04-18 10:02:15 +0800
commitd50425cfd3009d18404d37bb245e8ebd5ac4b3d6 (patch)
tree183f7c1274034770830a4e8d4f0ea8e083191074 /src
parent9d106fb898a71bca2d0aa9233b72a6423627942e (diff)
downloadgsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar.gz
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar.bz2
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar.lz
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar.xz
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.tar.zst
gsoc2013-epiphany-d50425cfd3009d18404d37bb245e8ebd5ac4b3d6.zip
Add UI options to hide the menubar
In the future Web-app like windows will have this hidden by default, but for now we can also add an option to hide it elsewhere.
Diffstat (limited to 'src')
-rw-r--r--src/ephy-window.c30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/ephy-window.c b/src/ephy-window.c
index 4a874ce27..b7da95576 100644
--- a/src/ephy-window.c
+++ b/src/ephy-window.c
@@ -92,6 +92,8 @@ static void notebook_switch_page_cb (GtkNotebook *notebook,
EphyWindow *window);
static void ephy_window_view_toolbar_cb (GtkAction *action,
EphyWindow *window);
+static void ephy_window_view_menubar_cb (GtkAction *action,
+ EphyWindow *window);
static void ephy_window_view_popup_windows_cb (GtkAction *action,
EphyWindow *window);
static void sync_tab_load_status (EphyWebView *view,
@@ -283,6 +285,10 @@ static const GtkToggleActionEntry ephy_menu_toggle_entries [] =
{ "ViewDownloadsBar", NULL, N_("_Downloads Bar"), NULL,
N_("Show the active downloads for this window"),
NULL, FALSE },
+
+ { "HideMenubar", NULL, N_("Hide Men_ubar"), NULL,
+ NULL,
+ G_CALLBACK (ephy_window_view_menubar_cb), FALSE },
{ "ViewFullscreen", GTK_STOCK_FULLSCREEN, N_("_Fullscreen"), "F11",
N_("Browse at full screen"),
G_CALLBACK (window_cmd_view_fullscreen), FALSE },
@@ -1448,7 +1454,8 @@ update_chromes_actions (EphyWindow *window)
GtkAction *action;
gboolean show_menubar, show_toolbar, show_tabsbar;
- get_chromes_visibility (window, &show_menubar,
+ get_chromes_visibility (window,
+ &show_menubar,
&show_toolbar,
&show_tabsbar);
@@ -1460,6 +1467,15 @@ update_chromes_actions (EphyWindow *window)
g_signal_handlers_unblock_by_func (G_OBJECT (action),
G_CALLBACK (ephy_window_view_toolbar_cb),
window);
+
+ action = gtk_action_group_get_action (action_group, "HideMenubar");
+ g_signal_handlers_block_by_func (G_OBJECT (action),
+ G_CALLBACK (ephy_window_view_menubar_cb),
+ window);
+ gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), !show_menubar);
+ g_signal_handlers_unblock_by_func (G_OBJECT (action),
+ G_CALLBACK (ephy_window_view_menubar_cb),
+ window);
}
static void
@@ -4014,6 +4030,10 @@ sync_prefs_with_chrome (EphyWindow *window)
g_settings_set_boolean (EPHY_SETTINGS_UI,
EPHY_PREFS_UI_SHOW_TOOLBARS,
flags & EPHY_WEB_VIEW_CHROME_TOOLBAR);
+
+ g_settings_set_boolean (EPHY_SETTINGS_LOCKDOWN,
+ EPHY_PREFS_LOCKDOWN_MENUBAR,
+ !(flags & EPHY_WEB_VIEW_CHROME_MENUBAR));
}
}
@@ -4043,6 +4063,14 @@ ephy_window_view_toolbar_cb (GtkAction *action,
}
static void
+ephy_window_view_menubar_cb (GtkAction *action,
+ EphyWindow *window)
+{
+ sync_chrome_with_view_toggle (action, window,
+ EPHY_WEB_VIEW_CHROME_MENUBAR, TRUE);
+}
+
+static void
ephy_window_view_popup_windows_cb (GtkAction *action,
EphyWindow *window)
{