[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/window.c,v
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/src/window.c,v |
Date: |
Mon, 25 Feb 2008 02:27:33 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Stefan Monnier <monnier> 08/02/25 02:27:33
Index: window.c
===================================================================
RCS file: /sources/emacs/emacs/src/window.c,v
retrieving revision 1.602
retrieving revision 1.603
diff -u -b -r1.602 -r1.603
--- window.c 1 Feb 2008 16:00:45 -0000 1.602
+++ window.c 25 Feb 2008 02:27:32 -0000 1.603
@@ -212,8 +212,8 @@
/* Hook to run when window config changes. */
-Lisp_Object Qwindow_configuration_change_hook;
-Lisp_Object Vwindow_configuration_change_hook;
+static Lisp_Object Qwindow_configuration_change_hook;
+static Lisp_Object Vwindow_configuration_change_hook;
/* Non-nil means scroll commands try to put point
at the same screen height as previously. */
@@ -1483,11 +1483,13 @@
(window)
register Lisp_Object window;
{
+ struct frame *f;
+ if (NILP (window))
+ window = selected_window;
+ f = XFRAME (WINDOW_FRAME (XWINDOW (window)));
delete_window (window);
- if (! NILP (Vwindow_configuration_change_hook)
- && ! NILP (Vrun_hooks))
- call1 (Vrun_hooks, Qwindow_configuration_change_hook);
+ run_window_configuration_change_hook (f);
return Qnil;
}
@@ -1504,9 +1506,6 @@
/* Because this function is called by other C code on non-leaf
windows, the CHECK_LIVE_WINDOW macro would choke inappropriately,
so we can't decode_window here. */
- if (NILP (window))
- window = selected_window;
- else
CHECK_WINDOW (window);
p = XWINDOW (window);
@@ -3310,6 +3309,8 @@
void
run_window_configuration_change_hook (struct frame *f)
{
+ /* FIXME: buffer-local values of Vwindow_configuration_change_hook
+ aren't handled properly. */
if (! NILP (Vwindow_configuration_change_hook)
&& ! NILP (Vrun_hooks))
{
@@ -4187,8 +4188,7 @@
CHECK_NUMBER (arg);
enlarge_window (selected_window, XINT (arg), !NILP (horizontal));
- if (! NILP (Vwindow_configuration_change_hook))
- call1 (Vrun_hooks, Qwindow_configuration_change_hook);
+ run_window_configuration_change_hook (SELECTED_FRAME ());
return Qnil;
}
@@ -4204,8 +4204,7 @@
CHECK_NUMBER (arg);
enlarge_window (selected_window, -XINT (arg), !NILP (side));
- if (! NILP (Vwindow_configuration_change_hook))
- call1 (Vrun_hooks, Qwindow_configuration_change_hook);
+ run_window_configuration_change_hook (SELECTED_FRAME ());
return Qnil;
}
@@ -4528,9 +4527,6 @@
validity. */
check_min_window_sizes ();
- if (NILP (window))
- window = Fselected_window ();
-
CHECK_WINDOW (window);
/* Give up if this window cannot be resized. */
@@ -4664,10 +4660,12 @@
Lisp_Object window, delta, horizontal;
{
CHECK_NUMBER (delta);
+ if (NILP (window))
+ window = selected_window;
adjust_window_trailing_edge (window, XINT (delta), !NILP (horizontal));
- if (! NILP (Vwindow_configuration_change_hook))
- call1 (Vrun_hooks, Qwindow_configuration_change_hook);
+ run_window_configuration_change_hook
+ (XFRAME (WINDOW_FRAME (XWINDOW (window))));
return Qnil;
}
@@ -6479,9 +6477,7 @@
if (FRAME_LIVE_P (XFRAME (data->selected_frame)))
do_switch_frame (data->selected_frame, 0, 0);
- if (! NILP (Vwindow_configuration_change_hook)
- && ! NILP (Vrun_hooks))
- call1 (Vrun_hooks, Qwindow_configuration_change_hook);
+ run_window_configuration_change_hook (f);
}
if (!NILP (new_current_buffer))