v0.12.0 Notes ----- The packages for windows are split into an appinstaller file with autoupdates and an msix, which can be installed directly and won't check for updates. The appimage is currently disabled until someone ports it to Qt6. The flatpak appid changed and you will need to migrate manually. For packagers most of our dependencies have been changed or updated. Most significantly Nheko now depends on KDSingleApplication and Qt6. Highlights ---------- - Qt6 6️⃣ - This release migrates to version 6 of the Qt toolkit. - This brings various changes to Nheko. Scrolling might feel slower on some platforms. Theming will look different. You have been warned! - We left out all the fixes we had to do for this from the changelog. Otherwise it might have been twice as long... - Intentional mentions 🔔 - You can now decide if a message should mention someone or not. - Replies now also include an explicit mention (MSC4142). - Event expiration ⏲️ - You can now make Nheko delete messages regularly. - Configure either a time or a maximum number of messages. - Can be configured per room or globally. - Ignoring users (NepNep) 🔕 - You can now ignore other users. - This will hide their messages from the timeline. - You can either user the `/ignore` command, the button in their profile or the button in the Nheko settings. Features -------- - Support for video calls (including screenshare) on Windows. This support is currently not available in prebuilt packages. (checkraisefold) - `/glitch` commands to garble your text. (LorenDB) - Deleting sticker packs. (FallenValkyrie) - Settings for your current profile state. (online, offline, unavailable, auto) - "Goto this event" button in the timeline when searching. - Right click menu entry to go to event when searching. (Sateallia) - Remember the last used filter (community, tag, etc) between restarts. (Sateallia) - Render reactions with custom emoji. - Add custom emoji to the emoji popup. - Add edit button to sticker and emoji popups. - Optionally sort the room list alphabetically. (Sateallia) - Allow sending custom message types. (LorenDB) - Rainfall effect. (LorenDB) - Screenshare using XDG desktop portals (like on Wayland). (David Elsing) - Show which rooms you share with another user. Improvements ------------ - Support MSC3916 for authenticated media. - Disable workarounds for inline images for Qt6.7 and up. - Various improvements around window activation on Wayland. (q234rty) - Update emoji shortcodes. (TheDrawingCoder-Gamer) - Windows and Apple Silicon builds on our own hardware. (Thanks Thulinma for sponsoring access the Apple Silicon box) - MSIX builds and appinstaller for Windows with valid signatures and automatic updates. - Add environment variable to dump the video call pipeline. - Bump supported maximum Matrix version to 1.10. - Various fixes around blurry graphics on HiDPI systems. (q234rty) - Build instructions for Qt6 version on Debian Trixie. (enigma9o7) - Allow reporting messages to your server admin. (LorenDB) - Matrix URI handling on macOS. (LorenDB) - Disable endless pagination for threads. - Deinit gstreamer appropriately. (NepNep) - Support the "fixed" mac method during verification. - Show/hide password button on login page. (Bubu) - Faster blurhash decode. - Speedup room switching. - Setting to disable swipe navigation. (duarm) - Click handling for Windows notifications. - Update gstreamer in flatpak. (Francesco Gazzetta) - Activation token handling for notifications. - Improve Haiku support. (Begasus) - Switch to KDSingleApplication for single instance handling. - Trust handling for received megolm sessions. - Highlight spaces in bold in the quick switcher. - Throttle sync processing when the window is unfocused. - Allow hiding unsupported events via the hidden events dialog. - Change appid to im.nheko.Nheko. (Miika Tuominen) - .editorconfig and .gitattributes. (Aminda Suomalainen) - Remove fetched messages only on startup. - Focus message input after drag and dropping a file. (Sateallia) - Add extra styling for effect messages. - Reduce CPU usage from animated images not currently visible. - Close and open buttons for the room directory. (LorenDB) - Touch scrolling for text. (LorenDB) - Unify our usage of `@user:example.com`. (LorenDB) - Explicit default font options. (LorenDB) - Show powerlevel of mods and admins in the timeline. - Mark room as read from the room list. - Focus input bar after selecting a file. (Sateallia) - Rework history settings. - Show server ACL changes. - Show inviter on invites. - Sections for the sticker picker. - Automatically strip file extensions of images in sticker picker. - Focus the input bar on key presses. - Search rooms in quick switcher by 'activity'. - Make tombstoned rooms italic in the quick switcher. - Allow uploading multiple files at once via the file picker. (Sateallia) - Combine notifications above a certain count. (LcsTen) - Allow querying the status msg over dbus (if enabled). - Allow `#` character in url fragments (to work around clients not escaping matrix.to links). - Improve state event redaction. - Hide inaccessible rooms in communities. (LcsTen) - Update community metadata automatically. - Include ACLs in via calculation. - Focus message input on "scroll to bottom". (tastytea) - Warn on invalid /command. (LorenDB) - Cleanup table rendering. - Blurhash images on privacy screen. (LorenDB) - Improve OpenBSD support. (Klemens Nanni) - Show full status mesage in profile and on hover. (Bubu) - Animate transition from blurhash. (LorenDB) Translations ------------ - Portugese (Tmpod) - Polish (Przemysław Romanik, Vaxry) - Dutch (Jaron Viëtor, Ruben De Smet) - Turkish (Tennouji Misaki, Emilia) - Chinese (Traditional) (AdrianL40) - Chinese (Simplified) (Poesty Li, Eric, Integral, Estela ad Astra) - Russian (pizdjuk) - Indonesian (Linerly) - Esperanto (Tirifto) - Estonian (Priit Jõerüüt) - French (val, luilegeant, CB, Guillaume Girol, Pixead, Mohamad Damaj, Tonus, Mayeul Cantan) - German - Italian (DynamoFox, Elia Tomasi) - Spanish (CM0use) - Finnish (Lurkki14, Aminda Suomalainen) - Arabic (nk) - Persian (Farooq Karimi Zadeh) - Ukrainian (NullPointerException) Bugfixes -------- - Prevent shortcuts from inserting unprintable characters. - Display emojis in avatars properly. - Prevent opening empty Nheko profiles by accident. - DMs created in Nheko were not marked as DMs properly. - Prevent opening user profiles for empty mxids. - Fix crash during video calls on Linux. (checkraisefold) - Fix validation errors in Linux appdata.xml. (Echo J) - Properly copy images to the clipboard on Windows. (NepNep) - Prevent emoji verification and room settings from being clipped by default. (Brayd) - Properly remove attributes on del tags. - Properly scope presence setting to profiles. - Animated images first rendered outside the visible area shouldn't be invisible anymore. - Correctly handle of multiple devices in parallel. - Avoid lag when media messages are shown from enumerating audio devices. - Hidden topic for spaces. - Url encoding for widget urls. - Profile argument parsing for `-p=`. (LorenDB) - Unset hidden space setting when leaving a space. - Round images are square. - Don't freeze after stopping a call on Wayland. (GStreamer frees the EGL context...) - Database name length limitation on some filesystems with long userids. - Pagination in search. - Save profile also when no setting is modified. - Fix decrypt notification setting not being stored properly. - Calculate the name of rooms with 3 members correctly. - Crash on database migration. (mips64-el) - `<hr>` tag escaping. - Confetti being left over after a celebration. - Powerlevel indicator size in timeline. - Duplicate qml ids. (ShootingStarDragons) - Presence updates in the timeline. - Pagination in rooms only containing redactions. - Set a pack avatar. - Make settings comboboxes dependent on content width. - Don't lose message draft history after an edit. - Workaround some WM specific behaviour regarding the focus during search. (Sateallia) - Handle network errors better when marking a mssage as read. - Name and attributions of image packs should be plain text. - Displaying encrypted thumbnails. - 0 size dialogs. (0xDEADCADE) - Loading image packs in unjoined communities. - Show encryption dialog once, not twice. (LorenDB) - Elide nicks and userids in various dialogs. (LorenDB) - macOS builds (1000x). - Disable qml disk cache by default. - QT_SCALE_FACTOR on OpenBSD. (Klemens Nanni) - Deduplicate reactions.