Revision 862165
Go back to digest for 21st September 2008Bug Fixes in KDE Base
David Faure committed changes in /trunk/KDE/kdelibs/kio:
Finally fixing bug 43356: "deleting files in directories with more than 3000 files gets painfully slow" (from 2002, with 260 votes)
With model/view we can finally update the view in a better way: by chunks instead of item-after-item. This required adding a itemsDeleted signal to KDirLister, and some figure-out-consecutive-removals logic in KDirModel using QBitArray (for beginInsertRows).
Results:
Deleting 5000 files with konqueror-4.1: 8 minutes (30 seconds stat'ing, 5 seconds deleting, and then 7'25" until the view refreshes).
Deleting 5000 files with konqueror-trunk: 15 seconds (2 seconds stat+deleting, 13 seconds until the view refreshes).
File Changes
Modified 8 files
- /trunk/KDE/kdelibs/kio
- /kio/kdirlister.cpp
- /kio/kdirlister.h
- /kio/kdirlister_p.h
- /kio/kdirmodel.cpp
- /kio/kdirmodel.h
- /tests/kdirlistertest.cpp
- /tests/kdirmodeltest.cpp
- /tests/kdirmodeltest.h
8 files changed in total