aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormousebot <mousebot@riseup.net>2022-02-15 15:07:07 +0100
committermousebot <mousebot@riseup.net>2022-02-15 15:07:07 +0100
commit61f15a0acfc66a365d1f2a2d7cbd15e3024edc68 (patch)
tree1732f88abe992688105848c372aa4a25b0d25bf2
parent51378f17d14ff877dfea29e496be64383b65da93 (diff)
parent907991314d0f4e2b88eeb093a6222468e77c9068 (diff)
Merge branch 'develop' into filters
-rw-r--r--lisp/mastodon-profile.el13
-rw-r--r--lisp/mastodon-tl.el16
2 files changed, 25 insertions, 4 deletions
diff --git a/lisp/mastodon-profile.el b/lisp/mastodon-profile.el
index 5811a4a..d632e5e 100644
--- a/lisp/mastodon-profile.el
+++ b/lisp/mastodon-profile.el
@@ -57,6 +57,8 @@
(autoload 'mastodon-tl--init "mastodon-tl.el")
(autoload 'mastodon-http--patch "mastodon-http")
(autoload 'mastodon-http--patch-json "mastodon-http")
+(autoload 'mastodon-notifications--follow-request-reject "mastodon-notifications")
+(autoload 'mastodon-notifications--follow-request-accept "mastodon-notifications")
(defvar mastodon-instance-url)
(defvar mastodon-tl--buffer-spec)
@@ -72,6 +74,17 @@
map)
"Keymap for `mastodon-profile-mode'.")
+(defvar mastodon-profile--view-follow-requests-keymap
+ (let ((map (make-sparse-keymap)))
+ (define-key map (kbd "r") #'mastodon-notifications--follow-request-reject)
+ (define-key map (kbd "a") #'mastodon-notifications--follow-request-accept)
+ ;; (define-key map (kbd "g") 'mastodon-notifications--view-follow-requests
+ ;; (define-key map (kbd "t") #'mastodon-toot)
+ (define-key map (kbd "q") #'kill-current-buffer)
+ (define-key map (kbd "Q") #'kill-buffer-and-window)
+ map)
+ "Keymap for viewing follow requests.")
+
(define-minor-mode mastodon-profile-mode
"Toggle mastodon profile minor mode.
diff --git a/lisp/mastodon-tl.el b/lisp/mastodon-tl.el
index 0423e2e..9016433 100644
--- a/lisp/mastodon-tl.el
+++ b/lisp/mastodon-tl.el
@@ -1582,10 +1582,10 @@ JSON is the data returned from the server."
mastodon-tl--timestamp-next-update (time-add (current-time)
(seconds-to-time 300)))
(funcall update-function json))
- (mastodon-tl--goto-next-toot)
(mastodon-mode)
(when (equal endpoint "follow_requests")
- (mastodon-profile-mode))
+ (mastodon-profile-mode)
+ (use-local-map mastodon-profile--view-follow-requests-keymap))
(with-current-buffer buffer
(setq mastodon-tl--buffer-spec
`(buffer-name ,buffer
@@ -1599,7 +1599,11 @@ JSON is the data returned from the server."
nil ;; don't repeat
#'mastodon-tl--update-timestamps-callback
(current-buffer)
- nil)))))
+ nil)))
+ (when (or (equal endpoint "notifications")
+ (string-prefix-p "timelines" endpoint)
+ (string-prefix-p "statuses" endpoint))
+ (mastodon-tl--goto-next-toot))))
(defun mastodon-tl--init-sync (buffer-name endpoint update-function)
"Initialize BUFFER-NAME with timeline targeted by ENDPOINT.
@@ -1631,7 +1635,11 @@ Runs synchronously."
nil ;; don't repeat
#'mastodon-tl--update-timestamps-callback
(current-buffer)
- nil))))
+ nil)))
+ (when (or (equal endpoint "notifications")
+ (string-prefix-p "timelines" endpoint)
+ (string-prefix-p "statuses" endpoint))
+ (mastodon-tl--goto-next-toot)))
buffer))
(provide 'mastodon-tl)