From 981aa8c2e7b519accfb42c9690dd04fb404122c5 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Mon, 2 Dec 2024 17:46:49 +0100 Subject: Fix: Drawing bugs on Windows at very large scales (#1144) --- src/drivers/Quartz/Fl_Quartz_Graphics_Driver.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/drivers/Quartz') diff --git a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver.cxx b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver.cxx index a9ca6cc88..7ee610d24 100644 --- a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver.cxx +++ b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver.cxx @@ -159,13 +159,15 @@ void Fl_Quartz_Graphics_Driver::cache_size(Fl_Image *img, int &width, int &heigh float Fl_Quartz_Graphics_Driver::override_scale() { float s = scale(); if (s != 1.f && Fl_Display_Device::display_device()->is_current()) { - scale(1); + CGContextScaleCTM(gc_, 1./s, 1./s); + Fl_Graphics_Driver::scale(1); } return s; } void Fl_Quartz_Graphics_Driver::restore_scale(float s) { if (s != 1.f && Fl_Display_Device::display_device()->is_current()) { - scale(s); + CGContextScaleCTM(gc_, s, s); + Fl_Graphics_Driver::scale(s); } } -- cgit v1.2.3