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

PresentingPainter and UploadingPainter disregarding dirty clip rect

    XMLWordPrintable

    Details

      Description

      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;

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                Created:
                Updated:
                Imported: