diff options
Diffstat (limited to 'src/termhooks.h')
-rw-r--r-- | src/termhooks.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/termhooks.h b/src/termhooks.h index d21d6ce588a..81e06d9c368 100644 --- a/src/termhooks.h +++ b/src/termhooks.h @@ -158,6 +158,9 @@ enum event_kind SELECTION_CLEAR_EVENT, /* Another X client cleared our selection. */ BUFFER_SWITCH_EVENT, /* A process filter has switched buffers. */ DELETE_WINDOW_EVENT, /* An X client said "delete this window". */ +#ifdef HAVE_NTGUI + END_SESSION_EVENT, /* The user is logging out or shutting down. */ +#endif MENU_BAR_EVENT, /* An event generated by the menu bar. The frame_or_window field's cdr holds the Lisp-level event value. @@ -628,6 +631,11 @@ struct terminal /* Called when a frame's display becomes entirely up to date. */ void (*frame_up_to_date_hook) (struct frame *); + /* Called when buffer flipping becomes unblocked after having + previously been blocked. Redisplay always blocks buffer flips + while it runs. */ + void (*buffer_flipping_unblocked_hook) (struct frame *); + /* Called to delete the device-specific portions of a frame that is on this terminal device. */ @@ -646,6 +654,19 @@ struct terminal void (*delete_terminal_hook) (struct terminal *); }; +INLINE bool +TERMINALP (Lisp_Object a) +{ + return PSEUDOVECTORP (a, PVEC_TERMINAL); +} + +INLINE struct terminal * +XTERMINAL (Lisp_Object a) +{ + eassert (TERMINALP (a)); + return XUNTAG (a, Lisp_Vectorlike); +} + /* Most code should use these functions to set Lisp fields in struct terminal. */ INLINE void |