From c40737394bff5c27daea7e4ee08f240224475904 Mon Sep 17 00:00:00 2001 From: Pierre-Luc Beaudoin Date: Tue, 26 May 2009 15:38:32 -0400 Subject: Display relative time to user The time of the geolocation update is displayed relatively to current time (1 min ago, 3 hours ago). The function just prints ("in the future") for debugging purpuses for time in the future. --- src/empathy-map-view.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/empathy-map-view.c b/src/empathy-map-view.c index 688195443..8c6dc54e6 100644 --- a/src/empathy-map-view.c +++ b/src/empathy-map-view.c @@ -296,6 +296,10 @@ map_view_contacts_foreach (GtkTreeModel *model, GHashTable *location; GdkPixbuf *avatar; const gchar *name; + gchar *date; + gchar *label; + GValue *gtime; + time_t time; gtk_tree_model_get (model, iter, EMPATHY_CONTACT_LIST_STORE_COL_CONTACT, &contact, -1); @@ -321,7 +325,20 @@ map_view_contacts_foreach (GtkTreeModel *model, champlain_marker_set_image (CHAMPLAIN_MARKER (marker), NULL); name = empathy_contact_get_name (contact); - champlain_marker_set_text (CHAMPLAIN_MARKER (marker), name); + gtime = g_hash_table_lookup (location, EMPATHY_LOCATION_TIMESTAMP); + if (gtime != NULL) + { + time = g_value_get_int64 (gtime); + date = empathy_time_to_string_relative (time); + label = g_strconcat ("", name, "\n", date, "", NULL); + } + else + { + label = g_strconcat ("", name, "\n", NULL); + } + champlain_marker_set_use_markup (CHAMPLAIN_MARKER (marker), TRUE); + champlain_marker_set_text (CHAMPLAIN_MARKER (marker), label); + g_free (label); clutter_container_add (CLUTTER_CONTAINER (window->layer), marker, NULL); -- cgit v1.2.3