WebAssembly: Simplify initial settings UI update

This removes the need for a delayed call of
WebAssemblySettings::updateStatus(), and a possible visual glitch where
too many widgets are visible for a split sencond.

Change-Id: I2b4b39f6576d16d4fde6b3e3df1ce09e6805086d
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
Alessandro Portale
2024-07-23 12:48:37 +02:00
parent ddbf884c12
commit 72509fbe10
2 changed files with 2 additions and 8 deletions

View File

@@ -103,7 +103,6 @@ WebAssemblySettings::WebAssemblySettings()
}, },
Group { Group {
title(Tr::tr("Emscripten SDK environment:")), title(Tr::tr("Emscripten SDK environment:")),
bindTo(&m_emSdkEnvGroupBox),
Column { Column {
m_emSdkEnvDisplay, m_emSdkEnvDisplay,
}, },
@@ -115,9 +114,7 @@ WebAssemblySettings::WebAssemblySettings()
connect(emSdk.pathChooser(), &Utils::PathChooser::textChanged, connect(emSdk.pathChooser(), &Utils::PathChooser::textChanged,
this, &WebAssemblySettings::updateStatus); this, &WebAssemblySettings::updateStatus);
// updateStatus() uses m_emSdkEnvGroupBox which only exists updateStatus();
// after this here emerges. So delay the update a bit.
QTimer::singleShot(0, this, &WebAssemblySettings::updateStatus);
return col; return col;
}); });
@@ -132,10 +129,8 @@ void WebAssemblySettings::updateStatus()
const Utils::FilePath newEmSdk = emSdk.pathChooser()->filePath(); const Utils::FilePath newEmSdk = emSdk.pathChooser()->filePath();
const bool sdkValid = newEmSdk.exists() && WebAssemblyEmSdk::isValid(newEmSdk); const bool sdkValid = newEmSdk.exists() && WebAssemblyEmSdk::isValid(newEmSdk);
QTC_ASSERT(m_emSdkVersionDisplay, return);
QTC_ASSERT(m_emSdkEnvGroupBox, return);
m_emSdkVersionDisplay->setVisible(sdkValid); m_emSdkVersionDisplay->setVisible(sdkValid);
m_emSdkEnvGroupBox->setEnabled(sdkValid); m_emSdkEnvDisplay->setEnabled(sdkValid);
if (sdkValid) { if (sdkValid) {
const QVersionNumber sdkVersion = WebAssemblyEmSdk::version(newEmSdk); const QVersionNumber sdkVersion = WebAssemblyEmSdk::version(newEmSdk);

View File

@@ -21,7 +21,6 @@ public:
Utils::FilePathAspect emSdk{this}; Utils::FilePathAspect emSdk{this};
private: private:
QWidget *m_emSdkEnvGroupBox = nullptr;
Utils::InfoLabel *m_emSdkVersionDisplay = nullptr; Utils::InfoLabel *m_emSdkVersionDisplay = nullptr;
QTextBrowser *m_emSdkEnvDisplay = nullptr; QTextBrowser *m_emSdkEnvDisplay = nullptr;
Utils::InfoLabel *m_qtVersionDisplay = nullptr; Utils::InfoLabel *m_qtVersionDisplay = nullptr;