Commit graph

7745 commits

Author SHA1 Message Date
Marco Melorio
9bc4d616f3 a11y: Update cursors pngs in cursor size dialog
Also, use the actual correct sizes. This fixes
https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2456.
2023-10-10 11:33:46 +00:00
Marco Melorio
19efcc8aca a11y: Use a box instead of a grid in cursor size dialog
Also, use GtkBox::homogeneous instead of a size group.
2023-10-10 11:33:46 +00:00
Marco Melorio
d4d4b953a2 a11y: Port cursor size dialog to AdwWindow & AdwToolbarView 2023-10-10 11:33:46 +00:00
Felipe Borges
5ff13e2def keyboard: Show title buttons at the initial state of "Set Shortcuts" dialog
Fixes #1078
2023-10-10 09:55:31 +00:00
Maximiliano Sandoval R
6ecbeb2a53 user-panel: Set pill style on button bellow list 2023-10-10 09:46:28 +00:00
Maximiliano Sandoval R
5da11f739d user-panel: Add missing xml header 2023-10-10 09:46:28 +00:00
Cyber Phantom
8844b88dc0 info-overview: Don't set key binding twice 2023-10-09 08:25:26 +00:00
Automeris naranja
5dc07c9191 apps: Remove ellipsis from the "Clear Cache" button label
Button labels with ellipsis indicate that extra user input is
required to complete the action. However, the "Clear Cache" button
from the Storage dialog doesn't require any extra user input.

Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2627
2023-10-04 08:23:31 +00:00
Automeris naranja
4cf2673534 apps: Tweak the "Other Media" row design from the Removable Media subpage
The "Other Media" row from the Removable Media subpage has some problems:

- The row label has ellipsis, but the "Configure action" button label should
have ellipsis instead, because the later triggers further input from the user
to complete the action[1]
- "Configure action" label doesn't use header capitalization

This change addresses the two issues above.

[1] https://developer.gnome.org/hig/guidelines/writing-style.html?highlight=ellipsis
2023-10-04 08:12:31 +00:00
Robert Ancell
058c9b3d6f applications: Replace snapd-glib with a native implementation
This has some advantages:
- Removes the conditional compilation requirement, which makes testing easier.
- Allows all distributed versions of Settings to have snap support without them supporting snapd-glib.
- Makes it faster to update Settings for Snap features without waiting on snapd-glib releases.

Note that the snap support is only invoked if you have snaps installed.

Downsides:
- Some additional code in Settings. This is manageable as Settings doesn't need much snap information.
  libsoup2 didn't support HTTP over Unix domain sockets and would have been too much to support in Settings.
  libsoup3 does support this which makes this possible.
- We no longer share code with snapd-glib, so any future changes will have to be made in multiple places.
  snapd has a stable API and multiple active clients so this is not likely to be a major concern.
2023-10-04 01:35:56 +00:00
Automeris naranja
4b1147add9 search-locations-dialog: Add ellipsis to the "Add Location" button
"Use an ellipsis (…) at the end of a label if further input or confirmation
is required from the user before the action can be carried out"

https://developer.gnome.org/hig/guidelines/writing-style.html
2023-10-03 14:26:26 +00:00
Michael Catanzaro
6219cbdca5 network: fix editing connections without a device
For example, fix adding new VPN connections.

In 60b4956c05 I correctly observed that we
need to not run code that requires a device when there is no device.
NetConnectionEditor is a multipurpose dialog and self->device is
optional when creating the dialog. E.g. when modifying VPN
configuration, we update just the configuration, not an NMDevice.

However, I added this check too soon, before updating the connection
configuration. We need to update the configuration first, then only bail
before proceeding to update the device, not sooner.

Fix #2668
2023-10-03 11:03:06 +00:00
Felipe Borges
2397db38c3 network: Replace use of deprecated gtk_widget_hide
In favor of gtk_widget_set_visible
2023-10-03 11:41:07 +02:00
Ondřej Pohořelský
9d1af3de28 wifi: disable hotspot row when Wi-Fi is not active
There is no point in showing hotspot creation dialog when it can't
enable the hotspot without Wi-Fi adapter enabled.
2023-10-03 09:33:08 +00:00
kramo
6a95124c88 keyboard: Add outline to shortcut graphic arrows 2023-10-03 09:08:05 +00:00
Felipe Borges
358a952f70 mouse: Fix linked style of primary mouse button in RTL
Commit d980e0ffee fixed an issue when the "Left" button would appear
at the right side for RTL languages given that GtkBox would reorder
its horizontal children to RTL direction.

The solution at the time was to force the primary-button box to stay
in LTR direction when the rest of the interface is shown in RTL.
This introduced a regression where the CSS "linked" style of the
buttons used was the LTR one, breaking the "linked" styling.

This fix will manually reorder the Left/Right buttons rather than
calling gtk_widget_set_direction on the primary-button-box.

Fixes #2649
2023-10-03 09:00:47 +00:00
Marcos Miller
dbc68c7123 general: better variable names
Changes variable name magnify_factor_spin and number_of_workspaces_spin
by adding 'row' to match the AdwSpinRow object.
2023-10-03 08:59:11 +00:00
Marcos Miller
5c1cfcace2 multitasking: uses g_settings_bind_no_sensitivity 2023-10-03 08:59:11 +00:00
Marcos Miller
6a0f157140 universal-access: use AdwSpinRow in Zoom > Magnification Factor 2023-10-03 08:59:11 +00:00
Marcos Miller
43f1a2ad4a multitasking: use AdwSpinRow in number of workspace
When starting the panel, it was necessary to add the sensitive
property to 'number_of_workspaces_spin', because when doing the
'g_settings_bind' it was leaving it visible even with the dynamic
workspaces option active.
2023-10-03 08:59:11 +00:00
Marco Melorio
cd5a80c268 privacy: Fix crash in the firmware security page
Make sure the timeouts are stopped when the page is finalized.
2023-09-22 10:41:14 +00:00
Nishal Kulkarni
ccf7c8a565 removable-media: UI changes
Make removable media UI conform with other panels.
Based off of initial mockups given in #1096
2023-09-19 11:13:41 +00:00
Nishal Kulkarni
20eda27bb9 applications: Move default app and removable media
Currently setting's panel list is over-populated. We can fix this by
moving some of the settings inside other panels as sub-panels.

Created a new row in applications panel for removable media and
default apps. On selecting the row we show the respective settings
which is same as before.

Removed default app and removable media from sidebar

Closes: #1092 #1096
Related to: #1090
2023-09-19 11:13:41 +00:00
Nishal Kulkarni
b592bd9d4e cc-removable-media-panel: Add convenience function
As a part of moving removable media panel under applications, we create
a function `cc_removable_media_panel_new` which return a GtkWidget
that can be added to GtkStack inside applications panel.
2023-09-19 11:13:41 +00:00
Nishal Kulkarni
f5c3797996 cc-applications-panel: Update to new layout
These changes make applications panel adhere to the new mockups.
Sidebar is removed instead applications can be searched directly in the
main panel.
2023-09-19 11:13:41 +00:00
Felipe Borges
bb835aac9e power: Make battery level percentage string translatable
This allows for local translation teams to change the presentation
format of the battery level percentage string accounting for local
guidelines and standards for displaying percentage values.

See https://en.wikipedia.org/wiki/Percent_sign#Correct_style for
more information.

Fixes #2637
2023-09-19 09:32:03 +00:00
Felipe Borges
5ec953b89c power: Use ISO-31-0 as default standard for showing batter charge percentage
This is the battery charge percentage. Showing number without a space
between the percent sign is the English style.

The ISO-31-0 standard prescribes a space between the number and the
percent sign.

See #2637
2023-09-19 09:32:03 +00:00
Ismael
694bb9844a universal-access: Add default values to zoom settings 2023-09-19 09:31:15 +00:00
Alexandre Franke
e8a08f0fd7 data: fix label string 2023-09-18 13:00:43 +02:00
zhuyaliang
af3a11b445 info-overview: Add more types of processor support 2023-09-18 09:09:32 +00:00
Sabri Ünal
6a4a70f6a6 data: mark translatable strings yes
Marking translatable strings as 'yes' is a convenient practice
across the GNOME project. Follow the common practice.
2023-09-18 00:31:24 +03:00
Felipe Borges
d0d5606e46 search: Fix crash when selecting fodler with a File dialog
Fixes #2645
2023-09-15 08:55:58 +00:00
Mara Lasker
ddbd410943 online-accounts: Add line-breaks to log messages
!1331 (merged) introduced a custom logger as a workaround for
a not ideal design choice, but the workaround is using g_printerr,
which is not adding linebreaks, so the logs were unreadable.

This doesn't fix the whole architecture of this part, but simply
adds a line-break so that at least the logs can be read by humans.
2023-09-12 11:01:38 +00:00
Markus Göllnitz
8bf601b6d5 universal-access: only store current icon them if not HighContrast activated
The panel tries to keep track of the icon theme in use
when HighContrast isn't. For that, it stores in
self->old_icon_theme. That is, however, always updated
when org.gnome.desktop.interface is touched, regardless
of whether HighContrast is already turned on.

Thus, it makes sense to check whether HighContrast is
selected in org.gnome.desktop.a11y.interface, and only
store the old_icon_theme under the condition
high-contrast wasn't selected.

fixes #2640

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-09-12 11:01:02 +00:00
velsinki
026cefdaaf info-overview: Unselect system details label
As discussed in #2636, the value label for the CcInfoEntry was made
selectable in order for screen readers to work. However, this selects
the first label by default when opening the system details.

This is caused by gtk#4377, for which gnome-software found a workaround.
The same workaround is adapted here to unselect the label after
presenting the system details window.
2023-09-11 22:54:13 +00:00
Felipe Borges
48d9256a3c keyboard: Add debug message when launching keyboard previewer
See
https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1892
2023-09-08 10:58:59 +02:00
Carlos Garnacho
bb8c08221c keyboard: Call "tecla" previewer through full path
Make the binary called be either the one found at build time,
or the one installed as a subproject, instead of relying on
PATH to find the executable.
2023-09-08 10:58:59 +02:00
Mohammed Sadiq
6f9e1bfec0 user-accounts: Allow new password insert iff the old one is right
Since the error message label provided at the bottom only says that
the newly provided password is weak, it can be consfusing for the
users as they might not understand why they can't press 'Accept'
button.  This could be especially true for color blind people.

Fix it by allowing modification of new password entry only if the old
provided password is correctly entered.
2023-09-08 08:40:32 +00:00
Felipe Borges
202d2710ec info-overview: Allow system details label to expand multiple lines
Since the dialog is responsive, rather than ellipsizing we can
actually fit in more information.

Fixes #2633
2023-09-04 11:52:26 +02:00
Michael Catanzaro
be535df39b Don't warn about failure to apply changes on inactive device
If the NMDevice is not active (i.e. if we are editing a connection that
is not active) then don't warn when failing to reapply changes to the
device. That's expected and not something we should warn about.

We could perhaps not even try, but the device could become inactive
between the time of our check and this error, so better ignore the error
regardless.
2023-08-30 08:44:55 +00:00
Michael Catanzaro
60b4956c05 network: don't try to update device if it doesn't exist
All of the following code assumes that self->device is valid, so we need
to skip over it. It's confusing, but this is a multipurpose dialog and
self->device is optional when creating the dialog. E.g. when modifying
VPN configuration, we update just the configuration, not an NMDevice.
2023-08-30 08:44:55 +00:00
Michael Catanzaro
3f6737dbf7 network: fix criticals when updating connection
If the operation is cancelled (because the dialog was closed, because
the Apply button was pressed), then trying to make further use of the
source_object is a use after free, which is bad. At first I tried to fix
this by simply avoiding the use after free when the operation is
canceled, but then I realized it is ridiculous to always try committing
connection changes when closing the dialog, then immediately cancel the
operation by destroying the dialog.

So instead I've decided to not pass the cancellable along to these
operations, and instead ref the dialog to keep it alive until the
operations complete. Instead, let's just hide the window.

This commit also removes an inaccurate comment /* Leave the editor open
*/ placed right before the call to the function that hides the editor.
There's no need to leave the editor open when updating the device fails.
The connection properties at least are still saved.

Fixes #2618
2023-08-30 08:44:55 +00:00
Jonas Dreßler
0af051e8fe bluetooth: Remove a leftover debug message
This g_message() slipped in when implementing commit 769142784c, remove
it.
2023-08-29 18:09:30 +02:00
Hendrik Müller
8f6ef3a6ef wifi: Hide QR Code button for unsupported security
QR codes for Wi-Fi networks can only be generated for Wi-Fi networks
that have one of these security settings:
- no security
- WEP security
- WPA security

This is why the button to show these QR codes should only be visible
if the Wi-Fi network in question has one of these security settings.
2023-08-29 14:30:06 +02:00
Michael Catanzaro
2030ec9327 keyboard: fix error in previous commit
I used the wrong value here.

This should have been caught by an unused variable warning, but
gnome-control-center has so many build warnings that nobody will ever
notice a new one....
2023-08-28 16:41:43 -05:00
Alice Mikhaylenko
2077958140 applications: Activate the first row if uncollapsing with no selected row
This way we don't end up with "No apps".
2023-08-28 08:19:45 +00:00
Alice Mikhaylenko
e7b65cbe83 network: Fix a non-translatable string 2023-08-28 08:11:41 +00:00
Michael Catanzaro
8e41fbead8 keyboard: write to mru-sources setting if it has never been set before
Fedora's anaconda wants to know the current input source separately from
the configured input sources. Installing the configured input sources in
the order they are configured is good, but not good enough because only
the currently-active input source at the time the LUKS passphrase is
entered can be used to decrypt the disk post-install, so anaconda needs
a way to know what the active input source is. Currently, there is no
way to find this. For example:

 * User has English (US) input source configured by default
 * User adds Czech input source
 * User reorders Czech input source to be first in the list

In this scenario, the Czech input source is first in the list, but
English is still the currently-active input source, and there's no way
to know this. Only the mru-sources setting can indicate the active input
source, but because the active input source has never been changed,
mru-sources still has its default value.

The key to fixing this is that if mru-sources holds its default value,
then the user has never changed input sources before, and the first
input source that is previously configured is therefore the most recently
used. So we can copy the previous value of the sources setting to
mru-sources, and then applications can trust that either (a) mru-sources
will indicate the current input source, or (b) the current input source
is the first configured input source if mru-sources is empty.

https://bugzilla.redhat.com/show_bug.cgi?id=2231085
2023-08-25 09:14:57 +00:00
Alice Mikhaylenko
5436dc024f printers: Make adaptive 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
79fe6067ee wacom: Ellipsize the test button 2023-08-25 08:00:43 +00:00