[Xfce4-commits] <midori:master> Distinguish the current year from the past

Christian Dywan noreply at xfce.org
Wed Feb 22 21:50:01 CET 2012


Updating branch refs/heads/master
         to 8ad470caf5ecfeb34e727513ec795cc850b01ac2 (commit)
       from 90ee1384a708436aee4b4884d8c4461ea7761ddf (commit)

commit 8ad470caf5ecfeb34e727513ec795cc850b01ac2
Author: Christian Dywan <christian at twotoasts.de>
Date:   Wed Feb 22 21:48:26 2012 +0100

    Distinguish the current year from the past
    
    Today a year ago shouldn't display as Today.

 panels/midori-history.c |   28 ++++++++++++++++------------
 1 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/panels/midori-history.c b/panels/midori-history.c
index d264950..90cc1c3 100644
--- a/panels/midori-history.c
+++ b/panels/midori-history.c
@@ -149,21 +149,21 @@ midori_history_format_date (KatzeItem *item)
     #if GLIB_CHECK_VERSION (2, 26, 0)
     GDateTime* now = g_date_time_new_now_local ();
     GDateTime* then = g_date_time_new_from_unix_local (day);
-    if (g_date_time_get_day_of_month (then) == g_date_time_get_day_of_month (now))
+    age = g_date_time_get_day_of_year (now) - g_date_time_get_day_of_year (then);
+    if (g_date_time_get_year (now) != g_date_time_get_year (then))
+        age = 999;
+
+    if (age == 0)
         sdate = g_strdup (_("Today"));
-    else if (g_date_time_get_day_of_year (then) == g_date_time_get_day_of_year (now) - 1)
+    else if (age == 1)
         sdate = g_strdup (_("Yesterday"));
+    else if (age < 7)
+        sdate = g_strdup_printf (ngettext ("%d day ago",
+            "%d days ago", (gint)age), (gint)age);
+    else if (age == 7)
+        sdate = g_strdup (_("A week ago"));
     else
-    {
-        age = g_date_time_get_day_of_year (now) - g_date_time_get_day_of_year (then);
-        if (age < 7)
-            sdate = g_strdup_printf (ngettext ("%d day ago",
-                "%d days ago", (gint)age), (gint)age);
-        else if (age == 7)
-            sdate = g_strdup (_("A week ago"));
-        else
-            sdate = g_date_time_format (then, "%x");
-    }
+        sdate = g_date_time_format (then, "%x");
     #else
     gchar token[50];
     time_t current_time;
@@ -468,6 +468,10 @@ midori_history_add_item_cb (KatzeArray*    array,
         has_today = g_date_time_get_day_of_month (
             g_date_time_new_from_unix_local (day))
          == g_date_time_get_day_of_month (
+            g_date_time_new_from_unix_local (current_time))
+        && g_date_time_get_day_of_year (
+            g_date_time_new_from_unix_local (day))
+         == g_date_time_get_day_of_year (
             g_date_time_new_from_unix_local (current_time));
         #else
         has_today = sokoke_days_between ((time_t*)&day, &current_time) == 0;


More information about the Xfce4-commits mailing list