Fix style regressions in GNOME classic

Resolves: https://issues.redhat.com/browse/RHEL-136283
This commit is contained in:
Florian Müllner 2026-01-26 18:13:49 +01:00
parent f77c17d7ed
commit 74ff4a9cc4
No known key found for this signature in database
2 changed files with 148 additions and 232 deletions

View File

@ -6,7 +6,7 @@
Name: gnome-shell-extensions
Version: 3.32.1
Release: 48%{?dist}
Release: 49%{?dist}
Summary: Modify and extend GNOME Shell functionality and behavior
Group: User Interface/Desktops
@ -581,6 +581,10 @@ cp $RPM_SOURCE_DIR/gnome-classic.desktop $RPM_BUILD_ROOT%{_datadir}/xsessions
%changelog
* Mon Jan 26 2026 Florian Müllner <fmuellner@redhat.com> - 3.32.1-49
- Fix style regressions in GNOME classic
Resolves: RHEL-136283
* Tue Nov 18 2025 Florian Müllner <fmuellner@redhat.com> - 3.32.1-48
- Fix workspace-indicator cleanup
Resolves: RHEL-129131

View File

@ -1,7 +1,7 @@
From 7e65ba671f3fe2999a7b5a473f934879a540d734 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 23 Mar 2022 19:59:14 +0100
Subject: [PATCH 01/46] build: Remove unused stylesheets
Subject: [PATCH 01/45] build: Remove unused stylesheets
The only reason for installing empty stylesheets is minimizing
build system differences between extensions. That's not a very
@ -266,13 +266,13 @@ index 71efa039..19858a39 100644
extension_sources += files('prefs.js')
--
2.51.1
2.52.0
From c84bfeb065d0200dee5e5ac1eb7ba30feb105360 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Oct 2020 02:34:41 +0200
Subject: [PATCH 02/46] workspace-indicator: Use custom layout manager for
Subject: [PATCH 02/45] workspace-indicator: Use custom layout manager for
thumbnails
The current code positions window previews explicitly using a fixed
@ -408,13 +408,13 @@ index d377f288..101ef7be 100644
}),
x_fill: true,
--
2.51.1
2.52.0
From e2fd7a6f4ab4f783bc475a6a9cf3156ab4ddecad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 12:38:33 +0100
Subject: [PATCH 03/46] workspace-indicator: Move indicator code into separate
Subject: [PATCH 03/45] workspace-indicator: Move indicator code into separate
file
Shortly after the window-list extension was added, it gained a
@ -1365,13 +1365,13 @@ index 55f0e9aa..5cdb710f 100644
extensions/workspace-indicator/prefs.js
+extensions/workspace-indicator/workspaceIndicator.js
--
2.51.1
2.52.0
From dd928d44f1fbc1536c4ae30bad2130c1fc4432ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 19:09:38 +0100
Subject: [PATCH 04/46] workspace-indicator: Use descendant style selectors
Subject: [PATCH 04/45] workspace-indicator: Use descendant style selectors
Add a style class to the indicator itself, and only select
descendant elements. This allows using the briefer class names
@ -1459,13 +1459,13 @@ index 83a0dffa..2b102117 100644
reactive: true
});
--
2.51.1
2.52.0
From 9a92b49c1835e44b5f3ddf2088f24cf3dd82b8c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 12:48:43 +0100
Subject: [PATCH 05/46] window-list: Use consistent style class prefix
Subject: [PATCH 05/45] window-list: Use consistent style class prefix
This will eventually allow us to re-use the workspace-indicator
extension without changing anything but the used prefix.
@ -1532,13 +1532,13 @@ index 8ae9b288..4e8f1aff 100644
this._delegate = this;
--
2.51.1
2.52.0
From 6db2bc97a0aba60650abff4e82a1b5683db474c5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 23 Feb 2024 01:59:15 +0100
Subject: [PATCH 06/46] workspace-indicator: Allow overriding base style class
Subject: [PATCH 06/45] workspace-indicator: Allow overriding base style class
This will allow reusing the code from the window-list extension
without limiting the ability to specify styling that only applies
@ -1586,13 +1586,13 @@ index 2b102117..57a3f7ec 100644
let container = new St.Widget({
layout_manager: new Clutter.BinLayout(),
--
2.51.1
2.52.0
From 8f4cc8742093a791bf64470ea2e04b18c37a59e1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 11 Jul 2025 12:09:18 +0200
Subject: [PATCH 07/46] workspace-indicator: Support prefix for GType names
Subject: [PATCH 07/45] workspace-indicator: Support prefix for GType names
GTypes have to be unique, so to allow the code to be eventually
shared with the window-list extension, support adding a custom
@ -1651,13 +1651,13 @@ index 57a3f7ec..2a026c5d 100644
super._init(0.0, _('Workspace Indicator'));
--
2.51.1
2.52.0
From 09116b6f8e6477c4347fec0f035e74d508b08288 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 23 Feb 2024 01:58:50 +0100
Subject: [PATCH 08/46] window-list: Override base style class
Subject: [PATCH 08/45] window-list: Override base style class
Apply the changes from the last commit to the workspace-indicator
copy, and override the base style class from the extension.
@ -1725,13 +1725,13 @@ index 4e8f1aff..48a8eb22 100644
let container = new St.Widget({
--
2.51.1
2.52.0
From 86b017644c4a7cb394558f4b96785957aef480ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 11 Jul 2025 12:29:50 +0200
Subject: [PATCH 09/46] window-list: Set TypePrefix for GType names
Subject: [PATCH 09/45] window-list: Set TypePrefix for GType names
Apply the changes from the last commit to the workspace-indicator
copy, and set the type prefix from the extension.
@ -1793,13 +1793,13 @@ index 48a8eb22..c362539e 100644
_init(params = {}) {
super._init(0.0, _('Workspace Indicator'), true);
--
2.51.1
2.52.0
From e0d18355ae3af843bc35412f4379d26af0a9ddcd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 12:48:43 +0100
Subject: [PATCH 10/46] window-list: Externally adjust workspace menu
Subject: [PATCH 10/45] window-list: Externally adjust workspace menu
In order to use a PanelMenu.Button in the bottom bar, we have
to tweak its menu a bit.
@ -1884,13 +1884,13 @@ index c362539e..574ebdca 100644
layout_manager: new Clutter.BinLayout(),
x_expand: true,
--
2.51.1
2.52.0
From e3b79e9d113570a89227cd7cb598e20fe61c9bd0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 21 Mar 2024 16:49:35 +0100
Subject: [PATCH 11/46] window-list: Handle changes to workspace menu
Subject: [PATCH 11/45] window-list: Handle changes to workspace menu
For now the menu is always set at construction time, however this
will change in the future. Prepare for that by handling the
@ -1927,13 +1927,13 @@ index 394fec1f..aada9525 100644
this.actor.set_position(this._monitor.x,
this._monitor.y + this._monitor.height - this.actor.height);
--
2.51.1
2.52.0
From c8bf13f4e85c1e90535588234a68e66068d02805 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 15:58:39 +0100
Subject: [PATCH 12/46] workspace-indicator: Don't use SCHEMA/KEY constants
Subject: [PATCH 12/45] workspace-indicator: Don't use SCHEMA/KEY constants
Each constant is only used once, so all they do is disconnect
the actual value from the code that uses it.
@ -1971,13 +1971,13 @@ index 2a026c5d..b1dfc970 100644
}
--
2.51.1
2.52.0
From dbb82cf4778e324defa564584badc136c4f54448 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 18:59:23 +0100
Subject: [PATCH 13/46] workspace-indicator: Use existing property
Subject: [PATCH 13/45] workspace-indicator: Use existing property
We already track the current workspace index, use that
instead of getting it from the workspace manager again.
@ -1999,13 +1999,13 @@ index b1dfc970..7177a810 100644
}
});
--
2.51.1
2.52.0
From c929efb231745e4e66182a9ee08c5cef2725e9d9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 16:14:24 +0100
Subject: [PATCH 14/46] workspace-indicator: Don't use menu section
Subject: [PATCH 14/45] workspace-indicator: Don't use menu section
We never added anything else to the menu, so we can just operate
on the entire menu instead of an intermediate section.
@ -2068,13 +2068,13 @@ index 7177a810..9563bbc1 100644
this._workspacesItems[i].label_actor = this._statusLabel;
this._workspacesItems[i].connect('activate', (actor, _event) => {
--
2.51.1
2.52.0
From 8d38e180ac3a6832185820589f5f4afa450f4cf1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 13:05:15 +0100
Subject: [PATCH 15/46] workspace-indicator: Support showing tooltips above
Subject: [PATCH 15/45] workspace-indicator: Support showing tooltips above
The indicator is located in the top bar, so tooltips are always
shown below the previews. However supporting showing tooltips
@ -2110,13 +2110,13 @@ index 9563bbc1..b87420ac 100644
}
--
2.51.1
2.52.0
From a7d7412b8683e843db154c10fe9ffcd01b38d544 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 17:37:16 +0100
Subject: [PATCH 16/46] workspace-indicator: Only change top bar redirect when
Subject: [PATCH 16/45] workspace-indicator: Only change top bar redirect when
in top bar
While this is always the case for the workspace indicator, adding
@ -2176,13 +2176,13 @@ index b87420ac..b772b66d 100644
: Clutter.OffscreenRedirect.AUTOMATIC_FOR_OPACITY);
}
--
2.51.1
2.52.0
From e654fa6be51139099f6eaa13f28130a3da0fd556 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 16:13:00 +0100
Subject: [PATCH 17/46] workspace-indicator: Small cleanup
Subject: [PATCH 17/45] workspace-indicator: Small cleanup
The code to update the menu labels is a bit cleaner in the
window-list extension, so use that.
@ -2225,13 +2225,13 @@ index b772b66d..f707be79 100644
this._statusLabel.set_text(this._labelText());
--
2.51.1
2.52.0
From 3db67516e6bc00f2b9c85aa59b28d9521028fbc9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 16:13:00 +0100
Subject: [PATCH 18/46] workspace-indicator: Simplify getting status text
Subject: [PATCH 18/45] workspace-indicator: Simplify getting status text
Currently the same method is used to get the label text for the
indicator itself and for the menu items.
@ -2311,13 +2311,13 @@ index f707be79..6783b315 100644
_updateThumbnails() {
--
2.51.1
2.52.0
From 6ae80e3c952f4fb2e557dbd4dc4ab304f9e82eae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 Feb 2024 04:45:23 +0100
Subject: [PATCH 19/46] workspace-indicator: Tweak preview style
Subject: [PATCH 19/45] workspace-indicator: Tweak preview style
Sync sizes and padding with the window-list previews.
@ -2368,13 +2368,13 @@ index 3f89359b..c8c2370f 100644
.workspace-indicator-window-preview {
--
2.51.1
2.52.0
From a034be112b74ea09bfa53840ab3c85ce6593bd88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 23:22:58 +0100
Subject: [PATCH 20/46] workspace-indicator: Support light style
Subject: [PATCH 20/45] workspace-indicator: Support light style
The window-list extension already includes light styling for
its copy of the workspace indicator. Just copy that over to
@ -2507,13 +2507,13 @@ index c8c2370f..b0f7d171 100644
-}
+@import url("stylesheet-dark.css");
--
2.51.1
2.52.0
From 7bad2503adfbdcf5dfa67288fd7a5abcdd299fb0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 13:08:52 +0100
Subject: [PATCH 21/46] window-list: Use actual copy of workspace-indicator
Subject: [PATCH 21/45] window-list: Use actual copy of workspace-indicator
We are now at a point where the code from the workspace-indicator
extension is usable from the window-list.
@ -3072,13 +3072,13 @@ index 574ebdca..00000000
-});
-
--
2.51.1
2.52.0
From 81f7a5f857e2e1e8d882b1db84b1385a147726fb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 20 Feb 2024 17:27:57 +0100
Subject: [PATCH 22/46] workspace-indicator: Split out WorkspacePreviews
Subject: [PATCH 22/45] workspace-indicator: Split out WorkspacePreviews
The previews will become a bit more complex soon, so spit them out
into a dedicated class.
@ -3303,13 +3303,13 @@ index 6783b315..689d35ac 100644
- }
});
--
2.51.1
2.52.0
From c998e3089691d8c31c0796b2779ea574ce6a7a81 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Mon, 19 Feb 2024 14:42:04 +0100
Subject: [PATCH 23/46] workspace-indicator: Handle preview overflow
Subject: [PATCH 23/45] workspace-indicator: Handle preview overflow
We currently avoid previews from overflowing in most setups by
artificially limiting them to a maximum of six workspaces.
@ -3446,13 +3446,13 @@ index 689d35ac..4332b517 100644
for (let i = 0; i < this._workspaceManagerSignals.length; i++)
global.workspace_manager.disconnect(this._workspaceManagerSignals[i]);
--
2.51.1
2.52.0
From a47ea87e36ae712e4631505ca3c4fe46ab65caf7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 20 Feb 2024 22:00:57 +0100
Subject: [PATCH 24/46] workspace-indicator: Make previews configurable
Subject: [PATCH 24/45] workspace-indicator: Make previews configurable
Now that previews scroll when there are too many workspaces,
there is no longer a reason for the 6-workspace limit.
@ -3691,13 +3691,13 @@ index 5cdb710f..eeb36fab 100644
+extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml
extensions/workspace-indicator/workspaceIndicator.js
--
2.51.1
2.52.0
From 393dcec25e785d5a441fe92d5499371a5cdfd61e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 21 Mar 2024 17:27:09 +0100
Subject: [PATCH 25/46] window-list: Expose workspace preview option
Subject: [PATCH 25/45] window-list: Expose workspace preview option
Now that we have the option, the window-list should expose it
in its preference window like the workspace-indicator.
@ -3748,13 +3748,13 @@ index d276c79e..a2b5f564 100644
}
--
2.51.1
2.52.0
From 604a86b3f40128c6596f17cd242de628538bf13a Mon Sep 17 00:00:00 2001
From 51a1a664c5c9d896d7b8dcc3f04d9ab7c5d557cd Mon Sep 17 00:00:00 2001
From: Jakub Steiner <jimmac@gmail.com>
Date: Tue, 16 Jul 2024 09:40:53 +0200
Subject: [PATCH 26/46] window-list: Update styling
Subject: [PATCH 26/45] window-list: Update styling
- Contemporary look. Fewer borders, thinner outlines for workspace indicators
- Lacks the designed unfocused window separators.
@ -3764,16 +3764,16 @@ Fixes https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/421
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/330>
---
extensions/window-list/classic.css | 68 +++++++-----
extensions/window-list/classic.css | 68 ++++++++----
extensions/window-list/stylesheet.css | 104 ++++++------------
.../workspace-indicator/stylesheet-dark.css | 4 +-
3 files changed, 76 insertions(+), 100 deletions(-)
3 files changed, 78 insertions(+), 98 deletions(-)
diff --git a/extensions/window-list/classic.css b/extensions/window-list/classic.css
index d7ceb062..1d9b82f0 100644
index d7ceb062..4601ff63 100644
--- a/extensions/window-list/classic.css
+++ b/extensions/window-list/classic.css
@@ -1,22 +1,24 @@
@@ -1,22 +1,25 @@
+/*
+ * SPDX-FileCopyrightText: 2013 Florian Müllner <fmuellner@gnome.org>
+ * SPDX-FileCopyrightText: 2015 Jakub Steiner <jimmac@gmail.com>
@ -3792,11 +3792,10 @@ index d7ceb062..1d9b82f0 100644
+ height: 2.5em;
}
- .bottom-panel .window-button > StWidget,
- .bottom-panel .window-picker-toggle > StWidget {
.bottom-panel .window-button > StWidget,
.bottom-panel .window-picker-toggle > StWidget {
- color: #2e3436;
- background-color: #eee;
+ .bottom-panel .window-button > StWidget {
border-radius: 3px;
padding: 3px 6px 1px;
box-shadow: none;
@ -3805,7 +3804,7 @@ index d7ceb062..1d9b82f0 100644
}
.bottom-panel .window-button > StWidget {
@@ -24,27 +26,43 @@
@@ -24,27 +27,46 @@
max-width: 18.75em;
}
@ -3813,7 +3812,8 @@ index d7ceb062..1d9b82f0 100644
- .bottom-panel .window-picker-toggle:hover > StWidget {
- background-color: #f9f9f9;
- }
+ .window-button > StWidget {
+ .window-button > StWidget,
+ .window-picker-toggle > StWidget {
+ color: #000;
+ background-color: transparent;
+}
@ -3832,18 +3832,20 @@ index d7ceb062..1d9b82f0 100644
- background-color: #ccc;
- box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
- }
+.window-button:hover > StWidget {
+.window-button:hover > StWidget,
+.window-picker-toggle > StWidget {
+ background-color: #e1e1e1;
+}
- .bottom-panel .window-button.focused:hover > StWidget {
- background-color: #e9e9e9;
+
+.window-button:active > StWidget,
+.window-button:focus > StWidget {
+ background-color: #d4d4d4;
+}
+
+.window-button.focused > StWidget {
- .bottom-panel .window-button.focused:hover > StWidget {
- background-color: #e9e9e9;
+.window-button.focused > StWidget,
+.window-picker-toggle:checked > StWidget {
+ background-color: #c7c7c7;
+}
+
@ -4045,13 +4047,13 @@ index 61d1e982..5663b422 100644
.workspace-indicator-window-preview {
--
2.51.1
2.52.0
From 56407ca464f76a4afe7172e01e2accbb6c7000ab Mon Sep 17 00:00:00 2001
From 532d20456f25118258b9e9cb05d45da4c85ed702 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 25 Sep 2024 03:36:08 +0200
Subject: [PATCH 27/46] window-list: Small stylesheet cleanup
Subject: [PATCH 27/45] window-list: Small stylesheet cleanup
The light stylesheet duplicates some declarations, and the
last occurrence matches what we already inherit from the
@ -4063,10 +4065,10 @@ Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests
1 file changed, 10 deletions(-)
diff --git a/extensions/window-list/classic.css b/extensions/window-list/classic.css
index 1d9b82f0..63e5e48c 100644
index 4601ff63..fb935d68 100644
--- a/extensions/window-list/classic.css
+++ b/extensions/window-list/classic.css
@@ -21,21 +21,11 @@
@@ -22,22 +22,12 @@
text-shadow: none;
}
@ -4075,7 +4077,8 @@ index 1d9b82f0..63e5e48c 100644
- max-width: 18.75em;
- }
-
.window-button > StWidget {
.window-button > StWidget,
.window-picker-toggle > StWidget {
color: #000;
background-color: transparent;
}
@ -4085,17 +4088,17 @@ index 1d9b82f0..63e5e48c 100644
- max-width: 18.75em;
-}
-
.window-button:hover > StWidget {
.window-button:hover > StWidget,
.window-picker-toggle > StWidget {
background-color: #e1e1e1;
}
--
2.51.1
2.52.0
From 04dd02659c36bb2034e14d2d1cae2755b9314eb5 Mon Sep 17 00:00:00 2001
From 57206aa61a978ac6c6d2a605721bf69ac2dca8a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 11 Oct 2024 12:10:36 +0200
Subject: [PATCH 28/46] workspace-indicator: Split out workspaces prefs page
Subject: [PATCH 28/45] workspace-indicator: Split out workspaces prefs page
The window-list extension already uses the extension code for
its embedded workspace indicator, this will allow it to do the
@ -4645,13 +4648,13 @@ index eeb36fab..ba4c5a46 100644
extensions/workspace-indicator/workspaceIndicator.js
+extensions/workspace-indicator/workspacePrefs.js
--
2.51.1
2.52.0
From c77f4fdd2ab5531d6b023f8c6b3033924d7fed92 Mon Sep 17 00:00:00 2001
From 326d5e606540795246f41086c6d0a14de9113a19 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 11 Oct 2024 12:13:05 +0200
Subject: [PATCH 29/46] workspace-indicator: Don't mention "top bar" in prefs
Subject: [PATCH 29/45] workspace-indicator: Don't mention "top bar" in prefs
The preferences will be shared with the window-list extension,
so avoid mentioning a specific placement.
@ -4675,13 +4678,13 @@ index 1c65ff6b..0bd4a58b 100644
const sw = new Gtk.Switch({
--
2.51.1
2.52.0
From b666d3546d7a8deda872bdfd7fc7f6c8c8619265 Mon Sep 17 00:00:00 2001
From 2c6eebe806e53e626d3ae009f6a5cb885a4f2c79 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 11 Oct 2024 12:45:54 +0200
Subject: [PATCH 30/46] window-list: Remove workspace-previews setting from
Subject: [PATCH 30/45] window-list: Remove workspace-previews setting from
prefs
We are about to include the workspace prefs page from the
@ -4711,13 +4714,13 @@ index 2c4f9e49..17e97990 100644
});
--
2.51.1
2.52.0
From 51586b29cee36331085e634515502f3906d6ce66 Mon Sep 17 00:00:00 2001
From eb466bf42d4c88abfac0040746216d8cf286c494 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sun, 29 Jun 2025 23:49:15 +0200
Subject: [PATCH 31/46] window-list: Add workspaces page to prefs
Subject: [PATCH 31/45] window-list: Add workspaces page to prefs
This brings back the workspace-previews setting, and adds the
ability to change the workspace names.
@ -4818,13 +4821,13 @@ index 17e97990..936767c8 100644
});
--
2.51.1
2.52.0
From eaee95c0fe280408b5bb3b562d9d01eb4c32aae0 Mon Sep 17 00:00:00 2001
From 05e3fbe2bdd0fd5e910bb6838c90948d83b2020e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 May 2025 16:31:57 +0200
Subject: [PATCH 32/46] workspace-indicator: Remove left-over variable
Subject: [PATCH 32/45] workspace-indicator: Remove left-over variable
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/405>
---
@ -4845,13 +4848,13 @@ index a2b5f564..baaf8a36 100644
workspaceManager.connect_after('notify::n-workspaces',
this._nWorkspacesChanged.bind(this)),
--
2.51.1
2.52.0
From 1a7a0845d8c8429eaf78f61c4653df52146e4134 Mon Sep 17 00:00:00 2001
From 07481d0df21b61c74fd79e42b731acb44fd80496 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 May 2025 16:27:57 +0200
Subject: [PATCH 33/46] workspace-indicator: Split out WorkspacesMenu
Subject: [PATCH 33/45] workspace-indicator: Split out WorkspacesMenu
The menu currently only contains the previews without any logic
on its own. This is about to change, so split the menu into a
@ -5101,13 +5104,13 @@ index baaf8a36..80a59f6e 100644
- }
});
--
2.51.1
2.52.0
From 1862fc1777119566453f5d9759e0be789557913d Mon Sep 17 00:00:00 2001
From 46d14830c52c57095d084c416c00dea365174cd0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 28 May 2025 02:16:33 +0200
Subject: [PATCH 34/46] workspace-indicator: Include menu with previews
Subject: [PATCH 34/45] workspace-indicator: Include menu with previews
The menu is currently only used when previews are disabled. But
as we are going to use the menu for changing workspace names, it
@ -5186,13 +5189,13 @@ index 80a59f6e..45f7eac7 100644
this._updateTopBarRedirect();
}
--
2.51.1
2.52.0
From 04e94f608b67aa767fd90b05f32ae35ce1b29019 Mon Sep 17 00:00:00 2001
From 9045e1d1560ddbe008f5a5f939b0fb94b7eb6a8a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 May 2025 20:59:58 +0200
Subject: [PATCH 35/46] workspace-indicator: Show full name when using menu
Subject: [PATCH 35/45] workspace-indicator: Show full name when using menu
With workspace names becoming a more prominent feature, it makes
sense to expose them without opening the menu.
@ -5303,104 +5306,13 @@ index 45f7eac7..ffb1a109 100644
- }
});
--
2.51.1
2.52.0
From 55a3295bacc5640daa40d7461f693e499111bb7f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Mon, 9 Jun 2025 18:10:14 +0200
Subject: [PATCH 36/46] workspace-indicator: Add background when using name
label
Panel buttons are flat, so the name+arrow are not immediately
recognizable as a single control. Address this by adding a
background to the button when using the name label.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/405>
---
extensions/workspace-indicator/stylesheet-dark.css | 14 ++++++++++++++
.../workspace-indicator/stylesheet-light.css | 14 ++++++++++++++
.../workspace-indicator/workspaceIndicator.js | 7 +++++--
3 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/extensions/workspace-indicator/stylesheet-dark.css b/extensions/workspace-indicator/stylesheet-dark.css
index cb0c6e62..7a40664d 100644
--- a/extensions/workspace-indicator/stylesheet-dark.css
+++ b/extensions/workspace-indicator/stylesheet-dark.css
@@ -3,6 +3,20 @@
box-shadow: none !important;
}
+.workspace-indicator.name-label {
+ box-shadow: inset 0 0 0 100px rgba(255, 255, 255, 0.17) !important;
+}
+.workspace-indicator.name-label:hover,
+.workspace-indicator.name-label:focus {
+ box-shadow: inset 0 0 0 100px rgba(255, 255, 255, 0.28) !important;
+}
+.workspace-indicator.name-label:active {
+ box-shadow: inset 0 0 0 100px rgba(255, 255, 255, 0.32) !important;
+}
+.workspace-indicator.name-label:active:hover {
+ box-shadow: inset 0 0 0 100px rgba(255, 255, 255, 0.36) !important;
+}
+
.workspace-indicator .status-label {
width: 8em;
padding: 0 8px;
diff --git a/extensions/workspace-indicator/stylesheet-light.css b/extensions/workspace-indicator/stylesheet-light.css
index 049b6a38..5191923c 100644
--- a/extensions/workspace-indicator/stylesheet-light.css
+++ b/extensions/workspace-indicator/stylesheet-light.css
@@ -7,6 +7,20 @@
@import url("stylesheet-dark.css");
+.workspace-indicator.name-label {
+ box-shadow: inset 0 0 0 100px rgba(34, 34, 38, 0.17) !important;
+}
+.workspace-indicator.name-label:hover,
+.workspace-indicator.name-label:focus {
+ box-shadow: inset 0 0 0 100px rgba(34, 34, 38, 0.28) !important;
+}
+.workspace-indicator.name-label:active {
+ box-shadow: inset 0 0 0 100px rgba(34, 34, 38, 0.32) !important;
+}
+.workspace-indicator.name-label:active:hover {
+ box-shadow: inset 0 0 0 100px rgba(34, 34, 38, 0.36) !important;
+}
+
.workspace-indicator .workspace {
background-color: #ccc;
}
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index ffb1a109..62f9c435 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -593,10 +593,13 @@ let WorkspaceIndicator = GObject.registerClass({
this._thumbnails.visible = usePreviews;
this._statusBox.visible = !usePreviews;
- if (usePreviews)
+ if (usePreviews) {
this.add_style_class_name('previews');
- else
+ this.remove_style_class_name('name-label');
+ } else {
this.remove_style_class_name('previews');
+ this.add_style_class_name('name-label');
+ }
this._updateTopBarRedirect();
}
--
2.51.1
From 3f30157c3b474f1c132164d98ab66ffc5cf54351 Mon Sep 17 00:00:00 2001
From fe268de2fec9419d1f14172a6029a0757ea5bc9d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 May 2025 21:07:08 +0200
Subject: [PATCH 37/46] workspace-indicator: Reimplement some libadwaita prefs
Subject: [PATCH 36/45] workspace-indicator: Reimplement some libadwaita prefs
widgets
Upstream now makes more use of libawaita, so reimplement the API we
@ -5664,13 +5576,13 @@ index 0bd4a58b..26a0c83b 100644
class GeneralGroup extends Gtk.Box {
_init() {
--
2.51.1
2.52.0
From 45efcaf2d5e96809079368209aadc0085bec7424 Mon Sep 17 00:00:00 2001
From 36b9954cad6f38c7a5eacdb2d858f5df460fbdac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sun, 29 Jun 2025 21:26:40 +0200
Subject: [PATCH 38/46] workspace-indicator: Refine preview settings
Subject: [PATCH 37/45] workspace-indicator: Refine preview settings
Add a group title, and change the single switch row to radio rows
to explicitly choose between "Previews" and "Workspace Name".
@ -5737,13 +5649,13 @@ index 26a0c83b..b097d130 100644
}
});
--
2.51.1
2.52.0
From 4bb1cfef66f0f32d88b99bd03611cf64ab3e2eec Mon Sep 17 00:00:00 2001
From 193a1c9f8862a8ef5340d2ec02b0c0b2daa8b618 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 22 May 2025 16:20:05 +0200
Subject: [PATCH 39/46] workspace-indicator: Include workspace settings
Subject: [PATCH 38/45] workspace-indicator: Include workspace settings
While the "Multitasking" panel in Settings already exposes workspace
settings, it makes sense to expose them in our prefs dialog as well
@ -5840,13 +5752,13 @@ index b097d130..7238c543 100644
box.add(new Gtk.Label({
label: '<b>%s</b>'.format(_('Workspace Names')),
--
2.51.1
2.52.0
From 1c4b90f273fdf25e1aeca268a274c66f4561e643 Mon Sep 17 00:00:00 2001
From 59d02891a837cec279f130fc9793a087ec3334c7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 28 May 2025 21:01:08 +0200
Subject: [PATCH 40/46] workspace-indicator: Allow changing workspace names
Subject: [PATCH 39/45] workspace-indicator: Allow changing workspace names
from menu
Instead of requiring the user to open the prefs dialog to change
@ -5860,10 +5772,10 @@ Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests
3 files changed, 192 insertions(+), 2 deletions(-)
diff --git a/extensions/workspace-indicator/stylesheet-dark.css b/extensions/workspace-indicator/stylesheet-dark.css
index 7a40664d..a74d25b5 100644
index cb0c6e62..04f03a11 100644
--- a/extensions/workspace-indicator/stylesheet-dark.css
+++ b/extensions/workspace-indicator/stylesheet-dark.css
@@ -58,3 +58,51 @@
@@ -44,3 +44,51 @@
.workspace-indicator-window-preview.active {
background-color: #d4d4d4;
}
@ -5916,10 +5828,10 @@ index 7a40664d..a74d25b5 100644
+ width: 6.5em;
+}
diff --git a/extensions/workspace-indicator/stylesheet-light.css b/extensions/workspace-indicator/stylesheet-light.css
index 5191923c..e4f2b45a 100644
index 049b6a38..71562a2f 100644
--- a/extensions/workspace-indicator/stylesheet-light.css
+++ b/extensions/workspace-indicator/stylesheet-light.css
@@ -37,3 +37,19 @@
@@ -23,3 +23,19 @@
.workspace-indicator-window-preview.active {
background-color: #f6f5f4;
}
@ -5940,7 +5852,7 @@ index 5191923c..e4f2b45a 100644
+ background-color: #185fb4;
+}
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 62f9c435..d3219afb 100644
index ffb1a109..6cde5fde 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -1,4 +1,4 @@
@ -6105,13 +6017,13 @@ index 62f9c435..d3219afb 100644
}
--
2.51.1
2.52.0
From f1891236f621e35dc535a44ea20e4776488bb75e Mon Sep 17 00:00:00 2001
From 6d3d8e90deec59773e1cc89602128a1d67f1ce95 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 28 May 2025 21:04:36 +0200
Subject: [PATCH 41/46] workspace-indicator: Remove workspace names from prefs
Subject: [PATCH 40/45] workspace-indicator: Remove workspace names from prefs
Now that names can be changed from the extension itself, we no
longer need to expose them in the prefs dialog.
@ -6334,13 +6246,13 @@ index 7238c543..a2ced86a 100644
- }
});
--
2.51.1
2.52.0
From fbcf16ff697afb8aaa43e0c902c0a5fede4177da Mon Sep 17 00:00:00 2001
From 274a354f45b518fb7ad318f77f1b4c2739a5e21e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 30 May 2025 16:39:22 +0200
Subject: [PATCH 42/46] window-list: Adjust to workspace-indicator changes
Subject: [PATCH 41/45] window-list: Adjust to workspace-indicator changes
Keep the `.panel-button` class to get the expected hover/focus/active
styling when using a regular menu button, but remove the horizontal
@ -6386,13 +6298,13 @@ index 349404c5..7da8ac7a 100644
spacing: 2px;
font-size: 10pt;
--
2.51.1
2.52.0
From 660469f7e657b654bc0f21a48b5fe653dee41b91 Mon Sep 17 00:00:00 2001
From 5bb80de247bafa183db67f71b58a293560542712 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 2 Jul 2024 19:04:10 +0200
Subject: [PATCH 43/46] workspace-indicator: Re-fittsify workspace previews
Subject: [PATCH 42/45] workspace-indicator: Re-fittsify workspace previews
For the window-list extension, it is important that the workspace
previews extend to the bottom edge for easier click targets.
@ -6406,10 +6318,10 @@ thumbnail children.
2 files changed, 33 insertions(+), 6 deletions(-)
diff --git a/extensions/workspace-indicator/stylesheet-dark.css b/extensions/workspace-indicator/stylesheet-dark.css
index a74d25b5..acf63524 100644
index 04f03a11..351c8510 100644
--- a/extensions/workspace-indicator/stylesheet-dark.css
+++ b/extensions/workspace-indicator/stylesheet-dark.css
@@ -34,10 +34,24 @@
@@ -20,10 +20,24 @@
}
.workspace-indicator .workspaces-box {
@ -6436,7 +6348,7 @@ index a74d25b5..acf63524 100644
width: 52px;
border: 1px solid transparent;
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index d3219afb..9a4bd220 100644
index 6cde5fde..d70b9f9e 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -120,14 +120,27 @@ let WorkspaceThumbnail = GObject.registerClass({
@ -6499,13 +6411,13 @@ index d3219afb..9a4bd220 100644
}
--
2.51.1
2.52.0
From 274fa345d03e905e0ca7f6a76461fa277703db9f Mon Sep 17 00:00:00 2001
From f836b23ef5fd4a58df07cd3d574a18a726e1dc21 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 16 Oct 2025 14:40:40 +0200
Subject: [PATCH 44/46] workspace-indicator: Add some adwaita-like styling
Subject: [PATCH 43/45] workspace-indicator: Add some adwaita-like styling
GTK3 does not recognize the .heading and .boxed-list classes, so
add some basic styling to not have some look completely terrible.
@ -6541,13 +6453,13 @@ index a2ced86a..44b73f2a 100644
orientation: Gtk.Orientation.VERTICAL,
halign: Gtk.Align.CENTER,
--
2.51.1
2.52.0
From 6bba19f9005583ffec23df0e79d9fb7d6028613e Mon Sep 17 00:00:00 2001
From 7d53e412d82d33ba6c7ece5e2650d769c69e1d5a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 10 Sep 2025 13:55:45 +0200
Subject: [PATCH 45/46] workspace-indicator: Add missing return value to event
Subject: [PATCH 44/45] workspace-indicator: Add missing return value to event
handler
Event handlers are expected to return a boolean to indicate whether
@ -6561,7 +6473,7 @@ Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 9a4bd220..b15141c8 100644
index d70b9f9e..968866b6 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -478,8 +478,11 @@ class EditableMenuItem extends PopupMenu.PopupBaseMenuItem {
@ -6579,13 +6491,13 @@ index 9a4bd220..b15141c8 100644
this._keyFocusId = global.stage.connect('notify::key-focus', () => {
--
2.51.1
2.52.0
From 2c8b543dfc8105f5eab723275b94e2d561484bcf Mon Sep 17 00:00:00 2001
From 902ddca94b7867ac753df78200f3d8426aa5ce42 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 10 Sep 2025 17:15:04 +0200
Subject: [PATCH 46/46] workspace-indicator: Ignore 'e' press when already in
Subject: [PATCH 45/45] workspace-indicator: Ignore 'e' press when already in
edit mode
While events should already be consumed by the entry while editing,
@ -6598,7 +6510,7 @@ Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests
1 file changed, 3 insertions(+)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index b15141c8..b4b78cca 100644
index 968866b6..eb31fc62 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -481,6 +481,9 @@ class EditableMenuItem extends PopupMenu.PopupBaseMenuItem {
@ -6612,5 +6524,5 @@ index b15141c8..b4b78cca 100644
return Clutter.EVENT_STOP;
});
--
2.51.1
2.52.0