Commit graph

413 commits

Author SHA1 Message Date
Adam Porter
4fef240e85 Comment: Add FIXME 2022-07-29 13:29:01 -05:00
Adam Porter
95dcf9d56e Fix: (ement-room--insert-sender-headers) Use ewoc-prev
This should be correct, and omitting it must have been an oversight...
2022-07-28 21:08:58 -05:00
Adam Porter
cbdba7b234 Fix: "kicked and banned" event coalescing 2022-07-28 21:08:09 -05:00
Adam Porter
481f571a2f Change/Fix: Improve "Elemental" display format
This still isn't quite perfect, but it seems to be about 99% so, and a
significant improvement.
2022-07-21 10:38:06 -05:00
Adam Porter
aaba533c95 Fix: (ement-room) browse-url-handlers in Emacs < 28.1
Thanks to @gearoid1:matrix.org for reporting.
2022-07-19 08:09:37 -05:00
Adam Porter
fd46ea2b8b Change/Fix: Highlight "@room" mentions 2022-07-18 12:52:20 -05:00
Adam Porter
919991acef Tidy: Compilation warning 2022-07-18 12:50:16 -05:00
Adam Porter
c54c86b4ff Add: Queue image downloads 2022-07-15 15:13:59 -05:00
Adam Porter
5c02bc0876 Fix: (ement-room--buffer) Header for encrypted rooms
Need to check both state and invite-state.
2022-07-15 13:38:06 -05:00
Adam Porter
0eec00733b Fix: (ement-room--format-message)
Fixes #81 (which only happens on an unreleased Emacs version).  Thanks
to Tassilo Horn (@tsdh) for reporting and debugging.
2022-07-13 10:05:55 -05:00
Adam Porter
5e66aa244d Tidy: (ement-room--format-message)
Also improve error message.
2022-07-13 09:06:28 -05:00
Adam Porter
4b7d925bab Fix: (ement-room--format-member-event) Events with empty displayname 2022-07-13 08:15:46 -05:00
Adam Porter
b0580a964d Tidy: (ement-room--format-member-event)
Lispy sometimes makes this unnecessary change.
2022-07-13 08:15:05 -05:00
Adam Porter
acdb429c2c Comment: Update FIXME 2022-07-11 08:53:32 -05:00
Adam Porter
02015eacf6 Change: (ement-room-avatars) Default to value from display-images-p
Thanks to Tassilo Horn (@tsdh) for suggesting.
2022-07-10 07:45:42 -05:00
Adam Porter
2b4ee52e67 Change: Make membership event type bold
Makes each type of event easier to find in long lists of membership
events.
2022-07-06 10:53:03 -05:00
Adam Porter
918d1d9d43 Fix: (ement-room-flush-colors) Don't refresh notification buffer 2022-07-02 11:26:01 -05:00
Visuwesh
1a97b597dc Add: Upload file by dragging them
* ement-room.el (ement-room-dnd-upload-file): Add.
(ement-room-mode): Register dnd function to upload file when dragging
them to an Emacs frame.
2022-07-01 03:25:40 -05:00
Adam Porter
5d03a7dd70 Improve: %W formatting 2022-06-30 11:28:41 -05:00
Adam Porter
6f9bd70b79 Add: %W wrap-prefix message formatter
And use it in ement-notify, etc.  This seems to strike a nice balance
between readability and efficient use of space, especially in the
notifications buffer.
2022-06-30 11:07:43 -05:00
Adam Porter
a5c96bd682 Change: (ement-notify--room-background-color) Improve, cache
Also update (ement-room-flush-colors) to flush these cached colors.
2022-06-27 16:29:39 -05:00
Adam Porter
cef83470b6 Change: (ement-notify) Derived mode for notifications buffer 2022-06-27 03:01:11 -05:00
Adam Porter
2253e97753 Fix: (ement-room--m.image-callback) Workaround rare bug
I'm not sure what can cause this.  While I've heard a couple of
reports from users, this is the first time it's happened to me.  It
might be caused by an earlier error interrupting sync processing,
leaving a room data or buffer in an inconsistent state.  Anyway, this
should prevent it from being a problem, while still leaving a way to
potentially learn the cause so it can be truly solved.
2022-06-27 01:01:30 -05:00
Adam Porter
a5ea0827d3 Change: Remove ts dependency
...since ts is not (yet?) in ELPA, which would prevent Ement from
going into it.  Also, this should be slightly more efficient, since we
won't allocate ts structs for these calculations.
2022-06-23 02:08:17 -05:00
Adam Porter
84ac8f9130 Fix: (ement-room--format-member-event) For unset displayname
When the user unsets displayname, we use the calculated one.
2022-06-22 21:05:30 -05:00
Adam Porter
53384f20ff Comment: Add TODO 2022-06-16 23:55:47 -05:00
Adam Porter
f2084e8459 Change: (defface ement-room-mention) :inherit hl-line
This should be a better default, because :inverse-video is too much.
2022-06-15 12:17:56 -05:00
Adam Porter
2fadb3ed22 Fix: (ement-room--event-body-face) Lighten/darken depending on theme 2022-06-15 12:01:10 -05:00
Adam Porter
ec68977299 Add: (ement-room-flush-colors) 2022-06-01 12:15:29 -05:00
Adam Porter
306c1ecfb0 Tidy: Move --format-user and --prism-color into -lib 2022-05-30 06:14:28 -05:00
Adam Porter
41318e2969 Add: (ement-room-describe) 2022-05-30 06:14:28 -05:00
Adam Porter
039c548fd3 Change: (ement-room--format-user) Add session argument
Needed to compare given user with local user.
2022-05-30 05:53:32 -05:00
Adam Porter
5b101206ca Change: (ement-prism-color) Arguments
This change isn't yet visible, but it makes more sense and is more
flexible.  Also, the TODO is a good idea.
2022-05-30 04:01:12 -05:00
Adam Porter
529cca4d61 Change: Move per-room displaynames into room struct
This avoids circular data structures (I think this is the only case of
it), which should prevent the infinite-loop/out-of-memory situations
when Emacs prints one in an error or backtrace and print-circle is
nil.

Fixes #41.
2022-05-29 10:47:39 -05:00
Adam Porter
fd96491e82 Fix: (ement-room-goto-event) 2022-05-20 16:18:48 -05:00
Adam Porter
4a6b9e21d3 Change/Fix: Sender names when not in margin
Thanks to @Wibjarm:matrix.org for reporting.
2022-05-20 15:43:06 -05:00
Adam Porter
d1e4fc2074 Fix: (ement-room--format-member-event) Avatar/displayname changes 2022-05-14 08:30:31 -05:00
Adam Porter
961d650377 Change: (ement-room-set-topic) Use INITIAL-INPUT for read-string
...rather than DEFAULT-VALUE, because using DEFAULT-VALUE disallows
setting an empty topic (and the HISTORY argument seems inappropriate,
so contrary to the docstring, the INITIAL-INPUT argument doesn't seem
superseded in all cases).
2022-05-13 18:16:04 -05:00
Adam Porter
7ae7366488 Change/Fix: (ement-room--format-membership-events) Name and avatar 2022-05-13 02:27:04 -05:00
Adam Porter
0d95f4ed19 Change/Fix: --get-joined-members, etc. 2022-05-12 18:14:23 -05:00
Adam Porter
217fe22505 Add/Change: list-members, et al.
Add ement-list-members, along with ement--get-joined-members, and use
it in member completion.  Also, add ement-singly macro.
2022-05-12 18:14:23 -05:00
Adam Porter
9839b0ed48 Add: (ement-user-message-color) etc.
Desaturate and lighten user color for message bodies to make them seem
less harsh.
2022-05-12 12:56:08 -05:00
Adam Porter
a665d68a5a Change: Include full name in tooltip when truncating names
Adds (ement-room--concat-property).
2022-05-12 12:56:08 -05:00
Adam Porter
e50929d52f Add: (ement-room-wrap-prefix) 2022-05-12 12:56:08 -05:00
Adam Porter
bc439ec2c9 Refactor: Move much code into new ement-lib.el file
This simplifies relations between files and avoids circular
dependencies.  package-lint may complain about symbol names in the new
file, but that's okay.
2022-05-12 12:56:08 -05:00
Adam Porter
6af03fb433 Fix: Notifications for rooms that have no buffer
These two functions can be called by ement-notify functions for rooms
that have no buffer, but these functions expected the rooms to have
buffers.

Thanks to @benoitj for reporting.
2022-05-12 10:33:48 -05:00
Adam Porter
5e4fe25b71 Change: (formatter ?S) Abbreviate long displaynames 2022-05-11 15:09:23 -05:00
Adam Porter
b98843a82d Change: (ement-room--format-membership-events) Format event in help-echo 2022-05-09 15:48:02 -05:00
Adam Porter
39751e8d70 Fix: (ement-room--format-power-levels-event) Sender displayname
Fixes a wrong-type-argument error that could break a room's buffer and
prevent further syncing.
2022-05-09 15:22:38 -05:00
Adam Porter
7abf04dd0e Fix: (ement-room--format-body-mentions) Regexp 2022-05-09 10:20:07 -05:00