From 0e5e43aa9d84b2a38db99c469de91e4de8017fc7 Mon Sep 17 00:00:00 2001 From: Elvis Angelaccio Date: Tue, 4 Oct 2016 17:30:51 +0200 Subject: Hide message widgets only when reloading the view Otherwise an error message might be hidden before it's even shown. BUG: 357651 FIXED-IN: 16.08.2 REVIEW: 129061 --- src/dolphinmainwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/dolphinmainwindow.cpp') diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 34008b5eb..e729ce972 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -526,7 +526,7 @@ void DolphinMainWindow::toggleSplitView() void DolphinMainWindow::reloadView() { clearStatusBar(); - m_activeViewContainer->view()->reload(); + m_activeViewContainer->reload(); } void DolphinMainWindow::stopLoading() -- cgit v1.3 From 57a19efe93dd1e899c3e2e061ebca84d1e90ce46 Mon Sep 17 00:00:00 2001 From: Safa AlFulaij Date: Wed, 12 Oct 2016 14:31:35 +0300 Subject: The tab navigation shortcut workaround for RTL layouts is not needed anymore, as Qt supports that by default. Before this, pressing Ctrl+Tab makes the previous tab (in RTL layout) the activated one, and vice versa. REVIEW: 128853 --- src/dolphinmainwindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/dolphinmainwindow.cpp') diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 4d97fc1b1..3a23bfa3c 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -1130,14 +1130,14 @@ void DolphinMainWindow::setupActions() activateNextTab->setText(i18nc("@action:inmenu", "Activate Next Tab")); activateNextTab->setEnabled(false); connect(activateNextTab, &QAction::triggered, m_tabWidget, &DolphinTabWidget::activateNextTab); - actionCollection()->setDefaultShortcuts(activateNextTab, QApplication::isRightToLeft() ? prevTabKeys : nextTabKeys); + actionCollection()->setDefaultShortcuts(activateNextTab, nextTabKeys); QAction* activatePrevTab = actionCollection()->addAction(QStringLiteral("activate_prev_tab")); activatePrevTab->setIconText(i18nc("@action:inmenu", "Previous Tab")); activatePrevTab->setText(i18nc("@action:inmenu", "Activate Previous Tab")); activatePrevTab->setEnabled(false); connect(activatePrevTab, &QAction::triggered, m_tabWidget, &DolphinTabWidget::activatePrevTab); - actionCollection()->setDefaultShortcuts(activatePrevTab, QApplication::isRightToLeft() ? nextTabKeys : prevTabKeys); + actionCollection()->setDefaultShortcuts(activatePrevTab, prevTabKeys); // for context menu QAction* openInNewTab = actionCollection()->addAction(QStringLiteral("open_in_new_tab")); -- cgit v1.3 From 63a591f32a56cb4caac9a616d21fab0f37c8d827 Mon Sep 17 00:00:00 2001 From: John Salatas Date: Sat, 14 Jan 2017 04:26:14 -0800 Subject: Show full path in title bar BUG: 229810 Differential Revision: https://phabricator.kde.org/D4078 --- src/dolphinmainwindow.cpp | 15 ++++++++++----- src/settings/dolphin_generalsettings.kcfg | 4 ++++ src/settings/startup/startupsettingspage.cpp | 8 +++++++- src/settings/startup/startupsettingspage.h | 1 + 4 files changed, 22 insertions(+), 6 deletions(-) (limited to 'src/dolphinmainwindow.cpp') diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index e5103fd42..deb5d5e57 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -961,13 +961,17 @@ void DolphinMainWindow::setUrlAsCaption(const QUrl& url) } } - QString fileName = url.adjusted(QUrl::StripTrailingSlash).fileName(); - if (fileName.isEmpty()) { - fileName = '/'; + if (GeneralSettings::showFullPathInTitlebar()) { + const QString path = url.adjusted(QUrl::StripTrailingSlash).path(); + caption.append(path); + } else { + QString fileName = url.adjusted(QUrl::StripTrailingSlash).fileName(); + if (fileName.isEmpty()) { + fileName = '/'; + } + caption.append(fileName); } - caption.append(fileName); - setWindowTitle(caption); } @@ -1404,6 +1408,7 @@ void DolphinMainWindow::refreshViews() const bool splitView = GeneralSettings::splitView(); m_tabWidget->currentTabPage()->setSplitViewEnabled(splitView); updateSplitAction(); + setUrlAsCaption(activeViewContainer()->url()); } emit settingsChanged(); diff --git a/src/settings/dolphin_generalsettings.kcfg b/src/settings/dolphin_generalsettings.kcfg index c724afcd1..5878abcbe 100644 --- a/src/settings/dolphin_generalsettings.kcfg +++ b/src/settings/dolphin_generalsettings.kcfg @@ -22,6 +22,10 @@ false + + + false + 0 diff --git a/src/settings/startup/startupsettingspage.cpp b/src/settings/startup/startupsettingspage.cpp index 6554493d8..f076f16c7 100644 --- a/src/settings/startup/startupsettingspage.cpp +++ b/src/settings/startup/startupsettingspage.cpp @@ -46,7 +46,8 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : m_splitView(0), m_editableUrl(0), m_showFullPath(0), - m_filterBar(0) + m_filterBar(0), + m_showFullPathInTitlebar(0) { QVBoxLayout* topLayout = new QVBoxLayout(this); QWidget* vBox = new QWidget(this); @@ -104,6 +105,8 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : vBoxLayout->addWidget(m_showFullPath); m_filterBar = new QCheckBox(i18nc("@option:check Startup Settings", "Show filter bar"), vBox); vBoxLayout->addWidget(m_filterBar); + m_showFullPathInTitlebar = new QCheckBox(i18nc("@option:check Startup Settings", "Show full path in title bar"), vBox); + vBoxLayout->addWidget(m_showFullPathInTitlebar); // Add a dummy widget with no restriction regarding // a vertical resizing. This assures that the dialog layout @@ -119,6 +122,7 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : connect(m_editableUrl, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); connect(m_showFullPath, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); connect(m_filterBar, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); + connect(m_showFullPathInTitlebar, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); } StartupSettingsPage::~StartupSettingsPage() @@ -141,6 +145,7 @@ void StartupSettingsPage::applySettings() settings->setEditableUrl(m_editableUrl->isChecked()); settings->setShowFullPath(m_showFullPath->isChecked()); settings->setFilterBar(m_filterBar->isChecked()); + settings->setShowFullPathInTitlebar(m_showFullPathInTitlebar->isChecked()); settings->save(); } @@ -190,4 +195,5 @@ void StartupSettingsPage::loadSettings() m_editableUrl->setChecked(GeneralSettings::editableUrl()); m_showFullPath->setChecked(GeneralSettings::showFullPath()); m_filterBar->setChecked(GeneralSettings::filterBar()); + m_showFullPathInTitlebar->setChecked(GeneralSettings::showFullPathInTitlebar()); } diff --git a/src/settings/startup/startupsettingspage.h b/src/settings/startup/startupsettingspage.h index 9bcc31131..7a69cd3d6 100644 --- a/src/settings/startup/startupsettingspage.h +++ b/src/settings/startup/startupsettingspage.h @@ -62,6 +62,7 @@ private: QCheckBox* m_editableUrl; QCheckBox* m_showFullPath; QCheckBox* m_filterBar; + QCheckBox* m_showFullPathInTitlebar; }; #endif -- cgit v1.3 From 1be2704214a9685fe85fdf65f30e4921eba0f2c9 Mon Sep 17 00:00:00 2001 From: Elvis Angelaccio Date: Wed, 18 Jan 2017 23:45:39 +0100 Subject: Port away from deprecated KIO::Job::ui() It's equivalent to KJob::uiDelegate() from kcoreaddons. --- src/dolphincontextmenu.cpp | 2 +- src/dolphinmainwindow.cpp | 2 +- src/kitemviews/kfileitemmodelrolesupdater.cpp | 2 +- src/panels/folders/folderspanel.cpp | 2 +- src/panels/folders/treeviewcontextmenu.cpp | 4 ++-- src/panels/information/informationpanel.cpp | 2 +- src/panels/information/informationpanelcontent.cpp | 2 +- src/panels/terminal/terminalpanel.cpp | 2 +- src/views/dolphinview.cpp | 2 +- src/views/renamedialog.cpp | 2 +- src/views/tooltips/tooltipmanager.cpp | 2 +- 11 files changed, 12 insertions(+), 12 deletions(-) (limited to 'src/dolphinmainwindow.cpp') diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index 666b81c8d..bedb4cb80 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -160,7 +160,7 @@ void DolphinContextMenu::openTrashContextMenu() if (uiDelegate.askDeleteConfirmation(QList(), KIO::JobUiDelegate::EmptyTrash, KIO::JobUiDelegate::DefaultConfirmation)) { KIO::Job* job = KIO::emptyTrash(); KJobWidgets::setWindow(job, m_mainWindow); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); } } } diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index deb5d5e57..1dcae7ec4 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -723,7 +723,7 @@ void DolphinMainWindow::handleUrl(const QUrl& url) } else if (KProtocolManager::supportsListing(url)) { // stat the URL to see if it is a dir or not m_lastHandleUrlStatJob = KIO::stat(url, KIO::HideProgressInfo); - if (m_lastHandleUrlStatJob->ui()) { + if (m_lastHandleUrlStatJob->uiDelegate()) { KJobWidgets::setWindow(m_lastHandleUrlStatJob, this); } connect(m_lastHandleUrlStatJob, &KIO::Job::result, diff --git a/src/kitemviews/kfileitemmodelrolesupdater.cpp b/src/kitemviews/kfileitemmodelrolesupdater.cpp index 92a020003..6e1c3d3dd 100644 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@ -907,7 +907,7 @@ void KFileItemModelRolesUpdater::startPreviewJob() KIO::PreviewJob* job = new KIO::PreviewJob(itemSubSet, cacheSize, &m_enabledPlugins); job->setIgnoreMaximumSize(itemSubSet.first().isLocalFile()); - if (job->ui()) { + if (job->uiDelegate()) { KJobWidgets::setWindow(job, qApp->activeWindow()); } diff --git a/src/panels/folders/folderspanel.cpp b/src/panels/folders/folderspanel.cpp index 276cf5672..8b759d813 100644 --- a/src/panels/folders/folderspanel.cpp +++ b/src/panels/folders/folderspanel.cpp @@ -260,7 +260,7 @@ void FoldersPanel::slotRoleEditingFinished(int index, const QByteArray& role, co KIO::Job* job = KIO::moveAs(oldUrl, newUrl); KJobWidgets::setWindow(job, this); KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Rename, {oldUrl}, newUrl, job); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); } } } diff --git a/src/panels/folders/treeviewcontextmenu.cpp b/src/panels/folders/treeviewcontextmenu.cpp index ec4186db2..51fc229c1 100644 --- a/src/panels/folders/treeviewcontextmenu.cpp +++ b/src/panels/folders/treeviewcontextmenu.cpp @@ -201,7 +201,7 @@ void TreeViewContextMenu::moveToTrash() KIO::Job* job = KIO::trash(list); KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Trash, list, QUrl(QStringLiteral("trash:/")), job); KJobWidgets::setWindow(job, m_parent); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); } } @@ -213,7 +213,7 @@ void TreeViewContextMenu::deleteItem() if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::DefaultConfirmation)) { KIO::Job* job = KIO::del(list); KJobWidgets::setWindow(job, m_parent); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); } } diff --git a/src/panels/information/informationpanel.cpp b/src/panels/information/informationpanel.cpp index 3f778b07a..16dc721b2 100644 --- a/src/panels/information/informationpanel.cpp +++ b/src/panels/information/informationpanel.cpp @@ -185,7 +185,7 @@ void InformationPanel::showItemInfo() // No item is hovered and no selection has been done: provide // an item for the currently shown directory. m_folderStatJob = KIO::stat(url(), KIO::HideProgressInfo); - if (m_folderStatJob->ui()) { + if (m_folderStatJob->uiDelegate()) { KJobWidgets::setWindow(m_folderStatJob, this); } connect(m_folderStatJob, &KIO::Job::result, diff --git a/src/panels/information/informationpanelcontent.cpp b/src/panels/information/informationpanelcontent.cpp index d519ff121..9478aaf45 100644 --- a/src/panels/information/informationpanelcontent.cpp +++ b/src/panels/information/informationpanelcontent.cpp @@ -195,7 +195,7 @@ void InformationPanelContent::showItem(const KFileItem& item) m_previewJob = new KIO::PreviewJob(KFileItemList() << item, QSize(m_preview->width(), m_preview->height())); m_previewJob->setScaleType(KIO::PreviewJob::Unscaled); m_previewJob->setIgnoreMaximumSize(item.isLocalFile()); - if (m_previewJob->ui()) { + if (m_previewJob->uiDelegate()) { KJobWidgets::setWindow(m_previewJob, this); } diff --git a/src/panels/terminal/terminalpanel.cpp b/src/panels/terminal/terminalpanel.cpp index da68210c1..e952f23a0 100644 --- a/src/panels/terminal/terminalpanel.cpp +++ b/src/panels/terminal/terminalpanel.cpp @@ -137,7 +137,7 @@ void TerminalPanel::changeDir(const QUrl& url) sendCdToTerminal(url.toLocalFile()); } else { m_mostLocalUrlJob = KIO::mostLocalUrl(url, KIO::HideProgressInfo); - if (m_mostLocalUrlJob->ui()) { + if (m_mostLocalUrlJob->uiDelegate()) { KJobWidgets::setWindow(m_mostLocalUrlJob, this); } connect(m_mostLocalUrlJob, &KIO::StatJob::result, this, &TerminalPanel::slotMostLocalUrlResult); diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index 7d85fa240..f5ba63d1e 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -1534,7 +1534,7 @@ void DolphinView::slotRoleEditingFinished(int index, const QByteArray& role, con KIO::Job * job = KIO::moveAs(oldUrl, newUrl); KJobWidgets::setWindow(job, this); KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Rename, {oldUrl}, newUrl, job); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); if (!newNameExistsAlready) { // Only connect the result signal if there is no item with the new name diff --git a/src/views/renamedialog.cpp b/src/views/renamedialog.cpp index a514ede1e..c73f003a8 100644 --- a/src/views/renamedialog.cpp +++ b/src/views/renamedialog.cpp @@ -162,7 +162,7 @@ void RenameDialog::renameItem(const KFileItem &item, const QString& newName) KIO::Job * job = KIO::moveAs(oldUrl, newUrl); KJobWidgets::setWindow(job, widget); KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Rename, {oldUrl}, newUrl, job); - job->ui()->setAutoErrorHandlingEnabled(true); + job->uiDelegate()->setAutoErrorHandlingEnabled(true); } void RenameDialog::slotAccepted() diff --git a/src/views/tooltips/tooltipmanager.cpp b/src/views/tooltips/tooltipmanager.cpp index 0636df795..404d6801c 100644 --- a/src/views/tooltips/tooltipmanager.cpp +++ b/src/views/tooltips/tooltipmanager.cpp @@ -130,7 +130,7 @@ void ToolTipManager::startContentRetrieval() KIO::PreviewJob* job = new KIO::PreviewJob(KFileItemList() << m_item, QSize(256, 256)); job->setIgnoreMaximumSize(m_item.isLocalFile()); - if (job->ui()) { + if (job->uiDelegate()) { KJobWidgets::setWindow(job, qApp->activeWindow()); } -- cgit v1.3 From d0eae28f9f744aac20ee22756c7c125071d7fd84 Mon Sep 17 00:00:00 2001 From: Elvis Angelaccio Date: Sun, 5 Feb 2017 23:02:38 +0100 Subject: Drop no longer needed version check Frameworks 5.30 is now the minimum version required. --- src/dolphinmainwindow.cpp | 3 --- 1 file changed, 3 deletions(-) (limited to 'src/dolphinmainwindow.cpp') diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 1dcae7ec4..5bca8d06f 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -50,7 +50,6 @@ #include #include #include -#include #include #include #include @@ -869,10 +868,8 @@ void DolphinMainWindow::updateControlMenu() helpMenu->addSeparator(); helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::ReportBug))); helpMenu->addSeparator(); -#if KCONFIGWIDGETS_VERSION >= QT_VERSION_CHECK(5, 26, 0) helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Donate))); helpMenu->addSeparator(); -#endif helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::SwitchApplicationLanguage))); helpMenu->addSeparator(); helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::AboutApp))); -- cgit v1.3