mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 17:24:23 +00:00
gnus-html.el (gnus-html-image-fetched): Don't kill the temporary buffer after being called. It's apparently being killed by url.el, and killing it made point move to end-of-buffer in a random buffer.
shr.el (shr-image-fetched): Ditto. shr.el (shr-image-fetched): Avoid having point move in the article buffer. gnus-html.el (gnus-html-image-fetched): Kill the buffer anyway, and fix the bug in url-http.el instead. shr.el (shr-image-fetched): Ditto. gravatar.el (gravatar-retrieve): Be silent when retrieving. gnus-gravatar.el (gnus-gravatar-insert): Don't move point around in the article buffer. (gnus-gravatar-insert): Use blank space from the current buffer to avoid breaking text properties. This makes X-Sent updating work again. gnus-art.el (gnus-article-read-summary-keys): Don't call disabled commands.
This commit is contained in:
parent
b711096ad2
commit
cb51ba085d
5 changed files with 88 additions and 41 deletions
|
|
@ -1,3 +1,31 @@
|
|||
2011-01-24 Lars Ingebrigtsen <larsi@gnus.org>
|
||||
|
||||
* gnus-art.el (gnus-article-read-summary-keys): Don't call disabled
|
||||
commands.
|
||||
|
||||
* gnus-gravatar.el (gnus-gravatar-insert): Don't move point around
|
||||
in the article buffer.
|
||||
(gnus-gravatar-insert): Use blank space from the current buffer to
|
||||
avoid breaking text properties. This makes X-Sent updating work again.
|
||||
|
||||
* gravatar.el (gravatar-retrieve): Be silent when retrieving.
|
||||
|
||||
2011-01-23 Lars Ingebrigtsen <larsi@gnus.org>
|
||||
|
||||
* gnus-html.el (gnus-html-image-fetched): Kill the buffer anyway, and
|
||||
fix the bug in url-http.el instead.
|
||||
|
||||
* shr.el (shr-image-fetched): Ditto.
|
||||
|
||||
* shr.el (shr-image-fetched): Avoid having point move in the article
|
||||
buffer.
|
||||
|
||||
* gnus-html.el (gnus-html-image-fetched): Don't kill the temporary
|
||||
buffer after being called. It's apparently being killed by url.el, and
|
||||
killing it made point move to end-of-buffer in a random buffer.
|
||||
|
||||
* shr.el (shr-image-fetched): Ditto.
|
||||
|
||||
2011-01-23 Julien Danjou <julien@danjou.info>
|
||||
|
||||
* mm-decode.el (mm-inline-media-tests): Change text/org to text/x-org.
|
||||
|
|
|
|||
|
|
@ -6432,6 +6432,8 @@ not have a face in `gnus-article-boring-faces'."
|
|||
(ding)
|
||||
(unless (member keys nosave-in-article)
|
||||
(set-buffer gnus-article-current-summary))
|
||||
(when (get func 'disabled)
|
||||
(error "Function %s disabled" func))
|
||||
(call-interactively func)
|
||||
(setq new-sum-point (point)))
|
||||
(when (member keys nosave-but-article)
|
||||
|
|
@ -6460,8 +6462,11 @@ not have a face in `gnus-article-boring-faces'."
|
|||
(select-window win))))
|
||||
(setq in-buffer (current-buffer))
|
||||
;; We disable the pick minor mode commands.
|
||||
(if (and (setq func (let (gnus-pick-mode)
|
||||
(key-binding keys t)))
|
||||
(setq func (let (gnus-pick-mode)
|
||||
(key-binding keys t)))
|
||||
(when (get func 'disabled)
|
||||
(error "Function %s disabled" func))
|
||||
(if (and func
|
||||
(functionp func)
|
||||
(condition-case code
|
||||
(progn
|
||||
|
|
|
|||
|
|
@ -80,37 +80,44 @@ If nil, default to `gravatar-size'."
|
|||
"Insert GRAVATAR for ADDRESS in HEADER in current article buffer.
|
||||
Set image category to CATEGORY."
|
||||
(unless (eq gravatar 'error)
|
||||
(gnus-with-article-headers
|
||||
;; The buffer can be gone at this time
|
||||
(when (buffer-live-p (current-buffer))
|
||||
(gnus-article-goto-header header)
|
||||
(mail-header-narrow-to-field)
|
||||
(let ((real-name (car address))
|
||||
(mail-address (cadr address)))
|
||||
(when (if real-name
|
||||
(re-search-forward
|
||||
(concat (gnus-replace-in-string
|
||||
(regexp-quote real-name) "[\t ]+" "[\t\n ]+")
|
||||
"\\|"
|
||||
(regexp-quote mail-address))
|
||||
nil t)
|
||||
(search-forward mail-address nil t))
|
||||
(goto-char (1- (match-beginning 0)))
|
||||
;; If we're on the " quoting the name, go backward
|
||||
(when (looking-at "[\"<]")
|
||||
(goto-char (1- (point))))
|
||||
;; Do not do anything if there's already a gravatar. This can
|
||||
;; happens if the buffer has been regenerated in the mean time, for
|
||||
;; example we were fetching someaddress, and then we change to
|
||||
;; another mail with the same someaddress.
|
||||
(unless (memq 'gnus-gravatar (text-properties-at (point)))
|
||||
(let ((point (point)))
|
||||
(unless (featurep 'xemacs)
|
||||
(setq gravatar (append gravatar gnus-gravatar-properties)))
|
||||
(gnus-put-image gravatar nil category)
|
||||
(put-text-property point (point) 'gnus-gravatar address)
|
||||
(gnus-add-wash-type category)
|
||||
(gnus-add-image category gravatar)))))))))
|
||||
(with-current-buffer gnus-article-buffer
|
||||
(let ((mark (point-marker))
|
||||
(inhibit-read-only t)
|
||||
(inhibit-point-motion-hooks t)
|
||||
(case-fold-search t))
|
||||
(save-restriction
|
||||
(article-narrow-to-head)
|
||||
;; The buffer can be gone at this time
|
||||
(when (buffer-live-p (current-buffer))
|
||||
(gnus-article-goto-header header)
|
||||
(mail-header-narrow-to-field)
|
||||
(let ((real-name (car address))
|
||||
(mail-address (cadr address)))
|
||||
(when (if real-name
|
||||
(re-search-forward
|
||||
(concat (gnus-replace-in-string
|
||||
(regexp-quote real-name) "[\t ]+" "[\t\n ]+")
|
||||
"\\|"
|
||||
(regexp-quote mail-address))
|
||||
nil t)
|
||||
(search-forward mail-address nil t))
|
||||
(goto-char (1- (match-beginning 0)))
|
||||
;; If we're on the " quoting the name, go backward
|
||||
(when (looking-at "[\"<]")
|
||||
(goto-char (1- (point))))
|
||||
;; Do not do anything if there's already a gravatar. This can
|
||||
;; happens if the buffer has been regenerated in the mean time, for
|
||||
;; example we were fetching someaddress, and then we change to
|
||||
;; another mail with the same someaddress.
|
||||
(unless (memq 'gnus-gravatar (text-properties-at (point)))
|
||||
(let ((point (point)))
|
||||
(unless (featurep 'xemacs)
|
||||
(setq gravatar (append gravatar gnus-gravatar-properties)))
|
||||
(gnus-put-image gravatar (buffer-substring (point) (1+ point)) category)
|
||||
(put-text-property point (point) 'gnus-gravatar address)
|
||||
(gnus-add-wash-type category)
|
||||
(gnus-add-image category gravatar)))))))
|
||||
(goto-char (marker-position mark))))))
|
||||
|
||||
;;;###autoload
|
||||
(defun gnus-treat-from-gravatar (&optional force)
|
||||
|
|
|
|||
|
|
@ -108,9 +108,15 @@ If no image available, return 'error."
|
|||
You can provide a list of argument to pass to CB in CBARGS."
|
||||
(let ((url (gravatar-build-url mail-address)))
|
||||
(if (gravatar-cache-expired url)
|
||||
(url-retrieve url
|
||||
'gravatar-retrieved
|
||||
(list cb (when cbargs cbargs)))
|
||||
(let ((args (list url
|
||||
'gravatar-retrieved
|
||||
(list cb (when cbargs cbargs)))))
|
||||
(when (> (length (if (featurep 'xemacs)
|
||||
(cdr (split-string (function-arglist 'url-retrieve)))
|
||||
(help-function-arglist 'url-retrieve)))
|
||||
4)
|
||||
(setq args (nconc args (list t))))
|
||||
(apply #'url-retrieve args))
|
||||
(apply cb
|
||||
(with-temp-buffer
|
||||
(mm-disable-multibyte)
|
||||
|
|
|
|||
|
|
@ -462,11 +462,12 @@ redirects somewhere else."
|
|||
(search-forward "\r\n\r\n" nil t))
|
||||
(let ((data (buffer-substring (point) (point-max))))
|
||||
(with-current-buffer buffer
|
||||
(let ((alt (buffer-substring start end))
|
||||
(inhibit-read-only t))
|
||||
(delete-region start end)
|
||||
(goto-char start)
|
||||
(shr-put-image data alt))))))
|
||||
(save-excursion
|
||||
(let ((alt (buffer-substring start end))
|
||||
(inhibit-read-only t))
|
||||
(delete-region start end)
|
||||
(goto-char start)
|
||||
(shr-put-image data alt)))))))
|
||||
(kill-buffer (current-buffer)))
|
||||
|
||||
(defun shr-put-image (data alt)
|
||||
|
|
|
|||
Loading…
Reference in a new issue