[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: x-display-pixel-width/height inconsistency
From: |
YAMAMOTO Mitsuharu |
Subject: |
Re: x-display-pixel-width/height inconsistency |
Date: |
Wed, 20 Mar 2013 09:20:21 +0900 |
User-agent: |
Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) |
>>>>> On Wed, 20 Mar 2013 04:12:58 +0400, Dmitry Gutov <address@hidden> said:
>> Thanks for checking. Does the following patch give dimensions of
>> all physical monitors as in X11? Do display-mm-height/width return
>> meaningful values?
> Sorry, can't apply the patch, `bzr patch' says
> bzr: ERROR: Error invoking patch: Invalid argument
> If you resend it in unified format, I can try to apply it manually.
You can convert the format from context diff to unified diff using C-c
C-u in diff-mode. Anyway, I resend the patch.
> Without the patch, display-mm-height/width return some values, same
> on both monitors, but I can't tell how they relate to x-display-*
> functions.
Please also try display-mm-height/width after applying the patch.
YAMAMOTO Mitsuharu
address@hidden
=== modified file 'src/w32fns.c'
--- src/w32fns.c 2013-03-10 22:55:25 +0000
+++ src/w32fns.c 2013-03-19 23:47:14 +0000
@@ -4732,15 +4732,10 @@
If omitted or nil, that stands for the selected frame's display. */)
(Lisp_Object display)
{
- struct w32_display_info *dpyinfo = check_x_display_info (display);
- HDC hdc;
- int cap;
-
- hdc = GetDC (dpyinfo->root_window);
+ HDC hdc = CreateDC ("DISPLAY", NULL, NULL, NULL);
+ int cap = GetDeviceCaps (hdc, VERTSIZE);
- cap = GetDeviceCaps (hdc, VERTSIZE);
-
- ReleaseDC (dpyinfo->root_window, hdc);
+ DeleteDC (hdc);
return make_number (cap);
}
@@ -4752,16 +4747,10 @@
If omitted or nil, that stands for the selected frame's display. */)
(Lisp_Object display)
{
- struct w32_display_info *dpyinfo = check_x_display_info (display);
-
- HDC hdc;
- int cap;
-
- hdc = GetDC (dpyinfo->root_window);
-
- cap = GetDeviceCaps (hdc, HORZSIZE);
+ HDC hdc = CreateDC ("DISPLAY", NULL, NULL, NULL);
+ int cap = GetDeviceCaps (hdc, HORZSIZE);
- ReleaseDC (dpyinfo->root_window, hdc);
+ DeleteDC (hdc);
return make_number (cap);
}
=== modified file 'src/w32term.c'
--- src/w32term.c 2013-03-15 10:07:29 +0000
+++ src/w32term.c 2013-03-19 23:47:25 +0000
@@ -515,18 +515,18 @@
int
x_display_pixel_height (struct w32_display_info *dpyinfo)
{
- HDC dc = GetDC (NULL);
+ HDC dc = CreateDC ("DISPLAY", NULL, NULL, NULL);
int pixels = GetDeviceCaps (dc, VERTRES);
- ReleaseDC (NULL, dc);
+ DeleteDC (dc);
return pixels;
}
int
x_display_pixel_width (struct w32_display_info *dpyinfo)
{
- HDC dc = GetDC (NULL);
+ HDC dc = CreateDC ("DISPLAY", NULL, NULL, NULL);
int pixels = GetDeviceCaps (dc, HORZRES);
- ReleaseDC (NULL, dc);
+ DeleteDC (dc);
return pixels;
}
- Re: x-display-pixel-width/height inconsistency, (continued)
Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/19
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/19
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/19
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/19
- Re: x-display-pixel-width/height inconsistency,
YAMAMOTO Mitsuharu <=
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/19
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/19
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, Dmitry Gutov, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/20
- Re: x-display-pixel-width/height inconsistency, YAMAMOTO Mitsuharu, 2013/03/21
Re: x-display-pixel-width/height inconsistency, grischka, 2013/03/20