X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/24ed38d77f4bc6db71ba2608452fa0cd401bddac..2fd85facf85b39f84eeada10bcf80060bb72ab51:/src/views/dolphinviewactionhandler.cpp diff --git a/src/views/dolphinviewactionhandler.cpp b/src/views/dolphinviewactionhandler.cpp index 5c0b49cd2..447d46f53 100644 --- a/src/views/dolphinviewactionhandler.cpp +++ b/src/views/dolphinviewactionhandler.cpp @@ -107,27 +107,13 @@ void DolphinViewActionHandler::createActions() // File menu - QAction* rename = m_actionCollection->addAction(QStringLiteral("rename")); - rename->setText(i18nc("@action:inmenu File", "Rename...")); - m_actionCollection->setDefaultShortcut(rename, Qt::Key_F2); - rename->setIcon(QIcon::fromTheme(QStringLiteral("edit-rename"))); - connect(rename, &QAction::triggered, this, &DolphinViewActionHandler::slotRename); - - QAction* moveToTrash = m_actionCollection->addAction(QStringLiteral("move_to_trash")); - moveToTrash->setText(i18nc("@action:inmenu File", "Move to Trash")); - moveToTrash->setIcon(QIcon::fromTheme(QStringLiteral("user-trash"))); - m_actionCollection->setDefaultShortcut(moveToTrash, QKeySequence::Delete); - connect(moveToTrash, &QAction::triggered, - this, &DolphinViewActionHandler::slotTrashActivated); - - QAction* deleteAction = m_actionCollection->addAction(QStringLiteral("delete")); - deleteAction->setIcon(QIcon::fromTheme(QStringLiteral("edit-delete"))); - deleteAction->setText(i18nc("@action:inmenu File", "Delete")); - m_actionCollection->setDefaultShortcut(deleteAction, Qt::SHIFT | Qt::Key_Delete); - connect(deleteAction, &QAction::triggered, this, &DolphinViewActionHandler::slotDeleteItems); - - // This action is useful for being enabled when "move_to_trash" should be - // disabled and "delete" is enabled (e.g. non-local files), so that Key_Del + KStandardAction::renameFile(this, &DolphinViewActionHandler::slotRename, m_actionCollection); + + KStandardAction::moveToTrash(this, &DolphinViewActionHandler::slotTrashActivated, m_actionCollection); + KStandardAction::deleteFile(this, &DolphinViewActionHandler::slotDeleteItems, m_actionCollection); + + // This action is useful for being enabled when KStandardAction::MoveToTrash should be + // disabled and KStandardAction::DeleteFile is enabled (e.g. non-local files), so that Key_Del // can be used for deleting the file (#76016). It needs to be a separate action // so that the Edit menu isn't affected. QAction* deleteWithTrashShortcut = m_actionCollection->addAction(QStringLiteral("delete_shortcut")); @@ -158,11 +144,11 @@ void DolphinViewActionHandler::createActions() connect(viewModeActions, static_cast(&KSelectAction::triggered), this, &DolphinViewActionHandler::slotViewModeActionTriggered); KStandardAction::zoomIn(this, - SLOT(zoomIn()), + &DolphinViewActionHandler::zoomIn, m_actionCollection); KStandardAction::zoomOut(this, - SLOT(zoomOut()), + &DolphinViewActionHandler::zoomOut, m_actionCollection); KToggleAction* showPreview = m_actionCollection->add(QStringLiteral("show_preview")); @@ -482,6 +468,12 @@ void DolphinViewActionHandler::slotHiddenFilesShownChanged(bool shown) QAction* showHiddenFilesAction = m_actionCollection->action(QStringLiteral("show_hidden_files")); showHiddenFilesAction->setChecked(shown); + // #374508: don't overwrite custom icons. + const QString iconName = showHiddenFilesAction->icon().name(); + if (!iconName.isEmpty() && iconName != QLatin1String("visibility") && iconName != QLatin1String("hint")) { + return; + } + showHiddenFilesAction->setIcon(QIcon::fromTheme(shown ? QStringLiteral("visibility") : QStringLiteral("hint"))); }