diff options
| author | Martin Rudalics | 2015-08-20 08:22:53 +0200 |
|---|---|---|
| committer | Martin Rudalics | 2015-08-20 08:22:53 +0200 |
| commit | 186297de6e0e576af2c52ce96a7fc6af3ba3ffc3 (patch) | |
| tree | 693446da7a63cb32ad293cb08e42b7377b4f06a4 /src | |
| parent | 88afeeeafcf018e3eecbcc9be46e227eb312d45a (diff) | |
| download | emacs-186297de6e0e576af2c52ce96a7fc6af3ba3ffc3.tar.gz emacs-186297de6e0e576af2c52ce96a7fc6af3ba3ffc3.zip | |
In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
* src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
determine whether frame has a titlebar.
Suggested by Eli Zaretskii <eliz@gnu.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/w32fns.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/w32fns.c b/src/w32fns.c index e91097ba20e..a47f3f9a8dc 100644 --- a/src/w32fns.c +++ b/src/w32fns.c | |||
| @@ -8065,24 +8065,26 @@ and width values are in pixels. | |||
| 8065 | external_border_width = window.cxWindowBorders; | 8065 | external_border_width = window.cxWindowBorders; |
| 8066 | external_border_height = window.cyWindowBorders; | 8066 | external_border_height = window.cyWindowBorders; |
| 8067 | /* Title bar. */ | 8067 | /* Title bar. */ |
| 8068 | if ((window.dwStyle & WS_CAPTION) == WS_CAPTION) | 8068 | if (get_title_bar_info_fn) |
| 8069 | { | 8069 | { |
| 8070 | if (get_title_bar_info_fn) | 8070 | TITLEBAR_INFO title_bar; |
| 8071 | { | ||
| 8072 | TITLEBAR_INFO title_bar; | ||
| 8073 | 8071 | ||
| 8074 | title_bar.cbSize = sizeof (title_bar); | 8072 | title_bar.cbSize = sizeof (title_bar); |
| 8075 | title_bar.rcTitleBar.left = title_bar.rcTitleBar.right = 0; | 8073 | title_bar.rcTitleBar.left = title_bar.rcTitleBar.right = 0; |
| 8076 | title_bar.rcTitleBar.top = title_bar.rcTitleBar.bottom = 0; | 8074 | title_bar.rcTitleBar.top = title_bar.rcTitleBar.bottom = 0; |
| 8077 | get_title_bar_info_fn (FRAME_W32_WINDOW (f), &title_bar); | 8075 | for (int i = 0; i < 6; i++) |
| 8078 | title_bar_width | 8076 | title_bar.rgstate[i] = 0; |
| 8077 | if (get_title_bar_info_fn (FRAME_W32_WINDOW (f), &title_bar) | ||
| 8078 | && !(title_bar.rgstate[0] & 0x00008001)) | ||
| 8079 | { | ||
| 8080 | title_bar_width | ||
| 8079 | = title_bar.rcTitleBar.right - title_bar.rcTitleBar.left; | 8081 | = title_bar.rcTitleBar.right - title_bar.rcTitleBar.left; |
| 8080 | title_bar_height | 8082 | title_bar_height |
| 8081 | = title_bar.rcTitleBar.bottom - title_bar.rcTitleBar.top; | 8083 | = title_bar.rcTitleBar.bottom - title_bar.rcTitleBar.top; |
| 8082 | } | 8084 | } |
| 8083 | else | ||
| 8084 | title_bar_height = GetSystemMetrics (SM_CYCAPTION); | ||
| 8085 | } | 8085 | } |
| 8086 | else if ((window.dwStyle & WS_CAPTION) == WS_CAPTION) | ||
| 8087 | title_bar_height = GetSystemMetrics (SM_CYCAPTION); | ||
| 8086 | /* Menu bar. */ | 8088 | /* Menu bar. */ |
| 8087 | menu_bar.cbSize = sizeof (menu_bar); | 8089 | menu_bar.cbSize = sizeof (menu_bar); |
| 8088 | menu_bar.rcBar.right = menu_bar.rcBar.left = 0; | 8090 | menu_bar.rcBar.right = menu_bar.rcBar.left = 0; |