Blame SOURCES/0001-wifi-Move-airplane-mode-widget-above-the-main-stack.patch

c0a4a8
From ecc4b3d0f021012a5f46bb7852bb85cc314468b9 Mon Sep 17 00:00:00 2001
c0a4a8
From: Felipe Borges <felipeborges@gnome.org>
c0a4a8
Date: Wed, 3 Aug 2022 10:49:05 +0200
c0a4a8
Subject: [PATCH] network: Split airplane-mode widget off main Wi-Fi panel
c0a4a8
 stack
c0a4a8
c0a4a8
The airplane-mode widget (rfkill_widget) on the wifi panel was part
c0a4a8
of the "wifi-connections" stack page, and it would get hidden
c0a4a8
whenever the panel switched to another page ("nm-not-running" or
c0a4a8
"no-wifi-devices").
c0a4a8
c0a4a8
This way, whenever a user would turn airplane-mode ON, the panel
c0a4a8
would disable wifi and set the main stack page to "no-wifi-devices",
c0a4a8
making the airplane-mode widget inaccessible, preventing users from
c0a4a8
turning airplane-mode OFF in gnome-control-center.
c0a4a8
c0a4a8
These changes reorganize the widget hierarchy as such that the
c0a4a8
airplane-mode widget is now above the main stack and will persist
c0a4a8
visible as the main stack changes.
c0a4a8
---
c0a4a8
 panels/network/cc-wifi-panel.c |  17 ++
c0a4a8
 panels/network/wifi.ui         | 464 +++++++++++++++++----------------
c0a4a8
 2 files changed, 255 insertions(+), 226 deletions(-)
c0a4a8
c0a4a8
diff --git a/panels/network/cc-wifi-panel.c b/panels/network/cc-wifi-panel.c
c0a4a8
index 2c1cd17b7..989506c6a 100644
c0a4a8
--- a/panels/network/cc-wifi-panel.c
c0a4a8
+++ b/panels/network/cc-wifi-panel.c
c0a4a8
@@ -411,6 +411,17 @@ wireless_enabled_cb (NMClient    *client,
c0a4a8
   check_main_stack_page (self);
c0a4a8
 }
c0a4a8
 
c0a4a8
+static void
c0a4a8
+on_rfkill_proxy_properties_changed_cb (GDBusProxy  *proxy,
c0a4a8
+                                       GVariant    *changed_properties,
c0a4a8
+                                       GStrv        invalidated_properties,
c0a4a8
+                                       CcWifiPanel *self)
c0a4a8
+{
c0a4a8
+  g_debug ("Rfkill properties changed");
c0a4a8
+
c0a4a8
+  sync_airplane_mode_switch (self);
c0a4a8
+}
c0a4a8
+
c0a4a8
 static void
c0a4a8
 rfkill_proxy_acquired_cb (GObject      *source_object,
c0a4a8
                           GAsyncResult *res,
c0a4a8
@@ -436,6 +447,12 @@ rfkill_proxy_acquired_cb (GObject      *source_object,
c0a4a8
 
c0a4a8
   self->rfkill_proxy = proxy;
c0a4a8
 
c0a4a8
+  g_signal_connect_object (proxy,
c0a4a8
+                           "g-properties-changed",
c0a4a8
+                           G_CALLBACK (on_rfkill_proxy_properties_changed_cb),
c0a4a8
+                           self,
c0a4a8
+                           0);
c0a4a8
+
c0a4a8
   sync_airplane_mode_switch (self);
c0a4a8
 }
c0a4a8
 
c0a4a8
diff --git a/panels/network/wifi.ui b/panels/network/wifi.ui
c0a4a8
index a3eab3889..c0f8a06b1 100644
c0a4a8
--- a/panels/network/wifi.ui
c0a4a8
+++ b/panels/network/wifi.ui
c0a4a8
@@ -4,294 +4,306 @@
c0a4a8
   <template class="CcWifiPanel" parent="CcPanel">
c0a4a8
     <property name="visible">True</property>
c0a4a8
     <property name="can-focus">False</property>
c0a4a8
+
c0a4a8
     <child>
c0a4a8
-      <object class="GtkStack" id="main_stack">
c0a4a8
+      <object class="GtkScrolledWindow">
c0a4a8
         <property name="visible">True</property>
c0a4a8
         <property name="can-focus">False</property>
c0a4a8
-        <property name="homogeneous">False</property>
c0a4a8
-        <property name="transition_type">crossfade</property>
c0a4a8
-
c0a4a8
-        
c0a4a8
+        <property name="hscrollbar-policy">never</property>
c0a4a8
         <child>
c0a4a8
-          <object class="GtkBox">
c0a4a8
+          <object class="GtkViewport">
c0a4a8
             <property name="visible">True</property>
c0a4a8
-            <property name="can_focus">False</property>
c0a4a8
-            <property name="expand">True</property>
c0a4a8
-            <property name="halign">center</property>
c0a4a8
-            <property name="valign">center</property>
c0a4a8
-            <property name="orientation">vertical</property>
c0a4a8
-            <child>
c0a4a8
-              <object class="GtkImage">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="icon_name">network-wireless-no-route-symbolic</property>
c0a4a8
-                <property name="pixel_size">256</property>
c0a4a8
-                <property name="margin-bottom">18</property>
c0a4a8
-                <style>
c0a4a8
-                  <class name="dim-label" />
c0a4a8
-                </style>
c0a4a8
-              </object>
c0a4a8
-            </child>
c0a4a8
-            <child>
c0a4a8
-              <object class="GtkLabel">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="wrap">True</property>
c0a4a8
-                <property name="label" translatable="yes">No Wi-Fi Adapter Found</property>
c0a4a8
-                <attributes>
c0a4a8
-                  <attribute name="weight" value="bold" />
c0a4a8
-                  <attribute name="scale" value="1.2" />
c0a4a8
-                </attributes>
c0a4a8
-              </object>
c0a4a8
-            </child>
c0a4a8
-            <child>
c0a4a8
-              <object class="GtkLabel">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="wrap">True</property>
c0a4a8
-                <property name="label" translatable="yes">Make sure you have a Wi-Fi adapter plugged and turned on</property>
c0a4a8
-              </object>
c0a4a8
-            </child>
c0a4a8
-          </object>
c0a4a8
-          <packing>
c0a4a8
-            <property name="name">no-wifi-devices</property>
c0a4a8
-          </packing>
c0a4a8
-        </child>
c0a4a8
+            <property name="shadow-type">none</property>
c0a4a8
 
c0a4a8
-        
c0a4a8
-        <child>
c0a4a8
-          <object class="GtkScrolledWindow">
c0a4a8
-            <property name="visible">True</property>
c0a4a8
-            <property name="can-focus">False</property>
c0a4a8
-            <property name="hscrollbar-policy">never</property>
c0a4a8
             <child>
c0a4a8
-              <object class="GtkViewport">
c0a4a8
+              <object class="GtkGrid">
c0a4a8
                 <property name="visible">True</property>
c0a4a8
-                <property name="shadow-type">none</property>
c0a4a8
+                <property name="border-width">32</property>
c0a4a8
+
c0a4a8
+                
c0a4a8
                 <child>
c0a4a8
-                  <object class="GtkGrid">
c0a4a8
+                  <object class="GtkBox">
c0a4a8
                     <property name="visible">True</property>
c0a4a8
-                    <property name="border-width">32</property>
c0a4a8
-
c0a4a8
-                    
c0a4a8
-                    <child>
c0a4a8
-                      <object class="GtkBox">
c0a4a8
-                        <property name="visible">True</property>
c0a4a8
-                        <property name="hexpand">True</property>
c0a4a8
-                      </object>
c0a4a8
-                      <packing>
c0a4a8
-                        <property name="left-attach">0</property>
c0a4a8
-                        <property name="top-attach">0</property>
c0a4a8
-                        <property name="height">3</property>
c0a4a8
-                      </packing>
c0a4a8
-                    </child>
c0a4a8
-                    <child>
c0a4a8
-                      <object class="GtkBox">
c0a4a8
-                        <property name="visible">True</property>
c0a4a8
-                        <property name="hexpand">True</property>
c0a4a8
-                      </object>
c0a4a8
-                      <packing>
c0a4a8
-                        <property name="left-attach">2</property>
c0a4a8
-                        <property name="top-attach">0</property>
c0a4a8
-                        <property name="height">3</property>
c0a4a8
-                      </packing>
c0a4a8
-                    </child>
c0a4a8
+                    <property name="hexpand">True</property>
c0a4a8
+                  </object>
c0a4a8
+                  <packing>
c0a4a8
+                    <property name="left-attach">0</property>
c0a4a8
+                    <property name="top-attach">0</property>
c0a4a8
+                    <property name="height">3</property>
c0a4a8
+                  </packing>
c0a4a8
+                </child>
c0a4a8
+                <child>
c0a4a8
+                  <object class="GtkBox">
c0a4a8
+                    <property name="visible">True</property>
c0a4a8
+                    <property name="hexpand">True</property>
c0a4a8
+                  </object>
c0a4a8
+                  <packing>
c0a4a8
+                    <property name="left-attach">2</property>
c0a4a8
+                    <property name="top-attach">0</property>
c0a4a8
+                    <property name="height">3</property>
c0a4a8
+                  </packing>
c0a4a8
+                </child>
c0a4a8
 
c0a4a8
-                    
c0a4a8
+                <child>
c0a4a8
+                
c0a4a8
+                  <object class="GtkFrame" id="rfkill_widget">
c0a4a8
+                    <property name="visible">True</property>
c0a4a8
+                    <property name="vexpand">False</property>
c0a4a8
+                    <property name="margin_bottom">32</property>
c0a4a8
                     <child>
c0a4a8
-                      <object class="GtkFrame" id="rfkill_widget">
c0a4a8
+                      <object class="GtkListBox">
c0a4a8
                         <property name="visible">True</property>
c0a4a8
-                        <property name="vexpand">False</property>
c0a4a8
-                        <property name="margin_bottom">32</property>
c0a4a8
+                        <property name="selection-mode">none</property>
c0a4a8
                         <child>
c0a4a8
-                          <object class="GtkListBox">
c0a4a8
+                          <object class="GtkListBoxRow">
c0a4a8
                             <property name="visible">True</property>
c0a4a8
-                            <property name="selection-mode">none</property>
c0a4a8
+                            <property name="can-focus">False</property>
c0a4a8
+                            <property name="activatable">False</property>
c0a4a8
                             <child>
c0a4a8
-                              <object class="GtkListBoxRow">
c0a4a8
+                              <object class="GtkGrid">
c0a4a8
                                 <property name="visible">True</property>
c0a4a8
-                                <property name="can-focus">False</property>
c0a4a8
-                                <property name="activatable">False</property>
c0a4a8
+                                <property name="border-width">12</property>
c0a4a8
+                                <property name="margin_left">6</property>
c0a4a8
+                                <property name="margin_right">6</property>
c0a4a8
+                                <property name="column-spacing">12</property>
c0a4a8
+                                <property name="row-spacing">2</property>
c0a4a8
+                                <child>
c0a4a8
+                                  <object class="GtkLabel">
c0a4a8
+                                    <property name="visible">True</property>
c0a4a8
+                                    <property name="hexpand">True</property>
c0a4a8
+                                    <property name="label" translatable="yes">Airplane Mode</property>
c0a4a8
+                                    <property name="xalign">0.0</property>
c0a4a8
+                                    <attributes>
c0a4a8
+                                      <attribute name="weight" value="bold"/>
c0a4a8
+                                    </attributes>
c0a4a8
+                                  </object>
c0a4a8
+                                  <packing>
c0a4a8
+                                    <property name="left-attach">0</property>
c0a4a8
+                                    <property name="top-attach">0</property>
c0a4a8
+                                  </packing>
c0a4a8
+                                </child>
c0a4a8
                                 <child>
c0a4a8
-                                  <object class="GtkGrid">
c0a4a8
+                                  <object class="GtkLabel">
c0a4a8
                                     <property name="visible">True</property>
c0a4a8
-                                    <property name="border-width">12</property>
c0a4a8
-                                    <property name="margin_left">6</property>
c0a4a8
-                                    <property name="margin_right">6</property>
c0a4a8
-                                    <property name="column-spacing">12</property>
c0a4a8
-                                    <property name="row-spacing">2</property>
c0a4a8
-                                    <child>
c0a4a8
-                                      <object class="GtkLabel">
c0a4a8
-                                        <property name="visible">True</property>
c0a4a8
-                                        <property name="hexpand">True</property>
c0a4a8
-                                        <property name="label" translatable="yes">Airplane Mode</property>
c0a4a8
-                                        <property name="xalign">0.0</property>
c0a4a8
-                                        <attributes>
c0a4a8
-                                          <attribute name="weight" value="bold"/>
c0a4a8
-                                        </attributes>
c0a4a8
-                                      </object>
c0a4a8
-                                      <packing>
c0a4a8
-                                        <property name="left-attach">0</property>
c0a4a8
-                                        <property name="top-attach">0</property>
c0a4a8
-                                      </packing>
c0a4a8
-                                    </child>
c0a4a8
-                                    <child>
c0a4a8
-                                      <object class="GtkLabel">
c0a4a8
-                                        <property name="visible">True</property>
c0a4a8
-                                        <property name="hexpand">True</property>
c0a4a8
-                                        <property name="label" translatable="yes">Disables Wi-Fi, Bluetooth and mobile broadband</property>
c0a4a8
-                                        <property name="xalign">0.0</property>
c0a4a8
-                                        <attributes>
c0a4a8
-                                          <attribute name="scale" value="0.88"/>
c0a4a8
-                                        </attributes>
c0a4a8
-                                        <style>
c0a4a8
-                                          <class name="dim-label"/>
c0a4a8
-                                        </style>
c0a4a8
-                                      </object>
c0a4a8
-                                      <packing>
c0a4a8
-                                        <property name="left-attach">0</property>
c0a4a8
-                                        <property name="top-attach">1</property>
c0a4a8
-                                      </packing>
c0a4a8
-                                    </child>
c0a4a8
-                                    <child>
c0a4a8
-                                      <object class="GtkSwitch" id="rfkill_switch">
c0a4a8
-                                        <property name="visible">True</property>
c0a4a8
-                                        <property name="can-focus">True</property>
c0a4a8
-                                        <property name="valign">center</property>
c0a4a8
-                                        <signal name="notify::active" handler="rfkill_switch_notify_activate_cb" object="CcWifiPanel" swapped="no" />
c0a4a8
-                                      </object>
c0a4a8
-                                      <packing>
c0a4a8
-                                        <property name="left-attach">1</property>
c0a4a8
-                                        <property name="top-attach">0</property>
c0a4a8
-                                        <property name="height">2</property>
c0a4a8
-                                      </packing>
c0a4a8
-                                    </child>
c0a4a8
+                                    <property name="hexpand">True</property>
c0a4a8
+                                    <property name="label" translatable="yes">Disables Wi-Fi, Bluetooth and mobile broadband</property>
c0a4a8
+                                    <property name="xalign">0.0</property>
c0a4a8
+                                    <attributes>
c0a4a8
+                                      <attribute name="scale" value="0.88"/>
c0a4a8
+                                    </attributes>
c0a4a8
+                                    <style>
c0a4a8
+                                      <class name="dim-label"/>
c0a4a8
+                                    </style>
c0a4a8
                                   </object>
c0a4a8
+                                  <packing>
c0a4a8
+                                    <property name="left-attach">0</property>
c0a4a8
+                                    <property name="top-attach">1</property>
c0a4a8
+                                  </packing>
c0a4a8
+                                </child>
c0a4a8
+                                <child>
c0a4a8
+                                  <object class="GtkSwitch" id="rfkill_switch">
c0a4a8
+                                    <property name="visible">True</property>
c0a4a8
+                                    <property name="can-focus">True</property>
c0a4a8
+                                    <property name="valign">center</property>
c0a4a8
+                                    <signal name="notify::active" handler="rfkill_switch_notify_activate_cb" object="CcWifiPanel" swapped="no" />
c0a4a8
+                                  </object>
c0a4a8
+                                  <packing>
c0a4a8
+                                    <property name="left-attach">1</property>
c0a4a8
+                                    <property name="top-attach">0</property>
c0a4a8
+                                    <property name="height">2</property>
c0a4a8
+                                  </packing>
c0a4a8
                                 </child>
c0a4a8
                               </object>
c0a4a8
                             </child>
c0a4a8
                           </object>
c0a4a8
                         </child>
c0a4a8
                       </object>
c0a4a8
-                      <packing>
c0a4a8
-                        <property name="left-attach">1</property>
c0a4a8
-                        <property name="top-attach">0</property>
c0a4a8
-                      </packing>
c0a4a8
                     </child>
c0a4a8
+                  </object>
c0a4a8
+                  <packing>
c0a4a8
+                    <property name="left-attach">1</property>
c0a4a8
+                    <property name="top-attach">0</property>
c0a4a8
+                  </packing>
c0a4a8
+                </child>
c0a4a8
 
c0a4a8
-                    
c0a4a8
+                <child>
c0a4a8
+                  <object class="GtkStack" id="main_stack">
c0a4a8
+                    <property name="visible">True</property>
c0a4a8
+                    <property name="can-focus">False</property>
c0a4a8
+                    <property name="homogeneous">False</property>
c0a4a8
+                    <property name="transition_type">crossfade</property>
c0a4a8
+
c0a4a8
+                    
c0a4a8
                     <child>
c0a4a8
                       <object class="GtkBox">
c0a4a8
                         <property name="visible">True</property>
c0a4a8
-                        <property name="hexpand">True</property>
c0a4a8
-                        <property name="halign">start</property>
c0a4a8
-                        <property name="spacing">6</property>
c0a4a8
+                        <property name="can_focus">False</property>
c0a4a8
+                        <property name="expand">True</property>
c0a4a8
+                        <property name="halign">center</property>
c0a4a8
+                        <property name="valign">start</property>
c0a4a8
+                        <property name="orientation">vertical</property>
c0a4a8
+                        <child>
c0a4a8
+                          <object class="GtkImage">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="icon_name">network-wireless-no-route-symbolic</property>
c0a4a8
+                            <property name="pixel_size">256</property>
c0a4a8
+                            <property name="margin-bottom">18</property>
c0a4a8
+                            <style>
c0a4a8
+                              <class name="dim-label" />
c0a4a8
+                            </style>
c0a4a8
+                          </object>
c0a4a8
+                        </child>
c0a4a8
                         <child>
c0a4a8
                           <object class="GtkLabel">
c0a4a8
                             <property name="visible">True</property>
c0a4a8
-                            <property name="label" translatable="yes">Visible Networks</property>
c0a4a8
-                            <property name="xalign">0.0</property>
c0a4a8
-                            <property name="margin_bottom">12</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="wrap">True</property>
c0a4a8
+                            <property name="label" translatable="yes">No Wi-Fi Adapter Found</property>
c0a4a8
                             <attributes>
c0a4a8
-                              <attribute name="weight" value="bold"/>
c0a4a8
+                              <attribute name="weight" value="bold" />
c0a4a8
+                              <attribute name="scale" value="1.2" />
c0a4a8
                             </attributes>
c0a4a8
                           </object>
c0a4a8
                         </child>
c0a4a8
                         <child>
c0a4a8
-                          <object class="GtkSpinner" id="spinner">
c0a4a8
-                            <property name="hexpand">True</property>
c0a4a8
+                          <object class="GtkLabel">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="wrap">True</property>
c0a4a8
+                            <property name="label" translatable="yes">Make sure you have a Wi-Fi adapter plugged and turned on</property>
c0a4a8
                           </object>
c0a4a8
                         </child>
c0a4a8
                       </object>
c0a4a8
                       <packing>
c0a4a8
-                        <property name="left-attach">1</property>
c0a4a8
-                        <property name="top-attach">1</property>
c0a4a8
+                        <property name="name">no-wifi-devices</property>
c0a4a8
                       </packing>
c0a4a8
                     </child>
c0a4a8
 
c0a4a8
-                    
c0a4a8
+                    
c0a4a8
                     <child>
c0a4a8
-                      <object class="GtkFrame">
c0a4a8
+                      <object class="GtkGrid">
c0a4a8
                         <property name="visible">True</property>
c0a4a8
-                        <property name="valign">start</property>
c0a4a8
-                        <style>
c0a4a8
-                          <class name="view" />
c0a4a8
-                        </style>
c0a4a8
+
c0a4a8
+                        
c0a4a8
                         <child>
c0a4a8
-                          <object class="GtkStack" id="stack">
c0a4a8
+                          <object class="GtkBox">
c0a4a8
                             <property name="visible">True</property>
c0a4a8
                             <property name="hexpand">True</property>
c0a4a8
-                            <property name="vexpand">True</property>
c0a4a8
-                            <property name="transition_type">crossfade</property>
c0a4a8
+                            <property name="halign">start</property>
c0a4a8
+                            <property name="spacing">6</property>
c0a4a8
+                            <child>
c0a4a8
+                              <object class="GtkLabel">
c0a4a8
+                                <property name="visible">True</property>
c0a4a8
+                                <property name="label" translatable="yes">Visible Networks</property>
c0a4a8
+                                <property name="xalign">0.0</property>
c0a4a8
+                                <property name="margin_bottom">12</property>
c0a4a8
+                                <attributes>
c0a4a8
+                                  <attribute name="weight" value="bold"/>
c0a4a8
+                                </attributes>
c0a4a8
+                              </object>
c0a4a8
+                            </child>
c0a4a8
+                            <child>
c0a4a8
+                              <object class="GtkSpinner" id="spinner">
c0a4a8
+                                <property name="hexpand">True</property>
c0a4a8
+                              </object>
c0a4a8
+                            </child>
c0a4a8
                           </object>
c0a4a8
+                          <packing>
c0a4a8
+                            <property name="left-attach">1</property>
c0a4a8
+                            <property name="top-attach">1</property>
c0a4a8
+                          </packing>
c0a4a8
+                        </child>
c0a4a8
+
c0a4a8
+                        
c0a4a8
+                        <child>
c0a4a8
+                          <object class="GtkFrame">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="valign">start</property>
c0a4a8
+                            <style>
c0a4a8
+                              <class name="view" />
c0a4a8
+                            </style>
c0a4a8
+                            <child>
c0a4a8
+                              <object class="GtkStack" id="stack">
c0a4a8
+                                <property name="visible">True</property>
c0a4a8
+                                <property name="hexpand">True</property>
c0a4a8
+                                <property name="vexpand">True</property>
c0a4a8
+                                <property name="transition_type">crossfade</property>
c0a4a8
+                              </object>
c0a4a8
+                            </child>
c0a4a8
+                          </object>
c0a4a8
+                          <packing>
c0a4a8
+                            <property name="left-attach">1</property>
c0a4a8
+                            <property name="top-attach">2</property>
c0a4a8
+                          </packing>
c0a4a8
                         </child>
c0a4a8
                       </object>
c0a4a8
                       <packing>
c0a4a8
-                        <property name="left-attach">1</property>
c0a4a8
-                        <property name="top-attach">2</property>
c0a4a8
+                        <property name="name">wifi-connections</property>
c0a4a8
+                      </packing>
c0a4a8
+                    </child>
c0a4a8
+
c0a4a8
+                    
c0a4a8
+                    <child>
c0a4a8
+                      <object class="GtkBox">
c0a4a8
+                        <property name="visible">True</property>
c0a4a8
+                        <property name="can_focus">False</property>
c0a4a8
+                        <property name="halign">center</property>
c0a4a8
+                        <property name="valign">center</property>
c0a4a8
+                        <property name="orientation">vertical</property>
c0a4a8
+                        <property name="margin">18</property>
c0a4a8
+                        <property name="spacing">18</property>
c0a4a8
+                        <child type="center">
c0a4a8
+                          <object class="GtkImage">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="icon_name">face-sad-symbolic</property>
c0a4a8
+                            <property name="pixel_size">128</property>
c0a4a8
+                            <style>
c0a4a8
+                              <class name="dim-label" />
c0a4a8
+                            </style>
c0a4a8
+                          </object>
c0a4a8
+                        </child>
c0a4a8
+                        <child>
c0a4a8
+                          <object class="GtkLabel">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="wrap">True</property>
c0a4a8
+                            <property name="label" translatable="yes">NetworkManager needs to be running</property>
c0a4a8
+                          </object>
c0a4a8
+                          <packing>
c0a4a8
+                            <property name="pack-type">end</property>
c0a4a8
+                          </packing>
c0a4a8
+                        </child>
c0a4a8
+                        <child>
c0a4a8
+                          <object class="GtkLabel">
c0a4a8
+                            <property name="visible">True</property>
c0a4a8
+                            <property name="can_focus">False</property>
c0a4a8
+                            <property name="wrap">True</property>
c0a4a8
+                            <property name="label" translatable="yes">Oops, something has gone wrong. Please contact your software vendor.</property>
c0a4a8
+                            <attributes>
c0a4a8
+                              <attribute name="scale" value="1.42" />
c0a4a8
+                            </attributes>
c0a4a8
+                          </object>
c0a4a8
+                          <packing>
c0a4a8
+                            <property name="pack-type">end</property>
c0a4a8
+                          </packing>
c0a4a8
+                        </child>
c0a4a8
+                      </object>
c0a4a8
+                      <packing>
c0a4a8
+                        <property name="name">nm-not-running</property>
c0a4a8
                       </packing>
c0a4a8
                     </child>
c0a4a8
                   </object>
c0a4a8
+                    <packing>
c0a4a8
+                    <property name="left-attach">1</property>
c0a4a8
+                    <property name="top-attach">1</property>
c0a4a8
+                    <property name="height">3</property>
c0a4a8
+                  </packing>
c0a4a8
                 </child>
c0a4a8
               </object>
c0a4a8
             </child>
c0a4a8
           </object>
c0a4a8
-          <packing>
c0a4a8
-            <property name="name">wifi-connections</property>
c0a4a8
-          </packing>
c0a4a8
-        </child>
c0a4a8
-
c0a4a8
-        
c0a4a8
-        <child>
c0a4a8
-          <object class="GtkBox">
c0a4a8
-            <property name="visible">True</property>
c0a4a8
-            <property name="can_focus">False</property>
c0a4a8
-            <property name="expand">True</property>
c0a4a8
-            <property name="halign">center</property>
c0a4a8
-            <property name="valign">center</property>
c0a4a8
-            <property name="orientation">vertical</property>
c0a4a8
-            <property name="margin">18</property>
c0a4a8
-            <property name="spacing">18</property>
c0a4a8
-            <child type="center">
c0a4a8
-              <object class="GtkImage">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="icon_name">face-sad-symbolic</property>
c0a4a8
-                <property name="pixel_size">128</property>
c0a4a8
-                <style>
c0a4a8
-                  <class name="dim-label" />
c0a4a8
-                </style>
c0a4a8
-              </object>
c0a4a8
-            </child>
c0a4a8
-            <child>
c0a4a8
-              <object class="GtkLabel">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="wrap">True</property>
c0a4a8
-                <property name="label" translatable="yes">NetworkManager needs to be running</property>
c0a4a8
-              </object>
c0a4a8
-              <packing>
c0a4a8
-                <property name="pack-type">end</property>
c0a4a8
-              </packing>
c0a4a8
-            </child>
c0a4a8
-            <child>
c0a4a8
-              <object class="GtkLabel">
c0a4a8
-                <property name="visible">True</property>
c0a4a8
-                <property name="can_focus">False</property>
c0a4a8
-                <property name="wrap">True</property>
c0a4a8
-                <property name="label" translatable="yes">Oops, something has gone wrong. Please contact your software vendor.</property>
c0a4a8
-                <attributes>
c0a4a8
-                  <attribute name="scale" value="1.42" />
c0a4a8
-                </attributes>
c0a4a8
-              </object>
c0a4a8
-              <packing>
c0a4a8
-                <property name="pack-type">end</property>
c0a4a8
-              </packing>
c0a4a8
-            </child>
c0a4a8
-          </object>
c0a4a8
-          <packing>
c0a4a8
-            <property name="name">nm-not-running</property>
c0a4a8
-          </packing>
c0a4a8
         </child>
c0a4a8
       </object>
c0a4a8
     </child>
c0a4a8
-- 
c0a4a8
2.34.1
c0a4a8