Package: release.debian.org
Severity: normal
Tags: trixie
X-Debbugs-Cc: [email protected]
Control: affects -1 + src:phosh
User: [email protected]
Usertags: pu

Hi,

[ Impact ]

Without this the user might not be able to close a cell broadcast
message when it has enough whitespace (which was observed in real
world messages).

[ Tests ]

It was tested with current cell broadcasts as sent out in Israel
currently.

See https://salsa.debian.org/DebianOnMobile-team/phosh/-/merge_requests/126

[ Risks ]

The patches are cherry-picks from upstream where the code is in use
since some time. Risk shoudl hopefully be low.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]

The first two patches fix the cell broadcast issue:

- cell-broadcast-prompt-Strip-whitespace.patch: Remove excessive whitespace
- cell-broadcast-prompt-Close-dialog-on-swipe.patch: Allow to swipe close the 
dialog

These fix the display of the active acess point, without it the tick
mark isn't displayed when there's more than one AP:

- wifi-network-row-Don-t-set-active-indicator-visible.patch
- wifi-network-Don-t-unconditionally-overwrite-active-acces.patch

Cheers,
 -- Guido
diff --git a/debian/changelog b/debian/changelog
index 02c4ffe0..9faac8ac 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+phosh (0.46.0-3+deb13u1) trixie; urgency=medium
+
+  * Backport patches from upstream's 0.46 branch.
+    This gets us in sync with upstream's 0.46 branch bringing in
+    some Wi-Fi and Cell Broadcast related fixes.
+
+ -- Guido Günther <[email protected]>  Thu, 11 Sep 2025 08:58:18 +0200
+
 phosh (0.46.0-3) unstable; urgency=medium
 
   * Backport patches from phosh's 0.46 branch. This fixes icons in the app
diff --git a/debian/patches/cell-broadcast-prompt-Close-dialog-on-swipe.patch b/debian/patches/cell-broadcast-prompt-Close-dialog-on-swipe.patch
new file mode 100644
index 00000000..2c6daf14
--- /dev/null
+++ b/debian/patches/cell-broadcast-prompt-Close-dialog-on-swipe.patch
@@ -0,0 +1,56 @@
+From: =?utf-8?q?Guido_G=C3=BCnther?= <[email protected]>
+Date: Wed, 6 Aug 2025 18:06:31 +0200
+Subject: cell-broadcast-prompt: Close dialog on swipe
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+Fixes: b281cc5d3 ("cell-broadcast-prompt: New dialog for cell broadcast message")
+Signed-off-by: Guido Günther <[email protected]>
+(cherry picked from commit 17453a8d55b80aa83c09ff6eba67a1408c5f99c9)
+
+Part-of: <https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1771>
+(cherry picked from commit 164c5f53933f8033e3b1566d0835d9efd4a06c43)
+---
+ src/cell-broadcast-prompt.c     | 8 ++++++++
+ src/ui/cell-broadcast-prompt.ui | 1 +
+ 2 files changed, 9 insertions(+)
+
+diff --git a/src/cell-broadcast-prompt.c b/src/cell-broadcast-prompt.c
+index d6d0c72..3354ccc 100644
+--- a/src/cell-broadcast-prompt.c
++++ b/src/cell-broadcast-prompt.c
+@@ -113,6 +113,13 @@ on_ok_clicked (PhoshCellBroadcastPrompt *self)
+ }
+ 
+ 
++static void
++on_dialog_canceled (PhoshCellBroadcastPrompt *self)
++{
++  g_signal_emit (self, signals[CLOSED], 0);
++}
++
++
+ static void
+ phosh_cell_broadcast_prompt_finalize (GObject *obj)
+ {
+@@ -148,6 +155,7 @@ phosh_cell_broadcast_prompt_class_init (PhoshCellBroadcastPromptClass *klass)
+   gtk_widget_class_set_template_from_resource (widget_class,
+                                                "/mobi/phosh/ui/cell-broadcast-prompt.ui");
+   gtk_widget_class_bind_template_child (widget_class, PhoshCellBroadcastPrompt, lbl_msg);
++  gtk_widget_class_bind_template_callback (widget_class, on_dialog_canceled);
+   gtk_widget_class_bind_template_callback (widget_class, on_ok_clicked);
+ 
+   gtk_widget_class_set_css_name (widget_class, "phosh-cell-broadcast-prompt");
+diff --git a/src/ui/cell-broadcast-prompt.ui b/src/ui/cell-broadcast-prompt.ui
+index 1c89d72..4ddfe02 100644
+--- a/src/ui/cell-broadcast-prompt.ui
++++ b/src/ui/cell-broadcast-prompt.ui
+@@ -2,6 +2,7 @@
+ <interface>
+   <requires lib="gtk+" version="3.24"/>
+   <template class="PhoshCellBroadcastPrompt" parent="PhoshSystemModalDialog">
++    <signal name="dialog-canceled" handler="on_dialog_canceled"/>
+     <child type="phosh-dialog-content">
+       <object class="GtkBox">
+         <property name="visible">1</property>
diff --git a/debian/patches/cell-broadcast-prompt-Strip-whitespace.patch b/debian/patches/cell-broadcast-prompt-Strip-whitespace.patch
new file mode 100644
index 00000000..1842d88a
--- /dev/null
+++ b/debian/patches/cell-broadcast-prompt-Strip-whitespace.patch
@@ -0,0 +1,33 @@
+From: =?utf-8?q?Guido_G=C3=BCnther?= <[email protected]>
+Date: Wed, 6 Aug 2025 18:52:02 +0200
+Subject: cell-broadcast-prompt: Strip whitespace
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+Some messages (e.g. Vodafone test messages) have excessive
+whitespace at the end of the message, strip that.
+
+Signed-off-by: Guido Günther <[email protected]>
+(cherry picked from commit 6ad2078632f5d2350d6b5424160e5f82bae7b393)
+
+Part-of: <https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1771>
+(cherry picked from commit 6d72802f3f254c9a0ce0635c0cc118f2a6ccd22d)
+---
+ src/cell-broadcast-prompt.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/cell-broadcast-prompt.c b/src/cell-broadcast-prompt.c
+index 7336db0..d6d0c72 100644
+--- a/src/cell-broadcast-prompt.c
++++ b/src/cell-broadcast-prompt.c
+@@ -61,7 +61,8 @@ set_message (PhoshCellBroadcastPrompt *self, const char *message)
+   g_clear_pointer (&self->message, g_free);
+   self->message = g_strdup (message);
+ 
+-  gtk_label_set_label (self->lbl_msg, message);
++  g_strstrip (self->message);
++  gtk_label_set_label (self->lbl_msg, self->message);
+ 
+   g_object_notify_by_pspec (G_OBJECT (self), props[PROP_MESSAGE]);
+ }
diff --git a/debian/patches/series b/debian/patches/series
index 454e48fc..53e78187 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,7 @@
 tests-Skip-symbol-check-on-some-architectures.patch
 splash-Use-larger-icon-again.patch
 app-grid-Fix-missing-icon.patch
+cell-broadcast-prompt-Strip-whitespace.patch
+cell-broadcast-prompt-Close-dialog-on-swipe.patch
+wifi-network-row-Don-t-set-active-indicator-visible.patch
+wifi-network-Don-t-unconditionally-overwrite-active-acces.patch
diff --git a/debian/patches/wifi-network-Don-t-unconditionally-overwrite-active-acces.patch b/debian/patches/wifi-network-Don-t-unconditionally-overwrite-active-acces.patch
new file mode 100644
index 00000000..7d5841b1
--- /dev/null
+++ b/debian/patches/wifi-network-Don-t-unconditionally-overwrite-active-acces.patch
@@ -0,0 +1,42 @@
+From: =?utf-8?q?Guido_G=C3=BCnther?= <[email protected]>
+Date: Wed, 23 Apr 2025 11:55:30 +0200
+Subject: wifi-network: Don't unconditionally overwrite active access point
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+We mustn't overwrite the active access point with an inactive one.
+
+This fixes the missing tick mark in the UI when a network has more than
+one access point.
+
+The network is still marked as inactive via `reset_active_wifi_network`
+-> `phosh_wifi_network_update_active`.
+
+Fixes 7b83747fc ("wifi-network: Create PhoshWifiNetwork class")
+
+Closes: https://gitlab.gnome.org/World/Phosh/phosh/-/issues/1180
+
+Signed-off-by: Guido Günther <[email protected]>
+(cherry picked from commit 7e71e9dca836750f9093a794d6ba891d16961424)
+
+Part-of: <https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1772>
+(cherry picked from commit 9d0bac0305caf49be2320469a7c522144b4c5dc5)
+---
+ src/wifi-network.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/wifi-network.c b/src/wifi-network.c
+index 4b74ed3..dbf2fd7 100644
+--- a/src/wifi-network.c
++++ b/src/wifi-network.c
+@@ -346,7 +346,8 @@ void
+ phosh_wifi_network_add_access_point (PhoshWifiNetwork *self, NMAccessPoint *ap, gboolean active)
+ {
+   g_ptr_array_add (self->access_points, g_object_ref (ap));
+-  update_active (self, active);
++  if (active)
++    update_active (self, TRUE);
+   g_signal_connect_swapped (ap, "notify::strength", G_CALLBACK (update_best_access_point), self);
+   update_best_access_point (self, NULL, ap);
+ }
diff --git a/debian/patches/wifi-network-row-Don-t-set-active-indicator-visible.patch b/debian/patches/wifi-network-row-Don-t-set-active-indicator-visible.patch
new file mode 100644
index 00000000..e4dd6e45
--- /dev/null
+++ b/debian/patches/wifi-network-row-Don-t-set-active-indicator-visible.patch
@@ -0,0 +1,30 @@
+From: =?utf-8?q?Guido_G=C3=BCnther?= <[email protected]>
+Date: Wed, 23 Apr 2025 11:47:08 +0200
+Subject: wifi-network-row: Don't set active indicator visible
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+We sync it with a property in `init` so save that extra setup step.
+
+Signed-off-by: Guido Günther <[email protected]>
+(cherry picked from commit b428c746c5819dc52cf2705da023a88980cbecf9)
+
+Part-of: <https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1772>
+(cherry picked from commit 20d1f03b8fa37884bab71cc7015fa6d9f71da0d0)
+---
+ src/ui/wifi-network-row.ui | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/ui/wifi-network-row.ui b/src/ui/wifi-network-row.ui
+index 3ba5ec1..3a048c0 100644
+--- a/src/ui/wifi-network-row.ui
++++ b/src/ui/wifi-network-row.ui
+@@ -27,7 +27,6 @@
+     </child>
+     <child>
+       <object class="GtkImage" id="active_indicator">
+-        <property name="visible">1</property>
+         <property name="icon-name">object-select</property>
+       </object>
+     </child>
diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml
index 33c3a640..8bc1f68b 100644
--- a/debian/salsa-ci.yml
+++ b/debian/salsa-ci.yml
@@ -2,3 +2,10 @@
 include:
   - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
   - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
+
+reprotest:
+  allow_failure: true
+
+variables:
+  RELEASE: 'trixie'
+

Reply via email to