Fixes #703
The way the main overview page limits the number of transactions displayed (currently 5) is not an appropriate use of Qt. Our subclassed transaction sort/filter proxy model returns a maximum of 5 in rowCount(). However, the model itself actually may hold significantly more. While this has worked, it breaks the contract of rowCount().
If bitcoin-qt is run with a DEBUG build of Qt, it’ll result in an assert-crash in certain relatively common situations (see #703 for details). Instead of artificially limiting the rowCount() in the subclassed filter, we can hide/unhide the rows in the displaying QListView upon any changes in the sorted proxy filter.
I loaded a wallet with 20,000 transactions and did not notice any performance differences between master and this branch.
For reference, this is the list I’m referring to: