if (qApp->queryKeyboardModifiers() & Qt::ShiftModifier) {
m_action = m_collection ? m_collection->action(KStandardAction::name(KStandardAction::DeleteFile)) : 0;
setText(i18nc("@action:inmenu", "&Delete"));
+ // Make sure we show Shift+Del in the context menu.
+ auto deleteShortcuts = m_action->shortcuts();
+ deleteShortcuts.removeAll(Qt::SHIFT | Qt::Key_Delete);
+ deleteShortcuts.prepend(Qt::SHIFT | Qt::Key_Delete);
+ m_collection->setDefaultShortcuts(this, deleteShortcuts);
} else {
m_action = m_collection ? m_collection->action(QStringLiteral("move_to_trash")) : 0;
setText(i18nc("@action:inmenu", "&Move to Trash"));
+ m_collection->setDefaultShortcuts(this, m_action->shortcuts());
}
if (m_action) {
setIcon(m_action->icon());
- m_collection->setDefaultShortcuts(this, m_action->shortcuts());
setEnabled(m_action->isEnabled());
}
}
connect(moveToTrash, &QAction::triggered,
this, &DolphinViewActionHandler::slotTrashActivated);
- KStandardAction::deleteFile(this, &DolphinViewActionHandler::slotDeleteItems, m_actionCollection);
+ auto deleteAction = KStandardAction::deleteFile(this, &DolphinViewActionHandler::slotDeleteItems, m_actionCollection);
+ auto deleteShortcuts = deleteAction->shortcuts();
+ if (!deleteShortcuts.contains(Qt::SHIFT | Qt::Key_Delete)) {
+ deleteShortcuts.append(Qt::SHIFT | Qt::Key_Delete);
+ m_actionCollection->setDefaultShortcuts(deleteAction, deleteShortcuts);
+ }
// This action is useful for being enabled when "move_to_trash" should be
// disabled and KStandardAction::DeleteFile is enabled (e.g. non-local files), so that Key_Del