[epiphany/fullscreen-support: 3/4] ephy-window: hide all chrome when entering fullscreen mode
- From: Claudio Saavedra <csaavedra src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany/fullscreen-support: 3/4] ephy-window: hide all chrome when entering fullscreen mode
- Date: Wed, 20 Jun 2012 08:17:04 +0000 (UTC)
commit 071eac2c3a9f85247d58147108f182f6684aff6c
Author: Claudio Saavedra <csaavedra igalia com>
Date: Mon Jun 11 13:07:25 2012 +0300
ephy-window: hide all chrome when entering fullscreen mode
We keep track of the state of the chrome before entering fullscreen
mode in order to restore it afterwards. Also, force hiding of notebook
tabs, since EphyNotebook is ubersmart about it.
When leaving fullscreen mode, restore to the previous state.
https://bugzilla.gnome.org/show_bug.cgi?id=671195
src/ephy-window.c | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
---
diff --git a/src/ephy-window.c b/src/ephy-window.c
index 3f8e095..2b4220a 100644
--- a/src/ephy-window.c
+++ b/src/ephy-window.c
@@ -339,6 +339,7 @@ struct _EphyWindowPrivate
EphyEmbed *active_embed;
EphyFindToolbar *find_toolbar;
EphyWebViewChrome chrome;
+ EphyWebViewChrome pre_fullscreen_chrome;
EphyEmbedEvent *context_event;
guint idle_worker;
GtkWidget *downloads_box;
@@ -698,8 +699,14 @@ sync_chromes_visibility (EphyWindow *window)
g_object_set (priv->toolbar, "visible", show_toolbar, NULL);
- ephy_notebook_set_show_tabs (EPHY_NOTEBOOK (priv->notebook), show_tabsbar);
gtk_widget_set_visible (priv->downloads_box, show_downloads_box);
+
+ /* If in fullscreen mode force hiding of the tabs. Otherwise,
+ restore. */
+ if (priv->fullscreen_mode)
+ gtk_notebook_set_show_tabs (priv->notebook, FALSE);
+ else
+ ephy_notebook_set_show_tabs (EPHY_NOTEBOOK (priv->notebook), show_tabsbar);
}
static void
@@ -808,6 +815,8 @@ ephy_window_fullscreen (EphyWindow *window)
EphyEmbed *embed;
priv->fullscreen_mode = TRUE;
+ priv->pre_fullscreen_chrome = priv->chrome;
+ priv->chrome = 0;
/* sync status */
embed = window->priv->active_embed;
@@ -821,6 +830,7 @@ static void
ephy_window_unfullscreen (EphyWindow *window)
{
window->priv->fullscreen_mode = FALSE;
+ window->priv->chrome = window->priv->pre_fullscreen_chrome;
sync_chromes_visibility (window);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]