Commit graph

549 commits

Author SHA1 Message Date
Stéphane
2d59ae4593 fix(i18n): correct doubled '%' rendering in FR download progress
`updates_downloading_progress` in values-fr/strings.xml used `%1$d%%` —
Compose Multiplatform Resources does NOT interpret `%%` as an escape
for a literal `%`. The runtime substitutes `%1$d` with the integer arg
and leaves the rest of the string verbatim, so the user sees
`Téléchargement 26%%` instead of `Téléchargement 26 %`.

Same change applied to two adjacent FR keys that already only had a
single trailing `%` (no doubled bug), but now also use NBSP (U+00A0)
before the symbol to match French typography:

- `streams_resume_from_percent`: `Reprendre depuis %1$d%` → `... %1$d %`
- `settings_playback_threshold_percentage_value`: `%1$s%` → `%1$s %`

EN strings keep `Downloading %1$d%` / `Resume from %1$d%` / `%1$s%`
(English convention: no space before `%`).
2026-05-11 19:24:30 +02:00
Mohamed Isa
9df8db91ff Double tap on search tab to focus on search input 2026-05-10 18:24:31 +03:00
tapframe
95708b9b79 ref: publish search catalogs as they arrive 2026-05-10 13:55:24 +05:30
tapframe
5cdda57913 feat; option to hide catalog underline 2026-05-10 13:47:36 +05:30
tapframe
46a82dce9a Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite 2026-05-10 12:36:18 +05:30
tapframe
38c882980c feat: adding attributions page 2026-05-10 12:36:15 +05:30
Muhammed Nayif Rahman
cbac0cf75a
Merge pull request #994 from foXaCe/fix/coil-svg-decoder
fix(image): register SvgDecoder so SVG logos actually render
2026-05-10 12:34:53 +05:30
Muhammed Nayif Rahman
920a22631c
Merge pull request #1010 from Pupon11/cmp-rewrite
czech language
2026-05-10 12:34:03 +05:30
tapframe
c477e7e217 ref: homescreen now treats collections as a valid content 2026-05-10 10:17:02 +05:30
tapframe
b3a1589296 feat: added hold, hover and release to select faeture in profile switch bubble 2026-05-10 10:11:51 +05:30
tapframe
c8c1dea761 ref: adjust trakt episode remapping 2026-05-10 09:36:49 +05:30
Guilherme Lima Pereira
5623cd99c2 fix(trakt): replace invalid RegexOption.DOT_MATCHES_ALL with inline flag
RegexOption.DOT_MATCHES_ALL is not available in Kotlin Common (KMP).
Replaced with inline (?s) flag to fix commonMain compilation.
2026-05-09 17:37:32 -03:00
Guilherme Lima Pereira
1fa8456979 feat(settings): add Continue Watching sort mode setting
Port of NuvioMedia/NuvioTV#1704.

Adds a Sort Order setting to the Continue Watching section with two modes:
- Default: sort all items by most recently watched
- Streaming Style: released/in-progress items first (by recency), unaired
  next-up items pushed to the end sorted by ascending air date
2026-05-09 17:37:19 -03:00
Pupon11
d55269e8d3
Add Czech language support to AppLanguage enum 2026-05-09 18:44:03 +02:00
Pupon11
c8eb59cb13
Add Czech locale to locale_config.xml 2026-05-09 18:39:49 +02:00
Pupon11
5a8c6ccb82
Update print statement from 'Hello' to 'Goodbye' 2026-05-09 18:26:15 +02:00
tapframe
cf1bd1613b ref: adjust the search screen empty state ui 2026-05-09 01:27:40 +05:30
tapframe
1a0738551f ref: amoled to keep default surface theming 2026-05-09 01:20:36 +05:30
tapframe
daedf05ea5 feat: support for trakt library items removal from library screen
fixes #962
2026-05-09 01:18:21 +05:30
tapframe
951cb8f201 fix: search screen sticky header being clickable
fixes #969
2026-05-09 01:06:22 +05:30
tapframe
a6f8041c9e fix: volume/brightness gesture triggering when hold to speed is active
Fixes #992
2026-05-09 01:02:13 +05:30
tapframe
4ca66bc385 ref: remove account deletion button 2026-05-09 00:59:15 +05:30
tapframe
a3c6f8603e fix: mobile collection changes overriding tv follow home layout setting 2026-05-09 00:50:02 +05:30
tapframe
c16711ebb8 feat: adding seperate preference key for collections 2026-05-09 00:46:55 +05:30
tapframe
0ce89650c2 fix: stripping off parameters after manifest.json 2026-05-09 00:28:36 +05:30
tapframe
d342959493 fix(ios): gif causing glithces in liquid glass bar 2026-05-09 00:28:06 +05:30
tapframe
7290158c53 fix(ios): trakt date parsing logic causing old shows to appear first cw section 2026-05-09 00:27:34 +05:30
Stéphane
d303ac48af fix(image): register SvgDecoder so SVG logos actually render
Adds the coil-svg KMP module dependency and registers SvgDecoder.Factory()
on the singleton ImageLoader in App.kt. coil-svg was never declared in
libs.versions.toml, so SVG payloads silently fell through Coil's decoder
chain and ended up as empty ImageDecoderException swallowed by AsyncImage.

Coil 3.x's coil-svg is a Kotlin Multiplatform module, so registering the
factory in commonMain covers Android and iOS in one place.

Affects:
- TMDB network/channel logos (TMDB serves a mix of PNG and SVG)
- Stremio addon manifests with an SVG `logo` field
- Custom artwork URLs in the collection editor that happen to be SVG

Mirrors the equivalent fix in NuvioTV (PR #1772).
2026-05-08 19:41:54 +02:00
tapframe
2db039e249 feat: adding search option on settings screen 2026-05-08 20:15:43 +05:30
Muhammed Nayif Rahman
11a1cf7ba9
Merge pull request #961 from paregi12/master
feat: add followRedirects support to httpRequestRaw and PluginRuntime
2026-05-07 18:38:05 +05:30
Muhammed Nayif Rahman
abe43d2d8d
Merge pull request #968 from DeadGazeS/changes-to-next-episode-threshold-and-auto-select-timeout
Changes to next episode threshold & auto-select timeout settings
2026-05-07 18:37:51 +05:30
paregi12
b5b1afce8d
Merge branch 'NuvioMedia:cmp-rewrite' into master 2026-05-07 15:08:22 +05:30
tapframe
2fa918fe44 feat: add support for custom avatar url 2026-05-07 13:14:19 +05:30
tapframe
81babba3ed feat: episode ratings api 2026-05-07 02:01:11 +05:30
tapframe
1e75f416e4 feat: adding retry logic to library 2026-05-07 01:33:37 +05:30
Alex Schwemler
f9bc1e4572 feat: changed localization for "settings_playback_minutes_value", "settings_playback_threshold_percentage_value", and "settings_playback_timeout_seconds" to handle new rules better 2026-05-06 20:53:49 +02:00
Alex Schwemler
adfe46e3ed feat: changed thresholdPercentage & thresholdMinutesBeforeEnd values to be more aligned with Tv version + added 0 minutes & 0% option, so auto-select starts at the end of the episode 2026-05-06 20:53:32 +02:00
Alex Schwemler
7c0994d957 chore: changed "sliderVal" to "sliderValue" for better readability 2026-05-06 20:50:29 +02:00
Alex Schwemler
064a7ccb70 feat: improved slider behavior, precision, and UI consistency 2026-05-06 20:49:23 +02:00
Alex Schwemler
8e201a6986 feat: added ValueBox composable for easier readability and more consistent UI 2026-05-06 20:41:45 +02:00
Alex Schwemler
939fc56ae8 feat: added reusable slider step functions 2026-05-06 20:38:20 +02:00
tapframe
5a0b623773 ref: add collections support to local account data cleaner 2026-05-06 23:46:38 +05:30
tapframe
b293157fee ref: add season/episode number in downloads 2026-05-06 21:00:51 +05:30
paregi12
79a4f08f36 feat: add followRedirects support to httpRequestRaw and PluginRuntime 2026-05-06 20:11:29 +05:30
tapframe
eee6d1a2a8 ref(ios): implement native tab visibily change 2026-05-06 20:07:01 +05:30
tapframe
5926f239e3 update strings 2026-05-06 19:57:12 +05:30
tapframe
38a786850c ref(ios): native tab to use app icons and avatars 2026-05-06 19:39:06 +05:30
tapframe
8b2a635174 feat(ios): ios native navbar 2026-05-06 19:20:32 +05:30
tapframe
b3ed47732a refactor: update continue watching thumbnail preference logic 2026-05-06 18:16:27 +05:30
tapframe
e2bf6332b2 feat: hide unreleased content 2026-05-06 16:01:27 +05:30
tapframe
d4878dbd2e ref: cw optimizations to be in parity with tv 2026-05-06 15:23:38 +05:30
tapframe
2af53f416d feat: blur unwatched episode 2026-05-06 14:31:13 +05:30
tapframe
55b97d97ad feat: trakt library source option to switch between trakt/nuvio library 2026-05-06 13:52:49 +05:30
tapframe
d00aba86af feat: adding trakt watchprogress option to choose between trakt/nuvio as preferred 2026-05-06 13:28:43 +05:30
tapframe
06553b9b26 ref: add submit intro button to top player controls 2026-05-05 20:43:40 +05:30
Muhammed Nayif Rahman
8dd4fb0589
Merge pull request #917 from KevinRouchut/cmp-rewrite
fix: update French strings for clarity and consistency
2026-05-05 13:49:31 +05:30
Muhammed Nayif Rahman
77d5edb07c
Merge pull request #929 from mbpictures/feat/german
feat: add German
2026-05-05 13:44:04 +05:30
tapframe
b941717dd9 fix: adjust screen awake behaviour when playback error throws
fixes #877
2026-05-05 13:29:38 +05:30
tapframe
f7e9778ca4 feat: add error message for magnets
fixes #899
2026-05-05 13:22:47 +05:30
tapframe
1af3cfeded feat: masking api keys
Fixes #901
2026-05-05 13:19:34 +05:30
tapframe
42247c1d57 ref(folder): remove trailing (none) when no genre is set 2026-05-05 13:09:48 +05:30
tapframe
17b1b46164 ref(settings): save scrollstate 2026-05-05 13:04:51 +05:30
tapframe
b2df0dfd91 refactor: clickable condition in HeroContentBlock 2026-05-05 12:49:53 +05:30
tapframe
d5b6152c39 ref: modify strings 2026-05-05 12:46:09 +05:30
tapframe
0b824ff32a feat: Add CustomDefaultTrackNameProvider 2026-05-05 12:17:50 +05:30
tapframe
fa7c8068b3 ref: increase watch threshold 2026-05-05 12:06:14 +05:30
Marius Butz
df4bc32bf1 add intro db translations 2026-05-04 13:03:19 +02:00
Marius Butz
cf15e2008b Merge branch 'cmp-rewrite' into feat/german 2026-05-03 23:09:47 +02:00
tapframe
d433a5cab4 update quick-js aar 2026-05-04 01:19:51 +05:30
Marius Butz
d64faa692f add german to language picker 2026-05-03 12:13:41 +02:00
Marius Butz
508ebe3cdc add german strings 2026-05-03 12:13:24 +02:00
Kevin Rouchut
c95bef7447 fix: update French strings for clarity and consistency
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 14:57:10 +02:00
paregi12
b0f2767925
Merge branch 'NuvioMedia:cmp-rewrite' into introdb 2026-05-02 15:55:17 +05:30
paregi12
68a82962da
Merge branch 'NuvioMedia:cmp-rewrite' into introdb 2026-05-02 14:27:19 +05:30
tapframe
ec41a7364b Merge branch 'cmp-rewrite' of https://github.com/NuvioMedia/NuvioMobile into cmp-rewrite 2026-05-02 14:27:11 +05:30
tapframe
1523177ffa fix: improve trakt scrobble handling 2026-05-02 14:27:04 +05:30
paregi12
000f081d28 fixes for introdb submit 2026-05-02 14:11:01 +05:30
tapframe
4f62be91b8 fix: ios player not recreating after switching source/episode 2026-05-02 14:05:47 +05:30
tapframe
c890cc3400 fix: language selection not working in ios 2026-05-02 13:57:13 +05:30
Muhammed Nayif Rahman
c5920efa41
Merge pull request #902 from D4rk56/cmp-rewrite
Fix French translation
2026-05-02 13:39:56 +05:30
Muhammed Nayif Rahman
fdfd0c7509
Merge pull request #900 from albyalex96/localization-update
Update Italian strings in strings.xml
2026-05-02 13:39:31 +05:30
Muhammed Nayif Rahman
370303f20e
Merge pull request #896 from skoruppa/cmp-rewrite
Add Trakt episode remapping for anime season structure mismatches
2026-05-02 13:39:08 +05:30
Muhammed Nayif Rahman
a1afce41cd
Merge pull request #909 from affcosta7/patch-6
Fix: add Portuguese (Portugal) app translation to NUVIO MOBILE
2026-05-02 13:38:55 +05:30
tapframe
c962a0ac24 feat: implement Trakt image utilities and remove hydration 2026-05-02 13:37:28 +05:30
tapframe
1119456ae0 feat: trakt list as collections 2026-05-02 13:22:48 +05:30
paregi12
cf22743148 fixes for introdb submit 2026-05-02 11:49:46 +05:30
paregi12
5c7253d21f feat: implement IntroDB submission feature 2026-05-02 11:27:47 +05:30
André Costa
b6f0267e0e
Update AppLanguage.kt 2026-05-01 14:36:38 +01:00
André Costa
859a1f0de9
Delete composeApp/src/commonMain/composeResources/values-pt-rPT directory 2026-05-01 14:35:44 +01:00
André Costa
4297e488da
Update locale_config.xml 2026-05-01 14:35:12 +01:00
André Costa
35224f2950
Create strings for portuguese (portugal) 2026-05-01 14:22:50 +01:00
D4rk56
3efc8f0a17 Change "extension" to "addon" French translation 2026-05-01 09:40:46 +02:00
tapframe
12232cebe9 fix: ios player viewport container issues on downloads 2026-05-01 02:59:35 +05:30
D4rk56
626a690bca Fix French translation 2026-04-30 21:38:44 +02:00
albyalex96
0f371e1b90
Update Italian strings in strings.xml 2026-04-30 20:19:59 +02:00
tapframe
cbbe65aab3 fix: add shouldSyncToTraktHistory method to prevent sending whole season marked to trakt while marking ep 2026-04-30 23:42:22 +05:30
tapframe
5e65881716 fix: add cancelLoading method to StreamsRepository 2026-04-30 21:54:58 +05:30
tapframe
8a58fabfdd fix: patch remaining areas generating duplicate keys 2026-04-30 21:50:11 +05:30
tapframe
0a663560d8 fix: ios downloads 2026-04-30 17:13:19 +05:30
tapframe
2c1993c996 fix: ajdust tmdb metadata handling for collections 2026-04-30 15:05:28 +05:30