aboutsummaryrefslogtreecommitdiff
path: root/lisp/mastodon-tl.el
diff options
context:
space:
mode:
authorH Durer <h.duerer@gmail.com>2018-03-19 15:54:23 +0000
committerJohnson Denen <johnson.denen@gmail.com>2018-08-10 22:20:04 -0400
commit9f9a6e8c45e329d58a772dcf25942f7093ba5fc0 (patch)
treee8b3c59f0ec14b110cf93251c95a71b9324b4ad4 /lisp/mastodon-tl.el
parentdf32beb187aa7cc360324a75c802165aba016aeb (diff)
Give mastodon-media--inline-images a saner interface. (#191)
Instead of making it search the whole buffer every time to find images to load, give it a range where this work should be done. We then call this immediately after inserting a single status, notification, ... There should be no big noticible difference - images might load a tiny bit sooner although I doubt you can see that. This should be more efficient on large buffers although Alex didn't notice any problems when testing streamed buffers. We should still do it as it make things easier to understand. I was always worried about these global operations.
Diffstat (limited to 'lisp/mastodon-tl.el')
-rw-r--r--lisp/mastodon-tl.el21
1 files changed, 11 insertions, 10 deletions
diff --git a/lisp/mastodon-tl.el b/lisp/mastodon-tl.el
index 4d6d0b6..5411d42 100644
--- a/lisp/mastodon-tl.el
+++ b/lisp/mastodon-tl.el
@@ -635,13 +635,16 @@ the byline that takes one variable. By default it is `mastodon-tl--byline-author
ACTION-BYLINE is also an optional function for adding an action, such as boosting
favouriting and following to the byline. It also takes a single function. By default
it is `mastodon-tl--byline-boosted'"
- (insert
- (propertize
- (concat body
- (mastodon-tl--byline toot author-byline action-byline))
- 'toot-id (cdr (assoc 'id toot))
- 'toot-json toot)
- "\n\n"))
+ (let ((start-pos (point)))
+ (insert
+ (propertize
+ (concat body
+ (mastodon-tl--byline toot author-byline action-byline))
+ 'toot-id (cdr (assoc 'id toot))
+ 'toot-json toot)
+ "\n\n")
+ (when mastodon-tl--display-media-p
+ (mastodon-media--inline-images start-pos (point)))))
(defun mastodon-tl--toot(toot)
"Formats TOOT and insertes it into the buffer."
@@ -657,9 +660,7 @@ it is `mastodon-tl--byline-boosted'"
(defun mastodon-tl--timeline (toots)
"Display each toot in TOOTS."
(mapc 'mastodon-tl--toot toots)
- (goto-char (point-min))
- (when mastodon-tl--display-media-p
- (mastodon-media--inline-images)))
+ (goto-char (point-min)))
(defun mastodon-tl--get-update-function (&optional buffer)
"Get the UPDATE-FUNCTION stored in `mastodon-tl--buffer-spec'"