diff options
| author | Elvis Angelaccio <[email protected]> | 2018-10-07 13:19:17 +0200 |
|---|---|---|
| committer | Elvis Angelaccio <[email protected]> | 2018-10-07 15:43:34 +0200 |
| commit | 5e8b892a519b8d1fef58a747fafb5846b7fa3492 (patch) | |
| tree | b2060d92795e0fa760c06bfead8f5e09434154d6 /src | |
| parent | dec7016c0d52129340a5b47f6de4df8af5115e21 (diff) | |
Fix disabling of DolphinNewFileMenu
Summary:
Commit e133c4557ecc37ed3f7e1b9 doesn't work because the actions in the
KNewFileMenu are added only when we show the context menu for the first
time.
Fixes the failing test cases in D16005.
Test Plan: Run `dolphinmainwindowtest` and open the context menu in different places (Home, Root, Trash, `bluetooth:/`, etc.)
Reviewers: #dolphin
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D16006
Diffstat (limited to 'src')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index a93405f53..38537d92a 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -457,10 +457,6 @@ void DolphinMainWindow::updateNewMenu() 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() @@ -808,10 +804,9 @@ void DolphinMainWindow::slotHandleUrlStatFinished(KJob* job) void DolphinMainWindow::slotWriteStateChanged(bool isFolderWritable) { - const auto actions = m_newFileMenu->menu()->actions(); - for (auto menuItem : actions) { - menuItem->setEnabled(isFolderWritable); - } + // trash:/ is writable but we don't want to create new items in it. + // TODO: remove the trash check once https://phabricator.kde.org/T8234 is implemented + newFileMenu()->setEnabled(isFolderWritable && m_activeViewContainer->url().scheme() != QLatin1String("trash")); } void DolphinMainWindow::openContextMenu(const QPoint& pos, |
