diff options
author | Xan Lopez <xan@src.gnome.org> | 2007-11-18 01:11:40 +0800 |
---|---|---|
committer | Xan Lopez <xan@src.gnome.org> | 2007-11-18 01:11:40 +0800 |
commit | adfea7bd0eb8a34d64d98cc215a0c97bf9465633 (patch) | |
tree | a4916c4fb420e63eff300c23091de42bf4cf1535 /src/ephy-window.c | |
parent | 44b538bb4dfcdd9d8989b8777c699f08dd034061 (diff) | |
download | gsoc2013-epiphany-adfea7bd0eb8a34d64d98cc215a0c97bf9465633.tar.gz gsoc2013-epiphany-adfea7bd0eb8a34d64d98cc215a0c97bf9465633.tar.zst gsoc2013-epiphany-adfea7bd0eb8a34d64d98cc215a0c97bf9465633.zip |
Put visibility property into EphyBaseEmbed, we need it for popups.
svn path=/trunk/; revision=7712
Diffstat (limited to 'src/ephy-window.c')
-rw-r--r-- | src/ephy-window.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/ephy-window.c b/src/ephy-window.c index 1f2390e5f..1dd6a56eb 100644 --- a/src/ephy-window.c +++ b/src/ephy-window.c @@ -2420,6 +2420,19 @@ ephy_window_dom_mouse_click_cb (EphyEmbed *embed, } static void +ephy_window_visibility_cb (EphyEmbed *embed, GParamSpec *pspec, EphyWindow *window) +{ + gboolean visibility; + + visibility = ephy_embed_get_visibility (embed); + + if (visibility) + gtk_widget_show (GTK_WIDGET (window)); + else + gtk_widget_hide (GTK_WIDGET (window)); +} + +static void ephy_window_set_active_tab (EphyWindow *window, EphyEmbed *new_embed) { EphyEmbed *old_embed; @@ -2472,6 +2485,9 @@ ephy_window_set_active_tab (EphyWindow *window, EphyEmbed *new_embed) g_signal_handlers_disconnect_by_func (embed, G_CALLBACK (sync_tab_message), window); + g_signal_handlers_disconnect_by_func (embed, + G_CALLBACK (ephy_window_visibility_cb), + window); g_signal_handlers_disconnect_by_func (embed, G_CALLBACK (tab_context_menu_cb), window); @@ -2546,6 +2562,9 @@ ephy_window_set_active_tab (EphyWindow *window, EphyEmbed *new_embed) g_signal_connect_object (embed, "ge_dom_mouse_click", G_CALLBACK (ephy_window_dom_mouse_click_cb), window, 0); + g_signal_connect_object (embed, "notify::visibility", + G_CALLBACK (ephy_window_visibility_cb), + window, 0); g_object_notify (G_OBJECT (window), "active-child"); } |