diff options
author | Martin Rudalics <rudalics@gmx.at> | 2021-05-02 10:33:22 +0200 |
---|---|---|
committer | Martin Rudalics <rudalics@gmx.at> | 2021-05-02 10:33:22 +0200 |
commit | 8a4081c396a47aa7593a6c25b1bad8a2b8b157b7 (patch) | |
tree | a168f59cdce067276e2abbade1e7c8f2b1c951ee /src/frame.h | |
parent | eda4888e54a278226c51a2491594e8703c105d21 (diff) | |
download | emacs-8a4081c396a47aa7593a6c25b1bad8a2b8b157b7.tar.gz |
Make adjust_frame_size set up frame's new_width/_height too (Bug#17120)
The purpose of this change is to have implied frame size changes
pick up sizes requested by previous explicit size changes not
only after they have been confirmed by the WM but already when
they are initially passed to adjust_frame_size (Bug#17120).
* src/dispextern.h (delayed_size_change): Remove extern.
* src/dispnew.c (delayed_size_change): Make static again.
(do_pending_window_change): Call change_frame_size only if F's
new_size_p flag is set.
(change_frame_size_1): Set/reset F's new_size_p flag
* src/frame.c (adjust_frame_size): Remove extra
inhibit_horizontal/_vertical checks. Improve the implied
resizes check with INHIBIT equals 2. Set F's new_width and
new_height and reset F's new_size_p flag when we run
set_window_size_hook with INHIBIT 0 or 1.
* src/frame.h (struct frame): New bit slot new_size_p.
* src/gtkutil.c (xg_frame_resized): Use F's new_size_p flag
instead of delayed_size_change to decide whether to call
change_frame_size.
(xg_frame_set_char_size): Call frame_size_history_extra before
waiting for the ConfigureNotify event.
* src/xterm.c (handle_one_xevent): Use F's new_size_p flag
instead of delayed_size_change to decide whether to call
change_frame_size.
Diffstat (limited to 'src/frame.h')
-rw-r--r-- | src/frame.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/frame.h b/src/frame.h index 19ee6ac10e7..744b95e1e04 100644 --- a/src/frame.h +++ b/src/frame.h @@ -453,6 +453,11 @@ struct frame frame is in the process of being redisplayed. */ bool_bf inhibit_clear_image_cache : 1; + /* True when new_width or new_height were set by change_frame_size, + false when they were set by adjust_frame_size internally or not + set. */ + bool_bf new_size_p; + /* Bitfield area ends here. */ /* This frame's change stamp, set the last time window change |