💬 Quote Just the Part You Mean
You can now reply to a piece of a message instead of the whole thing. Highlight any part of a message and a small “Quote reply” button appears, click it, and only that excerpt lands in your reply, still credited to whoever wrote it. Works in DMs and rooms alike, and the quoted excerpt is saved with the reply, so it still reads correctly even if the original message gets edited or deleted later.
📜 Chat Scrolling, Finally Fixed
Scrolling had several systems fighting over it at once, which is why the list sometimes opened at the top, drifted while you were reading, or cut off the newest message. It’s been rebuilt from the ground up:
- Conversations now open pinned to the latest message
- The list only follows new messages when you’re already at the bottom
- Scrolling up to load older messages no longer makes anything jump or shuffle
- A Jump to latest button appears when you’ve scrolled away, and tells you how many messages are waiting
- Replies, search results, and pinned messages now reliably jump to the right spot, loading older history as needed instead of failing silently
📌 Pinning That Actually Works Everywhere
Pinning was only reachable by right-clicking, which made it effectively impossible on a phone or tablet. That’s fixed, along with a handful of other pin issues:
- Long-press a message on mobile to get the same pin menu desktop has
- Pinned messages show a badge, and you can unpin from the message itself or the Pinned Messages panel
- The panel now updates live when someone pins or unpins, instead of going stale
- Fixed room owners being unable to pin at all (a database rule was rejecting them incorrectly)
- Unpinning now reports an error and restores the pin if the action fails, instead of silently disappearing
🖥️ Desktop Goes Offline (and Feels More Native)
A real round of desktop-specific work landed this release:
- Offline mode: your 200 most recent messages per opened DM are cached on-device for reading and searching while disconnected
- Outbox for offline messages: text-only DMs sent while offline are queued and automatically retried once your connection returns (attachments and room messages still need a connection)
- Native-style title bar: drag, minimize, maximize/restore, and close-to-tray, instead of feeling like a browser tab
- Launch at sign-in: Tavrn can start quietly in the system tray when your computer boots
- Startup update checks: the app checks for updates immediately on launch and opens the prompt right away if one’s available
- Refreshed emoji artwork using the Unicode 18 Noto Emoji set, fixing broken image paths that were affecting the picker, messages, reactions, and markdown everywhere, not just desktop
🔔 Push Notifications That Actually Arrive
Push notifications were broken end to end on mobile, your device was registering to receive them, but nothing was ever actually sent. That pipeline is fixed:
- Messages, mentions, and friend requests now genuinely arrive when Tavrn is closed
- Tapping a notification opens the right conversation or page instead of a blank screen
- Notifications show a proper title and body instead of generic text
- iPhone and iPad users now get clear guidance that notifications require adding Tavrn to the Home Screen, instead of a button that silently did nothing
- Dead or uninstalled devices clean themselves up automatically, so notifications stop vanishing into nowhere
Alongside that, you can now choose exactly which alerts you want, Direct Messages, Mentions & Pings, Friend Requests, Friend Accepts, and Server Activity, with your choices applying across both desktop and mobile.
🧱 Rooms & Channels
Settings actually save now A failed room settings save used to replace the entire page with a “404 Page Not Found” screen, hiding the real error completely. That’s gone. Errors now show inline on the page you were already on, and the underlying database rule that could block owners and admins from saving was fixed too.
Real channel categories Create, rename, delete, and drag-to-reorder channel categories from room settings. New rooms start with a default “Text Channels” category instead of dumping everything into Uncategorized, and deleting a category never deletes the channels inside it, they just move back to Uncategorized. All of this is now recorded in the room audit log.
Link protection stopped eating your media In any room with TavBot link protection enabled, posting a picture, GIF, video, or file was being treated as posting a link, and removed. Media and uploads are now always allowed, only real links stay restricted for regular members, and well-known hosts like Tenor, Giphy, and Imgur are always permitted. The setting’s description now actually explains what it does.
✍️ Messaging
- Pasting text copied from websites, Discord, Slack, or anywhere else now works reliably, rich-text and inline emoji in clipboard data no longer cancel the paste
- Pasting a message that’s too long now fills the box up to the limit instead of silently discarding what you pasted
- Message limits increased: 1,500 characters for standard members (up from 1,024), 3,500 characters for Cocoa subscribers (up from 2,048)
🔧 Everything Else
- Fixed the profile preview in Settings showing your profile picture tucked behind your banner
- Normalized line endings in the Windows updater’s signature publishing step, preventing signature decoding failures during updates
⚠️ Known Issues
Nothing major at this time.
Team Tavrn 🧡