Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8091385

PresentingPainter and UploadingPainter disregarding dirty clip rect

XMLWordPrintable

      The PresentingPainter's run method has a call to presentable.prepare in which it passes a null. This ends up taking an enormous amount of time. Passing the clip makes this much faster. I don't think that passing the clip is the only thing that needs to be done here (it is so slow, measuring > 100ms, that it implies that whenever the entire scene has been redrawn that we will see sub <10fps performance which is unacceptable).

      Nevertheless, this patch seems to fix the issue for FishSim.


      diff -r 022ed295ff86 -r be94eec3b5b2 javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java
      --- a/javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java Wed Mar 14 04:36:56 2012 +0100
      +++ b/javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java Wed Mar 14 04:37:14 2012 +0100
      @@ -73,7 +73,7 @@
                           paintImpl(g);
                       }

      - if (!presentable.prepare(null)) {
      + if (!presentable.prepare((g == null ? null : g.getClipRect())) {
                           disposePresentable();
                           scene.entireSceneNeedsRepaint();
                           return;

            Unassigned Unassigned
            rbair Richard Bair (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Imported: