diff options
| author | Emmanuel Pescosta <[email protected]> | 2013-04-23 22:50:01 +0200 |
|---|---|---|
| committer | Emmanuel Pescosta <[email protected]> | 2013-04-23 22:50:01 +0200 |
| commit | d1676999327c6135ee2ea4087313f8ab70ea2acd (patch) | |
| tree | 69a19c65d0f438ab24b21883586f62bed2b3fd92 /src | |
| parent | 7f381a34cb37ff4aeb215a8fe91448e5ea27aca0 (diff) | |
Scroll to newly pasted files.
If multiple files are pasted, scroll to the first pasted file.
BUG: 315722
REVIEW: 109950
FIXED-IN: 4.11.0
Diffstat (limited to 'src')
| -rw-r--r-- | src/views/dolphinview.cpp | 13 | ||||
| -rw-r--r-- | src/views/dolphinview.h | 1 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index d1e154f68..abf572fec 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -102,6 +102,7 @@ DolphinView::DolphinView(const KUrl& url, QWidget* parent) : m_restoredContentsPosition(), m_selectedUrls(), m_clearSelectionBeforeSelectingNewItems(false), + m_markFirstNewlySelectedItemAsCurrent(false), m_versionControlObserver(0) { m_topLayout = new QVBoxLayout(this); @@ -1070,7 +1071,13 @@ void DolphinView::slotMouseButtonPressed(int itemIndex, Qt::MouseButtons buttons void DolphinView::slotAboutToCreate(const KUrl::List& urls) { - m_selectedUrls << urls; + if (!urls.isEmpty()) { + if (m_markFirstNewlySelectedItemAsCurrent) { + markUrlAsCurrent(urls.first()); + m_markFirstNewlySelectedItemAsCurrent = false; + } + m_selectedUrls << urls; + } } void DolphinView::slotSelectionChanged(const QSet<int>& current, const QSet<int>& previous) @@ -1225,10 +1232,11 @@ void DolphinView::updateViewState() m_view->scrollToItem(currentIndex); m_scrollToCurrentItem = false; } + + m_currentItemUrl = KUrl(); } else { selectionManager->setCurrentItem(0); } - m_currentItemUrl = KUrl(); } if (!m_restoredContentsPosition.isNull()) { @@ -1533,6 +1541,7 @@ void DolphinView::pasteToUrl(const KUrl& url) KonqOperations* op = KonqOperations::doPasteV2(this, url); if (op) { m_clearSelectionBeforeSelectingNewItems = true; + m_markFirstNewlySelectedItemAsCurrent = true; connect(op, SIGNAL(aboutToCreate(KUrl::List)), this, SLOT(slotAboutToCreate(KUrl::List))); } } diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h index 13cc66545..e50dffcd8 100644 --- a/src/views/dolphinview.h +++ b/src/views/dolphinview.h @@ -769,6 +769,7 @@ private: QList<KUrl> m_selectedUrls; // Used for making the view to remember selections after F5 bool m_clearSelectionBeforeSelectingNewItems; + bool m_markFirstNewlySelectedItemAsCurrent; VersionControlObserver* m_versionControlObserver; |
