Commit graph

1336 commits

Author SHA1 Message Date
Outbreak2096
8c20c57595
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (566 of 566 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2026-05-27 12:53:15 -04:00
Geekice
debc810cd3
Translated using Weblate (Italian)
Currently translated at 99.4% (563 of 566 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/it/
2026-05-27 12:53:15 -04:00
Priit Jõerüüt
19912b9e0c
Translated using Weblate (Estonian)
Currently translated at 100.0% (566 of 566 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/et/
2026-05-27 12:53:15 -04:00
danpergal84
07bddc5efa
Translated using Weblate (Spanish)
Currently translated at 100.0% (566 of 566 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2026-05-27 12:53:15 -04:00
Priit Jõerüüt
e352cce894
Translated using Weblate (Estonian)
Currently translated at 100.0% (560 of 560 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/et/
2026-05-27 12:53:15 -04:00
pavel-miniutka
88b569c156
Added translation using Weblate (Belarusian) 2026-05-27 12:53:14 -04:00
Outbreak2096
5380bc18bc
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (560 of 560 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2026-05-27 12:53:14 -04:00
danpergal84
a438733af9
Translated using Weblate (Spanish)
Currently translated at 100.0% (560 of 560 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2026-05-27 12:53:14 -04:00
ymir
a09f0ffabd
Translated using Weblate (French)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/fr/
2026-05-27 12:53:14 -04:00
opakholis
0bdbd2e84d
Translated using Weblate (Indonesian)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/id/
2026-05-27 12:53:14 -04:00
American_Jesus
c6729df112
Translated using Weblate (Portuguese)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/pt/
2026-05-27 12:53:14 -04:00
Wit Krittawit
a4789fcaca
Translated using Weblate (Thai)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/th/
2026-05-27 12:53:14 -04:00
nofkclue
0cf1ac4bb4
Translated using Weblate (German)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/de/
2026-05-27 12:53:14 -04:00
mashu
a4f393bcd9
Added translation using Weblate (Serbian) 2026-05-27 12:53:14 -04:00
Wit Krittawit
d36bb96b69
Translated using Weblate (Thai)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/th/
2026-05-27 12:53:14 -04:00
TheMatrixan
b57ec267e4
Translated using Weblate (Polish)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/pl/
2026-05-27 12:53:13 -04:00
idezentas
b5d9679a10
Translated using Weblate (Turkish)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/tr/
2026-05-27 12:53:13 -04:00
Outbreak2096
0d2321a2f1
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2026-05-27 12:53:13 -04:00
TheMatrixan
8f0da522d0
Translated using Weblate (Polish)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/pl/
2026-05-27 12:53:13 -04:00
tal_sarid
d9738a0cee
Translated using Weblate (Hebrew)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/he/
2026-05-27 12:53:13 -04:00
lednurb
9de7102896
Translated using Weblate (Dutch)
Currently translated at 89.0% (496 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/nl/
2026-05-27 12:53:13 -04:00
SimonHung
bd8dae1dae
Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2026-05-27 12:53:13 -04:00
Priit Jõerüüt
b211dc37d9
Translated using Weblate (Estonian)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/et/
2026-05-27 12:53:13 -04:00
danpergal84
c4e855b180
Translated using Weblate (Spanish)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2026-05-27 12:53:13 -04:00
North-DaCoder
371809096a
Translated using Weblate (German)
Currently translated at 100.0% (557 of 557 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/de/
2026-05-27 12:53:13 -04:00
ppskj178
e804e4a923
Added translation using Weblate (Korean) 2026-05-27 12:53:12 -04:00
idezentas
a02e8a77f1
Translated using Weblate (Turkish)
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/tr/
2026-05-27 12:53:12 -04:00
Outbreak2096
d20aa08937
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hans/
2026-05-27 12:53:12 -04:00
SimonHung
5e0ecc6101
Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/zh_Hant/
2026-05-27 12:53:12 -04:00
danpergal84
916f6afe07
Translated using Weblate (Spanish)
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/es/
2026-05-27 12:53:12 -04:00
arcker95
3bb6bdd825
Translated using Weblate (Italian)
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/it/
2026-05-27 12:53:12 -04:00
Priit Jõerüüt
555d2741ca
Translated using Weblate (Estonian)
Currently translated at 100.0% (553 of 553 strings)

Translation: Wholphin/Wholphin
Translate-URL: https://translate.codeberg.org/projects/wholphin/wholphin/et/
2026-05-27 12:53:12 -04:00
Damontecres
7bbbed877d
Update readme 2026-05-27 12:38:33 -04:00
Damontecres
33161d4d6d
Several bug fixes & minor UI changes (#1466)
## Description
### Bug fixes
- Fixes a race condition crash when configuring subtitle styling before
libmpv is initialized
- Save the clicked item position on grid pages (#1428 & #1462)
- Fix querying the server every 3 seconds for transcode reason if the
video is direct playing


### UI changes
- Makes the title on grid pages slightly smaller
- Makes adjustments to the song list item on now playing so that no
space is used if there's no artist
- Use settings icon instead of triple dots on now playing page

### Related issues
See above

### Testing
Emulator, nvidia shield & google streamer

## Screenshots
### Song list item
Before & after
<img width="199" height="119" alt="image"
src="https://github.com/user-attachments/assets/7fd3636a-d1e4-4b1f-8379-8599068d6309"
/>


## AI or LLM usage
None
2026-05-26 18:36:56 -04:00
Damontecres
8ea6bbbfca
Improvements to home page customization (#1458)
## Description
Adds a few enhancements to home page customization:
- Add option to combined continue watching & next up to split it
- Add option to continue watching and next up rows to combine them
- Add option for sorting playlist or collections
- Show suggestions (recently updated) when searching for a playlist or
collection to add
- Better handling for loading vs unsupported types for suggestions

Also, the old toggle for combining continue watching & next up in
advanced settings is removed. Now by default the rows will be combined
unless changed in the home page customization settings.

### Related issues
Closes #340
Closes #1383
Closes #1350

### Testing
Just on the emulator so far

## Screenshots
N/A

## AI or LLM usage
None
2026-05-26 13:30:00 -04:00
Damontecres
23856ffcf8
Fixes favorites page not loading (#1462)
## Description
- Fixes a bug introduced in #1453 which broke the favorite page
- Follow up to #1428 to refactor the collection folder code to hoist
state up another level
- Fixes resuming playback from series details play button

### Related issues
Fixes #1313
Fixes #1461
Follow up to #1453 & #1428 

### Testing
Emulator

## Screenshots
N/A

## AI or LLM usage
None
2026-05-25 20:05:44 -04:00
Damontecres
510160aceb
Fix issue with local trailers, cinema mode, prerolls, & next up (#1460)
## Description
Fixes an issue where local trailers wouldn't play (or show in the queue)
if Cinema Mode is enabled and the server has a preroll/intro.

Also fix building the playback queue when "Show next up" is "Never". The
queue is shown, but not automatically played and next item dialog popup
is never shown. But to indicate playback is over, the controller show.

### Related issues
Fixes #1348
Fixes #1303

### Testing
Emulator

## Screenshots
N/A

## AI or LLM usage
None
2026-05-25 16:54:58 -04:00
Damontecres
9eff22e939
Fix several issues with right-to-left locales (#1404)
## Description
Fix several issues when the current locale is right-to-left

- Fixes the backdrop dynamic colors
- Fixes mirroring of playback controls, including seeking

### Related issues
Fixes #1397
Fixes #1398

### Testing
Emulator w/ forced RTL in developer options

## Screenshots
<img width="1280" height="720" alt="rtl_backdrop Large"
src="https://github.com/user-attachments/assets/3e3b14ec-32cc-42c0-a224-d1d859a55acd"
/>
<img width="1280" height="720" alt="rtl_controls Large"
src="https://github.com/user-attachments/assets/79983bb9-e1d0-4712-a5c6-da3d0721db96"
/>


## AI or LLM usage

None
2026-05-25 13:27:34 -04:00
Damontecres
656393fa1d
Prefer thumb art for movies for Watch Next (#1456)
## Description
Prefer using thumb image types for movies when adding to Watch Next
android OS channel. The primary/poster image will be used if there is no
thumb.

### Related issues
Fixes #1425 
Fixes #1403

### Testing
Emulator, verified a movie was showing its primary image, then ran this
PR

## Screenshots
N/A

## AI or LLM usage
None
2026-05-25 13:27:24 -04:00
Damontecres
ebcc2f324a
Several small fixes (#1455)
## Description
- Fix crash on license info page for release builds (#1437)
- Fix configuring which ratings to show by default (#1407)
- When re-ordering nav drawer items, ensure the one that was just moved
is always visible (#886 )
- Fix app losing focus when switching between list layout types (#1428)
- If the version doesn't have any additional commits, don't show the git
hash info (ie `v0.6.4-0-gabc1234` shows as `v0.6.4`)
- Adds tests for Version comparisons & toString

### Related issues
See above

### Testing
Emulator

## Screenshots
N/A

## AI or LLM usage
None
2026-05-25 13:27:04 -04:00
renovate[bot]
cb853b2db8
Update dependency com.mikepenz.aboutlibraries.plugin.android to v14.2.1 (#1447) 2026-05-25 08:28:25 -04:00
Damontecres
0b450fc0ff
Remove dependency on livedata libraries (#1453)
## Description
Refactors all usages of `LiveData` into flows in keeping with best
practices. This also includes refactoring several `ViewModel`s to
combine multiple `LiveData` into a new single `StateFlow`.

There are no user facing changes

### Related issues
None

### Testing
Emulator

## Screenshots
N/A

## AI or LLM usage
None
2026-05-25 08:27:19 -04:00
Damontecres
982d9e6fe8
Add list view for libraries (#1428)
## Description
Adds an option to display libraries in a list layout

The list can be regular showing 6-7 items or compact showing ~11 items.
Can also toggle showing the details on the left side. Movies, tv shows,
& albums have type-specific layouts and other types like videos, music
videos, etc use a generic one similar to movies.

Another change is that showing the backdrop is now a separate toggle
from showing details for both grid & list layouts.

Sorting, filtering, & jumping to a letter all work as expected!

### Related issues
Closes #1101

### Testing
Emulator mostly

## Screenshots
<details><summary>Click for screenshots</summary>
<p>

### TV shows list
<img width="1280" height="720" alt="series_list Large"
src="https://github.com/user-attachments/assets/f8f9b801-e537-4cdf-b992-f2f1259457fa"
/>

### TV shows compact list
<img width="1280" height="720" alt="series_list_compact Large"
src="https://github.com/user-attachments/assets/747e5929-90d7-4d59-a179-bc3210ac01b9"
/>

### Movie list
<img width="1280" height="720" alt="movie_list Large"
src="https://github.com/user-attachments/assets/ee3e1c6c-fb25-438a-a11e-522d30fbaabf"
/>

### Album list
<img width="1280" height="720" alt="music_list Large"
src="https://github.com/user-attachments/assets/9b1f59ec-c237-4ab2-9b51-6cb519f5327c"
/>


</p>
</details> 

## AI or LLM usage
None
2026-05-24 18:07:56 -04:00
Damontecres
8177700e23
Show loading indicator when video is buffering (#1441)
## Description
Shows a loading indicator and slightly dim the screen when playback is
buffering.

Showing the indicator is delayed in case the buffering doesn't take very
long.

Dev note: the changes to `MpvPlayer` need to be ported to
wholphin-extensions as well.

### Related issues
Closes #1411

### Testing
Emulator

## Screenshots

[buffering.webm](https://github.com/user-attachments/assets/dd848696-d6de-4f68-94e4-901bb5db1185)

## AI or LLM usage
None
2026-05-24 10:11:59 -04:00
Damontecres
903c45dfb8
Support configuring interface language per user (#1406)
## Description
Adds a setting to configure the app's language/locale. It is configured
per user. This settings has no impact on audio or subtitles language
choices.

Only languages Wholphin has translations for can be used. If you would
like to contribute new translations, check out
https://translate.codeberg.org/projects/wholphin/!

Dev notes: This doesn't exactly follow Android's recommendations because
the [guidelines are for
per-app](https://developer.android.com/guide/topics/resources/app-languages)
and not users within the app.

### Related issues
Closes #513
Closes #669

### Testing
- Emulator API 34
- Nvidia shield API 30
- Fire TV OS 7 API 28

## Screenshots
<img width="1280" height="720" alt="language Large"
src="https://github.com/user-attachments/assets/bf1c0962-8a36-4012-aed9-eab564fc1114"
/>

## AI or LLM usage
None
2026-05-24 09:55:08 -04:00
Damontecres
625cdcb4a3
Fix proguard for guava cache (#1445)
## Description
r8 optimizations seemingly cause guava's LocalCache to throw an
AssertationError when evicting an entry. This PR adds a broad keep rule
for the cache package.

The crash is reproducible on a release build with a TV Season that has
25+ episodes with people in them and scrolling through the episodes. It
will crash when focusing on the ~25th episode.

### Related issues
Related to #1437 

### Testing
Emulator & nvidia shield

## Screenshots
N/A

## AI or LLM usage
None
2026-05-23 21:21:51 -04:00
Damontecres
bfb49b80be
Enable minify optimizations for release builds (#1437)
## Description
Enables minify & resource shrinking for release builds. This should
improve overall performance a bit. It also decreases the apk size by
~15%.

Also updates AGP

### Related issues
N/A

### Testing
Emulator, but needs more testing before a final release

## Screenshots
N/A

## AI or LLM usage
None
2026-05-23 14:08:38 -04:00
Damontecres
086badf2e2
Fix theme song playing over video (#1442)
## Description
There was an issue if when opening a page with theme music and quickly
changing pages, usually playback, the theme music might play on the new
page. This is because the call to stop the theme music could potentially
happen _before_ the song was loaded or had started playing.

This PR fixes this race condition by tracking the job that's fetching
the theme song and by adding a mutex to ensure the play function
completes before the stop function can begin.

### Related issues
Fixes #938

### Testing
Emulator w/ fake delay to increase the odds of the issue occurring

## Screenshots
N/A

## AI or LLM usage
None
2026-05-23 13:38:59 -04:00
Damontecres
cb704991f0
Update dependencies (#1443)
## Description
Manually update dependencies because #1408 includes the `tv-material`
update, see #1394

### Related issues
Replaces #1408
2026-05-23 13:36:40 -04:00
Damontecres
c68ab33f38
Filter out future content for recently released rows (#1436)
## Description
Don't show future content (episodes, etc) on recently released rows in
recommended tabs or home page rows.

### Related issues
Closes #262
Replaces #1262

### Testing
Emulator

## Screenshots
N/A

## AI or LLM usage
The original PR #1262 author used claude. Some of that code that was
retained in this PR was reviewed & tested.

---------

Co-authored-by: ADT95 <turner7@outlook.com>
2026-05-22 15:48:11 -04:00