# Mobile 1.0.0-beta.29 (beta) Released on Jul 3, 2026 > [!CAUTION] > The Fluxer Flutter mobile client is still in beta so features will be missing or broken. Pre-release build for TestFlight and Android APK (FCM + OSS). ## What's New - Added localization for multiple languages a mix of LLM, and human (you can contribute on our Weblate), by @hampus-fluxer - Added the explore public communities page, by @edeuss - Added support for handling fluxer.gg invite links, by @edeuss - Added support for community banned users list, by @edeuss - Added unread indicator to chat back button, by @edeuss - Added support for reordering community’s, by @edeuss - Added support for message group spacing settings, by @M0N7Y5 - Added unread channel floating indicator if there is unread channels out of view, by @edeuss - Added system notifications with reasons why the message failed to send, by @edeuss - Added blocked user message to message input if the other user is blocked, by @edeuss - Added desktop parity with the dm preview messages, by @edeuss - Added disallow account deletion when owner of communities, by @edeuss - Added reaction support to system notifications, by @Jiralite - Improvements to multi-line code block parser, by @edeuss - Improvements to YouTube embeds error handling, by @edeuss - Improvements to channel link handling in messages, by @edeuss - Improvements to the edited message tag, having it be inline with the markdown message, by @edeuss - Fixed issues with Android FCM notifications, by @hampus-fluxer & @edeuss - Fixed animated emojis not showing in the emoji picker list, by @edeuss - Fixed the emoji picker not closing when tapping on the chat input area, by @edeuss - Fixed delete message bottom model not previewing system messages, by @edeuss - Fixed receiving a dm and it getting removed not hoisting the conversation in the dm list, by @Jiralite - Fixed user profile bottom sheet not having a boarder radius, by @Jiralite - Fixed invites getting embedded when links where in code blocks, by @edeuss - Fixed some issues with permission checks that made it so some users couldn’t access community settings, by @edeuss - Fixed an issue after adding an account on a self-hosted instance and not switching back to the correct instance after canceling the SSO sign-in, by @edeuss - Fixed issue on some devices the TOTP field would not show pasted code copied from another app, by @edeuss - Fixed issue on some devices that caused email and passwords to not be pasted into the fields on login, by @edeuss - Fixed issue causing 'Delete all messages from community' modal to be cut off, by @edeuss - Fixed issues with muting multiple channels at once, by @edeuss - Fixed chat emoji auto complete not showing Twemoji and using system emojis, by @edeuss - Fixed being able to swipe from the side in full screen videos, by @edeuss - Fixed unable to fullscreen spoilered media in gallery view, by @edeuss - Fixed counter contrast issues on self-reacted reactions, by @edeuss - Fixed issue with predictive text on Android with Chinese characters, and cursor position issues in chat input, by @edeuss - Fixed markdown text style modifiers not affecting links display text, by @edeuss - Fixed link embeds with multiple images showing up as separate embeds and not a gallery, by @edeuss - Fixed issue with new line in markdown not being preserved in lists, by @edeuss - Fixed issue with Android deep links breaking oauth2 login flow on websites, by @edeuss - Fixed pinning and un-pinning DM’s not updating the list, by @edeuss - Fixed channel access denied message not showing up on tapping links from channels you don’t have access to, by @edeuss - Fixed issue with sharing a channel link in a message to a channel that is type link (a url), and it not launching the url on tap, by @edeuss - Fixed issue with large screen devices members list not loading, by @edeuss - Fixed messages isolated text row Emojis being jumbo when it should only be emoji only messages, by @edeuss - Fixed a regression with users global avatars showing instead of community avatars, by @edeuss - Fixed emojis sizing not being affected in markdown headers, by @edeuss - Fixed markdown bold and italics working in code block, by @edeuss - Fixed issues with voice calls and deafen not unsubscribing you from voice tracks, by @edeuss ## Detailed changes ### Features - feat: add system messages context menu parity (#450) @Jiralite - add explore page for communities (@edeuss) ([79c5b9f](https://github.com/fluxerapp/flutter_client/commit/79c5b9f9aaaf6df4fe514e3d9e1c51d8a686293c)) - trailing inline edited tag (@edeuss) ([85ddd9c](https://github.com/fluxerapp/flutter_client/commit/85ddd9c62b08229cf0f86a50defd4a27c29a38d0)) - add translate badge (@edeuss) ([4f84f8d](https://github.com/fluxerapp/flutter_client/commit/4f84f8d20d2d997569e17015a409f2db3710446a)) - add new out of view message in channel list indicator (@edeuss) ([68bc47c](https://github.com/fluxerapp/flutter_client/commit/68bc47c39ef9856ff5252729e84b2e1b61c4d5ee)) - add peek menu to guilds on the sidebar (@edeuss) ([8183b55](https://github.com/fluxerapp/flutter_client/commit/8183b5507d364029cbda72c17680f6643251d554)) - improve haptic calls with position changes (@edeuss) ([b1d6729](https://github.com/fluxerapp/flutter_client/commit/b1d6729d8ffe42930855274870f3db3a1b189948)) - add desktop parity for dm previews (@edeuss) ([02940c1](https://github.com/fluxerapp/flutter_client/commit/02940c176ecf1a7b82e313bdbbfaabb17920b12b)) - support for community settings bans page (@edeuss) ([169bedf](https://github.com/fluxerapp/flutter_client/commit/169bedfdf8b51c8b69eb9c3794d8136145a82b86)) - add client system messages (@edeuss) ([bda714d](https://github.com/fluxerapp/flutter_client/commit/bda714d0a15119c139355665848d5001d1051a15)) - implement reactions on system messages (@Jiralite) ([e600982](https://github.com/fluxerapp/flutter_client/commit/e6009825fcf96db9d5f7cd34991c168efbda8604)) - support fluxer.gg invite links (@edeuss) ([6aad53c](https://github.com/fluxerapp/flutter_client/commit/6aad53caa6915f3071cab90c84e5b9554ef78e5e)) - guild drag now stays locked to y axis (@edeuss) ([8ccc271](https://github.com/fluxerapp/flutter_client/commit/8ccc271fd772d3c3a44a0c2f3361206c8a832a5a)) - improve drag with hold point threshold (@edeuss) ([a9830ec](https://github.com/fluxerapp/flutter_client/commit/a9830ecd76658a3d187c598d118e59f8133c6bc1)) - mobile guild re-ordering (@edeuss) ([d02c295](https://github.com/fluxerapp/flutter_client/commit/d02c295bde5e18f7048700dc5a9a6ec7cdd1bf4e)) - indicate unread on back button (@edeuss) ([ae0d803](https://github.com/fluxerapp/flutter_client/commit/ae0d8034b66a4fef2e3bb21fec220e1757777a12)) ### Fixes - disable foreground (@edeuss) ([ea641ed](https://github.com/fluxerapp/flutter_client/commit/ea641ed3e84a2cadf6bad3ff0f15ae2842fd0d43)) - split with bridge service (@edeuss) ([9c0b6f2](https://github.com/fluxerapp/flutter_client/commit/9c0b6f282f3ca0ce1026d22c5cc7341a5b30ff6b)) - remove test from runner (@edeuss) ([f5361b7](https://github.com/fluxerapp/flutter_client/commit/f5361b74248af61424e7fea91d5aa8f6a5d4f621)) - use native notification forwarding services (@edeuss) ([cef5c6f](https://github.com/fluxerapp/flutter_client/commit/cef5c6fce300ebf6b31538715f9c63ef8cf72c57)) - native method for dulicates (@edeuss) ([b2db324](https://github.com/fluxerapp/flutter_client/commit/b2db324a15df419ac1a100feb6f02027f2e8b414)) - clear dupe and use local (@edeuss) ([66ccb93](https://github.com/fluxerapp/flutter_client/commit/66ccb9367a17d12320ddb1a34c204fcca991fa6c)) - add format after generate (@edeuss) ([3d581f9](https://github.com/fluxerapp/flutter_client/commit/3d581f9335a21afae0552c8ed541d733dea7d9f7)) - correctly unsubscribe from LiveKit tracks (@edeuss) ([2db25f0](https://github.com/fluxerapp/flutter_client/commit/2db25f0e7c86d62929b20d3866c0e5b6cd634887)) - block bold and italics in codeblocks (@edeuss) ([30dc8b1](https://github.com/fluxerapp/flutter_client/commit/30dc8b1e4915fca2fbf2cbe2003a139b633f5315)) - allow header types to affect emoji size (@edeuss) ([393487b](https://github.com/fluxerapp/flutter_client/commit/393487b11f2152ddbd242318fba7842bb8750238)) - only make emoji only messages jumbo (@edeuss) ([5b593e3](https://github.com/fluxerapp/flutter_client/commit/5b593e3c53220d83bfed129916d549392dce8ee0)) - use display guild avatar first over global (@edeuss) ([2c4f614](https://github.com/fluxerapp/flutter_client/commit/2c4f6147c2e5168e46af5439e956c3570ada076a)) - remove tabs leftover code + page push animation (@edeuss) ([d2564fe](https://github.com/fluxerapp/flutter_client/commit/d2564fe22c98ad0500f08710c5a3feefed2ab43c)) - switch to new loading method for large screen (@edeuss) ([71101d9](https://github.com/fluxerapp/flutter_client/commit/71101d9c17c1a806b0af5c83518c0dfb08de9c3c)) - error on large screen device (@edeuss) ([84cdf87](https://github.com/fluxerapp/flutter_client/commit/84cdf87541c8f5592e61a6bfffa9679b57f16fd6)) - dynamic aspect ratio (@Jiralite) ([82b78a9](https://github.com/fluxerapp/flutter_client/commit/82b78a9fa0d79c0a9d831054b9d8ba802335d5ec)) - show categories previews in the GIF picker (@Jiralite) ([8ca51ed](https://github.com/fluxerapp/flutter_client/commit/8ca51edaf48d545b20779a9e0fdc3cbeb0d5981d)) - force LTR (@Jiralite) ([d8b81bd](https://github.com/fluxerapp/flutter_client/commit/d8b81bd72599b590f3eedf37afca91352e1974ef)) - handle channel links the same as desktop (@edeuss) ([885cefd](https://github.com/fluxerapp/flutter_client/commit/885cefd7ad65d521457b136304dac3b5b7d4a7b4)) - disable on tap for access denied (@edeuss) ([690ac18](https://github.com/fluxerapp/flutter_client/commit/690ac1883618626f6c773f51c018fa7da6b6eae8)) - unpin-pin dms update (@edeuss) ([7ed0ecf](https://github.com/fluxerapp/flutter_client/commit/7ed0ecf14f732f3e2829c24c09470bce9e746733)) - preserve new lines between lists (@edeuss) ([5850738](https://github.com/fluxerapp/flutter_client/commit/5850738208627d7dd5933aacaee9554de628eb2b)) - block oauth2 links (@edeuss) ([4304c0b](https://github.com/fluxerapp/flutter_client/commit/4304c0ba8265d68b8fee93af6fb2b96a64cab89f)) - show image grid in embedded cards (@edeuss) ([6dae59a](https://github.com/fluxerapp/flutter_client/commit/6dae59a130036db9134e1a36fcd3ee0b6ee079fd)) - text styling not affecting links text (@edeuss) ([e6ea362](https://github.com/fluxerapp/flutter_client/commit/e6ea3620ec7b714cb4a3995ad444d146d7fd976b)) - chinese characters and cursor position issues (@edeuss) ([812674c](https://github.com/fluxerapp/flutter_client/commit/812674cfbb2b0a5ec3779324ed4a5fde58160341)) - allow dragging into folders (@edeuss) ([08a13c2](https://github.com/fluxerapp/flutter_client/commit/08a13c21a65b8a1b8ecae70fe6d7147b93a5ee02)) - add chat input background behind keyboard (@edeuss) ([3d89a41](https://github.com/fluxerapp/flutter_client/commit/3d89a41480c4f041a85e862fee6fefdfcbbaad75)) - reactions counter contrast issues on self-reacted (@edeuss) ([5e5ceda](https://github.com/fluxerapp/flutter_client/commit/5e5ceda846ed735e45f60cb1e0572eaec612ee9d)) - unable to fullscreen spoilered media in gallery view (@edeuss) ([687dd33](https://github.com/fluxerapp/flutter_client/commit/687dd331338fb808594b1987a598d2ae0b71084b)) - disable shell swipe for mobile fullscreen video (@edeuss) ([80921d0](https://github.com/fluxerapp/flutter_client/commit/80921d02b77ca3abb88633e2ff108ed1a143dd77)) - emoji auto complete now displays Twemoji (@edeuss) ([5122681](https://github.com/fluxerapp/flutter_client/commit/512268147508326865f6ae13a0ab5ffac4ea6679)) - improvements to youtube embed failed messages (@edeuss) ([223c476](https://github.com/fluxerapp/flutter_client/commit/223c4763286b67cb5a78b1caf2972a66b87cffee)) - improve guild settings handling (web match) (@edeuss) ([e03345f](https://github.com/fluxerapp/flutter_client/commit/e03345f3b2ede03dd5044db8189bcc83013b4ca5)) - support multi line titles (@edeuss) ([bb494d2](https://github.com/fluxerapp/flutter_client/commit/bb494d2eb077bc0a41181e5985fe6c83b06fd82c)) - improvements to multi-line code block parser (@edeuss) ([2fea116](https://github.com/fluxerapp/flutter_client/commit/2fea116223698f988e416638b6ddccb2debd7288)) - issue with email/pass sync on paste (@edeuss) ([3188cf4](https://github.com/fluxerapp/flutter_client/commit/3188cf49bb6cccff75f4492cb2b2fc936a7d2fd0)) - issue with mfa code sync on paste (@edeuss) ([bbc7425](https://github.com/fluxerapp/flutter_client/commit/bbc74250f9795f1e29a9cb15d6da103a95d8d6d7)) - canceling auth on SSO adding account (@edeuss) ([a13139e](https://github.com/fluxerapp/flutter_client/commit/a13139eb25127ebf82a9c61922ae7e6df1b15b66)) - improve permission check (@edeuss) ([c0b414c](https://github.com/fluxerapp/flutter_client/commit/c0b414c27d6fa6cfe5a63ff8057805d9b757b4fa)) - showing invite embed from link in code block (@edeuss) ([610097b](https://github.com/fluxerapp/flutter_client/commit/610097b023ef6f00f6406e394d04590913b342bf)) - correct for visibility check (@edeuss) ([6107137](https://github.com/fluxerapp/flutter_client/commit/610713793066567e06279bcbc8c13c37ee4bca28)) - guild not being able to be dragged out of a folder (@edeuss) ([c4956c6](https://github.com/fluxerapp/flutter_client/commit/c4956c61cdb19d4813f8354e4274f5f09691b2fc)) - close the emoji panel when tapping on the input (@edeuss) ([629f8e9](https://github.com/fluxerapp/flutter_client/commit/629f8e9201deeb9159ca4a55f82f9d8410d1f8e6)) - add blocked composer banner for blocked users (@edeuss) ([ae38968](https://github.com/fluxerapp/flutter_client/commit/ae389687127fe977594f2d094739637f46492edb)) - animate emojis in picker (@edeuss) ([6bdc3f1](https://github.com/fluxerapp/flutter_client/commit/6bdc3f12d88b653ce712236ee250c2b475f376eb)) - pass `version` here too (@Jiralite) ([78872fb](https://github.com/fluxerapp/flutter_client/commit/78872fbd51025158a2540ffe5a0ce3d2e2ac2118)) - pass version around and connect correctly (@Jiralite) ([6cb7b55](https://github.com/fluxerapp/flutter_client/commit/6cb7b556e5982e9f6e76747fd8dc6b0cbb22addc)) - remove `keepAlive` (@Jiralite) ([c28fb55](https://github.com/fluxerapp/flutter_client/commit/c28fb55b259a835b1d628bb713cccc782ea282d3)) - do not stack dialogues (@Jiralite) ([126bfe9](https://github.com/fluxerapp/flutter_client/commit/126bfe95953d184aab4bf737b749453bd548050b)) - decrease timeout (@Jiralite) ([7c619ff](https://github.com/fluxerapp/flutter_client/commit/7c619ff6744de2162c1d6043f6065b7bf2f02d85)) - correct authentication of spaceship (@edeuss) ([ad9c34b](https://github.com/fluxerapp/flutter_client/commit/ad9c34bdb7a82c3925161d7e6bfc941e1c82b631)) - make `muteTitle` required (@Jiralite) ([e10c964](https://github.com/fluxerapp/flutter_client/commit/e10c96478ec5a3c496f60a1baf2e3a24f332aa48)) - remove extra unmute prompt (@Jiralite) ([03cb50a](https://github.com/fluxerapp/flutter_client/commit/03cb50a218cb0028b389f1309c409c7d51a6b89e)) - upload re-attempt issue canary ios (@edeuss) ([b64b439](https://github.com/fluxerapp/flutter_client/commit/b64b4398b3df2565bad8f890c0de5e04952d8555)) - add `borderRadius` to profiles (@Jiralite) ([4d3112b](https://github.com/fluxerapp/flutter_client/commit/4d3112be97fd7b09a5e6cfcb8e29e9dde2456b96)) - unread-then-deleted DM placement (@Jiralite) ([40d6a07](https://github.com/fluxerapp/flutter_client/commit/40d6a07648d069bf67387ff02c804d5dd6fb17f1)) - improvements to fcm flow and added tests (@edeuss) ([9060c4c](https://github.com/fluxerapp/flutter_client/commit/9060c4c88d15f7f2de190b21a1e6a08a06bc7a82)) - disallow deletion when owning guilds (@edeuss) ([a15038a](https://github.com/fluxerapp/flutter_client/commit/a15038a35d47321b7040b48f68bcb0093dea5d86)) - show system messages in delete (@edeuss) ([1fbffe6](https://github.com/fluxerapp/flutter_client/commit/1fbffe6cc1c55c88456387e127c793fdb32ecb64)) - match web message-group spacing (@M0n7y5) ([bee8039](https://github.com/fluxerapp/flutter_client/commit/bee803929aba42d82abe02f9c87972ae58b2f8a0)) ### Other - core(shell): revamped new centralized handling (@edeuss) ([05685a0](https://github.com/fluxerapp/flutter_client/commit/05685a0296480c132ef7c8f194d0e927d4d73e44)) - perf(provider): switch some providers to autoDispose (@edeuss) ([bad4a20](https://github.com/fluxerapp/flutter_client/commit/bad4a20983254dacd26c45a0b4aa3de06f0da2aa)) - pref(guilds): do cleanup on guild change (@edeuss) ([1db62f4](https://github.com/fluxerapp/flutter_client/commit/1db62f4875c4eb0cfa044e0f78d48fce4aeba22f)) ## Fixed - [Markdown not parsing / parsing incorrectly text modifiers in masked links](https://feedback.fluxer.com/p/1561/markdown-not-parsing-parsing-incorrectly-text-modifiers-in-m) - [Markdown does not render in replied text preview](https://feedback.fluxer.com/p/1550/markdown-does-not-render-in-replied-text-preview) - [Self deafen doesn't work when on second connection](https://feedback.fluxer.com/p/1530/self-deafen-doesn-t-work-when-on-second-connection) - [Markdown bold and italics work in code block](https://feedback.fluxer.com/p/1573/markdown-bold-and-italics-work-in-code-block) - [Emotes have the same size when used in different headers](https://feedback.fluxer.com/p/1586/emotes-have-the-same-size-when-used-in-different-headers) - [Emoji on their own line render large even when the message has text](https://feedback.fluxer.com/p/1768/emoji-on-their-own-line-render-large-even-when-the-message-h) - [Edited indicator does not appear next to the end of the last line of message when other lines are longer](https://feedback.fluxer.com/p/1593/edited-indicator-does-not-appear-next-to-the-end-of-the-last) - [Clicking on a link channel posted in a message causes you to go to a text channel](https://feedback.fluxer.com/p/1624/clicking-on-a-link-channel-posted-in-a-message-causes-you-to) - [(Un)Pinning DMs does not update DM List](https://feedback.fluxer.com/p/1588/un-pinning-dms-does-not-update-dm-list) - [Erroneous new lines when there are different formats in a ordered and unordered list](https://feedback.fluxer.com/p/1585/erroneous-new-lines-when-there-are-different-formats-in-a-or) - [Deep links catching web oauth2 flows](https://feedback.fluxer.com/p/1845/deep-links-catching-web-oauth2-flows) - [link embeds with multiple attachments are displayed as multiple separate embeds](https://feedback.fluxer.com/p/1613/link-embeds-with-multiple-attachments-are-displayed-as-multi) - [Jump to unread channels button missing](https://feedback.fluxer.com/p/1565/jump-to-unread-channels-button-missing) - [Mentions and Emojis appear as a random character when the cursor immediately follows any non-whitespace text in the draft message box](https://feedback.fluxer.com/p/1782/mentions-and-emojis-appear-as-a-random-character-when-the-cu) - [Predictive text is rounded with no background causing colour mismatch](https://feedback.fluxer.com/p/1729/predictive-text-is-rounded-with-no-background-causing-colour) - [Reaction count on your own reactions has low contrast](https://feedback.fluxer.com/p/1844/reaction-count-on-your-own-reactions-has-low-contrast) - [unable to fullscreen spoilered media in gallery view](https://feedback.fluxer.com/p/1843/unable-to-fullscreen-spoilered-media-in-gallery-view) - [able to swipe to channel list when in fullscreen video](https://feedback.fluxer.com/p/1842/able-to-swipe-to-channel-list-when-in-fullscreen-video) - [Autocomplete emoji does not use Twemoji](https://feedback.fluxer.com/p/1723/autocomplete-emoji-does-not-use-twemoji) - [\[Intermittent\] Sometimes youtube embed fails and automatically opens a browser link](https://feedback.fluxer.com/p/1727/intermittent-sometimes-youtube-embed-fails-and-automatically) - [Muting channels on the mobile app don't properly apply them](https://feedback.fluxer.com/p/1740/muting-channels-on-the-mobile-app-don-t-properly-apply-them) - ['Delete all messages from community' modal is cut off](https://feedback.fluxer.com/p/1815/delete-all-messages-from-community-modal-is-cut-off) - [Multi-line code block does not look correct when closing backticks are next to final line](https://feedback.fluxer.com/p/1564/multi-line-code-block-does-not-look-correct-when-closing-bac) - [Cannot paste into user and password fields during login](https://feedback.fluxer.com/p/1757/cannot-paste-into-user-and-password-fields-during-login) - [Unable to paste into TOTP text field](https://feedback.fluxer.com/p/1760/unable-to-paste-into-totp-text-field) - [Stuck on loading screen after leaving SSO login to another instance](https://feedback.fluxer.com/p/1838/stuck-on-loading-screen-after-leaving-sso-login-to-another-i) - [Community admins unable to access community settings](https://feedback.fluxer.com/p/1835/community-admins-unable-to-access-community-settings) - [Community invite still gets embedded despite being inside code blocks](https://feedback.fluxer.com/p/1839/community-invite-still-gets-embedded-despite-being-inside-co) - [Tapping the message box with the emoji menu up hides the message box while still being able to type](https://feedback.fluxer.com/p/1622/tapping-the-message-box-with-the-emoji-menu-up-hides-the-mes) - [Add reactions to pinned system messages](https://feedback.fluxer.com/p/1841/add-reactions-to-pinned-system-messages) - [Able to type messages to blocked users, but not send them](https://feedback.fluxer.com/p/1581/able-to-type-messages-to-blocked-users-but-not-send-them) - [Animated emoji do not animate in the emoji picker](https://feedback.fluxer.com/p/1572/animated-emoji-do-not-animate-in-the-emoji-picker) - [Add pin messages context menu actions](https://feedback.fluxer.com/p/1840/add-pin-messages-context-menu-actions) - [Banner background shows no border radius](https://feedback.fluxer.com/p/1834/banner-background-shows-no-border-radius) - [receiving a dm and then having it get deleted doesn't hoist the conversation](https://feedback.fluxer.com/p/1837/receiving-a-dm-and-then-having-it-get-deleted-doesn-t-hoist) - [Delete account flow allows confirmation even when user owns communities](https://feedback.fluxer.com/p/1831/delete-account-flow-allows-confirmation-even-when-user-owns)