Commit Graph

29 Commits

Author SHA1 Message Date
miruka
03f9ec94ff Fix autolinking user IDs including ; or < 2020-07-29 02:00:49 -04:00
miruka
7d7376a5cf Correctly handle <img> with no src attribute 2020-07-16 12:42:50 -04:00
miruka
9dc0688557 Render inline images/custom emotes
<img> tags that either have a width and height (needed for QML to render
correctly) or the data-mx-emote attribute (if they have no width/height,
we assume 32x32) will be rendered inline.

QML's support for img tags with remote src URLs seems buggy on Qt 5.15
especially, not working sometimes. We need to download and cache these
images (like done for matrix media events), and use the local path in
the img's src.
2020-07-10 13:14:17 -04:00
miruka
b9f5ec4b72 Fix parsing user/room ID and alias with dashes
Properly highlight IDs and aliases where the server part contains a
dash, e.g. "@test:example-abc.org".
2020-06-27 06:20:09 -04:00
miruka
3d40f762ce Don't strip <mx-reply> tags 2020-05-22 02:11:21 -04:00
miruka
7719df0135 Fix message mention link regex
Also stop trying to autolink strings like "$messageId:example.org" in message
text, matrix.tpo message links need a room ID to make sense.
2020-05-20 07:54:40 -04:00
miruka
bc5549195b Improve HTMLProcessor performance (mentions)
- Try to autolink usernames only for outgoing messages
- Improve and add some missing docstrings

Fixes the very slow loading/python "freezing" for rooms with a huge
number of members.
2020-05-20 00:59:30 -04:00
miruka
4961042bde Fix error on <a> tags without a href attribute 2020-04-07 09:57:32 -04:00
miruka
e0e33649a2 Stricter user/room/message ID mention parsing
Fixes issues like this entire string being linkified:
"! foo:example.org"
2020-04-06 08:30:47 -04:00
miruka
684ddd364c Don't ignore case when linkifying display names 2020-03-24 04:12:09 -04:00
miruka
3dc81700c1 Correct mailto: linkifying in some special cases
adresses where the host ends with a digit or where the host is only one
character
2020-03-24 04:08:00 -04:00
miruka
be43f68059 Support $id:server message ID mentions 2020-03-23 17:17:15 -04:00
miruka
bd53993b90 Ignore mention links with no text 2020-03-23 16:34:51 -04:00
miruka
688f36b7f1 Event: add [(text, link)] mentions attributes 2020-03-23 15:39:14 -04:00
miruka
8e7cd7bde9 Add data-mention attributes to mention links 2020-03-23 15:23:01 -04:00
miruka
3084745522 Remove extra newline from <pre> elements 2020-03-23 15:11:29 -04:00
miruka
a20cfcffe5 Add special CSS classes to mention links 2020-03-23 15:02:31 -04:00
miruka
ef2504ecae Visual unread mentions counter 2020-03-22 23:55:48 -04:00
miruka
367fff8f4a Fix mentions incorrectly linked for outgoing html 2020-03-22 23:00:30 -04:00
miruka
8d5bc45ceb Safer linkifying for user display names 2020-03-22 20:58:05 -04:00
miruka
8fd7ce4e14 Safer linkifying for user ID, room ID, room alias
Don't replace anything in already existing links or <code>.
2020-03-22 19:40:43 -04:00
miruka
2fbfac5e0d Proper user ID, name, room ID, alias linkifying 2020-03-22 17:38:28 -04:00
miruka
f858e505a6 Linkify typed usernames/id in markdown 2020-03-22 16:21:29 -04:00
miruka
9d3e2dbfc4 Fix quotes in room subtitles 2020-03-13 03:55:04 -04:00
miruka
44e5de02f8 font color → span mx color for outgoing HTML
Also remove HTML_PROCESSOR `filter_inline` and `from_markdown_inline`
methods. `filter` and `from_markdown` now take an `inline` argument.
2019-12-22 09:35:21 -04:00
miruka
335d931b0a Turn markdown color names into hex codes
Not all clients may know the same color names or even support them, hex
codes are unambiguous.
2019-12-22 09:35:15 -04:00
miruka
b0d77d74a9 Add custom markdown syntax for coloring text
<color>(text to color) where color can be a SVG color name,
3 characters hex or 6 characters hex code.

Can be used to send colored message from the composer. Other clients
that follow the matrix spec should be able to display them (e.g. riot,
even if it can't send them)
2019-12-20 14:44:31 -04:00
miruka
fb1f9c62e5 Add SPDX ID LGPL v3+ license headers 2019-12-19 07:46:16 -04:00
miruka
d7045644f1 Rename and document html filtering stuff 2019-12-18 09:33:22 -04:00