Author: gnorton
Date: 2008-02-14 12:24:01 -0500 (Thu, 14 Feb 2008)
New Revision: 95661
Modified:
trunk/libgdiplus/src/ChangeLog
trunk/libgdiplus/src/carbon-private.c
Log:
In .:
2008-02-14 Geoff Norton <[EMAIL PROTECTED]>
* carbon-private.c: Display automatic dpi detection for now, its
causing too many problems.
Modified: trunk/libgdiplus/src/ChangeLog
===================================================================
--- trunk/libgdiplus/src/ChangeLog 2008-02-14 17:21:54 UTC (rev 95660)
+++ trunk/libgdiplus/src/ChangeLog 2008-02-14 17:24:01 UTC (rev 95661)
@@ -1,3 +1,8 @@
+2008-02-14 Geoff Norton <[EMAIL PROTECTED]>
+
+ * carbon-private.c: Display automatic dpi detection for now, its
+ causing too many problems.
+
2008-01-23 Geoff Norton <[EMAIL PROTECTED]>
* Makefile.am: Add carbon-private.* to the build.
Modified: trunk/libgdiplus/src/carbon-private.c
===================================================================
--- trunk/libgdiplus/src/carbon-private.c 2008-02-14 17:21:54 UTC (rev
95660)
+++ trunk/libgdiplus/src/carbon-private.c 2008-02-14 17:24:01 UTC (rev
95661)
@@ -39,16 +39,20 @@
}
void gdip_get_display_dpi_carbon (float *h_dpi, float *v_dpi) {
- CFDictionaryRef mode_dict = CGDisplayCurrentMode (kCGDirectMainDisplay);
- io_connect_t display_port = CGDisplayIOServicePort
(kCGDirectMainDisplay);
- CFDictionaryRef display_dict = IOCreateDisplayInfoDictionary
(display_port, 0);
- const float mmpi = 25.4;
- float h_size = (float) gdip_get_int_from_dict_for_key (display_dict,
CFSTR (kDisplayHorizontalImageSize)) / mmpi;
- float v_size = (float) gdip_get_int_from_dict_for_key (display_dict,
CFSTR (kDisplayVerticalImageSize)) / mmpi;
+ if (getenv ("MONO_MWF_MAC_DETECT_DPI") != NULL) {
+ CFDictionaryRef mode_dict = CGDisplayCurrentMode
(kCGDirectMainDisplay);
+ io_connect_t display_port = CGDisplayIOServicePort
(kCGDirectMainDisplay);
+ CFDictionaryRef display_dict = IOCreateDisplayInfoDictionary
(display_port, 0);
+ const float mmpi = 25.4;
+ float h_size = (float) gdip_get_int_from_dict_for_key
(display_dict, CFSTR (kDisplayHorizontalImageSize)) / mmpi;
+ float v_size = (float) gdip_get_int_from_dict_for_key
(display_dict, CFSTR (kDisplayVerticalImageSize)) / mmpi;
- *h_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict,
kCGDisplayWidth) / h_size;
- *v_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict,
kCGDisplayHeight) / v_size;
+ *h_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict,
kCGDisplayWidth) / h_size;
+ *v_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict,
kCGDisplayHeight) / v_size;
- CFRelease (display_dict);
+ CFRelease (display_dict);
+ } else {
+ *h_dpi = *v_dpi = 96.0f;
+ }
}
#endif
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches