[maemo-commits] [maemo-commits] r13863 - in projects/haf/trunk/hildon-desktop: . src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Mon Sep 17 18:11:35 EEST 2007
Author: lucasr
Date: 2007-09-17 18:11:33 +0300 (Mon, 17 Sep 2007)
New Revision: 13863

Modified:
   projects/haf/trunk/hildon-desktop/ChangeLog
   projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c
Log:
2007-09-17  Lucas Rocha  <lucas.rocha at nokia.com>

	* src/hd-applications-menu.c (hd_applications_menu_create_menu,
	hd_applications_menu_activate_category): make sure the menu can't be
	opened while loading its content in order to avoid crashers.
	Fixes: NB#68975.


Modified: projects/haf/trunk/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-desktop/ChangeLog	2007-09-17 14:54:02 UTC (rev 13862)
+++ projects/haf/trunk/hildon-desktop/ChangeLog	2007-09-17 15:11:33 UTC (rev 13863)
@@ -1,5 +1,12 @@
 2007-09-17  Lucas Rocha  <lucas.rocha at nokia.com>
 
+	* src/hd-applications-menu.c (hd_applications_menu_create_menu,
+	hd_applications_menu_activate_category): make sure the menu can't be
+	opened while loading its content in order to avoid crashers.
+	Fixes: NB#68975.
+
+2007-09-17  Lucas Rocha  <lucas.rocha at nokia.com>
+
 	* src/hd-applications-menu.c (hd_applications_menu_activate_category):
 	use new optimized functions to add and remove several items at once.
 	* libhildondesktop/hildon-desktop-popup-menu.[ch]

Modified: projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-09-17 14:54:02 UTC (rev 13862)
+++ projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-09-17 15:11:33 UTC (rev 13863)
@@ -396,7 +396,8 @@
 		    			 sub_items);
   }
 
-  if (button->priv->focus_applications &&
+  if (button->priv->focus_applications && 
+      sub_items != NULL &&
       GTK_WIDGET_IS_SENSITIVE (sub_items->data))
   {
     hildon_desktop_popup_menu_select_first_item (button->priv->menu_applications);
@@ -844,6 +845,10 @@
   
   g_return_if_fail (button);
 
+  g_signal_handlers_block_by_func (button->priv->button,
+  				   hd_applications_menu_button_toggled, 
+  				   button);
+
   box = gtk_hbox_new (TRUE, 0);
   
   popup_window =
@@ -969,6 +974,10 @@
 
   /* Now populate the menu */
   hd_applications_menu_populate (button);
+
+  g_signal_handlers_unblock_by_func (button->priv->button,
+  				     hd_applications_menu_button_toggled, 
+  				     button);
 }
 
 static void


More information about the maemo-commits mailing list