summaryrefslogtreecommitdiff
path: root/lisp/image-mode.el
diff options
context:
space:
mode:
authorCarlos Pita <carlosjosepita@gmail.com>2019-06-23 22:49:47 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2019-06-23 22:50:46 +0200
commita74f1e93a6b640f7778addd4a5d076bed35e3f0f (patch)
tree2bac071ec8daa7c3cf992678e0c4a9f5b0eaf3e6 /lisp/image-mode.el
parent983e58137696239f18d6482d2f4d398fe64628a7 (diff)
downloademacs-a74f1e93a6b640f7778addd4a5d076bed35e3f0f.tar.gz
Fix auto-revert resizing in image mode
* lisp/image-mode.el (image-transform-properties): Get image parameters right after reverting; in particular, compute the correct max size (bug#33631).
Diffstat (limited to 'lisp/image-mode.el')
-rw-r--r--lisp/image-mode.el10
1 files changed, 4 insertions, 6 deletions
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index fa1362c471b..5c30f4085c3 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -736,8 +736,7 @@ was inserted."
;; If we have a `fit-width' or a `fit-height', don't limit
;; the size of the image to the window size.
(edges (and (null image-transform-resize)
- (window-inside-pixel-edges
- (get-buffer-window (current-buffer)))))
+ (window-inside-pixel-edges (get-buffer-window))))
(type (if (image--imagemagick-wanted-p filename)
'imagemagick
(image-type file-or-data nil data-p)))
@@ -1150,6 +1149,7 @@ compiled with ImageMagick support."
;; Note: `image-size' looks up and thus caches the untransformed
;; image. There's no easy way to prevent that.
(let* ((size (image-size spec t))
+ (edges (window-inside-pixel-edges (get-buffer-window)))
(resized
(cond
((numberp image-transform-resize)
@@ -1159,13 +1159,11 @@ compiled with ImageMagick support."
((eq image-transform-resize 'fit-width)
(image-transform-fit-width
(car size) (cdr size)
- (- (nth 2 (window-inside-pixel-edges))
- (nth 0 (window-inside-pixel-edges)))))
+ (- (nth 2 edges) (nth 0 edges))))
((eq image-transform-resize 'fit-height)
(let ((res (image-transform-fit-width
(cdr size) (car size)
- (- (nth 3 (window-inside-pixel-edges))
- (nth 1 (window-inside-pixel-edges))))))
+ (- (nth 3 edges) (nth 1 edges)))))
(cons (cdr res) (car res)))))))
`(,@(when (car resized)
(list :width (car resized)))