It's a bug in the gnome-shell extension manager. I made DING print traces of when it receives enable(). Notice we get two calls, first from extensionSystem.js:739:18, then from extensionSystem.js:736:18
Feb 13 09:48:24 ubuntu gnome-shell[2776]: Trace enable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/gnomeShellOverr> innerEnable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/extension.> enable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/extension.js:84> _callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:267:38 async*_onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js> _loadExtensions/<@resource:///org/gnome/shell/ui/extensionSystem.js:736:18 createCheckedMethod/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:730:46 enableExtension@resource:///org/gnome/shell/ui/extensionSystem.js:290:29 EnableExtension@resource:///org/gnome/shell/ui/shellDBus.js:453:38 _handleMethodCall@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:329:38 _wrapJSObject/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:408:34 @resource:///org/gnome/shell/ui/init.js:21:20 Feb 13 09:48:25 ubuntu gnome-shell[2776]: Trace enable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/gnomeShellOverr> innerEnable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/extension.> enable@file:///usr/share/gnome-shell/extensions/d...@rastersoft.com/extension.js:84> _callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:267:38 async*_onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js> _loadExtensions/<@resource:///org/gnome/shell/ui/extensionSystem.js:739:18 createCheckedMethod/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:730:46 enableExtension@resource:///org/gnome/shell/ui/extensionSystem.js:285:29 EnableExtension@resource:///org/gnome/shell/ui/shellDBus.js:453:38 _handleMethodCall@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:329:38 _wrapJSObject/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:408:34 @resource:///org/gnome/shell/ui/init.js:21:20 In the live session, DING is initially disabled via dconf: $ gsettings get org.gnome.shell disabled-extensions ['d...@rastersoft.com'] Then, when ubuntu-desktop-bootstrap exits it calls `gnome-extensions enable d...@rastersoft.com`, which removes it from the `disabled- extensions` list, and adds it to the `enabled-extensions` list. Sometimes (why only sometimes?) this two-step process makes it call enable() twice. DING could be made more robust against getting enabled twice, but gnome- shell should not be doing this. ** Changed in: gnome-shell (Ubuntu) Status: Incomplete => Confirmed ** Changed in: gnome-shell-extension-desktop-icons-ng (Ubuntu) Status: Incomplete => Confirmed -- You received this bug notification because you are a member of Ubuntu Desktop Bugs, which is subscribed to gnome-shell in Ubuntu. https://bugs.launchpad.net/bugs/2098102 Title: Desktop switching shows windows from previous desktop To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/2098102/+subscriptions -- desktop-bugs mailing list desktop-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/desktop-bugs