Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-114473

QPalette::cacheKey() is different for same object iff own style sheet is used

    XMLWordPrintable

Details

    • 79abdd3cd (dev), d117cd5f3 (6.6), 022657d7d (dev), 813bbc515 (dev), acc2cdb6c (6.6), 4a15c6bdf (6.6)

    Description

      Quoting QTBUG-112200, which has a reproducer for this issue, but was fixed in a different way:

      I debugged the problem and found that QStyleHelper::uniqueName in QFusionStyle::qt_fusion_draw_arrow always gives different values on same objects. This is caused by palette.cacheKey() (only if our own stylesheet is used).

      uniqueName() returning a different value every time should be fixed, too, because it makes the pixmap caching basically non-existent.

      I've micro-optimized the painting, but it's of course still orders of magnitudes slower than blitting a cached pixmap.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              vhilshei Volker Hilsheimer
              mmutz Marc Mutz
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: