aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorRichard M. Stallman1993-05-30 02:46:05 +0000
committerRichard M. Stallman1993-05-30 02:46:05 +0000
commit9319ae23ea3ce0d390111ad8aaf3abbaf8211cff (patch)
treefe6d06f66f6e3a96e1d481c8b09ea9b3cd2c22b9 /src/xterm.c
parent9c394f17ff24b024b0bbaa1460903df61b55d6c5 (diff)
downloademacs-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.
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c16
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