Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gnome-shell-extensions for 
openSUSE:Factory checked in at 2026-04-21 12:46:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-shell-extensions (Old)
 and      /work/SRC/openSUSE:Factory/.gnome-shell-extensions.new.11940 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gnome-shell-extensions"

Tue Apr 21 12:46:16 2026 rev:151 rq:1348423 version:50.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gnome-shell-extensions/gnome-shell-extensions.changes
    2026-04-10 17:55:08.055087932 +0200
+++ 
/work/SRC/openSUSE:Factory/.gnome-shell-extensions.new.11940/gnome-shell-extensions.changes
 2026-04-21 12:48:08.330682634 +0200
@@ -1,0 +2,7 @@
+Thu Apr 16 06:10:59 UTC 2026 - Bjørn Lie <[email protected]>
+
+- Update to version 50.1:
+  + Misc. cleanups and bug fixes
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  gnome-shell-extensions-50.0.tar.xz

New:
----
  gnome-shell-extensions-50.1.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gnome-shell-extensions.spec ++++++
--- /var/tmp/diff_new_pack.XE4nTr/_old  2026-04-21 12:48:09.394726772 +0200
+++ /var/tmp/diff_new_pack.XE4nTr/_new  2026-04-21 12:48:09.410727436 +0200
@@ -19,7 +19,7 @@
 
 %global __requires_exclude typelib\\(Meta\\)
 Name:           gnome-shell-extensions
-Version:        50.0
+Version:        50.1
 Release:        0
 Summary:        A collection of extensions for GNOME Shell
 License:        GPL-2.0-or-later

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.XE4nTr/_old  2026-04-21 12:48:09.490730754 +0200
+++ /var/tmp/diff_new_pack.XE4nTr/_new  2026-04-21 12:48:09.510731584 +0200
@@ -1,6 +1,6 @@
-mtime: 1774255375
-commit: e9afe12f63bb76f668d1c91cc44f8ac369c49db4f9c4bb7642805919fdf721bf
+mtime: 1776319922
+commit: 7bd4a4f3acca1cd2cfeeaa1e3548674fdd22ad8bde2ec7a249b812b6299e5533
 url: https://src.opensuse.org/GNOME/gnome-shell-extensions
-revision: e9afe12f63bb76f668d1c91cc44f8ac369c49db4f9c4bb7642805919fdf721bf
+revision: 7bd4a4f3acca1cd2cfeeaa1e3548674fdd22ad8bde2ec7a249b812b6299e5533
 projectscmsync: https://src.opensuse.org/GNOME/_ObsPrj
 

++++++ _service ++++++
--- /var/tmp/diff_new_pack.XE4nTr/_old  2026-04-21 12:48:09.550733243 +0200
+++ /var/tmp/diff_new_pack.XE4nTr/_new  2026-04-21 12:48:09.570734073 +0200
@@ -3,7 +3,7 @@
   <service name="obs_scm" mode="manual">
     <param name="scm">git</param>
     <param 
name="url">https://gitlab.gnome.org/GNOME/gnome-shell-extensions.git</param>
-    <param name="revision">50.0</param>
+    <param name="revision">50.1</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-04-17 11:55:25.000000000 +0200
@@ -0,0 +1,5 @@
+*.obscpio
+*.osc
+_build.*
+.pbuild
+osc-collab.*

++++++ gnome-shell-extensions-50.0.tar.xz -> gnome-shell-extensions-50.1.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-shell-extensions-50.0/NEWS 
new/gnome-shell-extensions-50.1/NEWS
--- old/gnome-shell-extensions-50.0/NEWS        2026-03-14 18:17:08.000000000 
+0100
+++ new/gnome-shell-extensions-50.1/NEWS        2026-04-14 16:37:47.000000000 
+0200
@@ -1,3 +1,13 @@
+50.1
+====
+* Misc. cleanups and bug fixes [Florian; !449]
+
+Contributors:
+  Florian Müllner
+
+Translators:
+  Марко Костић [sr]
+
 50.0
 ====
 * Bump version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/apps-menu/extension.js 
new/gnome-shell-extensions-50.1/extensions/apps-menu/extension.js
--- old/gnome-shell-extensions-50.0/extensions/apps-menu/extension.js   
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/apps-menu/extension.js   
2026-04-14 16:37:47.000000000 +0200
@@ -11,7 +11,6 @@
 import GLib from 'gi://GLib';
 import GMenu from 'gi://GMenu';
 import GObject from 'gi://GObject';
-import Gtk from 'gi://Gtk';
 import Meta from 'gi://Meta';
 import Shell from 'gi://Shell';
 import St from 'gi://St';
@@ -24,8 +23,6 @@
 import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js';
 import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js';
 
-const appSys = Shell.AppSystem.get_default();
-
 const APPLICATION_ICON_SIZE = 32;
 const HORIZ_FACTOR = 5;
 const MENU_HEIGHT_OFFSET = 132;
@@ -245,9 +242,8 @@
         this._desktop = null;
         this._desktopDestroyedId = 0;
 
-        this._windowAddedId =
-            global.window_group.connect('child-added',
-                this._onWindowAdded.bind(this));
+        global.window_group.connectObject('child-added',
+            this._onWindowAdded.bind(this), this);
 
         global.get_window_actors().forEach(a => {
             this._onWindowAdded(a.get_parent(), a);
@@ -373,7 +369,7 @@
         GObject.registerClass(this);
     }
 
-    constructor() {
+    constructor(settings) {
         super(1.0, null, false);
 
         this.setMenu(new ApplicationsMenu(this, 1.0, St.Side.TOP, this));
@@ -384,6 +380,8 @@
         // role ATK_ROLE_MENU like other elements of the panel.
         this.accessible_role = Atk.Role.LABEL;
 
+        this._appSys = Shell.AppSystem.get_default();
+
         this._label = new St.Label({
             text: _('Apps'),
             y_expand: true,
@@ -401,20 +399,19 @@
 
         Main.wm.addKeybinding(
             'apps-menu-toggle-menu',
-            Extension.lookupByURL(import.meta.url).getSettings(),
+            settings,
             Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
             Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW,
             () => this.menu.toggle());
 
         this._desktopTarget = new DesktopTarget();
-        this._desktopTarget.connect('app-dropped', () => {
-            this.menu.close();
-        });
-        this._desktopTarget.connect('desktop-changed', () => {
-            this._applicationsButtons.forEach(item => {
-                item.setDragEnabled(this._desktopTarget.hasDesktop);
-            });
-        });
+        this._desktopTarget.connectObject(
+            'app-dropped', () => this.menu.close(),
+            'desktop-changed', () => {
+                this._applicationsButtons.forEach(item => {
+                    item.setDragEnabled(this._desktopTarget.hasDesktop);
+                });
+            }, this);
 
         this._tree = new GMenu.Tree({menu_basename: 'applications.menu'});
         this._tree.connectObject('changed',
@@ -424,7 +421,7 @@
         this.reloadFlag = false;
         this._createLayout();
         this._display();
-        appSys.connectObject('installed-changed',
+        this._appSys.connectObject('installed-changed',
             () => this._onTreeChanged(), this);
     }
 
@@ -444,6 +441,7 @@
 
         Main.wm.removeKeybinding('apps-menu-toggle-menu');
 
+        this._desktopTarget.disconnectObject(this);
         this._desktopTarget.destroy();
     }
 
@@ -451,7 +449,7 @@
         const symbol = event.get_key_symbol();
         if (symbol === Clutter.KEY_Left || symbol === Clutter.KEY_Right) {
             const direction = symbol === Clutter.KEY_Left
-                ? Gtk.DirectionType.LEFT : Gtk.DirectionType.RIGHT;
+                ? St.DirectionType.LEFT : St.DirectionType.RIGHT;
             if (this.menu.actor.navigate_focus(global.stage.key_focus, 
direction, false))
                 return Clutter.EVENT_STOP;
         }
@@ -487,7 +485,7 @@
                 } catch {
                     continue;
                 }
-                let app = appSys.lookup_app(id);
+                let app = this._appSys.lookup_app(id);
                 if (!app)
                     app = new Shell.App({app_info: entry.get_app_info()});
                 if (app.get_app_info().should_show())
@@ -634,7 +632,7 @@
             applist = this.applicationsByCategory[categoryMenuId];
         } else {
             applist = global.settings.get_strv('favorite-apps')
-               .map(id => appSys.lookup_app(id))
+               .map(id => this._appSys.lookup_app(id))
                .filter(app => app);
         }
 
@@ -644,7 +642,7 @@
 
 export default class AppsMenuExtension extends Extension {
     enable() {
-        this._appsMenuButton = new ApplicationsButton();
+        this._appsMenuButton = new ApplicationsButton(this.getSettings());
         const index = Main.sessionMode.panel.left.indexOf('activities') + 1;
         Main.panel.addToStatusArea(
             'apps-menu', this._appsMenuButton, index, 'left');
@@ -653,6 +651,6 @@
     disable() {
         Main.panel.menuManager.removeMenu(this._appsMenuButton.menu);
         this._appsMenuButton.destroy();
-        delete this._appsMenuButton;
+        this._appsMenuButton = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/auto-move-windows/extension.js 
new/gnome-shell-extensions-50.1/extensions/auto-move-windows/extension.js
--- old/gnome-shell-extensions-50.0/extensions/auto-move-windows/extension.js   
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/auto-move-windows/extension.js   
2026-04-14 16:37:47.000000000 +0200
@@ -6,7 +6,7 @@
 
 import Shell from 'gi://Shell';
 
-import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js';
+import {Extension, InjectionManager} from 
'resource:///org/gnome/shell/extensions/extension.js';
 import * as Main from 'resource:///org/gnome/shell/ui/main.js';
 
 class WindowMover {
@@ -56,6 +56,8 @@
 
     destroy() {
         this._appSystem.disconnectObject(this);
+        this._appSystem = null;
+
         this._settings.disconnectObject(this);
         this._settings = null;
 
@@ -99,16 +101,19 @@
 
 export default class AutoMoveExtension extends Extension {
     enable() {
-        this._prevCheckWorkspaces = Main.wm._workspaceTracker._checkWorkspaces;
-        Main.wm._workspaceTracker._checkWorkspaces =
-            this._getCheckWorkspaceOverride(this._prevCheckWorkspaces);
+        this._injectionManager = new InjectionManager();
+        this._injectionManager.overrideMethod(Main.wm._workspaceTracker, 
'_checkWorkspaces',
+            originalMethod => this._getCheckWorkspaceOverride(originalMethod));
+
         this._windowMover = new WindowMover(this.getSettings());
     }
 
     disable() {
-        Main.wm._workspaceTracker._checkWorkspaces = this._prevCheckWorkspaces;
+        this._injectionManager.clear();
+        this._injectionManager = null;
+
         this._windowMover.destroy();
-        delete this._windowMover;
+        this._windowMover = null;
     }
 
     _getCheckWorkspaceOverride(originalMethod) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/drive-menu/extension.js 
new/gnome-shell-extensions-50.1/extensions/drive-menu/extension.js
--- old/gnome-shell-extensions-50.0/extensions/drive-menu/extension.js  
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/drive-menu/extension.js  
2026-04-14 16:37:47.000000000 +0200
@@ -206,6 +206,6 @@
 
     disable() {
         this._indicator.destroy();
-        delete this._indicator;
+        this._indicator = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/launch-new-instance/extension.js 
new/gnome-shell-extensions-50.1/extensions/launch-new-instance/extension.js
--- old/gnome-shell-extensions-50.0/extensions/launch-new-instance/extension.js 
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/launch-new-instance/extension.js 
2026-04-14 16:37:47.000000000 +0200
@@ -7,11 +7,8 @@
 import {InjectionManager} from 
'resource:///org/gnome/shell/extensions/extension.js';
 
 export default class Extension {
-    constructor() {
-        this._injectionManager = new InjectionManager();
-    }
-
     enable() {
+        this._injectionManager = new InjectionManager();
         this._injectionManager.overrideMethod(AppIcon.prototype, 'activate',
             originalMethod => {
                 return function () {
@@ -23,5 +20,6 @@
 
     disable() {
         this._injectionManager.clear();
+        this._injectionManager = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/native-window-placement/extension.js 
new/gnome-shell-extensions-50.1/extensions/native-window-placement/extension.js
--- 
old/gnome-shell-extensions-50.0/extensions/native-window-placement/extension.js 
    2026-03-14 18:17:08.000000000 +0100
+++ 
new/gnome-shell-extensions-50.1/extensions/native-window-placement/extension.js 
    2026-04-14 16:37:47.000000000 +0200
@@ -242,18 +242,13 @@
 }
 
 export default class NativeWindowPlacementExtension extends Extension {
-    constructor(metadata) {
-        super(metadata);
-
-        this._injectionManager = new InjectionManager();
-    }
-
     enable() {
         const settings = this.getSettings();
 
         const layoutProto = Workspace.WorkspaceLayout.prototype;
         const previewProto = WindowPreview.prototype;
 
+        this._injectionManager = new InjectionManager();
         this._injectionManager.overrideMethod(layoutProto, 
'_createBestLayout', () => {
             /* eslint-disable no-invalid-this */
             return function () {
@@ -299,6 +294,8 @@
 
     disable() {
         this._injectionManager.clear();
+        this._injectionManager = null;
+
         global.stage.queue_relayout();
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/places-menu/extension.js 
new/gnome-shell-extensions-50.1/extensions/places-menu/extension.js
--- old/gnome-shell-extensions-50.0/extensions/places-menu/extension.js 
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/places-menu/extension.js 
2026-04-14 16:37:47.000000000 +0200
@@ -88,9 +88,9 @@
         for (let i = 0; i < SECTIONS.length; i++) {
             const id = SECTIONS[i];
             this._sections[id] = new PopupMenu.PopupMenuSection();
-            this.placesManager.connect(`${id}-updated`, () => {
-                this._redisplay(id);
-            });
+            this.placesManager.connectObject(
+                `${id}-updated`, () => this._redisplay(id),
+                this);
 
             this._create(id);
             this.menu.addMenuItem(this._sections[id]);
@@ -99,6 +99,7 @@
     }
 
     _onDestroy() {
+        this.placesManager.disconnectObject(this);
         this.placesManager.destroy();
 
         super._onDestroy();
@@ -131,6 +132,6 @@
 
     disable() {
         this._indicator.destroy();
-        delete this._indicator;
+        this._indicator = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/status-icons/extension.js 
new/gnome-shell-extensions-50.1/extensions/status-icons/extension.js
--- old/gnome-shell-extensions-50.0/extensions/status-icons/extension.js        
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/status-icons/extension.js        
2026-04-14 16:37:47.000000000 +0200
@@ -74,10 +74,10 @@
 
     enable() {
         this._tray = new Shell.TrayManager();
-        this._tray.connect('tray-icon-added',
-            this._onTrayIconAdded.bind(this));
-        this._tray.connect('tray-icon-removed',
-            this._onTrayIconRemoved.bind(this));
+        this._tray.connectObject(
+            'tray-icon-added', this._onTrayIconAdded.bind(this),
+            'tray-icon-removed', this._onTrayIconRemoved.bind(this),
+            this);
         this._tray.manage_screen(Main.panel);
     }
 
@@ -86,6 +86,7 @@
         this._icons.clear();
 
         this._tray.unmanage_screen();
+        this._tray.disconnectObject(this);
         this._tray = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/system-monitor/extension.js 
new/gnome-shell-extensions-50.1/extensions/system-monitor/extension.js
--- old/gnome-shell-extensions-50.0/extensions/system-monitor/extension.js      
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/system-monitor/extension.js      
2026-04-14 16:37:47.000000000 +0200
@@ -39,15 +39,13 @@
         GObject.registerClass(this);
     }
 
-    constructor(iconName, accessibleName) {
+    constructor(iconDir, iconName, accessibleName) {
         super({
             style_class: 'system-monitor-stat-section',
             accessibleName,
         });
 
-        const ext = Extension.lookupByURL(import.meta.url);
-        const file =
-            ext.dir.resolve_relative_path(`icons/${iconName}.svg`);
+        const file = iconDir.get_child(`${iconName}.svg`);
 
         this._icon = new St.Icon({
             style_class: 'system-monitor-stat-section-icon',
@@ -131,8 +129,8 @@
 
     #prevCpu = new GTop.glibtop_cpu();
 
-    constructor() {
-        super('processor-symbolic', _('CPU stats'));
+    constructor(iconDir) {
+        super(iconDir, 'processor-symbolic', _('CPU stats'));
     }
 
     _getLoadValue() {
@@ -155,8 +153,8 @@
         GObject.registerClass(this);
     }
 
-    constructor() {
-        super('memory-symbolic', _('Memory stats'));
+    constructor(iconDir) {
+        super(iconDir, 'memory-symbolic', _('Memory stats'));
     }
 
     _getLoadValue() {
@@ -173,8 +171,8 @@
         GObject.registerClass(this);
     }
 
-    constructor() {
-        super('swap-symbolic', _('Swap stats'));
+    constructor(iconDir) {
+        super(iconDir, 'swap-symbolic', _('Swap stats'));
     }
 
     _getLoadValue() {
@@ -332,8 +330,8 @@
         GObject.registerClass(this);
     }
 
-    constructor() {
-        super('upload-symbolic', _('Upload stats'));
+    constructor(iconDir) {
+        super(iconDir, 'upload-symbolic', _('Upload stats'));
     }
 
     _getBytes(netload) {
@@ -346,8 +344,8 @@
         GObject.registerClass(this);
     }
 
-    constructor() {
-        super('download-symbolic', _('Download stats'));
+    constructor(iconDir) {
+        super(iconDir, 'download-symbolic', _('Download stats'));
     }
 
     _getBytes(netload) {
@@ -360,11 +358,11 @@
         GObject.registerClass(this);
     }
 
-    constructor(settings) {
+    constructor(extension) {
         GTop.glibtop_init();
         super(0.5, _('System stats'));
 
-        this._settings = settings;
+        this._settings = extension.getSettings();
         this.connect('destroy',
             () => (this._settings = null));
 
@@ -379,31 +377,33 @@
         });
         box.add_child(this._placeholder);
 
-        this._cpuSection = new CpuSection();
+        const iconDir = extension.dir.resolve_relative_path('icons');
+
+        this._cpuSection = new CpuSection(iconDir);
         this._settings.bind('show-cpu',
             this._cpuSection, 'visible',
             Gio.SettingsBindFlags.GET);
         box.add_child(this._cpuSection);
 
-        this._memSection = new MemSection();
+        this._memSection = new MemSection(iconDir);
         this._settings.bind('show-memory',
             this._memSection, 'visible',
             Gio.SettingsBindFlags.GET);
         box.add_child(this._memSection);
 
-        this._swapSection = new SwapSection();
+        this._swapSection = new SwapSection(iconDir);
         this._settings.bind('show-swap',
             this._swapSection, 'visible',
             Gio.SettingsBindFlags.GET);
         box.add_child(this._swapSection);
 
-        this._ulSection = new UploadSection();
+        this._ulSection = new UploadSection(iconDir);
         this._settings.bind('show-upload',
             this._ulSection, 'visible',
             Gio.SettingsBindFlags.GET);
         box.add_child(this._ulSection);
 
-        this._dlSection = new DownloadSection();
+        this._dlSection = new DownloadSection(iconDir);
         this._settings.bind('show-download',
             this._dlSection, 'visible',
             Gio.SettingsBindFlags.GET);
@@ -479,7 +479,7 @@
 
 export default class SystemMonitorExtension extends Extension {
     enable() {
-        this._indicator = new Indicator(this.getSettings());
+        this._indicator = new Indicator(this);
         Main.panel.addToStatusArea(this.uuid, this._indicator);
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/window-list/extension.js 
new/gnome-shell-extensions-50.1/extensions/window-list/extension.js
--- old/gnome-shell-extensions-50.0/extensions/window-list/extension.js 
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/window-list/extension.js 
2026-04-14 16:37:47.000000000 +0200
@@ -8,7 +8,6 @@
 import Gio from 'gi://Gio';
 import GLib from 'gi://GLib';
 import GObject from 'gi://GObject';
-import Gtk from 'gi://Gtk';
 import Meta from 'gi://Meta';
 import Mtk from 'gi://Mtk';
 import Shell from 'gi://Shell';
@@ -543,7 +542,7 @@
 
         const event = Clutter.get_current_event();
         if (event && event.type() === Clutter.EventType.KEY_RELEASE)
-            menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, 
false);
+            menu.actor.navigate_focus(null, St.DirectionType.TAB_FORWARD, 
false);
     }
 
     _minimizeOrActivateWindow(window) {
@@ -555,18 +554,6 @@
             window.activate(global.get_current_time());
     }
 
-    _onMenuStateChanged(menu, isOpen) {
-        if (isOpen)
-            return;
-
-        const extension = Extension.lookupByURL(import.meta.url);
-
-        const [x, y] = global.get_pointer();
-        const actor = global.stage.get_actor_at_pos(Clutter.PickMode.REACTIVE, 
x, y);
-        if (extension.someWindowListContains(actor))
-            actor.sync_hover();
-    }
-
     _onPopupMenu(_actor) {
         if (!this._canOpenPopupMenu() || this._contextMenu.isOpen)
             return;
@@ -644,8 +631,6 @@
         this.label_actor = this._windowTitle.label_actor;
 
         this._contextMenu = new WindowContextMenu(this, this.metaWindow);
-        this._contextMenu.connect('open-state-changed',
-            this._onMenuStateChanged.bind(this));
         this._contextMenu.actor.hide();
         this._contextMenuManager.addMenu(this._contextMenu);
         Main.uiGroup.add_child(this._contextMenu.actor);
@@ -781,8 +766,6 @@
 
         this._menuManager = new PopupMenu.PopupMenuManager(this);
         this._menu = new PopupMenu.PopupMenu(this, 0.5, St.Side.BOTTOM);
-        this._menu.connect('open-state-changed',
-            this._onMenuStateChanged.bind(this));
         this._menu.actor.hide();
         this._menu.connect('activate', this._onMenuActivate.bind(this));
         this._menuManager.addMenu(this._menu);
@@ -859,8 +842,6 @@
         this._button.child = this._createTitleActor();
         this.label_actor = this._button.child.label_actor;
 
-        this._contextMenu.connect(
-            'open-state-changed', this._onMenuStateChanged.bind(this));
         Main.uiGroup.add_child(this._contextMenu.actor);
         this._contextMenu.actor.hide();
         this._contextMenuManager.addMenu(this._contextMenu);
@@ -931,7 +912,7 @@
         GObject.registerClass(this);
     }
 
-    constructor(perMonitor, monitor, settings) {
+    constructor(perMonitor, monitor, extension) {
         super({
             name: 'panel',
             style_class: 'bottom-panel solid',
@@ -963,7 +944,7 @@
 
         this._workspaceIndicator = new BottomWorkspaceIndicator({
             baseStyleClass: 'window-list-workspace-indicator',
-            settings,
+            extension,
         });
         indicatorsBox.add_child(this._workspaceIndicator.container);
 
@@ -1077,7 +1058,7 @@
 
         this._delegate = this;
 
-        this._settings = settings;
+        this._settings = extension.getSettings();
         this._settings.connectObject('changed::grouping-mode',
             () => this._groupingModeChanged(), this);
         this._grouped = undefined;
@@ -1539,7 +1520,7 @@
 
         Main.layoutManager.monitors.forEach(monitor => {
             if (showOnAllMonitors || monitor === 
Main.layoutManager.primaryMonitor)
-                this._windowLists.push(new WindowList(showOnAllMonitors, 
monitor, this.getSettings()));
+                this._windowLists.push(new WindowList(showOnAllMonitors, 
monitor, this));
         });
     }
 
@@ -1557,8 +1538,4 @@
         });
         this._windowLists = null;
     }
-
-    someWindowListContains(actor) {
-        return this._windowLists.some(list => list.contains(actor));
-    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/windowsNavigator/extension.js 
new/gnome-shell-extensions-50.1/extensions/windowsNavigator/extension.js
--- old/gnome-shell-extensions-50.0/extensions/windowsNavigator/extension.js    
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/windowsNavigator/extension.js    
2026-04-14 16:37:47.000000000 +0200
@@ -20,13 +20,10 @@
 const WINDOW_SLOT = 4;
 
 export default class Extension {
-    constructor() {
-        this._injectionManager = new InjectionManager();
-    }
-
     enable() {
         const previewProto = WindowPreview.prototype;
 
+        this._injectionManager = new InjectionManager();
         this._injectionManager.overrideMethod(previewProto, '_init', 
originalMethod => {
             /* eslint-disable no-invalid-this */
             return function (...args) {
@@ -293,5 +290,6 @@
 
     disable() {
         this._injectionManager.clear();
+        this._injectionManager = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/workspace-indicator/extension.js 
new/gnome-shell-extensions-50.1/extensions/workspace-indicator/extension.js
--- old/gnome-shell-extensions-50.0/extensions/workspace-indicator/extension.js 
2026-03-14 18:17:08.000000000 +0100
+++ new/gnome-shell-extensions-50.1/extensions/workspace-indicator/extension.js 
2026-04-14 16:37:47.000000000 +0200
@@ -13,13 +13,13 @@
 export default class WorkspaceIndicatorExtension extends Extension {
     enable() {
         this._indicator = new WorkspaceIndicator({
-            settings: this.getSettings(),
+            extension: this,
         });
         Main.panel.addToStatusArea('workspace-indicator', this._indicator);
     }
 
     disable() {
         this._indicator.destroy();
-        delete this._indicator;
+        this._indicator = null;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-shell-extensions-50.0/extensions/workspace-indicator/workspaceIndicator.js
 
new/gnome-shell-extensions-50.1/extensions/workspace-indicator/workspaceIndicator.js
--- 
old/gnome-shell-extensions-50.0/extensions/workspace-indicator/workspaceIndicator.js
        2026-03-14 18:17:08.000000000 +0100
+++ 
new/gnome-shell-extensions-50.1/extensions/workspace-indicator/workspaceIndicator.js
        2026-04-14 16:37:47.000000000 +0200
@@ -11,7 +11,7 @@
 import Shell from 'gi://Shell';
 import St from 'gi://St';
 
-import {Extension, gettext as _} from 
'resource:///org/gnome/shell/extensions/extension.js';
+import {gettext as _} from 
'resource:///org/gnome/shell/extensions/extension.js';
 
 import * as DND from 'resource:///org/gnome/shell/ui/dnd.js';
 import * as Main from 'resource:///org/gnome/shell/ui/main.js';
@@ -506,7 +506,7 @@
 }
 
 class WorkspacesMenu extends PopupMenu.PopupMenu {
-    constructor(sourceActor) {
+    constructor(sourceActor, extension) {
         super(sourceActor, 0.5, St.Side.TOP);
 
         this.actor.add_style_class_name(`${baseStyleClassName}-menu`);
@@ -526,7 +526,6 @@
         this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
 
         this.addAction(_('Settings'), () => {
-            const extension = Extension.lookupByURL(import.meta.url);
             extension.openPreferences();
         });
 
@@ -614,15 +613,15 @@
 
         const {
             baseStyleClass = 'workspace-indicator',
-            settings,
+            extension,
         } = params;
 
-        this._settings = settings;
+        this._settings = extension.getSettings();
 
         baseStyleClassName = baseStyleClass;
         this.add_style_class_name(baseStyleClassName);
 
-        this.setMenu(new WorkspacesMenu(this));
+        this.setMenu(new WorkspacesMenu(this, extension));
 
         const container = new St.Widget({
             layout_manager: new Clutter.BinLayout(),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-shell-extensions-50.0/meson.build 
new/gnome-shell-extensions-50.1/meson.build
--- old/gnome-shell-extensions-50.0/meson.build 2026-03-14 18:17:08.000000000 
+0100
+++ new/gnome-shell-extensions-50.1/meson.build 2026-04-14 16:37:47.000000000 
+0200
@@ -4,7 +4,7 @@
 
 project(
   'gnome-shell-extensions',
-  version: '50.0',
+  version: '50.1',
   meson_version: '>= 1.1.0',
   license: 'GPL-2.0-or-later',
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-shell-extensions-50.0/po/sr.po 
new/gnome-shell-extensions-50.1/po/sr.po
--- old/gnome-shell-extensions-50.0/po/sr.po    2026-03-14 18:17:08.000000000 
+0100
+++ new/gnome-shell-extensions-50.1/po/sr.po    2026-04-14 16:37:47.000000000 
+0200
@@ -3,15 +3,15 @@
 # This file is distributed under the same license as the 
gnome-shell-extensions package.
 # Милош Поповић <[email protected]>, 2012.
 # Мирослав Николић <[email protected]>, 2012—2017.
-# Марко М. Костић <[email protected]>, 2020-2024.
+# Марко Костић <[email protected]>, 2020-2026.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: gnome-shell-extensions master\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/";
 "issues\n"
-"POT-Creation-Date: 2024-10-27 22:37+0000\n"
-"PO-Revision-Date: 2024-11-04 08:14+0100\n"
+"POT-Creation-Date: 2026-03-03 12:50+0000\n"
+"PO-Revision-Date: 2026-03-26 10:24+0100\n"
 "Last-Translator: Марко М. Костић <[email protected]>\n"
 "Language-Team: Serbian <[email protected]>\n"
 "Language: sr\n"
@@ -21,30 +21,21 @@
 "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
 "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 "X-Project-Style: gnome\n"
-"X-Generator: Poedit 3.4.4\n"
+"X-Generator: Poedit 3.9\n"
 
-#: data/gnome-classic.desktop.in:3
+#: data/gnome-classic.desktop.in:2
 msgid "GNOME Classic"
 msgstr "Класичан Гном"
 
-#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4
-#: data/gnome-classic-xorg.desktop.in:4
+#: data/gnome-classic.desktop.in:3
 msgid "This session logs you into GNOME Classic"
 msgstr "Ова сесија вас пријављује у класичан Гном"
 
-#: data/gnome-classic-wayland.desktop.in:3
-msgid "GNOME Classic on Wayland"
-msgstr "Класичан Гном на Вејленду"
-
-#: data/gnome-classic-xorg.desktop.in:3
-msgid "GNOME Classic on Xorg"
-msgstr "Класичан Гном на Икс серверу"
-
-#: extensions/apps-menu/extension.js:126
+#: extensions/apps-menu/extension.js:118
 msgid "Favorites"
 msgstr "Омиљено"
 
-#: extensions/apps-menu/extension.js:400
+#: extensions/apps-menu/extension.js:388
 msgid "Apps"
 msgstr "Апликације"
 
@@ -60,17 +51,17 @@
 "Списак ниски од којих свака садржи иб програма (назив датотеке „.desktop“), "
 "зарез и број радног простора"
 
-#: extensions/auto-move-windows/prefs.js:159
+#: extensions/auto-move-windows/prefs.js:157
 msgid "Workspace Rules"
 msgstr "Правила радних простора"
 
-#: extensions/auto-move-windows/prefs.js:314
+#: extensions/auto-move-windows/prefs.js:312
 msgid "Add Rule"
 msgstr "Додај правило"
 
 #. TRANSLATORS: %s is the filesystem name
 #: extensions/drive-menu/extension.js:123
-#: extensions/places-menu/placeDisplay.js:218
+#: extensions/places-menu/placeDisplay.js:186
 #, javascript-format
 msgid "Ejecting drive “%s” failed:"
 msgstr "Нисам успео да избацим уређај „%s“:"
@@ -111,33 +102,40 @@
 "умањених приказа уместо испод приказа. Промена ових подешавања захтева да "
 "поново покренете Гномову шкољку."
 
-#: extensions/places-menu/extension.js:91
-#: extensions/places-menu/extension.js:94
+#: extensions/places-menu/extension.js:75
+#: extensions/places-menu/extension.js:78
 msgid "Places"
 msgstr "Места"
 
-#: extensions/places-menu/placeDisplay.js:60
+#: extensions/places-menu/placeDisplay.js:52
 #, javascript-format
 msgid "Failed to launch “%s”"
 msgstr "Нисам успео да покренем „%s“"
 
-#: extensions/places-menu/placeDisplay.js:75
+#: extensions/places-menu/placeDisplay.js:67
 #, javascript-format
 msgid "Failed to mount volume for “%s”"
 msgstr "Нисам успео да прикачим волумен за „%s“"
 
-#: extensions/places-menu/placeDisplay.js:135
-#: extensions/places-menu/placeDisplay.js:158
-msgid "Computer"
-msgstr "Рачунар"
-
-#: extensions/places-menu/placeDisplay.js:333
+#: extensions/places-menu/placeDisplay.js:314
 msgid "Home"
 msgstr "Личнo"
 
-#: extensions/places-menu/placeDisplay.js:378
-msgid "Browse Network"
-msgstr "Разгледајте мрежу"
+#: extensions/places-menu/placeDisplay.js:320
+msgid "Recent"
+msgstr "Скорашње"
+
+#: extensions/places-menu/placeDisplay.js:326
+msgid "Starred"
+msgstr "Са звездицом"
+
+#: extensions/places-menu/placeDisplay.js:346
+msgid "Network"
+msgstr "Мрежа"
+
+#: extensions/places-menu/placeDisplay.js:353
+msgid "Trash"
+msgstr "Канта"
 
 #: 
extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:14
 msgid "Cycle Screenshot Sizes"
@@ -167,35 +165,35 @@
 msgid "Download stats"
 msgstr "Статистика преузимања датотека"
 
-#: extensions/system-monitor/extension.js:364
+#: extensions/system-monitor/extension.js:365
 msgid "System stats"
 msgstr "Статистика система"
 
-#: extensions/system-monitor/extension.js:412
+#: extensions/system-monitor/extension.js:413
 msgid "Show"
 msgstr "Прикажи"
 
-#: extensions/system-monitor/extension.js:414
+#: extensions/system-monitor/extension.js:415
 msgid "CPU"
 msgstr "Процесор"
 
-#: extensions/system-monitor/extension.js:416
+#: extensions/system-monitor/extension.js:417
 msgid "Memory"
 msgstr "Меморија"
 
-#: extensions/system-monitor/extension.js:418
+#: extensions/system-monitor/extension.js:419
 msgid "Swap"
 msgstr "Свап"
 
-#: extensions/system-monitor/extension.js:420
+#: extensions/system-monitor/extension.js:421
 msgid "Upload"
 msgstr "Слање"
 
-#: extensions/system-monitor/extension.js:422
+#: extensions/system-monitor/extension.js:423
 msgid "Download"
 msgstr "Преузимање"
 
-#: extensions/system-monitor/extension.js:427
+#: extensions/system-monitor/extension.js:428
 msgid "Open System Monitor"
 msgstr "Отвори монитор система"
 
@@ -227,47 +225,47 @@
 msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
 msgstr "Назив теме који се учитава из датотеке „~/.themes/name/gnome-shell“"
 
-#: extensions/window-list/extension.js:70
+#: extensions/window-list/extension.js:98
 msgid "Close"
 msgstr "Затвори"
 
-#: extensions/window-list/extension.js:97
+#: extensions/window-list/extension.js:125
 msgid "Unminimize"
 msgstr "Поништи умањење"
 
-#: extensions/window-list/extension.js:97
+#: extensions/window-list/extension.js:125
 msgid "Minimize"
 msgstr "Умањи"
 
-#: extensions/window-list/extension.js:104
+#: extensions/window-list/extension.js:130
 msgid "Unmaximize"
 msgstr "Поништи увећање"
 
-#: extensions/window-list/extension.js:104
+#: extensions/window-list/extension.js:130
 msgid "Maximize"
 msgstr "Увећај"
 
-#: extensions/window-list/extension.js:485
+#: extensions/window-list/extension.js:719
 msgid "Minimize all"
 msgstr "Умањи све"
 
-#: extensions/window-list/extension.js:491
+#: extensions/window-list/extension.js:725
 msgid "Unminimize all"
 msgstr "Поништи умањење свега"
 
-#: extensions/window-list/extension.js:497
+#: extensions/window-list/extension.js:731
 msgid "Maximize all"
 msgstr "Увећај све"
 
-#: extensions/window-list/extension.js:505
+#: extensions/window-list/extension.js:739
 msgid "Unmaximize all"
 msgstr "Поништи увећање свега"
 
-#: extensions/window-list/extension.js:513
+#: extensions/window-list/extension.js:747
 msgid "Close all"
 msgstr "Затвори све"
 
-#: extensions/window-list/extension.js:780
+#: extensions/window-list/extension.js:999 extensions/window-list/prefs.js:23
 msgid "Window List"
 msgstr "Списак прозора"
 
@@ -285,7 +283,7 @@
 "(увек)."
 
 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:26
-#: extensions/window-list/prefs.js:70
+#: extensions/window-list/prefs.js:74
 msgid "Show windows from all workspaces"
 msgstr "Прикажи прозоре свих радних простора"
 
@@ -309,141 +307,79 @@
 msgid "Show workspace previews in window list"
 msgstr "Прикажи прегледе радних простора у списку прозора"
 
-#: extensions/window-list/prefs.js:37
+#: extensions/window-list/prefs.js:41
 msgid "Window Grouping"
 msgstr "Груписање прозора"
 
-#: extensions/window-list/prefs.js:42
+#: extensions/window-list/prefs.js:46
 msgid "Never group windows"
 msgstr "Никад не групиши прозоре"
 
-#: extensions/window-list/prefs.js:43
+#: extensions/window-list/prefs.js:47
 msgid "Group windows when space is limited"
 msgstr "Групиши прозоре када је простор ограничен"
 
-#: extensions/window-list/prefs.js:44
+#: extensions/window-list/prefs.js:48
 msgid "Always group windows"
 msgstr "Увек групиши прозоре"
 
-#: extensions/window-list/prefs.js:64
+#: extensions/window-list/prefs.js:68
 msgid "Show on all monitors"
 msgstr "Прикажи на свим мониторима"
 
-#: extensions/window-list/prefs.js:76
-msgid "Show workspace previews"
-msgstr "Прикажи прегледе радних простора"
-
-#: extensions/workspace-indicator/prefs.js:30
-msgid "Show Previews In Top Bar"
-msgstr "Прикажи прегледе у горњој траци"
-
-#: extensions/workspace-indicator/prefs.js:88
-#, javascript-format
-msgid "Workspace %d"
-msgstr "%d. радни простор"
-
-#: extensions/workspace-indicator/prefs.js:155
-msgid "Workspace Names"
-msgstr "Називи радних простора"
-
-#: extensions/workspace-indicator/prefs.js:281
-msgid "Add Workspace"
-msgstr "Додај радни простор"
-
 #: 
extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml:12
 msgid "Show workspace previews in top bar"
 msgstr "Прикажи прегледе радних простора у горњој траци"
 
-#: extensions/workspace-indicator/workspaceIndicator.js:430
-msgid "Workspace Indicator"
-msgstr "Показатељ радних простора"
-
-#~ msgid "Applications"
-#~ msgstr "Програми"
-
-#~ msgid "Application"
-#~ msgstr "Програм"
-
-#~ msgid "Create new matching rule"
-#~ msgstr "Додајте ново правило за поклапање"
-
-#~ msgid "Add"
-#~ msgstr "Додај"
-
-#~ msgid "Name"
-#~ msgstr "Назив"
-
-#~ msgid "Attach modal dialog to the parent window"
-#~ msgstr "Прикачиње прозорче родитељском прозору"
-
-#~ msgid ""
-#~ "This key overrides the key in org.gnome.mutter when running GNOME Shell."
-#~ msgstr ""
-#~ "Овај кључ превазилази кључ у „org.gnome.mutter“ када покреће Гномову "
-#~ "шкољку."
-
-#~ msgid "Arrangement of buttons on the titlebar"
-#~ msgstr "Распоред дугмића на траци наслова"
-
-#~ msgid ""
-#~ "This key overrides the key in org.gnome.desktop.wm.preferences when "
-#~ "running GNOME Shell."
-#~ msgstr ""
-#~ "Овај кључ превазилази кључ у „org.gnome.desktop.wm.preferences“ када "
-#~ "покреће Гномову шкољку."
-
-#~ msgid "Enable edge tiling when dropping windows on screen edges"
-#~ msgstr ""
-#~ "Укључује поплочавање ивице приликом отпуштања прозора на ивицама екрана"
-
-#~ msgid "Workspaces only on primary monitor"
-#~ msgstr "Радни простори само на примарном монитору"
-
-#~ msgid "Delay focus changes in mouse mode until the pointer stops moving"
-#~ msgstr ""
-#~ "Застој првог плана се мења у режиму миша док се показивач не заустави"
-
-#~ msgid "Thumbnail only"
-#~ msgstr "Само сличице"
-
-#~ msgid "Application icon only"
-#~ msgstr "Само иконица програма"
-
-#~ msgid "Thumbnail and application icon"
-#~ msgstr "Сличица и иконица програма"
-
-#~ msgid "Present windows as"
-#~ msgstr "Прикажи прозоре као"
-
-#~ msgid "Activities Overview"
-#~ msgstr "Преглед активности"
-
-#~ msgid "Hello, world!"
-#~ msgstr "Поздрав свима!"
-
-#~ msgid "Alternative greeting text."
-#~ msgstr "Неки други поздравни текст."
-
-#~ msgid ""
-#~ "If not empty, it contains the text that will be shown when clicking on "
-#~ "the panel."
-#~ msgstr ""
-#~ "Уколико упишете текст овде, он ће бити приказан када кликнете на панел."
-
-#~ msgid "Message"
-#~ msgstr "Порука"
+#: extensions/workspace-indicator/workspaceIndicator.js:405
+#, javascript-format
+msgid "Press %s to edit"
+msgstr "Притисни %s за измену"
 
-#~ msgid ""
-#~ "Example aims to show how to build well behaved extensions for the Shell "
-#~ "and as such it has little functionality on its own.\n"
-#~ "Nevertheless it’s possible to customize the greeting message."
-#~ msgstr ""
-#~ "Овај пример само показује како се пише добро проширење за Гномову шкољку, "
-#~ "тако да вам не значи пуно.\n"
-#~ "Ипак, можете изменити поздравну поруку помоћу овог проширења."
+#: extensions/workspace-indicator/workspaceIndicator.js:528
+msgid "Settings"
+msgstr "Поставке"
 
-#~ msgid "GNOME Shell Classic"
-#~ msgstr "Класична Гномова шкољка"
+#: extensions/workspace-indicator/workspaceIndicator.js:613
+msgid "Workspace Indicator"
+msgstr "Показатељ радних простора"
 
-#~ msgid "Window management and application launching"
-#~ msgstr "Управљање прозорима и покретање програма"
+#: extensions/workspace-indicator/workspacePrefs.js:20
+msgid "Indicator"
+msgstr "Показатељ"
+
+#: extensions/workspace-indicator/workspacePrefs.js:25
+msgid "Previews"
+msgstr "Прегледи"
+
+#: extensions/workspace-indicator/workspacePrefs.js:35
+msgid "Workspace Name"
+msgstr "Назив радног простора"
+
+#: extensions/workspace-indicator/workspacePrefs.js:59
+msgid "Behavior"
+msgstr "Понашање"
+
+#: extensions/workspace-indicator/workspacePrefs.js:64
+msgid "Dynamic"
+msgstr "Динамика"
+
+#: extensions/workspace-indicator/workspacePrefs.js:65
+msgid "Automatically removes empty workspaces."
+msgstr "Самостално уклања празне радне просторе."
+
+#: extensions/workspace-indicator/workspacePrefs.js:75
+msgid "Fixed Number"
+msgstr "Сталан број"
+
+#: extensions/workspace-indicator/workspacePrefs.js:76
+msgid "Specify a number of permanent workspaces."
+msgstr "Наведите број трајних радних простора"
+
+#: extensions/workspace-indicator/workspacePrefs.js:89
+msgid "Number of Workspaces"
+msgstr "Број радних простора"
+
+#: extensions/workspace-indicator/workspacePrefs.js:128
+msgid "Workspaces"
+msgstr "Радни простори"

++++++ gnome-shell-extensions.obsinfo ++++++
--- /var/tmp/diff_new_pack.XE4nTr/_old  2026-04-21 12:48:10.474771573 +0200
+++ /var/tmp/diff_new_pack.XE4nTr/_new  2026-04-21 12:48:10.486772071 +0200
@@ -1,5 +1,5 @@
 name: gnome-shell-extensions
-version: 50.0
-mtime: 1773508628
-commit: e396ef1e1503c0baf43834fc7bb2ec9856bba7d3
+version: 50.1
+mtime: 1776177467
+commit: e848ae6a05035b1576ee90bb986f2d67c031fc22
 

Reply via email to