Commit graph

7397 commits

Author SHA1 Message Date
Automeris naranja
8f8b2a7ea8 keyboard-shortcut-dialog: Add ellipsis to the "Add Shortcut" button label
Acc. HIG, "use an ellipsis (…) at the end of a label
if further input or confirmation is required from the user".

https://developer.gnome.org/hig/guidelines/writing-style.html?highlight=ellipsis
2023-03-31 10:36:00 +00:00
Automeris naranja
1722002728 keyboards: Add "Character" keyword 2023-03-31 10:33:57 +00:00
Automeris naranja
b3e4a40630 keyboards: Add "Compose" keyword
It isn't possible to open the Keyboards panel by searching for "Compose".
Compose key is an important feature, so this change adds a "Compose" keyword to improve the discoverability of this setting.
2023-03-31 10:33:57 +00:00
Robert Ancell
dd06bf7c11 datetime: Fix NTP switch getting out of sync.
The state needs to be set to the state that was requested before the D-Bus call.
The existing code used the state received from D-Bus, which will be the previous state.
2023-03-30 09:19:34 +13:00
Robert Ancell
00e303998e datetime: Use g_object_bind_property to show NTP state 2023-03-30 09:17:21 +13:00
Robert Ancell
a3d99c78f6 datetime: Fix widget names and types 2023-03-29 11:04:24 +00:00
Maksym Hazevych
9b155f6c5c user-accounts: Set language-chooser to hide on close 2023-03-29 14:26:55 +13:00
Maksym Hazevych
08c2e69851 Resolving suggestions 2023-03-29 14:26:55 +13:00
Maksym Hazevych
81d7a8a85e Use gtk_window_present and gtk_window_close 2023-03-29 14:26:55 +13:00
Maksym Hazevych
e00f773b2f Remove unnecessary visibility change 2023-03-29 14:26:55 +13:00
Maksym Hazevych
5b988a6943 Replace all occurrences of 'gtk_widget_hide'
Replace all occurrences of 'gtk_widget_hide(smth)' with
'gtk_widget_set_visible(smth, FALSE)'.
2023-03-29 14:26:55 +13:00
Maksym Hazevych
d831e5cb48 Replace all occurrences of 'gtk_widget_show'
Replace all occurrences of 'gtk_widget_show(smth)' with
'gtk_widget_set_visible(smth, TRUE)'.
2023-03-29 14:26:55 +13:00
Marco Trevisan (Treviño)
da0f0ec021 illustrated-row, split-row: Add widget name and css class
It's not possible to theme them right now, while it could be useful so
make them more recognizable in the widget tree.
2023-03-28 13:52:12 +00:00
Gunnar Hjalmarsson
33659beb90 region: Fix label of formats for the login screen
When system_region equals system_language, the UI should state the
country of the system_language as the selected login screen formats,
and that is not always "United States".

Fixes: GNOME/gnome-control-center#2418
2023-03-28 13:49:53 +00:00
Emad Saadat
54b97e0781 thunderbolt: Have normal page contents clamped like others
By converting the normal stack page (when thunderbolt
is present) to an AdwPreferencesPage and making all
constituent groups of widgets on the page AdwPreferenceGroups,
we can make the page's content be clamped more similarly to
other pages.
2023-03-28 13:32:50 +00:00
Lukáš Tyrychtr
ded85c5423 panels/wifi: Make the security status and signal strength read by screen readers
Before this MR, the signal level was not available at all, and the security
status only as an a11y description of an image. Now, these pieces of information
are part of the description of the item itself.
2023-03-28 08:18:27 +00:00
Automeris naranja
5ec6538c4d notifications: Change "Apps" header to "App Notifications"
With this change, the header will clearly indicate that the user
will tweak app notification settings, specially when using a screen reader.

This is aligned with the following mockup:
https://gitlab.gnome.org/Teams/Design/settings-mockups/-/blob/master/notifications/notifications.png
2023-03-27 23:25:52 +00:00
Cyber Phantom
524ffefdea cc-wifi-connection-list: Fix incorrect styling
There should be a space before opening parenthesis.
2023-03-24 21:28:45 +05:30
Gotam Gorabh
a14a4513a2 removed dead variable 2023-03-24 08:38:03 +00:00
Gotam Gorabh
19d611ad03 user-accounts: Removed account activity window
This changes remove the account activity window or
login history as it is less used or no use.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2096
2023-03-24 08:38:03 +00:00
Simon Arlott
019cbc6a54 network: Increase maximum MTU value from 10000 to 65536
The maximum MTU value of 10000 is too low for USB Ethernet, which has a
maximum (for Linux USB gadgets) of 15412 bytes (although the upper limit
is the USB wMaxPacketSize which goes up to 4294967295 bytes):
  linux/drivers/usb/gadget/function/u_ether.c:#define GETHER_MAX_MTU_SIZE 15412

Multiple Intel NICs can use an MTU of 16110 bytes:
  linux/drivers/net/ethernet/intel/e1000/e1000_hw.h:#define MAX_JUMBO_FRAME_SIZE         0x3F00
  linux/drivers/net/ethernet/intel/e1000e/defines.h:#define MAX_JUMBO_FRAME_SIZE    0x3F00
  linux/drivers/net/ethernet/intel/igbvf/defines.h:#define MAX_JUMBO_FRAME_SIZE         0x3F00

The NetworkManager limit is 4294967295 bytes but this is unreasonable
in a typical enivornment because of the memory required for packets of
that size.

The maximum IPv4 and IPv6 (without using Jumbograms) packet size is 65535
bytes so increase the maximum MTU value to 65536 allow full size IP
packets to be used.

There is a corresponding change in network-manager-applet.
2023-03-24 01:47:09 +00:00
velsinki
d766a0c0c6 sharing: Disable AdwActionRow markup for networks
Network names have many allowed characters, among which `&`, `<`, and
`>`. These are problematic for Pango markup. By default, AdwActionRow
has markup enabled for its title. We could escape strings at every
`adw_preferences_row_set_title` call, but this might be easy to forget
in the future. Instead, let's disable markup altogether for these rows.
2023-03-24 00:56:03 +00:00
Mohammed Sadiq
c2e3de4086 network: proxy: Keep current mode when enabling proxy
Don't force 'automatic' proxy mode when the user enables proxy.

Closes #2401
2023-03-24 00:40:33 +00:00
Mohammed Sadiq
842438b6e1 network: proxy: Add a method to get selected proxy mode
Also replace the code with the method where it's used.
We shall use this elsewhere in the next commit
2023-03-24 00:40:33 +00:00
Cyber Phantom
ba13ca1f4a cc-wifi-connection-list: Don't show empty listbox
When there are no wifi networks, the wifi listbox is still visible as a thin line which doesn't look good.

Fix this by setting the visibility based on the number of networks.
2023-03-23 23:17:46 +00:00
Marco Trevisan (Treviño)
81c1bf437c split-row / illustrated-row: Keep track of the resources path
We pass to the setter a const char* but we don't control the ownership
of that and it may be returned later from the property getter.

While this is not causing any crash right now, going in the inspector
and try to check the property leads to some scrambled chars which seems
an indication of a memory error.

In general the string passed to these APIs could come from anywhere and
it's not guaranteed that it's always a constant string (and in fact is
not in some cases).
2023-03-23 22:58:56 +00:00
Athul Iddya
09d8ab968d network: Validate max length of hotspot SSID
Added validation for maximum length of hotspot SSID, which cannot exceed
32 bytes. As this error might be unintuitive, an error message was also
added below the entry row similar to the password entry row. The error
messages are generic as some characters can require multiple bytes and
mentioning the byte limitation might be too technical.

Fixes #1065
2023-03-23 22:36:00 +00:00
Gotam Gorabh
50eed44089 remove extra line 2023-03-23 22:15:15 +00:00
Gotam Gorabh
2906168a72 keyboard:Fix cancel button issue 2023-03-23 22:15:15 +00:00
Emilia Daria Majewska
4bfa57887b display: Removed the loop from the snapping function
In all my tests, the snapping algorithm was successful on the first pass.
2023-03-23 15:52:15 +00:00
Emilia Daria Majewska
4218aa6e4b display: Remove the monitor argument for cc_display_config_snap_output
The function tries to snap all the outputs anyway,
so might as well remove the unnecessary argument.
2023-03-23 15:52:15 +00:00
Emilia Daria Majewska
0aede82e58 display: Try snapping all the displays after a config change
This issue was originally addressed in !257 ("display snap after changes").
However it only dealt with a two-monitor setup, so the user is still
unable to rotate the middle display with three or more monitors.

This commit tries to snap the displays until all are adjacent to
another.
2023-03-23 15:52:15 +00:00
Marco Trevisan (Treviño)
7f97d9eb54 panels/mouse: Simplify binding of touchpad sensitive widgets
Instead of creating multiple and more complex GSetting bindings for the
sensitive state, just bind the sensitivity of the touchpad widgets to the
active state of the touchpad toggle switch
2023-03-22 13:49:20 +00:00
Marco Trevisan (Treviño)
087d2b8955 panels/mouse: Do not bind sensitivity to touchpad settings
If doing so, these options may be marked as sensitive by GSettingsBind,
ignoring the send-events global setting binding; and causing the widgets
to be always sensitive regardless the touchpad state.
2023-03-22 13:49:20 +00:00
velsinki
eacef5a5a2 sound: Prevent duplicate sound device entries
For unknown reasons, GVC mixer control can sometimes signal a new
device with the same id as one that was added before. This means that
in `device_added_cb`, a duplicate entry with that id is created, in my
case with a different name. However, the last one added is valid, but
that one cannot be selected because all other logic in the sound panel
assumes the first hit in `get_iter` is valid. This breaks sound input
selection then.

The fix is easy; only add a new list entry if none with that id exists.
2023-03-22 13:06:39 +00:00
Marco Trevisan (Treviño)
4b400736bc color-panel: Do not try to access to null pointer in destruction
During destruction toolbar_devices is nullified, but
gtk_widget_in_destruction() does not perform a NULL-check, and we could
crash:

==22708== Invalid read of size 1
==22708== at 0x505CC0B: gtk_widget_in_destruction (gtkwidget.c:10643)
==22708== by 0x189553: gcm_prefs_list_box_row_selected_cb (cc-color-panel.c:1708)
==22708== by 0x4A61714: g_cclosure_marshal_VOID__OBJECTv (gmarshal.c:1910)
==22708== by 0x4A5E148: _g_closure_invoke_va (gclosure.c:895)
==22708== by 0x4A784F3: g_signal_emit_valist (gsignal.c:3462)
==22708== by 0x4A78722: g_signal_emit (gsignal.c:3612)
==22708== by 0x4F5B121: gtk_list_box_remove (gtklistbox.c:2420)
==22708== by 0x4F5B222: gtk_list_box_dispose (gtklistbox.c:439)
==22708== by 0x4A63338: g_object_unref (gobject.c:3891)
==22708== by 0x4EAA994: gtk_box_dispose (gtkbox.c:230)
==22708== by 0x4A63338: g_object_unref (gobject.c:3891)
==22708== by 0x4EAA994: gtk_box_dispose (gtkbox.c:230)
==22708== Address 0xfffffffffffffeb2 is not stack'd, malloc'd or (recently) free'd

See: https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/2009913
2023-03-21 15:34:44 +00:00
Marco Trevisan (Treviño)
852b39cdc6 dispaly: Allow configuring all monitors and apply settings at once
When multiple monitors are available, it's not possible anymore to
configure them all and eventually apply all the changed parameters.

To make this possible again, add a back button in the apply titlebar
that is shown only when we are in the display-settings child.

See: https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/2012043
2023-03-21 15:33:16 +00:00
Marco Trevisan (Treviño)
c20ed729f7 mouse: Prevent infinite loop on settings changes
We may get an infinite loop on mouse panel startup, in fact the scroll
method changed event emits a gsettings change that also leads to a
notify::use-default emission that again tries to writes to settings,
leading to another change: infinitely.

Closes: #2405
2023-03-17 16:42:50 +00:00
Markus Göllnitz
98f7a40d24 multiple panels: show start title buttons in header bar
The start title buttons of the main window should be displayed if and
only if the end title buttons are. Only the left-most header bar should have
the start title button set and only right-most header bar the end title buttons.

Therefore, the title buttons property should be bound to the leaflet state:
When unfolded the start title buttons of the sidebar's header bar are
the only ones visible then, and not a second pair in the panel's header bar.
Likewise, in a folded state of the leaflet, the panel's header bar displays
all availble title buttons – start and end – as the panel is the only widget
displaying a header bar.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-03-16 13:18:37 +00:00
Jakub Steiner
a3c16f103b sound: Make bass audible on low quality hardware
- add mid range frequencies to make the bassy sound more audible on sub par hardware,
  because that's 85% of the hardware gnome runs on, sadly.

Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2268
2023-03-16 11:53:29 +00:00
Automeris naranja
65734339c2 wacom: Rename "Test Your Settings" button to "Test Settings"
The same change was made in the Mouse & Touchpad panel:
https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1486
2023-03-15 13:37:44 +00:00
Mohammed Sadiq
f0f1ee168f common: hostname-entry: Update hostname only after apply is clicked
Since the entry already shows an apply button, update hostname only
after the apply button is clicked.  It's not required to update
hostname after every character change.
2023-03-15 13:37:15 +00:00
Automeris naranja
e17efcca82 usage: Fix confirmation dialog when clearing history
When clearing file history, a dialog appears saying that all files
will be permanently deleted. However, this isn't true. Only the recent
files list will be cleared and the files will remain intact.

Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2366
2023-03-15 13:25:20 +00:00
Jake Dane
1ccade9481 notifications: Replace "Applications" with "Apps"
This is part of an initiative to use "app" instead of "applications",
see: https://gitlab.gnome.org/Teams/Design/initiatives/-/issues/123

!1637 missed replacing one occurrence of "Applications" on the
notifications panel. This does that last replacement with "Apps".
2023-03-14 19:49:54 +00:00
Bastien Nocera
5755f0eec7 power: Label the main "battery" as UPS if that's what it is
Change the label from "Battery" to "UPS" if the upower DisplayDevice is
a UPS. This avoids confusions like:
https://www.reddit.com/r/gnome/comments/11aws0q/battery_indicator_for_desktop_computer_seems/
https://askubuntu.com/questions/1344733/why-does-ubuntu-show-battery-and-charge-info-when-it-is-a-desktop-with-no-batter

"
Why does GNOME display a battery percentage ("Fully Charged") when I'm
running a desktop computer without any battery?
"
followed by:
"
Ha! I figured it out[...]. I have my desktop plugged into a UPS
"
2023-03-14 19:19:51 +00:00
Alessandro Bono
19c5d9d4fc thunderbolt: Decouple active and state properties usage
The ability to tweak the state property was mainly introduced in
order to implement delayed state change via the state-set signal.
Since GTK 4.9.3[1] the active and state properties are no more
interchangeable.

[1] https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5442
2023-03-03 18:16:57 +00:00
Alessandro Bono
6c125accc3 thunderbold: Don't cast CcBoltPanel when cancelled
Otherwise we get a crash.
2023-03-03 18:16:57 +00:00
Alessandro Bono
9d2844e02f sharing: Set active property instead of state
The ability to tweak the state property was mainly introduced in
order to implement delayed state change via the state-set signal.
Since GTK 4.9.3[1] the active and state properties are no more
interchangeable.

[1] https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5442
2023-03-03 18:16:57 +00:00
Alessandro Bono
4cacdb3544 sharing: Connect to the active property instead of state
The ability to tweak the state property was mainly introduced in
order to implement delayed state change via the state-set signal.
Since GTK 4.9.3[1] the active and state properties are no more
interchangeable.

[1] https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5442
2023-03-03 18:16:57 +00:00
Alessandro Bono
b892e6ff15 sharing: Bind to the active property instead of state
The ability to tweak the state property was mainly introduced in
order to implement delayed state change via the state-set signal.
Since GTK 4.9.3[1] the active and state properties are no more
interchangeable.

[1] https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5442
2023-03-03 18:16:57 +00:00