Some fixes for long-standing issues#1821
Conversation
99d9c35 to
4038ef0
Compare
The first window is fully maximized, and then later when a second window is opened, we don't get border for the first window when it is in focus because after tiling the first window has stale value for smart_gapped, and thus is_single_max_screen() returns true, causing permitted in show_border() to be false. Let's set smart_gapped for each window in a tree each time we tile. Closes: pop-os#1758 Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
It caused GNOME crash due to bug in mutter, which was fixed in v49. But regardless, we should not spam the close signal. Also people might be using versions before 49. Closes: pop-os#1794 Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
wl-clipboard invisible window (literally just a dot shows up) can cause the tiler to make it take an entire window worth of space, and it is supposed to be immediately closed so we see a tiling flicker. And also sometimes the window dangles (there is an open bug for it), so it takes up unnecessary space. This window is not supposed to be tiled, in fact it has skip-taskbar flag set. Let's add exceptions for it. Closes: pop-os#1819 Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
4038ef0 to
589ec6b
Compare
Nautilus file previews, like pressing space on a PDF file, is a temporary window and it can't zoom in, it is supposed to be overlaid. Let's add exception for it. Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
Entering window-management mode removed the normal bindings and re-added the management bindings, then did the inverse on exit. This leads to journalctl spam since we overwrite a keybinding, and mutter logs overwrite warnings. Register the window-management mode bindings once with it being inactive initially (Shell.ActionMode.NONE), and later enable it (Shell.ActionMode.NORMAL) when entering the management mode, and then disabling on exit. Closes: pop-os#1820 Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
The API had changed here: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4415 Thus we had warnings being logged when in stacked mode. The commit which added support for GNOME 49 forgot to change that. Also, to be in line with the fixes commit, we remove the unmaxize(HORIZONTAL); unmaximize(VERTICAL); unmaximize(BOTH); code to checking for whether the window is maximized and then using BOTH (i.e. its replacement) directly. Closes: pop-os#1801 Fixes: d22d2ff ("fix: update window maximization logic to use new properties and added gnome 49 shell version in metadata") Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
589ec6b to
c179893
Compare
| - **GNOME 42 through 44:** Use the `master_jammy` branch. | ||
| - **GNOME 45:** Use the `master_mantic` branch. | ||
| - **GNOME 46+:** Use the `master_noble` branch. | ||
| - **GNOME 49+:** Use the `master_resolute` branch. |
There was a problem hiding this comment.
Does this mean this branch is not backwards compatible back to 46+? We'll need to set a new branch up before merging if that's the case. (And the previous line should be updated to say GNOME 46 through 48.)
There was a problem hiding this comment.
It's due to the maximise API change at https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4415.
I think the current branch is also broken for same reason, but I didn't test building on old GNOME.
There was a problem hiding this comment.
To be clear, the other bug fixes does pertain to older versions too.
If we want a linear split in history, I can reorder commits from the current master_noble branch.
There was a problem hiding this comment.
(Updated the README as requested)
Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
c179893 to
e17ba31
Compare
No description provided.