Review Request 114460: Remove even more redundant data from KItemListViewLayouter
Frank Reininghaus
frank78ac at googlemail.com
Sun Dec 29 08:50:02 GMT 2013
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/114460/
-----------------------------------------------------------
(Updated Dec. 29, 2013, 8:50 a.m.)
Status
------
This change has been marked as submitted.
Review request for Dolphin.
Repository: kde-baseapps
Description
-------
After https://git.reviewboard.kde.org/r/113487/, KItemListViewLayouter still stores quite a bit of redundant data.
For every item, we store the coordinates of its top-left corner in a QPointF 'pos' in the ItemInfo struct. This requires
2 * "number of items" doubles.
However, pos.x is the same for all items in one column, and pos.y is the same for all items in a row. Therefore, some memory can be saved by removing the 'pos' member, and adding two QVector<qreal>
m_rowOffsets and m_columnOffsets
instead. This reduces the memory requirement to
"number of rows + number of columns" doubles, which is at least 50% less.
Diffs
-----
dolphin/src/kitemviews/private/kitemlistviewlayouter.h a3b0893
dolphin/src/kitemviews/private/kitemlistviewlayouter.cpp f5f63d5
Diff: https://git.reviewboard.kde.org/r/114460/diff/
Testing
-------
Verfified with KSysGuard that the memory consumption is reduced as expected. View layout and scrolling still seem to work OK in all view modes and with grouping enabled or disabled.
Thanks,
Frank Reininghaus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20131229/920d48ba/attachment.htm>
More information about the kfm-devel
mailing list