Commit graph

6179 commits

Author SHA1 Message Date
Robert Ancell
a8df97dd31 network: Correctly detect when ethernet devices are hotplugged.
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/995
2020-11-20 12:41:37 +13:00
Robert Ancell
fbe02ebd0e printers: Make printers panel have a smaller minimum width.
Allow the ink-level to overlap with the buttons.
2020-11-20 12:33:34 +13:00
Ian Douglas Scott
e384130132 keyboard: fix gtk_widget_get_can_default assertion error
Occured when showing the "Replace" button.
2020-11-20 12:14:24 +13:00
Robert Ancell
57f7989b8d printers: Fix leak of printer name in callbacks.
printer_set_ppd_async and printer_set_ppd_file_async copy the printer name, but
this isn't freed in any cases that use these callback (the string isn't even
used at all).
2020-11-20 12:11:35 +13:00
Philip Withnall
caefbf8a56 wacom: Fix a critical warning if loading a cursor fails
It’s possible for `gdk_cursor_new_for_display()` to return `NULL`. It’s
OK to pass `NULL` to `gdk_window_set_cursor()`, but not OK to then unref
it.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2020-11-20 12:11:01 +13:00
Robert Ancell
f248e7353e applications: Fix NULL hash table being unreffed.
When clicking away from the applications panel you can see:
(gnome-control-center:95304): GLib-CRITICAL **: 09:12:52.941: g_hash_table_unref: assertion 'hash_table != NULL' failed
2020-11-20 12:10:12 +13:00
Jens Georg
173f059d99 sharing: Also disable Tracker3
Fixes #1160
2020-10-30 12:23:16 +13:00
Benjamin Berg
4a9dcfaee9 user-accounts: Fix free of const string due to incorrect translations
A duplicatend and translated string could be passed to gettext another
time. If that string can be translated, then a static string would be
returned rather than the const one, causing an invalid free.

Fixes: #1149
(cherry picked from commit e80b4b5f58)
2020-10-13 11:36:40 +02:00
Robert Ancell
3da883c365 Revert the g_signal_connect_object changes for PpPPDSelectionDialog
The dialog is not a GObject, so this didn't work. It was converted to a GObject
in master in 26e8f11566.

The reverts part of 4502673b6c
2020-09-25 14:14:11 +00:00
Ian Douglas Scott
fed9b69430 keyboard: Fix behavior of "Replace" when adding custom shortcut
In the shortcut editor, the "Replace" button is shown instead of "Set"
or "Add" when there is a collision. But this executes the same code as
"Set", so when adding a shortcut, it doesn't actually work.
2020-09-25 15:22:43 +12:00
Arne
2cb8709aa1 sound: fix subwoofer slider 2020-09-25 13:56:46 +12:00
Hui Wang
35e15771f0 sound: update the profile list after getting the signal from gvc
In the ubuntu 20.04, we found a regression on HDMI audio. We plug a
HDMI/DP monitor, the output device is the speaker in the output device
combo box, then we select the HDMI from the combo box, the output
device is switched to HDMI audio successfully, but the configuration
box is empty. This will not happen in the ubuntu 18.04, the profile
will show hdmi-stereo in this situation. So I think this is a
regression.

When problem happens, I could see the errors from log:
Gvc:    DEBUG: Matching profile for 'output:analog-stereo' is '(null)'
Gvc:    DEBUG: Matching profile for 'output:analog-stereo' is '(null)'
Gvc:    DEBUG: Matching profile for 'output:analog-stereo' is '(null)'

Through debugging, I found the cc_profile_combo_box_set_device() is
called too early. In the ubuntu 18.04, this function is called after
pulseaudio changes the active_profile, but in the ubuntu 20.04, it is
called ahead of pulseaudio changes the active_profile.

To fix it, add a signal callback function, after pulseaudio changes
the active_profile, this callback function will be called, then call
cc_profile_combo_box_set_device().

Signed-off-by: Hui Wang <hui.wang@canonical.com>
2020-09-25 13:42:39 +12:00
Carlos Garnacho
6782bc07db display: Hook to PanelOrientationManaged for accelerometer checks
This property gives means for Mutter to determine who is in charge of
display rotation for the built-in panel (us or Mutter). The UI must
reflect this change.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1018
2020-09-05 08:03:44 +00:00
Carlos Garnacho
c89f5ca526 display: Add panel-orientation-managed signal to CcDisplayConfig
So we can track changes on this property.
2020-09-05 08:03:44 +00:00
Carlos Garnacho
b91a83c402 display: Add API to get the PanelOrientationManaged DisplayConfig property
This property indicates whether the builtin panel orientation is managed by
an accelerometer, thus shouldn't be managed by the display panel.
2020-09-05 08:03:44 +00:00
Carlos Garnacho
1ae3ebcfb2 display: Use a proxy for org.gnome.Mutter.DisplayConfig
It will be more convenient than a direct DBus call in future commits.
2020-09-05 08:03:44 +00:00
Carlos Garnacho
297906685e wacom: Group pad/stylus devices together with the group name
This will cover the regular case of pads attached to a tablet, but
also the EKR case where the pad is a separate device logically
grouped with a tablet.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/415
2020-09-04 21:46:19 +00:00
Carlos Garnacho
14da368600 common: Add GsdDevice API to tell whether 2 devices are grouped
This will be used for pad devices, better than the current way of
comparing name strings coming from libwacom.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/415
2020-09-04 21:46:19 +00:00
Carlos Garnacho
eb14c5a64f wacom: Cater for multiple pads in the CcWacomPage
We don't need to track them much specifically, as we delegate pad
button mapping UI on GNOME Shell. It is however possible to have
tablets with 0 to N pads (upper bound within sanity = 2), so we
must at least reflect that in the "Map Buttons..." button visibility.

This distinction is most important for the combination of EKR plus
Cintiq 27QHD, as this is a pad-less tablet, for which we wouldn't
usually show the "Map buttons..." action.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/415
2020-09-04 21:46:19 +00:00
Carlos Garnacho
e50f27a96b wacom: Let CcWacomPage track pad devices
This puts stylus/pad tracking on 2 separate levels. The CcWacomPanel
will look for styli, and treat them as "device leaders", adding a
CcWacomPage for them.

The CcWacomPage will then track the related pad, and update the
"Map buttons..." action visibility according to it.

This simplifies tablet page creation (eg. have it completed in one
step), and decouples the device grouping logic from CcWacomPanel,
which will be useful in future commits.
2020-09-04 21:46:19 +00:00
Sebastien Bacher
57b01cf695 user-account: don't segfault trying to get the user initials
it's possible that act_user_get_real_name returns null, handle that case
fixes bug #959
2020-08-19 10:26:08 +12:00
Jamison Lofthouse
9efe9eefd3 Monitor NMClient permissions for change 2020-08-19 09:04:35 +12:00
Benjamin Berg
dd2ecbfa9d color: Fix order of arguments to gcm_prefs_device_changed_cb
Commit f1893b8e8 (color: Connect signals with g_signal_connect_object
in swapped form) changed the connect call to use G_CONNECT_SWAPPED, but
it did not change the order of the arguments for the
gcm_prefs_device_changed_cb function.

Fixes: #1082
2020-08-18 21:00:36 +00:00
Bin Li
f66e22df57 details-page.ui: Fixed rows of text collide, increased child's top_attach
after auto_connect_check.

Closes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/933
2020-08-18 15:06:40 +12:00
Ian Douglas Scott
3893a1da77 power: Refactor brightness scale code into a CcBrightnessScale class
This reduces some redundancy between the screen brightness and keyboard
brightness code.

Such refactoring is a prerequisite for including a keyboard backlight
control in the Keyboard panel, as has been [proposed][1]. But hopefully
this makes the code a bit neater and more managable even without that.

[1]: https://gitlab.gnome.org/Teams/Design/settings-mockups/-/blob/master/keyboard/Keyboard-with-dialogs.png
2020-08-18 03:01:02 +00:00
Adrien Plazas
fd60c313df Stop using HANDY_USE_UNSTABLE_API
It isn't needed anymore since libhandy 0.90.0.
2020-08-18 02:51:04 +00:00
Lionir Deadman
fc3de80fc7 Add back "Universal Access" keyword to allow for old users to still find their way to it.
This was mentioned here : https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/795#note_872863
2020-08-11 22:25:58 +00:00
Mohammed Sadiq
c2b0f8cb1d datetime: Fix activating time and timezone rows
These rows seems not activatable by default and thus not able to edit those values
2020-08-10 13:06:30 +00:00
jeongsu816
015fbf8f4c applications: ensure private types used by the template
on some systems, private types of settings app are not resolved.

    Error building template class 'CcApplicationsPanel' for
    an instance of type 'CcApplicationsPanel': 
    Invalid object type 'CcToggleRow'

to fix this issue, ensure private types used by the template
2020-08-07 03:44:49 +00:00
Robert Ancell
f1d892f46b network: Fix logic in showing IP6 route metric.
The logic was inverted and ensured the value was always <= 0.
2020-08-07 03:40:01 +00:00
Robert Ancell
3b9954ab37 online-accounts: Use panel cancellable for GOA operations 2020-08-07 02:36:16 +00:00
Ian Douglas Scott
d6ef1036ac region: update HdyLeaflet usage in CcFormatChooser
This resulted in a crash when trying to open the dialog. It seems this
was changed in libhandy 1.

Mentioned in https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/785#note_878171
2020-08-07 02:30:55 +00:00
Felipe Borges
6db6d8a402 user-accounts: Show "Take a picture" button only when cam is available
We already had the machanism to show/hide the button based on the number
of camera devices detected. We were just not checking for that at
startup.

Fixes #1087
2020-08-07 00:14:33 +00:00
Mohammed Sadiq
cc7662e24b wifi: Add HotSpot QR code support
When wifi hotspots are created generate a QR code
so that supported devices can connect to the hotspot
by simply scanning the QR code image
2020-08-05 14:25:51 +05:30
Adrien Plazas
f2f188974d Adapt to HdyActionRow changes
Its title property got dropped as it was coliding with the one it
inherits from HdyPreferencesRow, so use that one instead.

See https://gitlab.gnome.org/GNOME/libhandy/-/issues/258
2020-07-30 12:07:05 +00:00
Ian Douglas Scott
21d5e6c6e0 keyboard: make Alternate Character Key HdyActionRow activatable
libhandy made this not activatable by default, breaking this.

ef6707f6cc
2020-07-29 02:04:38 +00:00
Olivier Fourdan
6428355436 applications: Add shortcuts permissions
gnome-shell saves the user choice for applications allowed to disable
regular shortcuts in the permission store, using "GRANTED" or "DENIED"
(in gnome-shell/js/ui/inhibitShortcutsDialog.js).

Add a new entry to change that permission in the application panel,
similar to what gnome-shell does.
2020-07-21 16:52:22 +02:00
Robert Ancell
ec2d3e2862 keyboard: Fix variable typo 2020-07-21 11:30:58 +12:00
Robert Ancell
6db24acc49 Replace whitelist/blacklist terms
For rationale see here:
https://chromium.googlesource.com/chromium/src/+/master/styleguide/inclusive_code.md#racially-neutral
2020-07-21 10:41:55 +12:00
Yuri Chornoivan
e7050ab6f4 Fix minor typos 2020-07-20 10:38:09 +03:00
Adrien Plazas
a0dfbb7aac region: Use HdyLeaflet:folded
Replace the dropped fold enum property by the folded boolean one.
2020-07-20 08:05:54 +02:00
Adrien Plazas
684d1202c1 Fix the HdyActionRow child order
In libhandy 0.0, action children were added from the end to the start,
in libhandy 1 it is from the start to the end, so the order they are
added to the row need to be reversed.
2020-07-20 08:04:28 +02:00
Adrien Plazas
0c71793e7c Stop using the action HdyActionRow child type
It has been dropped and is now the default child type.
2020-07-20 08:04:28 +02:00
Adrien Plazas
f06379e30c Replace HdyColumn by HdyClamp
In libhandy 1, HdyClamp replaces HdyColumn. This stops setting values
when they match HdyClamp's defaults.
2020-07-20 08:04:28 +02:00
Adrien Plazas
9e2a2836d9 Use GtkDialog instead of HdyDialog
HdyDialog has been dropped in libhandy 1.
2020-07-20 08:04:28 +02:00
Robert Ancell
bc648d9c92 printers: Replace PpDevicesList with standard GPtrArray 2020-07-20 14:14:44 +12:00
Robert Ancell
53c9d4999f network: Remove unused sort function.
Nothing was setting the "first" or "last" data used in the sort.
2020-07-19 23:27:30 +00:00
lionirdeadman
146ddd9739 Rename Universal to Accessibility
Fixes #867
Don't touch parts which are not visible
to the user as to avoid regressions
2020-07-19 21:59:22 +00:00
Marco Trevisan (Treviño)
a558049a44 bolt-client: Don't leak the task on errors 2020-07-17 03:42:03 +00:00
David Bauer
1d0b664f7c Add support for Enhanced Open WiFi security 2020-07-17 03:41:44 +00:00