feat(video): add custom zoom controls

close #1159
This commit is contained in:
edde746
2026-05-29 00:06:47 +02:00
parent 47276e1bac
commit 2b7ea5fe02
52 changed files with 1123 additions and 106 deletions
+14 -4
View File
@@ -605,6 +605,7 @@ class _TranslationsVideoControlsNb extends TranslationsVideoControlsEn {
@override String get pipActive => 'Spiller i bilde-i-bilde';
@override String get pipFailed => 'Bilde-i-bilde kunne ikke starte';
@override String get screenshotSaved => 'Skjermbilde lagret';
@override String zoomPercent({required Object percent}) => 'Zoom ${percent}%';
@override late final _TranslationsVideoControlsPipErrorsNb pipErrors = _TranslationsVideoControlsPipErrorsNb._(_root);
@override String get chapters => 'Kapitler';
@override String get noChaptersAvailable => 'Ingen kapitler tilgjengelig';
@@ -1308,6 +1309,7 @@ class _TranslationsVideoSettingsNb extends TranslationsVideoSettingsEn {
// Translations
@override String get playbackSpeed => 'Avspillingshastighet';
@override String get zoom => 'Zoom';
@override String get sleepTimer => 'Søvntimer';
@override String get audioSync => 'Lydsynkronisering';
@override String get subtitleSync => 'Undertekstsynkronisering';
@@ -1565,6 +1567,9 @@ class _TranslationsHotkeysActionsNb extends TranslationsHotkeysActionsEn {
@override String get speedIncrease => 'Øk hastighet';
@override String get speedDecrease => 'Reduser hastighet';
@override String get speedReset => 'Tilbakestill hastighet';
@override String get zoomIn => 'Zoom inn';
@override String get zoomOut => 'Zoom ut';
@override String get zoomReset => 'Tilbakestill zoom';
@override String get subSeekNext => 'Spol til neste undertekst';
@override String get subSeekPrev => 'Spol til forrige undertekst';
@override String get shaderToggle => 'Veksle shadere';
@@ -2099,6 +2104,9 @@ extension on TranslationsNb {
'hotkeys.actions.speedIncrease' => 'Øk hastighet',
'hotkeys.actions.speedDecrease' => 'Reduser hastighet',
'hotkeys.actions.speedReset' => 'Tilbakestill hastighet',
'hotkeys.actions.zoomIn' => 'Zoom inn',
'hotkeys.actions.zoomOut' => 'Zoom ut',
'hotkeys.actions.zoomReset' => 'Tilbakestill zoom',
'hotkeys.actions.subSeekNext' => 'Spol til neste undertekst',
'hotkeys.actions.subSeekPrev' => 'Spol til forrige undertekst',
'hotkeys.actions.shaderToggle' => 'Veksle shadere',
@@ -2224,6 +2232,7 @@ extension on TranslationsNb {
'videoControls.pipActive' => 'Spiller i bilde-i-bilde',
'videoControls.pipFailed' => 'Bilde-i-bilde kunne ikke starte',
'videoControls.screenshotSaved' => 'Skjermbilde lagret',
'videoControls.zoomPercent' => ({required Object percent}) => 'Zoom ${percent}%',
'videoControls.pipErrors.androidVersion' => 'Krever Android 8.0 eller nyere',
'videoControls.pipErrors.iosVersion' => 'Krever iOS 15.0 eller nyere',
'videoControls.pipErrors.permissionDisabled' => 'Bilde-i-bilde er deaktivert. Slå det på i systeminnstillinger.',
@@ -2316,12 +2325,12 @@ extension on TranslationsNb {
'profiles.addPlezyProfile' => 'Legg til Plezy-profil',
'profiles.switchingProfile' => 'Bytter profil…',
'profiles.deleteThisProfileTitle' => 'Slett denne profilen?',
_ => null,
} ?? switch (path) {
'profiles.deleteThisProfileMessage' => ({required Object displayName}) => 'Fjern ${displayName}. Tilkoblinger påvirkes ikke.',
'profiles.active' => 'Aktiv',
'profiles.manage' => 'Administrer',
'profiles.delete' => 'Slett',
_ => null,
} ?? switch (path) {
'profiles.signOut' => 'Logg ut',
'profiles.signOutPlexTitle' => 'Logge ut av Plex?',
'profiles.signOutPlexMessage' => ({required Object displayName}) => 'Fjerne ${displayName} og alle Plex Home-brukere? Du kan logge inn igjen når som helst.',
@@ -2801,6 +2810,7 @@ extension on TranslationsNb {
'companionRemote.remote.audio' => 'Lyd',
'companionRemote.remote.searchHint' => 'Søk på stasjonær...',
'videoSettings.playbackSpeed' => 'Avspillingshastighet',
'videoSettings.zoom' => 'Zoom',
'videoSettings.sleepTimer' => 'Søvntimer',
'videoSettings.audioSync' => 'Lydsynkronisering',
'videoSettings.subtitleSync' => 'Undertekstsynkronisering',
@@ -2829,13 +2839,13 @@ extension on TranslationsNb {
'metadataEdit.basicInfo' => 'Grunnleggende info',
'metadataEdit.artwork' => 'Kunstverk',
'metadataEdit.advancedSettings' => 'Avanserte innstillinger',
_ => null,
} ?? switch (path) {
'metadataEdit.title' => 'Tittel',
'metadataEdit.sortTitle' => 'Sorteringsstittel',
'metadataEdit.originalTitle' => 'Originaltittel',
'metadataEdit.releaseDate' => 'Utgivelsesdato',
'metadataEdit.contentRating' => 'Innholdsvurdering',
_ => null,
} ?? switch (path) {
'metadataEdit.studio' => 'Studio',
'metadataEdit.tagline' => 'Slagord',
'metadataEdit.summary' => 'Sammendrag',