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

Render tree is modified during Text bounds calculation

    Details

      Description

      Render tree is accessed and modified during Text bounds calculation and other TextHelper operations. These operations can be invoked outside of pulses and so the render tree modifications in them are problematic for the future concurrent rendering.

      Here is example of a problematic TextHelper method:

      @Override public BaseBounds computeBounds(BaseBounds bounds, BaseTransform tx) {
          Scene.impl_setAllowPGAccess(true);
          NGText ng = (NGText) text.impl_getPGNode();
          text.impl_syncPGNodeDirect();
          Scene.impl_setAllowPGAccess(false);
          return ng.computeContentBounds(bounds, tx);
      }

      One possible solution was prototyped here:
      http://javame-linux.czech.sun.com/r/1085/

      Diff:
      http://javame-linux.czech.sun.com/r/1085/diff/1-3/

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                prr Philip Race
                Reporter:
                lnerad Ľubomír Nerád
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported: