mirror of
https://github.com/kilyabin/psysonic.git
synced 2026-07-21 22:15:40 +00:00
d7abf9be3b
* refactor(playback): extract fadeOut helper Used by playAlbum.ts today; about to be reused for the radio delete fade-out so it lives in its own module instead of being copy-pasted. * fix(player): disable Repeat button while a radio stream is active Matches the Prev / Next buttons that already gate on isRadio — repeat has no meaning for a live stream, and the live tooltip plus accent colour suggested it was interactive. * fix(radio): fade out before deleting the playing station Mirrors the 700 ms fade-out playAlbum uses on track changes — beats the abrupt cut when the deleted station is the one currently on air. * fix(radio): add Play/Stop tooltip to the cover-overlay button Cast / X icon now describes itself, matching the favourite and delete buttons that already had tooltips. * fix(radio): use Square stop icon on the active card The play-overlay and delete buttons both used X, making it ambiguous which click stopped the stream and which deleted the station. Stop gets a filled Square; delete keeps its X. * fix(radio): cancel auto-reconnect when the user pauses a stream Closes #779. Root cause: a 'stalled' event during a paused stream still scheduled a 4 s reconnect timer that called play(), and the timer was not cancelled on pauseRadio(). On macOS WKWebView the underlying TCP socket droops roughly a minute after pause, the browser fires 'stalled', and the stream resumes against the user's intent. The store's isPlaying flag stays false because nothing on the reconnect path syncs it, so the play/pause button stops matching reality. Fix: skip the schedule when radioAudio.paused, re-check inside the timer callback (covers a pause within the 4 s window), and clear any pending timer in pauseRadio(). * docs: changelog for radio card polish + paused-stream fix (#786)
38 lines
1.2 KiB
TypeScript
38 lines
1.2 KiB
TypeScript
export const radio = {
|
|
title: 'Internetradio',
|
|
empty: 'Keine Radiosender konfiguriert.',
|
|
addStation: 'Sender hinzufügen',
|
|
editStation: 'Bearbeiten',
|
|
playStation: 'Sender abspielen',
|
|
stopStation: 'Sender stoppen',
|
|
deleteStation: 'Sender löschen',
|
|
confirmDelete: 'Zum Bestätigen erneut klicken',
|
|
stationName: 'Sendername…',
|
|
streamUrl: 'Stream-URL…',
|
|
homepageUrl: 'Homepage-URL (optional)',
|
|
save: 'Speichern',
|
|
cancel: 'Abbrechen',
|
|
live: 'LIVE',
|
|
liveStream: 'Internetradio',
|
|
openHomepage: 'Homepage öffnen',
|
|
changeCoverLabel: 'Cover ändern',
|
|
removeCover: 'Cover entfernen',
|
|
browseDirectory: 'Verzeichnis durchsuchen',
|
|
directoryPlaceholder: 'Sender suchen…',
|
|
noResults: 'Keine Sender gefunden.',
|
|
stationAdded: 'Sender hinzugefügt',
|
|
filterAll: 'Alle',
|
|
filterFavorites: 'Favoriten',
|
|
sortManual: 'Manuell',
|
|
sortAZ: 'A → Z',
|
|
sortZA: 'Z → A',
|
|
sortNewest: 'Neueste',
|
|
favorite: 'Zu Favoriten hinzufügen',
|
|
unfavorite: 'Aus Favoriten entfernen',
|
|
noFavorites: 'Keine Lieblingssender.',
|
|
listenerCount_one: '{{count}} Hörer',
|
|
listenerCount_other: '{{count}} Hörer',
|
|
recentlyPlayed: 'Zuletzt gespielt',
|
|
upNext: 'Als Nächstes',
|
|
};
|