From df7a15e9105ccca0306b674b94b2fc0985f278de Mon Sep 17 00:00:00 2001 From: TingPing Date: Wed, 8 May 2013 19:08:37 -0300 Subject: [PATCH] Show hours for last seen in friends list closes #579 --- src/fe-gtk/notifygui.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/fe-gtk/notifygui.c b/src/fe-gtk/notifygui.c index 3c3b6a6e..872fb7ed 100644 --- a/src/fe-gtk/notifygui.c +++ b/src/fe-gtk/notifygui.c @@ -144,7 +144,7 @@ notify_gui_update (void) GSList *list = notify_list; GSList *slist; gchar *name, *status, *server, *seen; - int online, servcount; + int online, servcount, lastseenminutes; time_t lastseen; char agobuf[128]; @@ -187,7 +187,13 @@ notify_gui_update (void) seen = _("Never"); else { - snprintf (agobuf, sizeof (agobuf), _("%d minutes ago"), (int)(time (0) - lastseen) / 60); + lastseenminutes = (int)(time (0) - lastseen) / 60; + if (lastseenminutes < 60) + snprintf (agobuf, sizeof (agobuf), _("%d minutes ago"), lastseenminutes); + else if (lastseenminutes < 120) + snprintf (agobuf, sizeof (agobuf), _("An hour ago")); + else + snprintf (agobuf, sizeof (agobuf), _("%d hours ago"), lastseenminutes / 60); seen = agobuf; } if (!valid) /* create new tree row if required */