[gnome-shell] status/network: Simplify section setup



commit 78154d9d20bc99f86ab8638d90340ca184c2a2ab
Author: Florian Müllner <fmuellner gnome org>
Date:   Mon Aug 1 19:11:59 2022 +0200

    status/network: Simplify section setup
    
    With the latest changes, device- and VPN sections now require
    exactly the same setup.
    
    Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2407>

 js/ui/status/network.js | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
---
diff --git a/js/ui/status/network.js b/js/ui/status/network.js
index 148169b464..c212cc200a 100644
--- a/js/ui/status/network.js
+++ b/js/ui/status/network.js
@@ -1626,10 +1626,13 @@ class Indicator extends PanelMenu.SystemIndicator {
 
         this._notification = null;
 
+        this._allSections = [];
+
         this._wiredSection = new NMWiredSection();
         this._wirelessSection = new NMWirelessSection();
         this._modemSection = new NMModemSection();
         this._btSection = new NMBluetoothSection();
+        this._vpnSection = new NMVpnSection();
 
         this._deviceSections = new Map([
             [NM.DeviceType.ETHERNET, this._wiredSection],
@@ -1637,18 +1640,16 @@ class Indicator extends PanelMenu.SystemIndicator {
             [NM.DeviceType.MODEM, this._modemSection],
             [NM.DeviceType.BT, this._btSection],
         ]);
-        for (const section of this._deviceSections.values()) {
+        this._allSections.push(...this._deviceSections.values());
+        this._allSections.push(this._vpnSection);
+
+        this._allSections.forEach(section => {
             section.connectObject(
                 'activation-failed', () => this._onActivationFailed(),
                 'icon-changed', () => this._updateIcon(),
                 this);
             this.menu.addMenuItem(section);
-        }
-
-        this._vpnSection = new NMVpnSection();
-        this._vpnSection.connect('activation-failed', this._onActivationFailed.bind(this));
-        this._vpnSection.connect('icon-changed', this._updateIcon.bind(this));
-        this.menu.addMenuItem(this._vpnSection);
+        });
 
         this._getClient().catch(logError);
     }
@@ -1656,9 +1657,8 @@ class Indicator extends PanelMenu.SystemIndicator {
     async _getClient() {
         this._client = await NM.Client.new_async(null);
 
-        this._deviceSections.forEach(
+        this._allSections.forEach(
             section => section.setClient(this._client));
-        this._vpnSection.setClient(this._client);
 
         this._client.bind_property('nm-running',
             this, 'visible',


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]