Some fixes for long-standing issues by siddhpant · Pull Request #1821 · pop-os/shell · GitHub
Skip to content

Some fixes for long-standing issues - #1821

Open
siddhpant wants to merge 14 commits into
pop-os:master_noblefrom
siddhpant:master_resolute
Open

siddhpant wants to merge 14 commits into
pop-os:master_noblefrom
siddhpant:master_resolute

Conversation

@siddhpant

Copy link
Copy Markdown
Contributor

No description provided.

@siddhpant

Copy link
Copy Markdown
Contributor Author

@leviport
leviport requested review from a team July 6, 2026 16:46
Comment thread README.md Outdated
This reverts commit 7898b65.

50+ support will be in master_resolute branch.

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>
GNOME 49 removed the (un)maximize flags arguments, but older versions
(which this branch claims to support) still require them.

So let's make version-aware ShellWindow helpers for (un)maximize.

Fixes: d22d2ff ("fix: update window maximization logic to use new properties and added gnome 49 shell version in metadata")
Suggested-by: Jacob Kauffmann <jacob@system76.com>
Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
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>
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>
This branch supports GNOME 46+ only according to README.

Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
This reverts commit 78f939a.

Add back the fix for 50+ branch.

Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
That was added in the original support commit because the branch also
had to support GNOME < 50.

It's not the case here, so let's remove it.

Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
This branch is GNOME 50+ only, and the fix is for GNOME 49+.
So we no longer need the fallback.

Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
We added compatibility commit for previous branch as it supported
GNOME versions older than 49.

This branch is GNOME 50+, we don't need this now.

Signed-off-by: Siddh Raman Pant <25429745+siddhpant@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants