ProjectExplorer: Keep "Run" entry in top-level project node visible

Enable/disable instead of show/hide, for more stable UI.

Fixes: QTCREATORBUG-29042
Change-Id: Ie2c37b3cb127f9dffaf42570f11b2cca6accd3fd
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Christian Kandeler
2023-04-25 14:56:46 +02:00
parent 3a70cb2870
commit 963ae0a192

View File

@@ -3409,7 +3409,7 @@ void ProjectExplorerPluginPrivate::updateContextMenuActions(Node *currentNode)
m_removeFileAction->setVisible(true);
m_duplicateFileAction->setVisible(false);
m_deleteFileAction->setVisible(true);
m_runActionContextMenu->setVisible(false);
m_runActionContextMenu->setEnabled(false);
m_defaultRunConfiguration.clear();
m_diffFileAction->setVisible(DiffService::instance());
@@ -3438,7 +3438,7 @@ void ProjectExplorerPluginPrivate::updateContextMenuActions(Node *currentNode)
if (pn && project) {
if (pn == project->rootProjectNode()) {
m_runActionContextMenu->setVisible(true);
m_runActionContextMenu->setEnabled(true);
} else {
QList<RunConfiguration *> runConfigs;
if (Target *t = project->activeTarget()) {
@@ -3449,7 +3449,7 @@ void ProjectExplorerPluginPrivate::updateContextMenuActions(Node *currentNode)
}
}
if (runConfigs.count() == 1) {
m_runActionContextMenu->setVisible(true);
m_runActionContextMenu->setEnabled(true);
m_defaultRunConfiguration = runConfigs.first();
} else if (runConfigs.count() > 1) {
runMenu->menu()->menuAction()->setVisible(true);