Commit graph

1284 commits

Author SHA1 Message Date
VenusIsJaded
fca06204e0 fix(details): keep addon IMDb rating instead of TMDB score
When a metadata addon (e.g. aiometadata) supplies a genuine IMDb rating,
the TMDB enrichment on the details page was overwriting it with TMDB's
vote_average because the copy() preferred enrichment.rating over the
existing value. This made the IMDb placeholder display the TMDB score on
mobile, even though the addon provided IMDb ratings (the TV version was
already correct).

Invert the precedence so the addon-provided imdbRating is kept and TMDB's
vote_average is only used as a fallback when no rating was supplied.

Fixes #1377
2026-06-22 06:37:24 -05:00
tapframe
50a923d056 ref: remove entity outer box 2026-06-21 13:10:09 +05:30
tapframe
bdffcbb8bf Refine wide cast loading layout 2026-06-21 13:06:14 +05:30
tapframe
f4a2ce8963 Add wide cast and production layouts 2026-06-21 12:57:29 +05:30
tapframe
6c9b926b0e bump version 2026-06-20 22:23:13 +05:30
tapframe
41b732bbe5 fix(plugin): isolate runtime from default dispatcher 2026-06-20 22:16:43 +05:30
tapframe
997f071c8c bump version 2026-06-20 19:42:32 +05:30
tapframe
c3da1cf36f Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite 2026-06-20 19:15:50 +05:30
Nayif
f6ce3f63d4
Merge pull request #1364 from skoruppa/cmp-rewrite
original audio parity with TV and fix for debrid instant download + Polish Translation Update
2026-06-20 18:16:18 +05:30
tapframe
3525673e70 Soften detail hero bottom gradient 2026-06-20 17:44:48 +05:30
tapframe
3fcf1aa752 Fix local continue watching removal with Trakt progress 2026-06-20 16:23:21 +05:30
tapframe
18305062a1 fix: adjust buffer duration 2026-06-20 15:41:18 +05:30
skoruppa
d52491d0b8 Merge remote-tracking branch 'upstream/cmp-rewrite' into cmp-rewrite
# Conflicts:
#	composeApp/src/commonMain/kotlin/com/nuvio/app/App.kt
2026-06-19 21:54:07 +02:00
tapframe
3adee555c5 feat: add torrent not supported message 2026-06-19 17:09:30 +05:30
tapframe
6a57e59bfe refactor: update Coil dependencies to exclude skiko module 2026-06-19 16:29:25 +05:30
tapframe
963ace0211 update dependencies. 2026-06-19 16:18:32 +05:30
Nayif
264df05335
Merge pull request #1367 from foXaCe/feat/i18n-fr-vouvoiement
i18n(fr): convert French translations from tutoiement to vouvoiement
2026-06-19 01:46:24 +05:30
Stéphane
654e951259 i18n(fr): convert French translations from tutoiement to vouvoiement
- Rewrote all user-facing French strings from informal address (tu/ton/ta/
  tes, 2nd-person-singular imperatives) to formal vouvoiement (vous/votre/
  vos, 2nd-person-plural imperatives). 171 strings updated.
- Past participles and adjectives kept singular (politeness "vous"):
  "Vous avez ete deconnecte", "Vous etes seul responsable".
- Setting behavior descriptions written in 3rd person ("Affiche les
  badges...") left unchanged: they describe the option, not the user.
- Key parity unchanged, placeholders (%1$s, \n), HTML entities and French
  typography (apostrophes ', non-breaking spaces) preserved.
2026-06-18 21:38:18 +02:00
tapframe
aa2a074578 Fix profile-scoped playback sync leaks 2026-06-19 00:05:14 +05:30
skoruppa
a764046e29
Merge branch 'NuvioMedia:cmp-rewrite' into cmp-rewrite 2026-06-18 14:48:06 +02:00
skoruppa
311da87592 feat: add Original Audio language option with TMDB enrichment
- Add AudioLanguageOption.ORIGINAL to preferred audio language picker
  (primary and secondary) with hint 'Requires TMDB enrichment'
- Resolve content original language from meta.language with fallback
  to country-based inference (countryToLanguageCode mapping)
- Pass contentLanguage through PlayerLaunch, PlayerScreen, and
  StreamLinkCache for reuse on subsequent playback sessions
- Add Device Language as default app language option (resets to system
  locale instead of forcing English)
- Add all missing Polish translations (417 strings)
- Add LanguageSelectionOption.description support in settings dialogs
2026-06-18 14:46:31 +02:00
tapframe
4a013678f8 fix: update donations api 2026-06-18 17:46:34 +05:30
skoruppa
8039c32a70 fix: resolve debrid instant streams before download/copy link
Long-press menu was blocked for debrid instant streams because
playableDirectUrl is null until resolved. Now the menu opens for
any stream that has a direct URL or is a debrid candidate.

Download and Copy Link actions now resolve the debrid stream URL
via DirectDebridPlaybackResolver before enqueuing/copying, matching
the same flow used by the player.
2026-06-18 13:54:59 +02:00
tapframe
20620dc400 Fix mobile continue watching backfill 2026-06-18 17:14:54 +05:30
tapframe
938f871a91 Fix iOS player engine volume overrides 2026-06-18 16:22:55 +05:30
tapframe
78d4ebf229 Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite 2026-06-18 16:12:37 +05:30
Nayif
2573d0d0e6
Merge pull request #1340 from anikettuli/fix/subtitle-addon-tv-series-alias
fix(player): apply tv/series alias and singular resource name in subtitle addon matching
2026-06-18 16:08:00 +05:30
tapframe
0645f3504e Align next up copy with TV app 2026-06-18 15:39:24 +05:30
Nayif
2b885d7001
Merge pull request #1278 from luqmanfadlli/fix-ios-popup-trailer
fix(trailer): resolve iOS popup dimensions and polyfill native playback controls
2026-06-18 15:06:30 +05:30
Nayif
c802d8b0c6
Merge pull request #1348 from Blackspirits/patch-2
Change 'Avançado' to 'Avançadas' in strings.xml
2026-06-18 15:04:57 +05:30
Nayif
cb48f1850c
Merge pull request #1360 from danielz1z/fix/catalogroute-targetkind-navtype
fix(ios): serialize catalog route target kind
2026-06-18 15:04:43 +05:30
tapframe
232703c3cd Read sync backend credentials from env 2026-06-18 14:14:55 +05:30
daniel
a65fd5dc88 fix(ios): serialize catalog route target kind
Store CatalogRoute.targetKind as CatalogTargetKind.name and convert it back in toCatalogTarget(). This keeps the typed route argument on a primitive String boundary so Compose Navigation does not require a custom enum NavType during graph construction.
2026-06-18 06:33:51 +02:00
tapframe
4a883a1add Add runtime sync backend switch 2026-06-17 23:29:00 +05:30
Luqman Fadlli
efe032d87f
Merge branch 'NuvioMedia:cmp-rewrite' into fix-ios-popup-trailer 2026-06-17 15:56:07 +07:00
Aniket Tuli
1b7c9d6481 fix: apply tv/series alias and singular resource name to subtitle addon matching
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-17 00:13:36 -07:00
tapframe
6885bbdee7 update ProGuard rules 2026-06-15 01:16:49 +05:30
tapframe
521ba187f4 bump version 2026-06-15 00:29:47 +05:30
BlackSpirits
4e46079390
Change 'Avançado' to 'Avançadas' in strings.xml 2026-06-14 20:53:50 +02:00
Nayif
aaa3ab9f64
Merge pull request #1322 from foXaCe/feat/extract-hardcoded-strings-pass6
i18n(fr): full FR parity + extract residual hardcoded strings (pass 6)
2026-06-15 00:02:56 +05:30
Nayif
f5a675d864
Merge pull request #1336 from halibiram/fix/hls-playback-unrecognized-format
fix(player): resolve unrecognized input format during HLS stream playback
2026-06-15 00:01:50 +05:30
Nayif
f06650b89f
Merge pull request #1345 from halibiram/fix/jni-local-ref-overflow
build: update quickjs-kt library AAR with JNI optimizations and leak …
2026-06-15 00:01:23 +05:30
BlackSpirits
2dd48d5393
fix(l10n): update Portuguese (Portugal) mobile strings 2026-06-14 17:30:50 +02:00
tapframe
2461ebf594 Fix collection catalog show more routing 2026-06-14 20:56:21 +05:30
tapframe
1a2eca2341 Share stream source pipeline and cards 2026-06-14 19:43:30 +05:30
tapframe
485e4e81e9 Remove stream warmup dead code 2026-06-14 18:58:37 +05:30
halibiram
94e3cf8acd build: update quickjs-kt library AAR with JNI optimizations and leak fixes 2026-06-14 13:19:41 +03:00
halibiram
b694fb3e72 fix(player): resolve unrecognized input format during HLS stream playback 2026-06-13 19:39:54 +03:00
tapframe
6188f700d6 Fix catalog pagination 2026-06-13 19:52:42 +05:30
Stéphane
75f9b46818 i18n(fr): full FR parity + extract residual hardcoded strings (pass 6)
Rebased on current cmp-rewrite, then reconciled and extended.

- Restored full EN<->FR parity: 1854/1854, 0 missing/orphan/duplicate keys.
- Reconciled post-rebase drift from the desktopweb revert: removed 5 FR
  orphans (desktop navigation, about version format) and the now-dead
  desktop P2P string + localizedP2pNotAvailableDesktop() helper whose call
  site was deleted upstream; added the 2 new touch-gestures translations.
- Extracted 11 residual hardcoded user-facing strings via stringResource and
  the LocalizedUiText.resourceString / localizedString(StringResource)
  patterns:
    - 9 Trakt library-sync error messages (TraktLibraryRepository)
    - P2P unknown torrent error (P2pStreamingEngine.android)
    - "More actions" detail action-menu contentDescription (DetailActionButtons)
- FR aligned with existing keys for consistency (request failed, rate limit,
  watchlist). Technical terms kept (Trakt, P2P, badge, URL). Tutoiement,
  apostrophes typographiques. MPVKit submodule pointer untouched.
2026-06-13 08:47:12 +02:00