[maemo-commits] [maemo-commits] r13011 - in projects/haf/trunk/hildon-desktop: . libhildondesktop src
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Fri Aug 3 14:54:32 EEST 2007
- Previous message: [maemo-commits] r13010 - in projects/haf/trunk/gtk+: . gtk
- Next message: [maemo-commits] r13012 - in projects/haf/trunk/hildon-desktop: . libhildondesktop
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: lucasr Date: 2007-08-03 14:54:30 +0300 (Fri, 03 Aug 2007) New Revision: 13011 Modified: projects/haf/trunk/hildon-desktop/ChangeLog projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c Log: 2007-08-03 Lucas Rocha <lucas.rocha at nokia.com> * libhildondesktop/hildon-desktop-popup-menu.c: activate menu item on button press. * src/hd-applications-menu.c: polished the focus-handling code. Modified: projects/haf/trunk/hildon-desktop/ChangeLog =================================================================== --- projects/haf/trunk/hildon-desktop/ChangeLog 2007-08-03 10:32:05 UTC (rev 13010) +++ projects/haf/trunk/hildon-desktop/ChangeLog 2007-08-03 11:54:30 UTC (rev 13011) @@ -1,3 +1,9 @@ +2007-08-03 Lucas Rocha <lucas.rocha at nokia.com> + + * libhildondesktop/hildon-desktop-popup-menu.c: activate menu item on + button press. + * src/hd-applications-menu.c: polished the focus-handling code. + 2007-08-02 Johan Bilien <johan.bilien at nokia.com> * libhildonwm/hd-wm.c: Modified: projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c =================================================================== --- projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c 2007-08-03 10:32:05 UTC (rev 13010) +++ projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c 2007-08-03 11:54:30 UTC (rev 13011) @@ -99,6 +99,7 @@ static void hildon_desktop_popup_menu_size_request (GtkWidget *widget, GtkRequisition *req); static void hildon_desktop_popup_menu_size_allocate (GtkWidget *widget, GtkAllocation *allocation); static gboolean hildon_desktop_popup_menu_motion_notify (GtkWidget *widget, GdkEventMotion *event); +static gboolean hildon_desktop_popup_menu_press_event (GtkWidget *widget, GdkEventButton *event); static gboolean hildon_desktop_popup_menu_release_event (GtkWidget *widget, GdkEventButton *event); static gboolean hildon_desktop_popup_menu_key_press_event (GtkWidget *widget, GdkEventKey *event); static void hildon_desktop_popup_menu_scroll_cb (GtkWidget *widget, HildonDesktopPopupMenu *menu); @@ -135,6 +136,7 @@ object_class->set_property = hildon_desktop_popup_menu_set_property; widget_class->motion_notify_event = hildon_desktop_popup_menu_motion_notify; + widget_class->button_press_event = hildon_desktop_popup_menu_press_event; widget_class->button_release_event = hildon_desktop_popup_menu_release_event; widget_class->key_press_event = hildon_desktop_popup_menu_key_press_event; @@ -520,12 +522,17 @@ hildon_desktop_popup_menu_release_event (GtkWidget *widget, GdkEventButton *event) { + return TRUE; +} + +static gboolean +hildon_desktop_popup_menu_press_event (GtkWidget *widget, + GdkEventButton *event) +{ HildonDesktopPopupMenu *menu = HILDON_DESKTOP_POPUP_MENU (widget); GList *menu_items = NULL, *l; gint w,h,x,y; - g_debug ("release event for popup menu"); - menu_items = gtk_container_get_children (GTK_CONTAINER (menu->priv->box_items)); @@ -544,7 +551,7 @@ break; } } - } + } g_list_free (menu_items); Modified: projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c =================================================================== --- projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c 2007-08-03 10:32:05 UTC (rev 13010) +++ projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c 2007-08-03 11:54:30 UTC (rev 13011) @@ -105,7 +105,6 @@ GnomeVFSMonitorHandle *home_dir_monitor; GnomeVFSMonitorHandle *desktop_dir_monitor; guint monitor_update_timeout; - gboolean focus_applications; }; static void hd_applications_menu_register_monitors (HDApplicationsMenu *button); @@ -193,8 +192,6 @@ priv->monitor_update_timeout = 0; - priv->focus_applications = TRUE; - priv->popup_window = NULL; gtk_container_add (GTK_CONTAINER (button), priv->button); @@ -237,8 +234,6 @@ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button->priv->button), FALSE); - - button->priv->focus_applications = TRUE; } static gboolean @@ -362,18 +357,6 @@ return FALSE; } -static gboolean -hd_applications_menu_button_release_category (GtkMenuItem *item, - GdkEventButton *event, - HDApplicationsMenu *button) -{ - button->priv->focus_applications = TRUE; - - gtk_menu_item_activate (item); - - return TRUE; -} - static void hd_applications_menu_activate_category (GtkMenuItem *item, HDApplicationsMenu *button) { @@ -405,8 +388,7 @@ (button->priv->menu_applications, child); } - if (button->priv->focus_applications && - GTK_WIDGET_IS_SENSITIVE (sub_items->data)) + if (GTK_WIDGET_IS_SENSITIVE (sub_items->data)) { hildon_desktop_popup_menu_select_first_item (button->priv->menu_applications); gtk_widget_grab_focus (GTK_WIDGET (sub_items->data)); @@ -415,8 +397,6 @@ { gtk_widget_grab_focus (GTK_WIDGET (item)); } - - button->priv->focus_applications = FALSE; } static void @@ -681,11 +661,6 @@ (GDestroyNotify) hd_applications_menu_free_menu_items); g_signal_connect (G_OBJECT (menu_item), - "button-release-event", - G_CALLBACK (hd_applications_menu_button_release_category), - button); - - g_signal_connect (G_OBJECT (menu_item), "activate", G_CALLBACK (hd_applications_menu_activate_category), button); @@ -841,7 +816,6 @@ { selected_item = menu_item; - button->priv->focus_applications = TRUE; gtk_menu_item_activate (selected_item); } @@ -955,10 +929,10 @@ gtk_container_add (GTK_CONTAINER (button_down), arrow); gtk_widget_show (arrow); - g_signal_connect (G_OBJECT (popup_window), - "key-press-event", - G_CALLBACK (hd_applications_menu_key_press), - button); + g_signal_connect (G_OBJECT (popup_window), + "key-press-event", + G_CALLBACK (hd_applications_menu_key_press), + button); g_signal_connect (G_OBJECT (popup_window), "popdown-window",
- Previous message: [maemo-commits] r13010 - in projects/haf/trunk/gtk+: . gtk
- Next message: [maemo-commits] r13012 - in projects/haf/trunk/hildon-desktop: . libhildondesktop
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]