../panels/region/cc-region-panel.c: In function 'set_restart_notification_visible':
../panels/region/cc-region-panel.c:131:17: warning: 'current_locale' may be used uninitialized [-Wmaybe-uninitialized]
131 | uselocale (current_locale);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../panels/region/cc-region-panel.c:115:18: note: 'current_locale' was declared here
115 | locale_t current_locale;
| ^~~~~~~~~~~~~~
../panels/region/cc-region-panel.c:130:34: warning: 'new_locale' may be used uninitialized [-Wmaybe-uninitialized]
130 | if (locale && new_locale != (locale_t) 0) {
| ~~~~~~~~~~~^~~~~~~~~~~~~~~
../panels/region/cc-region-panel.c:114:18: note: 'new_locale' was declared here
114 | locale_t new_locale;
| ^~~~~~~~~~
Check whether the currently removed printer was last. Also
check whether there are other printer being removed by CUPS
right now (their amount is still part of self->num_dests).
Do this check also in actualize_printers_list_cb() to catch
corner cases from timing point of view. This will handle them
with some delay if they show up.
When undone, just check whether the number of printers is higher
than 0 and show the printers-list page.
Fixes#2023
This is detectable with -Wincompatible-pointer-types and warns with
[1/7] Compiling C object panels/printers/libprinters.a.p/cc-printers-panel.c.o
../panels/printers/cc-printers-panel.c: In function ‘cc_printers_panel_init’:
../panels/printers/cc-printers-panel.c:1228:59: warning: passing argument 3 of ‘gtk_builder_add_objects_from_resource’ from incompatible pointer type [-Wincompatible-pointer-types]
1228 | objects, &error);
| ^~~~~~~
| |
| gchar ** {aka char **}
In file included from /usr/include/gtk-4.0/gtk/gtkbuildable.h:26,
from /usr/include/gtk-4.0/gtk/gtk.h:56,
from /usr/local/include/libadwaita-1/adwaita.h:9,
from ../shell/cc-panel.h:25,
from ../panels/printers/cc-printers-panel.h:21,
from ../panels/printers/cc-printers-panel.c:23:
/usr/include/gtk-4.0/gtk/gtkbuilder.h:122:66: note: expected ‘const char **’ but argument is of type ‘gchar **’ {aka ‘char **’}
122 | const char **object_ids,
| ~~~~~~~~~~~~~~~^~~~~~~~~~
[7/7] Linking target tests/network/test-wifi-panel-text
If you did not know the Wacom Express Key Remote (or EKR for short),
let me introduce it to you:
https://estore.wacom.com/media/catalog/product/cache/fb4143a007ae6439deba9b18afd745f2/a/c/ack-411050_main_2.jpg
This is a hand-sized standalone pad device, meant to be used together
with drawing tablets, providing additional buttons and a touch sensitive
ring that can be mapped to actions and keypresses.
These pads were so far handled in GNOME, but in a very subtle manner.
As the EKR is implicitly paired to a tablet, it was possible to map
EKR buttons from the paired tablet once the pad OSD UI from GNOME
Shell was shown.
As this device basically just needs a "Map buttons" action to
configure it, it just didn't sit well in the older Settings UI,
it would get a separate page with just a lone button in there. So
its support has been kind of an easter egg so far.
But the new UI can indeed accomodate better a device that is neither
tablet nor stylus, and has few options. This commit adds the EKR
as a separate AdwPreferencesGroup.
The selected_user variable is unref on dispose(), and show_user()
is likely executed with self->selected_user already set to user,
but it's inconsistent, and so to be on the safer side, use
g_set_object()
If the goa helper fails to find goa helper executable (which happened when run
without install), %NULL is returned. Avoid feeding g_variant_parse(), the %NULL
variable in those case as it is not nullable and avoid the crash that follows.
When the options are changed, the first item was never shown as
active when selected. Fix it by binding to the inverse of the
button state instead of binding both toggle buttons to settings.
Fixes#1653
We set AM/PM label on format change in init(),
but we shall not have set the time in the editor
in init() which results in wrong label if the time
is PM.
Fix it by updating clock label after time changes
The network panel used to show an empty box under the VPN header at
start up if no VPNs were present instead of the empty state. This was
because the GtkListBox containing VPN connections was visible by
default instead of the empty state widget.
To fix this, the empty state widget has been moved to the top in the
GtkStack to show it by default. If any VPN connections are found during
initialization, `cc-network-panel` already handles setting the
visibility of the appropriate widget correctly.
Fixes: #1634
Previously, if os-release included the BUILD_ID field, it was smushed
into the OS Name row as follows:
OS Name Endless OS 5.0.0; Build ID: 220810-230009
This is unsightly in English; and in languages where the translations of
"OS Name" and "Build ID" are long, the build ID may be ellipsised and
hence useless:
Nom du système Endless OS 5.0.0 ; (identifiant de construction ...
d'exploitation
Instead, display the build ID in a separate row, and hide it if not
present.
Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1347
As described in #1976, the printers panel shows two Add Printer buttons when the
printers list is empty. Adds a check that sets the Add Printer button in the toolbar
to be invisible when the empty-state page is shown (and thus the other Add Printer
button is visible), creating a less confusing UI.
Closes#1976
The new UX implementation includes
1. Showing the security level using a number.
2. Showing descriptions of events and HSI checking items.
3. Change the style of the security level number.
4. Add the status icon and label for each HSI checking item.
Signed-off-by: Kate Hsuan <hpa@redhat.com>
The "Forget" button would only update it's sensitivity after the first
select and deselect, when selecting and deselecting rows in the
"Known Wi-Fi Networks" dialog.
When selecting the first row, it would go from disabled to enabled.
Then deselecting that row would cause the button to go from enabled to
disabled.
Selecting any rows after that would no longer update the sensitivity and
make the dialog essentially useless.
The issue was, that the signals "add" and "remove" where being
expected to be emitted when the connection list updates its rows.
However, neither CcWifiConnectionList nor GtkListBox emit these signals.
The fix was, to emit these two signals at the appropriate locations.
The signals have also been renamed to "add-row" and "remove-row" to
make their purpose more clear.
Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1824
Adding the 'error' css class to icons visually indicates that
there's an issue with the input. This is the same purpose served
by the status icons. Another reason to remove the status icons
is that with the error class added to entries the entries dim
except for the status icons.
It should be made insensitive when the panel is locked, and sensitive
when locked.
We only hide this row for non-local users, where this setting doesn't
make much sense.
Fixes#1944
The "Known Wi-Fi Networks" dialog is missing some padding to really
make it look polished.
By switching from a normal dialog to an AdwPreferencesWindow, we can
take advantage of libadwaita's automatic padding.
This will make sure the dialog is more in line with the rest of the
GNOME ecosystem.
Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1956
This was designed some time ago [1] but never actually implemented, so:
- Change the screen lock section to "screen"
- Move the screen section up, so it's next to the other types of
hardware
- Added a Screen lock section in there
[1] https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/909#note_737827
When the window AdwLeaflet is folded the back button should either
switch to the panels list if the selected user is the current user
or switch to the current user if the selected user is from the
"other users" list
Currently the back button is only shown when viewing a user from the
"other users" list.
These changes show the back button when the window AdwLeaflet is
folded or when the selected is from the "other users" list but never
when the window is not folded and the selected user is the current
user.
Fixes: #1719