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

Screen area setting. #14

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

serge-rgb
Copy link
Contributor

@serge-rgb serge-rgb commented Jun 7, 2016

[Edit: Clarity. Also, I had said something about EasyTab not working with multiple monitors, which wasn't true! EasyTab was working, but setting the whole monitor as the output area. ]

This implements support for screen area mapping, which means not setting the SysOrg and SysExt variables in LogContext.

screenshot 2016-06-06 20 55 16

Looking at lines 895 and 896 of the PR:

       Point.x = EasyTab->ScreenOriginX + Packet.pkX / EasyTab->ScreenAreaRatioX;
       Point.y = EasyTab->ScreenOriginY + Packet.pkY / EasyTab->ScreenAreaRatioY;

when before it was:

        Point.x = Packet.pkX;
        Point.y = Packet.pkY;

This should work as before when the feature is not being used.

  • On a single monitor config, ScreenOrigin(X|Y) should be 0.
  • When the feature is disabled, SysExt(X|Y) will be equal to CoordRange(X|Y), so ScreenAreaRatio(X|Y) will be 1.

I tested it on my machine enabling only one monitor and toggling the feature, but please test it if you choose to merge this :)

The feature works as expected with Milton compared with other programs that support it (Krita, Mischief, Gimp) but I have only tried it out with Milton. Maybe test it with Papaya first?

Finally, requesting code review :)

@serge-rgb serge-rgb changed the title Multiple monitors; Screen area setting. Screen area setting. Jun 7, 2016
@serge-rgb
Copy link
Contributor Author

Replying to say Don't merge this! Just got this bug report. Tracked it down to find out that the culprit is the ScreenAreaRatio, which doesn't work as expected when Windows has its scaling level above 100%. GetSystemMetrics gets the scaled resolution while the Wacom Driver gets the real resolution..

@serge-rgb serge-rgb closed this Jun 30, 2016
@serge-rgb
Copy link
Contributor Author

Reopening until I'm certain it's not an easy fix

@serge-rgb serge-rgb reopened this Jul 5, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant