| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
- view profile (using make-profile-buffer-for).
- user confirm to delete toot.
- better follow/mute/block/profile prompts
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, `mastodon-auth--access-token` unconditionally returns the
value of the `:access_token` key from the response of
`(mastodon-auth--get-token)`. This causes problems when there was an
error getting the token, for example, if you enter the wrong
password. If a token couldn’t be retrieved, the JSON looks like:
(:error "invalid_grant"
:error_description "The provided authorization grant is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client.")
Since there is no `:access_token` key, `mastodon-auth--access-token`
returns `nil`, which results in a broken header in the next request:
Authorization: Bearer
Which causes the whole thing to freeze Emacs until you mash `C-g`.
This commit rewrites the function to handle that case; to explicitly
signal an error for *any* response that isn’t expected; to use
`if-let`, which allows the temporary `token` variable to be
eliminated; uses `pcase` to determine what kind of response was
received; and adds ERT tests for all these cases.
|
| |
|
| |
|
|
|
|
| |
This prevents mastodon.el from locking Emacs and spinning forever.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
- this way you can favorite posts when viewing a profile
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
The package-lint logic is too daft to cope with this (you cannot even mention it in a comment).
We now move the discover functionality into its own package and just mention in the README file how to make use of it.
|
|
|
|
|
|
| |
As pointed out in issue #211 the compiler actually warned the user about `json-array-type` etc. being unused lexical vars.
Let's hope that this fixes the errors reported with reading json.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Visual feedback in the buffer of:
- Number of characters
- Content warning flag
- Posting visibility
- Can't post an empty toot.
- Changing visibility to something other than "public".
Still missing:
- Attaching media
- Enabling the NSWF-flag toggling.
|
|
|
|
| |
* Use the email address of the current user as default
|
| |
|
|
|
|
| |
Now that we calculate the base toot id, we can ensure that it is unset in notifications that do not represent a toot.
|
|
|
|
|
|
|
| |
(Favouriting itself is still hard since we have clobbered the 'f' keybinding, but if you bind it to something else or invoke it via `M-x mastodon-toot--toggle-favourite` then at least it works.)
This also changes the regular boosting/favoriting behavior. Before we would boost/fav a boost or fav instead of the actual toot that was boosted/faved. With this change we always boost/fav the base toot.
To do this we now keep a second toot id (with the base toot) in the byline's properities. (For regular statuses 'toot-id and 'base-toot-id will be identical.)
|
| |
|
| |
|
|
|
|
| |
I had issues that occasionally I couldn't unfavorite / unboost a toot.
Once that was fixed it annoyed me that the cursor would often jump on those actions (jumping to the byline with no need).
|
|
|
|
| |
- Erase buffer before adding new contents
- Don't globally set `print-level` and `print-length`; just temporarily let them to the locally desired values.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add an alternative approach to user profile opening.
This way asks the user in the minibuffer for the handle and offering completion for all user handles in the current status but allowing the user to also enter any other handle to browse whichever account they wish.
This also cleans up some compiler warnings about profile code.
* Create a new minor mode for mastodon profile pages. There we override the 'f' and 'F' keys to show following and followers respectively.
Those pages now look very similar to the regular profile page (with a header).
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
* Adjusted mastodon-tl.el to open user profiles in emacs.
This also fixes an issue in user profiles where new statuses were insert at the above rather than below the user profile header.
|
|
|
|
|
|
|
|
| |
* Add user profiles
- added keybinding U for opening user profiles
- (also added vimish keybindings 'h' and 'l' as aliased for tab and stab in mastodon-mode to compliment jk nav)
- autoloads 'mastodon-profile--get-next-author
|
|
|
|
|
|
| |
* User ids in the body are tab stops.
* Make user handles in byline also links to profile.
|
| |
|
| |
|
|
|
|
|
| |
- Use special mode which sets up a sensible base keymap.
- Define the keymap just once so that users can tweak it as they wish
without us messing with that on each invocation of mastodon-mode.
|
|
|
|
|
|
|
|
|
| |
* Use auth-source-search for fetching and saving password
This gives users the ability to save their password to either the gpg-encrypted ~/.authinfo.gpg or
~/.authinfo so that they don't have to provide username/password each time
* Add a new custom var to decide whether to use the auth-source package or not.
|
|
|
|
|
|
|
| |
- Can now handle notifications (follow reblog favourite and mention)
- Tests for each of the rendering functions are included
- Added keybinding N to mastodon.el for mastodon-notifications-get
- added mastodon-notifications to ert-helper.el
|
| |
|
|
|
|
|
| |
This new functionality is bound to the 'c' key.
To help with this functionality this also changes the 'toot-json and 'toot-id properties. These are now applied to the whole toot not just the toot's byline.
|