summaryrefslogtreecommitdiff
path: root/src/xfns.c
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-12-26 15:57:06 +0800
committerPo Lu <luangruo@yahoo.com>2022-12-26 15:57:48 +0800
commitcc29fab3a66c59e77d0ff67c0f3e2e34ec80a03c (patch)
tree07d54371ad2a25bd0f01b0cfbfeffefb574f87cc /src/xfns.c
parent419ca81809c2eda9c9f102b7da820a6eb9685cc8 (diff)
downloademacs-cc29fab3a66c59e77d0ff67c0f3e2e34ec80a03c.tar.gz
emacs-cc29fab3a66c59e77d0ff67c0f3e2e34ec80a03c.tar.bz2
emacs-cc29fab3a66c59e77d0ff67c0f3e2e34ec80a03c.zip
Redisplay "invisible" frames that are actually visible on modern X
* etc/NEWS: Document that "invisible" frames are now redisplayed if the compositing manager is still displaying it as part of a thumbnail out of Emacs's control. * src/dispnew.c (Fredraw_display): Use FRAME_REDISPLAY_P. * src/frame.h (FRAME_REDISPLAY_P): New macro. * src/xdisp.c (clear_garbaged_frames, echo_area_display) (prepare_menu_bars, redisplay_internal, display_and_set_cursor) (gui_clear_cursor): Use FRAME_REDISPLAY_P to determine whether or not a frame should be redisplayed. * src/xfns.c (Fx_create_frame): Set visibility state initially. * src/xterm.c (handle_one_xevent): Likewise. * src/xterm.h (struct x_output): New field `visibility_state'.
Diffstat (limited to 'src/xfns.c')
-rw-r--r--src/xfns.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/xfns.c b/src/xfns.c
index 668f711bdb5..1cc5aec1eb4 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -4741,6 +4741,7 @@ This function is an internal primitive--use `make-frame' instead. */)
#endif /* USE_LUCID && USE_TOOLKIT_SCROLL_BARS */
f->output_data.x->white_relief.pixel = -1;
f->output_data.x->black_relief.pixel = -1;
+ f->output_data.x->visibility_state = VisibilityFullyObscured;
fset_icon_name (f, gui_display_get_arg (dpyinfo,
parms,