[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