From 3e2d41ea6666e1eefde27c0b1edd75c13ba377d1 Mon Sep 17 00:00:00 2001 From: YAMAMOTO Mitsuharu Date: Tue, 14 Nov 2006 08:21:57 +0000 Subject: [PATCH] (Fx_display_mm_height, Fx_display_mm_width) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if CGDisplayScreenSize is available. --- src/macfns.c | 56 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 40 insertions(+), 16 deletions(-) diff --git a/src/macfns.c b/src/macfns.c index 9cb9e3e0496..2df3b4e203e 100644 --- a/src/macfns.c +++ b/src/macfns.c @@ -3092,18 +3092,30 @@ If omitted or nil, that stands for the selected frame's display. */) Lisp_Object display; { struct mac_display_info *dpyinfo = check_x_display_info (display); + /* Only of the main display. */ #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 - CGSize size; +#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + if (CGDisplayScreenSize != NULL) +#endif + { + CGSize size; - BLOCK_INPUT; - size = CGDisplayScreenSize (kCGDirectMainDisplay); - UNBLOCK_INPUT; + BLOCK_INPUT; + size = CGDisplayScreenSize (kCGDirectMainDisplay); + UNBLOCK_INPUT; - return make_number ((int) (size.height + .5f)); -#else - /* This is an approximation. */ - return make_number ((int) (dpyinfo->height * 25.4 / dpyinfo->resy)); + return make_number ((int) (size.height + .5f)); + } +#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + else +#endif +#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 */ +#if MAC_OS_X_VERSION_MAX_ALLOWED < 1030 || MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + { + /* This is an approximation. */ + return make_number ((int) (dpyinfo->height * 25.4 / dpyinfo->resy)); + } #endif } @@ -3116,18 +3128,30 @@ If omitted or nil, that stands for the selected frame's display. */) Lisp_Object display; { struct mac_display_info *dpyinfo = check_x_display_info (display); + /* Only of the main display. */ #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 - CGSize size; +#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + if (CGDisplayScreenSize != NULL) +#endif + { + CGSize size; - BLOCK_INPUT; - size = CGDisplayScreenSize (kCGDirectMainDisplay); - UNBLOCK_INPUT; + BLOCK_INPUT; + size = CGDisplayScreenSize (kCGDirectMainDisplay); + UNBLOCK_INPUT; - return make_number ((int) (size.width + .5f)); -#else - /* This is an approximation. */ - return make_number ((int) (dpyinfo->width * 25.4 / dpyinfo->resx)); + return make_number ((int) (size.width + .5f)); + } +#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + else +#endif +#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 */ +#if MAC_OS_X_VERSION_MAX_ALLOWED < 1030 || MAC_OS_X_VERSION_MIN_REQUIRED == 1020 + { + /* This is an approximation. */ + return make_number ((int) (dpyinfo->width * 25.4 / dpyinfo->resx)); + } #endif } -- 2.39.5