From 461f2f539fc3eca021b09a2988b9de686565ced4 Mon Sep 17 00:00:00 2001 From: Thibault Deckers Date: Fri, 10 Mar 2023 19:25:01 +0100 Subject: [PATCH] video: background mode --- lib/l10n/app_en.arb | 5 +- lib/l10n/app_es.arb | 4 +- lib/l10n/app_eu.arb | 4 +- lib/l10n/app_fr.arb | 4 +- lib/l10n/app_id.arb | 4 +- lib/l10n/app_ko.arb | 4 +- lib/l10n/app_pl.arb | 4 +- lib/l10n/app_pt.arb | 4 +- lib/l10n/app_uk.arb | 4 +- lib/model/settings/defaults.dart | 2 +- lib/model/settings/enums/enums.dart | 6 +- .../settings/enums/video_auto_play_mode.dart | 2 +- .../settings/enums/video_background_mode.dart | 15 +++ lib/model/settings/settings.dart | 18 +-- lib/widgets/settings/video/video.dart | 30 +++-- lib/widgets/viewer/entry_viewer_stack.dart | 2 +- untranslated.json | 124 +++++++++++++++--- 17 files changed, 171 insertions(+), 65 deletions(-) create mode 100644 lib/model/settings/enums/video_background_mode.dart diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index f11aeb838..df6a89511 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -230,6 +230,8 @@ "vaultLockTypePin": "PIN", "vaultLockTypePassword": "Password", + "videoBackgroundModePip": "Picture-in-picture", + "videoControlsPlay": "Play", "videoControlsPlaySeek": "Play & seek backward/forward", "videoControlsPlayOutside": "Open with other player", @@ -793,10 +795,11 @@ "settingsVideoSectionTitle": "Video", "settingsVideoShowVideos": "Show videos", "settingsVideoEnableHardwareAcceleration": "Hardware acceleration", - "settingsVideoEnablePip": "Picture-in-picture", "settingsVideoAutoPlay": "Auto play", "settingsVideoLoopModeTile": "Loop mode", "settingsVideoLoopModeDialogTitle": "Loop Mode", + "settingsVideoBackgroundMode": "Background mode", + "settingsVideoBackgroundModeDialogTitle": "Background Mode", "settingsSubtitleThemeTile": "Subtitles", "settingsSubtitleThemePageTitle": "Subtitles", diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 144ce676f..342bd2ca4 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -1269,6 +1269,6 @@ "@patternDialogEnter": {}, "patternDialogConfirm": "Confirme el patrón", "@patternDialogConfirm": {}, - "settingsVideoEnablePip": "Imagen-en-imagen", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Imagen-en-imagen", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_eu.arb b/lib/l10n/app_eu.arb index 18ea879b1..441f00f5d 100644 --- a/lib/l10n/app_eu.arb +++ b/lib/l10n/app_eu.arb @@ -1427,6 +1427,6 @@ "@patternDialogEnter": {}, "patternDialogConfirm": "Konfirmatu patroia", "@patternDialogConfirm": {}, - "settingsVideoEnablePip": "Bideoa leihotxoan", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Bideoa leihotxoan", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 683e0d56c..d8bb375bd 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -1269,6 +1269,6 @@ "@patternDialogConfirm": {}, "vaultLockTypePattern": "Modèle", "@vaultLockTypePattern": {}, - "settingsVideoEnablePip": "Picture-in-picture", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Picture-in-picture", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_id.arb b/lib/l10n/app_id.arb index dae849ca4..137aead66 100644 --- a/lib/l10n/app_id.arb +++ b/lib/l10n/app_id.arb @@ -1269,6 +1269,6 @@ "@patternDialogConfirm": {}, "patternDialogEnter": "Masukkan pola", "@patternDialogEnter": {}, - "settingsVideoEnablePip": "Gambar dalam gambar", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Gambar dalam gambar", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index c5cfc5467..a12afecee 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -1269,6 +1269,6 @@ "@patternDialogEnter": {}, "vaultLockTypePattern": "패턴", "@vaultLockTypePattern": {}, - "settingsVideoEnablePip": "PIP 모드", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "PIP 모드", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_pl.arb b/lib/l10n/app_pl.arb index a1d678f5f..4ee192149 100644 --- a/lib/l10n/app_pl.arb +++ b/lib/l10n/app_pl.arb @@ -1427,6 +1427,6 @@ "@patternDialogEnter": {}, "patternDialogConfirm": "Potwierdź wzór", "@patternDialogConfirm": {}, - "settingsVideoEnablePip": "Obraz w obrazie", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Obraz w obrazie", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index 898acfcb6..672922d2f 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -1269,6 +1269,6 @@ "@patternDialogConfirm": {}, "vaultLockTypePattern": "Padrão", "@vaultLockTypePattern": {}, - "settingsVideoEnablePip": "Picture-in-picture", - "@settingsVideoEnablePip": {} + "videoBackgroundModePip": "Picture-in-picture", + "@videoBackgroundModePip": {} } diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index 8657b80a9..dddf33346 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -1421,8 +1421,8 @@ "@lengthUnitPixel": {}, "lengthUnitPercent": "%", "@lengthUnitPercent": {}, - "settingsVideoEnablePip": "Картинка в картинці", - "@settingsVideoEnablePip": {}, + "videoBackgroundModePip": "Картинка в картинці", + "@videoBackgroundModePip": {}, "vaultLockTypePattern": "Шаблон", "@vaultLockTypePattern": {}, "patternDialogEnter": "Введіть шаблон", diff --git a/lib/model/settings/defaults.dart b/lib/model/settings/defaults.dart index a1908aab2..212e8a424 100644 --- a/lib/model/settings/defaults.dart +++ b/lib/model/settings/defaults.dart @@ -90,8 +90,8 @@ class SettingsDefaults { // video static const enableVideoHardwareAcceleration = true; - static const enableVideoPip = false; static const videoAutoPlayMode = VideoAutoPlayMode.disabled; + static const videoBackgroundMode = VideoBackgroundMode.disabled; static const videoLoopMode = VideoLoopMode.shortOnly; static const videoShowRawTimedText = false; static const videoControls = VideoControls.play; diff --git a/lib/model/settings/enums/enums.dart b/lib/model/settings/enums/enums.dart index ac4584d5d..c99481fff 100644 --- a/lib/model/settings/enums/enums.dart +++ b/lib/model/settings/enums/enums.dart @@ -28,12 +28,14 @@ enum ThumbnailOverlayTagIcon { tagged, untagged, none } enum UnitSystem { metric, imperial } +enum VideoAutoPlayMode { disabled, playMuted, playWithSound } + +enum VideoBackgroundMode { disabled, pip } + enum VideoControls { play, playSeek, playOutside, none } enum VideoLoopMode { never, shortOnly, always } -enum VideoAutoPlayMode { disabled, playMuted, playWithSound } - enum ViewerTransition { slide, parallax, fade, zoomIn, none } enum WidgetDisplayedItem { random, mostRecent } diff --git a/lib/model/settings/enums/video_auto_play_mode.dart b/lib/model/settings/enums/video_auto_play_mode.dart index 9552cedcb..b06c765dd 100644 --- a/lib/model/settings/enums/video_auto_play_mode.dart +++ b/lib/model/settings/enums/video_auto_play_mode.dart @@ -3,7 +3,7 @@ import 'package:flutter/widgets.dart'; import 'enums.dart'; -extension ExtraSlideshowVideoPlayback on VideoAutoPlayMode { +extension ExtraVideoAutoPlayMode on VideoAutoPlayMode { String getName(BuildContext context) { switch (this) { case VideoAutoPlayMode.disabled: diff --git a/lib/model/settings/enums/video_background_mode.dart b/lib/model/settings/enums/video_background_mode.dart new file mode 100644 index 000000000..878483a20 --- /dev/null +++ b/lib/model/settings/enums/video_background_mode.dart @@ -0,0 +1,15 @@ +import 'package:aves/widgets/common/extensions/build_context.dart'; +import 'package:flutter/widgets.dart'; + +import 'enums.dart'; + +extension ExtraVideoBackgroundMode on VideoBackgroundMode { + String getName(BuildContext context) { + switch (this) { + case VideoBackgroundMode.disabled: + return context.l10n.settingsDisabled; + case VideoBackgroundMode.pip: + return context.l10n.videoBackgroundModePip; + } + } +} diff --git a/lib/model/settings/settings.dart b/lib/model/settings/settings.dart index 9d19757ab..0856b3c3e 100644 --- a/lib/model/settings/settings.dart +++ b/lib/model/settings/settings.dart @@ -133,7 +133,7 @@ class Settings extends ChangeNotifier { // video static const enableVideoHardwareAccelerationKey = 'video_hwaccel_mediacodec'; - static const enableVideoPipKey = 'video_pip'; + static const videoBackgroundModeKey = 'video_background_mode'; static const videoAutoPlayModeKey = 'video_auto_play_mode'; static const videoLoopModeKey = 'video_loop'; static const videoControlsKey = 'video_controls'; @@ -285,7 +285,7 @@ class Settings extends ChangeNotifier { viewerGestureSideTapNext = false; viewerUseCutout = true; viewerMaxBrightness = false; - enableVideoPip = false; + videoBackgroundMode = VideoBackgroundMode.disabled; videoControls = VideoControls.none; videoGestureDoubleTapTogglePlay = false; videoGestureSideDoubleTapSeek = false; @@ -300,8 +300,8 @@ class Settings extends ChangeNotifier { if (viewerUseCutout != SettingsDefaults.viewerUseCutout && !await windowService.isCutoutAware()) { _set(viewerUseCutoutKey, null); } - if (enableVideoPip && !device.supportPictureInPicture) { - _set(enableVideoPipKey, null); + if (videoBackgroundMode == VideoBackgroundMode.pip && !device.supportPictureInPicture) { + _set(videoBackgroundModeKey, null); } } @@ -660,14 +660,14 @@ class Settings extends ChangeNotifier { set enableVideoHardwareAcceleration(bool newValue) => _set(enableVideoHardwareAccelerationKey, newValue); - bool get enableVideoPip => getBool(enableVideoPipKey) ?? SettingsDefaults.enableVideoPip; - - set enableVideoPip(bool newValue) => _set(enableVideoPipKey, newValue); - VideoAutoPlayMode get videoAutoPlayMode => getEnumOrDefault(videoAutoPlayModeKey, SettingsDefaults.videoAutoPlayMode, VideoAutoPlayMode.values); set videoAutoPlayMode(VideoAutoPlayMode newValue) => _set(videoAutoPlayModeKey, newValue.toString()); + VideoBackgroundMode get videoBackgroundMode => getEnumOrDefault(videoBackgroundModeKey, SettingsDefaults.videoBackgroundMode, VideoBackgroundMode.values); + + set videoBackgroundMode(VideoBackgroundMode newValue) => _set(videoBackgroundModeKey, newValue.toString()); + VideoLoopMode get videoLoopMode => getEnumOrDefault(videoLoopModeKey, SettingsDefaults.videoLoopMode, VideoLoopMode.values); set videoLoopMode(VideoLoopMode newValue) => _set(videoLoopModeKey, newValue.toString()); @@ -1087,7 +1087,6 @@ class Settings extends ChangeNotifier { case viewerUseCutoutKey: case viewerMaxBrightnessKey: case enableMotionPhotoAutoPlayKey: - case enableVideoPipKey: case enableVideoHardwareAccelerationKey: case videoGestureDoubleTapTogglePlayKey: case videoGestureSideDoubleTapSeekKey: @@ -1127,6 +1126,7 @@ class Settings extends ChangeNotifier { case tagSortFactorKey: case imageBackgroundKey: case videoAutoPlayModeKey: + case videoBackgroundModeKey: case videoLoopModeKey: case videoControlsKey: case subtitleTextAlignmentKey: diff --git a/lib/widgets/settings/video/video.dart b/lib/widgets/settings/video/video.dart index 3fa9a5760..c0e2e4acc 100644 --- a/lib/widgets/settings/video/video.dart +++ b/lib/widgets/settings/video/video.dart @@ -4,6 +4,7 @@ import 'package:aves/model/device.dart'; import 'package:aves/model/filters/mime.dart'; import 'package:aves/model/settings/enums/enums.dart'; import 'package:aves/model/settings/enums/video_auto_play_mode.dart'; +import 'package:aves/model/settings/enums/video_background_mode.dart'; import 'package:aves/model/settings/enums/video_loop_mode.dart'; import 'package:aves/model/settings/settings.dart'; import 'package:aves/theme/colors.dart'; @@ -41,9 +42,9 @@ class VideoSection extends SettingsSection { return [ if (!standalonePage) SettingsTileVideoShowVideos(), SettingsTileVideoEnableHardwareAcceleration(), - if (!settings.useTvLayout && device.supportPictureInPicture) SettingsTileVideoEnablePip(), SettingsTileVideoEnableAutoPlay(), SettingsTileVideoLoopMode(), + if (!settings.useTvLayout && device.supportPictureInPicture) SettingsTileVideoBackgroundMode(), if (!settings.useTvLayout) SettingsTileVideoControls(), SettingsTileVideoSubtitleTheme(), ]; @@ -74,18 +75,6 @@ class SettingsTileVideoEnableHardwareAcceleration extends SettingsTile { ); } -class SettingsTileVideoEnablePip extends SettingsTile { - @override - String title(BuildContext context) => context.l10n.settingsVideoEnablePip; - - @override - Widget build(BuildContext context) => SettingsSwitchListTile( - selector: (context, s) => s.enableVideoPip, - onChanged: (v) => settings.enableVideoPip = v, - title: title(context), - ); -} - class SettingsTileVideoEnableAutoPlay extends SettingsTile { @override String title(BuildContext context) => context.l10n.settingsVideoAutoPlay; @@ -115,6 +104,21 @@ class SettingsTileVideoLoopMode extends SettingsTile { ); } +class SettingsTileVideoBackgroundMode extends SettingsTile { + @override + String title(BuildContext context) => context.l10n.settingsVideoBackgroundMode; + + @override + Widget build(BuildContext context) => SettingsSelectionListTile( + values: VideoBackgroundMode.values, + getName: (context, v) => v.getName(context), + selector: (context, s) => s.videoBackgroundMode, + onSelection: (v) => settings.videoBackgroundMode = v, + tileTitle: title(context), + dialogTitle: context.l10n.settingsVideoBackgroundModeDialogTitle, + ); +} + class SettingsTileVideoControls extends SettingsTile { @override String title(BuildContext context) => context.l10n.settingsVideoControlsTile; diff --git a/lib/widgets/viewer/entry_viewer_stack.dart b/lib/widgets/viewer/entry_viewer_stack.dart index 90dce0479..04c337153 100644 --- a/lib/widgets/viewer/entry_viewer_stack.dart +++ b/lib/widgets/viewer/entry_viewer_stack.dart @@ -202,7 +202,7 @@ class _EntryViewerStackState extends State with EntryViewContr Future _onAppInactive() async { viewerController.autopilot = false; bool enabledPip = false; - if (settings.enableVideoPip) { + if (settings.videoBackgroundMode == VideoBackgroundMode.pip) { enabledPip |= await _enablePictureInPicture(); } if (!enabledPip) { diff --git a/untranslated.json b/untranslated.json index 29a841a46..742b3f59c 100644 --- a/untranslated.json +++ b/untranslated.json @@ -139,6 +139,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "videoControlsPlay", "videoControlsPlaySeek", "videoControlsPlayOutside", @@ -479,10 +480,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -695,6 +697,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "videoControlsPlay", "videoControlsPlaySeek", "videoControlsPlayOutside", @@ -1035,10 +1038,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -1181,6 +1185,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -1200,7 +1205,8 @@ "placePageTitle", "placeEmpty", "settingsConfirmationVaultDataLoss", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsDisablingBinWarningDialogMessage" ], @@ -1215,6 +1221,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -1234,20 +1241,33 @@ "placePageTitle", "placeEmpty", "settingsConfirmationVaultDataLoss", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsDisablingBinWarningDialogMessage" ], "el": [ "chipActionGoToPlacePage", "vaultLockTypePattern", + "videoBackgroundModePip", "patternDialogEnter", "patternDialogConfirm", "exportEntryDialogWriteMetadata", "drawerPlacePage", "placePageTitle", "placeEmpty", - "settingsVideoEnablePip" + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + + "es": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + + "eu": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" ], "fa": [ @@ -1292,6 +1312,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "videoControlsNone", "videoPlaybackSkip", "viewerTransitionSlide", @@ -1589,10 +1610,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -1722,6 +1744,11 @@ "filePickerUseThisFolder" ], + "fr": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + "gl": [ "columnCount", "chipActionGoToPlacePage", @@ -1758,6 +1785,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "videoPlaybackSkip", "videoPlaybackMuted", "videoPlaybackWithSound", @@ -2091,10 +2119,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -2384,6 +2413,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "videoControlsPlay", "videoControlsPlaySeek", "videoControlsPlayOutside", @@ -2724,10 +2754,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -2859,18 +2890,25 @@ "filePickerUseThisFolder" ], + "id": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + "it": [ "chipActionGoToPlacePage", "lengthUnitPixel", "lengthUnitPercent", "vaultLockTypePattern", + "videoBackgroundModePip", "patternDialogEnter", "patternDialogConfirm", "exportEntryDialogWriteMetadata", "drawerPlacePage", "placePageTitle", "placeEmpty", - "settingsVideoEnablePip" + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" ], "ja": [ @@ -2894,6 +2932,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -2916,7 +2955,8 @@ "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", "settingsViewerShowDescription", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume", "settingsDisablingBinWarningDialogMessage", "settingsAccessibilityShowPinchGestureAlternatives", @@ -2924,6 +2964,11 @@ "settingsWidgetDisplayedItem" ], + "ko": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + "lt": [ "columnCount", "chipActionGoToPlacePage", @@ -2939,6 +2984,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -2961,7 +3007,8 @@ "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", "settingsViewerShowDescription", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume", "settingsDisablingBinWarningDialogMessage", "settingsAccessibilityShowPinchGestureAlternatives", @@ -2970,9 +3017,11 @@ "nb": [ "vaultLockTypePattern", + "videoBackgroundModePip", "patternDialogEnter", "patternDialogConfirm", - "settingsVideoEnablePip" + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" ], "nl": [ @@ -2999,6 +3048,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "widgetDisplayedItemRandom", "widgetDisplayedItemMostRecent", "newVaultWarningDialogMessage", @@ -3024,7 +3074,8 @@ "settingsConfirmationVaultDataLoss", "settingsViewerShowRatingTags", "settingsViewerShowDescription", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTextPositionTile", "settingsSubtitleThemeTextPositionDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume", @@ -3054,6 +3105,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "wallpaperTargetHome", "wallpaperTargetHomeLock", "setCoverDialogCustom", @@ -3281,10 +3333,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -3352,23 +3405,36 @@ "wallpaperUseScrollEffect" ], + "pl": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + + "pt": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + "ro": [ "chipActionGoToPlacePage", "lengthUnitPixel", "lengthUnitPercent", "vaultLockTypePattern", + "videoBackgroundModePip", "patternDialogEnter", "patternDialogConfirm", "exportEntryDialogWriteMetadata", "drawerPlacePage", "placePageTitle", "placeEmpty", - "settingsVideoEnablePip" + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" ], "ru": [ "chipActionLock", "vaultLockTypePattern", + "videoBackgroundModePip", "patternDialogEnter", "patternDialogConfirm", "authenticateToConfigureVault", @@ -3378,7 +3444,8 @@ "drawerPlacePage", "placeEmpty", "settingsConfirmationVaultDataLoss", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume" ], @@ -3399,6 +3466,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "otherDirectoryDescription", "storageAccessDialogMessage", "restrictedAccessDialogMessage", @@ -3668,10 +3736,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -3821,6 +3890,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -4024,10 +4094,11 @@ "settingsVideoSectionTitle", "settingsVideoShowVideos", "settingsVideoEnableHardwareAcceleration", - "settingsVideoEnablePip", "settingsVideoAutoPlay", "settingsVideoLoopModeTile", "settingsVideoLoopModeDialogTitle", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsSubtitleThemeTile", "settingsSubtitleThemePageTitle", "settingsSubtitleThemeSample", @@ -4170,6 +4241,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -4189,10 +4261,16 @@ "placePageTitle", "placeEmpty", "settingsConfirmationVaultDataLoss", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsDisablingBinWarningDialogMessage" ], + "uk": [ + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle" + ], + "zh": [ "chipActionGoToPlacePage", "chipActionLock", @@ -4206,6 +4284,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -4228,7 +4307,8 @@ "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", "settingsViewerShowDescription", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume", "settingsDisablingBinWarningDialogMessage", "settingsAccessibilityShowPinchGestureAlternatives", @@ -4249,6 +4329,7 @@ "vaultLockTypePattern", "vaultLockTypePin", "vaultLockTypePassword", + "videoBackgroundModePip", "newVaultWarningDialogMessage", "newVaultDialogTitle", "configureVaultDialogTitle", @@ -4271,7 +4352,8 @@ "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", "settingsViewerShowDescription", - "settingsVideoEnablePip", + "settingsVideoBackgroundMode", + "settingsVideoBackgroundModeDialogTitle", "settingsVideoGestureVerticalDragBrightnessVolume", "settingsDisablingBinWarningDialogMessage", "settingsAccessibilityShowPinchGestureAlternatives",