diff options
| author | Richard M. Stallman | 1993-05-30 02:46:05 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1993-05-30 02:46:05 +0000 |
| commit | 9319ae23ea3ce0d390111ad8aaf3abbaf8211cff (patch) | |
| tree | fe6d06f66f6e3a96e1d481c8b09ea9b3cd2c22b9 | |
| parent | 9c394f17ff24b024b0bbaa1460903df61b55d6c5 (diff) | |
| download | emacs-9319ae23ea3ce0d390111ad8aaf3abbaf8211cff.tar.gz emacs-9319ae23ea3ce0d390111ad8aaf3abbaf8211cff.zip | |
(XTread_socket): For UnmapNotify, if frame was visible,
mark it now as iconified.
(x_make_frame_invisible): If async_iconic, work does need to be done.
Don't let this frame stay highlighted.
(x_iconify_frame): Don't let this frame stay highlighted.
| -rw-r--r-- | src/xterm.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/xterm.c b/src/xterm.c index db0f61e8f1d..86b66f8fc84 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -2813,6 +2813,12 @@ XTread_socket (sd, bufp, numchars, waitp, expected) | |||
| 2813 | disabled; you don't want to spend time updating a | 2813 | disabled; you don't want to spend time updating a |
| 2814 | display that won't ever be seen. */ | 2814 | display that won't ever be seen. */ |
| 2815 | f->async_visible = 0; | 2815 | f->async_visible = 0; |
| 2816 | /* The window manager never makes a window invisible | ||
| 2817 | ("withdrawn"); all it does is switch between visible | ||
| 2818 | and iconified. Frames get into the invisible state | ||
| 2819 | only through x_make_frame_invisible. | ||
| 2820 | if (FRAME_VISIBLE_P (f) || FRAME_ICONIFIED_P (f)) | ||
| 2821 | f->async_iconified = 1; | ||
| 2816 | } | 2822 | } |
| 2817 | break; | 2823 | break; |
| 2818 | 2824 | ||
| @@ -4280,7 +4286,11 @@ x_make_frame_invisible (f) | |||
| 4280 | { | 4286 | { |
| 4281 | int mask; | 4287 | int mask; |
| 4282 | 4288 | ||
| 4283 | if (! f->async_visible) | 4289 | /* Don't keep the highlight on an invisible frame. */ |
| 4290 | if (x_highlight_frame == f) | ||
| 4291 | x_highlight_frame = 0; | ||
| 4292 | |||
| 4293 | if (! f->async_visible && ! f->async_iconified) | ||
| 4284 | return; | 4294 | return; |
| 4285 | 4295 | ||
| 4286 | BLOCK_INPUT; | 4296 | BLOCK_INPUT; |
| @@ -4341,6 +4351,10 @@ x_iconify_frame (f) | |||
| 4341 | { | 4351 | { |
| 4342 | int mask; | 4352 | int mask; |
| 4343 | 4353 | ||
| 4354 | /* Don't keep the highlight on an invisible frame. */ | ||
| 4355 | if (x_highlight_frame == f) | ||
| 4356 | x_highlight_frame = 0; | ||
| 4357 | |||
| 4344 | if (f->async_iconified) | 4358 | if (f->async_iconified) |
| 4345 | return; | 4359 | return; |
| 4346 | 4360 | ||