summaryrefslogtreecommitdiff
path: root/gtk/gtktooltip.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2010-09-08 17:09:12 +0200
committerBenjamin Otte <otte@redhat.com>2010-09-26 15:11:40 +0200
commitc54968e964dda0a91f2268f464ff092b17f5431e (patch)
tree4727657dd834d0ad152b7a6f20fce02f31ce255a /gtk/gtktooltip.c
parentbec11c352d53e50cc9b4ee976071f08b7cbe4a80 (diff)
downloadgtk+-c54968e964dda0a91f2268f464ff092b17f5431e.tar.gz
tooltip: Connect to draw signal
Diffstat (limited to 'gtk/gtktooltip.c')
-rw-r--r--gtk/gtktooltip.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/gtk/gtktooltip.c b/gtk/gtktooltip.c
index d05fb22c0b..dcfb757680 100644
--- a/gtk/gtktooltip.c
+++ b/gtk/gtktooltip.c
@@ -90,7 +90,8 @@ static void gtk_tooltip_init (GtkTooltip *tooltip);
static void gtk_tooltip_dispose (GObject *object);
static void gtk_tooltip_window_style_set (GtkTooltip *tooltip);
-static gboolean gtk_tooltip_paint_window (GtkTooltip *tooltip);
+static gboolean gtk_tooltip_paint_window (GtkTooltip *tooltip,
+ cairo_t *cr);
static void gtk_tooltip_window_hide (GtkWidget *widget,
gpointer user_data);
static void gtk_tooltip_display_closed (GdkDisplay *display,
@@ -151,7 +152,7 @@ gtk_tooltip_init (GtkTooltip *tooltip)
g_signal_connect_swapped (tooltip->window, "style-set",
G_CALLBACK (gtk_tooltip_window_style_set), tooltip);
- g_signal_connect_swapped (tooltip->window, "expose-event",
+ g_signal_connect_swapped (tooltip->window, "draw",
G_CALLBACK (gtk_tooltip_paint_window), tooltip);
tooltip->box = gtk_hbox_new (FALSE, style->xthickness);
@@ -517,20 +518,18 @@ gtk_tooltip_window_style_set (GtkTooltip *tooltip)
}
static gboolean
-gtk_tooltip_paint_window (GtkTooltip *tooltip)
+gtk_tooltip_paint_window (GtkTooltip *tooltip,
+ cairo_t *cr)
{
- GtkAllocation allocation;
-
- gtk_widget_get_allocation (tooltip->window, &allocation);
- gtk_paint_flat_box (gtk_widget_get_style (tooltip->window),
- gtk_widget_get_window (tooltip->window),
+ gtk_cairo_paint_flat_box (gtk_widget_get_style (tooltip->window),
+ cr,
GTK_STATE_NORMAL,
GTK_SHADOW_OUT,
- NULL,
tooltip->window,
"tooltip",
0, 0,
- allocation.width, allocation.height);
+ gtk_widget_get_allocated_width (tooltip->window),
+ gtk_widget_get_allocated_height (tooltip->window));
return FALSE;
}