core/window: ensure window cannot be made visible during reload

This causes duplicate windows.
This commit is contained in:
outfoxxed committed 2024-03-27 02:38:54 -07:00
1 parent 9625129844
commit 9cbd5abd96
2 files changed
+4 -1

No files matched your search

+3 -1
View File
@@ -51,6 +51,8 @@ void ProxyWindowBase::onReload(QObject* oldInstance) {
this->connectWindow();
this->completeWindow();
this->reloadComplete = true;
emit this->windowConnected();
this->postCompleteWindow();
@@ -164,7 +166,7 @@ bool ProxyWindowBase::isVisibleDirect() const {
void ProxyWindowBase::setVisible(bool visible) {
this->mVisible = visible;
this->setVisibleDirect(visible);
if (this->reloadComplete) this->setVisibleDirect(visible);
}
void ProxyWindowBase::setVisibleDirect(bool visible) {
+1
View File
@@ -129,6 +129,7 @@ protected:
PendingRegion* mMask = nullptr;
QQuickWindow* window = nullptr;
QQuickItem* mContentItem = nullptr;
bool reloadComplete = false;
private:
void updateMask();