Review Request 117813: Make the system tray faster

Sebastian Kügler sebas at kde.org
Mon Apr 28 10:00:57 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117813/#review56719
-----------------------------------------------------------


I like muchos. Haven't tested it yet, as I'm still resurrecting my builds, so I'm ok with shipping it, but don't feel comfortable "ship it"ing it myself. :)

Good work!


applets/systemtray/package/contents/ui/StatusNotifierItem.qml
<https://git.reviewboard.kde.org/r/117813/#comment39579>

    The answer is easy: It also wastes memory! ;-)
    
    More seriously, I think it's a leftover from the old implementation and can be removed throughout.



applets/systemtray/package/contents/ui/TaskDelegate.qml
<https://git.reviewboard.kde.org/r/117813/#comment39582>

    It is used to determine whether we're a delegate in the hidden section (so with text), or in the panel section (square).



applets/systemtray/plugin/host.cpp
<https://git.reviewboard.kde.org/r/117813/#comment39584>

    no spaces around Task



applets/systemtray/plugin/tasklistmodel.h
<https://git.reviewboard.kde.org/r/117813/#comment39585>

    "a model representing items for the system tray"?



applets/systemtray/plugin/tasklistmodel.cpp
<https://git.reviewboard.kde.org/r/117813/#comment39586>

    see above


- Sebastian Kügler


On April 27, 2014, 10:51 p.m., David Edmundson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/117813/
> -----------------------------------------------------------
> 
> (Updated April 27, 2014, 10:51 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
> -----
> 
>   applets/systemtray/package/contents/ui/ExpandedRepresentation.qml 2ef180b 
>   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/plugin/CMakeLists.txt f6e23b4 
>   applets/systemtray/plugin/host.h 02c5bbe 
>   applets/systemtray/plugin/host.cpp eafd0b6 
>   applets/systemtray/plugin/protocols/plasmoid/plasmoidtask.cpp 2b846f2 
>   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/20140428/dc4ceca1/attachment-0001.html>


More information about the Plasma-devel mailing list