diff options
| author | Steffen Hartleib <[email protected]> | 2020-09-13 18:53:32 +0000 |
|---|---|---|
| committer | Elvis Angelaccio <[email protected]> | 2020-09-13 18:53:32 +0000 |
| commit | d7b33b76a18b14e9f286e4d8326b00910b9ea02a (patch) | |
| tree | ade5042c74a0d172172a9327244858825076c333 /src/views | |
| parent | d899c2b401869d29558f62fba3479bf744b0577c (diff) | |
Improve Touch support
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'.
Diffstat (limited to 'src/views')
| -rw-r--r-- | src/views/dolphinview.cpp | 18 | ||||
| -rw-r--r-- | src/views/dolphinview.h | 5 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index f102e9acb..2b4970eeb 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -134,6 +134,9 @@ DolphinView::DolphinView(const QUrl& url, QWidget* parent) : connect(controller, &KItemListController::escapePressed, this, &DolphinView::stopLoading); connect(controller, &KItemListController::modelChanged, this, &DolphinView::slotModelChanged); connect(controller, &KItemListController::selectedItemTextPressed, this, &DolphinView::slotSelectedItemTextPressed); + connect(controller, &KItemListController::increaseZoom, this, &DolphinView::slotIncreaseZoom); + connect(controller, &KItemListController::decreaseZoom, this, &DolphinView::slotDecreaseZoom); + connect(controller, &KItemListController::swipeUp, this, &DolphinView::slotSwipeUp); connect(m_model, &KFileItemModel::directoryLoadingStarted, this, &DolphinView::slotDirectoryLoadingStarted); connect(m_model, &KFileItemModel::directoryLoadingCompleted, this, &DolphinView::slotDirectoryLoadingCompleted); @@ -1954,3 +1957,18 @@ void DolphinView::copyPathToClipboard() } clipboard->setText(path); } + +void DolphinView::slotIncreaseZoom() +{ + setZoomLevel(zoomLevel() + 1); +} + +void DolphinView::slotDecreaseZoom() +{ + setZoomLevel(zoomLevel() - 1); +} + +void DolphinView::slotSwipeUp() +{ + emit goUpRequested(); +} diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h index 50a88e936..1d0ebe0fe 100644 --- a/src/views/dolphinview.h +++ b/src/views/dolphinview.h @@ -582,6 +582,8 @@ signals: */ void urlActivated(const QUrl& url); + void goUpRequested(); + protected: /** Changes the zoom level if Control is pressed during a wheel event. */ void wheelEvent(QWheelEvent* event) override; @@ -611,6 +613,9 @@ private slots: void slotRenameDialogRenamingFinished(const QList<QUrl>& urls); void slotSelectedItemTextPressed(int index); void slotCopyingDone(KIO::Job *, const QUrl &, const QUrl &to); + void slotIncreaseZoom(); + void slotDecreaseZoom(); + void slotSwipeUp(); /* * Is called when new items get pasted or dropped. |
