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