gnome-shell/src
Sebastian Keller 488fb46edf shell/app: Don't move all workspace windows to their startup workspace
Windows from some applications, such as guake, are created as showing on
all workspaces. When these windows are put on the workspaces via
set_workspace_state() during construction, the first time the window is
added to a workspace in the loop triggers the shell app tracker which
then tries to move the window to its startup workspace. This makes the
window unsticky which triggers another set_workspace_state() which
tries to remove the window from all workspaces, but currently it is only
on the first one and then adds it to the startup workspace. Once that is
finished, the first set_workspace_state() continues adding the window
to the remaining workspaces, despite the window now no longer having
on_all_workspaces set to true.

When the window is now unmanaged, the window according to its internal
state is only found on the startup workspace, so it will only be removed
from that. This causes the assertion to fail that checks that the window
is no longer present on any workspace after this.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4720

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2014>
(cherry picked from commit bc32a52108)
2021-11-02 15:38:54 +01:00
..
calendar-server calendar-server: Fix double-free detection abort 2021-05-18 23:06:50 +00:00
hotplug-sniffer hotplug-sniffer: Drop "volatile" from g_once_init_enter() sentinels 2021-03-22 11:12:23 +00:00
st Revert "st: Only use clutter_actor_invalidate_paint_volume() if the API exists" 2021-11-02 15:38:35 +01:00
tray *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
data-to-c.pl build: Fix the path of perl for data-to-c.pl 2015-05-22 19:03:44 +08:00
gnome-shell-extension-prefs Add small gnome-shell-extension-prefs script 2020-04-28 00:06:19 +02:00
gnome-shell-extension-tool.in shell-extension-tool: Fix typo 2019-08-27 12:16:27 +03:00
gnome-shell-perf-tool.in *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
gnome-shell-plugin.c init: Set console log domain 2021-09-01 14:55:47 +00:00
gnome-shell-portal-helper.c build: Don't modify typelib search path in tools 2018-08-14 17:28:03 +00:00
gtkactionmuxer.c Stop using GSlice 2020-10-19 20:18:11 +02:00
gtkactionmuxer.h Also update gtkaction* 2014-01-09 14:59:31 -05:00
gtkactionobservable.c Update copy/paste code from upstream 2013-05-13 18:34:26 -04:00
gtkactionobservable.h Update copy/paste code from upstream 2013-05-13 18:34:26 -04:00
gtkactionobserver.c Also update gtkaction* 2014-01-09 14:59:31 -05:00
gtkactionobserver.h Also update gtkaction* 2014-01-09 14:59:31 -05:00
main.c main: Take over setting signal handlers and changing dir 2021-07-15 12:42:17 +00:00
meson.build shell: Drop dependency on ClutterX11 headers/gir 2021-06-29 22:47:41 +00:00
org.gtk.Application.xml Generate GDBus proxy object for org.gtk.Application 2014-11-27 10:59:55 +00:00
run-js-test.c tests: Don't initialize Clutter 2019-08-27 15:30:51 +03:00
shell-action-modes.h *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
shell-app-cache-private.h app-cache: add ShellAppCache for GAppInfo caching 2020-03-11 18:06:15 -07:00
shell-app-cache.c Stop using GSlice 2020-10-19 20:18:11 +02:00
shell-app-private.h shell: Use MetaStartupNotification 2018-11-23 13:58:35 +01:00
shell-app-system-private.h apps: Ensure running apps override new .desktop file data 2011-09-05 17:29:41 -04:00
shell-app-system.c app-cache: add ShellAppCache for GAppInfo caching 2020-03-11 18:06:15 -07:00
shell-app-system.h shell-app-system: Cache GAppInfos around 2019-01-26 22:55:31 +01:00
shell-app-usage.c cleanup: Use g_clear_handle_id() for g_source_remove() 2019-11-22 01:45:25 +01:00
shell-app-usage.h app-usage: Remove crufty old "context"s idea 2018-11-17 12:08:33 +00:00
shell-app.c shell/app: Don't move all workspace windows to their startup workspace 2021-11-02 15:38:54 +01:00
shell-app.h shell/app: Add new get_icon() method 2020-07-01 12:42:57 +02:00
shell-blur-effect.c blur-effect: Don't use stage view when drawing off-stage 2021-02-15 13:17:08 +01:00
shell-blur-effect.h blur-effect: Use sigma value instead of blur radius 2020-02-12 11:10:38 -03:00
shell-embedded-window-private.h shell-embedded-window: Remove hacks for old and fixed Clutter bug 2012-07-13 17:28:50 -04:00
shell-embedded-window.c shell: Drop dependency on ClutterX11 headers/gir 2021-06-29 22:47:41 +00:00
shell-embedded-window.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-global-private.h locatePointer: Add implementation in gnome-shell 2019-06-05 08:15:10 +00:00
shell-global.c src/shell: Plug some small leaks 2021-08-13 15:16:54 +02:00
shell-global.h shell: Drop shell_global_sync_pointer() 2021-02-14 13:57:56 +00:00
shell-glsl-effect.c Always assume GLSL is supported 2021-09-21 16:37:01 +02:00
shell-glsl-effect.h shell: Actually make GLSLEffect an effect 2019-07-29 17:51:14 +02:00
shell-gtk-embed.c Remove ClutterAllocationFlags 2020-05-20 15:12:03 +02:00
shell-gtk-embed.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-invert-lightness-effect.c Always assume GLSL is supported 2021-09-21 16:37:01 +02:00
shell-invert-lightness-effect.h shell: Define COGL_ENABLE_EXPERIMENTAL_API and related defines globally 2014-08-07 14:49:54 -04:00
shell-keyring-prompt.c Ensure G_PARAM_STATIC_STRINGS for all properties 2019-07-30 13:58:44 +00:00
shell-keyring-prompt.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-mount-operation.c *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
shell-mount-operation.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-network-agent.c shell/network-agent: Add method to add VPN secrets to agent response 2020-12-25 11:43:13 +01:00
shell-network-agent.h shell/network-agent: Add method to add VPN secrets to agent response 2020-12-25 11:43:13 +01:00
shell-perf-helper.c perf-helper: Remove unused atoms 2019-12-05 16:51:00 +01:00
shell-perf-log.c src/shell: Plug some small leaks 2021-08-13 15:16:54 +02:00
shell-perf-log.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-polkit-authentication-agent.c src: Stop using g_get_current_time() 2019-08-09 19:22:18 +00:00
shell-polkit-authentication-agent.h polkit: Port to G_DECLARE_FINAL_CLASS 2018-11-06 13:05:15 -02:00
shell-screenshot.c screenshot: Fix slow audiovisual feedback on when taking screenshot 2021-02-11 18:51:40 +00:00
shell-screenshot.h shell: Make screenshot API stream based 2019-11-06 22:45:22 +00:00
shell-secure-text-buffer.c shell: Don't use g_memmove() 2019-07-19 17:43:56 +00:00
shell-secure-text-buffer.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-square-bin.c iconGrid: Subclass a C actor for BaseIcon 2021-03-13 22:13:25 +00:00
shell-square-bin.h iconGrid: Subclass a C actor for BaseIcon 2021-03-13 22:13:25 +00:00
shell-stack.c Remove ClutterAllocationFlags 2020-05-20 15:12:03 +02:00
shell-stack.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-tray-icon.c Ensure G_PARAM_STATIC_STRINGS for all properties 2019-07-30 13:58:44 +00:00
shell-tray-icon.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00
shell-tray-manager.c shell: Drop dependency on ClutterX11 headers/gir 2021-06-29 22:47:41 +00:00
shell-tray-manager.h shell/tray-manager: Allow to unmanage screen 2020-03-06 18:45:21 +00:00
shell-util.c shell/util: Remove get_content_for_window_actor() 2021-09-04 12:10:51 +02:00
shell-util.h shell/util: Remove get_content_for_window_actor() 2021-09-04 12:10:51 +02:00
shell-window-preview-layout.c Move WindowPreviewLayout from JS to C 2021-03-09 15:40:49 +00:00
shell-window-preview-layout.h Move WindowPreviewLayout from JS to C 2021-03-09 15:40:49 +00:00
shell-window-preview.c windowPreview: Subclass a C actor 2021-03-09 15:40:49 +00:00
shell-window-preview.h windowPreview: Subclass a C actor 2021-03-09 15:40:49 +00:00
shell-window-tracker-private.h apps: Ensure running apps override new .desktop file data 2011-09-05 17:29:41 -04:00
shell-window-tracker.c shell/window-tracker: Tighten sandbox ID prefix check 2020-07-08 12:23:10 +02:00
shell-window-tracker.h shell: Hide/drop unused public API 2018-11-23 13:58:35 +01:00
shell-wm-private.h ui: Add InhibitShortcutsDialog 2017-08-02 11:27:42 +01:00
shell-wm.c ui: Add InhibitShortcutsDialog 2017-08-02 11:27:42 +01:00
shell-wm.h shell: Use G_DECLARE_*_TYPE macros 2015-10-15 22:58:28 +02:00