Commit graph

145 commits

Author SHA1 Message Date
tapframe
4df54ab89f fix(simkl): confirm destructive library removals 2026-07-23 00:27:05 +05:30
tapframe
7fb8206107 feat(tracking): redesign tracking settings 2026-07-23 00:27:04 +05:30
tapframe
b817eb5b14 feat(simkl): explain sync cadence 2026-07-23 00:27:04 +05:30
tapframe
65817ad73b fix(simkl): separate completion from library status 2026-07-23 00:26:55 +05:30
tapframe
32449a7a15 feat(tracking): expose manual provider refresh 2026-07-23 00:26:52 +05:30
tapframe
e7349dd28f refactor(tracking): remove shared feature coupling 2026-07-23 00:26:48 +05:30
tapframe
410a9d4c4b refactor(tracking): register library read providers 2026-07-23 00:26:46 +05:30
tapframe
5bbe3b9ef0 feat(tracking): add provider-aware settings 2026-07-23 00:26:45 +05:30
tapframe
1b88c5abef feat: integrate Nuvio Engine 2026-07-20 16:50:04 +05:30
tapframe
e695b213bf Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite
# Conflicts:
#	composeApp/src/commonMain/composeResources/values/strings.xml
2026-07-19 16:01:55 +05:30
tapframe
109515f17a fix(settings): normalize section headings 2026-07-19 15:47:18 +05:30
tapframe
1e4c125ca1 feat: add separate upcoming continue watching row 2026-07-19 14:06:02 +05:30
tapframe
b55be263d9 feat(library): add sortable shelf and grid layouts 2026-07-18 20:16:05 +05:30
tapframe
9113b5567a fix(player): make forced subtitle selection audio-aware 2026-07-18 17:35:56 +05:30
tapframe
65e38b0da6 feat: add show catalog type option
Closes #1556
2026-07-18 14:17:39 +05:30
tapframe
03c6d598ba feat(player): match overlays to TV UI 2026-07-18 03:29:55 +05:30
tapframe
20d091e907 Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite 2026-07-18 02:06:23 +05:30
Nayif
77049f4e00
Merge pull request #1562 from skoruppa/modern-menu
modern floating pill navigation bar with scroll-responsive labels
2026-07-18 02:06:19 +05:30
tapframe
0cb0e20918 fix(trakt): invalidate rejected refresh tokens 2026-07-17 23:29:03 +05:30
skoruppa
e7322071ff feat: modern floating pill navigation bar with scroll-responsive labels
- New floating pill-shaped bottom nav bar
- Scroll down to collapse labels, scroll up to expand (snap animation)
- Haze blur-through effect on the pill background
- Selected tab uses accent color from theme
- Dynamic pill width: shrinks when collapsed, expands with labels
- Settings option (Android only): Adaptive, Always Expanded, Always Compact, Classic
- Classic mode preserves original flat navigation bar
- NavBarStyle syncs to cloud (ignored on iOS where LiquidGlass is used)
- iOS LiquidGlass tab bar remains untouched
- Polish translations added
2026-07-17 10:40:05 +02:00
YLaskco
f4ff269d45 Fix episode release date handling 2026-07-16 16:41:41 -04:00
tapframe
cc59387588 feat: update banner layout 2026-07-14 23:12:02 +05:30
tapframe
d9954c04e8 Refine store copy and empty states 2026-07-12 02:14:35 +05:30
tapframe
a90ee2fcfb feat: add card depth customization 2026-07-11 12:11:25 +05:30
Nayif
e0c5e31c79
Merge pull request #1257 from siriusvoid/feat/hide-parental-guide-overlay
feat: add "Content Warnings" toggle from tv version
2026-07-11 09:43:12 +05:30
tapframe
aeb5e04321 fix: show donation progress percent 2026-07-06 02:29:12 +05:30
tapframe
b3c96bd7b3 feat: sentry diagnostics 2026-07-04 14:29:45 +05:30
tapframe
0e78513031 feat: implement open downloads directory for Android and iOS 2026-07-04 00:57:17 +05:30
tapframe
bc7c79f7f7 Revert "Merge branch 'switchdb' into cmp-rewrite"
This reverts commit e883d89031, reversing
changes made to 6885bbdee7.
2026-07-01 20:34:49 +05:30
Nayif
a032bb5b2d
Merge pull request #1434 from foXaCe/feat/i18n-fr-pass7
i18n(fr): backfill missing translations + extract residual hardcoded strings
2026-07-01 14:35:51 +05:30
Stéphane
02f578a986 i18n(fr): backfill missing translations + extract residual hardcoded strings
- Backfilled 34 missing French translations (vouvoiement) for recent upstream
  features: app-store media server addons, playback engine / libmpv settings,
  donation progress, debug backend switch, terms links, original language.
- Fixed 2 residual tutoiement imperatives ("Reconstruis" -> "Reconstruisez").
- Extracted 10 hardcoded user-facing strings + 1 plural to composeResources:
  - Person detail sidebar labels (Born, Place of birth, Credits, Biography)
  - TMDB entity browse sidebar labels (Country, Type, Catalogue, About)
    + a title-count plural
  - External player subtitle overlay messages (loading / downloading)
- Key parity 1898/1898 strings, 3/3 plurals, 0 missing/orphan. Placeholders,
  vouvoiement, French typography (non-breaking spaces, Mo/Go) preserved.
2026-06-30 15:59:52 +02:00
tapframe
8a68d9e923 feat: add dominant colour bg 2026-06-27 21:01:08 +05:30
tapframe
f2eddbaf5b ref: add validation for duplicate collection 2026-06-27 15:17:44 +05:30
YLaskco
af2e8ff926 Send resolved intro/outro skip segments to external players
Adds an opt-in External Player setting that hands resolved intro and
outro skip timestamps to external players via a skip_segments intent
extra, so a supporting player can auto-skip the opening and ending the
same way the internal player already does.

Resolution reuses the existing SkipIntroRepository (IntroDB, ARM,
AniSkip, Anime-Skip), so there is no new API, key, provider, or
dependency. The toggle is off by default and sits under Forward
Subtitles in the External Player settings. Resolution is bounded by a
timeout and only runs when the setting is on; players that do not read
the extra ignore it.
2026-06-25 14:38:45 -04:00
tapframe
b9c3e62eb0 ref: adjust authscreen layout and gradients 2026-06-25 02:46:53 +05:30
tapframe
a2d3fda686 ref: reorganize settings page 2026-06-25 01:45:50 +05:30
tapframe
df8b05f1c2 Adjust App Store settings policy and copy 2026-06-24 13:22:53 +05:30
tapframe
69f0dab65e feat: local db switch for development 2026-06-23 19:43:27 +05:30
tapframe
6e815b91ed feat: libmpv engine for android 2026-06-22 20:43:12 +05:30
tapframe
85e1522712 Temporarily disable AVFoundation audio output 2026-06-22 19:31:21 +05:30
Nayif
1441797d3e
Merge pull request #1259 from WhiteGiso/pr/liquid-glass-profile-switch
feat(ios): improve liquid glass profile switching
2026-06-22 18:15:52 +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
tapframe
0645f3504e Align next up copy with TV app 2026-06-18 15:39:24 +05:30
tapframe
4a883a1add Add runtime sync backend switch 2026-06-17 23:29:00 +05:30
WhiteGiso
53d600768f
Merge branch 'cmp-rewrite' into pr/liquid-glass-profile-switch 2026-06-15 10:09:40 +02:00
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
tapframe
7cbd4503e6 Add touch gestures settings 2026-06-12 21:24:14 +05:30
tapframe
32a26951f7 Refresh watch progress when clearing CW cache 2026-06-12 20:07:28 +05:30