summaryrefslogtreecommitdiffstats
path: root/konqueror
diff options
context:
space:
mode:
Diffstat (limited to 'konqueror')
-rw-r--r--konqueror/iconview/konq_iconview.cc16
-rw-r--r--konqueror/iconview/konq_iconview.h1
-rw-r--r--konqueror/listview/konq_listviewwidget.cc26
-rw-r--r--konqueror/listview/konq_listviewwidget.h1
4 files changed, 44 insertions, 0 deletions
diff --git a/konqueror/iconview/konq_iconview.cc b/konqueror/iconview/konq_iconview.cc
index d90fe5290..595c02948 100644
--- a/konqueror/iconview/konq_iconview.cc
+++ b/konqueror/iconview/konq_iconview.cc
@@ -348,6 +348,8 @@ KonqKfmIconView::KonqKfmIconView( TQWidget *parentWidget, TQObject *parent, cons
this, TQT_SLOT( slotMouseButtonClicked(int, TQIconViewItem*, const TQPoint&)) );
connect( m_pIconView, TQT_SIGNAL( contextMenuRequested(TQIconViewItem*, const TQPoint&)),
this, TQT_SLOT( slotContextMenuRequested(TQIconViewItem*, const TQPoint&)) );
+ connect( m_pIconView, TQT_SIGNAL( mouseDoubleClicked(TQIconViewItem*)),
+ this, TQT_SLOT( slotDoubleClicked(TQIconViewItem*)) );
// Signals needed to implement the spring loading folders behavior
connect( m_pIconView, TQT_SIGNAL( held( TQIconViewItem * ) ),
@@ -861,6 +863,20 @@ void KonqKfmIconView::slotMouseButtonClicked(int _button, TQIconViewItem* _item,
mmbClicked( _item ? static_cast<KFileIVI*>(_item)->item() : 0L );
}
+void KonqKfmIconView::slotDoubleClicked(TQIconViewItem *_item)
+{
+ if (!_item)
+ {
+ KParts::URLArgs args;
+ args.trustedSource = true;
+ KURL upURL = m_dirLister->url().upURL();
+ if (!upURL.isEmpty())
+ {
+ m_extension->openURLRequest(upURL, args);
+ }
+ }
+}
+
void KonqKfmIconView::slotStarted()
{
// Only emit started if this comes after openURL, i.e. it's not for an update.
diff --git a/konqueror/iconview/konq_iconview.h b/konqueror/iconview/konq_iconview.h
index 5a5f0a1ac..5c1584efc 100644
--- a/konqueror/iconview/konq_iconview.h
+++ b/konqueror/iconview/konq_iconview.h
@@ -97,6 +97,7 @@ protected slots:
void slotReturnPressed( TQIconViewItem *item );
void slotMouseButtonPressed(int, TQIconViewItem*, const TQPoint&);
void slotMouseButtonClicked(int, TQIconViewItem*, const TQPoint&);
+ void slotDoubleClicked(TQIconViewItem*);
void slotContextMenuRequested(TQIconViewItem*, const TQPoint&);
void slotOnItem( TQIconViewItem *item );
void slotOnViewport();
diff --git a/konqueror/listview/konq_listviewwidget.cc b/konqueror/listview/konq_listviewwidget.cc
index ad7ada2c4..b7dd24c4b 100644
--- a/konqueror/listview/konq_listviewwidget.cc
+++ b/konqueror/listview/konq_listviewwidget.cc
@@ -522,6 +522,32 @@ void KonqBaseListViewWidget::contentsWheelEvent( TQWheelEvent *e )
TDEListView::contentsWheelEvent( e );
}
+void KonqBaseListViewWidget::contentsMouseDoubleClickEvent(TQMouseEvent *e)
+{
+ if (m_rubber) {
+ TQRect r(m_rubber->normalize());
+ delete m_rubber;
+ m_rubber = NULL;
+ repaintContents(r, false);
+ }
+
+ TQPoint vp = contentsToViewport(e->pos());
+ KonqBaseListViewItem* item = isExecuteArea(vp) ?
+ static_cast<KonqBaseListViewItem*>(itemAt(vp)) : NULL;
+
+ if (item) {
+ TDEListView::contentsMouseDoubleClickEvent(e);
+ }
+ else {
+ KParts::URLArgs args;
+ args.trustedSource = true;
+ KURL upURL = m_dirLister->url().upURL();
+ if (!upURL.isEmpty()) {
+ m_pBrowserView->extension()->openURLRequest(upURL, args);
+ }
+ }
+}
+
void KonqBaseListViewWidget::leaveEvent( TQEvent *e )
{
if ( m_activeItem != 0 )
diff --git a/konqueror/listview/konq_listviewwidget.h b/konqueror/listview/konq_listviewwidget.h
index ae79e5c03..613f012b3 100644
--- a/konqueror/listview/konq_listviewwidget.h
+++ b/konqueror/listview/konq_listviewwidget.h
@@ -214,6 +214,7 @@ protected:
virtual void contentsMouseReleaseEvent( TQMouseEvent *e );
virtual void contentsMouseMoveEvent( TQMouseEvent *e );
virtual void contentsWheelEvent( TQWheelEvent * e );
+ virtual void contentsMouseDoubleClickEvent( TQMouseEvent *e );
virtual void leaveEvent( TQEvent *e );