X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/58f8b515b8efc19c1b78000e2691c40eeccee30f..0dd0b65bf02f52da0d2e9d270160e69b81a357ca:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 070d56aeb..95b05785f 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -90,20 +90,20 @@ namespace { } DolphinMainWindow::DolphinMainWindow() : - KXmlGuiWindow(0), - m_newFileMenu(0), - m_tabWidget(0), - m_activeViewContainer(0), - m_actionHandler(0), - m_remoteEncoding(0), + KXmlGuiWindow(nullptr), + m_newFileMenu(nullptr), + m_tabWidget(nullptr), + m_activeViewContainer(nullptr), + m_actionHandler(nullptr), + m_remoteEncoding(nullptr), m_settingsDialog(), - m_controlButton(0), - m_updateToolBarTimer(0), - m_lastHandleUrlStatJob(0), + m_controlButton(nullptr), + m_updateToolBarTimer(nullptr), + m_lastHandleUrlStatJob(nullptr), #ifndef Q_OS_WIN - m_terminalPanel(0), + m_terminalPanel(nullptr), #endif - m_placesPanel(0), + m_placesPanel(nullptr), m_tearDownFromPlacesRequested(false) { Q_INIT_RESOURCE(dolphin); @@ -629,6 +629,15 @@ void DolphinMainWindow::togglePanelLockState() GeneralSettings::setLockPanels(newLockState); } +void DolphinMainWindow::slotTerminalPanelVisibilityChanged() +{ +#ifndef Q_OS_WIN + if (m_terminalPanel->isHiddenInVisibleWindow()) { + m_activeViewContainer->view()->setFocus(); + } +#endif +} + void DolphinMainWindow::goBack() { KUrlNavigator* urlNavigator = m_activeViewContainer->urlNavigator(); @@ -751,7 +760,7 @@ void DolphinMainWindow::editSettings() void DolphinMainWindow::handleUrl(const QUrl& url) { delete m_lastHandleUrlStatJob; - m_lastHandleUrlStatJob = 0; + m_lastHandleUrlStatJob = nullptr; if (url.isLocalFile() && QFileInfo(url.toLocalFile()).isDir()) { activeViewContainer()->setUrl(url); @@ -771,7 +780,7 @@ void DolphinMainWindow::handleUrl(const QUrl& url) void DolphinMainWindow::slotHandleUrlStatFinished(KJob* job) { - m_lastHandleUrlStatJob = 0; + m_lastHandleUrlStatJob = nullptr; const KIO::UDSEntry entry = static_cast(job)->statResult(); const QUrl url = static_cast(job)->url(); if (entry.isDir()) { @@ -912,7 +921,7 @@ void DolphinMainWindow::updateToolBar() void DolphinMainWindow::slotControlButtonDeleted() { - m_controlButton = 0; + m_controlButton = nullptr; m_updateToolBarTimer->start(); } @@ -1001,6 +1010,16 @@ void DolphinMainWindow::setUrlAsCaption(const QUrl& url) fileName = '/'; } + if (m_activeViewContainer->isSearchModeEnabled()) { + if(m_activeViewContainer->currentSearchText().isEmpty()){ + setWindowTitle(i18n("Search")); + } else { + const auto searchText = i18n("Search for %1", m_activeViewContainer->currentSearchText()); + setWindowTitle(searchText); + } + return; + } + setWindowTitle(schemePrefix + fileName); } @@ -1165,6 +1184,7 @@ void DolphinMainWindow::setupActions() compareFiles->setEnabled(false); connect(compareFiles, &QAction::triggered, this, &DolphinMainWindow::compareFiles); +#ifndef Q_OS_WIN if (KAuthorized::authorize(QStringLiteral("shell_access"))) { QAction* openTerminal = actionCollection()->addAction(QStringLiteral("open_terminal")); openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal")); @@ -1172,9 +1192,10 @@ void DolphinMainWindow::setupActions() actionCollection()->setDefaultShortcut(openTerminal, Qt::SHIFT | Qt::Key_F4); connect(openTerminal, &QAction::triggered, this, &DolphinMainWindow::openTerminal); } +#endif // setup 'Settings' menu - KToggleAction* showMenuBar = KStandardAction::showMenubar(0, 0, actionCollection()); + KToggleAction* showMenuBar = KStandardAction::showMenubar(nullptr, nullptr, actionCollection()); connect(showMenuBar, &KToggleAction::triggered, // Fixes #286822 this, &DolphinMainWindow::toggleShowMenuBar, Qt::QueuedConnection); KStandardAction::preferences(this, SLOT(editSettings()), actionCollection()); @@ -1286,6 +1307,8 @@ void DolphinMainWindow::setupDockWidgets() connect(m_terminalPanel, &TerminalPanel::changeUrl, this, &DolphinMainWindow::slotTerminalDirectoryChanged); connect(terminalDock, &DolphinDockWidget::visibilityChanged, m_terminalPanel, &TerminalPanel::dockVisibilityChanged); + connect(terminalDock, &DolphinDockWidget::visibilityChanged, + this, &DolphinMainWindow::slotTerminalPanelVisibilityChanged); QAction* terminalAction = terminalDock->toggleViewAction(); createPanelAction(QIcon::fromTheme(QStringLiteral("utilities-terminal")), Qt::Key_F4, terminalAction, QStringLiteral("show_terminal_panel")); @@ -1435,10 +1458,10 @@ void DolphinMainWindow::createControlButton() void DolphinMainWindow::deleteControlButton() { delete m_controlButton; - m_controlButton = 0; + m_controlButton = nullptr; delete m_updateToolBarTimer; - m_updateToolBarTimer = 0; + m_updateToolBarTimer = nullptr; } bool DolphinMainWindow::addActionToMenu(QAction* action, QMenu* menu)