Review Request 114460: Remove even more redundant data from KItemListViewLayouter

Frank Reininghaus frank78ac at googlemail.com
Sat Dec 14 18:37:21 GMT 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/114460/
-----------------------------------------------------------

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: http://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/20131214/9014a4bf/attachment.htm>


More information about the kfm-devel mailing list