[Goodies-commits] r3865 - xfce4-clipman-plugin/trunk/panel-plugin

Mike Massonnet mmassonnet at xfce.org
Thu Jan 24 14:09:09 CET 2008


Author: mmassonnet
Date: 2008-01-24 13:09:09 +0000 (Thu, 24 Jan 2008)
New Revision: 3865

Modified:
   xfce4-clipman-plugin/trunk/panel-plugin/clipman.c
Log:
* panel-plugin/clipman.c(clipman_plugin_button_pressed),
  panel-plugin/clipman.c(clipman_plugin_new),
  panel-plugin/clipman.c(clipman_plugin_menu_popup):
  Replace "button_press_event" against a "toggled" signal.


Modified: xfce4-clipman-plugin/trunk/panel-plugin/clipman.c
===================================================================
--- xfce4-clipman-plugin/trunk/panel-plugin/clipman.c	2008-01-24 13:09:04 UTC (rev 3864)
+++ xfce4-clipman-plugin/trunk/panel-plugin/clipman.c	2008-01-24 13:09:09 UTC (rev 3865)
@@ -42,8 +42,6 @@
 
 static gboolean                 clipman_plugin_set_size             (ClipmanPlugin *clipman_plugin,
                                                                      gint size);
-static gboolean                 clipman_plugin_button_pressed       (ClipmanPlugin *clipman_plugin,
-                                                                     GdkEventButton *event);
 static gchar *                  clipman_plugin_get_short_text       (ClipmanPlugin *clipman_plugin,
                                                                      const gchar *text);
 static void                     clipman_plugin_menu_new             (ClipmanPlugin *clipman_plugin);
@@ -145,8 +143,8 @@
   gtk_container_add (GTK_CONTAINER (panel_plugin), clipman_plugin->button);
 
   g_signal_connect_swapped (clipman_plugin->button,
-                            "button_press_event",
-                            G_CALLBACK (clipman_plugin_button_pressed),
+                            "toggled",
+                            G_CALLBACK (clipman_plugin_menu_popup),
                             clipman_plugin);
 
   clipman_plugin_load_data (clipman_plugin);
@@ -329,18 +327,6 @@
   return TRUE;
 }
 
-static gboolean
-clipman_plugin_button_pressed (ClipmanPlugin *clipman_plugin,
-                               GdkEventButton *event)
-{
-  if (G_LIKELY (event->button != 1 || event->state & GDK_CONTROL_MASK))
-    return FALSE;
-
-  clipman_plugin_menu_popup (clipman_plugin);
-
-  return TRUE;
-}
-
 static gchar *
 clipman_plugin_get_short_text (ClipmanPlugin *clipman_plugin,
                                const gchar *text)
@@ -647,12 +633,10 @@
 static void
 clipman_plugin_menu_popup (ClipmanPlugin *clipman_plugin)
 {
-  /* If the menu doesn't popup at time, the next popup will be a bit of segfault */
-  if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (clipman_plugin->button)) == TRUE
-      && GTK_IS_MENU (clipman_plugin->menu))
+  gint rc = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (clipman_plugin->button));
+  if (rc == FALSE)
     return;
 
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (clipman_plugin->button), TRUE);
   clipman_plugin_menu_new (clipman_plugin);
   gtk_menu_popup (GTK_MENU (clipman_plugin->menu),
                   NULL,




More information about the Goodies-commits mailing list