feat: add option to hide bottom navigation bar labels
This commit is contained in:
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Profil beim Öffnen abfragen",
|
||||
"requireProfileSelectionOnOpenDescription": "Profilauswahl bei jedem Öffnen der App anzeigen",
|
||||
"confirmExitOnBack": "Vor dem Beenden bestätigen",
|
||||
"confirmExitOnBackDescription": "Bestätigungsdialog anzeigen, wenn Zurück zum Beenden der App gedrückt wird"
|
||||
"confirmExitOnBackDescription": "Bestätigungsdialog anzeigen, wenn Zurück zum Beenden der App gedrückt wird",
|
||||
"showNavBarLabels": "Navigationsleisten-Beschriftungen anzeigen",
|
||||
"showNavBarLabelsDescription": "Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Filme, Serien, Musik suchen...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Ask for profile on app open",
|
||||
"requireProfileSelectionOnOpenDescription": "Show profile selection every time the app is opened",
|
||||
"confirmExitOnBack": "Confirm before exiting",
|
||||
"confirmExitOnBackDescription": "Show a confirmation dialog when pressing back to exit the app"
|
||||
"confirmExitOnBackDescription": "Show a confirmation dialog when pressing back to exit the app",
|
||||
"showNavBarLabels": "Show Navigation Bar Labels",
|
||||
"showNavBarLabelsDescription": "Display text labels under navigation bar icons"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Search movies, shows, music...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Pedir perfil al abrir la app",
|
||||
"requireProfileSelectionOnOpenDescription": "Mostrar selección de perfil cada vez que se abre la aplicación",
|
||||
"confirmExitOnBack": "Confirmar antes de salir",
|
||||
"confirmExitOnBackDescription": "Mostrar un diálogo de confirmación al presionar atrás para salir de la app"
|
||||
"confirmExitOnBackDescription": "Mostrar un diálogo de confirmación al presionar atrás para salir de la app",
|
||||
"showNavBarLabels": "Mostrar etiquetas de la barra de navegación",
|
||||
"showNavBarLabelsDescription": "Mostrar etiquetas de texto bajo los iconos de la barra de navegación"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Buscar películas, series, música...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Demander le profil à l'ouverture",
|
||||
"requireProfileSelectionOnOpenDescription": "Afficher la sélection de profil à chaque ouverture de l'application",
|
||||
"confirmExitOnBack": "Confirmer avant de quitter",
|
||||
"confirmExitOnBackDescription": "Afficher une boîte de dialogue de confirmation en appuyant sur retour pour quitter"
|
||||
"confirmExitOnBackDescription": "Afficher une boîte de dialogue de confirmation en appuyant sur retour pour quitter",
|
||||
"showNavBarLabels": "Afficher les libellés de la barre de navigation",
|
||||
"showNavBarLabelsDescription": "Afficher les libellés sous les icônes de la barre de navigation"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Rechercher des films, des séries, de la musique...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Chiedi profilo all'apertura",
|
||||
"requireProfileSelectionOnOpenDescription": "Mostra la selezione del profilo ogni volta che l'app viene aperta",
|
||||
"confirmExitOnBack": "Conferma prima di uscire",
|
||||
"confirmExitOnBackDescription": "Mostra una finestra di conferma quando si preme indietro per uscire dall'app"
|
||||
"confirmExitOnBackDescription": "Mostra una finestra di conferma quando si preme indietro per uscire dall'app",
|
||||
"showNavBarLabels": "Mostra etichette barra di navigazione",
|
||||
"showNavBarLabelsDescription": "Mostra le etichette sotto le icone della barra di navigazione"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Cerca film. spettacoli, musica...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "앱 실행 시 프로필 선택",
|
||||
"requireProfileSelectionOnOpenDescription": "앱을 열 때마다 프로필 선택 화면을 표시합니다",
|
||||
"confirmExitOnBack": "종료 전 확인",
|
||||
"confirmExitOnBackDescription": "뒤로 버튼을 눌러 앱을 종료할 때 확인 대화상자를 표시합니다"
|
||||
"confirmExitOnBackDescription": "뒤로 버튼을 눌러 앱을 종료할 때 확인 대화상자를 표시합니다",
|
||||
"showNavBarLabels": "내비게이션 바 라벨 표시",
|
||||
"showNavBarLabelsDescription": "내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다"
|
||||
},
|
||||
"search": {
|
||||
"hint": "영화, 시리즈, 음악 등을 검색하세요...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Vraag om profiel bij openen",
|
||||
"requireProfileSelectionOnOpenDescription": "Toon profielselectie telkens wanneer de app wordt geopend",
|
||||
"confirmExitOnBack": "Bevestigen voor afsluiten",
|
||||
"confirmExitOnBackDescription": "Toon een bevestigingsvenster bij het drukken op terug om de app af te sluiten"
|
||||
"confirmExitOnBackDescription": "Toon een bevestigingsvenster bij het drukken op terug om de app af te sluiten",
|
||||
"showNavBarLabels": "Navigatiebalk labels tonen",
|
||||
"showNavBarLabelsDescription": "Tekstlabels onder de pictogrammen van de navigatiebalk weergeven"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Zoek films, series, muziek...",
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
/// To regenerate, run: `dart run slang`
|
||||
///
|
||||
/// Locales: 9
|
||||
/// Strings: 7236 (804 per locale)
|
||||
/// Strings: 7254 (806 per locale)
|
||||
///
|
||||
/// Built on 2026-03-04 at 08:32 UTC
|
||||
/// Built on 2026-03-05 at 11:22 UTC
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: type=lint, unused_import
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsDe implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Profilauswahl bei jedem Öffnen der App anzeigen';
|
||||
@override String get confirmExitOnBack => 'Vor dem Beenden bestätigen';
|
||||
@override String get confirmExitOnBackDescription => 'Bestätigungsdialog anzeigen, wenn Zurück zum Beenden der App gedrückt wird';
|
||||
@override String get showNavBarLabels => 'Navigationsleisten-Beschriftungen anzeigen';
|
||||
@override String get showNavBarLabelsDescription => 'Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsDe {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Profilauswahl bei jedem Öffnen der App anzeigen',
|
||||
'settings.confirmExitOnBack' => 'Vor dem Beenden bestätigen',
|
||||
'settings.confirmExitOnBackDescription' => 'Bestätigungsdialog anzeigen, wenn Zurück zum Beenden der App gedrückt wird',
|
||||
'settings.showNavBarLabels' => 'Navigationsleisten-Beschriftungen anzeigen',
|
||||
'settings.showNavBarLabelsDescription' => 'Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen',
|
||||
'search.hint' => 'Filme, Serien, Musik suchen...',
|
||||
'search.tryDifferentTerm' => 'Anderen Suchbegriff versuchen',
|
||||
'search.searchYourMedia' => 'In den eigenen Medien suchen',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsDe {
|
||||
'liveTv.live' => 'LIVE',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NEU',
|
||||
'liveTv.reloadGuide' => 'Programmführer neu laden',
|
||||
'liveTv.allChannels' => 'Alle Kanäle',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Programmführer neu laden',
|
||||
'liveTv.allChannels' => 'Alle Kanäle',
|
||||
'liveTv.now' => 'Jetzt',
|
||||
'liveTv.today' => 'Heute',
|
||||
'liveTv.midnight' => 'Mitternacht',
|
||||
|
||||
@@ -732,6 +732,12 @@ class TranslationsSettingsEn {
|
||||
|
||||
/// en: 'Show a confirmation dialog when pressing back to exit the app'
|
||||
String get confirmExitOnBackDescription => 'Show a confirmation dialog when pressing back to exit the app';
|
||||
|
||||
/// en: 'Show Navigation Bar Labels'
|
||||
String get showNavBarLabels => 'Show Navigation Bar Labels';
|
||||
|
||||
/// en: 'Display text labels under navigation bar icons'
|
||||
String get showNavBarLabelsDescription => 'Display text labels under navigation bar icons';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -3116,6 +3122,8 @@ extension on Translations {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Show profile selection every time the app is opened',
|
||||
'settings.confirmExitOnBack' => 'Confirm before exiting',
|
||||
'settings.confirmExitOnBackDescription' => 'Show a confirmation dialog when pressing back to exit the app',
|
||||
'settings.showNavBarLabels' => 'Show Navigation Bar Labels',
|
||||
'settings.showNavBarLabelsDescription' => 'Display text labels under navigation bar icons',
|
||||
'search.hint' => 'Search movies, shows, music...',
|
||||
'search.tryDifferentTerm' => 'Try a different search term',
|
||||
'search.searchYourMedia' => 'Search your media',
|
||||
@@ -3426,10 +3434,10 @@ extension on Translations {
|
||||
'liveTv.live' => 'LIVE',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NEW',
|
||||
'liveTv.reloadGuide' => 'Reload Guide',
|
||||
'liveTv.allChannels' => 'All Channels',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Reload Guide',
|
||||
'liveTv.allChannels' => 'All Channels',
|
||||
'liveTv.now' => 'Now',
|
||||
'liveTv.today' => 'Today',
|
||||
'liveTv.midnight' => 'Midnight',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsEs implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Mostrar selección de perfil cada vez que se abre la aplicación';
|
||||
@override String get confirmExitOnBack => 'Confirmar antes de salir';
|
||||
@override String get confirmExitOnBackDescription => 'Mostrar un diálogo de confirmación al presionar atrás para salir de la app';
|
||||
@override String get showNavBarLabels => 'Mostrar etiquetas de la barra de navegación';
|
||||
@override String get showNavBarLabelsDescription => 'Mostrar etiquetas de texto bajo los iconos de la barra de navegación';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsEs {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Mostrar selección de perfil cada vez que se abre la aplicación',
|
||||
'settings.confirmExitOnBack' => 'Confirmar antes de salir',
|
||||
'settings.confirmExitOnBackDescription' => 'Mostrar un diálogo de confirmación al presionar atrás para salir de la app',
|
||||
'settings.showNavBarLabels' => 'Mostrar etiquetas de la barra de navegación',
|
||||
'settings.showNavBarLabelsDescription' => 'Mostrar etiquetas de texto bajo los iconos de la barra de navegación',
|
||||
'search.hint' => 'Buscar películas, series, música...',
|
||||
'search.tryDifferentTerm' => 'Prueba con un término de búsqueda diferente',
|
||||
'search.searchYourMedia' => 'Busca en tu contenido',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsEs {
|
||||
'liveTv.live' => 'EN VIVO',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NUEVO',
|
||||
'liveTv.reloadGuide' => 'Recargar guía',
|
||||
'liveTv.allChannels' => 'Todos los canales',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Recargar guía',
|
||||
'liveTv.allChannels' => 'Todos los canales',
|
||||
'liveTv.now' => 'Ahora',
|
||||
'liveTv.today' => 'Hoy',
|
||||
'liveTv.midnight' => 'Medianoche',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsFr implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Afficher la sélection de profil à chaque ouverture de l\'application';
|
||||
@override String get confirmExitOnBack => 'Confirmer avant de quitter';
|
||||
@override String get confirmExitOnBackDescription => 'Afficher une boîte de dialogue de confirmation en appuyant sur retour pour quitter';
|
||||
@override String get showNavBarLabels => 'Afficher les libellés de la barre de navigation';
|
||||
@override String get showNavBarLabelsDescription => 'Afficher les libellés sous les icônes de la barre de navigation';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsFr {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Afficher la sélection de profil à chaque ouverture de l\'application',
|
||||
'settings.confirmExitOnBack' => 'Confirmer avant de quitter',
|
||||
'settings.confirmExitOnBackDescription' => 'Afficher une boîte de dialogue de confirmation en appuyant sur retour pour quitter',
|
||||
'settings.showNavBarLabels' => 'Afficher les libellés de la barre de navigation',
|
||||
'settings.showNavBarLabelsDescription' => 'Afficher les libellés sous les icônes de la barre de navigation',
|
||||
'search.hint' => 'Rechercher des films, des séries, de la musique...',
|
||||
'search.tryDifferentTerm' => 'Essayez un autre terme de recherche',
|
||||
'search.searchYourMedia' => 'Rechercher dans vos médias',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsFr {
|
||||
'liveTv.live' => 'EN DIRECT',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NOUVEAU',
|
||||
'liveTv.reloadGuide' => 'Recharger le guide',
|
||||
'liveTv.allChannels' => 'Toutes les chaînes',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Recharger le guide',
|
||||
'liveTv.allChannels' => 'Toutes les chaînes',
|
||||
'liveTv.now' => 'Maintenant',
|
||||
'liveTv.today' => 'Aujourd\'hui',
|
||||
'liveTv.midnight' => 'Minuit',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsIt implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Mostra la selezione del profilo ogni volta che l\'app viene aperta';
|
||||
@override String get confirmExitOnBack => 'Conferma prima di uscire';
|
||||
@override String get confirmExitOnBackDescription => 'Mostra una finestra di conferma quando si preme indietro per uscire dall\'app';
|
||||
@override String get showNavBarLabels => 'Mostra etichette barra di navigazione';
|
||||
@override String get showNavBarLabelsDescription => 'Mostra le etichette sotto le icone della barra di navigazione';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsIt {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Mostra la selezione del profilo ogni volta che l\'app viene aperta',
|
||||
'settings.confirmExitOnBack' => 'Conferma prima di uscire',
|
||||
'settings.confirmExitOnBackDescription' => 'Mostra una finestra di conferma quando si preme indietro per uscire dall\'app',
|
||||
'settings.showNavBarLabels' => 'Mostra etichette barra di navigazione',
|
||||
'settings.showNavBarLabelsDescription' => 'Mostra le etichette sotto le icone della barra di navigazione',
|
||||
'search.hint' => 'Cerca film. spettacoli, musica...',
|
||||
'search.tryDifferentTerm' => 'Prova altri termini di ricerca',
|
||||
'search.searchYourMedia' => 'Cerca nei tuoi media',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsIt {
|
||||
'liveTv.live' => 'IN DIRETTA',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NUOVO',
|
||||
'liveTv.reloadGuide' => 'Ricarica guida',
|
||||
'liveTv.allChannels' => 'Tutti i canali',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Ricarica guida',
|
||||
'liveTv.allChannels' => 'Tutti i canali',
|
||||
'liveTv.now' => 'Ora',
|
||||
'liveTv.today' => 'Oggi',
|
||||
'liveTv.midnight' => 'Mezzanotte',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsKo implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => '앱을 열 때마다 프로필 선택 화면을 표시합니다';
|
||||
@override String get confirmExitOnBack => '종료 전 확인';
|
||||
@override String get confirmExitOnBackDescription => '뒤로 버튼을 눌러 앱을 종료할 때 확인 대화상자를 표시합니다';
|
||||
@override String get showNavBarLabels => '내비게이션 바 라벨 표시';
|
||||
@override String get showNavBarLabelsDescription => '내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsKo {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => '앱을 열 때마다 프로필 선택 화면을 표시합니다',
|
||||
'settings.confirmExitOnBack' => '종료 전 확인',
|
||||
'settings.confirmExitOnBackDescription' => '뒤로 버튼을 눌러 앱을 종료할 때 확인 대화상자를 표시합니다',
|
||||
'settings.showNavBarLabels' => '내비게이션 바 라벨 표시',
|
||||
'settings.showNavBarLabelsDescription' => '내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다',
|
||||
'search.hint' => '영화, 시리즈, 음악 등을 검색하세요...',
|
||||
'search.tryDifferentTerm' => '다른 검색어를 시도해 보세요',
|
||||
'search.searchYourMedia' => '미디어 검색',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsKo {
|
||||
'liveTv.live' => '실시간',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => '신규',
|
||||
'liveTv.reloadGuide' => '편성표 새로고침',
|
||||
'liveTv.allChannels' => '전체 채널',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => '편성표 새로고침',
|
||||
'liveTv.allChannels' => '전체 채널',
|
||||
'liveTv.now' => '지금',
|
||||
'liveTv.today' => '오늘',
|
||||
'liveTv.midnight' => '자정',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsNl implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Toon profielselectie telkens wanneer de app wordt geopend';
|
||||
@override String get confirmExitOnBack => 'Bevestigen voor afsluiten';
|
||||
@override String get confirmExitOnBackDescription => 'Toon een bevestigingsvenster bij het drukken op terug om de app af te sluiten';
|
||||
@override String get showNavBarLabels => 'Navigatiebalk labels tonen';
|
||||
@override String get showNavBarLabelsDescription => 'Tekstlabels onder de pictogrammen van de navigatiebalk weergeven';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsNl {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Toon profielselectie telkens wanneer de app wordt geopend',
|
||||
'settings.confirmExitOnBack' => 'Bevestigen voor afsluiten',
|
||||
'settings.confirmExitOnBackDescription' => 'Toon een bevestigingsvenster bij het drukken op terug om de app af te sluiten',
|
||||
'settings.showNavBarLabels' => 'Navigatiebalk labels tonen',
|
||||
'settings.showNavBarLabelsDescription' => 'Tekstlabels onder de pictogrammen van de navigatiebalk weergeven',
|
||||
'search.hint' => 'Zoek films, series, muziek...',
|
||||
'search.tryDifferentTerm' => 'Probeer een andere zoekterm',
|
||||
'search.searchYourMedia' => 'Zoek in je media',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsNl {
|
||||
'liveTv.live' => 'LIVE',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NIEUW',
|
||||
'liveTv.reloadGuide' => 'Gids herladen',
|
||||
'liveTv.allChannels' => 'Alle zenders',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Gids herladen',
|
||||
'liveTv.allChannels' => 'Alle zenders',
|
||||
'liveTv.now' => 'Nu',
|
||||
'liveTv.today' => 'Vandaag',
|
||||
'liveTv.midnight' => 'Middernacht',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsSv implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => 'Visa profilval varje gång appen öppnas';
|
||||
@override String get confirmExitOnBack => 'Bekräfta innan avslut';
|
||||
@override String get confirmExitOnBackDescription => 'Visa en bekräftelsedialog när du trycker tillbaka för att avsluta appen';
|
||||
@override String get showNavBarLabels => 'Visa navigeringsfältets etiketter';
|
||||
@override String get showNavBarLabelsDescription => 'Visa textetiketter under navigeringsfältets ikoner';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsSv {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => 'Visa profilval varje gång appen öppnas',
|
||||
'settings.confirmExitOnBack' => 'Bekräfta innan avslut',
|
||||
'settings.confirmExitOnBackDescription' => 'Visa en bekräftelsedialog när du trycker tillbaka för att avsluta appen',
|
||||
'settings.showNavBarLabels' => 'Visa navigeringsfältets etiketter',
|
||||
'settings.showNavBarLabelsDescription' => 'Visa textetiketter under navigeringsfältets ikoner',
|
||||
'search.hint' => 'Sök filmer, serier, musik...',
|
||||
'search.tryDifferentTerm' => 'Prova en annan sökterm',
|
||||
'search.searchYourMedia' => 'Sök i dina media',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsSv {
|
||||
'liveTv.live' => 'LIVE',
|
||||
'liveTv.hd' => 'HD',
|
||||
'liveTv.premiere' => 'NY',
|
||||
'liveTv.reloadGuide' => 'Ladda om programguide',
|
||||
'liveTv.allChannels' => 'Alla kanaler',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => 'Ladda om programguide',
|
||||
'liveTv.allChannels' => 'Alla kanaler',
|
||||
'liveTv.now' => 'Nu',
|
||||
'liveTv.today' => 'Idag',
|
||||
'liveTv.midnight' => 'Midnatt',
|
||||
|
||||
@@ -329,6 +329,8 @@ class _TranslationsSettingsZh implements TranslationsSettingsEn {
|
||||
@override String get requireProfileSelectionOnOpenDescription => '每次打开应用时显示配置文件选择';
|
||||
@override String get confirmExitOnBack => '退出前确认';
|
||||
@override String get confirmExitOnBackDescription => '按返回键退出应用时显示确认对话框';
|
||||
@override String get showNavBarLabels => '显示导航栏标签';
|
||||
@override String get showNavBarLabelsDescription => '在导航栏图标下方显示文字标签';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -1501,6 +1503,8 @@ extension on TranslationsZh {
|
||||
'settings.requireProfileSelectionOnOpenDescription' => '每次打开应用时显示配置文件选择',
|
||||
'settings.confirmExitOnBack' => '退出前确认',
|
||||
'settings.confirmExitOnBackDescription' => '按返回键退出应用时显示确认对话框',
|
||||
'settings.showNavBarLabels' => '显示导航栏标签',
|
||||
'settings.showNavBarLabelsDescription' => '在导航栏图标下方显示文字标签',
|
||||
'search.hint' => '搜索电影、系列、音乐...',
|
||||
'search.tryDifferentTerm' => '尝试不同的搜索词',
|
||||
'search.searchYourMedia' => '搜索媒体',
|
||||
@@ -1811,10 +1815,10 @@ extension on TranslationsZh {
|
||||
'liveTv.live' => '直播',
|
||||
'liveTv.hd' => '高清',
|
||||
'liveTv.premiere' => '新',
|
||||
'liveTv.reloadGuide' => '重新加载节目指南',
|
||||
'liveTv.allChannels' => '所有频道',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'liveTv.reloadGuide' => '重新加载节目指南',
|
||||
'liveTv.allChannels' => '所有频道',
|
||||
'liveTv.now' => '现在',
|
||||
'liveTv.today' => '今天',
|
||||
'liveTv.midnight' => '午夜',
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "Fråga efter profil vid appstart",
|
||||
"requireProfileSelectionOnOpenDescription": "Visa profilval varje gång appen öppnas",
|
||||
"confirmExitOnBack": "Bekräfta innan avslut",
|
||||
"confirmExitOnBackDescription": "Visa en bekräftelsedialog när du trycker tillbaka för att avsluta appen"
|
||||
"confirmExitOnBackDescription": "Visa en bekräftelsedialog när du trycker tillbaka för att avsluta appen",
|
||||
"showNavBarLabels": "Visa navigeringsfältets etiketter",
|
||||
"showNavBarLabelsDescription": "Visa textetiketter under navigeringsfältets ikoner"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Sök filmer, serier, musik...",
|
||||
|
||||
@@ -209,7 +209,9 @@
|
||||
"requireProfileSelectionOnOpen": "打开应用时询问配置文件",
|
||||
"requireProfileSelectionOnOpenDescription": "每次打开应用时显示配置文件选择",
|
||||
"confirmExitOnBack": "退出前确认",
|
||||
"confirmExitOnBackDescription": "按返回键退出应用时显示确认对话框"
|
||||
"confirmExitOnBackDescription": "按返回键退出应用时显示确认对话框",
|
||||
"showNavBarLabels": "显示导航栏标签",
|
||||
"showNavBarLabelsDescription": "在导航栏图标下方显示文字标签"
|
||||
},
|
||||
"search": {
|
||||
"hint": "搜索电影、系列、音乐...",
|
||||
|
||||
@@ -13,6 +13,7 @@ class SettingsProvider extends ChangeNotifier {
|
||||
bool _alwaysKeepSidebarOpen = false;
|
||||
bool _showUnwatchedCount = true;
|
||||
bool _hideSpoilers = false;
|
||||
bool _showNavBarLabels = true;
|
||||
bool _isInitialized = false;
|
||||
Future<void>? _initFuture;
|
||||
|
||||
@@ -38,6 +39,7 @@ class SettingsProvider extends ChangeNotifier {
|
||||
_alwaysKeepSidebarOpen = _settingsService!.getAlwaysKeepSidebarOpen();
|
||||
_showUnwatchedCount = _settingsService!.getShowUnwatchedCount();
|
||||
_hideSpoilers = _settingsService!.getHideSpoilers();
|
||||
_showNavBarLabels = _settingsService!.getShowNavBarLabels();
|
||||
_isInitialized = true;
|
||||
notifyListeners();
|
||||
}
|
||||
@@ -63,6 +65,8 @@ class SettingsProvider extends ChangeNotifier {
|
||||
|
||||
bool get hideSpoilers => _hideSpoilers;
|
||||
|
||||
bool get showNavBarLabels => _showNavBarLabels;
|
||||
|
||||
/// Helper to update a setting: ensures init, deduplicates, persists, notifies.
|
||||
Future<void> _updateSetting<T>({
|
||||
required T current,
|
||||
@@ -132,6 +136,12 @@ class SettingsProvider extends ChangeNotifier {
|
||||
persist: _settingsService!.setHideSpoilers,
|
||||
);
|
||||
|
||||
Future<void> setShowNavBarLabels(bool value) => _updateSetting(
|
||||
current: _showNavBarLabels, value: value,
|
||||
setLocal: (v) => _showNavBarLabels = v,
|
||||
persist: _settingsService!.setShowNavBarLabels,
|
||||
);
|
||||
|
||||
String get libraryDensityDisplayName {
|
||||
switch (_libraryDensity) {
|
||||
case LibraryDensity.compact:
|
||||
|
||||
@@ -1113,11 +1113,24 @@ class _MainScreenState extends State<MainScreen> with RouteAware, WindowListener
|
||||
),
|
||||
),
|
||||
),
|
||||
NavigationBar(
|
||||
Consumer<SettingsProvider>(
|
||||
builder: (context, settingsProvider, child) {
|
||||
final hideLabels = !settingsProvider.showNavBarLabels;
|
||||
return NavigationBarTheme(
|
||||
data: NavigationBarTheme.of(context).copyWith(
|
||||
height: hideLabels ? 56 : null,
|
||||
),
|
||||
child: NavigationBar(
|
||||
selectedIndex: _currentIndex,
|
||||
onDestinationSelected: _selectTab,
|
||||
labelBehavior: hideLabels
|
||||
? NavigationDestinationLabelBehavior.alwaysHide
|
||||
: NavigationDestinationLabelBehavior.alwaysShow,
|
||||
destinations: _buildNavDestinations(_isOffline),
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
@@ -73,6 +73,7 @@ class _SettingsScreenState extends State<SettingsScreen> with FocusableTab {
|
||||
static const _kAlwaysKeepSidebarOpen = 'always_keep_sidebar_open';
|
||||
static const _kShowUnwatchedCount = 'show_unwatched_count';
|
||||
static const _kHideSpoilers = 'hide_spoilers';
|
||||
static const _kShowNavBarLabels = 'show_nav_bar_labels';
|
||||
static const _kRequireProfileSelectionOnOpen = 'require_profile_selection_on_open';
|
||||
static const _kConfirmExitOnBack = 'confirm_exit_on_back';
|
||||
static const _kPlayerBackend = 'player_backend';
|
||||
@@ -380,6 +381,21 @@ class _SettingsScreenState extends State<SettingsScreen> with FocusableTab {
|
||||
);
|
||||
},
|
||||
),
|
||||
if (!PlatformDetector.shouldUseSideNavigation(context))
|
||||
Consumer<SettingsProvider>(
|
||||
builder: (context, settingsProvider, child) {
|
||||
return SwitchListTile(
|
||||
focusNode: _focusTracker.get(_kShowNavBarLabels),
|
||||
secondary: const AppIcon(Symbols.label_rounded, fill: 1),
|
||||
title: Text(t.settings.showNavBarLabels),
|
||||
subtitle: Text(t.settings.showNavBarLabelsDescription),
|
||||
value: settingsProvider.showNavBarLabels,
|
||||
onChanged: (value) async {
|
||||
await settingsProvider.setShowNavBarLabels(value);
|
||||
},
|
||||
);
|
||||
},
|
||||
),
|
||||
Consumer<SettingsProvider>(
|
||||
builder: (context, settingsProvider, child) {
|
||||
return SwitchListTile(
|
||||
|
||||
@@ -77,6 +77,7 @@ class SettingsService extends BaseSharedPreferencesService {
|
||||
static const String _keyAlwaysKeepSidebarOpen = 'always_keep_sidebar_open';
|
||||
static const String _keyShowUnwatchedCount = 'show_unwatched_count';
|
||||
static const String _keyHideSpoilers = 'hide_spoilers';
|
||||
static const String _keyShowNavBarLabels = 'show_nav_bar_labels';
|
||||
static const String _keyGlobalShaderPreset = 'global_shader_preset';
|
||||
static const String _keyRequireProfileSelectionOnOpen = 'require_profile_selection_on_open';
|
||||
static const String _keyUseExternalPlayer = 'use_external_player';
|
||||
@@ -1145,6 +1146,15 @@ class SettingsService extends BaseSharedPreferencesService {
|
||||
return prefs.getBool(_keyHideSpoilers) ?? false; // Default: disabled
|
||||
}
|
||||
|
||||
// Show Navigation Bar Labels (mobile bottom nav)
|
||||
Future<void> setShowNavBarLabels(bool enabled) async {
|
||||
await prefs.setBool(_keyShowNavBarLabels, enabled);
|
||||
}
|
||||
|
||||
bool getShowNavBarLabels() {
|
||||
return prefs.getBool(_keyShowNavBarLabels) ?? true; // Default: show labels
|
||||
}
|
||||
|
||||
// Global Shader Preset (for MPV video enhancement)
|
||||
Future<void> setGlobalShaderPreset(String presetId) async {
|
||||
await prefs.setString(_keyGlobalShaderPreset, presetId);
|
||||
@@ -1325,6 +1335,7 @@ class SettingsService extends BaseSharedPreferencesService {
|
||||
prefs.remove(_keyAlwaysKeepSidebarOpen),
|
||||
prefs.remove(_keyShowUnwatchedCount),
|
||||
prefs.remove(_keyHideSpoilers),
|
||||
prefs.remove(_keyShowNavBarLabels),
|
||||
prefs.remove(_keyGlobalShaderPreset),
|
||||
prefs.remove(_keyCustomShaderPresets),
|
||||
prefs.remove(_keyRequireProfileSelectionOnOpen),
|
||||
|
||||
Reference in New Issue
Block a user