]> git.saurik.com Git - wxWidgets.git/commitdiff
new method for contentScaleFactor on main screen
authorStefan Csomor <csomor@advancedconcepts.ch>
Thu, 27 Jun 2013 12:48:46 +0000 (12:48 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Thu, 27 Jun 2013 12:48:46 +0000 (12:48 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/osx/cocoa/private.h
src/osx/carbon/utilscocoa.mm

index e55ea62c1ba2a7178c041de6444bdd5d6cad3c4d..49dd2b4eeb38f11818420d5c81e1341e1c9ba552 100644 (file)
@@ -42,6 +42,7 @@ OSStatus WXDLLIMPEXP_CORE wxMacDrawCGImage(
 WX_NSImage WXDLLIMPEXP_CORE wxOSXGetNSImageFromCGImage( CGImageRef image, double scale = 1.0 );
 CGImageRef WXDLLIMPEXP_CORE wxOSXCreateCGImageFromNSImage( WX_NSImage nsimage, double *scale = NULL );
 CGContextRef WXDLLIMPEXP_CORE wxOSXCreateBitmapContextFromNSImage( WX_NSImage nsimage);
+double WXDLLIMPEXP_CORE wxOSXGetMainScreenContentScaleFactor();
 
 wxBitmap WXDLLIMPEXP_CORE wxOSXCreateSystemBitmap(const wxString& id, const wxString &client, const wxSize& size);
 WXWindow WXDLLIMPEXP_CORE wxOSXGetMainWindow();
index 1de870f81ec2317341ff8e4fab8860040bde9328..ff1d770dbc6fc7c59951ead15c59f994b96d45c7 100644 (file)
@@ -428,7 +428,7 @@ CGContextRef WXDLLIMPEXP_CORE wxOSXCreateBitmapContextFromNSImage( WX_NSImage ns
     CGContextRef hbitmap = NULL;
     if (nsimage != nil)
     {
-        CGFloat scale = [[NSScreen mainScreen] backingScaleFactor];
+        double scale = wxOSXGetMainScreenContentScaleFactor();
         
         NSSize imageSize = [nsimage size];
         
@@ -446,6 +446,16 @@ CGContextRef WXDLLIMPEXP_CORE wxOSXCreateBitmapContextFromNSImage( WX_NSImage ns
     return hbitmap;
 }
 
+double WXDLLIMPEXP_CORE wxOSXGetMainScreenContentScaleFactor()
+{
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
+    if ( [ [NSScreen mainScreen] respondsToSelector:@selector(backingScaleFactor)] )
+        return [[NSScreen mainScreen] backingScaleFactor];
+    else
+#endif
+        return 1.0;
+}
+
 CGImageRef wxOSXCreateCGImageFromNSImage( WX_NSImage nsimage, double *scaleptr )
 {
     // based on http://www.mail-archive.com/cocoa-dev@lists.apple.com/msg18065.html