Mercurial > emacs
comparison src/xdisp.c @ 19701:18d979b08faf
(redisplay_internal): Check to see if frame is not obscured
as well as visible.
author | Geoff Voelker <voelker@cs.washington.edu> |
---|---|
date | Wed, 03 Sep 1997 00:37:40 +0000 |
parents | 28ab022089b2 |
children | a5c3942ea72b |
comparison
equal
deleted
inserted
replaced
19700:3c251b1dcdf5 | 19701:18d979b08faf |
---|---|
984 tlbufpos = this_line_bufpos; | 984 tlbufpos = this_line_bufpos; |
985 tlendpos = this_line_endpos; | 985 tlendpos = this_line_endpos; |
986 if (!all_windows && tlbufpos > 0 && NILP (w->update_mode_line) | 986 if (!all_windows && tlbufpos > 0 && NILP (w->update_mode_line) |
987 && !current_buffer->clip_changed | 987 && !current_buffer->clip_changed |
988 && FRAME_VISIBLE_P (XFRAME (w->frame)) | 988 && FRAME_VISIBLE_P (XFRAME (w->frame)) |
989 && !FRAME_OBSCURED_P (XFRAME (w->frame)) | |
989 /* Make sure recorded data applies to current buffer, etc */ | 990 /* Make sure recorded data applies to current buffer, etc */ |
990 && this_line_buffer == current_buffer | 991 && this_line_buffer == current_buffer |
991 && current_buffer == XBUFFER (w->buffer) | 992 && current_buffer == XBUFFER (w->buffer) |
992 && NILP (w->force_start) | 993 && NILP (w->force_start) |
993 /* Point must be on the line that we have info recorded about */ | 994 /* Point must be on the line that we have info recorded about */ |
1165 /* Mark all the scroll bars to be removed; we'll redeem the ones | 1166 /* Mark all the scroll bars to be removed; we'll redeem the ones |
1166 we want when we redisplay their windows. */ | 1167 we want when we redisplay their windows. */ |
1167 if (condemn_scroll_bars_hook) | 1168 if (condemn_scroll_bars_hook) |
1168 (*condemn_scroll_bars_hook) (f); | 1169 (*condemn_scroll_bars_hook) (f); |
1169 | 1170 |
1170 if (FRAME_VISIBLE_P (f)) | 1171 if (FRAME_VISIBLE_P (f) && !FRAME_OBSCURED_P (f)) |
1171 redisplay_windows (FRAME_ROOT_WINDOW (f), preserve_echo_area); | 1172 redisplay_windows (FRAME_ROOT_WINDOW (f), preserve_echo_area); |
1172 | 1173 |
1173 /* Any scroll bars which redisplay_windows should have nuked | 1174 /* Any scroll bars which redisplay_windows should have nuked |
1174 should now go away. */ | 1175 should now go away. */ |
1175 if (judge_scroll_bars_hook) | 1176 if (judge_scroll_bars_hook) |
1176 (*judge_scroll_bars_hook) (f); | 1177 (*judge_scroll_bars_hook) (f); |
1177 } | 1178 } |
1178 } | 1179 } |
1179 } | 1180 } |
1180 else if (FRAME_VISIBLE_P (selected_frame)) | 1181 else if (FRAME_VISIBLE_P (selected_frame) && !FRAME_OBSCURED_P (selected_frame)) |
1181 { | 1182 { |
1182 redisplay_window (selected_window, 1, preserve_echo_area); | 1183 redisplay_window (selected_window, 1, preserve_echo_area); |
1183 if (!WINDOW_FULL_WIDTH_P (w)) | 1184 if (!WINDOW_FULL_WIDTH_P (w)) |
1184 preserve_other_columns (w); | 1185 preserve_other_columns (w); |
1185 } | 1186 } |
1206 continue; | 1207 continue; |
1207 | 1208 |
1208 f = XFRAME (XCONS (tail)->car); | 1209 f = XFRAME (XCONS (tail)->car); |
1209 | 1210 |
1210 if ((FRAME_WINDOW_P (f) || f == selected_frame) | 1211 if ((FRAME_WINDOW_P (f) || f == selected_frame) |
1211 && FRAME_VISIBLE_P (f)) | 1212 && FRAME_VISIBLE_P (f) && !FRAME_OBSCURED_P (f)) |
1212 { | 1213 { |
1213 pause |= update_frame (f, 0, 0); | 1214 pause |= update_frame (f, 0, 0); |
1214 if (!pause) | 1215 if (!pause) |
1215 { | 1216 { |
1216 mark_window_display_accurate (f->root_window, 1); | 1217 mark_window_display_accurate (f->root_window, 1); |
1220 } | 1221 } |
1221 } | 1222 } |
1222 } | 1223 } |
1223 else | 1224 else |
1224 { | 1225 { |
1225 if (FRAME_VISIBLE_P (selected_frame)) | 1226 if (FRAME_VISIBLE_P (selected_frame) && !FRAME_OBSCURED_P (selected_frame)) |
1226 pause = update_frame (selected_frame, 0, 0); | 1227 pause = update_frame (selected_frame, 0, 0); |
1227 else | 1228 else |
1228 pause = 0; | 1229 pause = 0; |
1229 | 1230 |
1230 /* We may have called echo_area_display at the top of this | 1231 /* We may have called echo_area_display at the top of this |