[gtk+] eventbox: Remove visible-window property
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] eventbox: Remove visible-window property
- Date: Fri, 28 Jul 2017 12:28:29 +0000 (UTC)
commit b71f644cf5fd48e465bf3463e2e2a3ceef0dc9cf
Author: Timm Bäder <mail baedert org>
Date: Thu Jul 27 21:53:42 2017 +0200
eventbox: Remove visible-window property
The GdkWindow that was supposed to back it is gone.
docs/reference/gtk/gtk4-sections.txt | 2 -
gtk/gtkeventbox.c | 118 ----------------------------------
gtk/gtkeventbox.h | 5 --
gtk/gtktexthandle.c | 1 -
tests/testgtk.c | 16 -----
5 files changed, 0 insertions(+), 142 deletions(-)
---
diff --git a/docs/reference/gtk/gtk4-sections.txt b/docs/reference/gtk/gtk4-sections.txt
index 3f7eaf3..a268adf 100644
--- a/docs/reference/gtk/gtk4-sections.txt
+++ b/docs/reference/gtk/gtk4-sections.txt
@@ -1038,8 +1038,6 @@ GtkEventBoxClass
gtk_event_box_new
gtk_event_box_set_above_child
gtk_event_box_get_above_child
-gtk_event_box_set_visible_window
-gtk_event_box_get_visible_window
<SUBSECTION Standard>
GTK_EVENT_BOX
GTK_IS_EVENT_BOX
diff --git a/gtk/gtkeventbox.c b/gtk/gtkeventbox.c
index 6a6ba9f..ac2cd2c 100644
--- a/gtk/gtkeventbox.c
+++ b/gtk/gtkeventbox.c
@@ -52,7 +52,6 @@ struct _GtkEventBoxPrivate
enum {
PROP_0,
- PROP_VISIBLE_WINDOW,
PROP_ABOVE_CHILD
};
@@ -91,13 +90,6 @@ gtk_event_box_class_init (GtkEventBoxClass *class)
widget_class->size_allocate = gtk_event_box_size_allocate;
g_object_class_install_property (gobject_class,
- PROP_VISIBLE_WINDOW,
- g_param_spec_boolean ("visible-window",
- P_("Visible Window"),
- P_("Whether the event box is visible, as opposed to
invisible and only used to trap events."),
- FALSE,
- GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));
- g_object_class_install_property (gobject_class,
PROP_ABOVE_CHILD,
g_param_spec_boolean ("above-child",
P_("Above child"),
@@ -140,10 +132,6 @@ gtk_event_box_set_property (GObject *object,
switch (prop_id)
{
- case PROP_VISIBLE_WINDOW:
- gtk_event_box_set_visible_window (event_box, g_value_get_boolean (value));
- break;
-
case PROP_ABOVE_CHILD:
gtk_event_box_set_above_child (event_box, g_value_get_boolean (value));
break;
@@ -166,10 +154,6 @@ gtk_event_box_get_property (GObject *object,
switch (prop_id)
{
- case PROP_VISIBLE_WINDOW:
- g_value_set_boolean (value, gtk_event_box_get_visible_window (event_box));
- break;
-
case PROP_ABOVE_CHILD:
g_value_set_boolean (value, gtk_event_box_get_above_child (event_box));
break;
@@ -181,108 +165,6 @@ gtk_event_box_get_property (GObject *object,
}
/**
- * gtk_event_box_get_visible_window:
- * @event_box: a #GtkEventBox
- *
- * Returns whether the event box has a visible window.
- * See gtk_event_box_set_visible_window() for details.
- *
- * Returns: %TRUE if the event box window is visible
- *
- * Since: 2.4
- */
-gboolean
-gtk_event_box_get_visible_window (GtkEventBox *event_box)
-{
- g_return_val_if_fail (GTK_IS_EVENT_BOX (event_box), FALSE);
-
- return gtk_widget_get_has_window (GTK_WIDGET (event_box));
-}
-
-/**
- * gtk_event_box_set_visible_window:
- * @event_box: a #GtkEventBox
- * @visible_window: %TRUE to make the event box have a visible window
- *
- * Set whether the event box uses a visible or invisible child
- * window. The default is to use visible windows.
- *
- * In an invisible window event box, the window that the
- * event box creates is a %GDK_INPUT_ONLY window, which
- * means that it is invisible and only serves to receive
- * events.
- *
- * A visible window event box creates a visible (%GDK_INPUT_OUTPUT)
- * window that acts as the parent window for all the widgets
- * contained in the event box.
- *
- * You should generally make your event box invisible if
- * you just want to trap events. Creating a visible window
- * may cause artifacts that are visible to the user, especially
- * if the user is using a theme with gradients or pixmaps.
- *
- * The main reason to create a non input-only event box is if
- * you want to set the background to a different color or
- * draw on it.
- *
- * There is one unexpected issue for an invisible event box that has its
- * window below the child. (See gtk_event_box_set_above_child().)
- * Since the input-only window is not an ancestor window of any windows
- * that descendent widgets of the event box create, events on these
- * windows aren’t propagated up by the windowing system, but only by GTK+.
- * The practical effect of this is if an event isn’t in the event
- * mask for the descendant window (see gtk_widget_add_events()),
- * it won’t be received by the event box.
- *
- * This problem doesn’t occur for visible event boxes, because in
- * that case, the event box window is actually the ancestor of the
- * descendant windows, not just at the same place on the screen.
- *
- * Since: 2.4
- */
-void
-gtk_event_box_set_visible_window (GtkEventBox *event_box,
- gboolean visible_window)
-{
- GtkWidget *widget;
-
- g_return_if_fail (GTK_IS_EVENT_BOX (event_box));
-
- widget = GTK_WIDGET (event_box);
-
- visible_window = visible_window != FALSE;
-
- if (visible_window != gtk_widget_get_has_window (widget))
- {
- if (gtk_widget_get_realized (widget))
- {
- gboolean visible = gtk_widget_get_visible (widget);
-
- if (visible)
- gtk_widget_hide (widget);
-
- gtk_widget_unrealize (widget);
-
- gtk_widget_set_has_window (widget, visible_window);
-
- gtk_widget_realize (widget);
-
- if (visible)
- gtk_widget_show (widget);
- }
- else
- {
- gtk_widget_set_has_window (widget, visible_window);
- }
-
- if (gtk_widget_get_visible (widget))
- gtk_widget_queue_resize (widget);
-
- g_object_notify (G_OBJECT (event_box), "visible-window");
- }
-}
-
-/**
* gtk_event_box_get_above_child:
* @event_box: a #GtkEventBox
*
diff --git a/gtk/gtkeventbox.h b/gtk/gtkeventbox.h
index 3129ae1..fae62eb 100644
--- a/gtk/gtkeventbox.h
+++ b/gtk/gtkeventbox.h
@@ -76,11 +76,6 @@ GType gtk_event_box_get_type (void) G_GNUC_CONST;
GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_event_box_new (void);
GDK_AVAILABLE_IN_ALL
-gboolean gtk_event_box_get_visible_window (GtkEventBox *event_box);
-GDK_AVAILABLE_IN_ALL
-void gtk_event_box_set_visible_window (GtkEventBox *event_box,
- gboolean visible_window);
-GDK_AVAILABLE_IN_ALL
gboolean gtk_event_box_get_above_child (GtkEventBox *event_box);
GDK_AVAILABLE_IN_ALL
void gtk_event_box_set_above_child (GtkEventBox *event_box,
diff --git a/gtk/gtktexthandle.c b/gtk/gtktexthandle.c
index eff87c7..70fe9d7 100644
--- a/gtk/gtktexthandle.c
+++ b/gtk/gtktexthandle.c
@@ -283,7 +283,6 @@ _gtk_text_handle_ensure_widget (GtkTextHandle *handle,
GtkStyleContext *context;
widget = gtk_event_box_new ();
- gtk_event_box_set_visible_window (GTK_EVENT_BOX (widget), TRUE);
gtk_widget_set_direction (widget, priv->windows[pos].dir);
diff --git a/tests/testgtk.c b/tests/testgtk.c
index 4158016..5eede7f 100644
--- a/tests/testgtk.c
+++ b/tests/testgtk.c
@@ -3263,14 +3263,6 @@ event_box_button_clicked (GtkWidget *widget,
}
static void
-event_box_toggle_visible_window (GtkWidget *checkbutton,
- GtkEventBox *event_box)
-{
- gtk_event_box_set_visible_window (event_box,
- gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton)));
-}
-
-static void
event_box_toggle_above_child (GtkWidget *checkbutton,
GtkEventBox *event_box)
{
@@ -3290,7 +3282,6 @@ create_event_box (GtkWidget *widget)
GtkWidget *separator;
GtkWidget *event_box;
GtkWidget *label;
- GtkWidget *visible_window_check;
GtkWidget *above_child_check;
if (!window)
@@ -3332,13 +3323,6 @@ create_event_box (GtkWidget *widget)
G_CALLBACK (event_box_button_clicked),
NULL);
-
- visible_window_check = gtk_check_button_new_with_label("Visible Window");
- gtk_box_pack_start (GTK_BOX (box1), visible_window_check);
- g_signal_connect (visible_window_check, "toggled",
- G_CALLBACK (event_box_toggle_visible_window), event_box);
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (visible_window_check), TRUE);
-
above_child_check = gtk_check_button_new_with_label("Above Child");
gtk_box_pack_start (GTK_BOX (box1), above_child_check);
g_signal_connect (above_child_check, "toggled",
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]