diff options
| author | Peter Penz <[email protected]> | 2007-09-25 11:06:54 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2007-09-25 11:06:54 +0000 |
| commit | 991df9c857d5f69ebec4d9ed5e7f35ab26940ffa (patch) | |
| tree | f88a561b91c180fe6fa971140cb68c4ff1e4c7e4 /src/dolphincolumnview.cpp | |
| parent | 9bbab1421ce1d8b73b16658448ac03e3ca6428b8 (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.cpp | 23 |
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" |
