aboutsummaryrefslogtreecommitdiff
path: root/lisp/mastodon-notifications.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-notifications.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-notifications.el')
-rw-r--r--lisp/mastodon-notifications.el12
1 files changed, 7 insertions, 5 deletions
diff --git a/lisp/mastodon-notifications.el b/lisp/mastodon-notifications.el
index ddaaaf4..01068cb 100644
--- a/lisp/mastodon-notifications.el
+++ b/lisp/mastodon-notifications.el
@@ -111,15 +111,17 @@
(defun mastodon-notifications--by-type (note)
"Filters NOTE for those listed in `mastodon-notifications--types-alist'."
(let* ((type (mastodon-tl--field 'type note))
- (fun (cdr (assoc type mastodon-notifications--types-alist))))
- (when fun (funcall fun note))))
+ (fun (cdr (assoc type mastodon-notifications--types-alist)))
+ (start-pos (point)))
+ (when fun
+ (funcall fun note)
+ (when mastodon-tl--display-media-p
+ (mastodon-media--inline-images start-pos (point))))))
(defun mastodon-notifications--timeline (json)
"Format JSON in Emacs buffer."
(mapc #'mastodon-notifications--by-type json)
- (goto-char (point-min))
- (when mastodon-tl--display-media-p
- (mastodon-media--inline-images)))
+ (goto-char (point-min)))
(defun mastodon-notifications--get ()
"Display NOTIFICATIONS in buffer."