]> git.eshelyaron.com Git - emacs.git/commitdiff
*** empty log message ***
authorKim F. Storm <storm@cua.dk>
Thu, 29 Apr 2004 22:41:05 +0000 (22:41 +0000)
committerKim F. Storm <storm@cua.dk>
Thu, 29 Apr 2004 22:41:05 +0000 (22:41 +0000)
etc/NEWS
src/ChangeLog

index fe5447006fff019cf3b8866ce52ab9a40d49fb0a..fc6986e1ac4fc5614ef4c376d1f12623ba6af4ea 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -2013,20 +2013,27 @@ specifies the minimum line height in pixels.  If necessary, the line
 height it increased by increasing the line's ascent.
 
 If the line-height property value is a float, the minimum line height
-is calculated by multiplying the height of the current face font by
-the given value.
+is calculated by multiplying the default frame line height by the
+given value.
 
-If the line-height property value is t, the minimum line height is
-the height of the default frame font.
+If the line-height property value is a cons (RATIO . FACE), the
+minimum line height is calculated as RATIO * height of named FACE.
+RATIO is int or float.  If FACE is t, it specifies the current face.
 
-If the line-spacing property value is an integer, the value is used as
-additional space to put after the display line; this overrides the
-default frame line-spacing and any buffer local value of the
-line-spacing variable.
+If the line-spacing property value is an positive integer, the value
+is used as additional pixels to insert after the display line; this
+overrides the default frame line-spacing and any buffer local value of
+the line-spacing variable.
 
-If the line-spacing property value is a float, the value is multiplied
-by the current height of the display row to determine the additional
-space to put after the display line.
+If the value is a negative integer, the absolute value is used as the
+total height of the line, i.e. a varying number of pixels are
+inserted after each line to make each line exactly that many pixels high.
+
+If the line-spacing property may be a float or cons, the line spacing
+is calculated as specified above for the line-height property.
+
+** The buffer local line-spacing variable may now have a float value,
+which is used as a height relative to the default frame line height.
 
 ** Enhancements to stretch display properties
 
@@ -3417,7 +3424,7 @@ using the text properties (esp. the face) of the prompt string.
 running under X.
 
 ** Arguments for remove-overlays are now optional, so that you can remove
-all overlays in the buffer by just calling (remove-overlay). 
+all overlays in the buffer by just calling (remove-overlay).
 
 ** New packages:
 
index 9be37a3853162fa11d092f93b6d00860cf30af36..77f9fb25ab1c69df84bddcff86559bf19fc37d67 100644 (file)
@@ -1,3 +1,26 @@
+2004-04-30  Kim F. Storm  <storm@cua.dk>
+
+       * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
+
+       * dispextern.h (struct it): Remove member use_default_face.
+       Add members override_ascent, override_descent, override_boff.
+
+       * xdisp.c (init_iterator): Handle line-spacing float value.
+       Initialize override_ascent member.
+       (append_space_for_newline): Reset override_ascent.
+       Remove use_default_face.
+       (calc_line_height_property): New function to calculate value of
+       line-height and line-spacing properties.  Look at overlays, too.
+       Set override_ascent, override_descent, override_boff members when
+       using another face than the current face.  Float values are now
+       relative to the frame default font, by default; accept a cons
+       of ratio and face name to specify value relative to a specific face.
+       (x_produce_glyphs): Use calc_line_height_property.
+       Use override_ascent etc. when set to handle different face heights.
+       A negative line-spacing property value is interpreted as a total
+       line height, rather than inter-line spacing.
+       (note_mouse_highlight): Allocate room for 40 overlays initially.
+
 2004-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * data.c (Fsubr_name): New fun.