Baloo is set to become a framework and wants to only export the bare
minimum number of classes as it will need to provide ABI + API
guarentees forever. The Term class is now no longer exported. It can be
added back again.
REVIEW: 123643
Commit 119f7a3f fixed a crash that was caused by the porting of the
natural sorting code to QCollator. QCollator is not thread-safe, so
every thread needs its own instance. However, that commit made every
recursive call in the sorting code create a new deep-copied QCollator
instance, which is quite expensive and thus made inserting any items
into the model very slow (this could also be seen in the KFileItemModel
benchmark).
This commit avoids unnecessary QCollator copying by forcing all sorting
functions which are called in the same thread to pass the 'lessThan'
object by const reference, such that no unnecessary copying of that
object, including a deep copy of the QCollator, takes place.
REVIEW: 123620
The benchmark inserted KFileItemLists of different sizes in the model.
The intention was to verify that an O(N^2) complexity issue was fixed.
However, now that this original problem does not exist any more, the
benchmark results are much easier to read, and regressions are much
easier to spot at first sight, if only a single list size is used.
Reduces the amount of needed code.
NEW: by using KMoreTools the menu is now user-configurable and
will automatically extended when KMoreToolsPresets gets new tools.
REVIEW: 122911
* Instead of setting and resetting GeneralSettings's split view option, just pass it on to openFiles/openDirectories.
* Require at least one url in openFiles/openDirectories
REVIEW: 123395
I added this benchmark quite a long time ago in order to check that the
changes in dc6322dc09 do not make
inserting many child items into the model slower. The test tries to
insert child items of different subfolders at the same time, which
cannot happen during normal usage because KDirLister only tells us about
one subfolder at a time.
The code was commented out a long time ago because it is no longer
compatible with the (greatly improved) new internal structure of
KFileItemModel. I think that it's not worth porting the benchmark
because it fulfilled its intended purpose a long time ago. Even if
someone decides to make a simplified working new benchmark out of it at
some point, it does not make much sense to keep this commented-out code
around for years. It can still be found in the git history - after all,
that's what version control systems are for.
This allows to work around limitations in Qt's date formatting.
Examples:
* Uppercasing the first character in a string because it's a title:
Day of the week and month names returned by QDateTime::toString
are usually lowercase.
* Correcting the noun case of a month name from "of [month]" to
"in [month]" in Finnish: "of [month]" is correct when talking
about a specific day, but wrong when talking about a specific month.
REVIEW: 123278
We probably need a more sophisticated heuristic for identifying devices in the places
panel but given we already did that for Bluetooth should do for the foreseeable future.
REVIEW: 123189
BUG: 337222