Accepting request 1044192 from GNOME:Next

- Modify gnome-control-center-disable-error-message-for-NM.patch:
  fix wifi panel(bsc#1206233).

- Rebase gnome-control-center-disable-error-message-for-NM.patch.
- Add gnome-control-center-network-use-AdwStatusPage.patch:
  network-panel: Use AdwStatusPage to show NetworkManager error.
  This is needed by the above rebased patch
  (glgo#GNOME/gnome-control-center/commit/2b3de01124).

- Add gnome-control-center-fix-ws-sea-pass-toggle.patch: Fix crash
  when user clicking password visibility toggle in Security page
  when method is WPA3 Personal
  (glgo#GNOME/gnome-control-center!1520).

OBS-URL: https://build.opensuse.org/request/show/1044192
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-control-center?expand=0&rev=495
This commit is contained in:
Bjørn Lie 2022-12-22 13:00:34 +00:00 committed by Git OBS Bridge
parent 1070111cbf
commit de08cbba86
5 changed files with 207 additions and 87 deletions

View File

@ -10,11 +10,11 @@ Subject: [PATCH] add error messages when wicked is used as network manager
tests/meson.build | 3 +++
4 files changed, 102 insertions(+), 2 deletions(-)
diff --git a/panels/network/cc-network-panel.c b/panels/network/cc-network-panel.c
index 01b164ea0..d32e94d09 100644
--- a/panels/network/cc-network-panel.c
+++ b/panels/network/cc-network-panel.c
@@ -643,10 +643,24 @@ static void
Index: gnome-control-center-43.1/panels/network/cc-network-panel.c
===================================================================
--- gnome-control-center-43.1.orig/panels/network/cc-network-panel.c
+++ gnome-control-center-43.1/panels/network/cc-network-panel.c
@@ -646,10 +646,24 @@ static void
panel_check_network_manager_version (CcNetworkPanel *self)
{
const gchar *version;
@ -37,31 +37,23 @@ index 01b164ea0..d32e94d09 100644
version = nm_client_get_version (self->client);
- if (version == NULL) {
+ if (version == NULL && g_strcmp0 (state, "inactive") == 0) {
GtkWidget *box;
GtkWidget *label;
g_autofree gchar *markup = NULL;
@@ -671,10 +685,31 @@ panel_check_network_manager_version (CcNetworkPanel *self)
gtk_widget_set_valign (label, GTK_ALIGN_START);
gtk_box_pack_start (GTK_BOX (box), label, TRUE, TRUE, 0);
GtkWidget *status_page;
+ gtk_widget_show_all (box);
status_page = adw_status_page_new ();
@@ -661,9 +675,23 @@ panel_check_network_manager_version (CcN
_("NetworkManager needs to be running to view or make "
"connections. Contact a system administrator or the "
"software vendor."));
+ } else if (version == NULL && g_strcmp0 (state, "active") == 0) {
+ GtkWidget *box;
+ GtkWidget *label;
+ GtkWidget *status_page;
+
+ gtk_container_remove (GTK_CONTAINER (self), gtk_bin_get_child (GTK_BIN (self)));
+ status_page = adw_status_page_new ();
+ cc_panel_set_content (CC_PANEL (self), status_page);
+
+ box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 20);
+ gtk_box_set_homogeneous (GTK_BOX (box), TRUE);
+ gtk_widget_set_vexpand (box, TRUE);
+ gtk_container_add (GTK_CONTAINER (self), box);
+
+ label = gtk_label_new (_("Please use YaST2 to configure your network."));
+ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+ gtk_box_pack_start (GTK_BOX (box), label, TRUE, TRUE, 0);
+
gtk_widget_show_all (box);
+ adw_status_page_set_icon_name (ADW_STATUS_PAGE (status_page), "network-error-symbolic");
+ adw_status_page_set_title (ADW_STATUS_PAGE (status_page), _("Wicked is running"));
+ adw_status_page_set_description (ADW_STATUS_PAGE (status_page),
+ _("Please use YaST2 to configure your network."));
} else {
manager_running (self);
}
@ -72,11 +64,22 @@ index 01b164ea0..d32e94d09 100644
}
static void
diff --git a/panels/network/cc-wifi-panel.c b/panels/network/cc-wifi-panel.c
index 9ca6e6ee5..c4622e684 100644
--- a/panels/network/cc-wifi-panel.c
+++ b/panels/network/cc-wifi-panel.c
@@ -439,21 +439,41 @@ static void
Index: gnome-control-center-43.1/panels/network/cc-wifi-panel.c
===================================================================
--- gnome-control-center-43.1.orig/panels/network/cc-wifi-panel.c
+++ gnome-control-center-43.1/panels/network/cc-wifi-panel.c
@@ -425,8 +425,8 @@ remove_wifi_device (CcWifiPanel *self,
}
/* Disconnect the signal to prevent assertion crash */
- g_signal_handlers_disconnect_by_func (device,
- G_CALLBACK (wifi_panel_update_qr_image_cb),
+ g_signal_handlers_disconnect_by_func (device,
+ G_CALLBACK (wifi_panel_update_qr_image_cb),
self);
/* Destroy all stack pages related to this device */
@@ -444,21 +444,41 @@ static void
check_main_stack_page (CcWifiPanel *self)
{
const gchar *nm_version;
@ -119,63 +122,69 @@ index 9ca6e6ee5..c4622e684 100644
}
static void
diff --git a/panels/network/cc-wifi-panel.ui b/panels/network/cc-wifi-panel.ui
index 2ac7570f9..5a53f9a57 100644
--- a/panels/network/cc-wifi-panel.ui
+++ b/panels/network/cc-wifi-panel.ui
@@ -318,6 +318,48 @@
<property name="name">nm-not-running</property>
</packing>
Index: gnome-control-center-43.1/panels/network/cc-wifi-panel.ui
===================================================================
--- gnome-control-center-43.1.orig/panels/network/cc-wifi-panel.ui
+++ gnome-control-center-43.1/panels/network/cc-wifi-panel.ui
@@ -311,10 +311,53 @@
</object>
</child>
+
+ <!-- "Wicked Running" page -->
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
+ <property name="halign">center</property>
+ <property name="valign">center</property>
+ <property name="orientation">vertical</property>
+ <property name="margin">18</property>
+ <property name="spacing">18</property>
+ <child type="center">
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">face-sad-symbolic</property>
+ <property name="pixel_size">128</property>
+ <style>
+ <class name="dim-label" />
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="wrap">True</property>
+ <property name="label" translatable="yes">Please use YaST2 to configure your network.</property>
+ <attributes>
+ <attribute name="scale" value="1.42" />
+ </attributes>
+ </object>
+ <packing>
+ <property name="pack-type">end</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <object class="GtkStackPage">
+ <property name="name">wicked-running</property>
+ </packing>
+ <property name="child">
+ <object class="GtkCenterBox">
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="valign">center</property>
+ <property name="orientation">vertical</property>
+ <property name="margin-top">18</property>
+ <property name="margin-bottom">18</property>
+ <property name="margin-start">18</property>
+ <property name="margin-end">18</property>
+ <child type="center">
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">face-sad-symbolic</property>
+ <property name="pixel_size">128</property>
+ <style>
+ <class name="dim-label" />
+ </style>
+ </object>
+ </child>
+ <child type="end">
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="wrap">True</property>
+ <property name="label" translatable="yes">Please use YaST2 to configure your network.</property>
+ <attributes>
+ <attribute name="scale" value="1.42" />
+ </attributes>
+ </object>
+ </child>
+ </object>
+ </property>
+ </object>
+ </child>
+
</object>
</child>
diff --git a/tests/meson.build b/tests/meson.build
index d4fe361ef..da3bd104d 100644
--- a/tests/meson.build
+++ b/tests/meson.build
-
</object>
</child>
Index: gnome-control-center-43.1/tests/meson.build
===================================================================
--- gnome-control-center-43.1.orig/tests/meson.build
+++ gnome-control-center-43.1/tests/meson.build
@@ -1,8 +1,11 @@
subdir('common')
#subdir('datetime')
@ -188,6 +197,3 @@ index d4fe361ef..da3bd104d 100644
subdir('interactive-panels')
--
2.31.1

View File

@ -0,0 +1,28 @@
From d6d05abeba9dffc4840e52d24dbef871c97ae38c Mon Sep 17 00:00:00 2001
From: Alynx Zhou <alynx.zhou@gmail.com>
Date: Thu, 1 Dec 2022 11:17:38 +0800
Subject: [PATCH] network: Fix wrong signal of SEA password visibility toggle
Wrong pointer is used because of missing `_swapped`.
---
panels/network/wireless-security/ws-sae.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/panels/network/wireless-security/ws-sae.c b/panels/network/wireless-security/ws-sae.c
index 83fe0c793..c9e4e5040 100644
--- a/panels/network/wireless-security/ws-sae.c
+++ b/panels/network/wireless-security/ws-sae.c
@@ -212,8 +212,8 @@ ws_sae_new (NMConnection *connection)
(HelperSecretFunc) nm_setting_wireless_security_get_psk);
}
- g_signal_connect (self->show_password_check, "toggled",
- G_CALLBACK (show_toggled_cb), self);
+ g_signal_connect_swapped (self->show_password_check, "toggled",
+ G_CALLBACK (show_toggled_cb), self);
/* Hide WPA/RSN for now since this can be autodetected by NM and the
* supplicant when connecting to the AP.
--
GitLab

View File

@ -0,0 +1,58 @@
From 2b3de0112438c45372f872d0fd967ad2d907af6e Mon Sep 17 00:00:00 2001
From: Mohammed Sadiq <sadiq@sadiqpk.org>
Date: Tue, 1 Nov 2022 17:41:39 +0530
Subject: [PATCH] network-panel: Use AdwStatusPage to show NetworkManager error
This commit also fixes missing header bar when the error is shown
---
panels/network/cc-network-panel.c | 34 ++++++++++---------------------
1 file changed, 11 insertions(+), 23 deletions(-)
diff --git a/panels/network/cc-network-panel.c b/panels/network/cc-network-panel.c
index e80fd4a4e..24a6c6f8b 100644
--- a/panels/network/cc-network-panel.c
+++ b/panels/network/cc-network-panel.c
@@ -658,29 +658,17 @@ panel_check_network_manager_version (CcNetworkPanel *self)
/* parse running version */
version = nm_client_get_version (self->client);
if (version == NULL) {
- GtkWidget *box;
- GtkWidget *label;
- g_autofree gchar *markup = NULL;
-
- box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 20);
- gtk_box_set_homogeneous (GTK_BOX (box), TRUE);
- gtk_widget_set_vexpand (box, TRUE);
- adw_bin_set_child (ADW_BIN (self), box);
-
- label = gtk_label_new (_("Oops, something has gone wrong. Please contact your software vendor."));
- gtk_widget_set_vexpand (label, TRUE);
- gtk_label_set_wrap (GTK_LABEL (label), TRUE);
- gtk_widget_set_valign (label, GTK_ALIGN_END);
- gtk_box_append (GTK_BOX (box), label);
-
- markup = g_strdup_printf ("<small><tt>%s</tt></small>",
- _("NetworkManager needs to be running."));
- label = gtk_label_new (NULL);
- gtk_widget_set_vexpand (label, TRUE);
- gtk_label_set_markup (GTK_LABEL (label), markup);
- gtk_label_set_wrap (GTK_LABEL (label), TRUE);
- gtk_widget_set_valign (label, GTK_ALIGN_START);
- gtk_box_append (GTK_BOX (box), label);
+ GtkWidget *status_page;
+
+ status_page = adw_status_page_new ();
+ cc_panel_set_content (CC_PANEL (self), status_page);
+
+ adw_status_page_set_icon_name (ADW_STATUS_PAGE (status_page), "network-error-symbolic");
+ adw_status_page_set_title (ADW_STATUS_PAGE (status_page), _("Cant Connect to Network"));
+ adw_status_page_set_description (ADW_STATUS_PAGE (status_page),
+ _("NetworkManager needs to be running to view or make "
+ "connections. Contact a system administrator or the "
+ "software vendor."));
} else {
manager_running (self);
}
--
2.38.1

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Mon Dec 19 06:39:59 UTC 2022 - Jonathan Kang <songchuan.kang@suse.com>
- Modify gnome-control-center-disable-error-message-for-NM.patch:
fix wifi panel(bsc#1206233).
-------------------------------------------------------------------
Thu Dec 6 09:00:52 UTC 2022 - Jonathan Kang <songchuan.kang@suse.com>
- Rebase gnome-control-center-disable-error-message-for-NM.patch.
- Add gnome-control-center-network-use-AdwStatusPage.patch:
network-panel: Use AdwStatusPage to show NetworkManager error.
This is needed by the above rebased patch
(glgo#GNOME/gnome-control-center/commit/2b3de01124).
-------------------------------------------------------------------
Tue Dec 6 04:31:50 UTC 2022 - Alynx Zhou <alynx.zhou@suse.com>
- Add gnome-control-center-fix-ws-sea-pass-toggle.patch: Fix crash
when user clicking password visibility toggle in Security page
when method is WPA3 Personal
(glgo#GNOME/gnome-control-center!1520).
-------------------------------------------------------------------
Tue Oct 18 08:00:32 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -35,8 +35,12 @@ URL: https://apps.gnome.org/app/org.gnome.Settings
Source0: https://download.gnome.org/sources/gnome-control-center/43/%{name}-%{version}.tar.xz
Source99: %{name}-rpmlintrc
# PATCH-NEEDS-REBASE gnome-control-center-disable-error-message-for-NM.patch bsc#989801 sckang@suse.com -- network: Improve the check for whether NM or wicked is running Was:PATCH-FIX-OPENSUSE
Patch0: gnome-control-center-disable-error-message-for-NM.patch
# PATCH-FIX-UPSTREAM gnome-control-center-network-use-AdwStatusPage.patch glgo#GNOME/gnome-contorl-center/commit/2b3de01124 sckang@suse.com network-panel: Use AdwStatusPage to show NetworkManager error.
Patch0: gnome-control-center-network-use-AdwStatusPage.patch
# PATCH-FIX-OPENSUSE gnome-control-center-disable-error-message-for-NM.patch bsc#989801 sckang@suse.com -- network: Improve the check for whether NM or wicked is running Was:PATCH-FIX-OPENSUSE
Patch1: gnome-control-center-disable-error-message-for-NM.patch
# PATCH-FIX-UPSTREAM gnome-control-center-fix-ws-sea-pass-toggle.patch glgo#GNOME/gnome-control-center!1520 -- network: Fix wrong signal of SEA password visibility toggle
Patch2: gnome-control-center-fix-ws-sea-pass-toggle.patch
### patches for Leap >= 15 plus SLE >= 15, but not TW
# PATCH-FEATURE-SLE gnome-control-center-info-never-use-gnome-software.patch bsc#999336 fezhang@suse.com -- info: Never search for gnome-software as an option when checking for updates on SLE and Leap 42.2, because we use gpk-update-viewer.
@ -182,8 +186,9 @@ GNOME control center.
%prep
%setup -q
# Patch needs rebase
#%%patch0 -p1
%patch0 -p1
%patch1 -p1
%patch2 -p1
# patches for Leap >= 15 plus SLE >= 15, but not TW
%if 0%{?sle_version} >= 150000