Review Request 117813: Make the system tray faster
David Edmundson
david at davidedmundson.co.uk
Fri May 2 16:10:15 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117813/
-----------------------------------------------------------
(Updated May 2, 2014, 4:10 p.m.)
Review request for Plasma.
Repository: plasma-workspace
Description
-------
Port QQmlListProperty to QAbstractListModel.
QQmlListProperty only has a signal that the list has changed.This means when used in a ListView every delegate has to be redone whenever a single item is inserted or removed rather than just moved.
Given TaskDelegate is not the simplest of things this has a performance gain, most noticeably on startup. Also rather than sorting all items after an insert items are inserted in the right place using qLowerBound. Now we have the correct signals we can remove the compression, they won't add anything.
Other commits:
Avoid constructing a QString for comparing, use QLatin1String for == operators.
Remove useless include
Do not construct a map inside a lessThan function
lessThan functions have to be fast.
Also Map -> Hash as we're not using order here.
Diffs (updated)
-----
applets/systemtray/package/contents/ui/CompactRepresentation.qml 01308e7
applets/systemtray/package/contents/ui/ExpandedRepresentation.qml 646b908
applets/systemtray/package/contents/ui/PlasmoidItem.qml 0eb1687
applets/systemtray/package/contents/ui/StatusNotifierItem.qml fc889a8
applets/systemtray/package/contents/ui/TaskDelegate.qml 913d8f1
applets/systemtray/package/contents/ui/TaskListDelegate.qml 5501e02
applets/systemtray/package/contents/ui/main.qml d1a6851
applets/systemtray/plugin/CMakeLists.txt f6e23b4
applets/systemtray/plugin/host.h 02c5bbe
applets/systemtray/plugin/host.cpp eafd0b6
applets/systemtray/plugin/task.h 68dcd12
applets/systemtray/plugin/task.cpp 1f8e3ca
applets/systemtray/plugin/tasklistmodel.h PRE-CREATION
applets/systemtray/plugin/tasklistmodel.cpp PRE-CREATION
Diff: https://git.reviewboard.kde.org/r/117813/diff/
Testing
-------
Seems to work :)
see branch davidedmundson/faster_systray to test
Thanks,
David Edmundson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20140502/7816df65/attachment-0001.html>
More information about the Plasma-devel
mailing list