Issue with two monitor setup
I have a second monitor attached my MacBook Pro (2019), with the external display having the menubar.
When a window is on the built-in display the highlights are not displayed on that display.
If the window spans both monitors, the highlights are shown the portion of the window on the external display.
sorry, the multiple monitor stuff has been proving to be way harder than i expected (also probably because i use only one myself, so didn't really dig fully into it). so there's still some issues. but the Targets should show up correctly.
can you enlighten me on two things tho? here's my setup with two screens, extended:
https://user-images.githubusercontent.com/121373/182911986-18cfedfe-9ab5-42a0-a7d9-6159c4c87f12.mp4
- the menu bar shows in both. even if it doesn't show in the "Display" preview, it still show on both my screen, or hide on both my screen. i don't know how to get one with the menu bar, and one without.
- also, how do you span a window? i thought on macOS or you have it on a screen, or the other (see in my video. it doesn't allow both). although now that i think about it, it's probably an option somewhere. Apple would be dumb not to have this.
- have you tried any other tool? how do they act?
thanks.
Ah, I should have said that I have "Displays have separate Spaces" turned off in the Mission Control system preferences. In this case, there's just one menubar and the desktop is one big virtual space. Try adjusting that setting and it should be obvious what's going on. (Happy to make a screen recording if you like.)
As far as other tools go, Vimac/Homerow handles this case pretty well. Screencat has some similar issues to Wooshy.
Ah, I should have said that I have "Displays have separate Spaces" turned off in the Mission Control system preferences. In this case, there's just one menubar and the desktop is one big virtual space. Try adjusting that setting and it should be obvious what's going on. (Happy to make a screen recording if you like.)
ha. my bad. i'm a one monitor kind of guy (although i do have two eyes) and i was pretty sure i read somewhere that windows don't span over multiple monitors on macOS. i never really thought about how dumb was that statement. cool. learned something today. thank you!
As far as other tools go, Vimac/Homerow handles this case pretty well. Screencat has some similar issues to Wooshy.
alright so there's good news, and there's bad news, but overall it's good news:
- the first bad news: i wasn't aware that actually several physical screens could act as one virtual screen. so i built Wooshy to handle physical screens. so yeah, that's why you get what you get, and it only targets one screen. so this needs to be redone.
- the first good news: i was planning already to revamp the whole display thing. i'm having a hard time getting The Input in the right position on external screens, and the clicks. different teams at Apple built different systems, some use the bottom left corner of the screen as the 0, 0 origin, while others use the top left. it's a fucking nightmare 😂️😂️😂️ so i need to sit down and eat this for a couple of weeks i think. so now that i know about this virtual screen thing, it's even better. my knowledge will be closer to reality.
- the second bad news: well as said above, i need to sit down and focus on this carefully. so it's not gonna be for now. hopefully in the coming months.
- the second good news: well if Vimac/Homerow is doing it well, that means it's technically possible. which means i'll (try to 😨️) get it done in Wooshy. all i need is time, and getting the knowledge. which should be fine.
- the last good news is that this should be a part of Wooshy's features from day one. so i'll do it before the v1 release. (actually even before the beta. that should go into the alpha.)
hope the ratio of bad news/good news is adequate!
the lack of proper support for multiple monitor setups is going to give problems to pinging the Dock too: https://github.com/godbout/Wooshy.docs/issues/37
ok so i've been working on this for a week now. the idea is to get multiple monitor support working at least before the beta.
it's pretty nightmarish, but even worse, it seems there's a heavy bug for background apps like Wooshy/kV. pinging the active screen always return the screen of the menu bar, which makes it impossible to show The Input on the proper second mon. can you confirm this?
do you have Alfred by any chance? you could also see that bug in Alfred, by asking Alfred to show the prompt on the active screen. it'll stick to the default monitor instead.
i'll report a bug feedback to Apple, but i don't think this is gonna be fixed. for multiple monitor setup with displays showing the same space, showing the Targets properly is one thing that is doable, but showing The Input at the right place, it seems like it's not with the current state of the macOS APIs.
reported to Apple: https://github.com/feedback-assistant/reports/issues/355
i think one way to handle this—rather than waiting for them to fix—is to build my own system to detect the proper screen. (i mean, i already have a bunch of stuff to get the right screen and coordinates, etc, but this uses those buggy stuff from Apple, so the point would be to replace those buggy APIs by my own. if possible.)
it's pretty nightmarish, but even worse, it seems there's a heavy bug for background apps like Wooshy/kV. pinging the active screen always return the screen of the menu bar, which makes it impossible to show The Input on the proper second mon. can you confirm this?
I'm not quite following.
My setup is that the external monitor has the menubar and the built-in monitor is to the left. The Wooshy input is on the external monitor. In this case, the yellow highlights appear correctly on the external monitor, but the built-in monitor doesn't show any highlights. That's the bug that I was trying to report.
If I move the Wooshy input field to the built-in monitor then all hell breaks loose and the highlights are all in the wrong places.
I don't have Alfred, but Vimac handles this correctly. Do you need me to test something on Alfred for you?
I'm not quite following.
sorry, my bad 😅️ i'm half asking a question and half dumping my thoughts. vomiting my thoughts down helps my process 🥺️
there's two things to position: 1) The Input 2) the Targets. the Targets are definitely wrong, which is the issue you reported. i'm aware of that one. but i'm finding now that The Input should be misplaced also. that's the confirmation i was asking here.
My setup is that the external monitor has the menubar and the built-in monitor is to the left. The Wooshy input is on the external monitor. In this case, the yellow highlights appear correctly on the external monitor, but the built-in monitor doesn't show any highlights. That's the bug that I was trying to report.
yes, i got it. i can reproduce.
If I move the Wooshy input field to the built-in monitor then all hell breaks loose and the highlights are all in the wrong places.
yep. same.
I don't have Alfred, but Vimac handles this correctly. Do you need me to test something on Alfred for you?
no need, thanks. yes, Vimac handles the "Targets" well, so i know Wooshy can also. but Vimac has no "Input" to show. that's a different process. but i know where to dig more now. thanks. we'll get this done.
getting there:
https://user-images.githubusercontent.com/121373/192112794-1a89f429-29fe-45ba-a511-f9812bbb8e12.mp4
but still needs LOTS of automated tests. there's many bugs in the macOS screens API, depending whether you use the Separate Spaces or not, whether you're in fullscreen or not, etc., etc. so it's gonna take a bit more time before getting something proper and sustainable.
ok. should be all done, all tested. that was fun. (kidding.) https://github.com/godbout/Wooshy.docs/releases/tag/1.a24 please let me know if you're still finding issues. thanks!
@blackketter any feedback? thanks.
Seems to be working well, thanks. I'll reopen if I find issues.
@blackketter thank YOU! learned a lot about the macOS display framework along the way. very useful. thanks again for reporting.