Fix graphical glitches in volume adjustment menu

Due to the waitInputWithTimeout call taking up to 1 second, the framebuffer must be flushed. Also added padding where it was needed
This commit is contained in:
Anonymous941 2024-03-06 10:58:19 -05:00 committed by TuxSH
parent 85e0257289
commit 63fbc37426

View File

@ -438,11 +438,12 @@ void SysConfigMenu_AdjustVolume(void)
Draw_DrawString(10, posY, COLOR_WHITE, "Current status:"); Draw_DrawString(10, posY, COLOR_WHITE, "Current status:");
posY = Draw_DrawString(100, posY, (tempVolumeOverride == -1) ? COLOR_RED : COLOR_GREEN, (tempVolumeOverride == -1) ? " DISABLED" : " ENABLED "); posY = Draw_DrawString(100, posY, (tempVolumeOverride == -1) ? COLOR_RED : COLOR_GREEN, (tempVolumeOverride == -1) ? " DISABLED" : " ENABLED ");
if (tempVolumeOverride != -1) { if (tempVolumeOverride != -1) {
posY = Draw_DrawFormattedString(30, posY, COLOR_WHITE, "\nValue: [%d%%]", tempVolumeOverride); posY = Draw_DrawFormattedString(30, posY, COLOR_WHITE, "\nValue: [%d%%] ", tempVolumeOverride);
} else { } else {
posY = Draw_DrawString(30, posY, COLOR_WHITE, "\n "); posY = Draw_DrawString(30, posY, COLOR_WHITE, "\n ");
} }
Draw_FlushFramebuffer();
u32 pressed = waitInputWithTimeout(1000); u32 pressed = waitInputWithTimeout(1000);
if(pressed & KEY_A) if(pressed & KEY_A)
@ -484,6 +485,5 @@ void SysConfigMenu_AdjustVolume(void)
if (tempVolumeOverride > 100) if (tempVolumeOverride > 100)
tempVolumeOverride = 100; tempVolumeOverride = 100;
} }
} while(!menuShouldExit); } while(!menuShouldExit);
} }