From 7b1bed5ab0d1b15d2752266b8ce8df2e66fccfbd Mon Sep 17 00:00:00 2001 From: Matthew Leeds Date: Fri, 14 Feb 2020 16:44:26 -0800 Subject: [PATCH] common: Improve how we print time periods Print e.g. "2 minutes" instead of "2 minutes 0 seconds". Also, update the path in Totem from which this was copied. The MR to make the same change in Totem is here: https://gitlab.gnome.org/GNOME/totem/merge_requests/134 --- panels/common/cc-util.c | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/panels/common/cc-util.c b/panels/common/cc-util.c index d37846a286..9418d56073 100644 --- a/panels/common/cc-util.c +++ b/panels/common/cc-util.c @@ -145,7 +145,7 @@ cc_util_get_smart_date (GDateTime *date) } } -/* Copied from src/properties/bacon-video-widget-properties.c +/* Copied from src/plugins/properties/bacon-video-widget-properties.c * in totem */ char * cc_util_time_to_string_text (gint64 msecs) @@ -168,13 +168,34 @@ cc_util_time_to_string_text (gint64 msecs) if (hour > 0) { - /* 5 hours 2 minutes 12 seconds */ - return g_strdup_printf (C_("time", "%s %s %s"), hours, mins, secs); + if (min > 0 && sec > 0) + { + /* 5 hours 2 minutes 12 seconds */ + return g_strdup_printf (C_("hours minutes seconds", "%s %s %s"), hours, mins, secs); + } + else if (min > 0) + { + /* 5 hours 2 minutes */ + return g_strdup_printf (C_("hours minutes", "%s %s"), hours, mins); + } + else + { + /* 5 hours */ + return g_strdup_printf (C_("hours", "%s"), hours); + } } else if (min > 0) { - /* 2 minutes 12 seconds */ - return g_strdup_printf (C_("time", "%s %s"), mins, secs); + if (sec > 0) + { + /* 2 minutes 12 seconds */ + return g_strdup_printf (C_("minutes seconds", "%s %s"), mins, secs); + } + else + { + /* 2 minutes */ + return g_strdup_printf (C_("minutes", "%s"), mins); + } } else if (sec > 0) { -- GitLab