aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--src/ephy-window.c28
2 files changed, 36 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 549aa8166..03d2fcf65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2004-09-16 Marco Pesenti Gritti <marco@gnome.org>
+ * src/ephy-window.c: (ephy_window_focus_in_event),
+ (ephy_window_focus_out_event), (ephy_window_class_init):
+
+ Show the fullscreen button only when the window is active.
+ Fix #115296.
+
+2004-09-16 Marco Pesenti Gritti <marco@gnome.org>
+
* src/ephy-window.c: (update_fullscreen_popup),
(screen_size_changed_cb), (fullscreen_popup_size_request_cb),
(ephy_window_fullscreen):
diff --git a/src/ephy-window.c b/src/ephy-window.c
index 9157b19e2..b7c1ad036 100644
--- a/src/ephy-window.c
+++ b/src/ephy-window.c
@@ -2026,6 +2026,32 @@ ephy_window_get_property (GObject *object,
}
}
+static gboolean
+ephy_window_focus_in_event (GtkWidget *widget, GdkEventFocus *event)
+{
+ EphyWindow *window = EPHY_WINDOW (widget);
+
+ if (window->priv->exit_fullscreen_popup)
+ {
+ gtk_widget_show (window->priv->exit_fullscreen_popup);
+ }
+
+ return GTK_WIDGET_CLASS (parent_class)->focus_in_event (widget, event);
+}
+
+static gboolean
+ephy_window_focus_out_event (GtkWidget *widget, GdkEventFocus *event)
+{
+ EphyWindow *window = EPHY_WINDOW (widget);
+
+ if (window->priv->exit_fullscreen_popup)
+ {
+ gtk_widget_hide (window->priv->exit_fullscreen_popup);
+ }
+
+ return GTK_WIDGET_CLASS (parent_class)->focus_out_event (widget, event);
+}
+
static void
ephy_window_class_init (EphyWindowClass *klass)
{
@@ -2043,6 +2069,8 @@ ephy_window_class_init (EphyWindowClass *klass)
widget_class->show = ephy_window_show;
widget_class->key_press_event = ephy_window_key_press_event;
+ widget_class->focus_in_event = ephy_window_focus_in_event;
+ widget_class->focus_out_event = ephy_window_focus_out_event;
g_object_class_install_property (object_class,
PROP_ACTIVE_TAB,