- Comment Replies: Implemented a comment reply feature. Users can now reply to specific messages, with a link that scrolls to the original message.
- Authenticated Media: Added support for fetching media from private Matrix rooms for authenticated users.
- Internationalization (i18n): Introduced multilingual support, allowing the UI language to be configured. Shipped with English and Chinese translations.
- Read-Only Mode: Added a
commentEnabledconfiguration option to disable commenting, providing a read-only view of the comment section.
- Performance: Overhauled media caching by replacing the
localStoragesystem with a more robust IndexedDB implementation, significantly reducing redundant downloads and improving load times. - Performance: Eliminated comment section flickering during updates (e.g., loading more comments, posting) by using keyed rendering. This preserves the playback state of embedded media.
- UI: Improved the reply functionality with rich-text hover previews, SVG icons, message highlighting on scroll, and better
<blockquote>styling.
- "View More" Spam: Prevented duplicate comments from being loaded by disabling the "View more" button during both initial and subsequent comment fetches.
- Reply Tooltips: Fixed issues where reply tooltips would overlap with the browser's native title attribute and would not disappear correctly on mobile devices.
- Layout & Styling: Resolved various CSS issues, including:
- Code blocks and audio players overflowing their containers.
- Incorrect wrapping for inline code.
- Poorly rendered tooltips in dark mode.
- Incorrect icon sizes and whitespace in the reply editor.
- Fix for missing
endtokens, in sync responses from Synapse >= v1.61.0 (Thanks to Tom Price for !20). - A prettier animation while loading comments.
- Re-structure login form to more clearly separate matrix.to links from direct login.
- Require user id (e.g.
@alice:example.com) instead of username. Only show homeserver url if .well-known lookup fails. - Add top-right "X" button to close login modal.
- Login modal now closes when you press outside it.
- Fix some CSS bugs related to positioning the login form in viewport center.
- Make
LoginForma stateful component.
- Relicense from GPLv3 to LGPLv3.
- Rewrite large parts of the stylesheet to use flexbox (Thanks to asdfkcdk for !8).
- Introduce CSS variables to the stylesheet (Thanks to asdfkcdk for !9).
.darkand.lightCSS classes with default values for dark/light mode (Thanks to asdfkcdk for !9).- Bugfix: "View More" button no longer blinks when auto-refreshing short comment sections.
- Allow commenting with Markdown.
- Pluralize time units properly.
- Enforce maximum nesting depth of 100 when sanitizing
org.matrix.custom.html-formatted messages.
- Comment sections can now be initialized using
data-*attributes on thescripttag (Thanks to @NicolaiSoeborg for !5). - Allow using strings for any config parameter, including booleans and numbers.
- Users can now set a displayname when commenting as a guest.
- Some styling improvements for text inputs.
- Make comment time a semantic
timeelement (Thanks to @hectorjsmith for !4). - Add hover text to comment time (Thanks to @hectorjsmith for !4).
- Show "just now" instead of negative seconds if message timestamp is ahead of the client's time
- Add ability fetch new messages periodically
- New config option:
updateInterval, which controls how often to fetch new messages. - Change thumbnail size from 32x32 to 64x64.
- Stylesheet: allow linebreaks in comments.
- New configuration option:
loginEnabledchanges the login button to be a matrix.to link, if set to false (default is true). - New configuration option:
guestPostingEnabledrequires users to log in using their Matrix account, if set to false (default is true). - Added HACKING.md, a guide to getting started with hacking on the client.
- Move matrix.to link into login modal.
- Removed login status string above textarea.
- Show userid in Post button.
- Add placeholder text to comment textarea.
- Textarea inherits background color, to work better with darkmode websites.
- dev.html example page now has a darkmode toggle button.
- A bunch of smaller improvements to the default CSS.
- Support
m.imagemessages - Support
m.audiomessages - Support
m.filemessages - Support
m.videomessages
- Can now display multiple error messages at the same time.
- Better error messages for common bad config values.
m.noticemessages render now.- Config parsing moved out of javascript, into Elm.
- Bugfix: Correct a hardcoded string oversight, that caused incorrect displaynames on Emote messages.
- Bugfix: Move the right sync token when getting newer messages, preventing duplicate comments after posting in small rooms.
- Fetch new messages after successfully posting a comment
- Update current time periodically
- Error messages are now red, and can be closed
- Bugfix: don't crash on redactions
- Bugfix: guest users can view messages sent by others after posting anonymously
- CI changes: put IPFS gateway links in release description
- Don't fetch messages again after an empty chunk was received
- AGPL -> GPL3
- Always join users. Issue join API call on login and on user session deserialization
- Fix Gitlab CI release pipeline for pinning artifacts to IPFS.
- Get a consistent number of comments, irrespective of how many unrenderable events are in the room.
- Introduce optional
pageSizeconfiguration parameter, which sets pagination size.