Index: PolicyKit-gnome-0.9.2/polkit-gnome/polkit-gnome-action.c
===================================================================
--- PolicyKit-gnome-0.9.2.orig/polkit-gnome/polkit-gnome-action.c
+++ PolicyKit-gnome-0.9.2/polkit-gnome/polkit-gnome-action.c
@@ -2001,29 +2001,25 @@ polkit_gnome_action_activate (PolKitGnom
 }
 
 static void
-_update_tooltips (PolKitGnomeAction *action, GParamSpec *arg1, GtkWidget *widget)
+_update_tooltip (PolKitGnomeAction *action, GParamSpec *arg1, GtkWidget *widget)
 {
-        GtkTooltips *tips;
-        GtkTooltipsData *ttd;
-        gchar *tip_str;
+        gchar *tip_str = NULL;
 
-        ttd = gtk_tooltips_data_get (widget);
-
-        if (ttd == NULL) {
-                tips = gtk_tooltips_new ();
-        } else {
-                tips = ttd->tooltips;
-        }
-
-        tip_str = NULL;
         g_object_get (action, "tooltip", &tip_str, NULL);
 
         /* TODO: if there is no tooltip the tip_str is NULL.
          * Unfortunately it seems that the tooltip isn't
          * cleared.. mmm.. gtk+ bug?
          */
-        gtk_tooltips_set_tip (tips, widget, tip_str, tip_str);
-        g_free (tip_str);
+        if (tip_str) {
+                gtk_widget_set_tooltip_text (widget, tip_str);
+
+                if (!gtk_widget_get_has_tooltip (widget))
+                        gtk_widget_set_has_tooltip (widget, TRUE);
+                g_free (tip_str);
+        } else {
+                gtk_widget_set_has_tooltip (widget, FALSE);
+        }
 }
 
 static void
@@ -2102,10 +2098,10 @@ polkit_gnome_action_create_button (PolKi
         gtk_action_connect_proxy (GTK_ACTION (action), button);
 
         _update_label (action, NULL, button);
-        _update_tooltips (action, NULL, button);
+        _update_tooltip (action, NULL, button);
         _update_icon_name (action, NULL, button);
 
-        g_signal_connect (action, "notify::tooltip", G_CALLBACK (_update_tooltips), button);
+        g_signal_connect (action, "notify::tooltip", G_CALLBACK (_update_tooltip), button);
         g_signal_connect (action, "notify::label", G_CALLBACK (_update_label), button);
         g_signal_connect (action, "notify::icon-name", G_CALLBACK (_update_icon_name), button);
 
Index: PolicyKit-gnome-0.9.2/polkit-gnome/polkit-gnome-toggle-action.c
===================================================================
--- PolicyKit-gnome-0.9.2.orig/polkit-gnome/polkit-gnome-toggle-action.c
+++ PolicyKit-gnome-0.9.2/polkit-gnome/polkit-gnome-toggle-action.c
@@ -824,29 +824,24 @@ disconnect_proxy (GtkAction *action, Gtk
 }
 
 static void
-_update_tooltips (PolKitGnomeToggleAction *action, GParamSpec *arg1, GtkWidget *widget)
+_update_tooltip (PolKitGnomeToggleAction *action, GParamSpec *arg1, GtkWidget *widget)
 {
-        GtkTooltips *tips;
-        GtkTooltipsData *ttd;
-        gchar *tip_str;
-
-        ttd = gtk_tooltips_data_get (widget);
-
-        if (ttd == NULL) {
-                tips = gtk_tooltips_new ();
-        } else {
-                tips = ttd->tooltips;
-        }
-
-        tip_str = NULL;
+        gchar *tip_str = NULL;
         g_object_get (action, "tooltip", &tip_str, NULL);
 
         /* TODO: if there is no tooltip the tip_str is NULL.
          * Unfortunately it seems that the tooltip isn't
          * cleared.. mmm.. gtk+ bug?
          */
-        gtk_tooltips_set_tip (tips, widget, tip_str, tip_str);
-        g_free (tip_str);
+        if (tip_str) {
+                gtk_widget_set_tooltip_text (widget, tip_str);
+
+                if (!gtk_widget_get_has_tooltip (widget))
+                        gtk_widget_set_has_tooltip (widget, TRUE);
+                g_free (tip_str);
+        } else {
+                gtk_widget_set_has_tooltip (widget, FALSE);
+        }
 }
 
 static void
@@ -913,10 +908,10 @@ polkit_gnome_toggle_action_create_toggle
         gtk_action_connect_proxy (GTK_ACTION (action), button);
 
         _update_label (action, NULL, button);
-        _update_tooltips (action, NULL, button);
+        _update_tooltip (action, NULL, button);
         _update_icon_name (action, NULL, button);
 
-        g_signal_connect (action, "notify::tooltip", G_CALLBACK (_update_tooltips), button);
+        g_signal_connect (action, "notify::tooltip", G_CALLBACK (_update_tooltip), button);
         g_signal_connect (action, "notify::label", G_CALLBACK (_update_label), button);
         g_signal_connect (action, "notify::icon-name", G_CALLBACK (_update_icon_name), button);
 
