]> git.eshelyaron.com Git - emacs.git/commit
Further redesign of window change functions
authorMartin Rudalics <rudalics@gmx.at>
Sat, 9 Mar 2019 10:13:18 +0000 (11:13 +0100)
committerMartin Rudalics <rudalics@gmx.at>
Sat, 9 Mar 2019 10:13:18 +0000 (11:13 +0100)
commit4e082ce3941a9c1fcaae509897761d3e24e08625
treec50e17baec00f63098e74ae750db28d8ba45f32b
parentd2270d8fc93b5fb0b82fec4d85d122ea4e38dff3
Further redesign of window change functions

* doc/lispref/windows.texi (Window Hooks): Revise description
of window change functions.  Add documentation for
'window-state-change-hook' and window state change flag.
* etc/NEWS: Update entry for window change functions.
* src/frame.c (Fframe_window_state_change)
(Fset_frame_window_state_change): New functions.
* src/frame.h (struct frame): New boolean window_state_change.
(FRAME_WINDOW_STATE_CHANGE): New macro.
* src/window.c (window_change_record_frames): New static
boolean.
(window_change_record_frame): Remove function - code moved to
window_change_record.
(window_change_record): Record frame changes here taking
window_change_record_frames into account.
(run_window_change_functions_1): Set window_change_record_frames
whenever we run one of our hooks.
(run_window_change_functions): Run hooks also when
FRAME_WINDOW_STATE_CHANGE has been set.  Run
Vwindow_state_change_hook.  Leave decision whether to record
changes for all frames to window_change_record.
(Vwindow_state_change_functions): Update doc-string.
(Vwindow_state_change_hook): New normal hook.
doc/lispref/windows.texi
etc/NEWS
src/frame.c
src/frame.h
src/window.c