import CS gnome-shell-extensions-40.7-25.el9

This commit is contained in:
eabdullin 2025-03-11 07:18:44 +00:00
parent 208de79030
commit 2ef9197341
7 changed files with 2666 additions and 189 deletions

View File

@ -1,101 +0,0 @@
From 13ea90a5f6f5e73d83a2ab04ea70c6263f6d8f5f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 21 May 2024 19:01:30 +0200
Subject: [PATCH] Add move-clock extension
---
extensions/move-clock/extension.js | 38 ++++++++++++++++++++++++++
extensions/move-clock/meson.build | 5 ++++
extensions/move-clock/metadata.json.in | 10 +++++++
meson.build | 1 +
4 files changed, 54 insertions(+)
create mode 100644 extensions/move-clock/extension.js
create mode 100644 extensions/move-clock/meson.build
create mode 100644 extensions/move-clock/metadata.json.in
diff --git a/extensions/move-clock/extension.js b/extensions/move-clock/extension.js
new file mode 100644
index 00000000..571567f7
--- /dev/null
+++ b/extensions/move-clock/extension.js
@@ -0,0 +1,38 @@
+/* exported enable disable */
+const Main = imports.ui.main;
+const SessionMode = imports.ui.sessionMode;
+
+class MoveClockExtension {
+ enable() {
+ const panel = SessionMode._modes['user'].panel;
+
+ const clockIndex = panel.center.indexOf('dateMenu');
+ this._modified = clockIndex !== -1;
+
+ if (!this._modified)
+ return;
+
+ panel.center.splice(clockIndex, 1);
+ panel.right.splice(-1, 0, 'dateMenu');
+
+ Main.panel._updatePanel();
+ }
+
+ disable() {
+ if (!this._modified)
+ return;
+
+ const panel = SessionMode._modes['user'].panel;
+ const clockIndex = panel.right.indexOf('dateMenu');
+
+ if (clockIndex !== -1)
+ panel.right.splice(clockIndex, 1);
+ panel.center.unshift('dateMenu');
+
+ Main.panel._updatePanel();
+ }
+}
+
+function init() {
+ return new MoveClockExtension();
+}
diff --git a/extensions/move-clock/meson.build b/extensions/move-clock/meson.build
new file mode 100644
index 00000000..48504f63
--- /dev/null
+++ b/extensions/move-clock/meson.build
@@ -0,0 +1,5 @@
+extension_data += configure_file(
+ input: metadata_name + '.in',
+ output: metadata_name,
+ configuration: metadata_conf
+)
diff --git a/extensions/move-clock/metadata.json.in b/extensions/move-clock/metadata.json.in
new file mode 100644
index 00000000..d872ab63
--- /dev/null
+++ b/extensions/move-clock/metadata.json.in
@@ -0,0 +1,10 @@
+{
+"extension-id": "@extension_id@",
+"uuid": "@uuid@",
+"settings-schema": "@gschemaname@",
+"gettext-domain": "@gettext_domain@",
+"name": "Move notification menu",
+"description": "Move the notification menu to the right",
+"shell-version": [ "@shell_current@" ],
+"url": "@url@"
+}
diff --git a/meson.build b/meson.build
index 7e6ed3e8..ea6efb76 100644
--- a/meson.build
+++ b/meson.build
@@ -53,6 +53,7 @@ all_extensions += [
'dash-to-dock',
'dash-to-panel',
'gesture-inhibitor',
+ 'move-clock',
'native-window-placement',
'panel-favorites',
'systemMonitor',
--
2.45.1

View File

@ -0,0 +1,231 @@
From 50c6c0c2137fded5f89be5bbee2292071e464cd2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 21 May 2024 19:01:30 +0200
Subject: [PATCH] Add move-notifications extension
---
extensions/move-notifications/extension.js | 49 +++++++++++
extensions/move-notifications/meson.build | 8 ++
.../move-notifications/metadata.json.in | 10 +++
....extensions.move-notifications.gschema.xml | 14 +++
extensions/move-notifications/prefs.js | 86 +++++++++++++++++++
meson.build | 1 +
6 files changed, 168 insertions(+)
create mode 100644 extensions/move-notifications/extension.js
create mode 100644 extensions/move-notifications/meson.build
create mode 100644 extensions/move-notifications/metadata.json.in
create mode 100644 extensions/move-notifications/org.gnome.shell.extensions.move-notifications.gschema.xml
create mode 100644 extensions/move-notifications/prefs.js
diff --git a/extensions/move-notifications/extension.js b/extensions/move-notifications/extension.js
new file mode 100644
index 00000000..0211696d
--- /dev/null
+++ b/extensions/move-notifications/extension.js
@@ -0,0 +1,49 @@
+/* exported init */
+const Clutter = imports.gi.Clutter;
+
+const ExtensionUtils = imports.misc.extensionUtils;
+const Main = imports.ui.main;
+
+class MoveNotificationsExtension {
+ enable() {
+ const updatePanel = Main.panel._updatePanel;
+ this._updatePanelOrig = updatePanel;
+
+ Main.panel._updatePanel = () => {
+ updatePanel.call(Main.panel);
+
+ Main.messageTray.bannerAlignment = this._getAlignment();
+ };
+
+ this._settings = ExtensionUtils.getSettings();
+ this._changedId = this._settings.connect('changed::position',
+ () => Main.panel._updatePanel());
+ Main.panel._updatePanel();
+ }
+
+ disable() {
+ this._settings.disconnect(this._changedId);
+ this._settings = null;
+
+ Main.panel._updatePanel = this._updatePanelOrig;
+ delete this._updatePanelOrig;
+
+ Main.panel._updatePanel();
+ }
+
+ _getAlignment() {
+ switch (this._settings.get_string('position')) {
+ case 'top-left':
+ return Clutter.ActorAlign.START;
+ case 'top-right':
+ return Clutter.ActorAlign.END;
+ case 'top-center':
+ default:
+ return Clutter.ActorAlign.CENTER;
+ }
+ }
+}
+
+function init() {
+ return new MoveNotificationsExtension();
+}
diff --git a/extensions/move-notifications/meson.build b/extensions/move-notifications/meson.build
new file mode 100644
index 00000000..c55a7830
--- /dev/null
+++ b/extensions/move-notifications/meson.build
@@ -0,0 +1,8 @@
+extension_data += configure_file(
+ input: metadata_name + '.in',
+ output: metadata_name,
+ configuration: metadata_conf
+)
+
+extension_sources += files('prefs.js')
+extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')
diff --git a/extensions/move-notifications/metadata.json.in b/extensions/move-notifications/metadata.json.in
new file mode 100644
index 00000000..cae9352c
--- /dev/null
+++ b/extensions/move-notifications/metadata.json.in
@@ -0,0 +1,10 @@
+{
+ "uuid": "@uuid@",
+ "extension-id": "@extension_id@",
+ "settings-schema": "@gschemaname@",
+ "gettext-domain": "@gettext_domain@",
+ "name": "Move notifications",
+ "description": "Move notification banners",
+ "shell-version": [ "@shell_current@" ],
+ "url": "@url@"
+}
diff --git a/extensions/move-notifications/org.gnome.shell.extensions.move-notifications.gschema.xml b/extensions/move-notifications/org.gnome.shell.extensions.move-notifications.gschema.xml
new file mode 100644
index 00000000..a78d72bb
--- /dev/null
+++ b/extensions/move-notifications/org.gnome.shell.extensions.move-notifications.gschema.xml
@@ -0,0 +1,14 @@
+<schemalist gettext-domain="gnome-shell-extensions">
+ <enum id="org.gnome.shell.extensions.move-notifications.position">
+ <value nick="top-center" value="0"/>
+ <value nick="top-right" value="1"/>
+ <value nick="top-left" value="2"/>
+ </enum>
+
+ <schema id="org.gnome.shell.extensions.move-notifications" path="/org/gnome/shell/extensions/move-notifications/">
+ <key name="position" enum="org.gnome.shell.extensions.move-notifications.position">
+ <default>"top-right"</default>
+ <summary>Notification position</summary>
+ </key>
+ </schema>
+</schemalist>
diff --git a/extensions/move-notifications/prefs.js b/extensions/move-notifications/prefs.js
new file mode 100644
index 00000000..a3ecdacf
--- /dev/null
+++ b/extensions/move-notifications/prefs.js
@@ -0,0 +1,86 @@
+// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
+/* exported init buildPrefsWidget */
+
+const { Gio, GLib, GObject, Gtk } = imports.gi;
+
+const ExtensionUtils = imports.misc.extensionUtils;
+const Me = ExtensionUtils.getCurrentExtension();
+
+const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
+const _ = Gettext.gettext;
+
+/** */
+function init() {
+ ExtensionUtils.initTranslations();
+}
+
+const MoveNotificationsPrefsWidget = GObject.registerClass(
+class MoveNotificationsPrefsWidget extends Gtk.Box {
+ _init() {
+ super._init({
+ orientation: Gtk.Orientation.VERTICAL,
+ spacing: 6,
+ margin_top: 36,
+ margin_bottom: 36,
+ margin_start: 36,
+ margin_end: 36,
+ halign: Gtk.Align.CENTER,
+ });
+
+ this._actionGroup = new Gio.SimpleActionGroup();
+ this.insert_action_group('move-notifications', this._actionGroup);
+
+ this._settings = ExtensionUtils.getSettings();
+ this._actionGroup.add_action(
+ this._settings.create_action('position'));
+
+ const title = new Gtk.Label({
+ label: _('Notification Position'),
+ halign: Gtk.Align.START,
+ });
+ title.add_css_class('heading');
+ this.append(title);
+
+ const box = new Gtk.Box({
+ orientation: Gtk.Orientation.VERTICAL,
+ spacing: 12,
+ margin_bottom: 12,
+ });
+ this.append(box);
+
+ const context = box.get_style_context();
+ const cssProvider = new Gtk.CssProvider();
+ cssProvider.load_from_data(
+ 'box { padding: 12px; }', -1);
+
+ context.add_provider(cssProvider,
+ Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
+ context.add_class('boxed-list');
+ context.add_class('view');
+
+ const positions = [
+ { pos: 'top-right', label: _('TopRight') },
+ { pos: 'top-center', label: _('TopCenter') },
+ { pos: 'top-left', label: _('TopLeft') },
+ ];
+ let group = null;
+ for (const { pos, label } of positions) {
+ const check = new Gtk.CheckButton({
+ action_name: 'move-notifications.position',
+ action_target: new GLib.Variant('s', pos),
+ label,
+ group,
+ margin_end: 12,
+ });
+ group = check;
+ box.append(check);
+ }
+ }
+});
+
+/**
+ * @returns {Gtk.Widget} - the prefs widget
+ */
+function buildPrefsWidget() {
+ return new MoveNotificationsPrefsWidget();
+}
diff --git a/meson.build b/meson.build
index 7e6ed3e8..0a31d2f6 100644
--- a/meson.build
+++ b/meson.build
@@ -53,6 +53,7 @@ all_extensions += [
'dash-to-dock',
'dash-to-panel',
'gesture-inhibitor',
+ 'move-notifications',
'native-window-placement',
'panel-favorites',
'systemMonitor',
--
2.46.0

View File

@ -0,0 +1,48 @@
From 7ed5e50cc978b7fda34aaaf56e8bf4d499f4676d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Mon, 2 Dec 2024 17:34:58 +0100
Subject: [PATCH] dash-to-panel: Remove faulty version check
In a string comparison, '40.10' is *smaller* than '40.3', so the
overview ends up being monkey-patched for an older version.
Unbreak the app grid by removing the check altogether, as we don't
have to care about older versions.
---
extensions/dash-to-panel/overview.js | 20 ++++++++------------
1 file changed, 8 insertions(+), 12 deletions(-)
diff --git a/extensions/dash-to-panel/overview.js b/extensions/dash-to-panel/overview.js
index 57600a5c..38f04c75 100644
--- a/extensions/dash-to-panel/overview.js
+++ b/extensions/dash-to-panel/overview.js
@@ -581,18 +581,14 @@ var dtpOverview = Utils.defineClass({
const workspaceAppGridBox =
this._cachedWorkspaceBoxes.get(OverviewControls.ControlsState.APP_GRID);
- if (Config.PACKAGE_VERSION > '40.3') {
- const monitor = Main.layoutManager.findMonitorForActor(this._container);
- const workArea = Main.layoutManager.getWorkAreaForMonitor(monitor.index);
- const workAreaBox = new Clutter.ActorBox();
-
- workAreaBox.set_origin(startX, startY);
- workAreaBox.set_size(workArea.width, workArea.height);
-
- params = [workAreaBox, searchHeight, dashHeight, workspaceAppGridBox]
- } else {
- params = [box, startX, searchHeight, dashHeight, workspaceAppGridBox];
- }
+ const monitor = Main.layoutManager.findMonitorForActor(this._container);
+ const workArea = Main.layoutManager.getWorkAreaForMonitor(monitor.index);
+ const workAreaBox = new Clutter.ActorBox();
+
+ workAreaBox.set_origin(startX, startY);
+ workAreaBox.set_size(workArea.width, workArea.height);
+
+ params = [workAreaBox, searchHeight, dashHeight, workspaceAppGridBox]
let appDisplayBox;
if (!transitionParams.transitioning) {
--
2.47.1

View File

@ -1,4 +1,4 @@
From c4fafbcf01fc3c3846e5fe7d60d9aac623afdd9f Mon Sep 17 00:00:00 2001
From 2bc8aa48edae1465a5c51be9d864a159b1009bc7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 18 Apr 2024 18:09:40 +0200
Subject: [PATCH 01/29] prefs: Fix loading custom CSS
@ -80,10 +80,10 @@ index 567f3e99..d307dcac 100644
context.add_provider(cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
--
2.44.0
2.47.0
From a6e988875f52a49289677ca4d883a98b5515033f Mon Sep 17 00:00:00 2001
From d1380931b47adb23c36e5499cbd931fba4d63bd0 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 02/29] build: Remove unused stylesheets
@ -363,10 +363,10 @@ index 71efa039..19858a39 100644
extension_sources += files('prefs.js')
--
2.44.0
2.47.0
From 071226445e95d1a5551378aaf3c83db625fc2422 Mon Sep 17 00:00:00 2001
From c97c668cf178968d70a9f2de3308e37e0b931acb 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/29] workspace-indicator: Move indicator code into separate
@ -859,7 +859,7 @@ index 19858a39..eb25b9cc 100644
+extension_sources += files('prefs.js', 'workspaceIndicator.js')
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
new file mode 100644
index 00000000..b98de047
index 00000000..c88ffc9c
--- /dev/null
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -0,0 +1,454 @@
@ -1180,7 +1180,7 @@ index 00000000..b98de047
+ }
+
+ _onDestroy() {
+ for (let i = i; i < this._workspaceManagerSignals.length; i++)
+ for (let i = 0; i < this._workspaceManagerSignals.length; i++)
+ global.workspace_manager.disconnect(this._workspaceManagerSignals[i]);
+
+ if (this._settingsChangedId) {
@ -1329,10 +1329,10 @@ index 10b1d517..bd39ab61 100644
extensions/workspace-indicator/prefs.js
+extensions/workspace-indicator/workspaceIndicator.js
--
2.44.0
2.47.0
From 4720bf9f69c91c6fa39897534921eb4f2eceb8eb Mon Sep 17 00:00:00 2001
From 34ba767aa622ac9122463f4649f7a8854a56f25d 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/29] workspace-indicator: Use descendant style selectors
@ -1375,7 +1375,7 @@ index 84aaf454..4e12cce4 100644
}
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index b98de047..101c89c6 100644
index c88ffc9c..28fc3ea8 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -263,6 +263,8 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -1406,10 +1406,10 @@ index b98de047..101c89c6 100644
reactive: true,
});
--
2.44.0
2.47.0
From 22f44ae9f21337a11a09447763fbd223e37f3d56 Mon Sep 17 00:00:00 2001
From c5843b7870e0ce0cbf7b2f587193b93c63062105 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/29] window-list: Use consistent style class prefix
@ -1473,10 +1473,10 @@ index cdfe5b61..c24f159f 100644
this._delegate = this;
--
2.44.0
2.47.0
From c8bb217d2053cf8d7db5f4866f834b6d06250427 Mon Sep 17 00:00:00 2001
From a81dbea8250c85b950c83048f178c700635a8c38 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/29] workspace-indicator: Allow overriding base style class
@ -1489,7 +1489,7 @@ to one of the extensions.
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 101c89c6..ba1e05d7 100644
index 28fc3ea8..01604b91 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -25,11 +25,13 @@ const TOOLTIP_ANIMATION_TIME = 150;
@ -1526,10 +1526,10 @@ index 101c89c6..ba1e05d7 100644
let container = new St.Widget({
layout_manager: new Clutter.BinLayout(),
--
2.44.0
2.47.0
From fc27a7f0e6da8647380b5bbe901b27ec0e5aa728 Mon Sep 17 00:00:00 2001
From e1c5b589fca9021b960e19f043ca26735c8b02de 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 07/29] window-list: Override base style class
@ -1600,10 +1600,10 @@ index c24f159f..1a1d15cd 100644
this.menu.actor.remove_style_class_name('panel-menu');
--
2.44.0
2.47.0
From 3838a915d953b910aa2d9ec82cd22dcf2e0f7440 Mon Sep 17 00:00:00 2001
From c673a9d7169cc1a2f6df9c3eeea4b11f8968dc19 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 08/29] window-list: Externally adjust workspace menu
@ -1688,10 +1688,10 @@ index 1a1d15cd..4290d58a 100644
layout_manager: new Clutter.BinLayout(),
x_expand: true,
--
2.44.0
2.47.0
From 7d2abee5e5de19bba95e4fb66692e08ace67c972 Mon Sep 17 00:00:00 2001
From 3271e93695782d06ada9752144c650605ceed76a 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 09/29] window-list: Handle changes to workspace menu
@ -1731,10 +1731,10 @@ index c58df434..a011bc90 100644
this.set_position(
this._monitor.x,
--
2.44.0
2.47.0
From bc71e5e7a21249868a481238193e1ca15eba5699 Mon Sep 17 00:00:00 2001
From 314072792bba618a85897dc085bb72debe3ec6b1 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 10/29] workspace-indicator: Don't use SCHEMA/KEY constants
@ -1749,7 +1749,7 @@ do the same here.
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index ba1e05d7..60e084e2 100644
index 01604b91..6e3ad7b5 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -17,9 +17,6 @@ const Main = imports.ui.main;
@ -1775,10 +1775,10 @@ index ba1e05d7..60e084e2 100644
}
--
2.44.0
2.47.0
From 66cf82e0676179a2565a75bbad1c31bb539c065c Mon Sep 17 00:00:00 2001
From 002a0bb8036a997a70acda017e4016fd9fd51806 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 11/29] workspace-indicator: Use existing property
@ -1790,7 +1790,7 @@ instead of getting it from the workspace manager again.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 60e084e2..4f2188be 100644
index 6e3ad7b5..60356d74 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -454,7 +454,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -1803,10 +1803,10 @@ index 60e084e2..4f2188be 100644
}
});
--
2.44.0
2.47.0
From c51f0d790c7e4d575d770b63ad7c9632b4af79b1 Mon Sep 17 00:00:00 2001
From 4e2785910ceccc079305da1b9d0e2c810b1f982a 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 12/29] workspace-indicator: Don't use menu section
@ -1820,7 +1820,7 @@ This removes another difference with the window-list copy.
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 4f2188be..66b71cd6 100644
index 60356d74..39d4e296 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -296,8 +296,6 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -1872,10 +1872,10 @@ index 4f2188be..66b71cd6 100644
this._workspacesItems[i].label_actor = this._statusLabel;
this._workspacesItems[i].connect('activate', (actor, _event) => {
--
2.44.0
2.47.0
From ef3a5860782e67dffcb63c705422102f68bd68ad Mon Sep 17 00:00:00 2001
From 5f33bc574aee51700c92b940b23df0b7966450d6 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 13/29] workspace-indicator: Support showing tooltips above
@ -1889,7 +1889,7 @@ used in the copy that is included with the window-list extension.
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 66b71cd6..bc9e222b 100644
index 39d4e296..83713b6f 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -227,16 +227,17 @@ class WorkspaceThumbnail extends St.Button {
@ -1915,10 +1915,10 @@ index 66b71cd6..bc9e222b 100644
}
--
2.44.0
2.47.0
From 3161d6c59fc8f7dd1b5c5f21082a5fd00cbcf5a9 Mon Sep 17 00:00:00 2001
From a65fd9e61cf3f3a83116815482843b1b20eef20f 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 14/29] workspace-indicator: Only change top bar redirect when
@ -1931,7 +1931,7 @@ the check will allow to use the same code in the window list.
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index bc9e222b..ac270d64 100644
index 83713b6f..fa05a54c 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -309,6 +309,16 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -1981,10 +1981,10 @@ index bc9e222b..ac270d64 100644
: Clutter.OffscreenRedirect.AUTOMATIC_FOR_OPACITY);
}
--
2.44.0
2.47.0
From 3afe55799368e1f899d2949bcc981718c6498623 Mon Sep 17 00:00:00 2001
From 521b224b17cb15df49a32d5c2dffe5ce65285df4 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 15/29] workspace-indicator: Small cleanup
@ -1996,7 +1996,7 @@ window-list extension, so use that.
1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index ac270d64..9b22102a 100644
index fa05a54c..bbb51c41 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -422,19 +422,18 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -2029,10 +2029,10 @@ index ac270d64..9b22102a 100644
this._statusLabel.set_text(this._labelText());
--
2.44.0
2.47.0
From 2eef4f6dd803021303be7c4f15775a41389debb3 Mon Sep 17 00:00:00 2001
From 3145e45a2d897b177e7395cec71a1293b6857a36 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 16/29] workspace-indicator: Simplify getting status text
@ -2049,7 +2049,7 @@ for menu items.
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 9b22102a..d8b29f58 100644
index bbb51c41..d401b6ab 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -283,7 +283,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -2115,10 +2115,10 @@ index 9b22102a..d8b29f58 100644
_updateThumbnails() {
--
2.44.0
2.47.0
From 8785f56bf69272e664c207856bfb7417342550c6 Mon Sep 17 00:00:00 2001
From 30adbc349b382c69c7592cd674d7837f6c9185c5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 21 Feb 2024 16:35:09 +0100
Subject: [PATCH 17/29] workspace-indicator: Include n-workspaces in status
@ -2136,7 +2136,7 @@ bigger click/touch target, so copy the window-list behavior.
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index d8b29f58..756758b3 100644
index d401b6ab..29b8a671 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -403,8 +403,9 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -2151,10 +2151,10 @@ index d8b29f58..756758b3 100644
_updateMenuLabels() {
--
2.44.0
2.47.0
From 6e483b472fa4b5a7be8f00b1ef87f28658f815aa Mon Sep 17 00:00:00 2001
From 675e91b7b521b4c8d7f53a9f3d028ab7300281dd 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 18/29] workspace-indicator: Tweak preview style
@ -2206,10 +2206,10 @@ index 4e12cce4..f74f7e88 100644
.workspace-indicator-window-preview.active {
--
2.44.0
2.47.0
From cf06ac2f9b7e2412fc555721b9c6d34fea7e0b45 Mon Sep 17 00:00:00 2001
From 011af97ab27a4e7be9dab937754470e890bc131c 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 19/29] workspace-indicator: Support light style
@ -2344,10 +2344,10 @@ index f74f7e88..b0f7d171 100644
-}
+@import url("stylesheet-dark.css");
--
2.44.0
2.47.0
From a5fd131564600f3117f0dbd27a1bb82592ec1132 Mon Sep 17 00:00:00 2001
From bcb34a3a91a5140b5ecc6f9582dd9f80272c7e32 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 20/29] window-list: Use actual copy of workspace-indicator
@ -2905,10 +2905,10 @@ index 4290d58a..00000000
-});
-
--
2.44.0
2.47.0
From fbcf6cb317b58dc32c67952b54cec925adfbad34 Mon Sep 17 00:00:00 2001
From 36e4714c31398b74eb1727197f40bbd81ccfd6f7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 20 Feb 2024 17:39:49 +0100
Subject: [PATCH 21/29] workspace-indicator: Simplify scroll handling
@ -2920,7 +2920,7 @@ via scroll events. Use that instead of implementing our own.
1 file changed, 4 insertions(+), 17 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 756758b3..8e3fec56 100644
index 29b8a671..1dd3ed6b 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -307,8 +307,10 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -2957,10 +2957,10 @@ index 756758b3..8e3fec56 100644
- }
});
--
2.44.0
2.47.0
From 346960098322af549c55a6eaf1628f1743585df1 Mon Sep 17 00:00:00 2001
From f3154702594a814e5131252ab84b9daf0553ada3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 27 Feb 2024 21:20:45 +0100
Subject: [PATCH 22/29] workspace-indicator: Handle active indication in
@ -2974,7 +2974,7 @@ workspace ourselves.
1 file changed, 24 insertions(+), 14 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 8e3fec56..01b831f7 100644
index 1dd3ed6b..ae526929 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -116,8 +116,14 @@ class WorkspaceLayout extends Clutter.LayoutManager {
@ -3058,10 +3058,10 @@ index 8e3fec56..01b831f7 100644
_activate(index) {
--
2.44.0
2.47.0
From 76ec37876c295b9150e98c04e11189e464af7a94 Mon Sep 17 00:00:00 2001
From e854ad2e483489952691d5fbede37e3fec63737c 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 23/29] workspace-indicator: Split out WorkspacePreviews
@ -3073,7 +3073,7 @@ into a dedicated class.
1 file changed, 49 insertions(+), 25 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 01b831f7..a559b8e2 100644
index ae526929..e5be8081 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -280,6 +280,51 @@ const WorkspaceThumbnail = GObject.registerClass({
@ -3209,10 +3209,10 @@ index 01b831f7..a559b8e2 100644
let workspaceManager = global.workspace_manager;
--
2.44.0
2.47.0
From 69c5eefbca44f58d10072115dd46ffada862cd48 Mon Sep 17 00:00:00 2001
From 18b40e7f586d4546bd64745a0b2d617655b87af3 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 24/29] workspace-indicator: Handle preview overflow
@ -3246,7 +3246,7 @@ index f74f7e88..61d1e982 100644
padding: 5px;
spacing: 3px;
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index a559b8e2..17cf7c89 100644
index e5be8081..d496d22d 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -20,6 +20,8 @@ const PopupMenu = imports.ui.popupMenu;
@ -3342,10 +3342,10 @@ index a559b8e2..17cf7c89 100644
_onDestroy() {
--
2.44.0
2.47.0
From 609674b2763bfd1536e8854b79d3c1bf265f00b9 Mon Sep 17 00:00:00 2001
From 422a5e6f67b23c3b9b0764ec313ad0ad864249db Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sun, 3 Mar 2024 15:05:23 +0100
Subject: [PATCH 25/29] workspace-indicator: Support labels in previews
@ -3359,7 +3359,7 @@ names to not lose functionality with regards to the current menu.
1 file changed, 55 insertions(+), 8 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 17cf7c89..5e6d6300 100644
index d496d22d..f5ffdbb7 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -124,10 +124,23 @@ const WorkspaceThumbnail = GObject.registerClass({
@ -3504,10 +3504,10 @@ index 17cf7c89..5e6d6300 100644
}
--
2.44.0
2.47.0
From 40cfe3a41fa3823fce06824b82e663b8f63f4e6d Mon Sep 17 00:00:00 2001
From a0985eb24eafee329b6af6c2c2f7db4de7b103e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 20 Feb 2024 21:43:55 +0100
Subject: [PATCH 26/29] workspace-indicator: Stop handling vertical layouts
@ -3524,7 +3524,7 @@ previews and the actual layout.
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 5e6d6300..aad2716a 100644
index f5ffdbb7..362c6372 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -475,8 +475,6 @@ class WorkspaceIndicator extends PanelMenu.Button {
@ -3548,10 +3548,10 @@ index 5e6d6300..aad2716a 100644
this._statusLabel.visible = useMenu;
--
2.44.0
2.47.0
From 1cad76230f8f70a08a8ccbe0970641a7b6a717b5 Mon Sep 17 00:00:00 2001
From 74b64e860757d56f0d500165ba2e49024ead48d2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sun, 3 Mar 2024 15:05:23 +0100
Subject: [PATCH 27/29] workspace-indicator: Also show previews in menu
@ -3614,7 +3614,7 @@ index 61d1e982..fb0e8b1a 100644
border-color: #9f9f9f;
}
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index aad2716a..7b3c6fbe 100644
index 362c6372..ed5645db 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -439,7 +439,7 @@ const WorkspacePreviews = GObject.registerClass({
@ -3649,7 +3649,7 @@ index aad2716a..7b3c6fbe 100644
}
_onDestroy() {
for (let i = i; i < this._workspaceManagerSignals.length; i++)
for (let i = 0; i < this._workspaceManagerSignals.length; i++)
global.workspace_manager.disconnect(this._workspaceManagerSignals[i]);
- if (this._settingsChangedId) {
@ -3748,10 +3748,10 @@ index aad2716a..7b3c6fbe 100644
}
});
--
2.44.0
2.47.0
From 20a2122ab7a435cb1a0840747a5d13be0d838a9e Mon Sep 17 00:00:00 2001
From f810340e1e7ffd7c1964ec950be8b0585afe9e7f 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 28/29] workspace-indicator: Make previews configurable
@ -3898,7 +3898,7 @@ index 00000000..c7c634ca
+ </schema>
+</schemalist>
diff --git a/extensions/workspace-indicator/workspaceIndicator.js b/extensions/workspace-indicator/workspaceIndicator.js
index 7b3c6fbe..9d566f41 100644
index ed5645db..14359a0e 100644
--- a/extensions/workspace-indicator/workspaceIndicator.js
+++ b/extensions/workspace-indicator/workspaceIndicator.js
@@ -22,8 +22,6 @@ const TOOLTIP_ANIMATION_TIME = 150;
@ -3966,10 +3966,10 @@ index bd39ab61..4d551780 100644
+extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml
extensions/workspace-indicator/workspaceIndicator.js
--
2.44.0
2.47.0
From 597ed15f9e4a1fd6eeaaedaae59db30c4d379c3f Mon Sep 17 00:00:00 2001
From 952d2ca4e3e5b35b3a25336506b06ef0dca734a9 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 29/29] window-list: Expose workspace preview option
@ -3998,5 +3998,5 @@ index e35990ff..79cd1355 100644
});
--
2.44.0
2.47.0

View File

@ -0,0 +1,206 @@
From 984a2672b4c4c41d9dab85c068f76efa98f81a56 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 17 Dec 2024 01:09:34 +0100
Subject: [PATCH] window-list: Add attention indicator
Some X11 clients still rely on the traditional urgent/demand-attention
hints instead of notifications to request the user's attention.
Support these by adding a visual indication to the corresponding
buttons, based on the visual indicator in libadwaita's tabs.
Closes: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/543
---
extensions/window-list/extension.js | 90 +++++++++++++++++++++++++--
extensions/window-list/stylesheet.css | 9 +++
2 files changed, 95 insertions(+), 4 deletions(-)
diff --git a/extensions/window-list/extension.js b/extensions/window-list/extension.js
index bb9ca80f..477ed8fe 100644
--- a/extensions/window-list/extension.js
+++ b/extensions/window-list/extension.js
@@ -160,23 +160,30 @@ const TitleWidget = GObject.registerClass({
GObject.ParamFlags.READWRITE,
false),
},
-}, class TitleWidget extends St.BoxLayout {
+}, class TitleWidget extends St.Widget {
_init() {
super._init({
+ layout_manager: new Clutter.BinLayout(),
+ x_expand: true,
+ y_expand: true,
+ });
+
+ const hbox = new St.BoxLayout({
style_class: 'window-button-box',
x_expand: true,
y_expand: true,
});
+ this.add_child(hbox);
this._icon = new St.Bin({
style_class: 'window-button-icon',
});
- this.add_child(this._icon);
+ hbox.add_child(this._icon);
this._label = new St.Label({
y_align: Clutter.ActorAlign.CENTER,
});
- this.add_child(this._label);
+ hbox.add_child(this._label);
this.label_actor = this._label;
this.bind_property('abstract-label',
@@ -189,11 +196,28 @@ const TitleWidget = GObject.registerClass({
x_expand: true,
y_expand: true,
});
- this.add_child(this._abstractLabel);
+ hbox.add_child(this._abstractLabel);
this.bind_property('abstract-label',
this._abstractLabel, 'visible',
GObject.BindingFlags.SYNC_CREATE);
+
+ this._attentionIndicator = new St.Widget({
+ style_class: 'window-button-attention-indicator',
+ x_expand: true,
+ y_expand: true,
+ y_align: Clutter.ActorAlign.END,
+ scale_x: 0,
+ });
+ this._attentionIndicator.set_pivot_point(0.5, 0.5);
+ this.add_child(this._attentionIndicator);
+ }
+
+ setNeedsAttention(enable) {
+ this._attentionIndicator.ease({
+ scaleX: enable ? 0.4 : 0,
+ duration: 300,
+ });
}
});
@@ -219,7 +243,12 @@ class WindowTitle extends TitleWidget {
'notify::title', this._updateTitle.bind(this));
this._notifyMinimizedId = this._metaWindow.connect(
'notify::minimized', this._minimizedChanged.bind(this));
+ this._notifyDemandsAttentionId = this._metaWindow.connect(
+ 'notify::demands-attention', this._updateNeedsAttention.bind(this));
+ this._notifyUrgentId = this._metaWindow.connect(
+ 'notify::urgent', this._updateNeedsAttention.bind(this));
this._minimizedChanged();
+ this._updateNeedsAttention();
}
_minimizedChanged() {
@@ -227,6 +256,11 @@ class WindowTitle extends TitleWidget {
this._updateTitle();
}
+ _updateNeedsAttention() {
+ const { urgent, demandsAttention } = this._metaWindow;
+ this.setNeedsAttention(urgent || demandsAttention);
+ }
+
_updateTitle() {
if (!this._metaWindow.title)
return;
@@ -272,6 +306,8 @@ class WindowTitle extends TitleWidget {
this._metaWindow.disconnect(this._notifyMinimizedId);
this._metaWindow.disconnect(this._notifyWmClass);
this._metaWindow.disconnect(this._notifyAppId);
+ this._metaWindow.disconnect(this._notifyDemandsAttentionId);
+ this._metaWindow.disconnect(this._notifyUrgentId);
}
});
@@ -281,6 +317,7 @@ class AppTitle extends TitleWidget {
super._init();
this._app = app;
+ this._windows = new Map();
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
this._label.text = app.get_name();
@@ -291,6 +328,10 @@ class AppTitle extends TitleWidget {
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
});
+ this._windowsChangedId = this._app.connect(
+ 'windows-changed', this._onWindowsChanged.bind(this));
+ this._onWindowsChanged();
+
this.connect('destroy', this._onDestroy.bind(this));
}
@@ -299,6 +340,47 @@ class AppTitle extends TitleWidget {
this._textureCache.disconnect(this._iconThemeChangedId);
this._iconThemeChangedId = 0;
this._textureCache = null;
+
+ for (const [window, ids] of this._windows)
+ ids.forEach(id => window.disconnect(id));
+ this._windows.clear();
+ this._app.disconnect(this._windowsChangedId);
+ }
+
+ _onWindowsChanged() {
+ const windows = this._app.get_windows();
+ const removed = [...this._windows].filter(w => !windows.includes(w));
+ removed.forEach(w => this._untrackWindow(w));
+ windows.forEach(w => this._trackWindow(w));
+ this._updateNeedsAttention();
+ }
+
+ _trackWindow(window) {
+ if (this._windows.has(window))
+ return;
+
+ const signals = [
+ window.connect('notify::urgent',
+ () => this._updateNeedsAttention()),
+ window.connect('notify::demands-attention',
+ () => this._updateNeedsAttention()),
+ ];
+ this._windows.set(window, signals);
+ }
+
+ _untrackWindow(window) {
+ if (!this._windows.has(window))
+ return;
+
+ const ids = this._windows.get(window);
+ ids.forEach(id => window.disconnect(id));
+ this._windows.delete(window);
+ }
+
+ _updateNeedsAttention() {
+ const needsAttention =
+ [...this._windows.keys()].some(w => w.urgent || w.demandsAttention);
+ this.setNeedsAttention(needsAttention);
}
});
diff --git a/extensions/window-list/stylesheet.css b/extensions/window-list/stylesheet.css
index 4c06ebc0..45b42065 100644
--- a/extensions/window-list/stylesheet.css
+++ b/extensions/window-list/stylesheet.css
@@ -103,3 +103,12 @@
border-radius: 99px;
margin: 6px;
}
+
+.window-button-attention-indicator {
+ background-color: rgba(27, 106, 203, 1.0);
+ height: 2px;
+}
+
+.window-button.minimized .window-button-attention-indicator {
+ background-color: rgba(27, 106, 203, 0.6);
+}
--
2.47.1

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@
Name: gnome-shell-extensions
Version: 40.7
Release: 19%{?dist}
Release: 25%{?dist}
Summary: Modify and extend GNOME Shell functionality and behavior
License: GPLv2+
@ -47,8 +47,11 @@ Patch024: 0001-desktop-icons-Notify-icon-drags.patch
Patch025: prefer-window-icon.patch
Patch026: 0001-desktop-icons-Handle-touch-events.patch
Patch027: more-ws-previews.patch
Patch028: 0001-Add-move-clock-extension.patch
Patch028: 0001-Add-move-notifications-extension.patch
Patch029: 0001-workspace-indicator-Re-fittsify-workspace-previews.patch
Patch030: window-list-reordering.patch
Patch031: 0001-dash-to-panel-Remove-faulty-version-check.patch
Patch032: window-list-attention-indicator.patch
%description
GNOME Shell Extensions is a collection of extensions providing additional and
@ -66,7 +69,7 @@ Enabled extensions:
* gesture-inhibitor
* launch-new-instance
* heads-up-display
* move-clock
* move-notifications
* native-window-placement
* panel-favorites
* places-menu
@ -205,13 +208,13 @@ This GNOME Shell extension modifies the behavior of clicking in the dash and app
launcher to always launch a new application instance.
%package -n %{pkg_prefix}-move-clock
Summary: Move GNOME Shell notification menu to the right
%package -n %{pkg_prefix}-move-notifications
Summary: Move GNOME Shell notifications
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}
%description -n %{pkg_prefix}-move-clock
This GNOME Shell extension moves the notification menu to the right.
%description -n %{pkg_prefix}-move-notifications
This GNOME Shell extension moves notification banners to a different position
%package -n %{pkg_prefix}-heads-up-display
@ -407,8 +410,9 @@ workspaces.
%{_datadir}/gnome-shell/extensions/launch-new-instance*/
%files -n %{pkg_prefix}-move-clock
%{_datadir}/gnome-shell/extensions/move-clock*/
%files -n %{pkg_prefix}-move-notifications
%{_datadir}/gnome-shell/extensions/move-notifications*/
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.move-notifications.gschema.xml
%files -n %{pkg_prefix}-heads-up-display
@ -467,6 +471,30 @@ workspaces.
%changelog
* Wed Jan 08 2025 Florian Müllner <fmuellner@redhat.com> - 40.7-25
- Indicate urgency-hint in window-list
Resolves: RHEL-73146
* Wed Dec 18 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-24
- Change "move-clock" to "move-notifications"
Resolves: RHEL-33429
* Mon Dec 02 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-23
- Fix app grid with dash-to-panel extension
Resolves: RHEL-69665
* Tue Nov 19 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-22
- Fix another bug in window-list reordering backport
Resolves: RHEL-22692
* Fri Nov 15 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-21
- Fix bug in window-list reordering backport
Resolves: RHEL-22692
* Thu Sep 26 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-20
- Allow reordering items in window-list
Resolves: RHEL-22692
* Tue Jul 02 2024 Florian Müllner <fmuellner@redhat.com> - 40.7-19
- Extend workspace buttons to screen edge
Resolves: RHEL-43545