[gtk/abolish-size-allocate: 86/87] tooltipwindow: Stop using the ::size-allocate signal
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/abolish-size-allocate: 86/87] tooltipwindow: Stop using the ::size-allocate signal
- Date: Wed, 6 May 2020 18:02:35 +0000 (UTC)
commit cef270b668e567d54e13968aea973c0d1e1eb27a
Author: Matthias Clasen <mclasen redhat com>
Date: Tue May 5 22:11:55 2020 -0400
tooltipwindow: Stop using the ::size-allocate signal
Instead of connecting to ::size-allocate, call
gtk_native_set_tooltip and rely on the native
to allocate the tooltip window.
gtk/gtktooltipwindow.c | 33 +++------------------------------
1 file changed, 3 insertions(+), 30 deletions(-)
---
diff --git a/gtk/gtktooltipwindow.c b/gtk/gtktooltipwindow.c
index 9ab1bbe698..3c36b82691 100644
--- a/gtk/gtktooltipwindow.c
+++ b/gtk/gtktooltipwindow.c
@@ -355,22 +355,13 @@ gtk_tooltip_window_hide (GtkWidget *widget)
gtk_widget_unmap (widget);
}
-static void size_changed (GtkWidget *widget,
- int width,
- int height,
- int baseline,
- GtkTooltipWindow *window);
-
static void
gtk_tooltip_window_dispose (GObject *object)
{
GtkTooltipWindow *window = GTK_TOOLTIP_WINDOW (object);
if (window->relative_to)
- {
- g_signal_handlers_disconnect_by_func (window->relative_to, size_changed, window);
- gtk_widget_unparent (GTK_WIDGET (window));
- }
+ gtk_widget_unparent (GTK_WIDGET (window));
g_clear_pointer (&window->box, gtk_widget_unparent);
@@ -523,16 +514,6 @@ gtk_tooltip_window_set_custom_widget (GtkTooltipWindow *window,
}
}
-static void
-size_changed (GtkWidget *widget,
- int width,
- int height,
- int baseline,
- GtkTooltipWindow *window)
-{
- gtk_native_check_resize (GTK_NATIVE (window));
-}
-
void
gtk_tooltip_window_set_relative_to (GtkTooltipWindow *window,
GtkWidget *relative_to)
@@ -545,20 +526,12 @@ gtk_tooltip_window_set_relative_to (GtkTooltipWindow *window,
g_object_ref (window);
if (window->relative_to)
- {
- g_signal_handlers_disconnect_by_func (window->relative_to, size_changed, window);
- gtk_widget_unparent (GTK_WIDGET (window));
- }
+ gtk_widget_unparent (GTK_WIDGET (window));
window->relative_to = relative_to;
if (window->relative_to)
- {
- g_signal_connect (window->relative_to, "size-allocate", G_CALLBACK (size_changed), window);
- gtk_css_node_set_parent (gtk_widget_get_css_node (GTK_WIDGET (window)),
- gtk_widget_get_css_node (relative_to));
- gtk_widget_set_parent (GTK_WIDGET (window), relative_to);
- }
+ gtk_widget_set_parent (GTK_WIDGET (window), relative_to);
g_object_unref (window);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]