From 004b1179e96648495fc0b7ff6711cc990a8a03bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20D=C3=B6singer?= Date: Wed, 12 May 2021 11:55:12 +0200 Subject: [PATCH] winemac.drv: Set view.WantsBestResolutionOpenGLSurface. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This used to default to false before Catalina, and it still does so when the application is built with XCode 10 or earlier. When building with XCode 11 or later Catalina and newer will create a high DPI GL view even if the window is low dpi. Because we don't adjust glViewport parameters (and glDrawPixels, etc) we render only to the lower left quadrant. Signed-off-by: Stefan Dösinger Signed-off-by: Alexandre Julliard --- dlls/winemac.drv/cocoa_window.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dlls/winemac.drv/cocoa_window.m b/dlls/winemac.drv/cocoa_window.m index b6c5386469c..29ac32d6be0 100644 --- a/dlls/winemac.drv/cocoa_window.m +++ b/dlls/winemac.drv/cocoa_window.m @@ -685,6 +685,7 @@ - (void) setRetinaMode:(int)mode frame.size.width *= scale; frame.size.height *= scale; [self setFrame:frame]; + [self setWantsBestResolutionOpenGLSurface:mode]; [self updateGLContexts]; [super setRetinaMode:mode]; @@ -3575,6 +3576,7 @@ macdrv_view macdrv_create_view(CGRect rect) [view setAutoresizesSubviews:NO]; [view setAutoresizingMask:NSViewNotSizable]; [view setHidden:YES]; + [view setWantsBestResolutionOpenGLSurface:retina_on]; [nc addObserver:view selector:@selector(updateGLContexts) name:NSViewGlobalFrameDidChangeNotification