Commit graph

1249 commits

Author SHA1 Message Date
Automeris naranja
da158ef042 network: Add mnemonic to the "Proxy" row
Partially fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2541
2023-11-05 17:39:31 -03:00
Ondřej Pohořelský
de23defe3c network: Wireguard hide Last used and Automatic connection
Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1996>
2023-11-05 08:59:11 +00:00
Ondřej Pohořelský
51b82c0719 network: vpn hide metered connection settings
NetworkManager does not support metered connection settings in the
context of VPN. This commit hides the setting on VPN details pages.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1996>
2023-11-05 08:59:11 +00:00
Ondřej Pohořelský
72246bceb1 network: hide Last used when creating new connection
Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1996>
2023-11-05 08:59:11 +00:00
Ondřej Pohořelský
88ce1f97b3 network: show details page when creating new connection
Resolves #2536

When creating new vpn/wired connection, the user doesn't have a choice
to change `Make available to other users` option. This commit adds it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1996>
2023-11-05 08:59:11 +00:00
Automeris naranja
0b17fff10b network-wifi: Fix wrong a11y label of the "Connect to Hidden Network" row
This a11y label of this row is "Show Saved Networks", which is wrong.
2023-11-05 08:26:59 +00:00
Felipe Borges
e95645187d wifi: Close "Saved Wi-Fi Networks" dialog on Escape key 2023-11-02 11:22:18 +01:00
Felipe Borges
8172f638e0 network: Show "Undo" toast when forgetting network in "Saved Wi-Fi Networks"
Fixes #2670
2023-11-02 11:22:18 +01:00
Automeris naranja
85d802c356 wifi-connection-row: Add a11y label to the forget network button 2023-11-02 11:22:18 +01:00
Automeris naranja
ca740fd9e4 wifi-connection-row: Make the forget network button to show only an icon
This button has the icon_name and the label properties simultaneously.
These properties are conflicting each other, making the button to show only a label.

This change removes the label, so the button will only show an icon.

Reference: https://gitlab.gnome.org/Teams/Design/settings-mockups/-/blob/master/network/wifi-settings.png

Partially fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2661
2023-11-02 11:19:46 +01:00
Michael Catanzaro
88f9c7991c network: fix sensitivity of DNS and route configuration widgets
When the IP method is "disabled" or "shared" then everything else is
supposed to be insensitive. This currently fails if you toggle between
the two, because it's implemented using property bindings that are just
not smart enough to handle this task. Handle sensitivity only in
method_changed() to avoid this.

Additionally, not all of the widgets are being consistently
disabled/enabled when appropriate. E.g. when the method is "local" then
only the DNS entry, route entries, and default route checkboxes become
insensitive, leaving the other widgets, including notably the Automatic
switches, sensitive. They should all become insensitive, as when the
method is "disabled" or "shared." Fix this by organizing all the related
widgets into boxes and setting the sensitivity of the entire box. (Note
the strategy followed here does not exactly match nm-connection-editor,
which always allows editing addresses. We only allow that in Manual
mode. I'm not sure if this is advisable or not, so won't touch that.)

Finally, the Automatic DNS and Automatic Routes toggles should only be
sensitive when the method is "Automatic".
2023-10-27 12:56:27 +00:00
Michael Catanzaro
0e8d8e7407 network: warn user if both automatic and manual DNS is configured
If you manually configure a DNS server, you probably don't want to also
receive DNS from DHCP. Warn the user about this.

This is a softer replacement for the fix from:

https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1914

which we found in #2617 broke imported Wireguard connections.
2023-10-27 12:56:27 +00:00
Michael Catanzaro
48d0aed598 network: unset DNS entry errors when entry is empty
When the entry is initially empty, there is no error. If you enter
anything and then delete it, the entry is left in the error state. Empty
should not be an error.
2023-10-27 12:56:27 +00:00
Michael Catanzaro
08bff2ee18 Revert "network: Disable DNS entry if the automatic option is enabled"
This reverts commit 8a4a80b7b2.

This is a manual revert, because the code changed considerably in
a2b9620b1b. Anyway, although this seemed
like a good idea, problem is it clobbers the original state of the
connection without any explicit user action if the connection is
configured to use both manual and auto DNS. And this happens in practice
for imported Wireguard connections, which uselessly have auto DNS
enabled due to this NetworkManager bug:

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1399

Additional discussion:

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1745#note_2112420

The simplest solution is to not try to prevent the user from configuring
both manual and auto DNS. Instead, let's just warn the user that this
configuration may not be intended in a follow-up commit.

Fixes #2617
2023-10-27 12:56:27 +00:00
velsinki
ef644deb3d network-connection-editor: Align Routes labels
Even though the routes_metric_label is in a GtkSizeGroup with the
GtkEntry for the metric, its size was set too big after adding the entry
to the size group. To fix this, add all the other labels and
corresponding entries to size groups as well. The hexpand can then be
removed as well on the labels.

Fixes #1235
2023-10-27 00:54:55 +00:00
Lukáš Tyrychtr
7c14fc9ac6 network: Use better labels for the peer row
Namely use three dots for the options button as it opens a label,
and use Remove instead of Delete, as Remove is already used and has a translation.
2023-10-24 09:17:00 +00:00
Lukáš Tyrychtr
e55a4feefe network: Add mnemonic widgets to the Wireguard peer list row, fixing label reading 2023-10-24 09:17:00 +00:00
Lukáš Tyrychtr
caa7650081 network: Add mnemonic widgets to the wireguard editor page, fixing reading of the labels of the fields 2023-10-24 09:17:00 +00:00
Maximiliano Sandoval R
4ee4fa3428 network: Port connection editor to AdwWindow
GtkDialog is deprecated. We also took the opportunity to use AdwToolbarView.

See https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2624.
2023-10-23 14:25:12 +00:00
Maximiliano Sandoval R
92d0a5d50c network: Port add VPN connection to action rows
By using action rows we can actually use the boxed-list class.
2023-10-23 14:25:12 +00:00
Maximiliano Sandoval R
77090f4ccd network: Define margins in the UI file 2023-10-23 14:25:12 +00:00
Maximiliano Sandoval R
5cd582bef6 network: Remove orientation=vertical from box
These boxes cannot have more than a single child.
2023-10-23 14:25:12 +00:00
Hari Rana
1c62c25907 wifi-connection-row: Add tooltip texts
Co-authored-by: Automeris naranja <104251-automerisnaranja@users.noreply.gitlab.gnome.org>
2023-10-23 13:31:32 +00:00
Marco Melorio
7363ca800e network: Fix "Missing initializer for field" warning 2023-10-12 10:09:44 +02:00
Marco Melorio
13c939659a misc: Fix incompatible type warnings 2023-10-12 10:09:44 +02:00
Michael Catanzaro
6219cbdca5 network: fix editing connections without a device
For example, fix adding new VPN connections.

In 60b4956c05 I correctly observed that we
need to not run code that requires a device when there is no device.
NetConnectionEditor is a multipurpose dialog and self->device is
optional when creating the dialog. E.g. when modifying VPN
configuration, we update just the configuration, not an NMDevice.

However, I added this check too soon, before updating the connection
configuration. We need to update the configuration first, then only bail
before proceeding to update the device, not sooner.

Fix #2668
2023-10-03 11:03:06 +00:00
Felipe Borges
2397db38c3 network: Replace use of deprecated gtk_widget_hide
In favor of gtk_widget_set_visible
2023-10-03 11:41:07 +02:00
Ondřej Pohořelský
9d1af3de28 wifi: disable hotspot row when Wi-Fi is not active
There is no point in showing hotspot creation dialog when it can't
enable the hotspot without Wi-Fi adapter enabled.
2023-10-03 09:33:08 +00:00
Alexandre Franke
e8a08f0fd7 data: fix label string 2023-09-18 13:00:43 +02:00
Sabri Ünal
6a4a70f6a6 data: mark translatable strings yes
Marking translatable strings as 'yes' is a convenient practice
across the GNOME project. Follow the common practice.
2023-09-18 00:31:24 +03:00
Michael Catanzaro
be535df39b Don't warn about failure to apply changes on inactive device
If the NMDevice is not active (i.e. if we are editing a connection that
is not active) then don't warn when failing to reapply changes to the
device. That's expected and not something we should warn about.

We could perhaps not even try, but the device could become inactive
between the time of our check and this error, so better ignore the error
regardless.
2023-08-30 08:44:55 +00:00
Michael Catanzaro
60b4956c05 network: don't try to update device if it doesn't exist
All of the following code assumes that self->device is valid, so we need
to skip over it. It's confusing, but this is a multipurpose dialog and
self->device is optional when creating the dialog. E.g. when modifying
VPN configuration, we update just the configuration, not an NMDevice.
2023-08-30 08:44:55 +00:00
Michael Catanzaro
3f6737dbf7 network: fix criticals when updating connection
If the operation is cancelled (because the dialog was closed, because
the Apply button was pressed), then trying to make further use of the
source_object is a use after free, which is bad. At first I tried to fix
this by simply avoiding the use after free when the operation is
canceled, but then I realized it is ridiculous to always try committing
connection changes when closing the dialog, then immediately cancel the
operation by destroying the dialog.

So instead I've decided to not pass the cancellable along to these
operations, and instead ref the dialog to keep it alive until the
operations complete. Instead, let's just hide the window.

This commit also removes an inaccurate comment /* Leave the editor open
*/ placed right before the call to the function that hides the editor.
There's no need to leave the editor open when updating the device fails.
The connection properties at least are still saved.

Fixes #2618
2023-08-30 08:44:55 +00:00
Hendrik Müller
8f6ef3a6ef wifi: Hide QR Code button for unsupported security
QR codes for Wi-Fi networks can only be generated for Wi-Fi networks
that have one of these security settings:
- no security
- WEP security
- WPA security

This is why the button to show these QR codes should only be visible
if the Wi-Fi network in question has one of these security settings.
2023-08-29 14:30:06 +02:00
Alice Mikhaylenko
e7b65cbe83 network: Fix a non-translatable string 2023-08-28 08:11:41 +00:00
Alice Mikhaylenko
25a866d8c6 network: Ellipsize the save/cancel buttons 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
4680f362f3 Port to AdwNavigationSplitView 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
5a3fd40bc8 network: Stop leaking the hotspot dialog 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
f461053753 network: Port Wi-Fi panel 2023-08-25 08:00:43 +00:00
Christopher Davis
b28d10d60d network: Port to Adw{Navigation,ToolbarView}
See previous commits for details on the widgets.

This commit ports the network panel to these new widgets.
In addition, it moves the switch to enable the proxy into
a row within the proxy page itself, following the latest
mockups.
2023-08-25 08:00:43 +00:00
Felipe Borges
0c9498d1f8 Mark some strings as translatable
These are strings that are presented in the UI that were not marked
for translation.

Fixes #2596
2023-08-11 12:07:00 +02:00
Alice Mikhaylenko
52f4919c94 network: Stop using AdwPreferencesWindow for the saved networks dialog 2023-08-02 12:51:48 +00:00
Alice Mikhaylenko
f3640d83d3 network: Consistently make options buttons flat 2023-08-02 12:51:48 +00:00
Alice Mikhaylenko
81a3c3dd15 network: Fix up proxy page and port to AdwSpinRow 2023-08-02 12:51:48 +00:00
Mohammed Sadiq
39f21e4229 network: Fix some memory leaks 2023-07-03 01:56:24 +00:00
Felipe Borges
fd1ac377ae network: Use AdwSwitchRow for wifi device enable row
In commit 2a33247f52 the
cc_list_row_get_active() method got removed despite still being
used in the network settings. This was breaking our build.
2023-06-30 11:52:42 +02:00
Lukáš Tyrychtr
b706f1261b network-connection-editor: Fix a keyboard trapped on the Cancel button when adding a VPN connection
It required two changes:
* Setting the stack page only after all pages are initialized
* And removing the VPN choices list from its bin only after that
2023-06-30 09:37:21 +00:00
Marco Melorio
b75bb10bb6 misc: Replace usage of CcListRow + switch with AdwSwitchRow
That feature will be removed in the next commit.
2023-06-30 09:06:56 +00:00
Barnabás Pőcze
146aae180d cc-wifi-connection-list: Use correct setter in property getter
CcWifiConnectionList::forgettable is of type `gboolean` so use
`g_value_set_boolean()` in the getter instead of `g_value_set_object()`.
2023-06-13 04:35:38 +00:00
Fareed
b813d378ec wi-fi: Update airplane mode row
airplane mode row wasn't updated
to be compatible with new Wi-Fi panel ui.

set airplane mode to be in preference group.
2023-06-12 19:41:20 -04:00