fix djui back button bug and crash [build]

could be caused by pressing B and letting go of A on the same frame
This commit is contained in:
Isaac0-dev 2025-06-04 09:43:15 +10:00
parent b8fe342c17
commit 65b67ad9fa
4 changed files with 8 additions and 4 deletions

View file

@ -438,6 +438,7 @@ void djui_interactable_update(void) {
} else if ((padButtons & PAD_BUTTON_B) && !(sLastInteractablePad.button & PAD_BUTTON_B)) {
// pressed back button on controller
djui_panel_back();
return;
} else if ((padButtons & PAD_BUTTON_START) && !(sLastInteractablePad.button & PAD_BUTTON_START)) {
// pressed start button
if (gDjuiPanelPauseCreated) { djui_panel_shutdown(); }

View file

@ -75,5 +75,6 @@ void djui_panel_dynos_create(struct DjuiBase* caller) {
}
struct DjuiPanel* p = djui_panel_add(caller, panel, NULL);
if (!p) { return; }
p->on_panel_destroy = djui_panel_dynos_destroy;
}

View file

@ -168,6 +168,7 @@ skip_langs:
}
struct DjuiPanel* p = djui_panel_add(caller, panel, NULL);
if (!p) { return; }
p->on_panel_destroy = djui_panel_language_destroy;
}

View file

@ -475,5 +475,6 @@ void djui_panel_player_create(struct DjuiBase* caller) {
}
struct DjuiPanel* p = djui_panel_add(caller, panel, NULL);
if (!p) { return; }
p->on_panel_destroy = djui_panel_player_destroy;
}