Commit graph

267 commits

Author SHA1 Message Date
Jan Beich
37b29c32cb meson: drop unused argument for i18n.merge_file()
Ignored in Meson < 0.60.0, deprecated since 0.60.1 and fatal since 0.61.0.

panels/applications/meson.build:10:5: ERROR: Function does not take positional arguments.
panels/background/meson.build:10:5: ERROR: Function does not take positional arguments.
panels/camera/meson.build:10:5: ERROR: Function does not take positional arguments.
[...]
2022-01-07 17:22:43 +00:00
Christopher Davis
24fbb5e49a cc-datetime-panel: Use AdwComboRow
The API is nicer, and it's the recommended widget to use
for dropdown rows.
2022-01-06 11:47:10 -08:00
Christopher Davis
0a5515463d cc-datetime-panel: Use AdwPreferencesGroup
Lets us get rid of our manual listboxes.
2022-01-06 11:42:08 -08:00
Christopher Davis
d3756aaf26 cc-datetime-panel: Move activation handling to rows 2022-01-06 11:42:08 -08:00
Christopher Davis
3b90e5b43f cc-datetime-panel: Set activatable-widget on rows with switches 2022-01-06 11:42:08 -08:00
Christopher Davis
52a32574fb cc-datetime-panel: Remove keynav-failed handling 2022-01-06 11:42:08 -08:00
Colin Watson
14a2672e28 datetime: Fix handling of Irish timezone on map
The timezone map tries to highlight regions of the world that keep the
same time, approximating this by their non-daylight-savings UTC offset.
There's no reasonable API for this, and it goes wrong in various cases,
such as Irish Standard Time which is legally defined as the country's
summer time with a negative DST offset in winter.

Hardcoding this is unpleasant, but there doesn't seem to be a better
solution, and in any case there's already similar hardcoding implied by
the segmented map images in panels/datetime/data/timezone_*.png.  I've
tried to make it practical to fix other similar disagreements between
the detected offset and the groupings implied by map images, though for
now I've conservatively fixed only the case I'm familiar with.

Fixes: #1341
2021-12-17 14:49:24 +00:00
Colin Watson
1b874509a4 datetime: Remove tzname_daylight
The code that set it could only ever have worked by luck in some
timezones on some systems, and there's no API to obtain the information
we were trying to store in it.  Nothing uses it, so there's no point
trying to fix it.

tzname_normal is also unused, but slightly useful for debugging, so
rename it to tzname but otherwise keep it in place.
2021-12-17 14:48:45 +00:00
Christopher Davis
981a8cea7b panels: Use .boxed-list instead of .content
The `.content` style class is deprecated in favor
of the `.boxed-list` style class, which is named
after the design pattern it's used for.
2021-12-16 12:52:44 -08:00
Georges Basile Stavracas Neto
c6dd59f378 datetime: Port to GTK4
Of particular relevance, the timezone map was massively cleaned up.
It is much more pleasant to use now.
2021-12-14 22:34:21 -03:00
Georges Basile Stavracas Neto
6cc5bbd074 datetime: Use g_time_zone_new_identifier
g_time_zone_new() is deprecated in favour of g_time_zone_new_identifier().

g_time_zone_new_identifier() returns NULL if no matching identifier is
found, so warn and fallback to UTC in that case.
2021-07-29 23:43:29 +00:00
Mohammed Sadiq
ea821e5c3a datetime: Use content style for listbox 2021-05-19 03:25:47 +00:00
Benjamin Berg
3bf6ea7794 datetime: Improve NTP switch handling fixing update loop
We cannot simply set the state/active property of the switch without
also triggering the notify:: or state-set signals at the same time. As
such, we need to block the "set-state" handler when we update the
"state" of the switch.

Also, while at it, change the switch to react to "state-set" and only
update the "state" after we received the response from the system.

Fixes: #1299
2021-05-07 03:46:13 +00:00
Mohammed Sadiq
55ea4cabda datetime: Implement the new time-date editor dialog design 2020-09-15 03:07:41 +00:00
Mohammed Sadiq
c2b0f8cb1d datetime: Fix activating time and timezone rows
These rows seems not activatable by default and thus not able to edit those values
2020-08-10 13:06:30 +00:00
Adrien Plazas
0c71793e7c Stop using the action HdyActionRow child type
It has been dropped and is now the default child type.
2020-07-20 08:04:28 +02:00
Adrien Plazas
f06379e30c Replace HdyColumn by HdyClamp
In libhandy 1, HdyClamp replaces HdyColumn. This stops setting values
when they match HdyClamp's defaults.
2020-07-20 08:04:28 +02:00
lionirdeadman
5b573b7e25 Seperate timezone and date controls as per recent design mockups. 2020-07-17 03:32:02 +00:00
Mohammed Sadiq
7683a09ff7 datetime: Use the new time editor 2020-06-15 04:55:39 +00:00
Robert Ancell
9bc6d2d3f1 datetime: Replace ifdefs with #pragma once 2019-11-27 21:56:10 +00:00
Andre Klapper
397a0ce673 Correct incorrect timezone on world map for North Korea
Fixes #713
2019-10-17 10:05:56 +13:00
Andre Klapper
a3af25fd8a Correct incorrect timezone on world map for Venezuela
Fixes #714
2019-10-14 20:12:26 +00:00
Andre Klapper
e4b1df23a4 Correct incorrect timezone on world map for Sri Lanka
Fixes #709
2019-10-13 21:51:21 +00:00
Benjamin Berg
8d9affbd6a datetime: Allow changing the timezone when auto-update is prohibited
When the user disables the use of location services in the privacy
panel, then the timezone will never be updated automatically. Automatic
timezone may still be enabled though, so we need to allow the user to
change the timezone when location services are disabled or when
automatic timezone updating is disabled.
2019-09-11 18:39:54 +02:00
Robert Ancell
97985a664e Remove unused GNOMELOCALEDIR defines 2019-09-09 21:45:53 +00:00
Ting-Wei Lan
299647f970 build: Include generated sources in declared dependencies
Sometimes ninja decides to compile tests/interactive-panels/main.c,
which requires shell/resources.h, before shell/resources.h is generated.

The fix is to use 'sources' argument of declare_dependency to properly
declare the dependency on generated headers.

A fix for tests/datetime and panels/datetime is also included in the
commit to fix a similar problem.

Closes https://gitlab.gnome.org/GNOME/gnome-control-center/merge_requests/472
2019-08-25 09:42:22 +00:00
Michael Catanzaro
a22da99aaf Replace unsafe setlocale() use with uselocale()
setlocale() is not threadsafe except when used only to query the locale
without changing it. Let's use uselocale() instead, which changes the
locale only on the calling thread. Much better.
2019-07-03 17:15:33 -05:00
Georges Basile Stavracas Neto
75f150d5a2 shell: Add position to cc_shell_embed_widget_in_header()
So we can control where the widget should be added to. The
main window only supports left and right positions.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/528
2019-05-21 12:59:36 -03:00
Adrien Plazas
3c65262a05 datetime: Use HdyActionRow
This better handles the available space and simplifies the code.
2019-01-29 10:28:28 +00:00
Adrien Plazas
fd0b45d6c3 datetime: Use a scrolled window and a column
This better allows to handle short windows and better handle the
available width.
2019-01-29 10:28:28 +00:00
Jeremy Bicha
021140d859 datetime: Use accessible-description instead of -name for Hour & Minute
In my testing, default orca didn't seem to read the "Hour" or "Minute"
words when we used accessible-name but it does work with
accessible-description.

This is the only place we used accessible-name in gnome-control-center
but we use accessible-description in a few other places.
2019-01-05 12:48:31 +00:00
Robert Ancell
3695c22ab5 datetime: Make .ui filename match the .c filename 2018-11-12 16:41:01 +00:00
Philip Withnall
c07b357311 panels: Add X-GNOME-UsesNotifications to several desktop files
gnome-settings-daemon emits notifications related to these four control
panels. If we add X-GNOME-UsesNotifications to their desktop files, the
user will be able to control the notifications.

https://wiki.gnome.org/Initiatives/GnomeGoals/NotificationSource

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2018-11-01 17:22:21 +00:00
Robert Ancell
417fc57392 datetime: Use g_signal_connect_object for all signal handlers
This ensures they wont be called when the handling object is destroyed.
Also connect all in "swapped" form for improved readability.
2018-10-18 01:13:49 +00:00
Robert Ancell
c0f41daff0 shell: Remove the lock button from the shell
Only the date time panel used it, all other panels add their own shell using
cc_shell_embed_widget_in_header which was added after the date time panel was
written. Update the date time panel to use this method.
2018-10-18 00:25:40 +00:00
Robert Ancell
6ce1a1dce6 datetime: Don't use gtk_widget_show_all
It is removed in GTK+ 4
2018-10-10 04:01:11 +00:00
Robert Ancell
216736b8dd datetime: Fix warning running callback before objects are created
The following warning occurs when the datetime panel is created:
(gnome-control-center:3173): GLib-GIO-CRITICAL **: 09:18:38.531: g_settings_get_value: assertion 'G_IS_SETTINGS (settings)' failed

This is due to the callback being called before the settings object is created
2018-10-09 20:30:16 +00:00
Petr Kubánek
89fabad809 datetime: grayout automatic timezone
Automatic timezone does not work if location sharing is disabled in privacy.

Grays out automatic timezone setting if location sharing is disabled in privacy
settings. Enable automatic timezone seting if location sharing is enabled.

https://bugzilla.gnome.org/show_bug.cgi?id=788714
2018-09-11 02:11:44 +00:00
Robert Ancell
dd61d98ec5 datetime: Move callbacks into .ui file 2018-06-01 20:35:30 +00:00
Robert Ancell
6a72e73d0c datetime: Use GtkTemplate 2018-05-29 16:34:28 +00:00
Georges Basile Stavracas Neto
197ed1ed55 datetime: Update backwards file
This is just a plain copy of the most recent (2017-10)
backwards file from tzinfo.
2018-05-09 15:38:12 -03:00
Benjamin Berg
b15be07738 Move datetime tests into tests subdirectory 2018-04-17 15:26:59 +02:00
Benjamin Berg
c2f601a9d4 Move common panel code from shell/ to panel/common
This creates a new static library called libwidget which the shell links
against.
2018-04-17 15:26:59 +02:00
Piotr Drąg
7265bd53a0 Add translator comments to .desktop files
Icons are confusing translators, and gettext
is unlikely to get fixed any time soon.
2018-02-23 18:49:35 +01:00
Dominique Leuenberger
5a66372deb datetime: Allow changing the timezone if polkit says so
As changing the time can have security implications, such as expiring
passwords, while changing the timezone doesn't, it's not unusual to
have a setup where org.freedesktop.timedate1.set-timezone is allowed
while other time-related actions aren't.

Therefore, if org.freedesktop.timedate1.set-timezone is allowed, there's
no reason to require that the user unlocks the panel to enable them to
change the timezone.

https://bugzilla.gnome.org/show_bug.cgi?id=646185
2018-01-26 11:07:59 -02:00
Iñigo Martínez
0dd386f405 build: Migrate from Intltool to Gettext
Recent versions of Gettext are able to translate several formats
that are used in GNOME applications. This patch migrates from
Intltool to Gettext by using meson's i18n features.

https://bugzilla.gnome.org/show_bug.cgi?id=787588
2018-01-23 10:49:31 +01:00
Iñigo Martínez
811ba929d4 build: Move timezone languages to LINGUAS file
The timezone panel uses translations for the existing timezone
names. This was using a set of predefined languages inside the
meson's build file.

This set of languages has been moved to the LINGUAS file.

https://bugzilla.gnome.org/show_bug.cgi?id=787588
2018-01-23 10:49:16 +01:00
Robert Ancell
d71f705d77 datetime: Use g_auto for variables
https://bugzilla.gnome.org/show_bug.cgi?id=788221
2018-01-18 12:30:37 -02:00
Iñigo Martínez
dc0988d47c build: Remove autotools
To avoid the burden of maintaining multiple build systems, this
patch removes autotools support.

https://bugzilla.gnome.org/show_bug.cgi?id=785414
2018-01-18 12:20:08 +01:00
Piotr Drąg
b65e31323a panels: Remove soft hyphens from .desktop files
With the old shell gone, there is no need to work around cut off panel
names (bug #647087). As it stands now, it only confuses translators
(invisible characters are hard to, well, see).

https://bugzilla.gnome.org/show_bug.cgi?id=792629
2018-01-18 00:12:04 -02:00