[maemo-commits] [maemo-commits] r9826 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Tue Feb 13 16:37:21 EET 2007
Author: mitch
Date: 2007-02-13 16:37:19 +0200 (Tue, 13 Feb 2007)
New Revision: 9826

Modified:
   projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog
   projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.c
   projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.h
Log:
2007-02-13  Michael Natterer  <mitch at imendio.com>

	* gtk/gtkmenuitem.[ch]: factor out _gtk_menu_item_popdown_submenu().



Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog
===================================================================
--- projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog	2007-02-13 14:22:57 UTC (rev 9825)
+++ projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog	2007-02-13 14:37:19 UTC (rev 9826)
@@ -1,3 +1,7 @@
+2007-02-13  Michael Natterer  <mitch at imendio.com>
+
+	* gtk/gtkmenuitem.[ch]: factor out _gtk_menu_item_popdown_submenu().
+
 2007-02-13  Kristian Rietveld  <kris at imendio.com>
 
 	* gtk/gtkfilesystem.h (enum GtkFileSystemError): add

Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.c
===================================================================
--- projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.c	2007-02-13 14:22:57 UTC (rev 9825)
+++ projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.c	2007-02-13 14:37:19 UTC (rev 9826)
@@ -958,6 +958,18 @@
 static void
 gtk_real_menu_item_deselect (GtkItem *item)
 {
+#ifdef MAEMO_CHANGES
+  GtkWidget *menu_item;
+
+  g_return_if_fail (GTK_IS_MENU_ITEM (item));
+
+  menu_item = GTK_WIDGET (item);
+
+  _gtk_menu_item_popdown_submenu (menu_item);
+
+  gtk_widget_set_state (menu_item, GTK_STATE_NORMAL);
+  gtk_widget_queue_draw (menu_item);
+#else
   GtkMenuItem *menu_item;
 
   g_return_if_fail (GTK_IS_MENU_ITEM (item));
@@ -977,6 +989,7 @@
 
   gtk_widget_set_state (GTK_WIDGET (menu_item), GTK_STATE_NORMAL);
   gtk_widget_queue_draw (GTK_WIDGET (menu_item));
+#endif /* MAEMO_CHANGES */
 }
 
 static gboolean
@@ -1144,6 +1157,27 @@
     }
 }
 
+void
+_gtk_menu_item_popdown_submenu (GtkWidget *widget)
+{
+  GtkMenuItem *menu_item;
+
+  menu_item = GTK_MENU_ITEM (widget);
+
+  if (menu_item->submenu)
+    {
+      if (menu_item->timer)
+        {
+          g_source_remove (menu_item->timer);
+          menu_item->timer = 0;
+        }
+      else
+        gtk_menu_popdown (GTK_MENU (menu_item->submenu));
+    }
+
+  gtk_widget_queue_draw (widget);
+}
+
 static void
 get_offsets (GtkMenu *menu,
 	     gint    *horizontal_offset,

Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.h
===================================================================
--- projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.h	2007-02-13 14:22:57 UTC (rev 9825)
+++ projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkmenuitem.h	2007-02-13 14:37:19 UTC (rev 9826)
@@ -120,6 +120,9 @@
 					       gboolean		    group_changed);
 gboolean  _gtk_menu_item_is_selectable        (GtkWidget           *menu_item);
 void      _gtk_menu_item_popup_submenu        (GtkWidget           *menu_item);
+#ifdef MAEMO_CHANGES
+void      _gtk_menu_item_popdown_submenu      (GtkWidget           *menu_item);
+#endif /* MAEMO_CHANGES */
 
 #ifndef GTK_DISABLE_DEPRECATED
 #define gtk_menu_item_right_justify(menu_item) gtk_menu_item_set_right_justified ((menu_item), TRUE)


More information about the maemo-commits mailing list