┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphincolumnview.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2007-09-25 11:06:54 +0000
committerPeter Penz <[email protected]>2007-09-25 11:06:54 +0000
commit991df9c857d5f69ebec4d9ed5e7f35ab26940ffa (patch)
treef88a561b91c180fe6fa971140cb68c4ff1e4c7e4 /src/dolphincolumnview.cpp
parent9bbab1421ce1d8b73b16658448ac03e3ca6428b8 (diff)
clear columns if the new URL is no parent of the currently shown columns
svn path=/trunk/KDE/kdebase/apps/; revision=716840
Diffstat (limited to 'src/dolphincolumnview.cpp')
-rw-r--r--src/dolphincolumnview.cpp23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/dolphincolumnview.cpp b/src/dolphincolumnview.cpp
index f8bcf548e..119888f2d 100644
--- a/src/dolphincolumnview.cpp
+++ b/src/dolphincolumnview.cpp
@@ -506,7 +506,18 @@ void DolphinColumnView::showColumn(const KUrl& url)
{
const KUrl& rootUrl = m_columns[0]->url();
if (!rootUrl.isParentOf(url)) {
- // the URL is no child URL of the column view, hence do nothing
+ // the URL is no child URL of the column view, hence clear all columns
+ // and reset the root column
+ QList<ColumnWidget*>::iterator start = m_columns.begin() + 1;
+ QList<ColumnWidget*>::iterator end = m_columns.end();
+ for (QList<ColumnWidget*>::iterator it = start; it != end; ++it) {
+ (*it)->deleteLater();
+ }
+ m_columns.erase(start, end);
+ m_index = 0;
+ m_columns[0]->setActive(true);
+ m_columns[0]->setUrl(url);
+ assureVisibleActiveColumn();
return;
}
@@ -870,14 +881,4 @@ void DolphinColumnView::requestActivation(ColumnWidget* column)
}
}
-void DolphinColumnView::deleteInactiveChildColumns()
-{
- QList<ColumnWidget*>::iterator start = m_columns.begin() + m_index + 1;
- QList<ColumnWidget*>::iterator end = m_columns.end();
- for (QList<ColumnWidget*>::iterator it = start; it != end; ++it) {
- (*it)->deleteLater();
- }
- m_columns.erase(start, end);
-}
-
#include "dolphincolumnview.moc"