summaryrefslogtreecommitdiff
path: root/lisp/net/eww.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2017-01-24 23:39:05 +0100
committerLars Ingebrigtsen <larsi@gnus.org>2017-01-24 23:39:05 +0100
commit456696a838dfef73364ca025a210d2198fd8390d (patch)
treed6e89deb98240739e60484b5ff428d2fdf1dc339 /lisp/net/eww.el
parentfd42a19260841a2e3c39fd983c7601a3f517bf4b (diff)
downloademacs-456696a838dfef73364ca025a210d2198fd8390d.tar.gz
Avoid having eww unexpectedly open external browsers
* lisp/net/eww.el (eww-render): Instead of opening unsupported content types like audio/mpeg directly in an external browser (which can be very confusing especially when something redirects to a file like that), just display a simple interstitial that people can choose to click on or not (bug#22671).
Diffstat (limited to 'lisp/net/eww.el')
-rw-r--r--lisp/net/eww.el9
1 files changed, 8 insertions, 1 deletions
diff --git a/lisp/net/eww.el b/lisp/net/eww.el
index 3e5d4467eac..172044a12ec 100644
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -364,7 +364,14 @@ Currently this means either text/html or application/xhtml+xml."
((and eww-use-external-browser-for-content-type
(string-match-p eww-use-external-browser-for-content-type
(car content-type)))
- (eww-browse-with-external-browser url))
+ (erase-buffer)
+ (insert "<title>Unsupported content type</title>")
+ (insert (format "<h1>Content-type %s is unsupported</h1>"
+ (car content-type)))
+ (insert (format "<a href=%S>Direct link to the document</a>"
+ url))
+ (goto-char (point-min))
+ (eww-display-html charset url nil point buffer encode))
((eww-html-p (car content-type))
(eww-display-html charset url nil point buffer encode))
((equal (car content-type) "application/pdf")