Commit graph

7411 commits

Author SHA1 Message Date
Gotam Gorabh
8cb77b4d3a sharing:removed global master switch
These changes remove the global master switch from
sharing panel and set main_list_box active.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2415
2023-04-12 13:47:31 +00:00
Jonathan Kang
14b3652289 network/connection-editor: fix crash when removing a connection
This was caused by commit 6f1567f23.
2023-04-12 16:01:51 +08:00
Christopher Davis
74e6964fd1 region: Use AdwBanner instead of GtkInfoBar
AdwBanner is a new adaptive widget that should be used
in place of GtkInfoBar. It provides an API close
to how we use InfoBars in GNOME, and fits better at smaller
window sizes.

This commit swaps out the GtkInfoBar used in the Region panel
for an AdwBanner.
2023-04-11 12:23:16 +00:00
Christopher Davis
d25c0e345d general: Use AdwBanner in CcPermissionInfobar
AdwBanner is a new adaptive widget that replaces GtkInfoBar.
AdwBanner adapts better to mobile sizes and has an API
that fits with how we use infobars.

This commit changes CcPermissionInfobar to use an AdwBanner
internally instead of a GtkInfoBar. It also re-implements
part of GtkLockButton, as AdwBanner does not support adding
arbitrary widgets.
2023-04-11 12:23:16 +00:00
Timotej Šulík
4702757b93 display: Fix display enabled toggle visibility 2023-04-11 12:16:54 +00:00
Gotam Gorabh
ad063dfa55 wi-fi:Updated Forget Connection dialog of saved networks with AdwMessageDialog
This changes update the Forget Connection dialog of saved networks
using AdwMessageDialog instead of GtkMessageDialog. And set Cancel
as a default responce instead of Forget to overcome accidental forget.
2023-04-11 11:56:05 +00:00
iampkumar02
27d5e7dd26 wifi: Center panel title when subtitle isn't visible
We used to have a custom title widget containing a label for the
title and another for the subtitle (status). When the subtitle label
wasn't visible, the title label wouldn't get centered vertically in
the headerbar.

By porting the custom title widget to AdwWindowTitle we get the title
centered for free.

Fixes #1891
2023-04-11 13:49:09 +02:00
Cyber Phantom
4b450409c5 wifi: Add a confirmation dialog when forgetting a connection
Destructive actions are supposed to have a dialog asking the user for confirmation.

This commit adds the confirmation dialog when user tries to forget a wifi network.

Fixes #2371
2023-04-11 11:28:26 +00:00
Sayan Bhattacharjee
0524a6eee6 info-overview: Show each GPU in it's own line
When having multiple GPUs, each GPUs are now seperated by a newline
instead of the previously used seperator: " / ".
This particular fix works ONLY for systems that use switcheroo-control.

Also, this commit allows the 'secondary_label' of 'CcListRow' to have
'lines' set to '4' and 'wrap' to 'True', along with 'hexpand'
and 'halign' set to 'True' to accommodate long strings on all labels
which previously suffered from a issue of getting truncated if
the strings are too long.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2125
2023-04-11 11:20:28 +00:00
Felipe Borges
ff4394da40 Revert "cc-wifi-connection-list: Don't show empty listbox"
This causes the "Saved Networks" list to never show rows.

This reverts commit ba13ca1f4a.
2023-04-07 13:37:23 +00:00
Emad Saadat
ce9c7c289a
display: Make nightlight widgets clamped to same size as other panels
by using an AdwPreferencesPage instead of a plain GtkBox. And also
move disabled infobar out of night_light_settings.
2023-04-06 00:38:32 -07:00
Jonas Ådahl
e561f32d9c display/night-light: Don't leak config manager proxy 2023-04-04 13:39:36 +00:00
Jonas Ådahl
80af5137c1 display/night-light: Disconnect config manager changed handler
Use g_signal_connect_object() to automatically disconnect the signal
handle when the listener object gets destroyed.

Closes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2333
2023-04-04 13:39:36 +00:00
velsinki
e61b270fb7 sharing: Fix network row visible name bug
In `cc_sharing_networks_new_row`, the `network_name` is not being set to
the new row, but to `self->current_row`. This is incorrect behavior,
as it leaves the new row without any title, and overwrites the title of
the current row incorrectly to the last network entry in the enabled
networks list. This fix correctly sets the name to the new row instead.

This problem is at least discussed in #2318 (point 3) and causes some
confusion in #2299 as well.
2023-04-03 08:46:36 +00:00
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