fix(ui): harden settings focus and semantics

This commit is contained in:
edde746
2026-07-24 03:46:50 +02:00
parent f8bfecf57d
commit b41fb4fe75
159 changed files with 12054 additions and 2050 deletions
+21 -12
View File
@@ -17,7 +17,7 @@
"quickConnectWaiting": "Oczekiwanie na zatwierdzenie…",
"quickConnectCancel": "Anuluj",
"quickConnectExpired": "Quick Connect wygasł. Spróbuj ponownie.",
"localDataRecoveryRequired": ""
"localDataRecoveryRequired": "Plezy could not safely recover local sign-in and pending playback data. Please sign in again."
},
"common": {
"cancel": "Anuluj",
@@ -180,7 +180,7 @@
"watchTogetherRelay": "Relay Oglądaj Razem",
"watchTogetherRelayDescription": "Ustaw własny relay. Wszyscy muszą używać tego samego serwera.",
"watchTogetherRelayHint": "https://moj-relay.przyklad.pl",
"watchTogetherRelayInvalid": "",
"watchTogetherRelayInvalid": "Enter a valid HTTP or HTTPS relay base URL.",
"crashReporting": "Raportowanie błędów",
"crashReportingDescription": "Wysyłaj raporty o błędach, aby pomóc ulepszyć aplikację",
"debugLogging": "Logowanie debugowania",
@@ -197,12 +197,10 @@
"exportSettings": "Eksportuj ustawienia",
"exportSettingsDescription": "Zapisz swoje preferencje do pliku",
"exportSettingsSuccess": "Ustawienia wyeksportowane",
"exportSettingsFailed": "Nie można wyeksportować ustawień",
"importSettings": "Importuj ustawienia",
"importSettingsDescription": "Przywróć preferencje z pliku",
"importSettingsConfirm": "Bieżące ustawienia zostaną zastąpione. Kontynuować?",
"importSettingsSuccess": "Ustawienia zaimportowane",
"importSettingsFailed": "Nie można zaimportować ustawień",
"importSettingsInvalidFile": "Ten plik nie jest prawidłowym eksportem Plezy",
"importSettingsNoUser": "Zaloguj się przed importem ustawień",
"shortcutsReset": "Skróty przywrócone do domyślnych",
@@ -217,6 +215,7 @@
"validationErrorDuration": "Czas musi być między ${min} a ${max} ${unit}",
"shortcutAlreadyAssigned": "Skrót jest już przypisany do ${action}",
"shortcutUpdated": "Skrót zaktualizowany dla ${action}",
"saveFailed": "Could not save changes. Try again.",
"autoSkip": "Automatyczne pomijanie",
"autoSkipIntro": "Automatyczne pomijanie intro",
"autoSkipIntroDescription": "Automatycznie pomijaj znaczniki intro po kilku sekundach",
@@ -242,7 +241,7 @@
"downloadLocationChanged": "Lokalizacja pobierania zmieniona",
"downloadLocationReset": "Lokalizacja pobierania przywrócona do domyślnej",
"downloadLocationInvalid": "Wybrany folder nie jest zapisywalny",
"downloadLocationSelectError": "Nie udało się wybrać folderu",
"downloadLocationPickerUnavailable": "Wybór folderu nie jest dostępny na tym urządzeniu",
"downloadOnWifiOnly": "Pobieraj tylko przez WiFi",
"downloadOnWifiOnlyDescription": "Blokuj pobieranie na danych komórkowych",
"autoRemoveWatchedDownloads": "Automatycznie usuwaj obejrzane pobrania",
@@ -443,7 +442,11 @@
"brightness": "Jasność",
"hexColor": "Kolor szesnastkowy",
"expandText": "Rozwiń tekst",
"collapseText": "Zwiń tekst"
"collapseText": "Zwiń tekst",
"alphabetNavigation": "Nawigacja alfabetyczna",
"alphabetScrollHint": "Przesuń w górę lub w dół, aby przejść o literę",
"rowColumnPosition": "Wiersz ${row} z ${rowCount}, kolumna ${column} z ${columnCount}",
"rowPosition": "Wiersz ${row} z ${rowCount}"
},
"tooltips": {
"shufflePlay": "Odtwarzanie losowe",
@@ -451,6 +454,9 @@
"markAsWatched": "Oznacz jako obejrzane",
"markAsUnwatched": "Oznacz jako nieobejrzane"
},
"audioTracks": {
"track": "Ścieżka audio ${n}"
},
"videoControls": {
"audioLabel": "Audio",
"subtitlesLabel": "Napisy",
@@ -478,6 +484,8 @@
"playNext": "Odtwórz następny",
"playButton": "Odtwórz",
"pauseButton": "Pauza",
"showPlaybackControls": "",
"hidePlaybackControls": "",
"seekBackwardButton": "Przewiń do tyłu o ${seconds} sekund",
"seekForwardButton": "Przewiń do przodu o ${seconds} sekund",
"previousButton": "Poprzedni odcinek",
@@ -555,11 +563,11 @@
"streamInterrupted": "Strumień został przerwany. Naciśnij odtwarzanie lub przewiń, aby spróbować ponownie.",
"liveStreamInterrupted": "Transmisja na żywo została przerwana. Naciśnij odtwarzanie, aby spróbować ponownie.",
"fileInfoNotAvailable": "Informacje o pliku niedostępne",
"playbackAuthenticationRequired": "",
"playbackServerUnavailable": "",
"playbackDataInvalid": "",
"playbackCancelled": "",
"playbackFailed": "",
"playbackAuthenticationRequired": "Sign in to the media server again to play this item.",
"playbackServerUnavailable": "The media server is unavailable. Try again later.",
"playbackDataInvalid": "The server returned invalid playback information.",
"playbackCancelled": "Playback was cancelled.",
"playbackFailed": "Playback could not be started.",
"errorLoadingFileInfo": "Błąd ładowania informacji o pliku: ${error}",
"errorLoadingSeries": "Błąd ładowania serialu",
"musicNotSupported": "Odtwarzanie muzyki nie jest jeszcze obsługiwane",
@@ -682,6 +690,7 @@
"borrowExplain": "Pożycz połączenie z innego profilu. Profile chronione PIN wymagają PIN-u.",
"borrowEmpty": "Nic do pożyczenia.",
"borrowEmptySubtitle": "Najpierw połącz Plex lub Jellyfin z innym profilem.",
"borrowLoadFailed": "Available connections could not be loaded. Try again.",
"borrowFromProfile": "Od ${displayName}",
"borrowConnectionBorrowed": "Połączenie pożyczone.",
"borrowFailed": "Nie udało się pożyczyć połączenia.",
@@ -948,7 +957,7 @@
"favorites": "Ulubione",
"reorderFavorites": "Zmień kolejność ulubionych",
"favoritesLoadFailed": "Nie udało się wczytać ulubionych. Sprawdź połączenie i spróbuj ponownie.",
"favoritesUpdateFailed": "",
"favoritesUpdateFailed": "Could not update favorites. Check your connection and try again.",
"joinSession": "Dołącz do trwającej sesji",
"watchFromStart": "Oglądaj od początku (${minutes} min temu)",
"watchLive": "Oglądaj na żywo",