summaryrefslogtreecommitdiff
path: root/lisp/gnus
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/gnus')
-rw-r--r--lisp/gnus/ChangeLog7
-rw-r--r--lisp/gnus/gnus-art.el2
-rw-r--r--lisp/gnus/shr.el22
3 files changed, 21 insertions, 10 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 9c94a2ba2fa..bade634abd6 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,7 +1,14 @@
2011-02-01 Lars Ingebrigtsen <larsi@gnus.org>
+ * shr.el (shr-render-td): Only do colours at the final rendering.
+ Should be slightly faster.
+ (shr-insert-table): Fix up TD background colours when doing the
+ vertical padding.
+
* gnus-art.el (article-date-ut): Protect against articles with no Date
header.
+ (article-update-date-lapsed): Don't use current-column to find the
+ horizontal position. It's fragile in the presence of \003 characters.
* gnus-start.el (gnus-read-active-file-1): Remove dead parameter infos.
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index 07eabd98a6d..af47daf970b 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -3645,7 +3645,7 @@ function and want to see what the date was before converting."
(set-buffer (window-buffer w))
(when (eq major-mode 'gnus-article-mode)
(let ((old-line (count-lines (point-min) (point)))
- (old-column (current-column)))
+ (old-column (- (point) (line-beginning-position))))
(goto-char (point-min))
(while (re-search-forward "^Date:" nil t)
(let ((type (get-text-property (match-beginning 0) 'gnus-date-type)))
diff --git a/lisp/gnus/shr.el b/lisp/gnus/shr.el
index f3c75ccd6a3..10e04a87d93 100644
--- a/lisp/gnus/shr.el
+++ b/lisp/gnus/shr.el
@@ -1055,8 +1055,11 @@ ones, in case fg and bg are nil."
;; possibly.
(dotimes (i (- height (length lines)))
(end-of-line)
- (insert (make-string (string-width (car lines)) ? )
- shr-table-vertical-line)
+ (let ((start (point)))
+ (insert (make-string (string-width (car lines)) ? )
+ shr-table-vertical-line)
+ (when (nth 4 column)
+ (shr-put-color start (1- (point)) :background (nth 4 column))))
(forward-line 1)))))
(shr-insert-table-ruler widths)))
@@ -1173,17 +1176,18 @@ ones, in case fg and bg are nil."
(end-of-line)
(when (> (- width (current-column)) 0)
(insert (make-string (- width (current-column)) ? )))
- (forward-line 1))))
- (when style
- (shr-colorize-region
- (point-min) (point-max)
- (cdr (assq 'color shr-stylesheet))
- (cdr (assq 'background-color shr-stylesheet))))
+ (forward-line 1)))
+ (when style
+ (shr-colorize-region
+ (point-min) (point-max)
+ (cdr (assq 'color shr-stylesheet))
+ (cdr (assq 'background-color shr-stylesheet)))))
(if fill
(list max
(count-lines (point-min) (point-max))
(split-string (buffer-string) "\n")
- (shr-collect-overlays))
+ (shr-collect-overlays)
+ (cdr (assq 'background-color shr-stylesheet)))
(list max
(shr-natural-width)))))))