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

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

              Dates

                Created:
                Updated:
                Imported: