From df2ad1d8b0e98271a15a38af7df9e43b281c84fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Wed, 18 Mar 2026 14:19:18 +0100 Subject: [PATCH] Fix flipping workspace menu in window-list Related: https://redhat.atlassian.net/browse/RHEL-143030 --- gnome-shell-extensions.spec | 6 ++++- scrollable-workspace-menu.patch | 42 +++++++++++++++++++++++++++++++-- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/gnome-shell-extensions.spec b/gnome-shell-extensions.spec index feb54d1..265cb7b 100644 --- a/gnome-shell-extensions.spec +++ b/gnome-shell-extensions.spec @@ -6,7 +6,7 @@ Name: gnome-shell-extensions Version: 3.32.1 -Release: 50%{?dist} +Release: 51%{?dist} Summary: Modify and extend GNOME Shell functionality and behavior Group: User Interface/Desktops @@ -582,6 +582,10 @@ cp $RPM_SOURCE_DIR/gnome-classic.desktop $RPM_BUILD_ROOT%{_datadir}/xsessions %changelog +* Wed Mar 18 2026 Florian Müllner - 3.32.1-51 +- Fix menu flip in window-list + Related: RHEL-143030 + * Tue Mar 03 2026 Florian Müllner - 3.32.1-50 - Support scrolling in workspace menu Resolves: RHEL-143030 diff --git a/scrollable-workspace-menu.patch b/scrollable-workspace-menu.patch index f81c5bc..ddd6d43 100644 --- a/scrollable-workspace-menu.patch +++ b/scrollable-workspace-menu.patch @@ -1,7 +1,7 @@ From e8665261d2e99b3cfaa4d784bd47f95a5fdc3b52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Tue, 3 Mar 2026 12:48:13 +0100 -Subject: [PATCH 1/2] workspace-indicator: Use section box to iterate items +Subject: [PATCH 1/3] workspace-indicator: Use section box to iterate items Menu items are added to a menu's box, so it is more correct to use that to access items, even when for menu sections the box @@ -50,7 +50,7 @@ index eb31fc62..af4c69bf 100644 From 6f2fba8eba7f09834448a5588b825235213314a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Mon, 2 Mar 2026 18:49:16 +0100 -Subject: [PATCH 2/2] workspace-indicator: Support scrolling in workspace menu +Subject: [PATCH 2/3] workspace-indicator: Support scrolling in workspace menu While we should always have enough screen estate to fit a reasonable number of workspaces, the number can go up to 36 where we are pretty @@ -107,3 +107,41 @@ index af4c69bf..287fa13c 100644 -- 2.53.0 + +From 05615be8a57199d3137692bb9c4537437001628f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= +Date: Wed, 18 Mar 2026 14:04:34 +0100 +Subject: [PATCH 3/3] window-list: Fix flipping menu arrow + +The `updateArrowSide()` method changes the effective arrow side, +but not the "user arrow side" that tracks the explicitly requested +side. + +This breaks scrolling the workspaces menu, because when checking +whether the menu needs flipping due to size constraints, it does +not fit on either side and boxpointer reverts to the originally +requested side. + +This is a shell issue[0], but we can work around it to fix the +immediate issue without a shell update. + +[0] https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4120 +--- + extensions/window-list/extension.js | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/extensions/window-list/extension.js b/extensions/window-list/extension.js +index 37b5ea09..d1342898 100644 +--- a/extensions/window-list/extension.js ++++ b/extensions/window-list/extension.js +@@ -1243,6 +1243,7 @@ class BottomWorkspaceIndicator extends WorkspaceIndicator { + return; + + this.menu.actor.updateArrowSide(St.Side.BOTTOM); ++ this.menu.actor._userArrowSide = St.Side.BOTTOM; + this.menu.actor.remove_style_class_name('panel-menu'); + } + }); +-- +2.53.0 +