[evolution] I#601 - Calendar: Force 24-hour format early after start
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] I#601 - Calendar: Force 24-hour format early after start
- Date: Mon, 2 Sep 2019 08:02:17 +0000 (UTC)
commit e6d9f2085125205e5489e20a19cf26b3597e2a35
Author: Milan Crha <mcrha redhat com>
Date: Mon Sep 2 10:01:39 2019 +0200
I#601 - Calendar: Force 24-hour format early after start
Closes https://gitlab.gnome.org/GNOME/evolution/issues/601
src/modules/calendar/e-cal-base-shell-backend.c | 13 +++++++++++++
src/modules/calendar/e-calendar-preferences.c | 9 +++------
2 files changed, 16 insertions(+), 6 deletions(-)
---
diff --git a/src/modules/calendar/e-cal-base-shell-backend.c b/src/modules/calendar/e-cal-base-shell-backend.c
index cf9171e8dd..0d64a7e9fc 100644
--- a/src/modules/calendar/e-cal-base-shell-backend.c
+++ b/src/modules/calendar/e-cal-base-shell-backend.c
@@ -23,6 +23,7 @@
#include <libedataserver/libedataserver.h>
+#include "calendar/gui/calendar-config.h"
#include <calendar/gui/comp-util.h>
#include <calendar/gui/e-comp-editor.h>
@@ -239,6 +240,18 @@ e_cal_base_shell_backend_class_init (ECalBaseShellBackendClass *class)
/* Register relevant ESource extensions. */
g_type_ensure (E_TYPE_SOURCE_CALENDAR);
+
+ /* Force 24 hour format for locales which don't support 12 hour format */
+ if (!calendar_config_locale_supports_12_hour_format ()) {
+ GSettings *settings;
+
+ settings = e_util_ref_settings ("org.gnome.evolution.calendar");
+
+ if (!g_settings_get_boolean (settings, "use-24hour-format"))
+ g_settings_set_boolean (settings, "use-24hour-format", TRUE);
+
+ g_clear_object (&settings);
+ }
}
static void
diff --git a/src/modules/calendar/e-calendar-preferences.c b/src/modules/calendar/e-calendar-preferences.c
index b212fc4cf0..05ea116a13 100644
--- a/src/modules/calendar/e-calendar-preferences.c
+++ b/src/modules/calendar/e-calendar-preferences.c
@@ -717,10 +717,6 @@ calendar_preferences_construct (ECalendarPreferences *prefs,
locale_supports_12_hour_format =
calendar_config_locale_supports_12_hour_format ();
- /* Force 24 hour format for locales which don't support 12 hour format */
- if (!locale_supports_12_hour_format)
- g_settings_set_boolean (settings, "use-24hour-format", TRUE);
-
/* Make sure our custom widget classes are registered with
* GType before we load the GtkBuilder definition file. */
g_type_ensure (E_TYPE_DATE_EDIT);
@@ -835,8 +831,10 @@ calendar_preferences_construct (ECalendarPreferences *prefs,
widget, "use-24-hour-format",
G_SETTINGS_BIND_GET);
- widget = e_builder_get_widget (prefs->priv->builder, "use_12_hour");
+ widget = e_builder_get_widget (prefs->priv->builder, "hbox_time_format");
gtk_widget_set_sensitive (widget, locale_supports_12_hour_format);
+
+ widget = e_builder_get_widget (prefs->priv->builder, "use_12_hour");
g_settings_bind (
settings, "use-24hour-format",
widget, "active",
@@ -844,7 +842,6 @@ calendar_preferences_construct (ECalendarPreferences *prefs,
G_SETTINGS_BIND_INVERT_BOOLEAN);
widget = e_builder_get_widget (prefs->priv->builder, "use_24_hour");
- gtk_widget_set_sensitive (widget, locale_supports_12_hour_format);
g_settings_bind (
settings, "use-24hour-format",
widget, "active",
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]