diff options
author | William Jon McCann <jmccann@redhat.com> | 2012-08-30 17:13:25 -0400 |
---|---|---|
committer | William Jon McCann <jmccann@redhat.com> | 2012-08-30 17:25:30 -0400 |
commit | 173940ac28189a02dc8008ec25d4975c029d857d (patch) | |
tree | 5309a234d9eeb3643337a30b4c19e495bfb08146 | |
parent | 94967e5af444b46ba3fb915c77785b7d85e7c39e (diff) | |
download | nautilus-173940ac28189a02dc8008ec25d4975c029d857d.tar.gz |
Use 24 hour date format when requested
https://bugzilla.gnome.org/show_bug.cgi?id=680234
-rw-r--r-- | libnautilus-private/nautilus-file.c | 14 | ||||
-rw-r--r-- | libnautilus-private/nautilus-global-preferences.c | 1 | ||||
-rw-r--r-- | libnautilus-private/nautilus-global-preferences.h | 1 |
3 files changed, 13 insertions, 3 deletions
diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c index 4f90fe0dc..6691f7b41 100644 --- a/libnautilus-private/nautilus-file.c +++ b/libnautilus-private/nautilus-file.c @@ -58,6 +58,7 @@ #include <glib/gstdio.h> #include <gio/gio.h> #include <glib.h> +#include <gdesktop-enums.h> #include <libnautilus-extension/nautilus-file-info.h> #include <libnautilus-extension/nautilus-extension-private.h> #include <libxml/parser.h> @@ -4419,11 +4420,13 @@ nautilus_file_get_trash_original_file_parent_as_string (NautilusFile *file) * off zero padding, and putting a "_" there will use * space padding instead of zero padding. */ +#define TODAY_TIME_FORMAT_24 N_("%R") #define TODAY_TIME_FORMAT N_("%-I:%M %P") #define THIS_MONTH_TIME_FORMAT N_("%b %-e") #define THIS_YEAR_TIME_FORMAT N_("%b %-e") #define ANYTIME_TIME_FORMAT N_("%b %-d %Y") -#define FULL_FORMAT N_("%a, %b %e %Y %H:%M:%S %p") +#define FULL_FORMAT N_("%a, %b %e %Y %I:%M:%S %p") +#define FULL_FORMAT_24 N_("%a, %b %e %Y %T") /** * nautilus_file_get_date_as_string: @@ -4444,6 +4447,8 @@ nautilus_file_get_date_as_string (NautilusFile *file, NautilusDateType date_type GDateTime *date_time, *today; int y, m, d; int y_now, m_now, d_now; + GDesktopClockFormat value; + gboolean use_24; if (!nautilus_file_get_date (file, date_type, &file_time_raw)) { return NULL; @@ -4457,10 +4462,13 @@ nautilus_file_get_date_as_string (NautilusFile *file, NautilusDateType date_type g_date_time_get_ymd (today, &y_now, &m_now, &d_now); g_date_time_unref (today); + value = g_settings_get_enum (gnome_interface_preferences, "clock-format"); + use_24 = value == G_DESKTOP_CLOCK_FORMAT_24H; + if (!compact) { - format = FULL_FORMAT; + format = use_24 ? FULL_FORMAT_24 : FULL_FORMAT; } else if (y == y_now && m == m_now && d == d_now) { - format = TODAY_TIME_FORMAT; + format = use_24 ? TODAY_TIME_FORMAT_24 : TODAY_TIME_FORMAT; } else if (y == y_now && m == m_now) { format = THIS_MONTH_TIME_FORMAT; } else if (y == y_now) { diff --git a/libnautilus-private/nautilus-global-preferences.c b/libnautilus-private/nautilus-global-preferences.c index 80f90c42a..9f9c942ce 100644 --- a/libnautilus-private/nautilus-global-preferences.c +++ b/libnautilus-private/nautilus-global-preferences.c @@ -73,4 +73,5 @@ nautilus_global_preferences_init (void) nautilus_desktop_preferences = g_settings_new("org.gnome.nautilus.desktop"); gnome_lockdown_preferences = g_settings_new("org.gnome.desktop.lockdown"); gnome_background_preferences = g_settings_new("org.gnome.desktop.background"); + gnome_interface_preferences = g_settings_new ("org.gnome.desktop.interface"); } diff --git a/libnautilus-private/nautilus-global-preferences.h b/libnautilus-private/nautilus-global-preferences.h index fec50b07b..632fd427b 100644 --- a/libnautilus-private/nautilus-global-preferences.h +++ b/libnautilus-private/nautilus-global-preferences.h @@ -167,6 +167,7 @@ GSettings *nautilus_desktop_preferences; GSettings *nautilus_window_state; GSettings *gnome_lockdown_preferences; GSettings *gnome_background_preferences; +GSettings *gnome_interface_preferences; G_END_DECLS |