aboutsummaryrefslogtreecommitdiffstats
path: root/app
AgeCommit message (Collapse)AuthorFilesLines
46 hoursLazy-load folder content in random page orderDanilo M.6-54/+145
A folder with several thousand posts took ~10 s to open because FolderActivity and the Home row OK handler fetched every page before showing anything. Pages are now fetched one at a time in a shuffled page order (each page shuffled locally), the grid shows after the first page, and the viewer shares the list and pager so it keeps paging the folder. Reels use the same generic pager. Not a full shuffle: neighbours within a page stay together. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursMask password fields, submit login from the keyboard, size picker entriesDanilo M.2-4/+11
setSingleLine() after setInputType() reset the password transformation, so the viewer password showed in clear text in setup and settings. On the TV the on-screen keyboard keeps the D-pad, so the keyboard done key now logs in. Instance entries wrap their text so the focus zoom no longer clips the first letter. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursFix viewer timer and lifecycle review findingsDanilo M.1-8/+18
- tick() refreshes lastTick on every tick, so a failed video no longer advances at once with its whole playback time. - Photo timer counts only once the photo is shown (or failed), so a slow load cannot advance before display. - Slides started while the activity is stopped stay paused and stopped; onStart re-prepares them. - toggleLike error UI guard no longer indexes a replaced playlist. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursAdd settings screenDanilo M.1-0/+62
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursFix viewer review findingsDanilo M.2-14/+59
- Reels paging: drop page callbacks after destroy or a replaced playlist - Scope Glide loads to views and clear them in onDestroy (no deprecated Glide.with(Activity)) - Stop the player in onStop, re-prepare in onStart - Photo timer uses real elapsed time and starts when the photo is on screen - Reels: continue past the old last post when a new page arrives; "No reels" when empty - Likes: ordered single-thread executor, newer toggle wins on error, no "null" in toast - Note the unbounded frame grab limitation Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursAdd fullscreen viewer with blurred backdrop, auto-advance and double-OK likesDanilo M.1-0/+364
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursFix lifecycle, focus loss, crossfade and tab race review findingsDanilo M.3-17/+54
- MainActivity: remove rotate callbacks in onDestroy, ignore connect results once destroyed, rotate the background only while resumed, guard the fade end action. - HomeRows: each row owns one TileAdapter over a mutable list; rebinds refill it and notifyDataSetChanged instead of setAdapter, so focus and scroll survive a sample arriving (change payload keeps the holder). - Crossfade: flip front only on onResourceReady, cancel the animation before resetting alpha. - Tab loads ignore errors from a tab that is no longer shown; Home does not fire a second /folders request while one is in flight. - Load the instance logo after login in connect(). - FolderActivity: request grid focus after layout. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursAdd main screen with top bar, Home rows, Liked and Folders tabsDanilo M.3-0/+390
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 hoursFocus the first action, ignore an empty URL, reset tile zoom on rebindDanilo M.2-1/+8
Review follow-ups: after a failed scan or connect nothing had focus, so the first D-pad press was swallowed; an empty manual URL produced a confusing "Cannot reach http://" error; a recycled tile could keep the 1.08 focus zoom. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 hoursAdd LAN discovery and instance pickerDanilo M.4-1/+452
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 hoursAdd Foldergram API client, likes set and playlist hand-offDanilo M.3-2/+275
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 hoursAdd post parsing, URL helpers, health check and double-OK logic with testsDanilo M.5-0/+289
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 hoursAdd Android project skeleton and Docker buildDanilo M.25-0/+398
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>