util: Add createTimeLabel()
On locales that support it, time formats should follow the 12-hour/24-hour preference, which implies that they should be updated when the setting changes. So add another utility method which creates a label for a specific time and keeps it in sync with the format setting. https://bugzilla.gnome.org/show_bug.cgi?id=745111
This commit is contained in:
parent
39fd7b9a05
commit
8f424e7d96
@ -246,6 +246,20 @@ function formatTime(time, params) {
|
||||
return date.format(Shell.util_translate_time_string(format));
|
||||
}
|
||||
|
||||
function createTimeLabel(date, params) {
|
||||
if (_desktopSettings == null)
|
||||
_desktopSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.interface' });
|
||||
|
||||
let label = new St.Label({ text: formatTime(date, params) });
|
||||
let id = _desktopSettings.connect('changed::clock-format', function() {
|
||||
label.text = formatTime(date, params);
|
||||
});
|
||||
label.connect('destroy', function() {
|
||||
_desktopSettings.disconnect(id);
|
||||
});
|
||||
return label;
|
||||
}
|
||||
|
||||
// lowerBound:
|
||||
// @array: an array or array-like object, already sorted
|
||||
// according to @cmp
|
||||
|
Loading…
Reference in New Issue
Block a user