mutter/src/core
Sebastian Keller e38db1237d window: Don't change workspaces of unmanaged windows
If the ancestor a window is transient for has already been unmanaged
when the window is activated via meta_window_activate_full while its
transient_for property still points to that ancestor, this will cause
the already unmanaged ancestor to get added to the windows workspace.
This is after the ancestor had its workspace set to NULL when it was
unmanaged, causing this to look like an actual workspace change. Once
the window has been added to the workspace, it will never be removed
again, because the it has already been unmanaged. This confuses things
like the shell window tracker and leads to phantom windows being
considered present for apps that are not even running anymore.

Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4184
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2003>
2021-09-29 09:34:30 +00:00
..
bell.c *: Fix spelling mistakes found by codespell 2020-08-29 09:10:31 +00:00
bell.h frame: Remove flashing support 2019-03-12 00:27:07 +00:00
boxes-private.h boxes: Add function to check if rectangle is adjacent to region 2021-08-04 14:02:16 +00:00
boxes.c boxes: Add function to check if rectangle is adjacent to region 2021-08-04 14:02:16 +00:00
constraints.c constraints: Use "orig" rectangle for interactive resize 2020-10-19 11:16:12 +02:00
constraints.h window: Implement asynchronous popup moving 2020-02-29 21:01:50 +00:00
delete.c Make meta_* logging utilities not require line break 2020-10-08 16:38:41 +02:00
display-private.h display: Keep pointer to the context 2021-07-15 11:34:37 +02:00
display.c display: Set xattr on focus window cgroup dir 2021-09-02 21:54:30 +00:00
edge-resistance.c window: "Hide" edge resistance behind modifier key 2020-10-14 15:45:24 +00:00
edge-resistance.h edge-resistance: Replace booleans with flags parameter 2020-10-14 15:45:23 +00:00
events.c events: Only support super+scroll on wayland 2021-07-08 00:02:41 +02:00
events.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
frame.c Make meta_* logging utilities not require line break 2020-10-08 16:38:41 +02:00
frame.h frame: Pass the frame area for get_mask() 2020-01-29 10:44:50 +00:00
keybindings-private.h display: Expose window_grab_modifiers 2021-02-04 19:26:18 +00:00
keybindings.c keybindings: Remove 'panel-run-dialog' handler 2021-08-30 21:43:34 +00:00
meta-accel-parse.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-accel-parse.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-anonymous-file.c Add read-only anonymous file abstraction MetaAnonymousFile 2020-04-21 17:52:08 +02:00
meta-anonymous-file.h Add read-only anonymous file abstraction MetaAnonymousFile 2020-04-21 17:52:08 +02:00
meta-border.c MetaBorder: Use float constants and functions instead of double variants 2016-02-16 19:02:48 +08:00
meta-border.h Move out generic math parts out of the native barrier implementation 2016-02-16 19:02:48 +08:00
meta-clipboard-manager.c core: Free clipboard selection source on shutdown 2020-06-08 12:11:11 +00:00
meta-clipboard-manager.h core: Add clipboard manager 2019-05-02 16:22:45 +02:00
meta-close-dialog-default-private.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-close-dialog-default.c Make meta_* logging utilities not require line break 2020-10-08 16:38:41 +02:00
meta-close-dialog.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-context-main.c context: Add (hidden) --unsafe-mode option 2021-09-02 16:58:46 +00:00
meta-context-main.h Introduce MetaContextMain 2021-07-15 11:25:21 +02:00
meta-context-private.h context: Add :unsafe-mode property 2021-09-02 16:58:46 +00:00
meta-context.c context: Add some missing introspection data 2021-09-16 07:23:24 +00:00
meta-fraction.c Add MetaFraction for dealing with fractions 2017-08-29 14:39:04 +08:00
meta-fraction.h Add MetaFraction for dealing with fractions 2017-08-29 14:39:04 +08:00
meta-gesture-tracker-private.h display: Move finishing of touch sequence to the backend 2019-10-28 18:40:43 +00:00
meta-gesture-tracker.c src: Stop using GSlice 2021-02-22 13:52:27 +01:00
meta-inhibit-shortcuts-dialog-default-private.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-inhibit-shortcuts-dialog-default.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-inhibit-shortcuts-dialog.c core: add MetaInhibitShortcutsDialog 2017-08-02 11:58:55 +02:00
meta-launch-context.c core: Use DISPLAY envvar to forward in the launch context 2020-02-29 20:41:26 +00:00
meta-pad-action-mapper.c core: Be more careful around n_modes signedness 2021-07-07 18:37:54 +02:00
meta-pad-action-mapper.h backends: Split pad action mapping to a separate object 2020-11-27 15:14:33 +00:00
meta-private-enums.h main: Move MetaX11DisplayPolicy to a new meta-private-enums.h 2021-07-15 11:34:36 +02:00
meta-selection-private.h core: Add private function to get the current selection owner 2020-04-09 21:30:05 +00:00
meta-selection-source-memory.c core: Fix task leak in meta_selection_source_memory_read_async 2020-02-01 14:02:19 +00:00
meta-selection-source-remote.c remote-desktop/session: Add support for SelectionTransfer/Write 2021-02-05 16:44:27 +00:00
meta-selection-source-remote.h remote-desktop/session: Add support for SelectionTransfer/Write 2021-02-05 16:44:27 +00:00
meta-selection-source.c Make MetaSelection, MetaSelectionSource and MetaMemorySelectionSource public 2019-05-02 16:31:45 +02:00
meta-selection.c core/selection: Cancel selection transfer requests after a timeout 2021-07-28 15:26:04 +00:00
meta-sound-player.c cleanup: remove controversial naming 2020-08-04 10:04:16 +02:00
meta-workspace-manager-private.h Move workspace related code from MetaDisplay to MetaWorkspaceManager 2018-07-06 19:47:17 +02:00
meta-workspace-manager.c workspace-manager, x11-display: Default to a single row 2021-01-27 11:48:10 -03:00
mutter.c mutter: Add signal handlers 2021-09-22 11:38:17 +00:00
place.c Make meta_* logging utilities not require line break 2020-10-08 16:38:41 +02:00
place.h place: Make placement rule processing provide relative coordinates 2020-02-29 21:01:50 +00:00
prefs-private.h prefs: Make init function private 2021-05-17 16:08:42 +00:00
prefs.c prefs: Make init function private 2021-05-17 16:08:42 +00:00
restart-helper.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
restart.c restart: Request to hide the restart message if not accepted 2021-03-13 15:12:36 +00:00
stack-tracker.c src: Stop using GSlice 2021-02-22 13:52:27 +01:00
stack-tracker.h meta: Hide libmutter symbols by default and selectively export them 2019-01-23 14:18:13 +01:00
stack.c stack: Check workspace in get_default_focus_window() 2021-08-12 21:39:05 +05:00
stack.h stack: Style and introspection doc fixes 2019-07-08 11:46:52 +02:00
startup-notification-private.h meta, startup-notification: Make type declarations public 2019-01-24 16:38:09 +00:00
startup-notification.c core: Add ::timeout signal to MetaStartupSequence 2021-07-09 09:34:28 +00:00
util-private.h core: Add private utility function to get Clutter debug flags 2021-07-16 19:08:06 +02:00
util.c core: Add private utility function to get Clutter debug flags 2021-07-16 19:08:06 +02:00
window-private.h window: Add cgroup management to MetaWindow 2021-09-02 21:54:30 +00:00
window.c window: Don't change workspaces of unmanaged windows 2021-09-29 09:34:30 +00:00
workspace-private.h workspace: Add meta_workspace_get_default_focus_window() 2021-08-12 21:39:05 +05:00
workspace.c window: Make default focus window on each workspace appear focused 2021-08-12 21:41:40 +05:00