KItemListSmoothScroller::handleWheelEvent has some issues:
1. When I scroll file list holding mouse over the list, one mouse wheel tick corresponds
to 1/4 page interval, but when I hover on QScrollBar, one wheel tick corresponds to
1 page interval.
2. In KItemListSmoothScroller::eventFilter we don't return true, so that QScrollBar also
handles this event, and total scroll interval is m_scrollBar->pageStep() +
m_scrollBar->singleStep().
3. When I use touchpad that supports smooth scrolling via XInput2, and I hover it over
QScrollBar, I can only scroll content if I move my fingers very fast, because
numSteps = event->delta() / 8 / 15 is just zero unless I move very fast
(event->delta() in this case is less than 120).
4. Holding Shift while scrolling has no effect when holding mouse over QScrollBar in
contrast to scrolling faster when holding mouse over file list.
The patch eliminates all these issues making the behavior of KItemListSmoothScroller the
same as in KItemListContainer::wheelEvent, adding support for QWheelEvent::pixelDelta()
and removing usage of deprecated QWheelEvent::delta().
REVIEW: 124670
FIXED-IN: 15.12.0
It appears that KF5TextEditor was added for KTextEdit, but that is actually
provided by KF5TextWidgets. It's then necessary to explicitly link to KF5Parts
(it was previously brought in implicitly by KF5TextEditor).
REVIEW: 124932
Proofread + check if the info is still valid, bump date + releaseinfo
Screenshots were already silently updated to kf5 in the past, see https://docs.kde.org/trunk5/en/applications/dolphin/index.html
Added Emmanuel as developer
Removed link to dolphin.kde.org, because this redirects to the userbase page
Fixed how to get Dolphin
REVIEW:124594
there are no headers being installed for the private library so it cannot
be linked anyway, so we can also skip the namelink creation (.so symlink)
REVIEW: 124812
This can be changed to 5.1 or 6.0 on its own schedule
(although libdolphinprivate is really private, no headers installed)
CCMAIL: emmanuelpescosta099@gmail.com
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