From 5ac74b20bfe5842edf404cafd7f82bc8cd1fcb0b Mon Sep 17 00:00:00 2001 From: Arslaan Pathan Date: Sun, 3 May 2026 08:13:19 +1200 Subject: Add (unsafe) functions to detach/reattach GL context from a SaffronWindow* --- src/saffron_window.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/saffron_window.c b/src/saffron_window.c index a909bc3..085ee20 100644 --- a/src/saffron_window.c +++ b/src/saffron_window.c @@ -1,3 +1,4 @@ +#include "saffron_api.h" #include "saffron_theme.h" #include #include @@ -74,6 +75,14 @@ static void handle_window_resized(SDL_Event* event, SaffronWindow* window) { saffron_box_layout((SaffronBox*)window->root); } +void saffron_window_detach_gl_context(SaffronWindow *window) { + SDL_GL_MakeCurrent(window->sdl_window, NULL); +} + +void saffron_window_reattach_gl_context(SaffronWindow *window) { + SDL_GL_MakeCurrent(window->sdl_window, window->gl_context); +} + void saffron_window_main(SaffronWindow *window) { if (!window) return; @@ -104,7 +113,6 @@ void saffron_window_main(SaffronWindow *window) { SDL_SetRenderDrawColor(window->renderer, 0, 0, 0, 255); SDL_RenderClear(window->renderer); - SDL_GL_MakeCurrent(window->sdl_window, window->gl_context); // just in case! saffron_widget_draw(window->root, window->renderer); SDL_RenderPresent(window->renderer); -- cgit v1.2.3