+ setMinimumSize(QSize(540, minSize.height()));
+
+ setFaceType(KRuntimePlatform::runtimePlatform().contains(QLatin1String("phone")) ? Tabbed : List);
+ setWindowTitle(i18nc("@title:window", "Configure"));
+
+ // Interface
+ InterfaceSettingsPage *interfaceSettingsPage = new InterfaceSettingsPage(this);
+ KPageWidgetItem *interfaceSettingsFrame = addPage(interfaceSettingsPage, i18nc("@title:group Interface settings", "Interface"));
+ interfaceSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("org.kde.dolphin")));
+ connect(interfaceSettingsPage, &InterfaceSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+
+ // View
+ ViewSettingsPage *viewSettingsPage = new ViewSettingsPage(url, this);
+ KPageWidgetItem *viewSettingsFrame = addPage(viewSettingsPage, i18nc("@title:group", "View"));
+ viewSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("preferences-desktop-icons")));
+ connect(viewSettingsPage, &ViewSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+
+ // Context Menu
+ auto contextMenuSettingsPage = new ContextMenuSettingsPage(this,
+ actions,
+ {QStringLiteral("add_to_places"),
+ QStringLiteral("sort"),
+ QStringLiteral("group"),
+ QStringLiteral("view_mode"),
+ QStringLiteral("open_in_new_tab"),
+ QStringLiteral("open_in_new_window"),
+ QStringLiteral("open_in_split_view"),
+ QStringLiteral("copy_location"),
+ QStringLiteral("duplicate"),
+ QStringLiteral("open_terminal_here"),
+ QStringLiteral("copy_to_inactive_split_view"),
+ QStringLiteral("move_to_inactive_split_view")});
+ KPageWidgetItem *contextMenuSettingsFrame = addPage(contextMenuSettingsPage, i18nc("@title:group", "Context Menu"));
+ contextMenuSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("preferences-desktop-menu-edit")));
+ connect(contextMenuSettingsPage, &ContextMenuSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+
+ // Trash
+ SettingsPageBase *trashSettingsPage = nullptr;
+#ifndef Q_OS_WIN
+ trashSettingsPage = createTrashSettingsPage(this);
+#endif
+ if (trashSettingsPage) {
+ trashSettings = addPage(trashSettingsPage, i18nc("@title:group", "Trash"));
+ trashSettings->setIcon(QIcon::fromTheme(QStringLiteral("user-trash")));
+ connect(trashSettingsPage, &TrashSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+ }
+
+#if HAVE_KUSERFEEDBACK
+ // User Feedback
+ UserFeedbackSettingsPage *feedbackSettingsPage = nullptr;
+ if (DolphinFeedbackProvider::instance()->isEnabled()) {
+ feedbackSettingsPage = new UserFeedbackSettingsPage(this);
+ auto feedbackSettingsFrame = addPage(feedbackSettingsPage, i18nc("@title:group", "User Feedback"));
+ feedbackSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("preferences-desktop-locale")));
+ connect(feedbackSettingsPage, &UserFeedbackSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+ }
+#endif
+
+ m_pages.append(interfaceSettingsPage);
+ m_pages.append(viewSettingsPage);
+ m_pages.append(contextMenuSettingsPage);
+ if (trashSettingsPage) {
+ m_pages.append(trashSettingsPage);
+ }
+#if HAVE_KUSERFEEDBACK
+ if (feedbackSettingsPage) {
+ m_pages.append(feedbackSettingsPage);
+ }
+#endif