JDK-8171852 : JavaFX Stage flickers on resize on Windows platforms
  • Type: Bug
  • Component: javafx
  • Sub-Component: graphics
  • Affected Version: 9
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2016-12-21
  • Updated: 2020-05-02
  • Resolved: 2017-01-09
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9Fixed
Related Reports
Relates :  
Relates :  
Description
To reproduce this:

1. Run any example program, e.g., HelloWebView

2. Resize the window repeatedly from the lower-right corner

3. BUG: you will see flickering where the stage is sometimes painted with just the background color

This is a recent regression. It is most noticeable with a complicated scene, such as HelloWebView or Ensemble8, but I can also see flickering with HelloRectangle or HelloAnimation.
Comments
Changeset: a9dfe42eef6d Author: ckyang Date: 2017-01-09 15:06 -0800 URL: http://hg.openjdk.java.net/openjfx/9-dev/rt/rev/a9dfe42eef6d
09-01-2017

+1
09-01-2017

Thanks for the feedback. Here is the revised webrev.01: http://cr.openjdk.java.net/~ckyang/JDK-8171852/webrev.01/
09-01-2017

GlassAppletWindow.java: It seems cleaner for setAppletMode to be valid in all cases, so I recommend setting it in the constructor and not in the setBackground method. Otherwise, this looks good to me.
09-01-2017

+1
09-01-2017

Kevin, Please review the proposed fix as we have discussed. The fix is to undo the fix for JDK-8088179 on Windows platform since the white flashing when opening a Stage doesn't apply to Windows. http://cr.openjdk.java.net/~ckyang/JDK-8171852/webrev.00/
06-01-2017

This regression is a result of the fix for JDK-8088179. I can confirm this by locally reverting that fix. On Windows platforms, the call to platformWindow.setBackground is causing the flickering. This is a serious regression that must be fixed, even if it means backing out the fix for JDK-8088179, although if another fix can be found that preserves the fix for JDK-8088179 that would be best.
21-12-2016