What's Changed
Added
- Profile tabs now load asynchronously on Android, iOS, macOS, Desktop, and Web, with dedicated loading placeholders, error states, and retry actions.
- X profiles now include a Reposts tab. Highlights and Articles are shown dynamically when available for that profile.
- Added a global and per-timeline Show emoji reactions appearance option on Android, iOS, macOS, and Desktop.
- Added bidirectional vertical swipe-to-dismiss to the iOS media viewer. The gesture coordinates with zoomed and extra-tall images, follows the release direction, fades the viewer background, and restores the previous position when cancelled.
Improved
- Reworked iOS profile navigation with horizontally swipeable timelines, a shared collapsing header, tab indicators that follow swipe progress, per-tab scroll-position preservation, and a waterfall media gallery.
- Made Apple profile tab bars horizontally scrollable so larger and dynamically generated tab sets remain usable.
- Improved profile loading placeholders, page reuse, media transitions, scroll indicators, iPad safe-area handling, and empty-timeline refresh behavior.
- Updated emoji reactions on Apple platforms to wrap into two rows in timelines with an expandable Show more action. Custom emoji now preserve their aspect ratio, static and animated assets render more consistently, and selected reactions are easier to distinguish.
- Improved FANBOX article rendering for current and legacy post formats, including formatted text, explicit links, URL and provider embeds, legacy video posts, and HTML entry posts.
- Standardized English terminology, capitalization, notifications, error and empty states, and accessibility labels across Android, Apple platforms, Desktop, and Web.
Fixed
- Fixed Bluesky OAuth API requests being sent to the authorization issuer instead of the account’s actual PDS. New and existing OAuth credentials now resolve and validate the DID-advertised PDS, persist the verified endpoint, and retain it across token refreshes.
- Fixed FANBOX creator timelines failing to decode the current nested
postsandpageUrlsresponse shapes. - Fixed Misskey status detail showing only partial context. It now loads the ancestor chain and nested replies around the selected note.
- Fixed iOS profiles jumping after timeline updates, losing tab scroll positions, or becoming unstable during page and layout transitions.
- Fixed iOS media previews changing layout while the full-resolution image loads, especially for extra-tall images, and stabilized the initially selected media item.
- Fixed iOS video controls reappearing during temporary speed-up playback.
- Fixed media carousel settings not being applied to quoted posts and inline reply parents.
- Fixed legacy
twitter.com/{user}/status/{id}links being matched as profiles instead of posts. - Fixed fast Android predictive-back gestures skipping the post-commit animation.
- Fixed long image alt text being clipped instead of scrollable on Android.
- Improved packaged Desktop CPU compatibility by disabling the architecture-sensitive AOT cache.
Performance and Internal Changes
- Added regression coverage for dynamic X profile tabs, X deep links, Bluesky OAuth PDS validation and credential migration, FANBOX response formats and article mapping, Misskey nested conversations, iOS media dismissal and image layout, Android predictive back and alt-text scrolling, appearance patches, paging refresh, and Web localization consistency.
- Updated Gradle to
9.7.1, Android Gradle Plugin to9.3.2, Compose Multiplatform to1.12.0, Navigation 3 to1.2.0-beta01, Material 3 to1.5.0-alpha27, Lifecycle ViewModel Compose to2.11.0, Room to3.0.2, Coil to3.6.0, Compose MediaPlayer to0.11.4, MaterialKolor to5.0.1, Sentry to8.54.0, Firebase BoM to34.18.0, Crashlytics to3.0.8, kotlinx.collections.immutable to0.5.2, Compose lint checks to1.6.0, the Twitter parser to0.5.11, the MFM parser to0.2.8, and XMLUtil to1.0.2.1. - Updated the Web stack, including Svelte to
5.56.10, SvelteKit to2.70.3, Vite to8.2.2, Tailwind CSS to4.3.3, daisyUI to5.7.22, Firebase JS to12.18.0, Font Awesome to7.3.1, js-joda to6.1.0, and SQLite WASM to3.53.0. - Added a tested GitHub Actions safeguard for preserving issue content when an issue title or body is erased.
Full Changelog: 1.7.4...1.7.5