DisplayServerWindows: Fix logic when creating with transient parent

This commit is contained in:
Alvin Wong
2024-08-15 04:07:08 +08:00
parent 8e666adeed
commit 16a563b9ac

View File

@ -5391,13 +5391,15 @@ DisplayServer::WindowID DisplayServerWindows::_create_window(WindowMode p_mode,
{ {
WindowData *wd_transient_parent = nullptr; WindowData *wd_transient_parent = nullptr;
HWND owner_hwnd = nullptr; HWND owner_hwnd = nullptr;
if (p_transient_parent != INVALID_WINDOW_ID && !windows.has(p_transient_parent)) { if (p_transient_parent != INVALID_WINDOW_ID) {
ERR_PRINT("Condition \"!windows.has(p_transient_parent)\" is true."); if (!windows.has(p_transient_parent)) {
p_transient_parent = INVALID_WINDOW_ID; ERR_PRINT("Condition \"!windows.has(p_transient_parent)\" is true.");
} else { p_transient_parent = INVALID_WINDOW_ID;
wd_transient_parent = &windows[p_transient_parent]; } else {
if (p_exclusive) { wd_transient_parent = &windows[p_transient_parent];
owner_hwnd = wd_transient_parent->hWnd; if (p_exclusive) {
owner_hwnd = wd_transient_parent->hWnd;
}
} }
} }