landing: re-verify every client claim (reviewed 2026-09-26)
Lint / Shell (shellcheck) (push) Successful in 21s
Lint / JS (eslint) (push) Successful in 11s
Lint / No secrets in webhook configs (push) Successful in 9s
Lint / Landing page is rendered (matrix (push) Successful in 6s
Lint / Python (ruff) (push) Successful in 7s
Lint / Python deps (pip-audit) (push) Successful in 47s
Lint / Secret scan (gitleaks) (push) Successful in 7s
Lint / Shell (shellcheck) (push) Successful in 21s
Lint / JS (eslint) (push) Successful in 11s
Lint / No secrets in webhook configs (push) Successful in 9s
Lint / Landing page is rendered (matrix (push) Successful in 6s
Lint / Python (ruff) (push) Successful in 7s
Lint / Python deps (pip-audit) (push) Successful in 47s
Lint / Secret scan (gitleaks) (push) Successful in 7s
Each client's card and all 64 table cells were checked against its latest release (source at the release tag, changelogs, official docs): Cinny v4.12.7, Element Web v1.12.29, Element X 26.09.2, FluffyChat v2.9.5, Commet v0.5.0, Nheko v0.12.1. ~95 cells corrected, notes tightened, chips made consistent (platforms / SDK / one calling chip). Notable: - Cinny: calls, voice rooms and screenshare via Element Call are stable (card gained the calling chip); ring, who-reacted, read receipts: yes; polls: no. - Element X: cannot START a screenshare (mobile web views have no getDisplayMedia) — chip is now "Voice & Video". - FluffyChat: threads, pinning, media gallery, custom status, QR invites: yes; calls still experimental (DM-only, legacy 1:1). - Commet: web app + Windows/Linux, no macOS; screenshare, widgets (v0.5.0), favourites: yes; "Beta" chip dropped (not self-described). - Nheko: calls are 1:1 only and only in Linux builds; threads: yes; no release since Aug 2025. - Element: no bookmarks or scheduling; custom status is Labs; QR invites and sort order: yes. - Lotus Chat: Vodozemac yes (Rust crypto), widgets yes, push = only while open (no background push yet); desktop app is Windows + Linux (the feature list said macOS). - Vodozemac is yes for every js-sdk client now (Rust crypto). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PPmy3tPq869XDW4njjVaKA
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f0017f4d5a
commit
1dccca914c
+196
-143
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"reviewed": "2026-09-23",
|
||||
"reviewed": "2026-09-26",
|
||||
"clients": [
|
||||
{
|
||||
"name": "Lotus Chat",
|
||||
@@ -15,11 +15,11 @@
|
||||
},
|
||||
{
|
||||
"name": "FluffyChat",
|
||||
"sub": "All platforms"
|
||||
"sub": "Android, iOS, Web & Linux"
|
||||
},
|
||||
{
|
||||
"name": "Commet",
|
||||
"sub": "Android / Win / macOS / Linux"
|
||||
"sub": "Android / Win / Linux / Web"
|
||||
},
|
||||
{
|
||||
"name": "Element",
|
||||
@@ -97,14 +97,15 @@
|
||||
"note": "Cinny Desktop"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "iOS build runs on Apple Silicon Macs (no Windows/Linux)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "Win, macOS & Linux"
|
||||
"note": "Windows & Linux (macOS: build from source only)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -130,7 +131,8 @@
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "app.commet.chat (v0.5.0)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -187,16 +189,19 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "Linux: click opens chat, Mark-as-read/Mute actions; no inline reply"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "Windows & Linux: click-to-open, inline reply, call accept/decline"
|
||||
},
|
||||
{
|
||||
"mark": "part"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "Linux inline reply (D-Bus), macOS quick reply, click-to-open"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -291,7 +296,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "wakelock during (experimental) calls"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -365,12 +371,12 @@
|
||||
"feature": "Vodozemac encryption<small>stronger crypto track record</small>",
|
||||
"cells": [
|
||||
{
|
||||
"mark": "no",
|
||||
"note": "js-sdk"
|
||||
"mark": "yes",
|
||||
"note": "Rust crypto (matrix-sdk-crypto-wasm) via js-sdk"
|
||||
},
|
||||
{
|
||||
"mark": "no",
|
||||
"note": "js-sdk"
|
||||
"mark": "yes",
|
||||
"note": "Rust crypto (matrix-sdk-crypto-wasm) via js-sdk"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -385,8 +391,8 @@
|
||||
"note": "dart-sdk"
|
||||
},
|
||||
{
|
||||
"mark": "no",
|
||||
"note": "js-sdk, migrating"
|
||||
"mark": "yes",
|
||||
"note": "Rust crypto (matrix-sdk-crypto-wasm)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -402,7 +408,7 @@
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "cross-client requests<br>may show unsupported"
|
||||
"note": "own devices only (emoji + recovery key)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -434,26 +440,27 @@
|
||||
"note": "rooms & DMs, group calls,<br>screenshare via Element Call"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "Element Call embed;<br>no ring notification"
|
||||
"mark": "yes",
|
||||
"note": "1:1 + group via embedded Element Call"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "MatrixRTC"
|
||||
"note": "1:1 & group via embedded Element Call"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "experimental, varies<br>by homeserver"
|
||||
"note": "experimental setting, DMs only (legacy 1:1 WebRTC)"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "1:1 + group,<br>no E2EE voice rooms"
|
||||
"mark": "yes",
|
||||
"note": "1:1 WebRTC; voice channels via MatrixRTC + LiveKit; E2EE experimental"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
"mark": "part",
|
||||
"note": "1:1 only, legacy VoIP; Linux builds only"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -469,20 +476,23 @@
|
||||
"note": "via Element Call embed"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
"mark": "no",
|
||||
"note": "can view others' screenshares, cannot start one"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "experimental 1:1 calls, mobile & web only"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "desktop, Android & browser; 1:1 and voice channels"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "XDG portals & native"
|
||||
"note": "Linux builds only (1:1 calls; XDG portal)"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -502,14 +512,16 @@
|
||||
"note": "browser-native"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "WebRTC-native"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "browser-native;<br>ML only on LiveKit Cloud"
|
||||
"note": "browser-native (WebRTC)"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "browser-native (WebRTC noiseSuppression toggle)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -524,7 +536,8 @@
|
||||
"note": "configurable hold key,<br>PTT badge in call bar;<br>M = push-to-deafen;<br>system-wide on Windows desktop"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "hold Space while muted (Element Call built-in); no configurable key"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -536,7 +549,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "hold Space while muted in Element Call; no configurable key"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -605,19 +619,23 @@
|
||||
"note": "3 styles,<br>Web Audio synth"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "via Element Call (calls up to 8 people)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "via Element Call"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "voice channels play join/leave cues for other participants"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "Element Call (calls up to 8 people)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -637,21 +655,21 @@
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "MatrixRTC"
|
||||
"note": "via embedded Element Call"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "no E2EE voice rooms"
|
||||
"note": "MatrixRTC voice channels; E2EE experimental (v0.5.0)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "partial"
|
||||
"mark": "no",
|
||||
"note": "1:1 only; no MatrixRTC/Element Call or Jitsi"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -663,7 +681,8 @@
|
||||
"note": "DMs & group chats;<br>ring tone, auto-dismiss"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "rings for DM calls (Answer/Reject); silent prompt for group calls"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -678,11 +697,11 @@
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "desktop"
|
||||
"note": "ringing toast with Accept/Decline (web & desktop)"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "partial"
|
||||
"mark": "yes",
|
||||
"note": "ringtone (selectable) + Accept/Decline bar"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -739,8 +758,8 @@
|
||||
"note": "Labs flag"
|
||||
},
|
||||
{
|
||||
"mark": "no",
|
||||
"note": "shows as regular messages"
|
||||
"mark": "yes",
|
||||
"note": "thread view since v2.3.0"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -749,7 +768,8 @@
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "since v0.11.0"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -761,8 +781,8 @@
|
||||
"note": "create, vote & display;<br>single or multiple choice"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "display only"
|
||||
"mark": "no",
|
||||
"note": "not rendered (no m.poll support)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -811,7 +831,8 @@
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "playback only (inline audio player); no recording"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -829,8 +850,8 @@
|
||||
"note": "dedicated pins view"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "view only"
|
||||
"mark": "yes",
|
||||
"note": "pin/unpin + pinned banner"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -916,7 +937,7 @@
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "cache scan only"
|
||||
"note": "per-room; downloads & decrypts history client-side"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -936,7 +957,8 @@
|
||||
"feature": "Widgets",
|
||||
"cells": [
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "room widgets; asks before a widget may read or send in the room"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -948,13 +970,15 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "added v0.5.0 (Widgets API, native runner on Android/Windows)"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "listed in room header, open externally"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -976,8 +1000,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "supported but clunky"
|
||||
"mark": "yes",
|
||||
"note": "account switcher; multi-account push since v2.6.0"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -999,21 +1023,22 @@
|
||||
"note": "caption field on<br>image & video upload"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "shows captions from other clients; cannot send"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "scrollable captions<br>on media (v26.04.2)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "unique feature"
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "shows captions from other clients; cannot send"
|
||||
},
|
||||
{
|
||||
"mark": "part"
|
||||
@@ -1039,7 +1064,7 @@
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "most Discord-like overall"
|
||||
"note": "Discord-like layout"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1138,8 +1163,8 @@
|
||||
"note": "\"Message deleted\" with reason<br>if provided"
|
||||
},
|
||||
{
|
||||
"mark": "no",
|
||||
"note": "redacted messages hidden"
|
||||
"mark": "part",
|
||||
"note": "hidden by default; shown with \"Show Hidden Events\""
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -1150,8 +1175,8 @@
|
||||
"note": "shows redaction notice"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "shows redaction notice"
|
||||
"mark": "no",
|
||||
"note": "redacted events are hidden from the timeline"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -1171,7 +1196,8 @@
|
||||
"note": "map embed view +<br>static share button"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "shows received locations; cannot send"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -1203,20 +1229,20 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "via share menu"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "part"
|
||||
"mark": "yes",
|
||||
"note": "Forward action; multi-room on Android"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1228,7 +1254,8 @@
|
||||
"note": "avatar pill below message,<br>click for list + timestamps"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "'Read Receipts' in message menu lists readers"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
@@ -1257,21 +1284,23 @@
|
||||
"note": "hover tooltip with names;<br>right-click for full avatar modal"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "hover tooltip + 'View Reactions' viewer"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "tap reaction chip"
|
||||
"mark": "yes",
|
||||
"note": "long-press reaction for summary sheet"
|
||||
},
|
||||
{
|
||||
"mark": "part"
|
||||
"mark": "yes",
|
||||
"note": "long-press reaction"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "tooltip + click for list"
|
||||
"note": "hover tooltip lists reactors"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -1290,7 +1319,8 @@
|
||||
"note": "label shown, not clickable"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
"mark": "no",
|
||||
"note": "shows \"(edited)\" label only"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1302,7 +1332,8 @@
|
||||
"mark": "yes"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
"mark": "no",
|
||||
"note": "only an 'Edited' marker"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1317,20 +1348,24 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "emoji + text status (needs server support)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "via profile settings"
|
||||
"note": "Set status; shown under DM header & in profile"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "shown under name in user panels/profile"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "Labs; needs homeserver support (MSC4429)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "shown next to sender name in timeline & in profile"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1343,7 +1378,11 @@
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "manual AFK only; auto idle<br>detection PR open, unmerged"
|
||||
"note": "shows others' status; no idle detection"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "reports own presence; doesn't show others'"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
@@ -1351,19 +1390,15 @@
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "basic online/offline only"
|
||||
"note": "sets 'unavailable' 15s after the app loses focus; no input-idle timer"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "inactivity monitor shipped Oct 2025;<br>no tab/close detection confirmed"
|
||||
"note": "3-min idle → away; no hide toggle"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "3-min idle timer (shipped Nov 2023);<br>no tab detection, no offline on close,<br>no user-facing hide toggle"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "basic online/offline only"
|
||||
"note": "auto: unavailable ~30 s after losing focus"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1378,16 +1413,19 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "\"Media and files\" browser in room info"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "Gallery & Files tabs in chat search"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "Files panel lists room attachments; no grid gallery"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1405,10 +1443,12 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "room list search + filter chips"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "search field filters chat list by name + filter chips"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1432,20 +1472,24 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "Favourites filter chip (no separate section)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "favourite (pin) floats to top; tag filter chips"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "'Favorites' section (v0.5.0)"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "favourites section"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "'Favourites' tag in community sidebar"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1460,16 +1504,19 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "share room link; no QR"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "share invite link + QR codes"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "Share room dialog: matrix.to link + QR code"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1487,7 +1534,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "iOS: choose alert tone (global)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1496,7 +1544,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "per room, not per category"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1546,18 +1595,19 @@
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "alphabetical only"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "multiple sort options"
|
||||
"note": "activity only (favourites first, low priority last)"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "limited"
|
||||
"note": "manual drag-reorder; no sort selector"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "Activity, A-Z or Unread-first"
|
||||
},
|
||||
{
|
||||
"mark": "yes",
|
||||
"note": "by importance/unread or alphabetical"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1566,11 +1616,11 @@
|
||||
"cells": [
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "web push only"
|
||||
"note": "OS notifications while the app is open; no background push yet"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "web push only"
|
||||
"note": "only while the tab/app is open; optional email"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
@@ -1638,8 +1688,7 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "partial / labs"
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1666,7 +1715,7 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "yes"
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1687,7 +1736,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "collapses >25 lines (configurable), Show more/less"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1771,7 +1821,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "leading emoji becomes the room icon when no avatar"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1798,14 +1849,15 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "part",
|
||||
"note": "hover bar, no recents"
|
||||
"mark": "yes",
|
||||
"note": "hover bar shows up to 4 recent reactions, 1-click"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "yes",
|
||||
"note": "hover bar shows recent reactions, 1-click"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1847,7 +1899,8 @@
|
||||
"mark": "no"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
"mark": "part",
|
||||
"note": "iOS only (Apple Translation)"
|
||||
},
|
||||
{
|
||||
"mark": "no"
|
||||
@@ -1866,4 +1919,4 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
{
|
||||
"title": "Desktop App",
|
||||
"items": [
|
||||
"Windows, macOS and Linux (Tauri)",
|
||||
"Windows and Linux (Tauri): installer, AppImage, .deb and Arch package",
|
||||
"Rich Windows notifications with inline reply; Focus Assist sync",
|
||||
"Taskbar call controls, jump list and upload progress; tray with call status",
|
||||
"Stays awake during calls, reconnects on network changes, updates itself"
|
||||
|
||||
Reference in New Issue
Block a user