[Differential] [Request, 621 lines] D4414: don't regenerate frames when setting every property

Marco Martin noreply at phabricator.kde.org
Thu Feb 2 17:55:50 UTC 2017


mart created this revision.
mart added a reviewer: Plasma.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added subscribers: Frameworks, plasma-devel.

REVISION SUMMARY
  give frameSvg the concept of repaintBlocked(), that enables and
  disables the regeneration of the frame data when a property is set.
  the use case is when often, a lot of properties are set one after
  the other (such as prefix, enabled borders, size)
  collapse the formely similar, but a bit different logic of frame
  regeneration is a single function for better maintanability.
  QML FrameSvgItem sets repaintblocked when it starts and releases it just on oncomponentCompleted

TEST PLAN
  plasmashell still starts, autotests still work, all frames are rendered correctly
  the destruction of old frames is cutted by 50%. in the qml profiler
  the creation time of a framesvgitem slightly improved, on this machine from around 26 msecs to around 21, can still be improved, but at least the code is a bit simpler

REPOSITORY
  R242 Plasma Framework (Library)

BRANCH
  mart/FrameSvgTransactions

REVISION DETAIL
  https://phabricator.kde.org/D4414

AFFECTED FILES
  autotests/data/background.svgz
  autotests/framesvgtest.cpp
  autotests/framesvgtest.h
  src/declarativeimports/core/framesvgitem.cpp
  src/declarativeimports/core/framesvgitem.h
  src/plasma/framesvg.cpp
  src/plasma/framesvg.h
  src/plasma/private/framesvg_p.h

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: mart, #plasma
Cc: plasma-devel, #frameworks, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20170202/029095d5/attachment.html>


More information about the Kde-frameworks-devel mailing list