┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEmmanuel Pescosta <[email protected]>2013-04-23 22:50:01 +0200
committerEmmanuel Pescosta <[email protected]>2013-04-23 22:50:01 +0200
commitd1676999327c6135ee2ea4087313f8ab70ea2acd (patch)
tree69a19c65d0f438ab24b21883586f62bed2b3fd92 /src
parent7f381a34cb37ff4aeb215a8fe91448e5ea27aca0 (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.cpp13
-rw-r--r--src/views/dolphinview.h1
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;