diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/empathy-chat-manager.c | 7 | ||||
-rw-r--r-- | src/empathy-event-manager.c | 2 | ||||
-rw-r--r-- | src/empathy-map-view.c | 14 |
3 files changed, 18 insertions, 5 deletions
diff --git a/src/empathy-chat-manager.c b/src/empathy-chat-manager.c index ff715fe37..6c92c25cb 100644 --- a/src/empathy-chat-manager.c +++ b/src/empathy-chat-manager.c @@ -231,6 +231,13 @@ handle_channels (TpSimpleHandler *handler, if (tp_proxy_get_invalidated (channel) != NULL) continue; + if (!TP_IS_TEXT_CHANNEL (channel)) + { + DEBUG ("Channel %s doesn't implement Messages; can't handle it", + tp_proxy_get_object_path (channel)); + continue; + } + handling = TRUE; tp_chat = empathy_tp_chat_new (account, channel); diff --git a/src/empathy-event-manager.c b/src/empathy-event-manager.c index 342d3e11e..6125ec895 100644 --- a/src/empathy-event-manager.c +++ b/src/empathy-event-manager.c @@ -934,7 +934,7 @@ approve_channels (TpSimpleApprover *approver, channel_type = tp_channel_get_channel_type_id (channel); - if (channel_type == TP_IFACE_QUARK_CHANNEL_TYPE_TEXT) + if (TP_IS_TEXT_CHANNEL (channel)) { EmpathyTpChat *tp_chat; diff --git a/src/empathy-map-view.c b/src/empathy-map-view.c index b7a2e1975..9e6cc6dee 100644 --- a/src/empathy-map-view.c +++ b/src/empathy-map-view.c @@ -221,7 +221,7 @@ map_view_contacts_update_label (ClutterActor *marker) gchar *date; gchar *label; GValue *gtime; - time_t loctime; + gint64 loctime; GHashTable *location; EmpathyContact *contact; @@ -232,18 +232,24 @@ map_view_contacts_update_label (ClutterActor *marker) if (gtime != NULL) { - time_t now; + GDateTime *now, *d; + GTimeSpan delta; loctime = g_value_get_int64 (gtime); date = empathy_time_to_string_relative (loctime); label = g_strconcat ("<b>", name, "</b>\n<small>", date, "</small>", NULL); g_free (date); - now = time (NULL); + now = g_date_time_new_now_utc (); + d = g_date_time_new_from_unix_utc (loctime); + delta = g_date_time_difference (now, d); /* if location is older than a week */ - if (now - loctime > (60 * 60 * 24 * 7)) + if (delta > G_TIME_SPAN_DAY * 7) clutter_actor_set_opacity (marker, 0.75 * 255); + + g_date_time_unref (now); + g_date_time_unref (d); } else { |