]> git.eshelyaron.com Git - emacs.git/commit
Handle Bug#24526 without breaking Emacs on tiling WMs (Bug#48268)
authorMartin Rudalics <rudalics@gmx.at>
Wed, 12 May 2021 07:44:02 +0000 (09:44 +0200)
committerMartin Rudalics <rudalics@gmx.at>
Wed, 12 May 2021 07:44:02 +0000 (09:44 +0200)
commitb41f39d22cdb921fe88311f4fd113cbb9c2f0c76
tree6bdb2ec7ead4dace5a00914a12b2b90e3a7921f9
parent47070ed39eda524d334e5f82dc7f4a50b8d3252c
Handle Bug#24526 without breaking Emacs on tiling WMs (Bug#48268)

Since tiling window managers may react allergically to resize
requests immediately following MapNotify events on X, make sure
that such requests are issued only when a new frame should not
become visible and a size has been explicitly requested for it.

* lisp/faces.el (x-create-frame-with-faces): Mark frame as
'was-invisible' if it should be initially invisible or iconified
and has its size specified explicitly.
* src/frame.c (make_frame): Initialize new frame's was_invisible
flag.
(Fframe__set_was_invisible): New internal function.
* src/frame.h (struct frame): Specify size of new_size_p slot.
New flag was_invisible.
* src/w32fns.c (Fx_create_frame)
* src/nsfns.m (Fx_create_frame)
* src/xfns.c (Fx_create_frame): Set new frame's was_invisible
flag.
* src/xterm.c (handle_one_xevent): Call xg_frame_set_char_size
after a PropertyNotify or MapNotify event only if F's
was_invisible flag was set.
lisp/faces.el
src/frame.c
src/frame.h
src/nsfns.m
src/w32fns.c
src/xfns.c
src/xterm.c