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

CSS creates new objects for complex values which trigger redundant processing including rendering

    XMLWordPrintable

    Details

      Description

      It's a generalization of RT-24516 and covers cases like effects (dropshadow, innershadow) and shapes (SVGPath). Whenever a corresponding style is recalculated a new value object is created. All the mentioned cases lack 'equals' method and thus don't pass check for equality in CssMetaData.set() and trigger redundant change in the processed property.
      On the one hand, required 'equals' methods could be provided in [some] such classes.
      On the other hand, if a value has a textual representation in a css file the CSS layer could take care of matching it with only one reusable instance of the corresponding class.

      The test case at hand is Ensemble8. Barely noticeable on desktop the issue becomes a factor on embedded platforms.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              dgrieve David Grieve
              Reporter:
              omazurov Oleg Mazurov (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Imported: