emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 430d12e 1/3: Don't create temporary files for <video>


From: Lars Ingebrigtsen
Subject: master 430d12e 1/3: Don't create temporary files for <video>
Date: Tue, 9 Nov 2021 01:47:22 -0500 (EST)

branch: master
commit 430d12e3c0d83603596e5d61541973c731e4f983
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Don't create temporary files for <video>
    
    * lisp/net/shr.el (shr-tag-audio): Don't create a temporary file;
    just update the DOM directly.
---
 lisp/net/shr.el | 19 ++++++-------------
 1 file changed, 6 insertions(+), 13 deletions(-)

diff --git a/lisp/net/shr.el b/lisp/net/shr.el
index d5d6d63..19d2d8a 100644
--- a/lisp/net/shr.el
+++ b/lisp/net/shr.el
@@ -1685,23 +1685,16 @@ The preference is a float determined from 
`shr-prefer-media-type'."
                          'webkit
                         "Video"
                          (truncate (* (window-pixel-width) 0.8))
-                         (truncate (* (window-pixel-width) 0.8 0.75))))
-                (file (make-temp-file "shr" nil ".html")))
-            (run-at-time 1 nil (lambda ()
-                                 (ignore-errors
-                                   (delete-file file))))
+                         (truncate (* (window-pixel-width) 0.8 0.75)))))
             (insert
              (propertize
               " [video] "
               'display (list 'xwidget :xwidget widget)))
-            (with-temp-buffer
-              (insert
-               (format
-                "<video autoplay loop muted><source src=%S 
type=\"video/mp4\"></source></video>"
-                url))
-              (write-region (point-min) (point-max) file nil 'silent))
-            (xwidget-webkit-goto-uri widget
-                                     (concat "file://" file))))
+            (xwidget-webkit-execute-script
+             widget (format "document.body.innerHTML = %S;"
+                            (format
+                             "<video autoplay loop muted><source src=%S 
type='video/mp4\'></source></video>"
+                             url)))))
       ;; No xwidgets.
       (if (> (length image) 0)
          (shr-indirect-call 'img nil image)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]