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

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Tue Aug 14 11:41:44 EEST 2007
Author: lucasr
Date: 2007-08-14 11:41:43 +0300 (Tue, 14 Aug 2007)
New Revision: 13173

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

	* src/hd-applications-menu.c: fix and change the way category menu
	items are painted when activated.


Modified: projects/haf/trunk/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-desktop/ChangeLog	2007-08-14 08:28:01 UTC (rev 13172)
+++ projects/haf/trunk/hildon-desktop/ChangeLog	2007-08-14 08:41:43 UTC (rev 13173)
@@ -1,3 +1,8 @@
+2007-08-10  Lucas Rocha  <lucas.rocha at nokia.com>
+
+	* src/hd-applications-menu.c: fix and change the way category menu
+	items are painted when activated.
+
 2007-08-10  Johan Bilien  <johan.bilien at nokia.com>
 
 	* libhildondesktop/hildon-desktop-item.c:

Modified: projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-08-14 08:28:01 UTC (rev 13172)
+++ projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-08-14 08:41:43 UTC (rev 13173)
@@ -276,12 +276,13 @@
 
       hildon_desktop_popup_menu_deselect_item (button->priv->menu_applications,
 		      			       selected_item);
-      
+ 
       selected_item = 
         hildon_desktop_popup_menu_get_selected_item (button->priv->menu_categories);
 
       gtk_widget_grab_focus (GTK_WIDGET (selected_item));
-      
+      gtk_widget_queue_draw (GTK_WIDGET (selected_item));
+ 
       return TRUE;
     }
   
@@ -307,25 +308,13 @@
   }
   else if (event->keyval == GDK_Return    ||
 	   event->keyval == GDK_KP_Enter  ||
-	   event->keyval == GDK_ISO_Enter ||
-	   activate_menu)
+	   event->keyval == GDK_ISO_Enter)
   {
     if (hd_applications_menu_has_focus (button->priv->menu_categories))
     {
-      GtkMenuItem *selected_item;
-
-      hildon_desktop_popup_menu_select_first_item (button->priv->menu_applications);
-
-      selected_item = 
-        hildon_desktop_popup_menu_get_selected_item (button->priv->menu_applications);
-
-      if (GTK_WIDGET_IS_SENSITIVE (selected_item))
-        gtk_widget_grab_focus (GTK_WIDGET (selected_item));
-      else
-	hildon_desktop_popup_menu_deselect_item (button->priv->menu_applications,
-			                         selected_item);
+      button->priv->focus_applications = TRUE;
       
-      return TRUE;
+      return gtk_widget_event (GTK_WIDGET (button->priv->menu_categories), (GdkEvent *) event);
     }
     else if (hd_applications_menu_has_focus (button->priv->menu_applications))
     {
@@ -338,16 +327,18 @@
     {
       gtk_widget_event (GTK_WIDGET (button->priv->menu_categories), (GdkEvent *) event);
 
-      if (event->keyval == GDK_Up     ||
-          event->keyval == GDK_KP_Up  ||
-          event->keyval == GDK_Down   ||
-          event->keyval == GDK_KP_Down)
+      if (event->keyval == GDK_Up      ||
+          event->keyval == GDK_KP_Up   ||
+          event->keyval == GDK_Down    ||
+          event->keyval == GDK_KP_Down ||
+	  activate_menu)
       {
         GtkMenuItem *selected_item;
 
 	selected_item = 
           hildon_desktop_popup_menu_get_selected_item (button->priv->menu_categories);
 
+	button->priv->focus_applications = activate_menu;
 	gtk_menu_item_activate (selected_item);
       }
     }
@@ -396,6 +387,7 @@
   {
     hildon_desktop_popup_menu_select_first_item (button->priv->menu_applications);
     gtk_widget_grab_focus (GTK_WIDGET (sub_items->data));
+    gtk_widget_queue_draw (GTK_WIDGET (item));
   }
   else
   {
@@ -635,7 +627,7 @@
       		          TRUE, 
       		          TRUE, 
       		          6);
-      
+
       gtk_container_add (GTK_CONTAINER (menu_item), hbox);
       
       gtk_widget_show_all (hbox);


More information about the maemo-commits mailing list