#include <KActionMenu>
#include <KAuthorized>
#include <KConfig>
-#include <KDesktopFile>
#include <KFileItemListProperties>
#include <KFilePlacesModel>
#include <KHelpMenu>
m_tearDownFromPlacesRequested(false)
{
Q_INIT_RESOURCE(dolphin);
-
+ setComponentName(QStringLiteral("dolphin"), QGuiApplication::applicationDisplayName());
setObjectName(QStringLiteral("Dolphin#"));
connect(&DolphinNewFileMenuObserver::instance(), &DolphinNewFileMenuObserver::errorMessage,
dialog->setWindowTitle(i18nc("@title:window", "Confirmation"));
dialog->setModal(true);
QDialogButtonBox* buttons = new QDialogButtonBox(QDialogButtonBox::Yes | QDialogButtonBox::No | QDialogButtonBox::Cancel);
- KDesktopFile dolphinDesktopFile(QStringLiteral("%1.desktop").arg(QGuiApplication::desktopFileName()));
- KGuiItem::assign(buttons->button(QDialogButtonBox::Yes), KGuiItem(i18nc("@action:button 'Quit Dolphin' button", "&Quit %1", dolphinDesktopFile.readName()), QIcon::fromTheme(QStringLiteral("application-exit"))));
+ KGuiItem::assign(buttons->button(QDialogButtonBox::Yes), KGuiItem(i18nc("@action:button 'Quit Dolphin' button", "&Quit %1", QGuiApplication::applicationDisplayName()), QIcon::fromTheme(QStringLiteral("application-exit"))));
KGuiItem::assign(buttons->button(QDialogButtonBox::No), KGuiItem(i18n("C&lose Current Tab"), QIcon::fromTheme(QStringLiteral("tab-close"))));
KGuiItem::assign(buttons->button(QDialogButtonBox::Cancel), KStandardGuiItem::cancel());
buttons->button(QDialogButtonBox::Yes)->setDefault(true);
m_newFileMenu->setViewShowsHiddenFiles(activeViewContainer()->view()->hiddenFilesShown());
m_newFileMenu->checkUpToDate();
m_newFileMenu->setPopupFiles(activeViewContainer()->url());
+
+ // If we're in the trash, also disable all the 'create new' items
+ // TODO: remove this once https://phabricator.kde.org/T8234 is implemented
+ slotWriteStateChanged(m_activeViewContainer->view()->url().scheme() != QLatin1String("trash"));
}
void DolphinMainWindow::createDirectory()
void DolphinMainWindow::slotWriteStateChanged(bool isFolderWritable)
{
- newFileMenu()->setEnabled(isFolderWritable);
+ const auto actions = m_newFileMenu->menu()->actions();
+ for (auto menuItem : actions) {
+ menuItem->setEnabled(isFolderWritable);
+ }
}
void DolphinMainWindow::openContextMenu(const QPoint& pos,