diff options
Diffstat (limited to 'lisp/mastodon-toot.el')
-rw-r--r-- | lisp/mastodon-toot.el | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lisp/mastodon-toot.el b/lisp/mastodon-toot.el index 2da6cec..104df1c 100644 --- a/lisp/mastodon-toot.el +++ b/lisp/mastodon-toot.el @@ -62,15 +62,16 @@ Remove MARKER if RM is non-nil." (let ((response (mastodon-http--post url nil nil))) (mastodon-http--triage response callback)))) -(defun mastodon-toot--toggle-favourite (faved) +(defun mastodon-toot--toggle-favourite () "Favourite/unfavourite toot based on current state. If FAVED is nil, favourite the toot. If FAVED is non-nil, unfavourite the toot." (interactive) - (let ((action (if faved "unfavourite" "favourite")) - (remove (when faved t)) - (id (mastodon-tl--property 'toot-id))) + (let* ((id (mastodon-tl--property 'toot-id)) + (faved (get-text-property (point) 'favourite-p)) + (action (if faved "unfavourite" "favourite")) + (remove (when faved t))) (mastodon-toot--action action (lambda () (mastodon-toot--action-success "F" remove))) (message (format "%sd #%s" action id)))) |