Commit graph

295 commits

Author SHA1 Message Date
Robert Ancell
8ded3d956f network: Show spinner instead of delaying dialog
It's better to respond to the user immediately rather than delay the window opening.
2020-12-17 21:27:51 +00:00
Robert Ancell
a1e26cdac1 network: Set transient window from outside NetConnectionEditor constructor 2020-12-17 21:27:51 +00:00
Robert Ancell
15717be456 network: Correctly detect when ethernet devices are hotplugged.
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/995
2020-11-19 23:32:16 +00:00
Carlos Garnacho
2ff526ecfb network: Update VPN empty label status after removing VPN connection
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.
2019-12-12 23:06:45 +01:00
Robert Ancell
36449d60c7 network: Convert NetDeviceEthernet, NetDeviceBluetooth and NetDeviceMobile to GtkTemplate
This means NetObject is now obsolete and can be removed.

There was a GtkSizeGroup that the mobile settings used, but it isn't clear if
this is still relevant. It should be added back later if found to be (this code
is likely to be removed to make way for a dedicated mobile panel).
2019-11-06 10:40:23 +13:00
Robert Ancell
a75dbf033c network: Make NetVpn constructor consistent with other constructors 2019-11-06 10:40:23 +13:00
Robert Ancell
93a269f8df network: Convert NetVpn to GtkTemplate 2019-11-06 10:40:23 +13:00
Robert Ancell
b3e372becd network: Convert NetProxy to GtkTemplate
This whole widget was added to a size group with some elements of the mobile
devices. This seems a mistake, but can be added back later if found to be
necessary.
2019-11-06 10:40:23 +13:00
Robert Ancell
a39ebd5bda network: Remove net_object_get/set_title 2019-11-06 10:40:23 +13:00
Robert Ancell
2752f38a72 network: Remove net_object_emit_removed 2019-11-06 10:40:23 +13:00
Robert Ancell
577762b60c network: Remove NetDevice class
We don't need the NetObject/NetDevice class separation anymore
2019-11-06 10:16:40 +13:00
Robert Ancell
1c92cf4844 network: Remove net_device_get_nm_device 2019-11-06 10:16:40 +13:00
Robert Ancell
aba79986a5 network: Use a hash table to map NM device objects to our objects 2019-11-06 10:16:40 +13:00
Robert Ancell
50c4c805d4 network: Store VPNs separately to other network devices
This simplifies a lot of class checks.
2019-11-06 10:16:40 +13:00
Robert Ancell
51df8ccf15 network: Remove unused enum 2019-11-06 10:16:40 +13:00
Robert Ancell
4e5b7faf23 network: Don't add proxies to the device list - nothing every reads them back 2019-11-06 10:16:40 +13:00
Robert Ancell
a88f1b1bad network: Use function instead of GObject property getter 2019-11-06 10:16:40 +13:00
Robert Ancell
5244b01326 network: Merge together methods
A method was public, and not being used. Simplify the case it's used in.
2019-11-06 10:16:40 +13:00
Robert Ancell
06e38dac90 network: Tidy up use of modem object in NetDeviceMobile 2019-11-06 10:16:40 +13:00
Robert Ancell
966cb97d45 network: Remove net_object_get_cancellable
Only a few objects need it
2019-11-06 10:16:39 +13:00
Robert Ancell
c74d26bf3a network: Remove NetObject id property
This is better handled by comparing objects.
2019-11-06 10:16:39 +13:00
Robert Ancell
0b3ce1e15d network: Remove net_object_get_panel
It was only being used for WiFi devices
2019-11-06 10:16:39 +13:00
Robert Ancell
76de0ce408 network: Simplify net_object_add_to_stack function
Except in the WiFi case it was creating a stack with one child.
All the non-WiFi cases had the same logic.
2019-11-06 10:16:39 +13:00
Robert Ancell
8335c088ec network: Simplify handling bluetooth devices 2019-11-06 10:16:39 +13:00
Robert Ancell
a7e3f314e6 network: Rename NetDeviceSimple to NetDeviceBluetooth
It's only being used for bluetooth connections.
2019-11-06 10:16:39 +13:00
Robert Ancell
e90ed2df8a network: Stop NetDeviceEthernet deriving from NetDeviceSimple
It overrode everything anyway.
2019-11-06 10:16:39 +13:00
Robert Ancell
0c92c7b461 network: Replace g_object_new with constructors 2019-11-06 10:16:20 +13:00
Robert Ancell
0b481bfb83 network: Remove if statement that is always true 2019-11-06 10:16:20 +13:00
Robert Ancell
926063acb3 network: Remove unused GObject property 2019-10-22 20:11:45 +00:00
Robert Ancell
708b1fdaf7 network: Use self variable name consistently 2019-10-22 20:11:45 +00:00
Robert Ancell
54f8fce47f network: Connect signals in swapped form 2019-10-22 20:11:44 +00:00
Philip Withnall
fcefd51d7a network: Don’t suffix VPN devices with ‘VPN’
They’re already listed in a section titled ‘VPN’, and the user is likely
to have included ‘VPN’ in the device’s name already.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #701
2019-09-25 14:14:37 +01:00
Mohammed Sadiq
9c19eb6ead network: Fix possible invalid free 2019-09-24 21:25:44 +05:30
Robert Ancell
e70610fe74 network: Use g_autoptr for unref code 2019-09-13 14:20:50 +12:00
Robert Ancell
de84f7e344 network: Use g_autofree for strings 2019-09-13 14:20:50 +12:00
Robert Ancell
01190db349 network: Use g_autoptr for GError handling 2019-09-13 14:20:50 +12:00
Mohammed Sadiq
cef992e717 network: Don’t add proxy device if NM isn’t running 2019-08-08 22:53:47 +00:00
Carlos Garnacho
4c31ff5269 network: Handle Infiniband as a wired interface
The configuration/UI we expose for wired settings are meaningful for those
devices as well.

Closes: https://gitlab.gnome.org/GNOME/gnome-control-center/issues/489
2019-04-23 19:46:32 +02:00
Benjamin Berg
8e175bb562 network: Don't shorten names of bluetooth connections
This prevents a single bluetooth connection to be shortened to the name
"Bluetooth", which means we end up with one "Bluetooth" device in the
"Bluetooth" section. Rather, always use the long name of the bluetooth
device so that the user knows what they are connecting to.
2019-03-29 14:08:45 +01:00
Benjamin Berg
77cae9ce72 network: Only show bluetooth devices in Bluetooth section
Historically, the bluetooth section has been the dumping ground for any
device we don't handle in another way. It has had the "Bluetooth" title
for a long time now though, and many of the devices that end up in there
are actually not useful in the GNOME context.

There are some people complaining that we should support these devices
properly, but the status quo does not help any one either really, so
lets remove them entirely for now.

Obsoletes: !203
Fixes: #190
Touches: #167
2019-03-29 14:08:45 +01:00
Adrien Plazas
91af270cce connection-editor: Use GtkTemplate 2019-01-27 21:03:13 +00:00
Georges Basile Stavracas Neto
f9b9f105dd network: Rename UI files to match C files
This commit renames {network|wifi}.ui to cc-{network|wifi}-pane.ui,
in order to match the corresponding C files. This introduces no
functional changes.
2018-07-23 12:55:59 +00:00
Robert Ancell
a64ef75ad7 Simplify use of GCancellable
g_cancellable_cancell can be called without checking for a NULL value.
Use g_clear_object instead of g_object_unref
2018-06-01 21:03:19 +00:00
Benjamin Berg
a51dbcd8ca network: Fix Bluetooth panel showing up after connection removal
The test to check whether the Bluetooth (simple section) contains
elements was testing for NetObjectSimple. However, ethernet connections
are a subclass and check would count these. This causes issue when the
code is run after net object removal.

The fix is to check for the exact object type rather than also allowing
subclasses.
2018-05-29 15:16:43 +02:00
Benjamin Berg
ec50cbcdff network: Ensure devices are removed from UI when disappearing
The "removed" callback from NMObject is never called when the object is
simply finalised because the UI drops the reference. Explicitly call the
handler so that UI elements are removed.
2018-05-02 22:29:30 +00:00
Georges Basile Stavracas Neto
250eb01931 network: Cache D-Bus proxies and objects 2018-04-06 22:23:38 -03:00
Rui Matos
cb4a7e1773 network: Avoid crashing if NM reports no devices or no connections
Seems like NM changed behavior recently but, in any case, better safe
than sorry.

https://bugzilla.gnome.org/show_bug.cgi?id=788716
2017-11-01 16:47:36 +01:00
Georges Basile Stavracas Neto
5a3b19ef33 network: Don't unref device after when parsing arguments
When we add the NetDevice pointer to the GPtrArray, we have
a single reference owned by the panel. When iterating over
this GPtrArray, no reference is taken.

The problem is that the code to handle command-line arguments
was unreferencing the NetDevices when iterating over it,
creating a disparity in the ref/unref pairs.

Fix that by simply not unreferencing the NetDevice instance
when iterating over it.

https://bugzilla.gnome.org/show_bug.cgi?id=786514
2017-08-29 18:11:30 -03:00
Georges Basile Stavracas Neto
d5de1d2b3c network: Show simple devices in an isolated section
As a temporary solution until we don't have the Mobile Broadband
panel, the Network panel should take care of simple devices such
as Bluetooth and metered connections, and should do so in such a
way that is consistent with how the rest of devices is managed.

Currently, however, NetDeviceSimple objects still present the old,
grid-based layout, breaking the expectations and completely destroying
the consistency of the panel

This patch moves simple devices to a section of its own. The next
patch will update the visuals to match the other devices.

https://bugzilla.gnome.org/show_bug.cgi?id=786662
2017-08-23 15:15:52 +02:00
Georges Basile Stavracas Neto
aabc1621b8 network: Update VPN section
The last remaining network device to be updated is
the VPN device, and this patch is the result of this
effort.

The changes were mostly towards cleaning up and
removing unecessary code. By removing the info labels,
many getters were removed as well.

In order to achieve a listbox-like UI, a couple of
UI refactorings.

https://bugzilla.gnome.org/show_bug.cgi?id=785581
2017-08-09 19:32:43 +02:00