diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/datetime-prefs.c | 2 | ||||
-rw-r--r-- | src/datetime-service.c | 30 | ||||
-rw-r--r-- | src/indicator-datetime.c | 21 |
3 files changed, 26 insertions, 27 deletions
diff --git a/src/datetime-prefs.c b/src/datetime-prefs.c index bed5ff1..e7fef5d 100644 --- a/src/datetime-prefs.c +++ b/src/datetime-prefs.c @@ -478,7 +478,7 @@ format_time_text (GtkWidget * spinner, gpointer user_data) } } else { - format = "%Y-%m-%d"; + format = "%x"; } GDateTime * datetime = g_date_time_new_from_unix_local (gtk_spin_button_get_value (GTK_SPIN_BUTTON (spinner))); diff --git a/src/datetime-service.c b/src/datetime-service.c index 8d25b3c..e46b04d 100644 --- a/src/datetime-service.c +++ b/src/datetime-service.c @@ -299,25 +299,25 @@ quick_set_tz (DbusmenuMenuitem * menuitem, guint timestamp, gpointer user_data) static gboolean update_datetime (gpointer user_data) { - g_debug("Updating Date/Time"); + GDateTime *datetime; + gchar *utf8; - gchar longstr[128]; - time_t t; - struct tm *ltime; + g_debug("Updating Date/Time"); - t = time(NULL); - ltime = localtime(&t); - if (ltime == NULL) { + datetime = g_date_time_new_now_local (); + if (datetime == NULL) { g_warning("Error getting local time"); dbusmenu_menuitem_property_set(date, DBUSMENU_MENUITEM_PROP_LABEL, _("Error getting time")); + g_date_time_unref (datetime); return FALSE; } - /* Translators: strftime(3) style date format on top of the menu when you click on the clock */ - strftime(longstr, 128, _("%A, %e %B %Y"), ltime); - - gchar * utf8 = g_locale_to_utf8(longstr, -1, NULL, NULL, NULL); + /* eranslators: strftime(3) style date format on top of the menu when you click on the clock */ + utf8 = g_date_time_format (datetime, _("%A, %e %B %Y")); + dbusmenu_menuitem_property_set(date, DBUSMENU_MENUITEM_PROP_LABEL, utf8); + + g_date_time_unref (datetime); g_free(utf8); return FALSE; @@ -492,7 +492,7 @@ check_for_calendar (gpointer user_data) dbusmenu_menuitem_property_set(events_separator, DBUSMENU_MENUITEM_PROP_TYPE, DBUSMENU_CLIENT_TYPES_SEPARATOR); dbusmenu_menuitem_child_add_position(root, events_separator, 2); add_appointment = dbusmenu_menuitem_new(); - dbusmenu_menuitem_property_set (add_appointment, DBUSMENU_MENUITEM_PROP_LABEL, _("Add Event...")); + dbusmenu_menuitem_property_set (add_appointment, DBUSMENU_MENUITEM_PROP_LABEL, _("Add Event…")); dbusmenu_menuitem_property_set_bool(add_appointment, DBUSMENU_MENUITEM_PROP_ENABLED, TRUE); g_signal_connect(G_OBJECT(add_appointment), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(activate_cb), "evolution -c calendar"); dbusmenu_menuitem_child_add_position (root, add_appointment, 3); @@ -701,7 +701,7 @@ update_appointment_menu_items (gpointer user_data) // Get today & work out query times time(&curtime); - struct tm *today = localtime(&curtime); + struct tm *today = localtime(&curtime); const int mday = today->tm_mday; const int mon = today->tm_mon; const int year = today->tm_year; @@ -1064,7 +1064,7 @@ build_menus (DbusmenuMenuitem * root) g_debug("Building Menus."); if (date == NULL) { date = dbusmenu_menuitem_new(); - dbusmenu_menuitem_property_set (date, DBUSMENU_MENUITEM_PROP_LABEL, _("No date yet...")); + dbusmenu_menuitem_property_set (date, DBUSMENU_MENUITEM_PROP_LABEL, _("No date yet…")); dbusmenu_menuitem_property_set_bool(date, DBUSMENU_MENUITEM_PROP_ENABLED, FALSE); dbusmenu_menuitem_child_append(root, date); @@ -1116,7 +1116,7 @@ build_menus (DbusmenuMenuitem * root) dbusmenu_menuitem_child_append(root, separator); settings = dbusmenu_menuitem_new(); - dbusmenu_menuitem_property_set (settings, DBUSMENU_MENUITEM_PROP_LABEL, _("Time & Date Settings...")); + dbusmenu_menuitem_property_set (settings, DBUSMENU_MENUITEM_PROP_LABEL, _("Time & Date Settings…")); /* insensitive until we check for available apps */ dbusmenu_menuitem_property_set_bool(settings, DBUSMENU_MENUITEM_PROP_ENABLED, FALSE); g_signal_connect(G_OBJECT(settings), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(activate_cb), "gnome-control-center indicator-datetime"); diff --git a/src/indicator-datetime.c b/src/indicator-datetime.c index 163804b..aca1101 100644 --- a/src/indicator-datetime.c +++ b/src/indicator-datetime.c @@ -270,6 +270,9 @@ static void menu_visible_notfy_cb(GtkWidget * menu, G_GNUC_UNUSED GParamSpec *pspec, gpointer user_data) { IndicatorDatetime * self = INDICATOR_DATETIME(user_data); + GDateTime *datetime; + gint y, m, d; + g_debug("notify visible signal received"); // we should only react if we're currently visible @@ -277,18 +280,14 @@ menu_visible_notfy_cb(GtkWidget * menu, G_GNUC_UNUSED GParamSpec *pspec, gpointe g_object_get(G_OBJECT(menu), "visible", &visible, NULL); if (visible) return; g_debug("notify visible menu hidden, resetting date"); - - time_t curtime; - - time(&curtime); - struct tm *today = localtime(&curtime); - int y = today->tm_year; - int m = today->tm_mon; - int d = today->tm_mday; - + + datetime = g_date_time_new_now_local (); + g_date_time_get_ymd (datetime, &y, &m, &d); + g_date_time_unref (datetime); + // Set the calendar to todays date - ido_calendar_menu_item_set_date (self->priv->ido_calendar, y+1900, m, d); - + ido_calendar_menu_item_set_date (self->priv->ido_calendar, y, m-1, d); + // Make sure the day-selected signal is sent so the menu updates - may duplicate /*GVariant *variant = g_variant_new_uint32((guint)curtime); guint timestamp = (guint)time(NULL); |