-
Notifications
You must be signed in to change notification settings - Fork 148
Fix tiling break on chromium tab move #1024
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
When a chromium tab is moved, the code is grabbing a window (inGrab is true), but the window is new (selectedInColumn is null). Use the code path for new windows instead. This prevents the following backtrace: JS ERROR: TypeError: grabWindow is null layoutGrabColumn@file:///home/user/.local/share/gnome-shell/extensions/paperwm@paperwm.github.com/tiling.js:544:63 layout@file:///home/user/.local/share/gnome-shell/extensions/paperwm@paperwm.github.com/tiling.js:746:26 insertWindow@file:///home/user/.local/share/gnome-shell/extensions/paperwm@paperwm.github.com/tiling.js:4147:11 window_created/<@file:///home/user/.local/share/gnome-shell/extensions/paperwm@paperwm.github.com/tiling.js:3340:25 connectOneShot/id<@file:///home/user/.local/share/gnome-shell/extensions/paperwm@paperwm.github.com/utils.js:522:20 @resource:///org/gnome/shell/ui/init.js:21:20 Closes paperwm#1016
I think I got this right, but let me know if I missed anything. I tested it a bit and the behavior now doesn't horribly break the extension any more, you can pull out a tab and it adds as a new column. For reference, here's the full log before the changes. I think the errors after are just a side effect of the exception, but I wasn't sure about the "Invalid window geometry" one being involved or not.
Thanks! |
Thanks @javs! Note though, I haven't been able to reproduce this issue with chromium or chrome yet (installed flatpak versions of these and don't see the reference issue happening). |
Regardless of reproducibility (although I added more notes on the ticket about that), I think it's clear something is definitely wrong with
|
When a chromium tab is moved, the code is grabbing a window (inGrab is true), but the window is new (selectedInColumn is null). Use the code path for new windows instead.
This prevents the following backtrace:
Closes #1016