Commit graph

561 commits

Author SHA1 Message Date
Adam Porter
f4ecf1b4aa Fix: (ement-taxy-define-column "Topic") Remove newlines
Newlines in topics (some rooms have them, and there's an MSC about
expanding topics further) should not be displayed in the room list.
2022-04-10 08:09:03 -05:00
Adam Porter
61e6fc4584 Fix: (ement-taxy-define-column "Name") Use status, and face for left rooms 2022-04-09 18:05:11 -05:00
Adam Porter
2c5bf38d79 Tidy: declare-function 2022-04-09 17:19:58 -05:00
Adam Porter
2b191be1c1 Add: (ement-tag-room) command 2022-04-09 17:19:58 -05:00
Adam Porter
30dcb1ec25 Change: (ement-api) Allow version to be specified
Apparently the endpoints in the spec can have different versions.
2022-04-09 17:19:58 -05:00
Adam Porter
167f1030d4 Add: Favorite/low-priority room faces and sorting 2022-04-09 17:19:58 -05:00
Adam Porter
b5950af856 Change/Fix: (ement--push-joined-room-events) Save all types of account-data events 2022-04-09 14:01:18 -05:00
Adam Porter
c7c7d98d16 Change/Fix: (ement-room--buffer) Process state/timeline events chronologically 2022-04-09 13:17:09 -05:00
Adam Porter
755e62db11 Fix: (ement-room-defevent "m.reaction") Find correct event 2022-04-09 13:15:32 -05:00
Adam Porter
e91ebf1789 Change: (ement-room-view-event) Include local slot 2022-04-09 13:15:01 -05:00
Adam Porter
2c543f72fd Comment: Add FIXME 2022-04-09 12:36:04 -05:00
Adam Porter
e941816bc7 Add/Change: --events-equal-p and --event-replaces-p, and use
In (ement-room-defevent "m.reaction") and (ement-room-defevent "m.typing").
2022-04-09 12:36:04 -05:00
Adam Porter
5ca29de7ba Fix: (ement-room--format-message) Edited message bodies 2022-04-09 12:36:04 -05:00
Adam Porter
b41ed9234f Change/Fix: (ement--push-invite-room-events) Process like joined rooms 2022-04-09 10:38:46 -05:00
Adam Porter
411a9ea83d Fix: (ement-taxy-define-column "Topic") Invited rooms 2022-04-09 10:25:51 -05:00
Adam Porter
9fb01ea55c Change: (ement-taxy-room-list) Sort invited rooms first 2022-04-09 10:25:51 -05:00
Adam Porter
c82d3bdddd Fix: (ement-taxy-room-list) Invited rooms have no latest timestamp 2022-04-09 10:25:51 -05:00
Adam Porter
0a4e1f45ae Change/Fix: (ement--push-invite-room-events) Set room status also 2022-04-09 10:25:51 -05:00
Adam Porter
d33c757de5 Change: (ement--format-room) Add topic
Helps to distinguish, especially for rooms without canonical aliases.
2022-04-08 11:59:02 -05:00
Adam Porter
e189c3e7cd Add/Fix: (ement--link-children) Link child rooms on initial sync
When processing an m.space.child event on initial sync, the child room
may not have been processed yet, so we do this again after initial
sync.
2022-04-08 11:46:33 -05:00
Adam Porter
b561a29b49 Fix: (ement-defevent "m.space.child") Use cl-pushnew 2022-04-08 11:12:40 -05:00
Adam Porter
1481714f9e Fix: (ement-room-mark-read) Interactive spec 2022-04-07 10:59:25 -05:00
Adam Porter
5a8d689ff5 Fix: (ement-taxy-room-list) window-start 2022-04-07 10:57:29 -05:00
Adam Porter
f778c4cbc7 Change/Fix: (ement--process-event, ement-room--handle-events) Demote errors
It seems that various types of events may be accepted and forwarded by
servers despite being malformed.  We don't want any malformed event to
prevent other events from being processed, or to prevent further
syncing.  So we demote all errors encountered while running event
handlers.  Ement's users seem attentive, so it's likely that they will
still report any that they encounter regularly, even though they'll
only be reported as messages.

Closes #61.  Thanks to @jfmcbrayer for reporting.
2022-04-07 10:57:29 -05:00
Adam Porter
b582852b73 Fix: (ement--room-unread-p) Rooms with nil timelines
Thanks to @edgar.vincent:matrix.org for reporting.
2022-04-07 08:34:29 -05:00
Adam Porter
95262e8571 Change: (ement-room-mark-read) Ensure proper major mode
See #59.
2022-04-04 04:22:55 -05:00
Adam Porter
5dc42521bf Change/Fix: (ement-defevent "m.receipt") Workaround for #61
Until this is solved correctly, this will prevent errors, and maybe
lead users who encounter the problem (which must not be everyone,
e.g. it's not happening to me) to report in.
2022-04-02 02:32:15 -05:00
Adam Porter
6d1eb5fdf4 Change/Fix: (ement--hostname-uri) Improve error handling 2022-04-01 09:55:01 -05:00
Adam Porter
cd571c5f42 Add/Fix: (ement--button-buttonize)
button-buttonize is being added in Emacs 28.
2022-04-01 09:34:09 -05:00
Adam Porter
196929b01f Fix: (ement-taxy-column-Unread) Typo in help-echo 2022-03-30 09:43:27 -05:00
Adam Porter
a6e935a3b7 Change: (ement-taxy-column-Latest) Show only largest unit
But the full duration is in the help-echo mouseover.
2022-03-30 08:25:57 -05:00
Adam Porter
d19c19d371 Tidy: (ement-taxy-define-key space) 2022-03-30 02:09:22 -05:00
Adam Porter
8c1d58aea0 Comment: Add MAYBE 2022-03-29 23:35:09 -05:00
Adam Porter
09553519a5 Change: (ement-taxy-column-Name) Use push instead of setf
Not sure why it seemed that setf didn't work with map-elt before, but
it does, and it should.
2022-03-29 23:20:28 -05:00
Adam Porter
f2d5674874 Change/Fix: (defface ement-room-list-space) 2022-03-29 23:19:41 -05:00
Adam Porter
01ccce2c64 Fix: (defface ement-room-list-direct) :inherit attribute 2022-03-29 23:17:27 -05:00
Adam Porter
1924d1149b Fix: (cl-defstruct ement-room) Receipts hash table test 2022-03-29 23:16:26 -05:00
Adam Porter
01792a98c1 Fix: (ement-taxy) Require 'button 2022-03-29 23:16:11 -05:00
Adam Porter
5971c9b881 Fix: (ement-defevent "m.space.child") Respect "via" field
This correctly adds and removes rooms from spaces.
2022-03-29 23:16:11 -05:00
Adam Porter
26a3dd3c4d Fix: (ement-taxy-key-space) Improve logic 2022-03-29 11:28:49 -05:00
Adam Porter
5fa7b8fa1d Tidy: (declare-function ement--format-room) 2022-03-29 10:53:09 -05:00
Adam Porter
353d970d6a Add: Basic space support
Handles space-creation events, links children to parents, and displays
and groups spaces specially in ement-taxy-room-list.
2022-03-29 10:51:03 -05:00
Adam Porter
c398f2fa63 Change: Rename room struct's type slot to status
Type is an actual thing in spec v1.2, used for spaces.
2022-03-29 10:49:45 -05:00
Adam Porter
8d50b23a1d Fix: (ement-taxy-key-name) Use name or regexp
It wasn't clear that :name was required.
2022-03-29 10:46:46 -05:00
Adam Porter
789da61000 Fix: (ement-room-leave) Use --format-room 2022-03-29 08:37:19 -05:00
Adam Porter
bd138bd139 Fix: (ement-complete-room) Include ID to avoid ambiguity
e.g. the #emacs:matrix.org room moved, and when leaving the old room,
the completion prompt would show two identical strings (maybe even
selecting and leaving the wrong room).
2022-03-29 08:36:24 -05:00
Adam Porter
f1760cbc31 Add: (ement--format-room) 2022-03-29 08:36:05 -05:00
Adam Porter
62da76173d Change: (room-defevent "m.room.tombstone") Improve message 2022-03-29 08:25:30 -05:00
Adam Porter
b4d9b4fe26 Fix: (ement-room--buffer) Set header/footer before events
e.g. tombstone events would set the header while processing events,
which would then be overridden, leaving tombstoned rooms without a
warning.
2022-03-29 08:24:53 -05:00
Adam Porter
29a165225e Change: ement-taxy default column order 2022-03-29 07:43:52 -05:00