summaryrefslogtreecommitdiffstats
path: root/tdeio/tdefile/tdediroperator.cpp
diff options
context:
space:
mode:
authorMavridis Philippe <mavridisf@gmail.com>2024-05-28 00:03:14 +0300
committerTDE Gitea <gitea@mirror.git.trinitydesktop.org>2024-06-01 14:40:47 +0000
commit4911fcf8417043562fcf397596d212db5733e189 (patch)
tree21ded7aaa97e3f8e022ceab409733d61d90dd6f4 /tdeio/tdefile/tdediroperator.cpp
parentcc43ae5992f63e378d7ef91d703d98eaa3133205 (diff)
downloadtdelibs-4911fcf8417043562fcf397596d212db5733e189.tar.gz
tdelibs-4911fcf8417043562fcf397596d212db5733e189.zip
KDirOperator: add support for history navigation mouse buttons
Signed-off-by: Mavridis Philippe <mavridisf@gmail.com>
Diffstat (limited to 'tdeio/tdefile/tdediroperator.cpp')
-rw-r--r--tdeio/tdefile/tdediroperator.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/tdeio/tdefile/tdediroperator.cpp b/tdeio/tdefile/tdediroperator.cpp
index 9bf947f20..8b133d433 100644
--- a/tdeio/tdefile/tdediroperator.cpp
+++ b/tdeio/tdefile/tdediroperator.cpp
@@ -145,6 +145,8 @@ KDirOperator::KDirOperator(const KURL& _url,
setupMenu();
setFocusPolicy(TQWidget::WheelFocus);
+
+ installEventFilter(this);
}
KDirOperator::~KDirOperator()
@@ -1046,6 +1048,11 @@ void KDirOperator::connectView(KFileView *view)
}
m_fileView = view;
+ m_fileView->widget()->installEventFilter(this);
+ if (m_fileView->widget()->inherits("TQScrollView"))
+ {
+ (static_cast<TQScrollView *>(m_fileView->widget()))->viewport()->installEventFilter(this);
+ }
m_fileView->setDropOptions(d->dropOptions);
viewActionCollection = 0L;
KFileViewSignaler *sig = view->signaler();
@@ -1734,6 +1741,24 @@ TQString KDirOperator::viewConfigGroup() const
return d->configGroup;
}
+bool KDirOperator::eventFilter(TQObject *obj, TQEvent *ev)
+{
+ if (ev->type() == TQEvent::MouseButtonRelease)
+ {
+ TQMouseEvent *mouseEv = static_cast<TQMouseEvent *>(ev);
+ switch (mouseEv->button())
+ {
+ case TQMouseEvent::HistoryBackButton:
+ back();
+ return true;
+ case TQMouseEvent::HistoryForwardButton:
+ forward();
+ return true;
+ }
+ }
+ return false;
+}
+
void KDirOperator::virtual_hook( int, void* )
{ /*BASE::virtual_hook( id, data );*/ }