┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kitemviews/kitemlistcontainer.cpp6
-rw-r--r--src/views/dolphinview.cpp11
-rw-r--r--src/views/dolphinview.h1
3 files changed, 18 insertions, 0 deletions
diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp
index 0d2637da6..c68af6d94 100644
--- a/src/kitemviews/kitemlistcontainer.cpp
+++ b/src/kitemviews/kitemlistcontainer.cpp
@@ -199,7 +199,13 @@ bool KItemListContainer::eventFilter(QObject* obj, QEvent* event)
void KItemListContainer::wheelEvent(QWheelEvent* event)
{
+ if (event->modifiers().testFlag(Qt::ControlModifier)) {
+ event->ignore();
+ return;
+ }
+
KItemListView* view = m_controller->view();
+
if (!view || event->orientation() != view->scrollOrientation()) {
return;
}
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index 099140177..d00c5c077 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -684,6 +684,17 @@ void DolphinView::contextMenuEvent(QContextMenuEvent* event)
}
}
+void DolphinView::wheelEvent(QWheelEvent* event)
+{
+ if (event->modifiers().testFlag(Qt::ControlModifier)) {
+ const int numDegrees = event->delta() / 8;
+ const int numSteps = numDegrees / 15;
+
+ setZoomLevel(zoomLevel() + numSteps);
+ }
+ event->accept();
+}
+
void DolphinView::activate()
{
setActive(true);
diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h
index 7c81ea8fc..085de332d 100644
--- a/src/views/dolphinview.h
+++ b/src/views/dolphinview.h
@@ -544,6 +544,7 @@ signals:
protected:
virtual void mouseReleaseEvent(QMouseEvent* event);
virtual void contextMenuEvent(QContextMenuEvent* event);
+ virtual void wheelEvent(QWheelEvent* event);
private slots:
/**