Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 60c215c63d | |||
| cfb8b78e7c | |||
| 12a6e7410d | |||
| 5539f1f1fd |
+126
-5
@@ -554,7 +554,8 @@
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<p class="also-available">
|
<p class="also-available">
|
||||||
Our Lotus Guild fork of Cinny adds: voice message recording (MSC3245, works E2EE), device verification fix (cross-client SAS emoji + inline cards), per-member device session panel with per-device verify buttons, full Discord-style presence tracking (online on startup, idle/away after 10 min inactivity, unavailable when tab hidden, offline on close — with a “Hide Online Status” privacy toggle), presence status indicators (online/busy/away dots) in member lists, incoming call ring + Answer/Decline (DMs & group chats), GIF picker (Giphy), emoji & sticker picker (custom packs, stickers send as <code style="font-size:0.8em;color:#e88;">m.sticker</code> events), pinned messages panel (pin icon in room header, pin/unpin from message menu), who-reacted viewer (hover any reaction for a name tooltip; right-click for a full avatar list), draggable+resizable picture-in-picture call window, poll display & voting, message forwarding, image/video captions, location sharing (map view + send), deleted message placeholders, per-message read receipt avatars (click for full list with timestamps), screenshare fullscreen button, screenshare audio mute (mute a screenshare’s audio without leaving the call), PTT (Push-to-Talk with configurable hold key), custom status messages with emoji picker + auto-clear timer (30 min – 7 days) shown below usernames, encrypted room search via local cache scan with per-room “Load more” history buttons, a dedicated Privacy settings section (hide typing, hide online status), and the Lotus Terminal design theme.
|
Our Lotus Guild fork of Cinny adds: voice message recording & playback with 0.75×/1×/1.5×/2× speed control (MSC3245, E2EE), device verification fix (cross-client SAS emoji + inline cards), per-member device session panel with per-device verify buttons, full Discord-style presence tracking (online on startup, idle/away after 10 min inactivity, unavailable when tab hidden, offline on close — with a “Hide Online Status” privacy toggle), presence status indicators (online/busy/away dots) in member lists, incoming call ring + Answer/Decline (DMs & group chats), GIF picker (Giphy), emoji & sticker picker (custom packs, stickers send as <code style="font-size:0.8em;color:#e88;">m.sticker</code> events), pinned messages panel (pin icon in room header, pin/unpin from message menu), who-reacted viewer (hover any reaction for a name tooltip; right-click for a full avatar list), draggable+resizable picture-in-picture call window, poll creation & voting (single or multiple choice, 2–10 options), message forwarding, image/video captions, location sharing (map view + send), deleted message placeholders, per-message read receipt avatars (click for full list with timestamps), private read receipts toggle (Settings → Privacy), screenshare fullscreen button, screenshare audio mute (mute a screenshare’s audio without leaving the call), PTT (Push-to-Talk with configurable hold key), push-to-deafen (<kbd style="font-size:0.8em;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:3px;padding:1px 5px;">M</kbd> key, configurable in Settings → Calls), custom status messages with emoji picker + auto-clear timer (30 min – 7 days) shown below usernames, encrypted room search via local cache scan with per-room “Load more” history buttons, a dedicated Privacy settings section (hide typing, hide online status), sidebar room filter (search rooms by name in Home and DMs tabs), favorite rooms (star any room, syncs across devices via m.favourite tag), media gallery drawer (browse all images/videos/files shared in a room), invite link + QR code (in both invite modal and room settings), knock-to-join support (Request to Join button + admin Approve/Deny panel), code syntax highlighting in Lotus Terminal mode (keywords, strings, numbers, comments, functions), night light / blue light filter (warm orange overlay with adjustable intensity in Settings → Appearance), message length counter in the composer, and the Lotus Terminal design theme (with TDS-styled orange typing indicator dots).
|
||||||
|
Also added in June 2026: message scheduling (MSC4140, datetime picker, cancel tray), saved messages / bookmarks (right-click any message, sidebar panel, syncs across devices), room history export (txt/json/html, date range, E2EE-aware), room activity & mod log (joins, kicks, bans, power level changes), server ACL editor (allow/deny lists, wildcard validation, power-level gated), room stats panel (top members, top reactions, media breakdown, 24h activity heatmap), opt-in image compression (Canvas API at 0.82 quality, shows before/after sizes), and 13 domain-specific URL preview cards (YouTube, Vimeo, Twitch, Reddit, X/Twitter, Spotify, Steam, IMDb, Wikipedia, GitHub, Discord, npm, Stack Overflow).
|
||||||
Prefer the unmodified upstream? <a href="https://cinny.in" target="_blank" rel="noopener">cinny.in</a> works with our homeserver — set it to <code style="font-size:0.8em;color:#e88;">matrix.lotusguild.org</code>.
|
Prefer the unmodified upstream? <a href="https://cinny.in" target="_blank" rel="noopener">cinny.in</a> works with our homeserver — set it to <code style="font-size:0.8em;color:#e88;">matrix.lotusguild.org</code>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -675,7 +676,7 @@
|
|||||||
|
|
||||||
<!-- ── Feature Comparison Table ── -->
|
<!-- ── Feature Comparison Table ── -->
|
||||||
<div class="comparison-section">
|
<div class="comparison-section">
|
||||||
<p class="comparison-title">Client Feature Comparison — May 2026</p>
|
<p class="comparison-title">Client Feature Comparison — June 2026 (updated)</p>
|
||||||
<p class="scroll-hint" id="scrollHint">← swipe to compare →</p>
|
<p class="scroll-hint" id="scrollHint">← swipe to compare →</p>
|
||||||
<div class="table-wrap">
|
<div class="table-wrap">
|
||||||
<table>
|
<table>
|
||||||
@@ -803,7 +804,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Push-to-Talk<small>hold key to transmit</small></td>
|
<td>Push-to-Talk<small>hold key to transmit</small></td>
|
||||||
<td class="ours"><span class="yes">✓</span><small>configurable hold key,<br>PTT badge in call bar</small></td>
|
<td class="ours"><span class="yes">✓</span><small>configurable hold key,<br>PTT badge in call bar;<br>M = push-to-deafen</small></td>
|
||||||
<td><span class="no">✗</span></td>
|
<td><span class="no">✗</span></td>
|
||||||
<td><span class="no">✗</span></td>
|
<td><span class="no">✗</span></td>
|
||||||
<td><span class="no">✗</span></td>
|
<td><span class="no">✗</span></td>
|
||||||
@@ -856,7 +857,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Polls</td>
|
<td>Polls</td>
|
||||||
<td class="ours"><span class="yes">✓</span><small>display & vote</small></td>
|
<td class="ours"><span class="yes">✓</span><small>create, vote & display;<br>single or multiple choice</small></td>
|
||||||
<td><span class="part">~</span><small>display only</small></td>
|
<td><span class="part">~</span><small>display only</small></td>
|
||||||
<td><span class="yes">✓</span><small>create, vote & end</small></td>
|
<td><span class="yes">✓</span><small>create, vote & end</small></td>
|
||||||
<td><span class="yes">✓</span><small>added v2.3.0</small></td>
|
<td><span class="yes">✓</span><small>added v2.3.0</small></td>
|
||||||
@@ -866,7 +867,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Voice messages<small>record & play</small></td>
|
<td>Voice messages<small>record & play</small></td>
|
||||||
<td class="ours"><span class="yes">✓</span><small>record & play,<br>MSC3245, E2EE</small></td>
|
<td class="ours"><span class="yes">✓</span><small>record & play, E2EE;<br>0.75×/1×/1.5×/2× speed</small></td>
|
||||||
<td><span class="part">~</span><small>playback only</small></td>
|
<td><span class="part">~</span><small>playback only</small></td>
|
||||||
<td><span class="yes">✓</span><small>record, play, variable speed,<br>reply with voice</small></td>
|
<td><span class="yes">✓</span><small>record, play, variable speed,<br>reply with voice</small></td>
|
||||||
<td><span class="yes">✓</span><small>record & play,<br>pause support</small></td>
|
<td><span class="yes">✓</span><small>record & play,<br>pause support</small></td>
|
||||||
@@ -967,6 +968,16 @@
|
|||||||
<td><span class="no">✗</span></td>
|
<td><span class="no">✗</span></td>
|
||||||
<td><span class="no">✗</span></td>
|
<td><span class="no">✗</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Night Light / Blue Light Filter<small>warm overlay, adjustable intensity</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>5–80% intensity slider,<br>Settings → Appearance</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Deleted message visibility<small>(redacted events)</small></td>
|
<td>Deleted message visibility<small>(redacted events)</small></td>
|
||||||
<td class="ours"><span class="yes">✓</span><small>"Message deleted" with reason<br>if provided</small></td>
|
<td class="ours"><span class="yes">✓</span><small>"Message deleted" with reason<br>if provided</small></td>
|
||||||
@@ -1017,6 +1028,16 @@
|
|||||||
<td><span class="yes">✓</span><small>tooltip + click for list</small></td>
|
<td><span class="yes">✓</span><small>tooltip + click for list</small></td>
|
||||||
<td><span class="yes">✓</span></td>
|
<td><span class="yes">✓</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Edit history viewer<small>see all prior versions of an edited message</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>click "(edited)" label → modal<br>with all versions + timestamps</small></td>
|
||||||
|
<td><span class="no">✗</span><small>label shown, not clickable</small></td>
|
||||||
|
<td><span class="yes">✓</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="yes">✓</span></td>
|
||||||
|
<td><span class="yes">✓</span></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Custom status message<small>shown below username</small></td>
|
<td>Custom status message<small>shown below username</small></td>
|
||||||
<td class="ours"><span class="yes">✓</span><small>emoji picker, auto-clear timer<br>(30 min – 7 days), 64-char limit</small></td>
|
<td class="ours"><span class="yes">✓</span><small>emoji picker, auto-clear timer<br>(30 min – 7 days), 64-char limit</small></td>
|
||||||
@@ -1037,6 +1058,76 @@
|
|||||||
<td><span class="part">~</span><small>3-min idle timer (shipped Nov 2023);<br>no tab detection, no offline on close,<br>no user-facing hide toggle</small></td>
|
<td><span class="part">~</span><small>3-min idle timer (shipped Nov 2023);<br>no tab detection, no offline on close,<br>no user-facing hide toggle</small></td>
|
||||||
<td><span class="part">~</span><small>basic online/offline only</small></td>
|
<td><span class="part">~</span><small>basic online/offline only</small></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Media Gallery<small>browse room images/videos/files</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>right-side drawer;<br>Images/Videos/Files tabs</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Sidebar room filter<small>filter by name in real time</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>Home & DMs tabs</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Favorite rooms<small>starred section in sidebar</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>m.favourite tag, syncs<br>across devices</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="yes">✓</span><small>favourites section</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Invite link + QR code</td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>matrix.to URL + QR code<br>in invite modal & room settings</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Custom notification sounds<small>per-category sound selector</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>per-category sound selector; ▶ preview</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Notification quiet hours<small>silence notifs in a time window</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>silence all notifs in a time window; overnight support</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Room sort order<small>sort sidebar rooms by activity, name, or unread</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>Recent / A→Z / Unread First</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="part">~</span><small>sort by activity only</small></td>
|
||||||
|
<td><span class="part">~</span><small>alphabetical only</small></td>
|
||||||
|
<td><span class="yes">✓</span><small>multiple sort options</small></td>
|
||||||
|
<td><span class="part">~</span><small>limited</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Push notifications</td>
|
<td>Push notifications</td>
|
||||||
<td class="ours"><span class="part">~</span><small>web push only</small></td>
|
<td class="ours"><span class="part">~</span><small>web push only</small></td>
|
||||||
@@ -1047,6 +1138,36 @@
|
|||||||
<td><span class="yes">✓</span><small>desktop</small></td>
|
<td><span class="yes">✓</span><small>desktop</small></td>
|
||||||
<td><span class="yes">✓</span></td>
|
<td><span class="yes">✓</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Export room history<small>download messages as file</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>txt/json/html, date range,<br>E2EE-aware</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="yes">✓</span><small>has export</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Message scheduling<small>send later with datetime picker</small></td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>MSC4140, datetime picker,<br>cancel tray above composer</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="part">~</span><small>partial / labs</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Message bookmarks / saved messages</td>
|
||||||
|
<td class="ours"><span class="yes">✓</span><small>right-click bookmark,<br>sidebar panel, syncs across devices</small></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
<td><span class="yes">✓</span></td>
|
||||||
|
<td><span class="no">✗</span></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
Reference in New Issue
Block a user