[maemo-commits] [maemo-commits] r13643 - in projects/haf/trunk/hildon-desktop: . libhildonwm
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Thu Sep 6 16:03:44 EEST 2007
- Previous message: [maemo-commits] r13642 - projects/haf/hafbuildbot
- Next message: [maemo-commits] r13644 - projects/haf/hafbuildbot
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: moimart Date: 2007-09-06 16:03:43 +0300 (Thu, 06 Sep 2007) New Revision: 13643 Modified: projects/haf/trunk/hildon-desktop/ChangeLog projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.h Log: 2007-09-06 Moises Martinez <moises.martinez at nokia.com> * libhildonwm/hd-wm.[ch]: (hd_wm_switch_instance_current_application): - Added new method to switch to prev/next application. Suggested by Horace Li from Intel. * ChangeLog updated. Modified: projects/haf/trunk/hildon-desktop/ChangeLog =================================================================== --- projects/haf/trunk/hildon-desktop/ChangeLog 2007-09-06 13:02:20 UTC (rev 13642) +++ projects/haf/trunk/hildon-desktop/ChangeLog 2007-09-06 13:03:43 UTC (rev 13643) @@ -1,3 +1,9 @@ +2007-09-06 Moises Martinez <moises.martinez at nokia.com> + + * libhildonwm/hd-wm.[ch]: (hd_wm_switch_instance_current_application): + - Added new method to switch to prev/next application. Suggested by + Horace Li from Intel. + 2007-09-06 Johan Bilien <johan.bilien at nokia.com> * libhildondesktop/hildon-desktop-panel-window-composite.c: Modified: projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c =================================================================== --- projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c 2007-09-06 13:02:20 UTC (rev 13642) +++ projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c 2007-09-06 13:03:43 UTC (rev 13643) @@ -739,7 +739,7 @@ g_signal_emit_by_name (hdwm, "long-key-press"); #ifdef MAEMO_CHANGES gdk_close_all_temporary_windows (); -#endif +#endif return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } @@ -3283,3 +3283,52 @@ to_next); } +void +hd_wm_switch_instance_current_application (HDWM *hdwm, gboolean to_next) +{ + GList *applications_list = NULL, *iter, *new_entry; + HDWMApplication *application; + HDWMWindow *window; + + if (!hdwm->priv->active_window) + return; + + applications_list = hd_wm_get_applications (hdwm); + + for (iter = applications_list; iter != NULL; iter = g_list_next (iter)) + { + application = HD_WM_APPLICATION (iter->data); + + window = hd_wm_application_get_active_window (application); + + if (window == hdwm->priv->active_window) + { + if (to_next) + { + new_entry = g_list_next (iter); + + if (!new_entry) + new_entry = g_list_first (applications_list); + } + else + { + new_entry = g_list_previous (iter); + + if (!new_entry) + new_entry = g_list_last (applications_list); + } + + if (new_entry == iter) /* No need to emit any signal */ + return; + + HDWMWindow *next_win = + hd_wm_application_get_active_window (HD_WM_APPLICATION (new_entry->data)); + + HDWMEntryInfo *info = HD_WM_ENTRY_INFO (next_win); + + hd_wm_top_item (info); + g_signal_emit_by_name (hdwm, "entry_info_stack_changed", info); + break; + } + } +} Modified: projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.h =================================================================== --- projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.h 2007-09-06 13:02:20 UTC (rev 13642) +++ projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.h 2007-09-06 13:03:43 UTC (rev 13643) @@ -295,6 +295,9 @@ void hd_wm_switch_instance_current_window (HDWM *hdwm, gboolean to_next); +void +hd_wm_switch_instance_current_application (HDWM *hdwm, gboolean to_next); + GHashTable * hd_wm_get_icon_cache (HDWM *hdwm);
- Previous message: [maemo-commits] r13642 - projects/haf/hafbuildbot
- Next message: [maemo-commits] r13644 - projects/haf/hafbuildbot
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]