Ray
3c11d4ba12
Fix some issues with restoring focus between pages ( #613 )
...
## Description
Yet more focus issue fixes:
- Restore focus when going back to home page from a later row
- Don't jump to episode row when going back to series overview (such as
from a person page)
This PR also changes how backgrounding the app during playback works.
Now the only goes back to the previous page when the app comes back to
the foreground. This helps with focusing back on the page properly.
There's also a bit more clean up performed.
2026-01-01 14:37:32 -05:00
Ray
26a913b05e
Support resolution switching ( #597 )
...
## Description
Adds a settings for automatic resolution switching. When enabled, the
app tries to output content at the video stream's resolution.
For example, if playing 1080p content on a 4K TV, the actual output by
the Android TV device will be 1080p.
This works in hand-in-hand with automatic refresh rate switching. So
enabling both allows for the output to match both refresh rate and
content resolution. Outputting the best refresh rate is preferred over
best resolution.
Also, shows the current display mode in the playback debug info.
### Related issues
Closes #428
Fixes #531
2025-12-31 17:11:30 -05:00
Ray
38697b011d
Switch from synchronized mutations to copy-on-write ( #609 )
...
## Description
Instead of synchronizing all access to event observers, use a
`CopyOnWriteArrayList`. This means sending events doesn't need to lock.
2025-12-31 16:10:29 -05:00
Ray
7e5a491d8e
Allow trusting user provided SSL/TLS certificates ( #608 )
...
## Description
Allow for trusting user added certificates
### Related issues
Closes #254
2025-12-31 14:13:07 -05:00
Ray
a5a7ed97b7
A few more UI tweaks ( #603 )
...
## Description
- Use series poster for seasons without a poster
- Larger logo on playback overlay
- Fix an issue where corner text on card on the home page would not
properly update
### Related issues
Closes #590
Closes #601
Fixes
https://github.com/damontecres/Wholphin/pull/586#issuecomment-3698613927
2025-12-30 18:39:48 -05:00
Damontecres
2b68b91d9e
Fix invalid string characters
2025-12-30 13:49:20 -05:00
lazigeri
b62cc84bf9
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
lazigeri
bad567f2bb
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
SimonHung
d2e8440a03
Translated using Weblate (Chinese (Traditional Han script))
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2025-12-29 20:39:11 +00:00
lazigeri
0e0e0b12eb
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
lazigeri
716d81f0d2
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
SimonHung
b9a4bbd3f3
Translated using Weblate (Chinese (Traditional Han script))
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2025-12-29 20:39:11 +00:00
jab3
f463e707cc
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2025-12-29 20:39:11 +00:00
butterflyoffire
ab9dbed022
Translated using Weblate (Kabyle)
...
Currently translated at 14.9% (47 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/kab/
2025-12-29 20:39:11 +00:00
butterflyoffire
1c92934b33
Added translation using Weblate (Kabyle)
2025-12-29 20:39:11 +00:00
opakholis
5a8dc23989
Translated using Weblate (Indonesian)
...
Currently translated at 97.7% (308 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/id/
2025-12-29 20:39:11 +00:00
oyvhov
c74c40dfd8
Translated using Weblate (Norwegian Nynorsk)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/nn/
2025-12-29 20:39:11 +00:00
lazigeri
f240498aaa
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
texxlan
8f923c187f
Translated using Weblate (German)
...
Currently translated at 87.9% (277 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/de/
2025-12-29 20:39:11 +00:00
lazigeri
a2e72ddf45
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
jab3
5c9ca3b24a
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2025-12-29 20:39:11 +00:00
texxlan
295faf51aa
Translated using Weblate (German)
...
Currently translated at 77.1% (243 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/de/
2025-12-29 20:39:11 +00:00
lazigeri
6af8204402
Translated using Weblate (Hungarian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
OmriKumri
dda8baa46d
Translated using Weblate (Hebrew)
...
Currently translated at 10.7% (34 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/he/
2025-12-29 20:39:11 +00:00
OmriKumri
6f5e0d82d1
Translated using Weblate (Hebrew)
...
Currently translated at 6.6% (21 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/he/
2025-12-29 20:39:11 +00:00
RabSsS
6cb320c43f
Translated using Weblate (French)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/fr/
2025-12-29 20:39:11 +00:00
Outbreak2096
a2535b098d
Translated using Weblate (Chinese (Simplified Han script))
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2025-12-29 20:39:11 +00:00
adambibor
aad81f85c9
Translated using Weblate (Hungarian)
...
Currently translated at 99.3% (313 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
lazigeri
8ee6b9d8b5
Translated using Weblate (Hungarian)
...
Currently translated at 99.3% (313 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
arcker95
3cd26759f4
Translated using Weblate (Italian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/it/
2025-12-29 20:39:11 +00:00
Priit Jõerüüt
0ccdf391de
Translated using Weblate (Estonian)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/et/
2025-12-29 20:39:11 +00:00
American_Jesus
8d4fcb377d
Translated using Weblate (Portuguese)
...
Currently translated at 100.0% (315 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/pt/
2025-12-29 20:39:11 +00:00
lazigeri
dfa1ba079c
Translated using Weblate (Hungarian)
...
Currently translated at 81.5% (257 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
lazigeri
ff8a9a7125
Translated using Weblate (Hungarian)
...
Currently translated at 78.7% (248 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/hu/
2025-12-29 20:39:11 +00:00
lazigeri
225b3c0455
Translated using Weblate (German)
...
Currently translated at 76.8% (242 of 315 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/de/
2025-12-29 20:39:11 +00:00
SimonHung
1289bed0c4
Translated using Weblate (Chinese (Traditional Han script))
...
Currently translated at 88.5% (278 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2025-12-29 20:39:10 +00:00
oyvhov
955d577624
Translated using Weblate (Norwegian Nynorsk)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/nn/
2025-12-29 20:39:10 +00:00
SimonHung
76db702564
Translated using Weblate (Chinese (Traditional Han script))
...
Currently translated at 87.2% (274 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2025-12-29 20:39:10 +00:00
oyvhov
dbe8074997
Translated using Weblate (Norwegian Nynorsk)
...
Currently translated at 8.2% (26 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/nn/
2025-12-29 20:39:10 +00:00
Outbreak2096
05fffe63a2
Translated using Weblate (Chinese (Simplified Han script))
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2025-12-29 20:39:10 +00:00
arcker95
7930b1d4d0
Translated using Weblate (Italian)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/it/
2025-12-29 20:39:10 +00:00
American_Jesus
ca3c5e8de9
Translated using Weblate (Portuguese)
...
Currently translated at 100.0% (314 of 314 strings)
Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/pt/
2025-12-29 20:39:10 +00:00
Ray
e3fa45d12f
Trigger tv guide scroll animation during key presses ( #595 )
...
## Description
Instead of triggering the tv guide scroll animation during composition,
do it during key presses. This fixes an edge case that crashes the main
thread when returning the guide but the underlying UI data structures
haven't been updated.
### Related issues
Fixes #592
2025-12-29 15:39:07 -05:00
Ray
243e08b635
Some minor optimizations to improve UI speed ( #593 )
...
## Description
Many tiny changes that improve UI rendering speed and reduces
recompositions
Still plenty of room for improvement though.
2025-12-29 15:36:05 -05:00
Ray
622a99631b
Fix movie page library & collection tabs not updating ( #594 )
...
## Description
Ensures the tabs on movie page use separate view models so the data
isn't shared between them.
### Related issues
Fixes #591
2025-12-29 15:35:42 -05:00
Ray
aa194f5a2d
Fix duplicates being added to Android TV watch next channel ( #588 )
...
## Description
Fixes the logic for determining which items need to be added to the
watch next channel row
Also adds some code to clean up existing duplicates. This code can be
removed around the next release.
Adds a channel to the home screen for recently added media. This is
needed to ensure full integration with the OS to allow toggling off any
of the Wholphin channels including watch next.
### Related issues
#372 introduced the bug
Fixes #587
2025-12-28 17:14:14 -05:00
Ray
ad64f9a136
Minor UI tweaks ( #586 )
...
## Description
- Show unwatched counts on the cards in the latest rows instead of child
count, which is more in line with the web UI & official app
- Show exact runtime on the overview dialog for each version
- Don't show controls after clicking up next
### Related issues
Closes #431
2025-12-27 15:59:51 -05:00
Ray
9ae4965c2a
Add resume/continue watching items to Android TV watch next row ( #372 )
...
## Details
Adds resume and continue watching items for the logged in user to the
Android TV OS level watch next "channel"
(https://developer.android.com/training/tv/discovery/watch-next-add-programs ).
## Issues
Closes #206
Related to #581
2025-12-27 15:40:45 -05:00
Ray
639ce0de71
Don't flash previous app content when resuming app & auto sign-in is off ( #585 )
...
## Description
When the app is put into the background with auto sign-in disabled, it
will remove the current page and show a loading indicator. This way when
the app is resumed, the previous content won't flash on screen for a
split second.
The above should technically fix #584 on its own, but as additional safe
guide, this PR also makes sure the `ApiClient` is configured before
trying to create image URLs.
### Related issues
Fixes #584
2025-12-27 15:13:45 -05:00
Ray
494ff07b72
Fix smart & default subtitle selection logic ( #579 )
...
## Description
Fixes the logic for subtitle selection when using `Smart` or `Default`
server modes. Also takes into account unknown languages.
This is heavily inspired by [the server selection
logic](https://github.com/jellyfin/jellyfin/blob/release-10.11.z/Emby.Server.Implementations/Library/MediaStreamSelector.cs ).
For better or for worse, Wholphin implements this client side.
### Related issues
Fixes #570
2025-12-27 14:22:40 -05:00