From: Peter Penz Date: Tue, 12 Aug 2008 19:22:38 +0000 (+0000) Subject: Activate the tab when an item is dragged above an inactive tab. Thanks to Dmitry... X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/00afeea5f5cf59969a316b8bf7c219d12c3300f3?ds=inline Activate the tab when an item is dragged above an inactive tab. Thanks to Dmitry Khlystov for the patch! BUG: 164312 svn path=/trunk/KDE/kdebase/apps/; revision=846009 --- diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index fdf394722..8604b0876 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -774,6 +774,11 @@ void DolphinMainWindow::handlePlacesClick(const KUrl& url, Qt::MouseButtons butt } } +void DolphinMainWindow::slotTestCanDecode(const QDragMoveEvent* event, bool& canDecode) +{ + canDecode = KUrl::List::canDecode(event->mimeData()); +} + void DolphinMainWindow::init() { DolphinSettings& settings = DolphinSettings::instance(); @@ -818,6 +823,8 @@ void DolphinMainWindow::init() this, SLOT(openTabContextMenu(int, const QPoint&))); connect(m_tabBar, SIGNAL(newTabRequest()), this, SLOT(openNewTab())); + connect(m_tabBar, SIGNAL(testCanDecode(const QDragMoveEvent*, bool&)), + this, SLOT(slotTestCanDecode(const QDragMoveEvent*, bool&))); m_tabBar->blockSignals(true); // signals get unblocked after at least 2 tabs are open QWidget* centralWidget = new QWidget(this); diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h index 1676afb7e..f97193cd4 100644 --- a/src/dolphinmainwindow.h +++ b/src/dolphinmainwindow.h @@ -341,6 +341,12 @@ private slots: * view is replaced by \a url. */ void handlePlacesClick(const KUrl& url, Qt::MouseButtons buttons); + + /** + * Is connected to the KTabBar signal testCanDecode() and adjusts + * the output parameter \a accept. + */ + void slotTestCanDecode(const QDragMoveEvent* event, bool& accept); private: DolphinMainWindow(int id);