Merged from emacs@sv.gnu.org. Last-minute emacsclient rewrites be damned!
[bpt/emacs.git] / src / termhooks.h
index 13b41f9..98c4edb 100644 (file)
@@ -43,6 +43,11 @@ enum scroll_bar_part {
   scroll_bar_move_ratio
 };
 
+/* If the value of the frame parameter changed, whis hook is called.
+   For example, if going from fullscreen to not fullscreen this hook
+   may do something OS dependent, like extended window manager hints on X11.  */
+extern void (*fullscreen_hook) P_ ((struct frame *f));
+
 \f
 /* Input queue declarations and hooks.  */
 
@@ -183,9 +188,9 @@ enum event_kind
   /* Generated when an Apple event, a HICommand event, or a Services
      menu event is received and the corresponding handler is
      registered.  Members `x' and `y' are for the event class and ID
-     symbols, respectively.  Member `code' points to the Apple event
-     descriptor.  Parameters for Non-Apple events are converted to
-     those in Apple events.  */
+     symbols, respectively.  Member `arg' is a Lisp object converted
+     from the received Apple event.  Parameters for non-Apple events
+     are converted to those in Apple events.  */
   MAC_APPLE_EVENT
 #endif
 };
@@ -299,11 +304,17 @@ struct terminal
 
   /* The number of frames that are on this terminal. */
   int reference_count;
-  
+
+  /* Nonzero while deleting this terminal.  Used to protect against
+     recursive calls to delete_terminal_hook.  */
+  int deleted;
+
   /* The type of the terminal device. */
   enum output_method type;
 
-  /* The name of the terminal device.  Do not use this to identify the device. */
+  /* The name of the terminal device.  Do not use this to uniquely
+     identify a terminal; the same device may be opened multiple
+     times. */
   char *name;
 
 #ifdef MULTI_KBOARD
@@ -437,6 +448,11 @@ struct terminal
      windows.  */
   void (*frame_raise_lower_hook) P_ ((struct frame *f, int raise));
 
+  /* If the value of the frame parameter changed, whis hook is called.
+     For example, if going from fullscreen to not fullscreen this hook
+     may do something OS dependent, like extended window manager hints on X11.  */
+  void (*fullscreen_hook) P_ ((struct frame *f));
+    
   \f
   /* Scroll bar hooks.  */