#include "dolphin_generalsettings.h"
#include "dolphin_versioncontrolsettings.h"
#include "global.h"
-#include "settings/serviceitemdelegate.h"
#include "settings/servicemodel.h"
#include <KDesktopFile>
#include <KMessageBox>
#include <KPluginMetaData>
#include <KService>
-#include <kio_version.h>
#include <kiocore_export.h>
#include <kservice_export.h>
#include <kwidgetsaddons_version.h>
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);
});
m_listView = new QListView(this);
QScroller::grabGesture(m_listView->viewport(), QScroller::TouchGesture);
- auto *delegate = new ServiceItemDelegate(m_listView, m_listView);
m_serviceModel = new ServiceModel(this);
m_sortModel = new QSortFilterProxyModel(this);
m_sortModel->setSourceModel(m_serviceModel);
m_sortModel->setFilterRole(Qt::DisplayRole);
m_sortModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
m_listView->setModel(m_sortModel);
- m_listView->setItemDelegate(delegate);
m_listView->setVerticalScrollMode(QListView::ScrollPerPixel);
connect(m_listView, &QListView::clicked, this, &ContextMenuSettingsPage::changed);
#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();
return ContextMenuSettings::showDuplicateHere();
} else if (id == "open_terminal_here") {
return ContextMenuSettings::showOpenTerminal();
+ } else if (id == "copy_to_inactive_split_view") {
+ return ContextMenuSettings::showCopyToOtherSplitView();
+ } else if (id == "move_to_inactive_split_view") {
+ return ContextMenuSettings::showMoveToOtherSplitView();
}
return false;
}
ContextMenuSettings::setShowDuplicateHere(visible);
} else if (id == "open_terminal_here") {
ContextMenuSettings::setShowOpenTerminal(visible);
+ } else if (id == "copy_to_inactive_split_view") {
+ ContextMenuSettings::setShowCopyToOtherSplitView(visible);
+ } else if (id == "move_to_inactive_split_view") {
+ ContextMenuSettings::setShowMoveToOtherSplitView(visible);
}
}
for (int i = 0; i < model->rowCount(); ++i) {
const QModelIndex index = model->index(i, 0);
const QString service = model->data(index, ServiceModel::DesktopEntryNameRole).toString();
- const bool checked = model->data(index, Qt::CheckStateRole).toBool();
+ const bool checked = model->data(index, Qt::CheckStateRole).value<Qt::CheckState>() == Qt::Checked;
if (service.startsWith(VersionControlServicePrefix)) {
if (checked) {
const bool checked =
!service.startsWith(VersionControlServicePrefix) && service != QLatin1String(DeleteService) && service != QLatin1String(CopyToMoveToService);
- model->setData(index, checked, Qt::CheckStateRole);
+ model->setData(index, checked ? Qt::Checked : Qt::Unchecked, Qt::CheckStateRole);
}
}
for (const QString &id : m_actionIds) {
const QAction *action = m_actions->action(id);
if (action) {
- addRow(action->icon().name(), action->text(), id, entryVisible(id));
+ addRow(action->icon().name(), KLocalizedString::removeAcceleratorMarker(action->text()), id, entryVisible(id));
}
}
}
}
// Load JSON-based plugins that implement the KFileItemActionPlugin interface
- const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf" QT_STRINGIFY(QT_MAJOR_VERSION)) + QStringLiteral("/kfileitemaction"));
+ const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf6/kfileitemaction"));
for (const auto &jsonMetadata : jsonPlugins) {
const QString desktopEntryName = jsonMetadata.pluginId();
m_serviceModel->setData(index, icon, Qt::DecorationRole);
m_serviceModel->setData(index, text, Qt::DisplayRole);
m_serviceModel->setData(index, value, ServiceModel::DesktopEntryNameRole);
- m_serviceModel->setData(index, checked, Qt::CheckStateRole);
+ m_serviceModel->setData(index, checked ? Qt::Checked : Qt::Unchecked, Qt::CheckStateRole);
}
+
+#include "moc_contextmenusettingspage.cpp"