aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Rudalics2014-03-21 10:23:22 +0100
committerMartin Rudalics2014-03-21 10:23:22 +0100
commit21e18b30e2a15b726b9822cb7bb086792465a6d1 (patch)
tree5e8c5e515500c37eac4f225a8c83d4662fc03766 /src
parent78540c42f162761bde4322c5d1d89e8dfd455c80 (diff)
downloademacs-21e18b30e2a15b726b9822cb7bb086792465a6d1.tar.gz
emacs-21e18b30e2a15b726b9822cb7bb086792465a6d1.zip
Truly maximize w32 frames with odd fonts and some texi fixes.
* w32fns.c (w32_wnd_proc): For WM_WINDOWPOSCHANGING don't constrain frame size in SW_SHOWMAXIMIZED case so we can truly maximize a frame for odd default fonts. * frames.texi (Size and Position): In `frame-resize-pixelwise' description drop remark about frame maximization. * windows.texi (Display Action Functions): Add description for `display-buffer-no-window' and explain use of `allow-no-window' alist entries.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/w32fns.c3
-rw-r--r--src/w32term.c24
3 files changed, 14 insertions, 19 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index d2572e74048..ccd8fb46957 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
12014-03-21 Martin Rudalics <rudalics@gmx.at>
2
3 * w32fns.c (w32_wnd_proc): For WM_WINDOWPOSCHANGING don't
4 constrain frame size in SW_SHOWMAXIMIZED case so we can truly
5 maximize a frame for odd default fonts.
6
12014-03-20 Paul Eggert <eggert@cs.ucla.edu> 72014-03-20 Paul Eggert <eggert@cs.ucla.edu>
2 8
3 * doc.c (store_function_docstring): Fix pointer signedness mismatch. 9 * doc.c (store_function_docstring): Fix pointer signedness mismatch.
diff --git a/src/w32fns.c b/src/w32fns.c
index a5b8abfa6b1..ffe63a3cf2d 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -3805,7 +3805,8 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
3805 wp.length = sizeof (WINDOWPLACEMENT); 3805 wp.length = sizeof (WINDOWPLACEMENT);
3806 GetWindowPlacement (hwnd, &wp); 3806 GetWindowPlacement (hwnd, &wp);
3807 3807
3808 if (wp.showCmd != SW_SHOWMINIMIZED && (lppos->flags & SWP_NOSIZE) == 0) 3808 if (wp.showCmd != SW_SHOWMAXIMIZED && wp.showCmd != SW_SHOWMINIMIZED
3809 && (lppos->flags & SWP_NOSIZE) == 0)
3809 { 3810 {
3810 RECT rect; 3811 RECT rect;
3811 int wdiff; 3812 int wdiff;
diff --git a/src/w32term.c b/src/w32term.c
index 2981320e136..ac8f9a2092d 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -5651,21 +5651,11 @@ x_set_window_size (struct frame *f, int change_gravity, int width, int height, b
5651 if (!frame_resize_pixelwise) 5651 if (!frame_resize_pixelwise)
5652 { 5652 {
5653 /* If we don't resize frames pixelwise, round sizes to multiples 5653 /* If we don't resize frames pixelwise, round sizes to multiples
5654 of character sizes. Otherwise, Windows may clip our frame 5654 of character sizes here. Otherwise, when enforcing size hints
5655 rectangle at a character size boundary and we risk losing our 5655 while processing WM_WINDOWPOSCHANGING in w32_wnd_proc, we might
5656 mode line. Bug#16923 might be a consequence of this. 5656 clip our frame rectangle to a multiple of the frame's character
5657 5657 size and subsequently lose our mode line or scroll bar.
5658 So far, this is a Windows specific problem; other toolkits may 5658 Bug#16923 could be one possible consequence of this. */
5659 prefer to not resize the frame if the delta is not large enough
5660 (GTK) or resize the frame pixelwise as requested (Lucid,
5661 Motif). Windows just doesn't call us back (probably because of
5662 the size hint settings which it apparently interprets strictly)
5663 neither when the user tries to mouse-drag a frame border by,
5664 nor when calling `set-frame-size' with a delta of less than the
5665 canonical character size. If w32_enable_frame_resize_hack is
5666 enabled (which it now is by default) we'd then below resize the
5667 frame's root window in preparation of a WM_SIZE message to come
5668 which, however, is not going to happen. */
5669 int unit_width = FRAME_COLUMN_WIDTH (f); 5659 int unit_width = FRAME_COLUMN_WIDTH (f);
5670 int unit_height = FRAME_LINE_HEIGHT (f); 5660 int unit_height = FRAME_LINE_HEIGHT (f);
5671 5661
@@ -5695,9 +5685,7 @@ x_set_window_size (struct frame *f, int change_gravity, int width, int height, b
5695 } 5685 }
5696 5686
5697 /* If w32_enable_frame_resize_hack is non-nil, immediately apply the 5687 /* If w32_enable_frame_resize_hack is non-nil, immediately apply the
5698 new pixel sizes to the frame and its subwindows. This approach is 5688 new pixel sizes to the frame and its subwindows.
5699 fragile because Windows might not honor the resize request issued
5700 by my_set_window_pos with a WM_SIZE message (see previous comment).
5701 5689
5702 Jason Rumney earlier refused to call change_frame_size right here 5690 Jason Rumney earlier refused to call change_frame_size right here
5703 with the following argument: 5691 with the following argument: