From 0b13cf2a3bbd105fe4326e8e005536da43684df6 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Mon, 2 Jun 2025 11:56:54 -0400 Subject: Improve renderer api, misc cleanup Signed-off-by: Andrew Opalach --- src/screen/screen.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'src/screen') diff --git a/src/screen/screen.c b/src/screen/screen.c index 0ff5eec..bb11757 100644 --- a/src/screen/screen.c +++ b/src/screen/screen.c @@ -302,20 +302,22 @@ static bool key_callback(void *userdata, u8 state, u16 button) case STELA_KEY_N: scr->scaling_disabled = !scr->scaling_disabled; if (scr->scaling_disabled) { - scr->renderer->set_scaling(scr->renderer, CAMU_SCALING_NEAREST); + scr->renderer->set(scr->renderer, CAMU_RENDERER_SCALING, CAMU_SCALING_NEAREST); log_info("Scaling filters disabled."); } else { - scr->renderer->set_scaling(scr->renderer, CAMU_SCALING_DEFAULT); + scr->renderer->set(scr->renderer, CAMU_RENDERER_SCALING, CAMU_SCALING_DEFAULT); log_info("Scaling filters enabled."); } return true; case STELA_KEY_C: scr->transparent_background = !scr->transparent_background; if (scr->transparent_background) { - scr->renderer->set_background(scr->renderer, CAMU_BACKGROUND_TRANSPARENT); + scr->window->set_decorations(scr->window, false); + scr->renderer->set(scr->renderer, CAMU_RENDERER_BACKGROUND, CAMU_BACKGROUND_TRANSPARENT); log_info("Background transparent."); } else { - scr->renderer->set_background(scr->renderer, CAMU_BACKGROUND_DEFAULT); + scr->window->set_decorations(scr->window, true); + scr->renderer->set(scr->renderer, CAMU_RENDERER_BACKGROUND, CAMU_BACKGROUND_DEFAULT); log_info("Background solid."); } // Force refresh for if there's no video buffer. @@ -350,11 +352,11 @@ static void key_immediate_callback(void *userdata, u8 state, u16 button) switch (button) { case STELA_KEY_F: scr->fullscreen = !scr->fullscreen; - if (scr->renderer->set_fullscreen) { - scr->renderer->set_fullscreen(scr->renderer, scr->fullscreen); - } else { - scr->window->toggle_fullscreen(scr->window); - } +#ifdef STELA_API_DX11 + scr->renderer->set(scr->renderer, CAMU_RENDERER_FULLSCREEN, scr->fullscreen); +#else + scr->window->toggle_fullscreen(scr->window); +#endif break; } break; -- cgit v1.2.3-101-g0448