From 8f7b72f34b8d80d628eecba4c0b2327a1d7c419c Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Mon, 12 Jan 2026 10:00:55 +0100 Subject: [PATCH] Fix "Drawing to the wrong window with cairo and X11" (#1358) --- src/Fl_Cairo.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Fl_Cairo.cxx b/src/Fl_Cairo.cxx index 80594f5f5..38f8fea69 100644 --- a/src/Fl_Cairo.cxx +++ b/src/Fl_Cairo.cxx @@ -123,8 +123,6 @@ cairo_t *Fl::cairo_make_current(Fl_Window *wi) { if (fl_gc == Fl::cairo_state_.gc() && fl_xid(wi) == (Window)Fl::cairo_state_.window()) return Fl::cairo_cc(); - cairo_state_.window((void *)fl_xid(wi)); - // Scale the Cairo context appropriately. This is platform dependent #if !defined(USE_MAC_OS) @@ -138,6 +136,8 @@ cairo_t *Fl::cairo_make_current(Fl_Window *wi) { cairo_ctxt = Fl::cairo_make_current(fl_gc, wi->w(), wi->h()); #endif + cairo_state_.window((void *)fl_xid(wi)); + #if !defined(USE_MAC_OS) cairo_scale(cairo_ctxt, scale, scale); #endif