diff pidgin/pidgintooltip.c @ 32672:3828a61c44da

A boring and large patch so I can merge heads.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Fri, 23 Dec 2011 08:21:58 +0000
parents e2a1510da13d
children
line wrap: on
line diff
--- a/pidgin/pidgintooltip.c	Mon Aug 22 22:46:08 2011 +0000
+++ b/pidgin/pidgintooltip.c	Fri Dec 23 08:21:58 2011 +0000
@@ -101,16 +101,11 @@
 }
 
 static gboolean
-pidgin_tooltip_draw_cb(GtkWidget *widget, cairo_t *cr, gpointer data)
+pidgin_tooltip_expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data)
 {
-	GtkAllocation allocation;
-
-	gtk_widget_get_allocation(widget, &allocation);
-
 	if (pidgin_tooltip.paint_tooltip) {
-		gtk_paint_flat_box(gtk_widget_get_style(widget), cr,
-			GTK_STATE_NORMAL, GTK_SHADOW_OUT,
-			widget, "tooltip", 0, 0, allocation.width, allocation.height);
+		gtk_paint_flat_box(widget->style, widget->window, GTK_STATE_NORMAL, GTK_SHADOW_OUT,
+				NULL, widget, "tooltip", 0, 0, -1, -1);
 		pidgin_tooltip.paint_tooltip(widget, data);
 	}
 	return FALSE;
@@ -194,8 +189,8 @@
 	gtk_window_move(GTK_WINDOW(tipwindow), x, y);
 	gtk_widget_show(tipwindow);
 
-	g_signal_connect(G_OBJECT(tipwindow), "draw",
-			G_CALLBACK(pidgin_tooltip_draw_cb), data);
+	g_signal_connect(G_OBJECT(tipwindow), "expose_event",
+			G_CALLBACK(pidgin_tooltip_expose_event), data);
 
 	/* Hide the tooltip when the widget is destroyed */
 	sig = g_signal_connect(G_OBJECT(pidgin_tooltip.widget), "destroy", G_CALLBACK(pidgin_tooltip_destroy), NULL);