X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/da795d20e2f2fa57ac9cafdffcfac4d092d8eaea..169882474859a365ded04024faeeb85e8b27e860:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 59fc84af3..f00641681 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -753,20 +753,9 @@ void DolphinMainWindow::toggleSplitView() m_view[SecondaryIdx]->show(); } else { // remove secondary view - if (m_activeView == m_view[PrimaryIdx]) { - m_view[SecondaryIdx]->close(); - m_view[SecondaryIdx]->deleteLater(); - m_view[SecondaryIdx] = 0; - } else { - // The secondary view is active, hence from the users point of view - // the content of the secondary view should be moved to the primary view. - // From an implementation point of view it is more efficient to close - // the primary view and exchange the internal pointers afterwards. - m_view[PrimaryIdx]->close(); - delete m_view[PrimaryIdx]; - m_view[PrimaryIdx] = m_view[SecondaryIdx]; - m_view[SecondaryIdx] = 0; - } + m_view[SecondaryIdx]->close(); + m_view[SecondaryIdx]->deleteLater(); + m_view[SecondaryIdx] = 0; } setActiveView(m_view[PrimaryIdx]); emit activeViewChanged(); @@ -997,13 +986,7 @@ void DolphinMainWindow::init() void DolphinMainWindow::loadSettings() { GeneralSettings* settings = DolphinSettings::instance().generalSettings(); - - KToggleAction* splitAction = static_cast(actionCollection()->action("split_view")); - if (settings->splitView()) { - splitAction->setChecked(true); - toggleSplitView(); - } - + updateSplitAction(settings->splitView()); updateViewActions(); } @@ -1078,13 +1061,13 @@ void DolphinMainWindow::setupActions() KToggleAction* iconsView = actionCollection()->add("icons"); iconsView->setText(i18n("Icons")); iconsView->setShortcut(Qt::CTRL | Qt::Key_1); - iconsView->setIcon(KIcon("view-icon")); + iconsView->setIcon(KIcon("fileview-icon")); connect(iconsView, SIGNAL(triggered()), this, SLOT(setIconsView())); KToggleAction* detailsView = actionCollection()->add("details"); detailsView->setText(i18n("Details")); detailsView->setShortcut(Qt::CTRL | Qt::Key_2); - detailsView->setIcon(KIcon("fileview-text")); + detailsView->setIcon(KIcon("fileview-detailed")); connect(detailsView, SIGNAL(triggered()), this, SLOT(setDetailsView())); KToggleAction* columnView = actionCollection()->add("columns"); @@ -1176,9 +1159,8 @@ void DolphinMainWindow::setupActions() connect(showHiddenFiles, SIGNAL(triggered()), this, SLOT(toggleShowHiddenFiles())); KToggleAction* split = actionCollection()->add("split_view"); - split->setText(i18n("Split")); split->setShortcut(Qt::Key_F10); - split->setIcon(KIcon("view-left-right")); + updateSplitAction(false); connect(split, SIGNAL(triggered()), this, SLOT(toggleSplitView())); QAction* reload = actionCollection()->addAction("reload"); @@ -1413,8 +1395,7 @@ void DolphinMainWindow::updateViewActions() static_cast(actionCollection()->action("show_hidden_files")); showHiddenFilesAction->setChecked(m_activeView->showHiddenFiles()); - KToggleAction* splitAction = static_cast(actionCollection()->action("split_view")); - splitAction->setChecked(m_view[SecondaryIdx] != 0); + updateSplitAction(m_view[SecondaryIdx] != 0); KToggleAction* editableLocactionAction = static_cast(actionCollection()->action("editable_location")); @@ -1484,6 +1465,18 @@ void DolphinMainWindow::connectViewSignals(int viewIndex) this, SLOT(slotHistoryChanged())); } +void DolphinMainWindow::updateSplitAction(bool isSplit) +{ + KToggleAction* splitAction = static_cast(actionCollection()->action("split_view")); + if (isSplit) { + splitAction->setText(i18n("Join")); + splitAction->setIcon(KIcon("fileview-join")); + } else { + splitAction->setText(i18n("Split")); + splitAction->setIcon(KIcon("fileview-split")); + } +} + DolphinMainWindow::UndoUiInterface::UndoUiInterface(DolphinMainWindow* mainWin) : KonqUndoManager::UiInterface(mainWin), m_mainWin(mainWin)