To delete a manual entry row (IP addresses or routes) the remove_row
function started walking the widget hierarchy at the connection editor
widget. This caused the entire dialog box getting removed. Begin at the
GtkButton instead to actually remove the corresponding line.
Fixes#972.
Add any wifi devices that have become managed or remove ones that have
become unmanaged. Since a device could have been added or removed
previously, we also have to handle multiple calls to add or remove a
device.
Make the panel class provide a cancellable that will be cancelled when the panel
is destroyed. Panel implementations can use this and not have to mangage the
cancellable themselves. Consolidate cases where panels had multiple cancellables
that were all being used for this behaviour.
This was previously done by storing the value inside the WirelessSecurity class.
This stopped the subclasses from becoming Gtk widgets.
The "always_ask" code was removed as it didn't seem to actually retain when
switching. This might need to be fixed at a later time.
Make it clearer in two ways:
• Explicitly mention ‘metered data’, as that’s a commonly used phrase.
• Explicitly mention automatic software updates as being disabled on
metered connections, to make the implications of this checkbox a
little clearer.
Signed-off-by: Philip Withnall <withnall@endlessm.com>
Helps: https://gitlab.gnome.org/GNOME/gnome-software/merge_requests/339
Being the VPN list actually a collection of listboxes, this function
ensures it looks alright in other places. However the case of removing
all VPN connections till we're back empty was missed.
The list holding the different supported VPN types is currently relying
on its content in order to expand horizontally. This comes out odd
if the list is mostly empty or has no specially wide content, as it is
then centered in the dialog.
Have it fill the available space, and align vertically on top.
Otherwise, invoking other panel (eg. through shell search, or CLI) and
closing the dialog will result in a crash, as the NetDeviceEthernet
object does no longer exist.
This is due to the object being accessed after being unreffed - connect the signal
so it is removed when the object is finalized.
This regression was introduced in 93a269f8 when switching to GtkTemplate.