RFR: 8308191: [macOS] VoiceOver decorations are shifted on second monitor
Andy Goryachev
angorya at openjdk.org
Tue May 30 23:14:00 UTC 2023
On Tue, 30 May 2023 21:17:08 GMT, Alexander Zuev <kizune at openjdk.org> wrote:
> The coordinate system of the Mac OS X is reversed to the JavaFX coordinate system meaning that zero point [0,0] is the bottom left corner of the main screen and positive Y coordinate means elevation of the point above the zero line. Taking that into account we should use the main screen's height in order to calculate the correct vertical offset of the window - even if coordinates are physically on the secondary screen, otherwise on screens with different height that are not aligned along the bottom border we will have a wrong vertical position.
The problem described in the ticket seems to be fixed, as tested with macOS Ventura 13.3.1(a), using retina (scale=2) and external monitor (scale=1) in all possible arrangements relative to each other (8 in total).
Noticed two intermittent issues when moving the same javafx window between the monitors:
1. at some point, the window turned completely black. moving it on another monitor fixed the issue:
<img width="1791" alt="Screenshot 2023-05-30 at 15 37 38" src="https://github.com/openjdk/jfx/assets/107069028/69749e40-deb6-490e-8ee0-40cfe147c0c7">
2. sometimes, especially when monitors were arranged diagonally, accessibility focus rectangle, while placed correctly, was outlining a much taller area. I can't get this to reproduce reliably, but it feels like it happens after the window was positioned to straddle two monitors:
<img width="941" alt="Screenshot 2023-05-30 at 15 33 14" src="https://github.com/openjdk/jfx/assets/107069028/d7d4abbd-5227-4e79-a180-23df343c0a17">
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1147#issuecomment-1569255167
More information about the openjfx-dev
mailing list