-
- //TODO
- //QActionGroup* sortActionGroup = DolphinView::createSortActionGroup(actionCollection());
- //connect(sortActionGroup, SIGNAL(triggered(QAction*)), this, SLOT(sortActionGroupTriggered(QAction*)));
-
- KToggleAction* sortByName = actionCollection()->add<KToggleAction>("sort_by_name");
- sortByName->setText(i18nc("@action:inmenu Sort By", "Name"));
- connect(sortByName, SIGNAL(triggered()), this, SLOT(sortByName()));
-
- KToggleAction* sortBySize = actionCollection()->add<KToggleAction>("sort_by_size");
- sortBySize->setText(i18nc("@action:inmenu Sort By", "Size"));
- connect(sortBySize, SIGNAL(triggered()), this, SLOT(sortBySize()));
-
- KToggleAction* sortByDate = actionCollection()->add<KToggleAction>("sort_by_date");
- sortByDate->setText(i18nc("@action:inmenu Sort By", "Date"));
- connect(sortByDate, SIGNAL(triggered()), this, SLOT(sortByDate()));
-
- KToggleAction* sortByPermissions = actionCollection()->add<KToggleAction>("sort_by_permissions");
- sortByPermissions->setText(i18nc("@action:inmenu Sort By", "Permissions"));
- connect(sortByPermissions, SIGNAL(triggered()), this, SLOT(sortByPermissions()));
-
- KToggleAction* sortByOwner = actionCollection()->add<KToggleAction>("sort_by_owner");
- sortByOwner->setText(i18nc("@action:inmenu Sort By", "Owner"));
- connect(sortByOwner, SIGNAL(triggered()), this, SLOT(sortByOwner()));
-
- KToggleAction* sortByGroup = actionCollection()->add<KToggleAction>("sort_by_group");
- sortByGroup->setText(i18nc("@action:inmenu Sort By", "Group"));
- connect(sortByGroup, SIGNAL(triggered()), this, SLOT(sortByGroup()));
-
- KToggleAction* sortByType = actionCollection()->add<KToggleAction>("sort_by_type");
- sortByType->setText(i18nc("@action:inmenu Sort By", "Type"));
- connect(sortByType, SIGNAL(triggered()), this, SLOT(sortByType()));
-
- // TODO: Hided "sort by rating" and "sort by tags" as without caching the performance
- // is too slow currently (Nepomuk will support caching in future releases).
- //
- // KToggleAction* sortByRating = actionCollection()->add<KToggleAction>("sort_by_rating");
- // sortByRating->setText(i18nc("@action:inmenu Sort By", "Rating"));
- //
- // KToggleAction* sortByTags = actionCollection()->add<KToggleAction>("sort_by_tags");
- // sortByTags->setText(i18nc("@action:inmenu Sort By", "Tags"));
- //
-#ifdef HAVE_NEPOMUK
- // if (MetaDataWidget::metaDataAvailable()) {
- // connect(sortByRating, SIGNAL(triggered()), this, SLOT(sortByRating()));
- // connect(sortByTags, SIGNAL(triggered()), this, SLOT(sortByTags()));
- // }
- // else {
- // sortByRating->setEnabled(false);
- // sortByTags->setEnabled(false);
- // }
-#else
- // sortByRating->setEnabled(false);
- // sortByTags->setEnabled(false);
-#endif
-
- QActionGroup* sortGroup = new QActionGroup(this);
- sortGroup->addAction(sortByName);
- sortGroup->addAction(sortBySize);
- sortGroup->addAction(sortByDate);
- sortGroup->addAction(sortByPermissions);
- sortGroup->addAction(sortByOwner);
- sortGroup->addAction(sortByGroup);
- sortGroup->addAction(sortByType);
-
- // TODO: Hided "sort by rating" and "sort by tags" as without caching the performance
- // is too slow currently (Nepomuk will support caching in future releases).
- //sortGroup->addAction(sortByRating);
- //sortGroup->addAction(sortByTags);
-
- KAction* split = actionCollection()->addAction("split_view");
- split->setShortcut(Qt::Key_F3);
- updateSplitAction();
- connect(split, SIGNAL(triggered()), this, SLOT(toggleSplitView()));
-
- KAction* reload = actionCollection()->addAction("reload");
+ // (note that most of it is set up in DolphinViewActionHandler)
+
+ QAction* split = actionCollection()->addAction(QStringLiteral("split_view"));
+ actionCollection()->setDefaultShortcut(split, Qt::Key_F3);
+ connect(split, &QAction::triggered, this, &DolphinMainWindow::toggleSplitView);
+
+ QAction* stashSplit = actionCollection()->addAction(QStringLiteral("split_stash"));
+ actionCollection()->setDefaultShortcut(stashSplit, Qt::CTRL | Qt::Key_S);
+ stashSplit->setText(i18nc("@action:intoolbar Stash", "Stash"));
+ stashSplit->setToolTip(i18nc("@info", "Opens the stash virtual directory in a split window"));
+ stashSplit->setIcon(QIcon::fromTheme(QStringLiteral("folder-visiting")));
+ stashSplit->setCheckable(false);
+ stashSplit->setVisible(KProtocolInfo::isKnownProtocol("stash"));
+ connect(stashSplit, &QAction::triggered, this, &DolphinMainWindow::toggleSplitStash);
+
+ QAction* reload = actionCollection()->addAction(QStringLiteral("reload"));