From 9aacd610a37f5d03c7dbd9ce712985c477578893 Mon Sep 17 00:00:00 2001 From: Emmanuel Pescosta Date: Fri, 9 Nov 2012 12:10:36 +0100 Subject: Fix Bug 309760 - Crash while inline-renaming a file and apply change with return-key BUG: 309760 FIXED-IN: 4.9.4 --- src/kitemviews/private/kitemlistroleeditor.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/kitemviews/private/kitemlistroleeditor.cpp b/src/kitemviews/private/kitemlistroleeditor.cpp index ead5b298e..78dbfe95b 100644 --- a/src/kitemviews/private/kitemlistroleeditor.cpp +++ b/src/kitemviews/private/kitemlistroleeditor.cpp @@ -144,7 +144,8 @@ void KItemListRoleEditor::keyPressEvent(QKeyEvent* event) return; case Qt::Key_Enter: case Qt::Key_Return: - emitRoleEditingFinished(); + // TODO: find a better way to fix the bug 309760 + clearFocus(); // emitRoleEditingFinished(); results in a crash event->accept(); return; default: -- cgit v1.3 From ce1bdf40cf6f8c9b6c7d330df91cd79947617212 Mon Sep 17 00:00:00 2001 From: Emmanuel Pescosta Date: Fri, 9 Nov 2012 14:52:32 +0100 Subject: Fix Bug 217575 - Auto select pasted files doesn't select all files if some have been skipped BUG: 217575 REVIEW: 107237 FIXED-IN: 4.9.4 --- src/views/dolphinview.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index 8e1a19108..c4fe2d330 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -598,6 +598,8 @@ void DolphinView::setUrl(const KUrl& url) return; } + clearSelection(); + emit urlAboutToBeChanged(url); m_url = url; @@ -628,6 +630,7 @@ void DolphinView::invertSelection() void DolphinView::clearSelection() { + m_selectedUrls.clear(); m_container->controller()->selectionManager()->clearSelection(); } @@ -1211,20 +1214,18 @@ void DolphinView::updateViewState() } if (!m_selectedUrls.isEmpty()) { - clearSelection(); - KItemListSelectionManager* selectionManager = m_container->controller()->selectionManager(); QSet selectedItems = selectionManager->selectedItems(); - foreach (const KUrl& url, m_selectedUrls) { - const int index = m_model->index(url); + for (QList::iterator it = m_selectedUrls.begin(); it != m_selectedUrls.end(); ++it) { + const int index = m_model->index(*it); if (index >= 0) { selectedItems.insert(index); + m_selectedUrls.erase(it); } } selectionManager->setSelectedItems(selectedItems); - m_selectedUrls.clear(); } } -- cgit v1.3