summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/image-mode.el15
2 files changed, 17 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index caeda7ae3e3..0a92a7ed4b9 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
+2014-09-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * image-mode.el (image-toggle-display-image): If we have a
+ `fit-width' or a `fit-height', don't limit the size of the image
+ to the window size, because that doesn't preserve the aspect
+ ratio.
+
2014-09-17 Reuben Thomas <rrt@sc3d.org>
* progmodes/js.el: Add interpreter-mode-alist support for various
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index 492ac10d706..ee5a1e7906e 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -642,14 +642,19 @@ was inserted."
(string-make-unibyte
(buffer-substring-no-properties (point-min) (point-max)))
filename))
- (edges (window-inside-pixel-edges
- (get-buffer-window (current-buffer))))
+ ;; 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)))))
(type (if (fboundp 'imagemagick-types)
'imagemagick
(image-type file-or-data nil data-p)))
- (image (create-image file-or-data type data-p
- :max-width (- (nth 2 edges) (nth 0 edges))
- :max-height (- (nth 3 edges) (nth 1 edges))))
+ (image (if (not edges)
+ (create-image file-or-data type data-p)
+ (create-image file-or-data type data-p
+ :max-width (- (nth 2 edges) (nth 0 edges))
+ :max-height (- (nth 3 edges) (nth 1 edges)))))
(inhibit-read-only t)
(buffer-undo-list t)
(modified (buffer-modified-p))