Use new %:::z format string to display timezone offset in a slightly
nicer way. This is also needed for consistency with the timezone
notifications from gnome-settings-daemon.
Also bump glib dependency to 2.37.7 for the new modifier.
https://bugzilla.gnome.org/show_bug.cgi?id=707253
This makes it possible to remove the code for manually keeping the NTP
switch and the timedated1 DBus proxy properties in sync, and also makes
it easy to share code with the automatic timezone switch.
https://bugzilla.gnome.org/show_bug.cgi?id=707252
... so that in the following commit, we can rely on the permissions
being available.
While at this, also create a DATETIME_PERMISSION for the PolicyKit
action ID at the top of the file.
https://bugzilla.gnome.org/show_bug.cgi?id=707252
... and add translator comments explainings what they do. The RTL
languages are likely going to want to show them in a different order.
We should eventually move to just using GnomeWallClock and/or
g_date_time_format with %c that already have translated the time format
strings. However, in case this doesn't make it in time for 3.10, mark
the current strings in g-c-c as translatable to get some translation
coverage.
https://bugzilla.gnome.org/show_bug.cgi?id=694985
... using the text bubble API from the previous commit. We're currently
displaying the time zone abbreviation, UTC offset, city and country
name, and the current time.
https://bugzilla.gnome.org/show_bug.cgi?id=694985
This is first cut at implementing the new timezone dialog design.
Instead of having drop down menus with the city and the continent, we're
now switching to a search entry that has autocompletion.
https://bugzilla.gnome.org/show_bug.cgi?id=694985
Avoid using two GError variables in a single function to reduce
programmer confusion. Instead, only use one and clear it with
g_clear_error() when we need to reuse it.
Pointed out by Rui Matos.
https://bugzilla.gnome.org/show_bug.cgi?id=694985
This makes loading faster, with less I/O, avoids unnecessary
code duplication (around 1k lines shaved), and ensures that
all the panels link and work appropriately.
By the same token, it will stop external panels from being
created, and loaded.
https://bugzilla.gnome.org/show_bug.cgi?id=690036
time_t might be a 32-bit integer, which wouldn't be big enough
to contain the number of microseconds since Epoch (since it can
only fit the number of seconds from Epoch until 2038).
https://bugzilla.redhat.com/show_bug.cgi?id=795792
Setting the date manually should be disabled when using NTP, but
the "Network Time" setting is not taken into account when updating
sensitivities after permission changes. As a result, the date is
always editable after unlocking the panel - to fix, take the NTP
setting into account on permission changes.
https://bugzilla.gnome.org/show_bug.cgi?id=652240
Instead of handrolled, copy-pasted async code for talking to
the date-time-mechanism, use gdbus-codegen to generate one
that looks nicer and is just all-around better.
pkg-config --cflags gsettings-desktop-schemas lists:
$incdir/gsettings-desktop-schemas
and that directory contains a gdesktop-enums.h file, so including
<gsettings-desktop-schemas/gdesktop-enums.h> will fail unless
the parent directory also accidentally got added as -I.