From d18fdf612dd29c64d43d8f39c9a53d62f562943a Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 7 Sep 2010 18:36:02 -0500 Subject: Logging status change --- src/application-service-appstore.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/application-service-appstore.c b/src/application-service-appstore.c index d5f9a81..d2200e7 100644 --- a/src/application-service-appstore.c +++ b/src/application-service-appstore.c @@ -72,6 +72,8 @@ typedef enum { VISIBLE_STATE_SHOWN } visible_state_t; +#define STATE2STRING(x) ((x) == VISIBLE_STATE_HIDDEN ? "hidden" : "visible") + typedef struct _Approver Approver; struct _Approver { DBusGProxy * proxy; @@ -600,6 +602,8 @@ apply_status (Application * app) return; } + g_debug("Changing app state '%s' to %s", app->id, STATE2STRING(goal_state)); + /* This means we're going off line */ if (goal_state == VISIBLE_STATE_HIDDEN) { gint position = get_position(app); -- cgit v1.2.3 From 01ca0dc5240367fe714116a42917a9c349f98a83 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 7 Sep 2010 19:21:43 -0500 Subject: Extra debugging info --- src/application-service-appstore.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/application-service-appstore.c b/src/application-service-appstore.c index d2200e7..eaaec6b 100644 --- a/src/application-service-appstore.c +++ b/src/application-service-appstore.c @@ -487,6 +487,7 @@ get_position (Application * app) { } if (lapp == NULL) { + g_warning("Unable to find position for app '%s'", app->id); return -1; } @@ -499,6 +500,7 @@ static void application_free (Application * app) { if (app == NULL) return; + g_debug("Application free '%s'", app->id); /* Handle the case where this could be called by unref'ing one of the proxy objects. */ @@ -556,6 +558,7 @@ static void application_removed_cb (DBusGProxy * proxy, gpointer userdata) { Application * app = (Application *)userdata; + g_debug("Application proxy destroyed '%s'", app->id); /* Remove from the panel */ app->status = APP_INDICATOR_STATUS_PASSIVE; @@ -602,7 +605,7 @@ apply_status (Application * app) return; } - g_debug("Changing app state '%s' to %s", app->id, STATE2STRING(goal_state)); + g_debug("Changing app '%s' state from %s to %s", app->id, STATE2STRING(app->visible_state), STATE2STRING(goal_state)); /* This means we're going off line */ if (goal_state == VISIBLE_STATE_HIDDEN) { -- cgit v1.2.3 From c5603404da69d9e7137b840ba47ca58b5b739c4f Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 7 Sep 2010 19:22:05 -0500 Subject: Check for duplicate additions of applications and just rerequest properties. --- src/application-service-appstore.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/application-service-appstore.c b/src/application-service-appstore.c index eaaec6b..7096382 100644 --- a/src/application-service-appstore.c +++ b/src/application-service-appstore.c @@ -131,6 +131,7 @@ static AppIndicatorCategory string_to_cat(const gchar * cat_string); static void approver_free (gpointer papprover, gpointer user_data); static void check_with_new_approver (gpointer papp, gpointer papprove); static void check_with_old_approver (gpointer papprove, gpointer papp); +static Application * find_application (ApplicationServiceAppstore * appstore, const gchar * address, const gchar * object); G_DEFINE_TYPE (ApplicationServiceAppstore, application_service_appstore, G_TYPE_OBJECT); @@ -855,10 +856,20 @@ application_service_appstore_application_add (ApplicationServiceAppstore * appst g_return_if_fail(dbus_name != NULL && dbus_name[0] != '\0'); g_return_if_fail(dbus_object != NULL && dbus_object[0] != '\0'); ApplicationServiceAppstorePrivate * priv = appstore->priv; + Application * app = find_application(appstore, dbus_name, dbus_object); + + if (app != NULL) { + g_warning("Application already exists! Rerequesting properties."); + org_freedesktop_DBus_Properties_get_all_async(app->prop_proxy, + NOTIFICATION_ITEM_DBUS_IFACE, + get_all_properties_cb, + app); + return; + } /* Build the application entry. This will be carried along until we're sure we've got everything. */ - Application * app = g_new0(Application, 1); + app = g_new0(Application, 1); app->validated = FALSE; app->dbus_name = g_strdup(dbus_name); -- cgit v1.2.3 From b39568de7075cfcda135161616dca1710765f1b9 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 9 Sep 2010 12:52:35 -0500 Subject: 0.2.7 --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 3f77cca..ebfc58f 100644 --- a/configure.ac +++ b/configure.ac @@ -1,11 +1,11 @@ -AC_INIT(indicator-application, 0.2.6, ted@canonical.com) +AC_INIT(indicator-application, 0.2.7, ted@canonical.com) AC_COPYRIGHT([Copyright 2009, 2010 Canonical]) AC_PREREQ(2.53) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE(indicator-application, 0.2.6) +AM_INIT_AUTOMAKE(indicator-application, 0.2.7) AM_MAINTAINER_MODE -- cgit v1.2.3