Commit graph

23141 commits

Author SHA1 Message Date
Jakub Steiner
758f87b783 data: use outline symbolics
- Use the up-to-date style for symbolics (2px outline). Notifications, Printers and Info/About
  work fine as outlines.
- filled silouehette symbolic are only to be used where a 2px outline is impossible
  to cram to 16x16px canvas.
2023-12-14 13:07:39 +00:00
Diego Iván
3e3d61078e applications: Ignore symlinks when measuring cache/data size
Some applications have symlinks that point outside of their folder
in their cache/data directories, leading to incorrect, slower
measurements. Namely, Builder has a symlink to the home directory
in its cache folder, which also contains the Builder app directory,
creating recursion and (very) wrong measurements.

By adding the `FTW_PHYS` flag to the function that traverses the
directory and measures folder size, symlinks are ignored.

Closes #2375
2023-12-12 18:39:58 -06:00
Pablo Correa Gómez
2611bc58e2 sound: fix compiler warning
Fix many warnings of the form:

../panels/sound/cc-output-test-wheel.c: In function 'cc_output_test_wheel_dispose':
../panels/sound/cc-output-test-wheel.c:155:20: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  155 |   g_clear_pointer ((GtkWidget**) &self->front_center_speaker_button, gtk_widget_unparent);
/usr/include/glib-2.0/glib/gmacros.h:870:47: note: in definition of macro 'G_STATIC_ASSERT'
  870 | #define G_STATIC_ASSERT(expr) _Static_assert (expr, "Expression evaluates to false")
      |                                               ^~~~
../panels/sound/cc-output-test-wheel.c:155:3: note: in expansion of macro 'g_clear_pointer'
  155 |   g_clear_pointer ((GtkWidget**) &self->front_center_speaker_button, gtk_widget_unparent);
      |   ^~~~~~~~~~~~~~~
2023-12-11 15:12:00 +00:00
Pablo Correa Gómez
1bafd46ea3 wwan: fix compiler warning
Fix many warnings of the shape:

warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

Consequence of casting the pointers during g_clear_pointer
2023-12-11 15:12:00 +00:00
Felipe Borges
f0b8dbc973 privacy: Make app icons larger in Location/Camera/Microphone pages
Fixes #1637
2023-12-11 14:03:06 +00:00
Artur S0
d2b8a2ab76 Update Russian translation 2023-12-11 12:10:43 +00:00
Bruce Cowan
6228caff69 Update British English translation
(cherry picked from commit 5a93a42041)
2023-12-06 12:57:47 +00:00
Felipe Borges
affa60edcf Revert "system: Replace dynamic System row subtitles with static text"
This reverts commit ea224c4045.

This was accidentally included in another MR.
2023-12-05 15:17:11 +01:00
Felipe Borges
9ee0795c0a notifications: Don't list system services
The current system related entries are ambiguous, as it isn't clear
what the actual notifications are.

System services should handle their own notification settings
instead.

Fixes #527
Fixes #1175
2023-12-05 14:07:13 +00:00
Felipe Borges
ea224c4045 system: Replace dynamic System row subtitles with static text
Row subtitles in Settings are typically a description of the main label or setting.
You can see this in Mouse & Touchpad, Privacy, Sharing, and Wi-Fi.
For the System panel we did something a bit different and used the subtitle to show
the status of each panel.

Given the standard use of subtitles elsewhere, this feels a bit surprising which,
as a result, makes the panel harder to read. I think that a standard description
would probably also be more useful than the current labels.

Mockups https://gitlab.gnome.org/Teams/Design/settings-mockups/-/blob/master/system/system-panel.png?ref_type=heads

This also removes the thin CcSystemPage abstract class because it was
only introduced to add the support for dynamic System row subtitle. Now
this abstraction is no longer necessary.

Fixes #2776
2023-12-05 14:07:13 +00:00
Automeris naranja
2e97cef7a8 wwan: Improve status pages design
- Use AdwStatusPage
- Use .pill and .suggested-action style classes in
the button from airplane mode status page

And use valign=center, otherwise AdwStatusPage
won't be vertically centralized.
2023-12-05 10:25:39 +00:00
Automeris naranja
5387d76a50 datetime-page: Fix AM/PM button mnemonic
It was using the letter A, which is also used
by the Date row.
2023-12-02 17:31:35 -03:00
Felipe Borges
a6538b26e1 appdata: Add "help" address
So that we can show the "Support Questions" row in AdwAboutWindow.
2023-12-01 13:06:43 +01:00
Felipe Borges
ff9dc202a7 shell: Add translator-credits string to About dialog
This mechanism will allow for translations to propagate their
credits to the UI.
2023-12-01 13:06:41 +01:00
Felipe Borges
24435a6178 appdata: Use GPL-2.0-or-later for license
GPL-2.0+ is a deprecated SPDX id.

This way AdwAboutWindow can use the license field to populate
the "Legal" page of the About dialog.
See https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/2071#note_1932772
2023-12-01 13:04:58 +01:00
Felipe Borges
52638c9f46 shell: Add About dialog
Fixes #834
2023-12-01 13:00:00 +01:00
Felipe Borges
3a40e95dcf system: Bind Remote Desktop gsetting state to widgets
So that the main switch and the page summary are updated when the
backend changes.

With this, the UI reacts to external calls such as
`grdctl rdp enable`.
2023-11-30 12:38:14 +00:00
Felipe Borges
80d476d9d7 system: Update subtitle of Remote Desktop row earlier
The Remote Desktop page subtitle was updated asynchronously when
the System panel was loaded but after the following steps:

1. Connection established to `org.gnome.SettingsDaemon.Sharing`
(handled on `sharing_proxy_ready`).
2. Then a check whether Remote Desktop is available by watching
the `org.gnome.Mutter.RemoteDesktop` bus name appear.
3. Then we are finally populating the UI (and updating the
subtitle).

Now we bypass the panel initialization and check directly for the
"enable" state of the backend GSetting and the availability of the
gnome-remote-desktop.service, using `is_remote_desktop_enabled()`.

Fixes #2772
2023-11-30 12:38:14 +00:00
velsinki
0427e160bd network: Hexpand connection editor routes labels
Commit ef644deb made the routes labels for the IPv4 and IPv6 center
properly. However, when stretching the dialog, this centering is lost
because the labels do not horizontally expand.

So let's make all of them horizontally expand.
2023-11-30 09:41:49 +00:00
Kevin Bullock
f19a7abf59 keyboard: Add Left Ctrl to Compose Key options 2023-11-29 19:37:47 +00:00
Automeris naranja
2303cd1e2c mouse: Fix "Disable Touchpad While Typing" option being inverted
This option was previously called "Allow Using Keyboard With Touchpad".
Since option label was saying "allow", the switch state needed to be reversed.
Now that the option is called "Disable Touchpad While Typing" again,
the switch state is inverted and, thus, incorrect. Fix that.
2023-11-29 17:44:10 +00:00
Maximiliano Sandoval R.
200cac0970 connection-editor: Remove default size
In the previous commits we added scrolled windows on all pages, these
scrolled windows propagate their natural size and hence the dialog will
try to present itself with that size.

By having all pages inside of a scrolled window we can now use the
connection editor on mobile devices.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2764
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
b291e98c00 ce-vpn-page: Add a scrolled window
We wrap the contents of the page in a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
f37e284ae4 ce-ip6-page: Remove comments 2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
e85f094184 ce-ip6-page: Propagate natural size of content
We remove hscrollbar-policy=never. This can only work if the view is
adaptive. This has to be restored once the page is adaptive.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
4fade06a02 ce-ip4-page: Propagate natural size of content
We remove hscrollbar-policy=never. This can only work if the view is
adaptive. This has to be restored once the page is adaptive.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
3b3ca34a57 ce-wireguard: Propagate natural size of content
We remove hscrollbar-policy=never. This can only work if the view is
adaptive. This has to be restored once the page is adaptive.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R
15844ddefe ce-page-details: Port to AdwBin
We add a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
f374c62b81 ce-page-ethernet: Port to AdwBin
We add a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
665288a47c ce-page-wifi: Port to AdwBin
We add a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
4f8789c466 ce-page-security: Port to AdwBin
We add a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
15694399dd ce-8021x-security-page: Port to AdwBin
We add a scrolled window.
2023-11-29 17:35:16 +00:00
Maximiliano Sandoval R.
9f86405bdd connection-editor: Add suggested action to button 2023-11-29 17:35:16 +00:00
Ian Douglas Scott
0e91d89a81 mouse: Add option to allow using touchpad with keyboard
Reference: https://gitlab.gnome.org/Teams/Design/settings-mockups/-/blob/master/mouse-and-touchpad/mouse-and-touchpad.png

Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/125
2023-11-29 18:07:22 +01:00
Automeris naranja
f3ae59023c universal-access: Describe better what the "Accessibility Menu" option does
When enabling some a11y options, the a11y menu is automatically
shown in the shell top bar, even when the "Accessibility Menu"
option is disabled. Change the option name to
"Always Show Accessibility Menu" to avoid misunderstandings.

Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2690
2023-11-29 16:13:14 +00:00
Felipe Borges
6719b7ae36 system: Use toggle buttons for Time Format setting
Fixes #798
2023-11-29 16:46:07 +01:00
Felipe Borges
80c0cf33ec apps: Use "computer-fail-symbolic" instead of Software icon
This icon gets shown when an app cannot be found in the App search.

This change makes us rely on an icon that is part of the theme
instead of assuming gnome-software is properly installed and the
org.gnome.Software-symbolic is available in the system.

Fixes #2561
2023-11-29 12:41:20 +01:00
Jonathan Kang
f0d04a180f network-connection-editor: Close the editor when nm-connection-editor exits
Previously, when editing a connection that doesn't have native editor
support, nm-connection-editor is spawned to do the work. But after
closing nm-connection-editor, an empty editor dialog still exists.

Fix that in this commit.
2023-11-29 10:28:18 +00:00
Felipe Borges
1c9c6805a5 privacy: Make firmware page visibility check cancellable
So that the page doesn't crash when closing the panel before the
firmware page visibility has been set.
2023-11-29 10:23:51 +00:00
Felipe Borges
0263993642 privacy: Make Bolt page visibility check cancellable
When the Bolt page gets disposed before it finishes initializing
its client object we get a crash. See #2700

A way to trigger the crash is to switch panels fast enough so that
the sync dbus call is not finished by the time the panel is disposed.

This is not a guaranteed fix since I can't reproduce the issue
consistently.
2023-11-29 10:23:51 +00:00
Automeris naranja
c3bcaa4559 style: Add styling for custom status page 2023-11-29 10:17:47 +00:00
Automeris naranja
1ae2c5295c apps: Mimic AdwStatusPage when showing "No Apps Found"
AdwStatusPage can't be used here, because an
unwanted scrollbar would appear inside of it.
See https://gitlab.gnome.org/GNOME/libadwaita/-/issues/697
2023-11-29 10:17:47 +00:00
Automeris naranja
3feeb4c6f0 printer-entry: Add tooltip to the ellipsis button 2023-11-29 10:12:30 +00:00
Automeris naranja
7094bf5b13 search-panel-row: Add tooltip to the ellipsis button 2023-11-29 10:12:30 +00:00
Automeris naranja
f15d260323 input-row: Add tooltip to the ellipsis button from CCInputRow
Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/605
2023-11-29 10:12:30 +00:00
Automeris naranja
3febca7bb2 cc-list-row-info-button: Add tooltip to the "More Information" button 2023-11-29 10:12:30 +00:00
Automeris naranja
dff589a6c7 background-chooser: Add tooltip to the remove background button 2023-11-29 10:12:30 +00:00
Automeris naranja
d975dd335c network: Add tooltip to some buttons 2023-11-29 10:12:30 +00:00
Felipe Borges
71ea77dc2d shell: Check for unsupported environments after handling --version
So that remote connections can run gnome-control-center --version for
debugging purposes.

Fixes #2739
2023-11-29 10:07:47 +00:00
velsinki
96a0b79a15 background: Improve chooser performance
The size of the background item is currently never used, but setting it
using `gnome_bg_get_image_size ()` is expensive, since that actually
does a thumbnail retrieval.

Instead, we can retrieve the size of the background file directly,
improving the rendering performance of the chooser significantly.
2023-11-28 13:43:06 +00:00