On Thu, 17 Dec 2020 23:43:39 GMT, Kevin Rushforth <k...@openjdk.org> wrote:

>> Your latest patch looks exactly like what I would expect. I need to do some 
>> multi-screen testing on Windows with different scale factors.
>> 
>>> ... the repaint for the affected Region does not seem to occur right away 
>>> on moving the window to another screen, but only once the Region is 
>>> interacted with (e.g. hovering the mouse over it).
>> 
>> This seems like a different (and preexisting) bug then. I think we're up to 
>> three follow-on issues if I haven't lost track:
>> 
>> 1. Rendering a cached node doesn't match rendering it directly even when the 
>> transform is unchanged.
>> 2. TextFlow: methods copied from Region have not picked up subsequent 
>> changes in those methods
>> 3. Need to Render and layout scene out when scale changes (either when 
>> moving to a screen with a different scale or when the scale changes as the 
>> result of changing the setting of the current screen)
>
> I did some testing with your latest patch, and I don't see any problem when 
> dragging a window between screens with different scales. It seems to be 
> recalculating the cached insets and using them in layout as I would expect. 
> Do you have a test case that shows the problem?

Unfortunately I've only seen it within an application with a fairly complex 
scene graph, which make isolating the issue  tricky. 

I'm still trying to reproduce it a minimal sample, but in the mean time, please 
have a look at the a screen capture below, which should at least help clarify 
the issue I'm observing:

![8211294](https://user-images.githubusercontent.com/7450507/102610169-064d6000-412d-11eb-8ebd-b1999a6c6009.gif)

This snippet is captured after the window had been moved from a screen scaled 
to 100% to a second one scaled to 150%; notice how the controls in the "Chart 
Properties" pane only snap to pixel when the mouse pointer enters the pane.

-------------

PR: https://git.openjdk.java.net/jfx/pull/308

Reply via email to