diff options
author | marty hiatt <martianhiatus@disroot.org> | 2024-11-02 10:49:18 +0100 |
---|---|---|
committer | marty hiatt <martianhiatus@disroot.org> | 2024-11-02 10:49:18 +0100 |
commit | f1bdef0b734fef63aeb4854b2a87503d442bd4ec (patch) | |
tree | 6ef23552e98eeaef3e38187bdf427bd787bad31c /lisp/mastodon-transient.el | |
parent | 16779f582042eb721905e7532ca02cbbeaeab24e (diff) |
revert transient polls to use mastodon-toot-poll
internally, the transients still use tp-transient-settings, but they fetch
from mastodon-toot-poll, and set it when done.
we also hack around so that the cancelling functions work ok.
Diffstat (limited to 'lisp/mastodon-transient.el')
-rw-r--r-- | lisp/mastodon-transient.el | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/lisp/mastodon-transient.el b/lisp/mastodon-transient.el index c96e1d5..6b1296f 100644 --- a/lisp/mastodon-transient.el +++ b/lisp/mastodon-transient.el @@ -268,8 +268,12 @@ Do not add more than the server's maximum setting." (transient-define-prefix mastodon-create-poll () "A transient for creating a poll." - ;; FIXME: handle existing polls when editing a toot - :value (lambda () tp-transient-settings) + :value (lambda () + ;; we set `tp-transient-settings' here to the poll value poss + ;; pulled from the server by + ;; `mastodon-toot--server-poll-to-local'. when we are done with + ;; the transient, we set `mastodon-toot-poll' again + (setq tp-transient-settings mastodon-toot-poll)) ["Create poll" (:info (lambda () (format "Max options: %s" @@ -305,7 +309,7 @@ Do not add more than the server's maximum setting." "Clear current poll data." :transient 'transient--do-stay (interactive) - (mastodon-toot--clear-poll) + (mastodon-toot--clear-poll :transient) (transient-reset)) (transient-define-suffix mastodon-create-poll-done (args) @@ -335,7 +339,9 @@ Do not add more than the server's maximum setting." (call-interactively #'mastodon-create-poll) ;; if we are called with no poll data, do not set: (unless (not vals) - (setq tp-transient-settings + ;; we set `mastodon-toot-poll' here not `tp-transient-settings' + ;; as that is our var outside of our transient: + (setq mastodon-toot-poll (tp-bools-to-strs args))) (mastodon-toot--update-status-fields)))) |