Repository navigation
Subshell 0.79-beta
Pre-release
Pre-release
Subshell 0.79: saved searches, RedGIFs in the app, Reddit favorites sync and a full review of the code.
Highlights:
- New: saved searches in the Search hub, an optional scroll position indicator, RedGIFs clips in the app (with Show NSFW posts) and favorites synced with Reddit.
- Reddit emotes, GIFs and images show inline in posts and comments and can be edited; spoilers stay hidden until tapped; escapes, nested styles and lists render right.
- Safer writing: a post, comment, message or moderator action whose answer was lost is checked with Reddit instead of sent twice, and drafts survive restarts.
- Accounts stay apart: votes, scroll positions, lists and notifications no longer cross between accounts; a notification for another account switches to it.
- Fewer crashes and stalls: the app returns where you were after Android closes it, large photos no longer crash previews, and slow work left the main thread.
- Accessibility: switches, choices and buttons announce what they are and their state, touch targets are larger, and auto-hiding controls follow the system timeout.
- Correctness: votes, refreshes, paging, search results, markdown, flair and moderator tools now do what they show, and Retry picks up where a load failed.
- No lost work: drafts, replies and moderator actions survive Android closing the app or a missing answer from Reddit, and backups read back everything they hold.
- Privacy and security: names and ids stay out of release logs, turning a protection off needs the device unlock, and comment images load only from known image hosts.
- Speed: lists, settings, backups and links read their data off the main thread, caches are capped, and long threads load more replies on their own.
- Also: inbox notifications are on by default, shares and links open in the Subshell you already have, numbers follow your language and word filters match whole words.
- Removed: video downloads. Videos stream; anything an older version downloaded can be deleted in Settings.
From the code review, by kind (nearly every finding fixed; the rest were duplicates or already fixed):
- Wrong behaviour (221): votes, refreshes, paging, search, markdown, flair, moderator tools, inbox and Direct Chat now match what they show.
- Usability (96): failures say what happened and offer Retry, inputs lock while they are sent, empty and loading states say which they are.
- Lost work and writes (53): a lost answer is read back from Reddit instead of sent again; drafts, replies and settings are kept.
- Accessibility (45): roles, states and names for switches, choices, tabs and buttons; 48 dp touch targets; Reduce motion and the system timeout are followed.
- Speed and the main thread (66): database, settings, backup and link work moved off the main thread; caches and lists are bounded.
- Concurrency and lifecycle (47): late answers no longer land on another screen, and cancelled work no longer shows as a failure.
- Unused code (47): removed, including the old Library screen and the video download system.
- Crashes (33): bad stored values, unusual names and large images no longer crash the app.
- Account mix-ups (24): one account's data, positions and notifications stay with that account.
- Security and privacy (23): no identifiers in release logs, protections need the device unlock to turn off, link previews and comment images avoid untrusted hosts.
Also fixed: bar icons after a rotation on the light theme (#45), server errors no longer called rejections (#208), the update dialogs scroll (#209), and long threads no longer report replies that already arrived as failed (#210).