-
-
Notifications
You must be signed in to change notification settings - Fork 153
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
Chrome window: Looping/Bouncing Between Workspaces #289
Comments
also running into this! loving aerospace, btw |
Having the same issue! I'm running the same version as the OP. |
The issue sounds suspicious. I couldn't reproduce it
I even tried this script to emulate quick initial workspace switches: aerospace focus --window-id 13305 # chrome window 1
aerospace focus --window-id 16745 # chrome window 2
for i in $(seq 1 50); do
sleep 0.01
aerospace workspace-back-and-forth
done |
definitely sus -- as the kids say.
A bit more context from re-inducing the problem just now:
In other words, on the-very-first-switch to a chrome window, it is (perhaps) never fully focus'd. Then: |
I'm on a Macbook Pro with only one external display, so 2 displays total. |
Thanks @LeandroLovisolo - I was also able to rerpo on just 2 monitors. Also, here's a vid repro. Note that I don't use the mouse at all during the vid. Only the keys shown by aerospace-chrome-flicker.mp4 |
Yep, that's exactly what I see! |
Same! I'm using a Mac Studio with two monitors. |
I'm experiencing the same / similar looping problem. It seems what happens to me is that
More notes:
|
I got the same I thing |
Surprised to see 9 votes on the issue. Apparently, something major got broken, but I still can't reproduce the problem. People started coming only after 0.12.0-Beta. Is the problem reproducible in 0.11.2-Beta? By looking at changelog between 0.11.2-Beta and 0.12.0-Beta v0.11.2-Beta...v0.12.0-Beta the only suspicious commit that could cause the problem is 588f697 I'd appreciate if somebody who has this problem could try to revert the commit and build from sources to see if it helps. Or otherwise try to bisect the problem between 0.11.2-Beta and 0.12.0-Beta. I assume that it's a 0.12.0 regression, so we need to confirm that first |
Weird... I can replicate this but only with Chrome and with at least one external monitor (on a MBP). Is there an easy way to downgrade to 0.11.2 and test? |
@tuzemec Download |
For me 0.11.2-beta works fine, without this bouncing between the workspaces. There's some very rare cases when it doesn't switches to the new workspace with Chrome at first, but if I press the shortcut again - it works. Can't find any logic or ways to reproduce that, so I'm willing to ignore it :) |
Then I'd appreciate if somebody who has this problem reproducible to "git bisect" the bug in the v0.11.2-Beta...v0.12.0-Beta range I'd start by reverting 588f697 |
The issue persists in latest beta version (0.13.3-Beta) and I can reproduce the issue in my laptop with external display plugged
when assigning 2 different chrome window into workspace 1 and workspace 2 and mauanlly switch between workspace few times (press option+1, option+2, option+1, and repeat), the issue appears.
One side note that if two chrome windows are in the same workspace and only move focus between two windows, no looping/bouncing/flickering happens. --- Update
Local tested via reverting this commit 588f697 in the latest main branch (e03bfac), the issue looping/bouncing disappears. If chaging the logic to hide all invisible windows first, then unhide visible windows. No issue but will flicker and show desktop. --- Update it seems that the issue is related to the external monitor, and the display arragenement matters. Meanwhile, if put the the external display above the built-in display, the issue happens. If I put 2 chrome windows seperately, one in the external monitor and one in the built-in display, I can not reproduce the issue. |
Hi @nikitabobko I did the bisect to narrow down the issue Steps: git checkout <commit_id>
# follow the dev-guide to setup the environment
./build-debug.sh
./run-debug.sh
# try to reproduce the issue, as I mentioned above As a result
All points to the commit 588f697 involved the issue and it seems that after this patch, somehow the sequence of hiding and unhiding will lead to this looping. Sorry but I'm rookie in swift and can not move it forward, if anything I can help with this issue please lemme know. |
@xuyixin1996 thanks for the investigation! I will try to reproduce with monitors aligned vertically and take a closer look at the problem later this week. In the worst case, we can just revert the commit. cc @ilyaluk Sidenote: it's not the first time I see funky macOS behavior when monitors are arranged vertically |
Meanwhile users who are irritated by the bug can temporarily downgrade to 0.11.2
|
I've managed to reproduce the issue. Once again thanks to @xuyixin1996 for the investigation! There are two factors necessary to reproduce the issue:
Outcomes:
I'd love to hear the confirmation from someone that the issue is fixed in 0.14.0 for them as well |
System Settings => Desktop & Dock => System Settings => Desktop & Dock =>
System Settings => Desktop & Dock => System Settings => Desktop & Dock => Thanks @xuyixin1996 for the bisect |
_fixes nikitabobko#149 If the monitor configuration is correct, this commit _fixes nikitabobko#289 I accidentally managed to reduce number of visible pixels to a single 1-pixel vertial line, so it paritally _fixes nikitabobko#66
Context:
❯ aerospace -v
aerospace CLI client version: 0.12.0-Beta 9cf82fe
AeroSpace.app server version: 0.12.0-Beta 9cf82fe
[issue was present in earlier versions, I believe]
Repro:
Number of monitors must be > 1
Open 2 instances of Chrome. To ensure it wasn't some chrome config, I used two incognito windows this AM.
Place Chrome instance # 1 on workspace A
Place Chrome instance # 2 on workspace B
Switch back and forth between the workspaces
For me, within a few switches, a "workspace switching loop" will initiate.
By this, I mean:
Aerospace will automatically switch from workspace A => workspace B => workspace A => workspace B and so on.
In a rapid, flicker pattern.
Other notes:
To end the behavior, I usually just send command for the target workspace repetitively.
This tends to break the loop.
Let me know if you need anything else --
Thanks for AeroSpace!
The text was updated successfully, but these errors were encountered: