# HG changeset patch # User adrian # Date 999940329 0 # Node ID 4035041996d8c1c9e91a6142c171d2d239cd7a91 # Parent 53ebbbe68740ba2620b4ede85206ce4c3312f00c [xemacs-hg @ 2001-09-08 09:12:08 by adrian] [PATCH] xemacs-21.5: Make iconify-emacs work again diff -r 53ebbbe68740 -r 4035041996d8 src/ChangeLog --- a/src/ChangeLog Sat Sep 08 08:36:36 2001 +0000 +++ b/src/ChangeLog Sat Sep 08 09:12:09 2001 +0000 @@ -1,3 +1,9 @@ +2001-07-30 Adrian Aichner + + * event-msw.c: Typo fix. + * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after + magic XM_MAPFRAME event has been sent. + 2001-09-07 Stephen J. Turnbull * XEmacs 21.5.3 "asparagus" is released. @@ -577,17 +583,6 @@ * console.c: Fix of compile error on darwin, as suggested by Toby Smith. -2001-07-30 Adrian Aichner - - * event-msw.c: Typo fix. - * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after - magic XM_MAPFRAME event has been sent. - -2001-07-30 Adrian Aichner - - * event-msw.c: - * event-msw.c (assert): - 2001-07-28 Stephen J. Turnbull * XEmacs 21.5.2 "artichoke" is released. diff -r 53ebbbe68740 -r 4035041996d8 src/event-msw.c --- a/src/event-msw.c Sat Sep 08 08:36:36 2001 +0000 +++ b/src/event-msw.c Sat Sep 08 09:12:09 2001 +0000 @@ -183,7 +183,7 @@ exists. For example, "start notepad" command is issued from the shell, then the shell is closed by C-c C-d. Although the shell process exits, its output pipe will not get closed until the - notepad process exits also, because it inherits the pipe form the + notepad process exits also, because it inherits the pipe from the shell. In this case, we abandon the thread, and let it live until all such processes exit. While struct ntpipe_slurp_stream is deallocated in this case, ntpipe_slurp_stream_shared_data are not. */ @@ -2624,7 +2624,13 @@ } else if (IsWindowVisible (hwnd)) { - FRAME_VISIBLE_P (frame) = 1; + /* + APA: It's too early here to set the frame visible. + Let's do this later, in WM_SIZE processing, after the + magic XM_MAPFRAME event has been sent (just like 21.1 + did). + */ + /* FRAME_VISIBLE_P (frame) = 1; */ FRAME_ICONIFIED_P (frame) = 0; } else @@ -2689,6 +2695,12 @@ { if (!msframe->sizing && !FRAME_VISIBLE_P (frame)) mswindows_enqueue_magic_event (hwnd, XM_MAPFRAME); + /* + APA: Now that the magic XM_MAPFRAME event has + been sent we can mark the frame as visible (just + like 21.1 did). + */ + FRAME_VISIBLE_P (frame) = 1; if (!msframe->sizing || mswindows_dynamic_frame_resize) redisplay ();