With this patch dolphin now supports the following touch gestures:
* Tap gesture to interact/open with directories, files and so on
* TapAndHold and release gesture for access to the context menu (main window, panel folder, places and information)
* TapAndHold and moving gesture for drag and drop action (main windows, panel folder and places)
* pinch gesture for zoom in main window
* kinetic scrolling (QScroller) for main window, panel folder, panel places, panel information, setting preview and service
* two fingers swipe gesture to left, right and up as shortcut to navigate back, forward and up
* two finger tap gesture to toggle item selection, similar to Ctrl and left mouse click
FEATURE: 385066
FIXED-IN: 20.11.80
You are currently rebasing branch 'touch' on '85241a924'.
Ahmad Samir [Sun, 13 Sep 2020 13:28:33 +0000 (15:28 +0200)]
TerminalPanel: StatJob::mostLocalUrl only works with ":local" protocols
StatJob::mostLocalUrl was changed to cancel the job automatically if the
protocol Class isn't ":local", mostLocalUrl only makes sense with ioslaves
that actually set UDS_LOCAL_PATH (which should have calss ":local").
I tested that kio-fuse still works, when having the terminal panel open and
changing direcotries in Dolphin, with an sftp:// server.
We can not know if a service got deleted, so we clear
the model and reload the services. The issue that the entries are
not uninstalled has already been solved, this is just a patch to
fix the state of the UI.
Elvis Angelaccio [Thu, 28 May 2020 16:53:31 +0000 (18:53 +0200)]
Port away from QWheelEvent::orientation()
We are supposed to use QWheelEvent::angleDelta() instead. Upon an
horizontal/vertical scroll event, its `x()`/`y()` method will return a
value different from zero.
Fix selection rect after porting from QFontMetrics::width()
After porting from QFontMetrics::width() to QFontMetrics::boundigRect().width() in system/dolphin!10 we have a visual bug on selection rects, that can be seen on details and compact modes.
While from https://kdepepo.wordpress.com/2019/08/05/about-deprecation-of-qfontmetricswidth/ the use of `boundingRect()` would seem the right option to use (and I struggle to get the difference between the two methods when applied to a whole string and not a single char), in this case the `horizontalAdvance()` seems to return the value we need.
Fix selection rect after porting from QFontMetrics::width()
After porting from QFontMetrics::width() to QFontMetrics::boundigRect().width() in system/dolphin!10 we have a visual bug on selection rects, that can be seen on details and compact modes.
While from https://kdepepo.wordpress.com/2019/08/05/about-deprecation-of-qfontmetricswidth/ the use of `boundingRect()` would seem the right option to use (and I struggle to get the difference between the two methods when applied to a whole string and not a single char), in this case the `horizontalAdvance()` seems to return the value we need.
[search] Fix corner cases when using quotes in filenames
The `filename` term in a search query is enclosed into quotes.
As the user can have additional quotes in the search term, there were several
corner cases where the parsing would fail to correctly split the terms
New test cases have been added to cover this possibility
Previous tests still passes to avoid regressions
BEFORE:
```
(filename/quoted) Compared values are not the same
Actual (query.text()): "xyz\"\""
Expected (expectedText): "\"abc xyz\""
(filename/mixed) Compared values are not the same
Actual (query.text()): "xyz\" tuv\""
Expected (expectedText): "\"abc xyz\" tuv"
(content+filename/quoted) Compared values are not the same
Actual (query.text()): "abc xyz xyz\"\""
Expected (expectedText): "abc xyz filename:\"\"abc xyz\"\""
```
[search] Do not update text input when it has focus
When the user is entering a search term, a delayed search will be
emmited after a few seconds. This means updating the search URL, which
in turn gets parsed and reflected back on the search input.
To avoid interrupting the user input flow and unexpectedly move the
cursor to the end, let's update the input search box only when it
doesn't have the focus.
It's still updated on other interactions such as changing the search
options or clicking a saved search on the places panel.
## Summary
* Adds a "Copy location" item, after the "Copy" Context item and Edit Menu, which will attempt to copy the path of the fist item into clipboard.
## Reasoning
Most File Managers have this option through one or another way.
Also using the default Copy option often results in different behaviour depending on the target software, Konsole will take the path. Other Programs will use the URI. Which ultimately could lead to non optimal User Experience.
## Notes
* Should the target file **not** be on a local hard drive, this fallback to using the remote URL, feedback is wanted on that matter.
Kai Uwe Broulik [Mon, 8 Jun 2020 20:45:27 +0000 (22:45 +0200)]
Generalize Player protocol support
In preparation for AFC support in KFilePlacesModel.
This needs to go into stable since otherwise once Solid announces
AFC devices Dolphin would see them but try to open them as MTP URL
Gastón Haro [Tue, 9 Jun 2020 17:03:30 +0000 (11:03 -0600)]
Provide ability to configure size cut-off for local file previews
Summary:
FileWidgets read from kdeglobals the property "MaximumSize" under "PreviewSettings" to decide if a preview will be generated for that file.
There is no current GUI to change that file size limit. On the other hand Dolphin ignores it.
This patch aims to fix that by adding new configuration options to Dolphin. That is a new spinbox in Dolphin settings under General -> Previews tab.
Test Plan:
1 - Set up a local folder with 2 jpg images of less and more than 1 MB respectively.
2 - Go to Dolphin Preferences. General -> Previews and check "JPEG Images" from
the list. And set "Skip previews for files above:" to 1MB.
3 - Navigate to the afore mentioned folder. Only the image of size less than 1 MB should
show a preview.