Skip to content
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

Make Screen.find support multiple monitors #165

Open
comcaptain opened this issue Aug 30, 2020 · 13 comments
Open

Make Screen.find support multiple monitors #165

comcaptain opened this issue Aug 30, 2020 · 13 comments
Labels
enhancement Enhancement to existing features

Comments

@comcaptain
Copy link

Short overview
According to doc of Screen.find and my experiment, search can only be done in the main monitor

Use case
It would be very convenient if Screen.find can work on multiple monitors

@s1hofmann s1hofmann added the enhancement Enhancement to existing features label Nov 13, 2020
@fadhilx
Copy link

fadhilx commented Nov 26, 2020

is there any news for this?

@svettwer
Copy link
Contributor

Hiho 👋

Nope, no news. I'm using a dual monitor setup where screen.find works great. Maybe it depends on the window/desktop manager?! Some more information about the setup of @comcaptain would be nice for evaluation. But we're also always happy to receive PRs. 🎉

@github-actions
Copy link

This issue is stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label Apr 28, 2022
@s1hofmann
Copy link
Member

Still open

@github-actions github-actions bot removed the stale label Apr 30, 2022
@github-actions
Copy link

This issue is stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label May 30, 2022
@s1hofmann s1hofmann removed the stale label Jun 8, 2022
@github-actions
Copy link

github-actions bot commented Jul 9, 2022

This issue is stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label Jul 9, 2022
@github-actions
Copy link

This issue was closed because it has been inactive for 14 days since being marked as stale.

@s1hofmann s1hofmann removed the stale label Aug 7, 2022
@s1hofmann s1hofmann reopened this Aug 7, 2022
@raphaelmenges
Copy link

raphaelmenges commented Nov 21, 2022

I believe the same limitation applies for Screen.grabRegion? At least on macOS.

@s1hofmann
Copy link
Member

I believe the same limitation applies for Screen.grabRegion? At least on macOS.

Correct

@raphaelmenges
Copy link

Looking forward for this feature. I have even taken the effort to port the captureScreen function of RobotJS to node-addon-api for the mean time, since that works for my multi-monitor setup: raphaelmenges/robotjs@da27b52

@s1hofmann
Copy link
Member

Capturing all monitors at once is actually doable, the reason why I've limited it to the main screen for now is that I need to spend some time to investigate how to handle screen coordinates consistently across the different window systems to properly work with scale settings, sorting etc.

I prefer a limited but consistent setup over something that could work by accident.

But as long as I don't have enough sponsorships to work on it full time it will take a while to land this, as I'm quite limited with my time 🙁

@raphaelmenges
Copy link

Thanks for the reply and effort!

To my understanding, the multi-monitor support of Robotjs indeed does work by accident, but it is fine so far. The different scaling and DPI handling across different systems is really a pain and I am looking forward for a sensible solution :)

@draeder
Copy link

draeder commented Dec 28, 2022

Dropping a comment for notifications on updates to this issue.

EDIT: For MacOS these commands reveal the coordinate info I need -

defaults read /Library/Preferences/com.apple.windowserver.plist > output.txt on my MacBook Pro 2020 13" running macOS Monterey (v12.5.1). But, talking with another developer, he doesn't have that domain, but instead has: com.apple.windowserver.displays.plist.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement to existing features
Projects
None yet
Development

No branches or pull requests

6 participants