From: Nicolas Fella Date: Wed, 5 Jul 2023 20:44:40 +0000 (+0200) Subject: Merge branch 'master' into kf6 X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/f510339f033658eae27f8400bf042b78b36f82f2?hp=-c Merge branch 'master' into kf6 --- f510339f033658eae27f8400bf042b78b36f82f2 diff --combined src/dolphincontextmenu.cpp index 62990cab2,445d39286..e1c7b7ad2 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@@ -29,6 -29,7 +29,6 @@@ #include #include #include -#include #include #include @@@ -168,9 -169,13 +168,9 @@@ void DolphinContextMenu::addDirectoryIt addOpenWithActions(); // set up 'Create New' menu - DolphinNewFileMenu *newFileMenu = new DolphinNewFileMenu(m_mainWindow->actionCollection(), m_mainWindow); + DolphinNewFileMenu *newFileMenu = new DolphinNewFileMenu(m_mainWindow->actionCollection()->action(QStringLiteral("create_dir")), m_mainWindow); newFileMenu->checkUpToDate(); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) newFileMenu->setWorkingDirectory(m_fileInfo.url()); -#else - newFileMenu->setPopupFiles(QList() << m_fileInfo.url()); -#endif newFileMenu->setEnabled(selectedItemsProps.supportsWriting()); connect(newFileMenu, &DolphinNewFileMenu::fileCreated, newFileMenu, &DolphinNewFileMenu::deleteLater); connect(newFileMenu, &DolphinNewFileMenu::directoryCreated, newFileMenu, &DolphinNewFileMenu::deleteLater); @@@ -276,7 -281,11 +276,7 @@@ void DolphinContextMenu::addViewportCon // Set up and insert 'Create New' menu KNewFileMenu *newFileMenu = m_mainWindow->newFileMenu(); newFileMenu->checkUpToDate(); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) newFileMenu->setWorkingDirectory(m_baseUrl); -#else - newFileMenu->setPopupFiles(QList() << m_baseUrl); -#endif addMenu(newFileMenu->menu()); // Show "open with" menu items even if the dir is empty, because there are legitimate @@@ -447,3 -456,5 +447,5 @@@ void DolphinContextMenu::addAdditionalA addSeparator(); } } + + #include "moc_dolphincontextmenu.cpp" diff --combined src/dolphinmainwindow.cpp index 480e91727,2baaa1198..dbf0067d8 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@@ -42,7 -42,12 +42,7 @@@ #include #include #include -#include -#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0) #include -#else -#include -#endif #include #include #include @@@ -54,6 -59,7 +54,6 @@@ #include #include #include -#include #include #include #include @@@ -64,6 -70,7 +64,6 @@@ #include #include -#include #include #include @@@ -83,10 -90,6 +83,10 @@@ #include +#if HAVE_X11 +#include +#endif + namespace { // Used for GeneralSettings::version() to determine whether @@@ -162,9 -165,6 +162,9 @@@ DolphinMainWindow::DolphinMainWindow( connect(m_actionHandler, &DolphinViewActionHandler::createDirectoryTriggered, this, &DolphinMainWindow::createDirectory); connect(m_actionHandler, &DolphinViewActionHandler::selectionModeChangeTriggered, this, &DolphinMainWindow::slotSetSelectionMode); + Q_CHECK_PTR(actionCollection()->action(QStringLiteral("create_dir"))); + m_newFileMenu->setNewFolderShortcutAction(actionCollection()->action(QStringLiteral("create_dir"))); + m_remoteEncoding = new DolphinRemoteEncoding(this, m_actionHandler); connect(this, &DolphinMainWindow::urlChanged, m_remoteEncoding, &DolphinRemoteEncoding::slotAboutToOpenUrl); @@@ -283,10 -283,8 +283,10 @@@ void DolphinMainWindow::activateWindow( if (KWindowSystem::isPlatformWayland()) { KWindowSystem::setCurrentXdgActivationToken(activationToken); - } else { + } else if (KWindowSystem::isPlatformX11()) { +#if HAVE_X11 KStartupInfo::setNewStartupId(window()->windowHandle(), activationToken.toUtf8()); +#endif } KWindowSystem::activateWindow(window()->windowHandle()); @@@ -511,7 -509,7 +511,7 @@@ void DolphinMainWindow::showTarget( const KFileItem link = m_activeViewContainer->view()->selectedItems().at(0); const QUrl destinationUrl = link.url().resolved(QUrl(link.linkDest())); - auto job = KIO::statDetails(destinationUrl, KIO::StatJob::SourceSide, KIO::StatNoDetails); + auto job = KIO::stat(destinationUrl, KIO::StatJob::SourceSide, KIO::StatNoDetails); connect(job, &KJob::finished, this, [this, destinationUrl](KJob *job) { KIO::StatJob *statJob = static_cast(job); @@@ -678,12 -676,20 +678,12 @@@ void DolphinMainWindow::readProperties( void DolphinMainWindow::updateNewMenu() { m_newFileMenu->checkUpToDate(); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) m_newFileMenu->setWorkingDirectory(activeViewContainer()->url()); -#else - m_newFileMenu->setPopupFiles(QList() << activeViewContainer()->url()); -#endif } void DolphinMainWindow::createDirectory() { -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) m_newFileMenu->setWorkingDirectory(activeViewContainer()->url()); -#else - m_newFileMenu->setPopupFiles(QList() << activeViewContainer()->url()); -#endif m_newFileMenu->createDirectory(); } @@@ -1258,7 -1264,11 +1258,7 @@@ void DolphinMainWindow::handleUrl(cons activeViewContainer()->setUrl(url); } else { m_lastHandleUrlOpenJob = new KIO::OpenUrlJob(url); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0) m_lastHandleUrlOpenJob->setUiDelegate(KIO::createDefaultJobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this)); -#else - m_lastHandleUrlOpenJob->setUiDelegate(new KIO::JobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this)); -#endif m_lastHandleUrlOpenJob->setShowOpenOrExecuteDialog(true); connect(m_lastHandleUrlOpenJob, &KIO::OpenUrlJob::mimeTypeFound, this, [this, url](const QString &mimetype) { @@@ -1532,8 -1542,7 +1532,8 @@@ void DolphinMainWindow::setupActions( auto hamburgerMenuAction = KStandardAction::hamburgerMenu(nullptr, nullptr, actionCollection()); // setup 'File' menu - m_newFileMenu = new DolphinNewFileMenu(actionCollection(), this); + m_newFileMenu = new DolphinNewFileMenu(nullptr, this); + actionCollection()->addAction(QStringLiteral("new_menu"), m_newFileMenu); QMenu *menu = m_newFileMenu->menu(); menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New")); menu->setIcon(QIcon::fromTheme(QStringLiteral("list-add"))); @@@ -1642,7 -1651,7 +1642,7 @@@ connect(moveToOtherViewAction, &QAction::triggered, this, &DolphinMainWindow::moveToInactiveSplitView); QAction *showFilterBar = actionCollection()->addAction(QStringLiteral("show_filter_bar")); - showFilterBar->setText(i18nc("@action:inmenu Tools", "Filter...")); + showFilterBar->setText(i18nc("@action:inmenu Tools", "Filter…")); showFilterBar->setToolTip(i18nc("@info:tooltip", "Show Filter Bar")); showFilterBar->setWhatsThis(xi18nc("@info:whatsthis", "This opens the " @@@ -1666,7 -1675,7 +1666,7 @@@ connect(toggleFilter, &QAction::triggered, this, &DolphinMainWindow::toggleFilterBar); QAction *searchAction = KStandardAction::find(this, &DolphinMainWindow::find, actionCollection()); - searchAction->setText(i18n("Search...")); + searchAction->setText(i18n("Search…")); searchAction->setToolTip(i18nc("@info:tooltip", "Search for files and folders")); searchAction->setWhatsThis(xi18nc("@info:whatsthis find", "This helps you " @@@ -2689,3 -2698,5 +2689,5 @@@ bool DolphinMainWindow::isItemVisibleIn { return m_tabWidget->isItemVisibleInAnyView(QUrl::fromUserInput(urlOfItem)); } + + #include "moc_dolphinmainwindow.cpp" diff --combined src/dolphinnavigatorswidgetaction.cpp index a68118395,cadfbe941..7dc44f59d --- a/src/dolphinnavigatorswidgetaction.cpp +++ b/src/dolphinnavigatorswidgetaction.cpp @@@ -42,7 -42,7 +42,7 @@@ DolphinNavigatorsWidgetAction::DolphinN void DolphinNavigatorsWidgetAction::adjustSpacing() { - m_previousWindowWidth = parentWidget()->window()->width(); + m_previousWindowWidth = qobject_cast(parent())->window()->width(); auto viewGeometries = m_viewGeometriesHelper.viewGeometries(); const int widthOfSplitterPrimary = viewGeometries.globalXOfPrimary + viewGeometries.widthOfPrimary - viewGeometries.globalXOfNavigatorsWidget; const QList splitterSizes = {widthOfSplitterPrimary, m_splitter->width() - widthOfSplitterPrimary}; @@@ -298,7 -298,7 +298,7 @@@ DolphinNavigatorsWidgetAction::ViewGeom bool DolphinNavigatorsWidgetAction::ViewGeometriesHelper::eventFilter(QObject *watched, QEvent *event) { if (event->type() == QEvent::Resize) { - if (m_navigatorsWidgetAction->parentWidget()->window()->width() != m_navigatorsWidgetAction->m_previousWindowWidth) { + if (qobject_cast(m_navigatorsWidgetAction->parent())->window()->width() != m_navigatorsWidgetAction->m_previousWindowWidth) { // The window is being resized which means not all widgets have gotten their new sizes yet. // Let's wait a bit so the sizes of the navigatorsWidget and the viewContainers have all // had a chance to be updated. @@@ -357,3 -357,5 +357,5 @@@ DolphinNavigatorsWidgetAction::ViewGeom } return geometries; } + + #include "moc_dolphinnavigatorswidgetaction.cpp" diff --combined src/dolphinnewfilemenu.cpp index d499ae42c,ec2f19d6e..a64cf3def --- a/src/dolphinnewfilemenu.cpp +++ b/src/dolphinnewfilemenu.cpp @@@ -8,14 -8,12 +8,14 @@@ #include "views/dolphinnewfilemenuobserver.h" -#include #include -DolphinNewFileMenu::DolphinNewFileMenu(KActionCollection *collection, QObject *parent) - : KNewFileMenu(collection, QStringLiteral("new_menu"), parent) +#include + +DolphinNewFileMenu::DolphinNewFileMenu(QAction *createDirAction, QObject *parent) + : KNewFileMenu(parent) { + setNewFolderShortcutAction(createDirAction); DolphinNewFileMenuObserver::instance().attach(this); } @@@ -32,3 -30,5 +32,5 @@@ void DolphinNewFileMenu::slotResult(KJo KNewFileMenu::slotResult(job); } } + + #include "moc_dolphinnewfilemenu.cpp" diff --combined src/dolphinpart.cpp index 46b5e7e94,f8da1c353..a3856de6a --- a/src/dolphinpart.cpp +++ b/src/dolphinpart.cpp @@@ -33,6 -33,7 +33,6 @@@ #include #include #include -#include #include #include @@@ -45,16 -46,15 +45,16 @@@ #include #include +#include + K_PLUGIN_CLASS_WITH_JSON(DolphinPart, "dolphinpart.json") DolphinPart::DolphinPart(QWidget *parentWidget, QObject *parent, const KPluginMetaData &metaData, const QVariantList &args) - : KParts::ReadOnlyPart(parent) + : KParts::ReadOnlyPart(parent, metaData) , m_openTerminalAction(nullptr) , m_removeAction(nullptr) { Q_UNUSED(args) - setMetaData(metaData); m_extension = new DolphinPartBrowserExtension(this); @@@ -85,7 -85,7 +85,7 @@@ }); connect(m_view, &DolphinView::tabRequested, this, &DolphinPart::createNewWindow); connect(m_view, &DolphinView::requestContextMenu, this, &DolphinPart::slotOpenContextMenu); - connect(m_view, &DolphinView::selectionChanged, m_extension, &KParts::BrowserExtension::selectionInfo); + connect(m_view, &DolphinView::selectionChanged, m_extension, &KParts::NavigationExtension::selectionInfo); connect(m_view, &DolphinView::selectionChanged, this, &DolphinPart::slotSelectionChanged); connect(m_view, &DolphinView::requestItemInfo, this, &DolphinPart::slotRequestItemInfo); connect(m_view, &DolphinView::modeChanged, this, &DolphinPart::viewModeChanged); // relay signal @@@ -141,21 -141,21 +141,21 @@@ void DolphinPart::createActions( { // Edit menu - m_newFileMenu = new DolphinNewFileMenu(actionCollection(), this); + m_newFileMenu = new DolphinNewFileMenu(actionCollection()->action(QStringLiteral("create_dir")), this); m_newFileMenu->setParentWidget(widget()); connect(m_newFileMenu->menu(), &QMenu::aboutToShow, this, &DolphinPart::updateNewMenu); QAction *editMimeTypeAction = actionCollection()->addAction(QStringLiteral("editMimeType")); - editMimeTypeAction->setText(i18nc("@action:inmenu Edit", "&Edit File Type...")); + editMimeTypeAction->setText(i18nc("@action:inmenu Edit", "&Edit File Type…")); connect(editMimeTypeAction, &QAction::triggered, this, &DolphinPart::slotEditMimeType); QAction *selectItemsMatching = actionCollection()->addAction(QStringLiteral("select_items_matching")); - selectItemsMatching->setText(i18nc("@action:inmenu Edit", "Select Items Matching...")); + selectItemsMatching->setText(i18nc("@action:inmenu Edit", "Select Items Matching…")); actionCollection()->setDefaultShortcut(selectItemsMatching, Qt::CTRL | Qt::Key_S); connect(selectItemsMatching, &QAction::triggered, this, &DolphinPart::slotSelectItemsMatchingPattern); QAction *unselectItemsMatching = actionCollection()->addAction(QStringLiteral("unselect_items_matching")); - unselectItemsMatching->setText(i18nc("@action:inmenu Edit", "Unselect Items Matching...")); + unselectItemsMatching->setText(i18nc("@action:inmenu Edit", "Unselect Items Matching…")); connect(unselectItemsMatching, &QAction::triggered, this, &DolphinPart::slotUnselectItemsMatchingPattern); KStandardAction::selectAll(m_view, &DolphinView::selectAll, actionCollection()); @@@ -187,7 -187,7 +187,7 @@@ // Tools menu m_findFileAction = KStandardAction::find(this, &DolphinPart::slotFindFile, actionCollection()); - m_findFileAction->setText(i18nc("@action:inmenu Tools", "Find File...")); + m_findFileAction->setText(i18nc("@action:inmenu Tools", "Find File…")); #ifndef Q_OS_WIN if (KAuthorized::authorize(QStringLiteral("shell_access"))) { @@@ -362,8 -362,8 +362,8 @@@ void DolphinPart::createNewWindow(cons void DolphinPart::slotOpenContextMenu(const QPoint &pos, const KFileItem &_item, const KFileItemList &selectedItems, const QUrl &) { - KParts::BrowserExtension::PopupFlags popupFlags = - KParts::BrowserExtension::DefaultPopupItems | KParts::BrowserExtension::ShowProperties | KParts::BrowserExtension::ShowUrlOperations; + KParts::NavigationExtension::PopupFlags popupFlags = + KParts::NavigationExtension::DefaultPopupItems | KParts::NavigationExtension::ShowProperties | KParts::NavigationExtension::ShowUrlOperations; KFileItem item(_item); @@@ -384,7 -384,7 +384,7 @@@ KFileItemListProperties capabilities(items); - KParts::BrowserExtension::ActionGroupMap actionGroups; + KParts::NavigationExtension::ActionGroupMap actionGroups; QList editActions; editActions += m_view->versionControlActions(m_view->selectedItems()); @@@ -409,7 -409,7 +409,7 @@@ m_removeAction->update(); } } else { - popupFlags |= KParts::BrowserExtension::NoDeletion; + popupFlags |= KParts::NavigationExtension::NoDeletion; } if (supportsMoving) { @@@ -420,7 -420,7 +420,7 @@@ // since otherwise the created file would not be visible. // But in treeview mode we should allow it. if (m_view->itemsExpandable()) - popupFlags |= KParts::BrowserExtension::ShowCreateDirectory; + popupFlags |= KParts::NavigationExtension::ShowCreateDirectory; } actionGroups.insert(QStringLiteral("editactions"), editActions); @@@ -548,7 -548,11 +548,7 @@@ void DolphinPart::updateNewMenu( // As requested by KNewFileMenu : m_newFileMenu->checkUpToDate(); // And set the files that the menu apply on : -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) m_newFileMenu->setWorkingDirectory(url()); -#else - m_newFileMenu->setPopupFiles(QList() << url()); -#endif } void DolphinPart::updateStatusBar() @@@ -563,7 -567,11 +563,7 @@@ void DolphinPart::updateProgress(int pe void DolphinPart::createDirectory() { -#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0) m_newFileMenu->setWorkingDirectory(url()); -#else - m_newFileMenu->setPopupFiles(QList() << url()); -#endif m_newFileMenu->createDirectory(); } @@@ -596,3 -604,4 +596,4 @@@ bool DolphinPart::eventFilter(QObject * } #include "dolphinpart.moc" + #include "moc_dolphinpart.cpp" diff --combined src/dolphinpart_ext.cpp index 1aa16eeaa,0bb016ea9..5d4845485 --- a/src/dolphinpart_ext.cpp +++ b/src/dolphinpart_ext.cpp @@@ -10,20 -10,20 +10,20 @@@ #include "views/dolphinview.h" DolphinPartBrowserExtension::DolphinPartBrowserExtension(DolphinPart *part) - : KParts::BrowserExtension(part) + : KParts::NavigationExtension(part) , m_part(part) { } void DolphinPartBrowserExtension::restoreState(QDataStream &stream) { - KParts::BrowserExtension::restoreState(stream); + KParts::NavigationExtension::restoreState(stream); m_part->view()->restoreState(stream); } void DolphinPartBrowserExtension::saveState(QDataStream &stream) { - KParts::BrowserExtension::saveState(stream); + KParts::NavigationExtension::saveState(stream); m_part->view()->saveState(stream); } @@@ -166,3 -166,5 +166,5 @@@ void DolphinPartListingNotificationExte { Q_EMIT listingEvent(KParts::ListingNotificationExtension::ItemsDeleted, items); } + + #include "moc_dolphinpart_ext.cpp" diff --combined src/dolphintabbar.cpp index ac9f1f734,a7799a669..c70089223 --- a/src/dolphintabbar.cpp +++ b/src/dolphintabbar.cpp @@@ -32,7 -32,7 +32,7 @@@ DolphinTabBar::DolphinTabBar(QWidget *p void DolphinTabBar::dragEnterEvent(QDragEnterEvent *event) { const QMimeData *mimeData = event->mimeData(); - const int index = tabAt(event->pos()); + const int index = tabAt(event->position().toPoint()); if (mimeData->hasUrls()) { event->acceptProposedAction(); @@@ -52,7 -52,7 +52,7 @@@ void DolphinTabBar::dragLeaveEvent(QDra void DolphinTabBar::dragMoveEvent(QDragMoveEvent *event) { const QMimeData *mimeData = event->mimeData(); - const int index = tabAt(event->pos()); + const int index = tabAt(event->position().toPoint()); if (mimeData->hasUrls()) { updateAutoActivationTimer(index); @@@ -67,7 -67,7 +67,7 @@@ void DolphinTabBar::dropEvent(QDropEven updateAutoActivationTimer(-1); const QMimeData *mimeData = event->mimeData(); - const int index = tabAt(event->pos()); + const int index = tabAt(event->position().toPoint()); if (mimeData->hasUrls()) { Q_EMIT tabDropEvent(index, event); @@@ -172,3 -172,5 +172,5 @@@ void DolphinTabBar::updateAutoActivatio } } } + + #include "moc_dolphintabbar.cpp" diff --combined src/dolphintabwidget.cpp index 2ceb3c7c6,03f09ca86..ff2f246ae --- a/src/dolphintabwidget.cpp +++ b/src/dolphintabwidget.cpp @@@ -392,7 -392,7 +392,7 @@@ void DolphinTabWidget::tabDropEvent(in const auto urls = event->mimeData()->urls(); for (const QUrl &url : urls) { - auto *job = KIO::statDetails(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); + auto *job = KIO::stat(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); connect(job, &KJob::result, this, [this, job]() { if (!job->error() && job->statResult().isDir()) { openNewTab(job->url(), QUrl(), NewTabPosition::AtEnd); @@@ -595,3 -595,5 +595,5 @@@ const std::optional #include -#include -#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0) #include -#else -#include -#endif #include #include #include #include #include + #include #include #include #include @@@ -338,6 -344,9 +339,9 @@@ void DolphinViewContainer::setSelection } Q_CHECK_PTR(m_selectionModeTopBar); // there is no point in disabling selectionMode when it wasn't even enabled once. Q_CHECK_PTR(m_selectionModeBottomBar); + if (m_selectionModeTopBar->isAncestorOf(QApplication::focusWidget()) || m_selectionModeBottomBar->isAncestorOf(QApplication::focusWidget())) { + m_view->setFocus(); + } m_selectionModeTopBar->setVisible(false, WithAnimation); m_selectionModeBottomBar->setVisible(false, WithAnimation); Q_EMIT selectionModeChanged(false); @@@ -625,7 -634,7 +629,7 @@@ void DolphinViewContainer::updateStatus void DolphinViewContainer::updateDirectoryLoadingProgress(int percent) { if (m_statusBar->progressText().isEmpty()) { - m_statusBar->setProgressText(i18nc("@info:progress", "Loading folder...")); + m_statusBar->setProgressText(i18nc("@info:progress", "Loading folder…")); } m_statusBar->setProgress(percent); } @@@ -633,7 -642,7 +637,7 @@@ void DolphinViewContainer::updateDirectorySortingProgress(int percent) { if (m_statusBar->progressText().isEmpty()) { - m_statusBar->setProgressText(i18nc("@info:progress", "Sorting...")); + m_statusBar->setProgressText(i18nc("@info:progress", "Sorting…")); } m_statusBar->setProgress(percent); } @@@ -644,7 -653,7 +648,7 @@@ void DolphinViewContainer::slotDirector // Search KIO-slaves usually don't provide any progress information. Give // a hint to the user that a searching is done: updateStatusBar(); - m_statusBar->setProgressText(i18nc("@info", "Searching...")); + m_statusBar->setProgressText(i18nc("@info", "Searching…")); m_statusBar->setProgress(-1); } else { // Trigger an undetermined progress indication. The progress @@@ -720,7 -729,11 +724,7 @@@ void DolphinViewContainer::slotItemActi } KIO::OpenUrlJob *job = new KIO::OpenUrlJob(item.targetUrl(), item.mimetype()); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0) job->setUiDelegate(KIO::createDefaultJobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this)); -#else - job->setUiDelegate(new KIO::JobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this)); -#endif job->setShowOpenOrExecuteDialog(true); connect(job, &KIO::OpenUrlJob::finished, this, &DolphinViewContainer::slotOpenUrlFinished); job->start(); @@@ -946,3 -959,5 +950,5 @@@ QString DolphinViewContainer::getNeares return dir.exists() ? dir.path() : QString{}; } + + #include "moc_dolphinviewcontainer.cpp" diff --combined src/kitemviews/kfileitemmodel.cpp index 28e0876b9,bbe725dfd..b71a4325b --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@@ -17,6 -17,7 +17,6 @@@ #include #include #include -#include #include #include @@@ -262,7 -263,11 +262,7 @@@ void KFileItemModel::setShowTrashMime(b void KFileItemModel::setShowHiddenFiles(bool show) { -#if KIO_VERSION < QT_VERSION_CHECK(5, 100, 0) - m_dirLister->setShowingDotFiles(show); -#else m_dirLister->setShowHiddenFiles(show); -#endif setShowTrashMime(show); m_dirLister->emitChanges(); if (show) { @@@ -272,7 -277,11 +272,7 @@@ bool KFileItemModel::showHiddenFiles() const { -#if KIO_VERSION < QT_VERSION_CHECK(5, 100, 0) - return m_dirLister->showingDotFiles(); -#else return m_dirLister->showHiddenFiles(); -#endif } void KFileItemModel::setShowDirectoriesOnly(bool enabled) @@@ -615,7 -624,9 +615,7 @@@ bool KFileItemModel::setExpanded(int in m_expandedDirs.remove(targetUrl); m_dirLister->stop(url); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 92, 0) m_dirLister->forgetDirs(url); -#endif const int parentLevel = expandedParentsCount(index); const int itemCount = m_itemData.count(); @@@ -631,7 -642,9 +631,7 @@@ const QUrl url = itemData->item.url(); m_expandedDirs.remove(targetUrl); m_dirLister->stop(url); // TODO: try to unit-test this, see https://bugs.kde.org/show_bug.cgi?id=332102#c11 -#if KIO_VERSION >= QT_VERSION_CHECK(5, 92, 0) m_dirLister->forgetDirs(url); -#endif expandedChildren.append(targetUrl); } ++childIndex; @@@ -2593,7 -2606,7 +2593,7 @@@ QList> KFileItemMo if (info.permission(QFile::ExeUser)) { user += i18nc("@item:intext Access permission, concatenated", "Execute, "); } - user = user.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : user.mid(0, user.count() - 2); + user = user.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : user.mid(0, user.length() - 2); // Set group string QString group; @@@ -2606,7 -2619,7 +2606,7 @@@ if (info.permission(QFile::ExeGroup)) { group += i18nc("@item:intext Access permission, concatenated", "Execute, "); } - group = group.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : group.mid(0, group.count() - 2); + group = group.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : group.mid(0, group.length() - 2); // Set others string QString others; @@@ -2619,7 -2632,7 +2619,7 @@@ if (info.permission(QFile::ExeOther)) { others += i18nc("@item:intext Access permission, concatenated", "Execute, "); } - others = others.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : others.mid(0, others.count() - 2); + others = others.isEmpty() ? i18nc("@item:intext Access permission, concatenated", "Forbidden") : others.mid(0, others.length() - 2); const QString newGroupValue = i18nc("@title:group Files and folders by permissions", "User: %1 | Group: %2 | Others: %3", user, group, others); if (newGroupValue != groupValue) { @@@ -2850,3 -2863,5 +2850,5 @@@ void KFileItemModel::slotListerError(KI Q_EMIT errorMessage(!errorString.isEmpty() ? errorString : i18nc("@info:status", "Unknown error.")); } } + + #include "moc_kfileitemmodel.cpp" diff --combined src/kitemviews/kfileitemmodelrolesupdater.cpp index 09dd2eba1,bd4bd7e51..6c660e952 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@@ -119,7 -119,7 +119,7 @@@ KFileItemModelRolesUpdater::KFileItemMo m_directoryContentsCounter = new KDirectoryContentsCounter(m_model, this); connect(m_directoryContentsCounter, &KDirectoryContentsCounter::result, this, &KFileItemModelRolesUpdater::slotDirectoryContentsCountReceived); - const QString pluginNamespace = QStringLiteral("kf" QT_STRINGIFY(QT_VERSION_MAJOR)) + QStringLiteral("/overlayicon"); + const QString pluginNamespace = QStringLiteral("kf" QT_STRINGIFY(QT_MAJOR_VERSION)) + QStringLiteral("/overlayicon"); const auto plugins = KPluginMetaData::findPlugins(pluginNamespace, {}, KPluginMetaData::AllowEmptyMetaData); for (const KPluginMetaData &data : plugins) { auto instance = QPluginLoader(data.fileName()).instance(); @@@ -1495,3 -1495,5 +1495,5 @@@ void KFileItemModelRolesUpdater::trimHo } } } + + #include "moc_kfileitemmodelrolesupdater.cpp" diff --combined src/panels/folders/treeviewcontextmenu.cpp index cff8bd029,e063ca85e..419d174e9 --- a/src/panels/folders/treeviewcontextmenu.cpp +++ b/src/panels/folders/treeviewcontextmenu.cpp @@@ -13,7 -13,7 +13,7 @@@ #include #include #include -#include +#include #include #include #include @@@ -22,6 -22,14 +22,6 @@@ #include #include -#include -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) -#include -#else -#include -#include -#endif - #include #include #include @@@ -67,7 -75,7 +67,7 @@@ void TreeViewContextMenu::open(const QP popup->addSeparator(); // insert 'Rename' - QAction *renameAction = new QAction(i18nc("@action:inmenu", "Rename..."), this); + QAction *renameAction = new QAction(i18nc("@action:inmenu", "Rename…"), this); renameAction->setEnabled(capabilities.supportsMoving()); renameAction->setIcon(QIcon::fromTheme(QStringLiteral("edit-rename"))); connect(renameAction, &QAction::triggered, this, &TreeViewContextMenu::rename); @@@ -189,16 -197,39 +189,16 @@@ void TreeViewContextMenu::rename( void TreeViewContextMenu::moveToTrash() { -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) using Iface = KIO::AskUserActionInterface; auto *deleteJob = new KIO::DeleteOrTrashJob(QList{m_fileItem.url()}, Iface::Trash, Iface::DefaultConfirmation, m_parent); deleteJob->start(); -#else - const QList list{m_fileItem.url()}; - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(m_parent); - if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Trash, KIO::JobUiDelegate::DefaultConfirmation)) { - KIO::Job *job = KIO::trash(list); - KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Trash, list, QUrl(QStringLiteral("trash:/")), job); - KJobWidgets::setWindow(job, m_parent); - job->uiDelegate()->setAutoErrorHandlingEnabled(true); - } -#endif } void TreeViewContextMenu::deleteItem() { -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) using Iface = KIO::AskUserActionInterface; auto *deleteJob = new KIO::DeleteOrTrashJob(QList{m_fileItem.url()}, Iface::Delete, Iface::DefaultConfirmation, m_parent); deleteJob->start(); -#else - const QList list{m_fileItem.url()}; - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(m_parent); - if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::DefaultConfirmation)) { - KIO::Job *job = KIO::del(list); - KJobWidgets::setWindow(job, m_parent); - job->uiDelegate()->setAutoErrorHandlingEnabled(true); - } -#endif } void TreeViewContextMenu::showProperties() @@@ -222,3 -253,5 +222,5 @@@ void TreeViewContextMenu::setAutoScroll { m_parent->setAutoScrolling(enable); } + + #include "moc_treeviewcontextmenu.cpp" diff --combined src/panels/information/informationpanel.cpp index 5bd9cb296,7367f1d13..9d1e5b971 --- a/src/panels/information/informationpanel.cpp +++ b/src/panels/information/informationpanel.cpp @@@ -165,7 -165,7 +165,7 @@@ void InformationPanel::showContextMenu( showHoveredAction->setCheckable(true); showHoveredAction->setChecked(InformationPanelSettings::showHovered()); - QAction *configureAction = popup.addAction(i18nc("@action:inmenu", "Configure...")); + QAction *configureAction = popup.addAction(i18nc("@action:inmenu", "Configure…")); configureAction->setIcon(QIcon::fromTheme(QStringLiteral("configure"))); if (m_inConfigurationMode) { configureAction->setEnabled(false); @@@ -244,7 -244,7 +244,7 @@@ void InformationPanel::showItemInfo( // No item is hovered and no selection has been done: provide // an item for the currently shown directory. m_shownUrl = url(); - m_folderStatJob = KIO::statDetails(m_shownUrl, KIO::StatJob::SourceSide, KIO::StatDefaultDetails | KIO::StatRecursiveSize, KIO::HideProgressInfo); + m_folderStatJob = KIO::stat(m_shownUrl, KIO::StatJob::SourceSide, KIO::StatDefaultDetails | KIO::StatRecursiveSize, KIO::HideProgressInfo); if (m_folderStatJob->uiDelegate()) { KJobWidgets::setWindow(m_folderStatJob, this); } @@@ -419,3 -419,5 +419,5 @@@ void InformationPanel::init( m_initialized = true; } + + #include "moc_informationpanel.cpp" diff --combined src/panels/information/informationpanelcontent.cpp index d731d4de7,d93457b27..62f25b24b --- a/src/panels/information/informationpanelcontent.cpp +++ b/src/panels/information/informationpanelcontent.cpp @@@ -23,8 -23,8 +23,8 @@@ #include -#include -#include +#include +#include #include #include @@@ -489,3 -489,5 +489,5 @@@ void InformationPanelContent::adjustWid m_phononWidget->setVideoSize(QSize(maxWidth, maxWidth)); } } + + #include "moc_informationpanelcontent.cpp" diff --combined src/panels/information/phononwidget.cpp index 683eaafdb,77d55da8b..3365998f4 --- a/src/panels/information/phononwidget.cpp +++ b/src/panels/information/phononwidget.cpp @@@ -7,10 -7,10 +7,10 @@@ #include "phononwidget.h" #include -#include -#include -#include -#include +#include +#include +#include +#include #include #include @@@ -261,4 -261,5 +261,5 @@@ void PhononWidget::applyVideoSize( } } + #include "moc_phononwidget.cpp" #include "phononwidget.moc" diff --combined src/panels/places/placespanel.cpp index 2d508ba65,3c3f7bb87..8b245f0e7 --- a/src/panels/places/placespanel.cpp +++ b/src/panels/places/placespanel.cpp @@@ -141,7 -141,7 +141,7 @@@ static bool isInternalDrag(const QMimeD void PlacesPanel::dragMoveEvent(QDragMoveEvent *event) { - const QModelIndex index = indexAt(event->pos()); + const QModelIndex index = indexAt(event->position().toPoint()); if (index.isValid()) { auto *placesModel = static_cast(model()); @@@ -275,3 -275,5 +275,5 @@@ void PlacesPanel::connectDeviceSignals( connect(storageAccess, &Solid::StorageAccess::teardownRequested, this, &PlacesPanel::slotTearDownRequestedExternally); } + + #include "moc_placespanel.cpp" diff --combined src/settings/contextmenu/contextmenusettingspage.cpp index 0dcc1d12b,03e55ba32..01d396090 --- a/src/settings/contextmenu/contextmenusettingspage.cpp +++ b/src/settings/contextmenu/contextmenusettingspage.cpp @@@ -20,6 -20,8 +20,6 @@@ #include #include #include -#include -#include #include #include #include @@@ -64,7 -66,7 +64,7 @@@ ContextMenuSettingsPage::ContextMenuSet this); label->setWordWrap(true); m_searchLineEdit = new QLineEdit(this); - m_searchLineEdit->setPlaceholderText(i18nc("@label:textbox", "Search...")); + m_searchLineEdit->setPlaceholderText(i18nc("@label:textbox", "Search…")); connect(m_searchLineEdit, &QLineEdit::textChanged, this, [this](const QString &filter) { m_sortModel->setFilterFixedString(filter); }); @@@ -91,7 -93,7 +91,7 @@@ #ifndef Q_OS_WIN using NewStuffButton = KNSWidgets::Button; - auto *downloadButton = new NewStuffButton(i18nc("@action:button", "Download New Services..."), QStringLiteral("servicemenu.knsrc"), this); + auto *downloadButton = new NewStuffButton(i18nc("@action:button", "Download New Services…"), QStringLiteral("servicemenu.knsrc"), this); connect(downloadButton, &NewStuffButton::dialogFinished, this, [this](const auto &changedEntries) { if (!changedEntries.isEmpty()) { m_serviceModel->clear(); @@@ -288,6 -290,13 +288,6 @@@ void ContextMenuSettingsPage::loadServi const auto locations = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QStringLiteral("kio/servicemenus"), QStandardPaths::LocateDirectory); QStringList files = KFileUtils::findAllUniqueFiles(locations); -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 90) - const KService::List services = KServiceTypeTrader::self()->query(QStringLiteral("KonqPopupMenu/Plugin")); - for (const KService::Ptr &service : services) { - files << QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kservices5/" % service->entryPath()); - } -#endif - for (const auto &file : qAsConst(files)) { const QList serviceActions = KDesktopFileActions::userDefinedServices(KService(file), true); @@@ -306,8 -315,20 +306,8 @@@ } } - // Load service plugins, this is deprecated in KIO 5.82 -#if KIOCORE_BUILD_DEPRECATED_SINCE(5, 82) - const KService::List pluginServices = KServiceTypeTrader::self()->query(QStringLiteral("KFileItemAction/Plugin")); - for (const KService::Ptr &service : pluginServices) { - const QString desktopEntryName = service->desktopEntryName(); - if (!isInServicesList(desktopEntryName)) { - const bool checked = showGroup.readEntry(desktopEntryName, true); - addRow(service->icon(), service->name(), desktopEntryName, checked); - } - } -#endif - // Load JSON-based plugins that implement the KFileItemActionPlugin interface - const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf" QT_STRINGIFY(QT_VERSION_MAJOR)) + QStringLiteral("/kfileitemaction")); + const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf" QT_STRINGIFY(QT_MAJOR_VERSION)) + QStringLiteral("/kfileitemaction")); for (const auto &jsonMetadata : jsonPlugins) { const QString desktopEntryName = jsonMetadata.pluginId(); @@@ -359,3 -380,5 +359,5 @@@ void ContextMenuSettingsPage::addRow(co m_serviceModel->setData(index, value, ServiceModel::DesktopEntryNameRole); m_serviceModel->setData(index, checked, Qt::CheckStateRole); } + + #include "moc_contextmenusettingspage.cpp" diff --combined src/settings/general/previewssettingspage.cpp index fa715237a,ef98d0f8d..7c63e94ba --- a/src/settings/general/previewssettingspage.cpp +++ b/src/settings/general/previewssettingspage.cpp @@@ -6,6 -6,7 +6,6 @@@ #include "previewssettingspage.h" -#include "configurepreviewplugindialog.h" #include "dolphin_generalsettings.h" #include "settings/serviceitemdelegate.h" #include "settings/servicemodel.h" @@@ -44,6 -45,12 +44,6 @@@ PreviewsSettingsPage::PreviewsSettingsP m_listView = new QListView(this); QScroller::grabGesture(m_listView->viewport(), QScroller::TouchGesture); -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - ServiceItemDelegate *delegate = new ServiceItemDelegate(m_listView, m_listView); - connect(delegate, &ServiceItemDelegate::requestServiceConfiguration, this, &PreviewsSettingsPage::configureService); - m_listView->setItemDelegate(delegate); -#endif - ServiceModel *serviceModel = new ServiceModel(this); QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel(this); proxyModel->setSourceModel(serviceModel); @@@ -143,6 -150,19 +143,6 @@@ void PreviewsSettingsPage::showEvent(QS SettingsPageBase::showEvent(event); } -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) -void PreviewsSettingsPage::configureService(const QModelIndex &index) -{ - const QAbstractItemModel *model = index.model(); - const QString pluginName = model->data(index).toString(); - const QString desktopEntryName = model->data(index, ServiceModel::DesktopEntryNameRole).toString(); - - ConfigurePreviewPluginDialog *dialog = new ConfigurePreviewPluginDialog(pluginName, desktopEntryName, this); - dialog->setAttribute(Qt::WA_DeleteOnClose); - dialog->show(); -} -#endif - void PreviewsSettingsPage::loadPreviewPlugins() { QAbstractItemModel *model = m_listView->model(); @@@ -156,6 -176,11 +156,6 @@@ model->setData(index, show, Qt::CheckStateRole); model->setData(index, plugin.name(), Qt::DisplayRole); model->setData(index, plugin.pluginId(), ServiceModel::DesktopEntryNameRole); - -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - const bool configurable = plugin.value(QStringLiteral("Configurable"), false); - model->setData(index, configurable, ServiceModel::ConfigurableRole); -#endif } model->sort(Qt::DisplayRole); @@@ -176,3 -201,5 +176,5 @@@ void PreviewsSettingsPage::loadSettings const int maxRemoteMByteSize = maxRemoteByteSize / (1024 * 1024); m_remoteFileSizeBox->setValue(maxRemoteMByteSize); } + + #include "moc_previewssettingspage.cpp" diff --combined src/settings/kcm/kcmdolphingeneral.cpp index 4e99a0e14,c002da926..efb9d40db --- a/src/settings/kcm/kcmdolphingeneral.cpp +++ b/src/settings/kcm/kcmdolphingeneral.cpp @@@ -19,16 -19,16 +19,16 @@@ K_PLUGIN_CLASS_WITH_JSON(DolphinGeneralConfigModule, "kcmdolphingeneral.json") -DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinGeneralConfigModule::DolphinGeneralConfigModule(QObject *parent, const KPluginMetaData &data) + : KCModule(parent, data) , m_pages() { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - QTabWidget *tabWidget = new QTabWidget(this); + QTabWidget *tabWidget = new QTabWidget(widget()); // initialize 'Behavior' tab BehaviorSettingsPage *behaviorPage = new BehaviorSettingsPage(QUrl::fromLocalFile(QDir::homePath()), tabWidget); @@@ -70,3 -70,5 +70,5 @@@ void DolphinGeneralConfigModule::defaul } #include "kcmdolphingeneral.moc" + + #include "moc_kcmdolphingeneral.cpp" diff --combined src/settings/kcm/kcmdolphinnavigation.cpp index c77e198ff,dd4756d8b..6f699f82d --- a/src/settings/kcm/kcmdolphinnavigation.cpp +++ b/src/settings/kcm/kcmdolphinnavigation.cpp @@@ -15,16 -15,16 +15,16 @@@ K_PLUGIN_CLASS_WITH_JSON(DolphinNavigationConfigModule, "kcmdolphinnavigation.json") -DolphinNavigationConfigModule::DolphinNavigationConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinNavigationConfigModule::DolphinNavigationConfigModule(QObject *parent) + : KCModule(parent) , m_navigation(nullptr) { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - m_navigation = new NavigationSettingsPage(this); + m_navigation = new NavigationSettingsPage(widget()); connect(m_navigation, &NavigationSettingsPage::changed, this, &DolphinNavigationConfigModule::markAsChanged); topLayout->addWidget(m_navigation, 0, {}); } @@@ -44,3 -44,5 +44,5 @@@ void DolphinNavigationConfigModule::def } #include "kcmdolphinnavigation.moc" + + #include "moc_kcmdolphinnavigation.cpp" diff --combined src/settings/kcm/kcmdolphinviewmodes.cpp index 7fcc35ac5,867faf69e..41d12aa2c --- a/src/settings/kcm/kcmdolphinviewmodes.cpp +++ b/src/settings/kcm/kcmdolphinviewmodes.cpp @@@ -8,7 -8,6 +8,7 @@@ #include "settings/viewmodes/viewsettingstab.h" +#include #include #include @@@ -20,16 -19,16 +20,16 @@@ K_PLUGIN_CLASS_WITH_JSON(DolphinViewModesConfigModule, "kcmdolphinviewmodes.json") -DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinViewModesConfigModule::DolphinViewModesConfigModule(QObject *parent, const KPluginMetaData &data) + : KCModule(parent, data) , m_tabs() { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - QTabWidget *tabWidget = new QTabWidget(this); + QTabWidget *tabWidget = new QTabWidget(widget()); // Initialize 'Icons' tab ViewSettingsTab *iconsTab = new ViewSettingsTab(ViewSettingsTab::IconsMode, tabWidget); @@@ -86,3 -85,5 +86,5 @@@ void DolphinViewModesConfigModule::view } #include "kcmdolphinviewmodes.moc" + + #include "moc_kcmdolphinviewmodes.cpp" diff --combined src/settings/serviceitemdelegate.cpp index d95ca7918,ea3a5fe52..97fafc631 --- a/src/settings/serviceitemdelegate.cpp +++ b/src/settings/serviceitemdelegate.cpp @@@ -60,7 -60,7 +60,7 @@@ QList ServiceItemDelegate::c return {checkBox, configureButton}; } -void ServiceItemDelegate::updateItemWidgets(const QList widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const +void ServiceItemDelegate::updateItemWidgets(const QList &widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const { QCheckBox *checkBox = static_cast(widgets[0]); QPushButton *configureButton = static_cast(widgets[1]); @@@ -105,3 -105,5 +105,5 @@@ void ServiceItemDelegate::slotConfigure { Q_EMIT requestServiceConfiguration(focusedIndex()); } + + #include "moc_serviceitemdelegate.cpp" diff --combined src/settings/startup/startupsettingspage.cpp index 62905021e,dc15ee39a..f92ead179 --- a/src/settings/startup/startupsettingspage.cpp +++ b/src/settings/startup/startupsettingspage.cpp @@@ -135,7 -135,7 +135,7 @@@ void StartupSettingsPage::applySettings const QUrl url(QUrl::fromUserInput(m_homeUrl->text(), QString(), QUrl::AssumeLocalFile)); if (url.isValid() && KProtocolManager::supportsListing(url)) { - KIO::StatJob *job = KIO::statDetails(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); + KIO::StatJob *job = KIO::stat(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); connect(job, &KJob::result, this, [this, settings, url](KJob *job) { if (job->error() == 0 && qobject_cast(job)->statResult().isDir()) { settings->setHomeUrl(url.toDisplayString(QUrl::PreferLocalFile)); @@@ -229,3 -229,5 +229,5 @@@ void StartupSettingsPage::showSetDefaul { KMessageBox::error(this, i18nc("@info", "The location for the home folder is invalid or does not exist, it will not be applied.")); } + + #include "moc_startupsettingspage.cpp" diff --combined src/settings/trash/trashsettingspage.cpp index d21b4833e,1920cd904..38a3d0865 --- a/src/settings/trash/trashsettingspage.cpp +++ b/src/settings/trash/trashsettingspage.cpp @@@ -6,8 -6,7 +6,8 @@@ #include "trashsettingspage.h" -#include +#include +#include #include #include @@@ -17,13 -16,12 +17,13 @@@ TrashSettingsPage::TrashSettingsPage(QW { QFormLayout *topLayout = new QFormLayout(this); - m_proxy = new KCModuleProxy(KPluginMetaData(QStringLiteral("kcm_trash"))); - topLayout->addRow(m_proxy); + m_kcm = KCModuleLoader::loadModule(KPluginMetaData(QStringLiteral("kcm_trash"))); + + topLayout->addRow(m_kcm->widget()); loadSettings(); - connect(m_proxy, &KCModuleProxy::changed, this, &TrashSettingsPage::changed); + connect(m_kcm, &KCModule::needsSaveChanged, this, &TrashSettingsPage::changed); } TrashSettingsPage::~TrashSettingsPage() @@@ -32,15 -30,17 +32,17 @@@ void TrashSettingsPage::applySettings() { - m_proxy->save(); + m_kcm->save(); } void TrashSettingsPage::restoreDefaults() { - m_proxy->defaults(); + m_kcm->defaults(); } void TrashSettingsPage::loadSettings() { - m_proxy->load(); + m_kcm->load(); } + + #include "moc_trashsettingspage.cpp" diff --combined src/settings/userfeedback/userfeedbacksettingspage.cpp index ea8335474,6c205acee..7d87cb2fc --- a/src/settings/userfeedback/userfeedbacksettingspage.cpp +++ b/src/settings/userfeedback/userfeedbacksettingspage.cpp @@@ -7,8 -7,8 +7,8 @@@ #include "userfeedbacksettingspage.h" #include "userfeedback/dolphinfeedbackprovider.h" -#include -#include +#include +#include #include @@@ -43,3 -43,5 +43,5 @@@ void UserFeedbackSettingsPage::restoreD feedbackProvider->setTelemetryMode(KUserFeedback::Provider::NoTelemetry); feedbackProvider->setSurveyInterval(-1); } + + #include "moc_userfeedbacksettingspage.cpp" diff --combined src/trash/dolphintrash.cpp index ea13100c6,b37a7430d..bbc9c579f --- a/src/trash/dolphintrash.cpp +++ b/src/trash/dolphintrash.cpp @@@ -9,11 -9,17 +9,11 @@@ #include #include +#include #include #include -#include -#include -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) -#include -#else -#include -#include -#endif +#include Trash::Trash() : m_trashDirLister(new KDirLister()) @@@ -56,10 -62,22 +56,10 @@@ static void notifyEmptied( void Trash::empty(QWidget *window) { -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) using Iface = KIO::AskUserActionInterface; auto *emptyJob = new KIO::DeleteOrTrashJob(QList{}, Iface::EmptyTrash, Iface::DefaultConfirmation, window); QObject::connect(emptyJob, &KIO::Job::result, notifyEmptied); emptyJob->start(); -#else - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(window); - bool confirmed = uiDelegate.askDeleteConfirmation(QList(), KIO::JobUiDelegate::EmptyTrash, KIO::JobUiDelegate::DefaultConfirmation); - if (confirmed) { - KIO::Job *job = KIO::emptyTrash(); - KJobWidgets::setWindow(job, window); - job->uiDelegate()->setAutoErrorHandlingEnabled(true); - QObject::connect(job, &KIO::Job::result, notifyEmptied); - } -#endif } bool Trash::isEmpty() @@@ -67,3 -85,5 +67,5 @@@ KConfig trashConfig(QStringLiteral("trashrc"), KConfig::SimpleConfig); return (trashConfig.group("Status").readEntry("Empty", true)); } + + #include "moc_dolphintrash.cpp" diff --combined src/userfeedback/dolphinfeedbackprovider.cpp index abe6e41a1,19526dc4d..f233fad46 --- a/src/userfeedback/dolphinfeedbackprovider.cpp +++ b/src/userfeedback/dolphinfeedbackprovider.cpp @@@ -8,13 -8,13 +8,13 @@@ #include "placesdatasource.h" #include "settingsdatasource.h" -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include DolphinFeedbackProvider *DolphinFeedbackProvider::instance() { @@@ -39,3 -39,5 +39,5 @@@ DolphinFeedbackProvider::DolphinFeedbac addDataSource(new PlacesDataSource); addDataSource(new SettingsDataSource); } + + #include "moc_dolphinfeedbackprovider.cpp" diff --combined src/views/dolphinremoteencoding.cpp index 35b50f07c,2881915ac..32dd6bd29 --- a/src/views/dolphinremoteencoding.cpp +++ b/src/views/dolphinremoteencoding.cpp @@@ -87,7 -87,7 +87,7 @@@ void DolphinRemoteEncoding::fillMenu( QMenu *menu = m_menu->menu(); menu->clear(); - menu->addAction(i18n("Default"), this, SLOT(slotDefault()), 0)->setCheckable(true); + menu->addAction(i18n("Default"), this, &DolphinRemoteEncoding::slotDefault)->setCheckable(true); for (int i = 0; i < m_encodingDescriptions.size(); i++) { QAction *action = new QAction(m_encodingDescriptions.at(i), this); action->setCheckable(true); @@@ -96,7 -96,7 +96,7 @@@ } menu->addSeparator(); - menu->addAction(i18n("Reload"), this, SLOT(slotReload()), 0); + menu->addAction(i18n("Reload"), this, &DolphinRemoteEncoding::slotReload); m_idDefault = m_encodingDescriptions.size() + 2; connect(menu, &QMenu::triggered, this, &DolphinRemoteEncoding::slotItemSelected); @@@ -215,3 -215,5 +215,5 @@@ void DolphinRemoteEncoding::updateView( m_actionHandler->currentView()->setUrl(m_currentURL); m_actionHandler->currentView()->reload(); } + + #include "moc_dolphinremoteencoding.cpp" diff --combined src/views/dolphinview.cpp index a557fa8d1,9666ca2ab..ebbf324b0 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@@ -35,7 -35,7 +35,7 @@@ #include #include #include -#include +#include #include #include #include @@@ -49,6 -49,11 +49,6 @@@ #include -#include -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) -#include -#endif - #include #include #include @@@ -618,7 -623,7 +618,7 @@@ void DolphinView::requestStatusBarText( return; } - m_statJobForStatusBarText = KIO::statDetails(m_model->rootItem().url(), KIO::StatJob::SourceSide, KIO::StatRecursiveSize, KIO::HideProgressInfo); + m_statJobForStatusBarText = KIO::stat(m_model->rootItem().url(), KIO::StatJob::SourceSide, KIO::StatRecursiveSize, KIO::HideProgressInfo); connect(m_statJobForStatusBarText, &KJob::result, this, &DolphinView::slotStatJobResult); m_statJobForStatusBarText->start(); } @@@ -752,22 -757,43 +752,22 @@@ void DolphinView::trashSelectedItems( { const QList list = simplifiedSelectedUrls(); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) using Iface = KIO::AskUserActionInterface; auto *trashJob = new KIO::DeleteOrTrashJob(list, Iface::Trash, Iface::DefaultConfirmation, this); connect(trashJob, &KJob::result, this, &DolphinView::slotTrashFileFinished); m_selectNextItem = true; trashJob->start(); -#else - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(window()); - if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Trash, KIO::JobUiDelegate::DefaultConfirmation)) { - KIO::Job *job = KIO::trash(list); - KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Trash, list, QUrl(QStringLiteral("trash:/")), job); - KJobWidgets::setWindow(job, this); - connect(job, &KIO::Job::result, this, &DolphinView::slotTrashFileFinished); - } -#endif } void DolphinView::deleteSelectedItems() { const QList list = simplifiedSelectedUrls(); -#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) using Iface = KIO::AskUserActionInterface; auto *trashJob = new KIO::DeleteOrTrashJob(list, Iface::Delete, Iface::DefaultConfirmation, this); connect(trashJob, &KJob::result, this, &DolphinView::slotTrashFileFinished); m_selectNextItem = true; trashJob->start(); -#else - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(window()); - if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::DefaultConfirmation)) { - KIO::Job *job = KIO::del(list); - KJobWidgets::setWindow(job, this); - connect(job, &KIO::Job::result, this, &DolphinView::slotDeleteFileFinished); - } -#endif } void DolphinView::cutSelectedItemsToClipboard() @@@ -2317,7 -2343,7 +2317,7 @@@ void DolphinView::slotSwipeUp( void DolphinView::showLoadingPlaceholder() { - m_placeholderLabel->setText(i18n("Loading...")); + m_placeholderLabel->setText(i18n("Loading…")); m_placeholderLabel->setVisible(true); } @@@ -2392,3 -2418,5 +2392,5 @@@ bool DolphinView::tryShowNameToolTip(QH } return false; } + + #include "moc_dolphinview.cpp" diff --combined src/views/dolphinviewactionhandler.cpp index d30464626,7117e9e1b..4408a9e47 --- a/src/views/dolphinviewactionhandler.cpp +++ b/src/views/dolphinviewactionhandler.cpp @@@ -77,7 -77,7 +77,7 @@@ void DolphinViewActionHandler::createAc // This action doesn't appear in the GUI, it's for the shortcut only. // KNewFileMenu takes care of the GUI stuff. QAction *newDirAction = m_actionCollection->addAction(QStringLiteral("create_dir")); - newDirAction->setText(i18nc("@action", "Create Folder...")); + newDirAction->setText(i18nc("@action", "Create Folder…")); m_actionCollection->setDefaultShortcuts(newDirAction, KStandardShortcut::createFolder()); newDirAction->setIcon(QIcon::fromTheme(QStringLiteral("folder-new"))); newDirAction->setEnabled(false); // Will be enabled in slotWriteStateChanged(bool) if the current URL is writable @@@ -215,7 -215,7 +215,7 @@@ viewModeActions->addAction(compactAction); viewModeActions->addAction(detailsAction); viewModeActions->setToolBarMode(KSelectAction::MenuMode); - connect(viewModeActions, &KSelectAction::triggered, this, &DolphinViewActionHandler::slotViewModeActionTriggered); + connect(viewModeActions, &KSelectAction::actionTriggered, this, &DolphinViewActionHandler::slotViewModeActionTriggered); QAction *zoomInAction = KStandardAction::zoomIn(this, &DolphinViewActionHandler::zoomIn, m_actionCollection); zoomInAction->setWhatsThis(i18nc("@info:whatsthis zoom in", "This increases the icon size.")); @@@ -327,7 -327,7 +327,7 @@@ connect(showHiddenFiles, &KToggleAction::triggered, this, &DolphinViewActionHandler::toggleShowHiddenFiles); QAction *adjustViewProps = m_actionCollection->addAction(QStringLiteral("view_properties")); - adjustViewProps->setText(i18nc("@action:inmenu View", "Adjust View Display Style...")); + adjustViewProps->setText(i18nc("@action:inmenu View", "Adjust View Display Style…")); adjustViewProps->setIcon(QIcon::fromTheme(QStringLiteral("view-choose"))); adjustViewProps->setWhatsThis(i18nc("@info:whatsthis", "This opens a window " @@@ -820,3 -820,5 +820,5 @@@ void DolphinViewActionHandler::slotSele } } } + + #include "moc_dolphinviewactionhandler.cpp"