Repository navigation
Releases: 303inmyheart/Lowfin
Release list
Lowfin 1.2.20
1.2.20
- Limit Companion cache-update notices to one per minute during sustained updates, accumulating the intervening entry counts. Metadata and artwork processing remain immediate.
- Preserve foreground, settings and account-lifecycle guards; test sustained bursts and disabling during the notification cooldown.
1.2.19
- Removed a remaining UI-thread wait on the Companion cover-tag persistence lock when an asynchronous batch completes. Retry deadlines carry their metadata generation so stale responses cannot delay updated tags.
- Added regression coverage for completion during blocked persistence and stale batch retries. Navigation stalls were confirmed in Android input logs; this fix does not establish that every stall has the same cause.
1.2.18
- Avoid rebuilding sidebar buttons for unchanged library and Live TV availability responses. Metadata/artwork changes still update home library cards; renamed/reordered libraries still refresh navigation.
- Render ordinary home descriptions without invoking the HTML parser; preserve formatting/entities/whitespace through a bounded formatted-text cache.
- Replace per-cover GUID regex compilation with equivalent allocation-light validation for cover tags and invalidation IDs.
1.2.17
- Replace the single current-programme popup with a compact channel programme guide on long OK: now and upcoming shows, local times and day headings.
- Open programme descriptions with OK and return to the selected row; load additional entries in bounded pages with correct Previous/Next visibility.
- Add refresh/retry controls, account/dialog lifecycle guards and English/German labels. The main Live TV page remains a channel list.
1.2.16
- Long-press a Live TV channel to show its currently airing programme, local start/end times, episode title and description in a native Lowfin dialog. Short press still starts playback.
- Hide the sidebar Live TV entry when the signed-in user has no available channels. Probe one channel in the background and retain the last successful result during temporary server failures.
- Add English/German loading, unavailable and empty-guide messages; preserve compact dialog sizing and scrolling.
Built and signed locally; no GitHub Actions build was used.
Validation: 472 client tests passed, release lint passed, and the existing signing certificate was preserved. APK and SHA-256 checksum are attached.
Lowfin 1.2.15
Configurable playback and banner options
- Maximum video frame rate: automatic, 30 or 60 FPS.
- Maximum audio channels: automatic, stereo, 5.1 or 7.1; enabled stereo downmix retains priority.
- Maximum trailer resolution: automatic, 480p, 720p, 1080p or 2160p, subject to provider/device support.
- Subtitle language independent of the app language.
- Banner automatic rotation switch and configurable interval.
- Seek start step and optional hold acceleration; seek buttons reflect the selected step.
Existing defaults are preserved. Settings use consistent control/helper spacing, English and German labels, and existing focus restoration.
Locally built release with tests, release lint and localization audit; no GitHub Actions build. Companion 0.6.0 remains unchanged and compatible.
Lowfin 1.2.14
Extended Companion cover tags
Supports resolution, HDR variants, 3D, video/audio formats and compact language/VOST labels from Companion 0.6.0. Monochrome pills remain aligned to card frames, with a bounded area and overflow indicator. Server category selection, the local hide-tags switch and the local HDR setting are respected. Stereo defaults off.
English is the default language; German remains available. Changelog: https://github.com/303inmyheart/Lowfin/blob/main/CHANGELOG.md
Validation: 448 client tests, release lint, English coverage audit and original signing certificate. Locally built; no GitHub Actions run. No TV installation performed.
Lowfin 1.2.13
100% AI-generated.
Locally built release; no GitHub Actions build was run.
- Complete client source through 1.2.13, English by default with German selectable.
- Native low-end Android TV UI, configurable caching, server Companion integration, ratings, recommendations and launcher channels.
- Optional screensaver and discovery banner with separate library selections; genre icons and compact dialogs.
- Episode caption centered beneath the proportional series logo in the player, including a centered title fallback.
- Recent safe database/tag and idle-timer optimizations are included.
Validation: 446 client tests, release lint and original APK signing certificate verified. Download the APK and SHA-256 checksum below. This build was not installed on any TV.
Lowfin 0.7.16
Keeps Android TV recommendation channels stable when their source film changes.
Holding OK on a season poster now opens a watched/unwatched action for that whole season. Successful server changes refresh the season card and locally cached episode states and resume positions.
- Existing channel ownership is checked before updating; a zero update count no longer causes a replacement channel that loses launcher activation.
- Missing saved channel IDs are recovered using the stable internal provider key.
- Publishing explicitly notifies channel-list, individual-channel and channel-program observers, including refreshes with unchanged headings.
- Marking media watched/unwatched requests fresh server recommendations for the launcher channels.
- Regression coverage verifies new recommendations, preserved channel IDs and visibility, zero update counts and saved-ID recovery. Sidebar expectations now reflect the removed Pin genres entry.
Projectivy Launcher compatibility is the reported target. Its end-to-end reaction to a newly watched film still needs confirmation; no launcher preferences are modified by this update.
Lowfin 0.7.15
Removes the redundant Pin genres entry from the left sidebar. Genre row configuration remains available in Settings.
Validated with debug/release lint and a signed release build preserving the existing update certificate.
Lowfin 0.7.14
The bottom-left status now distinguishes an initial cache build from refreshing existing cached data. A refresh explicitly states that the cache remains available, rather than showing a per-run counter starting from zero. Detailed progress remains in Settings and the background notification.
Validated with unit/UI tests, debug/release lint and a signed release build preserving the existing update certificate.
Lowfin 0.7.13
Fixes slow library artwork loading and misleading cache startup status.
- Persistent covers are reused across app restarts and updates, including existing HD precache sizes.
- Disk reads and decoding no longer wait behind slow background image downloads. Matching downloads are shared and artwork requests have bounded timeouts.
- Startup restores the saved cache status or existing artwork count. Scheduled metadata refresh reuses the cache; an interrupted first metadata scan may retry on the next launch.
- Visible artwork uses least-recently-used eviction when the configured cache budget is full.
Validation: 185 passing tests, debug/release lint, signed release APK with the existing update certificate. Targeted Android 11 HD TV testing confirmed 27,898 cached images (524 MB) survived both the update and a full app-process restart; cached library covers rendered. This does not represent a full playback/device compatibility test.
Lowfin 0.7.12
Autoplay: Beim automatischen Wechsel zur nächsten Serienfolge bleiben Playleiste, Titel und Logo ausgeblendet. Die Fernbedienung öffnet die Steuerung weiterhin wie gewohnt. Beim manuellen Start und manueller Wahl der nächsten Folge bleibt die bisherige Anzeige erhalten.
Auch nach erneutem Puffern poppt die Steuerung nicht mehr automatisch auf.
Dezente Genre-Angaben: Bis zu drei Genres in der vorhandenen Metadatenzeile der Empfehlungs- und Genreleisten, ohne zusätzliche Höhe. Fortsetzen und Next up bleiben ausgenommen. Einheitliche kompakte Genrezeile auf der Detailseite.
180 Tests bestanden, Debug-/Release-Lint ohne Fehler. Signierte Release-APK mit bestehendem Update-Zertifikat. Genre-Anzeige in der HD-Vorschau geprüft; Autoplay am TV muss noch getestet werden.
Lowfin 0.7.11
Seitenleiste: Der graue Hintergrund folgt jetzt ausschließlich dem Fernbedienungs-Cursor. Start bzw. der aktuelle Bereich behält keinen zweiten grauen Auswahlkasten mehr.
Regressionstest für Start → Suche → Start. Signierte Release-APK mit demselben Update-Zertifikat wie bisher.
Seekbar: deutlich sichtbarer Fokus durch Akzentrahmen, getönten Hintergrund, größere weiße Positionsmarkierung und kräftigere Leiste. Gilt auch für den nativen Trailer-Player.
Trailer: Nach dem Ende automatisch zurück zur Detailseite.
Größere Zeitangaben über der Seekbar (15sp) und hellere Endzeitanzeige.
180 Tests bestanden, Debug-/Release-Lint ohne Fehler. Gerätetest steht aus.