Port KRecursiveFilterProxyModel to QSortFilterProxyModel

Authored by ahmadsamir on Jan 10 2020, 7:43 PM.

Description

Port KRecursiveFilterProxyModel to QSortFilterProxyModel

Summary:
For SectionProxyModel, setting RecursiveFilteringEnabled to true makes
the view slow when e.g. expanding an item in the size tree view, also
filtering is very slow. Reimplement our own recursive filtering by using
code from KRecursiveFilterProxyModel::filterAcceptsRow(), it seems to
work without incurring the performance penalty we get with QSFPM.

For the rest of the instances where KRecursiveFilterProxyModel was used
Set RecursiveFilteringEnabled true by default.

The code still compiles and the unit tests that pass on master still pass.

Reviewers: vkrause

Reviewed By: vkrause

Maniphest Tasks: T12269

Differential Revision: https://phabricator.kde.org/D26577

Details

Committed
ahmadsamirJan 13 2020, 5:47 PM
Reviewer
vkrause
Differential Revision
D26577: Port KRecursiveFilterProxyModel to QSortFilterProxyModel
Parents
R739:4195e9e819b1: Fix compilation when capstone is not found
Branches
Unknown
Tags
Unknown