aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Moellmann <[email protected]>2000-12-20 15:37:23 +0000
committerGerd Moellmann <[email protected]>2000-12-20 15:37:23 +0000
commit03ff8aabc3abe5d64bfec53cdb82cebc45cc8e49 (patch)
treee109d4e9ba2cf1262799a21037e157c9bc3aeccb
parent3172f70b5186d88bd4bb12da05dcf15a172c631a (diff)
*** empty log message ***
-rw-r--r--etc/NEWS6
-rw-r--r--etc/TODO2
-rw-r--r--lispref/windows.texi8
-rw-r--r--man/display.texi6
-rw-r--r--src/ChangeLog17
5 files changed, 36 insertions, 3 deletions
diff --git a/etc/NEWS b/etc/NEWS
index f1da038cb8..393c352ae4 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -667,6 +667,12 @@ Horizontal scrolling now happens automatically if
`automatic-hscrolling' is set (the default). This setting can be
customized.
+If a window is scrolled horizontally with set-window-hscroll, or
+scroll-left/scroll-right (C-x <, C-x >), this serves as a lower bound
+for automatic horizontal scrolling. Automatic scrolling will scroll
+the text more to the left if necessary, but won't scroll the text more
+to the right than the column set with set-window-hscroll etc.
+
+++
** Tool bar support.
diff --git a/etc/TODO b/etc/TODO
index ce15a579bd..12eb39595f 100644
--- a/etc/TODO
+++ b/etc/TODO
@@ -143,3 +143,5 @@
* Remove the limitation that window and frame widths and heights can
be only full columns/lines.
+
+* Add horizontal scroll bars.
diff --git a/lispref/windows.texi b/lispref/windows.texi
index 5d46ed35e9..95a6c5f7f9 100644
--- a/lispref/windows.texi
+++ b/lispref/windows.texi
@@ -1517,9 +1517,11 @@ left you can scroll, but eventually all the text will disappear off the
left edge.
In Emacs 21, redisplay automatically alters the horizontal scrolling
-of a window as necessary to ensure that point is always visible.
-However, you can still set the horizontal scrolling value explicitly.
-The value you specify will be used, provided it leaves point visible.
+of a window as necessary to ensure that point is always visible, if
+@code{automatic-hscrolling} is set. However, you can still set the
+horizontal scrolling value explicitly. The value you specify serves as
+a lower bound for automatic scrolling, i.e. automatic scrolling
+will not scroll a window to a column less than the specified one.
@deffn Command scroll-left &optional count
This function scrolls the selected window @var{count} columns to the
diff --git a/man/display.texi b/man/display.texi
index 65d4d2e8e2..aa3d7de68b 100644
--- a/man/display.texi
+++ b/man/display.texi
@@ -200,6 +200,12 @@ necessary to keep point visible and not too far from the left or right
edge. If you don't want this, customize the variable
@code{automatic-hscrolling} and set it to nil.
+If a window is scrolled horizontally by means of @code{scroll-left}, the
+chosen column serves as a lower bound for automatic horizontal
+scrolling. Automatic scrolling will continue to scroll the window to
+the left, if necessary, but won't scroll it more to the right than the
+column set by @code{scroll-left}.
+
@node Follow Mode
@section Follow Mode
@cindex Follow mode
diff --git a/src/ChangeLog b/src/ChangeLog
index 83e83509c4..b9794a8566 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,22 @@
2000-12-20 Gerd Moellmann <[email protected]>
+ * xdisp.c (hscroll_window_tree): Take window's min_hscroll
+ into account.
+
+ * window.c (make_window): Initialize window's min_hscroll.
+ (Fset_window_hscroll): Set window's hscroll and min_hscroll.
+ (set_window_buffer, temp_output_buffer_show): Set min_hscroll
+ to zero.
+ (struct saved_window): New member min_hscroll.
+ (SAVED_WINDOW_VECTOR_SIZE): Set to 17.
+ (Fset_window_configuration): Set window's min_hscroll.
+ (save_window_save): Save window's min_hscroll.
+ (compare_window_configurations): Compare min_hscroll values.
+
+ * window.h (struct window): New member min_hscroll.
+
+ * keyboard.c (echo_prompt): Prevent a compiler warning.
+
* xdisp.c (try_cursor_movement): Fix last change. The real
condition is that PT is at the end of the row, and should
be displayed at the start of the next row.