-
Notifications
You must be signed in to change notification settings - Fork 15
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
Multi-display bugs #18
Comments
There may be a few different bugs at play here. The next release will have better logging, so it will be easier to see what's going on.
Are you able to reproduce this reliably? After exiting and relaunching Scoot? (Also, if you could repeat the testing, but with laptop as the main display, that would be helpful.) |
Just released v0.9, which has support for the improved logging mentioned in my previous comment: https://github.com/mjrusso/scoot/releases/tag/v0.9 |
Awesome, thanks for the very detailed testing and write-up! I just published a new release (v0.10), which adds additional logging for relevant window state (and ensures that the logs don't redact the screen/window/view frame rect details). There's also a debug menu now, which has an option to "Rebuild Jump Window State". I'm sure that there's a bug with how Scoot handles screen changes (connecting/disconnecting a display, or changing the primary display); invoking this option might fix things after a screen change. Note that there also must be a separate issue with screen/window assignment, otherwise the app wouldn't launch with multiple windows on the same screen. If you could give this new build a try and post your logs, it will help me track this down. Thanks! |
|
@leongc thank you for repeating the testing and posting the log. I have the info I need now to track this down. That being said, I really did not expect rebuilding the state to fix the window placement. 🤔 |
Just did a bunch of testing; here's what I've found:
Regardless, fixing the first two problems is a good start. |
I just remembered a related setting. I configured Mission Control to let windows span screens. Unselect "Displays have separate Spaces". |
Ah, that must be related, thanks for flagging. I will confirm later, but it's almost certainly the case that there's a startup issue when windows are allowed to span screens. (Separately, there may be problems with using Scoot across Spaces; I've been meaning to test this, but haven't got around to it yet. And come to think of it, when an app enters "native" full screen, it gets its own space, and also may not work properly. I don't actually use Spaces or full screen... 😅) |
Yup, both scenarios don't work properly: Scoot draws its UI on the first desktop, not the active one. (This is with only a single display connected. Multiple displays is probably an even bigger mess...) I'll handle this separately. In terms of this ticket, my priority is:
|
Some updates:
Fixed in f9a25b2.
Fixed in 6ab703f.
Fixed in cf129ce, supporting both "normal" Spaces, and apps in fullscreen. (Although I haven't tested that both of these scenarios work with multiple displays connected, yet.) Remaining:
I haven't tested this yet. Once I do, I'm hoping I'll be able to reproduce the bug you're seeing. |
More updates:
Also, I did find what I thought was a new bug where Scoot is unable to find elements in focused apps on the non-primary display. However, on closer review, this is likely the same bug in your initial report:
An important detail I realized, however, is that this bug only manifests if the non-primary display is placed immediately above or below the primary. Other display configurations don't have this problem, which explains why I never personally saw this before. (I also confirmed that this bug is present regardless of the "displays have separate Spaces" setting.) |
(The underlying issue is being tracked here: #18)
Alright, we're pretty much there.
This is fixed by 79f2756. Re: the bug with multiple windows starting on the same (wrong!) screen, I still haven't been able to reproduce the issue. However, I did add a message to the README (see 895f30d) that provides instructions on what to do if this happens to you. |
@leongc I just published v0.11, which includes all of the fixes described above: https://github.com/mjrusso/scoot/releases/tag/v0.11 I'm assuming that it still may launch in a broken state (with overlapping windows), but clicking the “Rebuild Jump Windows” debug menu item will still fix this particular issue. If you could give it a spin and let me know if everything else is working reliably, that would be great. |
Confirmed v0.11 launches with overlapping grids and clicking "Rebuild Jump Windows" debug menu item distributes grids to appropriate displays. Everything else seems normal. I do like the grid filter-as-you-type highlighting. |
I may have spoken too soon. The tinting doesn't seem to go away after grid navigation. Clicking with scoot or the actual pointer dismisses the grid, but the tint remains. Dismissing grid jump with |
Are you referring to tint added via the "Toggle Jump Window Tint" debug menu item? If so, that is expected. That (debug) feature adds a tint to every window, independent of the grid or any other Scoot UI. The idea is to make it easier to see where the windows are actually located, for debug purposes. If enabled, whether or not you see the tinting depends on the z-order of Scoot's jump window, relative to the other windows on your screen, at the given level. (If you hit escape, it will actually hide the window, so you won't see it.) That being said, one thing that has changed (since v0.10) is that the level of the window is now set to |
Great, thanks for confirming. Might take some trial-and-error to find a fix for this. |
Me too. But I'm glad that the problem can be solved. In addition, thank you very much @mjrusso for developing such a useful application! 😘 |
I have an external display as the main display connected via USB-C to HDMI adapter to my 2017 Macbook Pro running OS X 12.1 with the built-in retina as an extended display. Launching grid navigation with Scoot 0.8 overlays both display grids on the external display and none on the built-in retina display. Relatedly, launching element navigation only shows targets when the focused window is on the external display.
The text was updated successfully, but these errors were encountered: