[ion] Reset the highlighted key once it has been drawn

This commit is contained in:
Émilie Feral
2020-07-28 15:36:54 +02:00
committed by EmilieNumworks
parent ded2174578
commit ef363c57ac
2 changed files with 7 additions and 1 deletions

View File

@@ -282,6 +282,10 @@ void drawHighlightedKey(SDL_Renderer * renderer) {
getKeyRectangle(sHighlightedKeyIndex, &rect);
SDL_RenderCopy(renderer, framebufferTexture, nullptr, &rect);
SDL_DestroyTexture(framebufferTexture);
// Reset highlighted key
sHighlightedKeyIndex = -1;
Main::setNeedsRefresh();
}
static SDL_Texture * sBackgroundTexture = nullptr;

View File

@@ -129,6 +129,8 @@ void refresh() {
if (!sNeedsRefresh) {
return;
}
sNeedsRefresh = false;
#if EPSILON_SDL_SCREEN_ONLY
Display::draw(sRenderer, &sScreenRect);
#else
@@ -137,11 +139,11 @@ void refresh() {
SDL_SetRenderDrawColor(sRenderer, 194, 194, 194, 255);
SDL_RenderClear(sRenderer);
// Can change sNeedsRefresh state if a key is highlighted and needs to be reset
Layout::draw(sRenderer);
Display::draw(sRenderer, &screenRect);
#endif
SDL_RenderPresent(sRenderer);
sNeedsRefresh = false;
IonSimulatorCallbackDidRefresh();
}