Commit graph

573 commits

Author SHA1 Message Date
Rui Matos
2e7b23aa00 network: Fix a crash when clicking to forget a VPN on the editor
We need to keep a reference to the NetVpn instance or it might already
be finalized when the editor window closes.
2016-01-26 18:40:47 +01:00
Rui Matos
d57be89340 network: Avoid warnings while closing connection editor
It doesn't make sense to try to validate pages because widgets are
changing due to the whole dialog being destroyed and it causes a bunch
of warnings because some resources are cleared on each page dispose
method.

Avoid all that by disconnecting the page "changed" signal handler
before we start destroying widgets.
2016-01-26 18:40:47 +01:00
Rui Matos
2e6149b4b8 network: Don't try to get secrets for new connections
We don't need secrets for new connections and, in fact, trying to
retrieve secrets in that case will fail because we have a plain
NMConnection instead of a NMRemoteConnection.

The above mentioned error would result in the page never being
initialized.
2016-01-26 18:40:47 +01:00
Lubomir Rintel
62683047c5 network: read secrets for the VPN connections
The VPN page needs secrets too. Don't initialize it until the secrets are
loaded, otherwise the secrets are lost on each connection edit.

https://bugzilla.gnome.org/show_bug.cgi?id=761004
2016-01-26 16:51:09 +01:00
Andrew Cowie
ad6a00ae16 network: Elipsize device metadata fields
Excessively long metadata fields cause the the control-center panel to
blow out to wider than screen width. Probably the right thing is to
limit the allocation to the device detail pane from somewhere up the
stack, but for now, enable ellipsizing and set an max-width to
constrain the width of things which are there just for information
anyway; true values are available in the edit dialog.

Closes #759766.

Signed-off-by: Andrew Cowie <andrew@operationaldynamics.com>
2016-01-15 16:29:26 +01:00
Sebastian Keller
81e89fb7f8 network: Fix unintentionally centered checkbutton labels
See https://bugzilla.gnome.org/show_bug.cgi?id=732361

https://bugzilla.gnome.org/show_bug.cgi?id=732374
2015-07-27 00:00:43 +02:00
Bastien Nocera
50d4cc2263 network: Rename hotspot security key to "Password"
https://bugzilla.gnome.org/show_bug.cgi?id=735909
2015-07-26 23:58:17 +02:00
Christophe Fergeau
c84722248e shell: Revert "Let panels have their own commandline flags"
This reverts commit 31a8a99440.

This was meant for bgo#695885 which has stalled for a while, so this
feature has no in-tree user. This commit removes it for now, this can be
readded when users for it materialize.

https://bugzilla.gnome.org/show_bug.cgi?id=751597
2015-07-16 11:49:34 +02:00
Rui Matos
c8986f602a network/net-device-ethernet: Re-work how we keep track of connections
When we're finalizing, the remote settings instance might already be
gone and thus we can't list connections. In particular this happens at
panel finalization resulting in the following warning:

libnm-glib-CRITICAL **: nm_remote_settings_list_connections: assertion
'NM_IS_REMOTE_SETTINGS (settings)' failed

because cc_network_panel_dispose() unrefs the remote settings object
before all the NetDevice instances are finalized.

Since we only need to list connections on finalize to disconnect a
signal we can instead use g_signal_connect_object() and keep the
connections that we're keeping track of in a hash table instead of
g_object_set_data().

https://bugzilla.gnome.org/show_bug.cgi?id=749850
2015-07-15 15:24:21 +02:00
Bastien Nocera
e9294e5cc7 network: Fix possible crash when changing airplane mode
When changing the airplane mode, either from the Bluetooth panel, or
through gnome-shell's status menu, we would receive signals from the
Rfkill gnome-settings-daemon service, even after the network panel was
closed, as we didn't unref' it. Except that the panel was mostly gone.
So splat.

https://bugzilla.gnome.org/show_bug.cgi?id=751482
2015-06-29 17:49:04 +02:00
Mathieu Bridon
df54973136 network: Only share a new wifi connection if the user is allowed to
Making a new connection available to other users requires being an
admin, or entering an admin password.

If we enable that option by default for new connections, we effectively
prevent non-admin users from connecting to new networks when they go to
the coffee shop without their laptop admin.

https://bugzilla.gnome.org/show_bug.cgi?id=751378
2015-06-29 17:49:04 +02:00
Bastien Nocera
99d675856a network: Fix all Wi-Fi networks having gear buttons
Only the networks with existing connection should have gear buttons.
This is a regression from 9ffaff7472.

If the widget we add as a stack page isn't visible, the page will not be
shown. As we later add another page with that button, we'd end up
showing that by default.

https://bugzilla.gnome.org/show_bug.cgi?id=750841
2015-06-12 15:40:48 +02:00
Rui Matos
c42f7d2d91 network: Prevent a use after free crash when removing virtual devices
When a virtual device is removed and the instance gets finalized we're
not disconnecting from the real NMDevice's notify signal and thus end
up crashing when the signal fires afterwards.

Avoid that by using g_signal_connect_object() so that when we're
finalized the disconnection happens automatically.

https://bugzilla.gnome.org/show_bug.cgi?id=749972
2015-05-27 17:36:01 +02:00
Bastien Nocera
3b283b78b0 network: Fix freeing const pointer
From coverity:
gnome-control-center-3.14.5/panels/network/connection-editor/firewall-helpers.c:75:9: warning: passing argument 1 of 'g_free' discards 'const' qualifier from pointer target type [enabled by default]

https://bugzilla.gnome.org/show_bug.cgi?id=749897
2015-05-27 11:06:02 +02:00
Bastien Nocera
3569b2d289 network: Fix gtk_tree_model_get_iter_first() retval
And don't select the first item when removing the item fails.

https://bugzilla.gnome.org/show_bug.cgi?id=749892
2015-05-27 11:06:02 +02:00
Matthias Clasen
0622883025 network: Follow through on the original design
GTK+ can now do circular buttons with ease, so make
this page a little more fancy by following the original
design.

https://bugzilla.gnome.org/show_bug.cgi?id=745703
2015-05-23 11:57:30 -04:00
Matthias Clasen
2093f6c7ea network: Move firewall zone to security
This is where people expect it (whether that is correct or not).

https://bugzilla.gnome.org/show_bug.cgi?id=745702
2015-05-23 11:57:19 -04:00
Matthias Clasen
93427f8b35 network: Stop "gateway" entry from becoming too wide
https://bugzilla.gnome.org/show_bug.cgi?id=732974
2015-04-21 14:29:33 +02:00
Bastien Nocera
98221832a8 network: Stop "Bridge slaves" entry from becoming too wide
https://bugzilla.gnome.org/show_bug.cgi?id=732974
2015-04-21 14:29:33 +02:00
Rui Matos
c12cb21065 network: Fix a crash on IPv6 settings dialog
Commit 219a94ed1e added a
g_object_unref() on the wrong line.
2015-03-27 15:00:46 +01:00
Bastien Nocera
f6f4e7b774 network: Remove use of temporary variable
No need to copy a static string before using it.

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:45 +01:00
Bastien Nocera
ba6da7636e network: Fix warning on panel exit
Now that the VPN object is getting finalized, make sure not to warn if
the NMClient is already gone.

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:45 +01:00
Bastien Nocera
2cf597eb97 network: Fix reference leak of NetProxy
Every time we got the list of devices from the devices GtkListStore, we
were leaking the only element that wasn't a NetDevice, the proxy page.
Make sure to unref' it by hand if we're not going to add it to the list
(the elements of which will be unref'ed properly).

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:45 +01:00
Bastien Nocera
a6781932e9 network: Fix reference leak of NetVirtualDevices
The only reference is owned by the devices GtkListStore.

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:45 +01:00
Bastien Nocera
eb14e558e5 network: Fix reference leak of NetVpn
The only reference is owned by the devices GtkListStore.

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:45 +01:00
Bastien Nocera
234ed23138 network: Add sanity checks NetDevice and NetObject
https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:44 +01:00
Bastien Nocera
219a94ed1e network: Fix GtkListStore leak in IPv{4,6} dialogues
https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:44 +01:00
Bastien Nocera
0e428f2881 network: Remove unused GtkListStore objects
https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:44 +01:00
Bastien Nocera
60f6ba1d72 network: Fix the network panel being kept alive
NetObjects and CcNetworkPanel aren't widgets, and hold references to
each other. Simplify things by having NetObject hold a pointer to
CcNetworkPanel (and the singletons NMRemoteSettings and NMClient)
instead, and clear their pointers when the original object is unref'ed.

https://bugzilla.gnome.org/show_bug.cgi?id=746411
2015-03-19 16:32:44 +01:00
Bastien Nocera
0a96aa3bcd network: Make "only for this network" work for IPv6 VPNs
https://bugzilla.gnome.org/show_bug.cgi?id=738029
2015-03-09 16:12:25 +01:00
Bastien Nocera
33b1858787 network: Don't save hidden configuration options
When switching from a particular IPv4 or IPv6 "addresses" method to
another, make sure that "address", "DNS" and "routes" are applied or
ignored depending on that method's capabilities.

For example, when switching from manual to automatic IPv4 "addresses"
method, we need to make sure that the old IP address, gateway, etc.
aren't actually used in the new setting.

https://bugzilla.gnome.org/show_bug.cgi?id=734337
2015-03-09 16:07:15 +01:00
Tim Waugh
dba40e1301 network: Allocate storage for zone name during D-Bus call
The call to nm_setting_connection_get_zone() returns a pointer to
memory that will be freed before the D-Bus reply handler is called.
Make sure to take a copy of the string, and free it when finished.

https://bugzilla.gnome.org/show_bug.cgi?id=739971
2015-02-10 12:40:28 +01:00
Timm Bäder
9ffaff7472 wifi: Use a GtkStack to switch between button/spinner
Instead of only adding a button and/or spinner when constructing the
row, always add both to a GtkStack and only show that stack when
necessary. This also removes the need for a GtkSizeGroup and the big
spinner caused by it.

https://bugzilla.gnome.org/show_bug.cgi?id=742853
2015-01-20 20:19:39 +01:00
Rui Matos
386a996a19 network: Remove unused variable 2015-01-20 14:09:09 +01:00
Rui Matos
b45d08b603 network: Display an error instead of the panel on NM absence
This is more in line with current GNOME UI and allows us to drop
deprecated gtk+ API usage.

https://bugzilla.gnome.org/show_bug.cgi?id=740986
2015-01-20 14:08:41 +01:00
Bastien Nocera
f30e6df1d4 network: Also work with NM 1.0
Remove the NetworkManager version checking altogether. The code was made
to check for now very old versions of NetworkManager, and anything newer
than ancient should degrade gracefully if we support newer features.

https://bugzilla.gnome.org/show_bug.cgi?id=741661
2015-01-15 14:59:44 +01:00
Rui Matos
cd5316b7a7 network: Drop deprecated API usage
https://bugzilla.gnome.org/show_bug.cgi?id=740986
2014-12-05 16:13:29 +01:00
Cosimo Cecchi
436d220f88 network: hide airplane switch when g-s-d says so
https://bugzilla.gnome.org/show_bug.cgi?id=736291
2014-09-22 22:11:23 +02:00
Bastien Nocera
dbd1a539f6 network: Don't show underlying device for VPN connections
We don't need to see "tun0" with its IP address in there, separate
from the VPN configuration.
2014-09-09 17:07:07 +02:00
Bastien Nocera
034d269fe0 network: Really hide all of the virtualisation bridges
Follow-up to ddc35609bd.
2014-09-08 14:29:21 +02:00
Owen W. Taylor
8629632c4d network: Fix build
Last patch refers to nm_device instead of the actual variable device.

https://bugzilla.gnome.org/show_bug.cgi?id=723643
2014-09-04 13:13:32 -04:00
Michael Catanzaro
aa421e09d0 network: report hotspot is running only if device is active
https://bugzilla.gnome.org/show_bug.cgi?id=723643
2014-09-04 18:42:37 +02:00
David King
86b7af3f0e panels: Mark label strings as translatable
https://bugzilla.gnome.org/show_bug.cgi?id=736052
2014-09-04 16:00:20 +01:00
David King
745c7ef9de panels: Fix all but one uses of use-stock property
Avoid the deprecated use-stock.

https://bugzilla.gnome.org/show_bug.cgi?id=736052
2014-09-04 14:14:31 +01:00
Bastien Nocera
c515a6e67e network: Fix more potential crashers for WWAN
And virtual devices. Again, listening on the long-lasting client
object but expecting the user_data (the object) to be around when
it might have been destroyed already.

https://bugzilla.gnome.org/show_bug.cgi?id=735932
2014-09-03 18:04:58 +02:00
Bastien Nocera
a19c7ec977 network: Fix possible crash when wireless-enabled changes
The device we're handling might have disappeared already, but we're
listening on the NMClient object, which is still alive.

https://bugzilla.gnome.org/show_bug.cgi?id=735932
2014-09-03 18:04:58 +02:00
Bastien Nocera
15a98c3fd8 network: Show an error when we fail to turn off hotspot
And reset the switch as well. I don't know in which circumstance it
could happen, but it's all we can do for now.

https://bugzilla.gnome.org/show_bug.cgi?id=723643
2014-09-02 19:17:43 +02:00
Bastien Nocera
b108dedde6 network: Add hotspot_switch struct member
So we can access it directly when needed.
2014-09-02 19:17:43 +02:00
Bastien Nocera
cb93ad9782 network: Fix warning on startup with hotspot enabled
There's no back button anymore, so we shouldn't try to focus it.

Gtk-CRITICAL **: gtk_widget_grab_focus: assertion 'GTK_IS_WIDGET (widget)' failed
2014-09-02 19:11:43 +02:00
Bastien Nocera
df834ae74c network: Center "Wi-Fi hotspot" properties 2014-09-02 19:09:45 +02:00