Assign ActiveWindowID to NullWindowID if window doesn't exist, misc

This commit is contained in:
Krzosa Karol
2025-12-30 13:06:36 +01:00
parent 5214ce61ac
commit 8270fe2542
3 changed files with 18 additions and 13 deletions

View File

@@ -603,11 +603,17 @@ void Update(Event event) {
}
}
ActiveWindowID = NextActiveWindowID;
Window *window = GetWindow(ActiveWindowID, NULL);
if (window == NULL || window->visible == false) {
ActiveWindowID = NextActiveWindowID = LastActiveLayoutWindowID;
window = GetWindow(ActiveWindowID);
{
ActiveWindowID = NextActiveWindowID;
Window *window = GetWindow(ActiveWindowID, NULL);
if (window == NULL || window->visible == false) {
ActiveWindowID = NextActiveWindowID = LastActiveLayoutWindowID;
window = GetWindow(ActiveWindowID, NULL);
if (window == NULL) {
ActiveWindowID = NullWindowID;
Assert(GetWindow(ActiveWindowID, NULL));
}
}
}
// Behavior where these windows cannot be visible at the same time
@@ -625,6 +631,7 @@ void Update(Event event) {
}
if (ActiveWindowID != LastActiveLayoutWindowID) {
Window *window = GetWindow(ActiveWindowID, NULL);
if (window->layout) {
LastActiveLayoutWindowID = ActiveWindowID;
}