shell: Remove "Windows in Front" and "Windows Behind" visibility modes
The "Windows in Front" visibility mode is not possible to implement with purely the layer-shell protocol as it implies that the panel is stacked similar to xdg_toplevels. It's possible to replicate some of its behavior by moving the panel between bottom and above layers depending on pointer focus and screen edge activation, but it requires some hacky code either side to make it truly work like it used to do. On the other hand, if you look at autohide and windows in front modes, they are similar. The main difference is that, with autohide, the window disappears after you leave the window, while with the latter, it stays where it is. The screen edge is used to bring the panel to the front in both cases. While we could replicate the windows can cover mode, I think it's better to remove it instead and focus on improving the autohide mode where it seems reasonable. The "Windows Behind" mode is removed mainly for two reasons. The first one is that its counterpart mode "windows in front" mode has been removed. The second one is that, in this mode, maximized and quick tiled windows will be placed behind the panel. That's not ideal because the window content will be occluded by the panel. Autohide or dodge active might be better replacements instead.
parent
c6b65b30