[maemo-commits] [maemo-commits] r10805 - in projects/haf/trunk/hildon-desktop: . libhildonwm src
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Wed Mar 28 14:34:05 EEST 2007
- Previous message: [maemo-commits] r10804 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Next message: [maemo-commits] r10806 - projects/haf/trunk/hildon-theme-layout-4
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: moimart Date: 2007-03-28 14:34:04 +0300 (Wed, 28 Mar 2007) New Revision: 10805 Modified: projects/haf/trunk/hildon-desktop/ChangeLog projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c projects/haf/trunk/hildon-desktop/src/hn-app-switcher.c Log: * src/hn-app-switcher.c: - Handling of swap key fixed. - Open thumb menu when swap key pressed. * libhildonwm/hd-wm.c (working copy): - Created constructor and moved DBus initialization to constructor. Modified: projects/haf/trunk/hildon-desktop/ChangeLog =================================================================== --- projects/haf/trunk/hildon-desktop/ChangeLog 2007-03-28 11:17:16 UTC (rev 10804) +++ projects/haf/trunk/hildon-desktop/ChangeLog 2007-03-28 11:34:04 UTC (rev 10805) @@ -1,3 +1,11 @@ +2007-03-28 Moises Martinez <moises.martinez at nokia.com> + + * src/hn-app-switcher.c: + - Handling of swap key fixed. + - Open thumb menu when swap key pressed. + * libhildonwm/hd-wm.c (working copy): + - Created constructor and moved DBus initialization to constructor. + 2007-03-28 Lucas Rocha <lucas.rocha at nokia.com> * src/hd-home-background.c, src/hd-desktop.c, Modified: projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c =================================================================== --- projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c 2007-03-28 11:17:16 UTC (rev 10804) +++ projects/haf/trunk/hildon-desktop/libhildonwm/hd-wm.c 2007-03-28 11:34:04 UTC (rev 10805) @@ -162,6 +162,13 @@ hd_wm_relaunch_timeout (gpointer data); static void +hd_wm_register_object_path (HDWM *hdwm, + DBusConnection *conn, + DBusObjectPathMessageFunction func, + gchar *interface, + gchar *path); + +static void hd_wm_check_net_state (HDWM *hdwm, HDWMWatchedWindow *win); static void hd_wm_get_property (GObject *object, @@ -760,6 +767,8 @@ if (strcmp (HOME_LONG_PRESS, member) == 0 && !hd_wm_modal_windows_present()) { g_signal_emit_by_name (hdwm, "long-key-press"); + + g_debug ("long key press!!!!"); return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } @@ -793,11 +802,117 @@ G_OBJECT_CLASS (hd_wm_parent_class)->finalize (object); } +static GObject * +hd_wm_constructor (GType gtype, guint n_params, GObjectConstructParam *params) +{ + GObject *object; + HDWM *hdwm; + DBusConnection *connection,*sys_connection; + DBusError error,sys_error; + gchar *match_rule = NULL; + + object = G_OBJECT_CLASS (hd_wm_parent_class)->constructor (gtype, n_params, params); + + hdwm = HD_WM (object); + + if (!hdwm->priv->init_dbus) + return object; + + /* Setup shortcuts */ + + hdwm->keys = hd_keys_config_get_singleton (); + + /* Get on the DBus */ + + dbus_error_init (&error); + dbus_error_init (&sys_error); + + connection = dbus_bus_get (DBUS_BUS_SESSION, &error); + sys_connection = dbus_bus_get (DBUS_BUS_SYSTEM, &sys_error); + + if (!connection) + { + g_debug ("Failed to connect to DBUS: %s!\n", error.message ); + dbus_error_free( &error ); + } + else + { + match_rule = g_strdup_printf("interface='%s'", APP_LAUNCH_BANNER_METHOD_INTERFACE ); + + dbus_bus_add_match( connection, match_rule, NULL ); + g_free (match_rule); + + match_rule = g_strdup_printf("type='signal', interface='%s'",APPKILLER_SIGNAL_INTERFACE); + + dbus_bus_add_match( connection, match_rule, NULL ); + dbus_connection_add_filter (connection, hd_wm_dbus_signal_handler, hdwm, NULL); + g_free(match_rule); + + match_rule = g_strdup_printf("interface='%s'", TASKNAV_INSENSITIVE_INTERFACE ); + + dbus_bus_add_match (connection, match_rule, NULL ); + + dbus_connection_add_filter (connection, hd_wm_dbus_method_call_handler, hdwm, NULL ); + g_free(match_rule); + + match_rule = g_strdup_printf("type='signal', interface='%s'", MAEMO_LAUNCHER_SIGNAL_IFACE); + + dbus_bus_add_match (connection, match_rule, NULL); + dbus_connection_add_filter (connection, hd_wm_dbus_signal_handler, hdwm, NULL); + g_free(match_rule); + + dbus_connection_flush(connection); + + } + + if (!sys_connection) + { + g_debug ("Failed to connect to DBUS: %s!\n", sys_error.message ); + dbus_error_free( &sys_error ); + } + else + { + hd_wm_register_object_path (hdwm, + sys_connection, + mce_handler, + MCE_SIGNAL_INTERFACE, + MCE_SIGNAL_PATH); + + hd_wm_register_object_path (hdwm, + sys_connection, + bgkill_handler, + BGKILL_ON_SIGNAL_INTERFACE, + BGKILL_ON_SIGNAL_PATH); + + hd_wm_register_object_path (hdwm, + sys_connection, + bgkill_handler, + BGKILL_OFF_SIGNAL_INTERFACE, + BGKILL_OFF_SIGNAL_PATH); + + hd_wm_register_object_path (hdwm, + sys_connection, + lowmem_handler, + LOWMEM_ON_SIGNAL_INTERFACE, + LOWMEM_ON_SIGNAL_PATH); + + hd_wm_register_object_path (hdwm, + sys_connection, + lowmem_handler, + LOWMEM_OFF_SIGNAL_INTERFACE, + LOWMEM_OFF_SIGNAL_PATH); + } + + return object; +} + static void hd_wm_class_init (HDWMClass *hdwm_class) { GObjectClass *object_class = G_OBJECT_CLASS (hdwm_class); + + object_class->constructor = hd_wm_constructor; object_class->get_property = hd_wm_get_property; object_class->set_property = hd_wm_set_property; @@ -908,7 +1023,7 @@ "initdbus", "Max width when horizontal", TRUE, - G_PARAM_READWRITE | G_PARAM_CONSTRUCT)); + G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); } static void @@ -978,9 +1093,6 @@ static void hd_wm_init (HDWM *hdwm) { - DBusConnection *connection,*sys_connection; - DBusError error,sys_error; - gchar *match_rule = NULL; GdkKeymap *keymap; hdwm->priv = hdwmpriv = HD_WM_GET_PRIVATE (hdwm); @@ -1057,94 +1169,7 @@ hdwm->priv->home_info = hd_entry_info_new (HD_ENTRY_DESKTOP); - - if (!hdwm->priv->init_dbus) - return; - - /* Setup shortcuts */ - - hdwm->keys = hd_keys_config_get_singleton (); - - /* Get on the DBus */ - - dbus_error_init (&error); - dbus_error_init (&sys_error); - - connection = dbus_bus_get (DBUS_BUS_SESSION, &error); - sys_connection = dbus_bus_get (DBUS_BUS_SYSTEM, &sys_error); - - if (!connection) - { - g_debug ("Failed to connect to DBUS: %s!\n", error.message ); - dbus_error_free( &error ); - } - else - { - match_rule = g_strdup_printf("interface='%s'", APP_LAUNCH_BANNER_METHOD_INTERFACE ); - - dbus_bus_add_match( connection, match_rule, NULL ); - g_free (match_rule); - - match_rule = g_strdup_printf("type='signal', interface='%s'",APPKILLER_SIGNAL_INTERFACE); - - dbus_bus_add_match( connection, match_rule, NULL ); - dbus_connection_add_filter (connection, hd_wm_dbus_signal_handler, hdwm, NULL); - g_free(match_rule); - - match_rule = g_strdup_printf("interface='%s'", TASKNAV_INSENSITIVE_INTERFACE ); - - dbus_bus_add_match (connection, match_rule, NULL ); - - dbus_connection_add_filter (connection, hd_wm_dbus_method_call_handler, hdwm, NULL ); - g_free(match_rule); - - match_rule = g_strdup_printf("type='signal', interface='%s'", MAEMO_LAUNCHER_SIGNAL_IFACE); - - dbus_bus_add_match (connection, match_rule, NULL); - dbus_connection_add_filter (connection, hd_wm_dbus_signal_handler, hdwm, NULL); - g_free(match_rule); - - dbus_connection_flush(connection); - - } - - if (!sys_connection) - { - g_debug ("Failed to connect to DBUS: %s!\n", sys_error.message ); - dbus_error_free( &sys_error ); - } - else - { - hd_wm_register_object_path (hdwm, - sys_connection, - mce_handler, - MCE_SIGNAL_INTERFACE, - MCE_SIGNAL_PATH); - - hd_wm_register_object_path (hdwm, - sys_connection, - bgkill_handler, - BGKILL_ON_SIGNAL_INTERFACE, - BGKILL_ON_SIGNAL_PATH); - - hd_wm_register_object_path (hdwm, - sys_connection, - bgkill_handler, - BGKILL_OFF_SIGNAL_INTERFACE, - BGKILL_OFF_SIGNAL_PATH); - - hd_wm_register_object_path (hdwm, - sys_connection, - lowmem_handler, - LOWMEM_ON_SIGNAL_INTERFACE, - LOWMEM_ON_SIGNAL_PATH); - - hd_wm_register_object_path (hdwm, - sys_connection, - lowmem_handler, - LOWMEM_OFF_SIGNAL_INTERFACE, - LOWMEM_OFF_SIGNAL_PATH); - } + hdwm->keys = NULL; } void Modified: projects/haf/trunk/hildon-desktop/src/hn-app-switcher.c =================================================================== --- projects/haf/trunk/hildon-desktop/src/hn-app-switcher.c 2007-03-28 11:17:16 UTC (rev 10804) +++ projects/haf/trunk/hildon-desktop/src/hn-app-switcher.c 2007-03-28 11:34:04 UTC (rev 10805) @@ -322,9 +322,14 @@ gtk_menu_shell_select_item (GTK_MENU_SHELL (app_switcher->priv->main_menu), item); } else - if (l->data == app_switcher->priv->main_home_item) + if (l->data == app_switcher->priv->main_home_item && + children->next) + { gtk_menu_shell_select_item (GTK_MENU_SHELL (app_switcher->priv->main_menu), GTK_WIDGET (children->data)); + + app_switcher->priv->active_menu_item = GTK_WIDGET (children->data); + } } return; @@ -1077,6 +1082,8 @@ { HNAppSwitcher *app_switcher = HN_APP_SWITCHER (data); + app_switcher->priv->is_thumbable = TRUE; + hn_app_switcher_toggle_menu_button (app_switcher); } @@ -1242,7 +1249,7 @@ (gpointer)app_switcher); g_signal_connect (app_switcher->hdwm, - "long-press-key", + "long-key-press", G_CALLBACK (hn_app_switcher_long_press_cb), (gpointer)app_switcher);
- Previous message: [maemo-commits] r10804 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Next message: [maemo-commits] r10806 - projects/haf/trunk/hildon-theme-layout-4
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]