From: Lars Magne Ingebrigtsen Date: Thu, 13 Nov 2014 21:41:55 +0000 (+0100) Subject: Add a hook to be run after eww has rendered a page X-Git-Tag: emacs-25.0.90~2635^2~487 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=790ad0171da998fc4cadbd99451d6ed3a27f1965;p=emacs.git Add a hook to be run after eww has rendered a page * net/eww.el (eww-after-render-hook): New variable. (eww-render): Use it. --- diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index fcf81b02191..1fd23b07194 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -1,3 +1,7 @@ +2014-11-13 Lars Magne Ingebrigtsen + + * eww.texi (Variable Index): Mention `eww-after-render-hook'. + 2014-11-10 Lars Magne Ingebrigtsen * eww.texi (Basics): Document `eww-readable'. diff --git a/doc/misc/eww.texi b/doc/misc/eww.texi index 6d41331c5e3..2208c2d251e 100644 --- a/doc/misc/eww.texi +++ b/doc/misc/eww.texi @@ -235,6 +235,11 @@ developers started contributing to it as well. @node Variable Index @unnumbered Variable Index +@vindex eww-after-render-hook +After eww has rendered the data in the buffer, +@code{eww-after-render-hook} is called. It can be used to alter the +contents, for instance. + @printindex vr @node Lisp Function Index diff --git a/etc/NEWS b/etc/NEWS index 05210df11b2..911fe6a8380 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -156,6 +156,9 @@ the like off the page. *** You can now use several eww buffers in parallel by renaming eww buffers you want to keep separate. +*** `eww-after-render-hook' is now called after eww has rendered +the data in the buffer. + ** Message mode *** text/html messages that contain inline image parts will be diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 12e98657af0..feff0279a86 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2014-11-13 Lars Magne Ingebrigtsen + * net/eww.el (eww-after-render-hook): New variable. + (eww-render): Use it. + * net/shr.el (shr-descend): Don't descend further than `max-specpdl-size' allows (bug#16587). (shr-depth): New variable. diff --git a/lisp/net/eww.el b/lisp/net/eww.el index 0fa79cb1075..61504e91465 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el @@ -73,6 +73,12 @@ :type '(choice (const :tag "Never" nil) regexp)) +(defcustom eww-after-render-hook nil + "A hook called after eww has finished rendering the buffer." + :version "25.1" + :group 'eww + :type 'hook) + (defcustom eww-form-checkbox-selected-symbol "[X]" "Symbol used to represent a selected checkbox. See also `eww-form-checkbox-symbol'." @@ -227,7 +233,8 @@ word(s) will be searched for via `eww-search-prefix'." (eww-display-raw buffer) (eww-update-header-line-format))) (plist-put eww-data :title url) - (setq eww-history-position 0)) + (setq eww-history-position 0) + (run-hooks 'eww-after-render-hook)) (kill-buffer data-buffer)))) (defun eww-parse-headers ()