On Mon, 7 Aug 2023 07:56:27 GMT, John Hendrikx <jhendr...@openjdk.org> wrote:
> > > both windows (using EmbeddedFrameBug class listed earlier) shows O100% > > > for primary retina screen (should be 200%). > > > > > > @hjohn Seems like @andy-goryachev-oracle is telling it regressed after > > `updateSceneState` integration as previously he mentioned > > [#1171 > > (review)](https://github.com/openjdk/jfx/pull/1171#pullrequestreview-1522452579) > > > getting the scales right on both monitors now (macOS) > > > the image is rendered with no gaps. > > > LGTM > > > > > > So, it seems scaling swing-interop fix with`stage.setRenderScaleX/Y`was > > solving JDK-8274932 but not JDK-8222209 whereas your fix is solving both in > > windows but not solving JDK-8274932 in mac.. Since this seems to be about > > windows-toolkit `updateSceneState` , probably it's best to take it out from > > this PR and let it have only swing-interop change with > > `stage.setRenderScaleX/Y` and remove JDK-8222209 from this PR.. What you > > both suggest? > > IMHO, calling `setRenderScaleX/Y` should never be done by JavaFX, unless it > is in response to a change in the ouput scale properties -- render scale is > for the user to change the render size. Calling them from JFXPanel is fixing > a symptom of the problem, not the actual problem. The ouput scales should be > correct as well (in fact, in 99% of the cases they will be the same as the > render scale, unless the user overrides the render scale). > > So, JavaFX should be ensuring that the output scale is correct (which will > then be copied to the render scale). > > This is why I was looking further, and why I recommended calling > `updateSceneState`, as in that way the output scales get changed, and, > consequently, the render scales are updated. Any idea then why it would not work in macos? Did you test it there? Probably windows-toolkit has a native component where it needs some updation? ------------- PR Comment: https://git.openjdk.org/jfx/pull/1171#issuecomment-1667417424