]> code.delx.au - gnu-emacs/blobdiff - src/window.h
(mark_byte_stack): Use XMARKBIT and XMARK.
[gnu-emacs] / src / window.h
index e246b8c34ef6bfe9fa96bf21490cd9abfbe43464..ca507cd16259b673d8b69a4e15abc8408d3c5936 100644 (file)
@@ -126,7 +126,9 @@ struct window
        set up for it in advance.  Set by scrolling commands.  */
     Lisp_Object force_start;
     /* Non-nil means we have explicitly changed the value of start,
-       but that the next redisplay is not obliged to use the new value.  */
+       but that the next redisplay is not obliged to use the new value.
+       This is used in Fdelete_other_windows to force a call to
+       Vwindow_scroll_functions.  */
     Lisp_Object optional_new_start;
     /* Number of columns display within the window is scrolled to the left.  */
     Lisp_Object hscroll;
@@ -202,6 +204,10 @@ struct window
     Lisp_Object redisplay_end_trigger;
     /* Non-nil means don't delete this window for becoming "too small".  */
     Lisp_Object too_small_ok;
+
+    /* Original window height and top before mini-window was
+       enlarged. */
+    Lisp_Object orig_height, orig_top;
     
     /* No Lisp data may follow below this point without changing
        mark_object in alloc.c.  The member current_matrix must be the
@@ -260,6 +266,11 @@ struct window
        be changed during redisplay.  If point is not in the window,
        accept that.  */
     unsigned frozen_window_start_p : 1;
+
+    /* 1 means that this window's height is temporarily fixed.  Used
+       in resize_mini_window to precent resizing selected_window, if
+       possible.  */
+    unsigned height_fixed_p : 1;
 };
 
 /* 1 if W is a minibuffer window.  */
@@ -362,10 +373,12 @@ extern int window_height P_ ((Lisp_Object));
 extern int window_width P_ ((Lisp_Object));
 extern void set_window_height P_ ((Lisp_Object, int, int));
 extern void set_window_width P_ ((Lisp_Object, int, int));
-extern void change_window_height P_ ((int, int));
 extern void delete_all_subwindows P_ ((struct window *));
-extern void free_window_starts P_ ((struct frame *, int));
+extern void freeze_window_starts P_ ((struct frame *, int));
 extern void foreach_window ();
+extern void grow_mini_window P_ ((struct window *, int));
+extern void shrink_mini_window P_ ((struct window *));
+
 
 /* Make WINDOW display BUFFER as its contents.  RUN_HOOKS_P non-zero
    means it's allowed to run hooks.  See make_frame for a case where