Merge branch 'develop' of https://github.com/mefsaal/Cider into develop
This commit is contained in:
commit
b4d6ead422
22 changed files with 16246 additions and 21577 deletions
|
@ -109,9 +109,9 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"build": {
|
"build": {
|
||||||
"electronVersion": "18.2.2",
|
"electronVersion": "18.2.3",
|
||||||
"electronDownload": {
|
"electronDownload": {
|
||||||
"version": "18.2.2+wvcus",
|
"version": "18.2.3+wvcus",
|
||||||
"mirror": "https://github.com/castlabs/electron-releases/releases/download/v"
|
"mirror": "https://github.com/castlabs/electron-releases/releases/download/v"
|
||||||
},
|
},
|
||||||
"appId": "cider",
|
"appId": "cider",
|
||||||
|
|
|
@ -22,9 +22,9 @@ Russian is in Plural rule #7 (3 forms) : ```one```, ```few``` and ```other```
|
||||||
How it is implemented for English:
|
How it is implemented for English:
|
||||||
|
|
||||||
```
|
```
|
||||||
`term.track`: {
|
"term.track": {
|
||||||
`one` : `track`,
|
"one` : "track",
|
||||||
`other` : `tracks`
|
"other" : "tracks"
|
||||||
},
|
},
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -375,4 +375,15 @@ Update 12/05/2022 22:50 UTC
|
||||||
* `settings.option.audio.dbspl.display`: Added for `en_US`,
|
* `settings.option.audio.dbspl.display`: Added for `en_US`,
|
||||||
* `settings.option.audio.dbspl.description`: Added for `en_US`,
|
* `settings.option.audio.dbspl.description`: Added for `en_US`,
|
||||||
* `settings.option.audio.dbfs.calibration`: Added for `en_US`,
|
* `settings.option.audio.dbfs.calibration`: Added for `en_US`,
|
||||||
* `settings.option.audio.dbfs.description`: Added for `en_US`,
|
* `settings.option.audio.dbfs.description`: Added for `en_US`
|
||||||
|
|
||||||
|
Update 14/05/2022 02:00 UTC
|
||||||
|
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_HIGH`: Deleted for all language files
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD`: Renamed for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS`: Renamed for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_1`: Added for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_2`: Added for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E168_1`: Added for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z3600`: Added for `en_US`,
|
||||||
|
* `settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z8500`: Added for `en_US`
|
||||||
|
|
|
@ -346,6 +346,8 @@
|
||||||
"settings.notyf.general.keybindings.update.success": "Keybind updated successfully",
|
"settings.notyf.general.keybindings.update.success": "Keybind updated successfully",
|
||||||
"settings.prompt.general.keybindings.update.success": "Keybind updated successfully. Press OK to relaunch Cider",
|
"settings.prompt.general.keybindings.update.success": "Keybind updated successfully. Press OK to relaunch Cider",
|
||||||
"settings.option.general.keybindings.open": "Open",
|
"settings.option.general.keybindings.open": "Open",
|
||||||
|
"settings.option.general.themeUpdateNotification": "Automatically check for theme updates",
|
||||||
|
"settings.option.general.showLovedTracksInline": "Show loved tracks inline",
|
||||||
"settings.description.search": "Search",
|
"settings.description.search": "Search",
|
||||||
"settings.description.albums": "Library Albums",
|
"settings.description.albums": "Library Albums",
|
||||||
"settings.description.artists": "Library Artists",
|
"settings.description.artists": "Library Artists",
|
||||||
|
@ -399,9 +401,13 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "Realizes a different musical atmosphere modelled after the state of the art audio setups.",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "Realizes a different musical atmosphere modelled after the state of the art audio setups.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider Atmosphere Realizer™️ Mode",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider Atmosphere Realizer™️ Mode",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "Changes the mode of operation of the Atmosphere Realizer module.",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "Changes the mode of operation of the Atmosphere Realizer module.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "Natural (Standard)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "Hōjicha Cheese Foam Tea",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_HIGH": "Natural (High)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "Genmaicha Tapioca Milk Tea",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "Natural (Plus)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_1": "Rock Salt Cheese Foam Tea",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_2": "Uji Matcha Milk Tea",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E168_1": "Jasmine Macchiato",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z3600": "Hokkaido Milk Tea",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z8500": "Moonlight Softcake",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Enhances the perceived audio quality of 256 kbps AAC audio by using a real-time algorithm that takes advantage of both psychoacoustic models of human hearing and AAC encoding characteristics.",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Enhances the perceived audio quality of 256 kbps AAC audio by using a real-time algorithm that takes advantage of both psychoacoustic models of human hearing and AAC encoding characteristics.",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "CAP is not compatible with Spatialization. Please disable Spatialization to continue.",
|
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "CAP is not compatible with Spatialization. Please disable Spatialization to continue.",
|
||||||
|
@ -420,6 +426,7 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.soundstage": "Soundstage",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.soundstage": "Soundstage",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.separation": "Separation",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.separation": "Separation",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.minimal": "Minimal",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.minimal": "Minimal",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Spatialization is not compatible with CAP. Please disable CAP to continue.",
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Spatialization is not compatible with CAP. Please disable CAP to continue.",
|
||||||
"settings.option.audio.dbspl.display": "dB SPL Display",
|
"settings.option.audio.dbspl.display": "dB SPL Display",
|
||||||
"settings.option.audio.dbspl.description": "(Advanced users only) Display dB SPL instead of dBFS on the volume slider.",
|
"settings.option.audio.dbspl.description": "(Advanced users only) Display dB SPL instead of dBFS on the volume slider.",
|
||||||
|
|
|
@ -46,7 +46,7 @@
|
||||||
"term.newPlaylist": "Nouvelle Playlist",
|
"term.newPlaylist": "Nouvelle Playlist",
|
||||||
"term.newPlaylistFolder": "Nouveau dossier de playlist",
|
"term.newPlaylistFolder": "Nouveau dossier de playlist",
|
||||||
"term.createNewPlaylist": "Créer une nouvelle playlist",
|
"term.createNewPlaylist": "Créer une nouvelle playlist",
|
||||||
"term.createNewPlaylistFolder": "Create New Playlist Folder",
|
"term.createNewPlaylistFolder": "Créer un nouveau dossier de playlist",
|
||||||
"term.deletePlaylist": "Êtes-vous sûr de vouloir supprimer cette playlist ?",
|
"term.deletePlaylist": "Êtes-vous sûr de vouloir supprimer cette playlist ?",
|
||||||
"term.navigateBack": "Naviguer en arrière",
|
"term.navigateBack": "Naviguer en arrière",
|
||||||
"term.navigateForward": "Naviguer en avant",
|
"term.navigateForward": "Naviguer en avant",
|
||||||
|
@ -247,7 +247,7 @@
|
||||||
"action.unlove": "Ne plus aimer",
|
"action.unlove": "Ne plus aimer",
|
||||||
"action.dislike": "Je n'aime pas",
|
"action.dislike": "Je n'aime pas",
|
||||||
"action.undoDislike": "Je n'aime plus",
|
"action.undoDislike": "Je n'aime plus",
|
||||||
"action.showWebRemoteQR": "Afficher le QR Code de la télécommande à distance",
|
"action.showWebRemoteQR": "Télécommande Web",
|
||||||
"action.playTracksNext": "Jouer ${app.selectedMediaItems.length} musiques après",
|
"action.playTracksNext": "Jouer ${app.selectedMediaItems.length} musiques après",
|
||||||
"action.playTracksLater": "Jouer ${app.selectedMediaItems.length} musiques plus tard",
|
"action.playTracksLater": "Jouer ${app.selectedMediaItems.length} musiques plus tard",
|
||||||
"action.removeTracks": "Retirer ${self.selectedItems.length} musiques de la file d'attente",
|
"action.removeTracks": "Retirer ${self.selectedItems.length} musiques de la file d'attente",
|
||||||
|
@ -343,6 +343,8 @@
|
||||||
"settings.notyf.general.keybindings.update.success": "Le raccourci clavier a bien été mis à jour",
|
"settings.notyf.general.keybindings.update.success": "Le raccourci clavier a bien été mis à jour",
|
||||||
"settings.prompt.general.keybindings.update.success": "Le raccourci clavier a bien été mis à jour. Appuyez sur OK pour relancer Cider",
|
"settings.prompt.general.keybindings.update.success": "Le raccourci clavier a bien été mis à jour. Appuyez sur OK pour relancer Cider",
|
||||||
"settings.option.general.keybindings.open": "Ouvrir",
|
"settings.option.general.keybindings.open": "Ouvrir",
|
||||||
|
"settings.option.general.themeUpdateNotification": "Vérifier automatiquement les mises à jour des thèmes",
|
||||||
|
"settings.option.general.showLovedTracksInline": "Afficher les pistes aimées en ligne",
|
||||||
"settings.description.search": "Rechercher",
|
"settings.description.search": "Rechercher",
|
||||||
"settings.description.albums": "Albums de la bibliothèque",
|
"settings.description.albums": "Albums de la bibliothèque",
|
||||||
"settings.description.artists": "Artites de la bibliothèque",
|
"settings.description.artists": "Artites de la bibliothèque",
|
||||||
|
@ -414,8 +416,15 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Profil de spatialisation Cider",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Profil de spatialisation Cider",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Modifie le profil de réglage de la spatialisation.",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Modifie le profil de réglage de la spatialisation.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standard",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standard",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.soundstage": "Scène sonore",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.separation": "Séparation",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.minimal": "Minimale",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "La spatialisation n'est pas compatible avec le moteur de traitement psycho-acoustique. Veuillez le désactiver pour continuer.",
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "La spatialisation n'est pas compatible avec le moteur de traitement psycho-acoustique. Veuillez le désactiver pour continuer.",
|
||||||
|
"settings.option.audio.dbspl.display": "Affichage dB SPL",
|
||||||
|
"settings.option.audio.dbspl.description": "(Utilisateurs avancés uniquement) Affichez dB SPL au lieu de dBFS sur le curseur de volume.",
|
||||||
|
"settings.option.audio.dbfs.calibration": "Calibration 0 dBFS",
|
||||||
|
"settings.option.audio.dbfs.description": "Entrez le SPL de crête pondéré en Z lorsque Cider est à 0 dBFS.",
|
||||||
"settings.header.visual": "Visuel",
|
"settings.header.visual": "Visuel",
|
||||||
"settings.header.visual.description": "Ajuster les paramètres visuels de Cider.",
|
"settings.header.visual.description": "Ajuster les paramètres visuels de Cider.",
|
||||||
"settings.option.visual.windowStyle": "Style de la fenêtre",
|
"settings.option.visual.windowStyle": "Style de la fenêtre",
|
||||||
|
@ -469,7 +478,7 @@
|
||||||
"settings.option.visual.showPersonalInfo": "Afficher vos informations personnelles",
|
"settings.option.visual.showPersonalInfo": "Afficher vos informations personnelles",
|
||||||
"settings.header.window": "Fenêtre",
|
"settings.header.window": "Fenêtre",
|
||||||
"settings.header.window.description": "Ajustez les paramètres de la fenêtre pour Cider.",
|
"settings.header.window.description": "Ajustez les paramètres de la fenêtre pour Cider.",
|
||||||
"settings.option.window.openOnStartup": "Ouvrir Cider au démarrage.",
|
"settings.option.window.openOnStartup": "Ouvrir Cider au démarrage",
|
||||||
"settings.option.window.openOnStartup.hidden": "Ouvrir caché",
|
"settings.option.window.openOnStartup.hidden": "Ouvrir caché",
|
||||||
"settings.option.window.useNativeTitleBar": "Utiliser la barre de titre native",
|
"settings.option.window.useNativeTitleBar": "Utiliser la barre de titre native",
|
||||||
"settings.option.window.windowControlStyle": "Style de contrôle de la fenêtre",
|
"settings.option.window.windowControlStyle": "Style de contrôle de la fenêtre",
|
||||||
|
@ -489,7 +498,7 @@
|
||||||
"settings.option.connectivity.discordRPC.clientName": "Nom du client",
|
"settings.option.connectivity.discordRPC.clientName": "Nom du client",
|
||||||
"settings.option.connectivity.discordRPC.clearOnPause": "Désactiver le Discord Rich Presence quand la musique est en pause",
|
"settings.option.connectivity.discordRPC.clearOnPause": "Désactiver le Discord Rich Presence quand la musique est en pause",
|
||||||
"settings.option.connectivity.discordRPC.hideButtons": "Cacher les bouttons sur le Discord Rich Presence",
|
"settings.option.connectivity.discordRPC.hideButtons": "Cacher les bouttons sur le Discord Rich Presence",
|
||||||
"settings.option.connectivity.discordRPC.hideTimestamp": "Cacher le timestamp sur le Discord Rich Presence",
|
"settings.option.connectivity.discordRPC.hideTimestamp": "Cacher le temps restant sur le Discord Rich Presence",
|
||||||
"settings.option.connectivity.discordRPC.detailsFormat": "Format des détails",
|
"settings.option.connectivity.discordRPC.detailsFormat": "Format des détails",
|
||||||
"settings.option.connectivity.discordRPC.stateFormat": "Format de l'état",
|
"settings.option.connectivity.discordRPC.stateFormat": "Format de l'état",
|
||||||
"settings.option.connectivity.lastfmScrobble": "Scrobble LastFM",
|
"settings.option.connectivity.lastfmScrobble": "Scrobble LastFM",
|
||||||
|
@ -509,14 +518,14 @@
|
||||||
"settings.option.experimental.compactUI": "Interface utilisateur compacte",
|
"settings.option.experimental.compactUI": "Interface utilisateur compacte",
|
||||||
"settings.option.window.close_button_hide": "Le bouton de fermeture doit masquer l'application",
|
"settings.option.window.close_button_hide": "Le bouton de fermeture doit masquer l'application",
|
||||||
"settings.option.experimental.inline_playlists": "Playlists et albums en ligne",
|
"settings.option.experimental.inline_playlists": "Playlists et albums en ligne",
|
||||||
"settings.option.advanced.playlistTrackMapping": "Playlist Track Mapping",
|
"settings.option.advanced.playlistTrackMapping": "Cartographie des pistes de la playlists",
|
||||||
"settings.option.advanced.playlistTrackMapping.description": "Permet une analyse approfondie des listes de lecture pour déterminer quels titres se trouvent dans quelles listes de lecture. Les temps de construction du cache des listes de lecture peuvent augmenter de manière significative.",
|
"settings.option.advanced.playlistTrackMapping.description": "Permet une analyse approfondie des playlists pour déterminer quels titres se trouvent dans quelles playlists. Les temps de construction du cache des playlists peuvent augmenter de manière significative.",
|
||||||
"settings.option.visual.transparent": "Cadre transparent",
|
"settings.option.visual.transparent": "Cadre transparent",
|
||||||
"settings.option.visual.transparent.description": "(requière le support de thème, nécessite un relancement)",
|
"settings.option.visual.transparent.description": "Requière le support de thème, nécessite un relancement",
|
||||||
"settings.header.advanced": "Avancé",
|
"settings.header.advanced": "Avancé",
|
||||||
"settings.header.connect": "Synchroniser",
|
"settings.header.connect": "Synchroniser",
|
||||||
"settings.option.connect.link_account": "Activer la synchronisation avec Cider Connect",
|
"settings.option.connect.link_account": "Activer la synchronisation avec Cider Connect",
|
||||||
"settings.option.connect.link_account.description": "Lier votre compte Discord avec Cider Connect vous permet de stocker les données de l'utilisateur, y compris les paramètres, les EQ, et éventuellement plus une fois terminé. (Travail en cours)",
|
"settings.option.connect.link_account.description": "Lier votre compte Discord avec Cider Connect vous permet de stocker les données de l'utilisateur, y compris les paramètres, les EQ, et éventuellement plus une fois terminé. (en cours de développement)",
|
||||||
"spatial.notTurnedOn": "La spatialisation audio est désactivée. Pour l'utiliser, vous devez d'abord l'activer.",
|
"spatial.notTurnedOn": "La spatialisation audio est désactivée. Pour l'utiliser, vous devez d'abord l'activer.",
|
||||||
"spatial.spatialProperties": "Propriétés spatiales",
|
"spatial.spatialProperties": "Propriétés spatiales",
|
||||||
"spatial.width": "Largeur",
|
"spatial.width": "Largeur",
|
||||||
|
|
|
@ -334,9 +334,13 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "最先端のオーディオセットアップを模した、異なる音楽の雰囲気を実現します。",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "最先端のオーディオセットアップを模した、異なる音楽の雰囲気を実現します。",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider Atmosphere Realizer™️ モード",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider Atmosphere Realizer™️ モード",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "Atmosphere Realizer™️のモードを変更します",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "Atmosphere Realizer™️のモードを変更します",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "自然 (普通)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "ほうじ茶チーズクリーマティー",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_HIGH": "自然 (高い)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "玄米茶タピオカミルクティー",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "自然 (プラス)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_1": "岩塩クリームチーズティー",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_2": "宇治抹茶ミルクティー",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E168_1": "春毫ジャスミンマキアート",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z3600": "北海道のロイヤルミルクティー",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z8500": "ムーンライトソフトケーキ",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "音楽をより豊かに、生き生きとさせます",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "音楽をより豊かに、生き生きとさせます",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "CAPはSpatializationと互換性がありません",
|
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "CAPはSpatializationと互換性がありません",
|
||||||
|
|
|
@ -343,6 +343,8 @@
|
||||||
"settings.notyf.general.keybindings.update.success": "Keybind updated successfully",
|
"settings.notyf.general.keybindings.update.success": "Keybind updated successfully",
|
||||||
"settings.prompt.general.keybindings.update.success": "Keybind updated successfully. Press OK to relaunch Cider",
|
"settings.prompt.general.keybindings.update.success": "Keybind updated successfully. Press OK to relaunch Cider",
|
||||||
"settings.option.general.keybindings.open": "Open",
|
"settings.option.general.keybindings.open": "Open",
|
||||||
|
"settings.option.general.themeUpdateNotification": "Automatically check for theme updates",
|
||||||
|
"settings.option.general.showLovedTracksInline": "Show loved tracks inline",
|
||||||
"settings.description.search": "Search",
|
"settings.description.search": "Search",
|
||||||
"settings.description.albums": "Library Albums",
|
"settings.description.albums": "Library Albums",
|
||||||
"settings.description.artists": "Library Artists",
|
"settings.description.artists": "Library Artists",
|
||||||
|
@ -414,6 +416,9 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Cider Spatialization Profile",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Cider Spatialization Profile",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Changes the Tuning Profile of the Spatialization.",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Changes the Tuning Profile of the Spatialization.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standard",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standard",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.soundstage": "Soundstage",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.separation": "Separation",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.minimal": "Minimal",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Spatialization is not compatible with CAP. Please disable CAP to continue.",
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Spatialization is not compatible with CAP. Please disable CAP to continue.",
|
||||||
"settings.option.audio.dbspl.display": "dB SPL Display",
|
"settings.option.audio.dbspl.display": "dB SPL Display",
|
||||||
|
|
|
@ -283,9 +283,13 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "以最先进的音频置为蓝本,实现不同的音乐气氛。",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "以最先进的音频置为蓝本,实现不同的音乐气氛。",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider 音乐气氛™️模式",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Cider 音乐气氛™️模式",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "更改气氛实现器模块的操作模式。",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "更改气氛实现器模块的操作模式。",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "自然(标准)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_STANDARD": "红茶芝士奶盖",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_HIGH": "自然(高)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "玄米珍珠奶茶",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.NATURAL_PLUS": "自然(增强)",
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_1": "岩盐芝士奶茶",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E68_2": "宇治抹茶奶茶",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.E168_1": "春毫茉莉玛琪雅朵",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z3600": "北海道奶茶",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.Z8500": "月光软饼干",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider 数码增强音频处理™️",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider 数码增强音频处理™️",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "通过人类的听力心理学模型和 AAC 编码特色的即时算法,强化 256 kbps AAC 音频的感知音频质量。",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "通过人类的听力心理学模型和 AAC 编码特色的即时算法,强化 256 kbps AAC 音频的感知音频质量。",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "数码增强音频处理设置",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "数码增强音频处理设置",
|
||||||
|
|
|
@ -458,6 +458,16 @@ export class BrowserWindow {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
app.get("/cideraudio/impulses/:file", (req, res) => {
|
||||||
|
const impulseExternals = join(utils.getPath("externals"), "/impulses/")
|
||||||
|
const impulseFile = join(impulseExternals, req.params.file)
|
||||||
|
if(existsSync(impulseFile)) {
|
||||||
|
res.sendFile(impulseFile)
|
||||||
|
}else{
|
||||||
|
res.sendFile(join(utils.getPath('srcPath'), "./renderer/audio/impulses/" + req.params.file))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
app.get("/api/playback/:action", (req, res) => {
|
app.get("/api/playback/:action", (req, res) => {
|
||||||
const action = req.params.action;
|
const action = req.params.action;
|
||||||
switch (action) {
|
switch (action) {
|
||||||
|
@ -938,13 +948,23 @@ export class BrowserWindow {
|
||||||
switch (path) {
|
switch (path) {
|
||||||
default:
|
default:
|
||||||
case "plugins":
|
case "plugins":
|
||||||
|
if (existsSync(utils.getPath("plugins"))) {
|
||||||
shell.openPath(utils.getPath("plugins"));
|
shell.openPath(utils.getPath("plugins"));
|
||||||
|
} else {
|
||||||
|
mkdirSync(utils.getPath("plugins"));
|
||||||
|
shell.openPath(utils.getPath("plugins"));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "userdata":
|
case "userdata":
|
||||||
shell.openPath(app.getPath("userData"));
|
shell.openPath(app.getPath("userData"));
|
||||||
break;
|
break;
|
||||||
case "themes":
|
case "themes":
|
||||||
|
if (existsSync(utils.getPath("themes"))) {
|
||||||
shell.openPath(utils.getPath("themes"));
|
shell.openPath(utils.getPath("themes"));
|
||||||
|
} else {
|
||||||
|
mkdirSync(utils.getPath("themes"));
|
||||||
|
shell.openPath(utils.getPath("themes"));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -108,7 +108,8 @@ export class Store {
|
||||||
process.platform == "darwin" ? "Option" : "Shift",
|
process.platform == "darwin" ? "Option" : "Shift",
|
||||||
"I"
|
"I"
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"showLovedTracksInline": true
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"followedArtists": [],
|
"followedArtists": [],
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -94,7 +94,7 @@ const CiderAudio = {
|
||||||
spatialProfiles: [
|
spatialProfiles: [
|
||||||
{
|
{
|
||||||
"id": "72_420maikiwi",
|
"id": "72_420maikiwi",
|
||||||
"file": './audio/impulses/CiderSpatial_v72.420_Maikiwi.wav',
|
"file": './cideraudio/impulses/CiderSpatial_v72.420_Maikiwi.wav',
|
||||||
"name": "Maikiwi",
|
"name": "Maikiwi",
|
||||||
"description": "",
|
"description": "",
|
||||||
"gainComp": "1.3381352151540196",
|
"gainComp": "1.3381352151540196",
|
||||||
|
@ -102,7 +102,7 @@ const CiderAudio = {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "71_420maikiwi",
|
"id": "71_420maikiwi",
|
||||||
"file": './audio/impulses/CiderSpatial_v71.420_Maikiwi.wav',
|
"file": './cideraudio/impulses/CiderSpatial_v71.420_Maikiwi.wav',
|
||||||
"name": "Soundstage",
|
"name": "Soundstage",
|
||||||
"description": "",
|
"description": "",
|
||||||
"gainComp": "1.3963683610559376",
|
"gainComp": "1.3963683610559376",
|
||||||
|
@ -110,7 +110,7 @@ const CiderAudio = {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "70_422maikiwi",
|
"id": "70_422maikiwi",
|
||||||
"file": './audio/impulses/CiderSpatial_v70.422_Maikiwi.wav',
|
"file": './cideraudio/impulses/CiderSpatial_v70.422_Maikiwi.wav',
|
||||||
"name": "Separation",
|
"name": "Separation",
|
||||||
"description": "",
|
"description": "",
|
||||||
"gainComp": "1.30767553892022",
|
"gainComp": "1.30767553892022",
|
||||||
|
@ -118,7 +118,7 @@ const CiderAudio = {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "standard",
|
"id": "standard",
|
||||||
"file": './audio/impulses/CiderSpatial_v69_Standard.wav',
|
"file": './cideraudio/impulses/CiderSpatial_v69_Standard.wav',
|
||||||
"name": "Minimal",
|
"name": "Minimal",
|
||||||
"description": "",
|
"description": "",
|
||||||
"gainComp": "1.2647363474711515",
|
"gainComp": "1.2647363474711515",
|
||||||
|
@ -128,25 +128,19 @@ const CiderAudio = {
|
||||||
atmosphereRealizerProfiles: [
|
atmosphereRealizerProfiles: [
|
||||||
{
|
{
|
||||||
"id": "NATURAL_STANDARD",
|
"id": "NATURAL_STANDARD",
|
||||||
"file": './audio/impulses/AtmosphereRealizer_NaturalStandard.wav',
|
"file": './cideraudio/impulses/AtmosphereRealizer_NaturalStandard.wav',
|
||||||
"name": "Natural (Standard)",
|
"name": "Natural (Standard)",
|
||||||
"description": "",
|
"description": "",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"id": "NATURAL_HIGH",
|
|
||||||
"file": './audio/impulses/AtmosphereRealizer_NaturalHigh.wav',
|
|
||||||
"name": "Natural (High)",
|
|
||||||
"description": "",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"id": "NATURAL_PLUS",
|
"id": "NATURAL_PLUS",
|
||||||
"file": './audio/impulses/AtmosphereRealizer_Natural+.wav',
|
"file": './cideraudio/impulses/AtmosphereRealizer_Natural+.wav',
|
||||||
"name": "Natural (Plus)",
|
"name": "Natural (Plus)",
|
||||||
"description": "",
|
"description": "",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "CRYPTO",
|
"id": "CRYPTO",
|
||||||
"file": './audio/impulses/AtmosphereRealizer_Cryptofyre.wav',
|
"file": './cideraudio/impulses/AtmosphereRealizer_Cryptofyre.wav',
|
||||||
"name": "Cryptofyre",
|
"name": "Cryptofyre",
|
||||||
"description": "",
|
"description": "",
|
||||||
}
|
}
|
||||||
|
@ -504,7 +498,7 @@ const CiderAudio = {
|
||||||
case "MAIKIWI":
|
case "MAIKIWI":
|
||||||
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
||||||
CiderAudio.audioNodes.llpw[0].normalize = false;
|
CiderAudio.audioNodes.llpw[0].normalize = false;
|
||||||
fetch('./audio/impulses/CAP_Maikiwi.wav').then(async (impulseData) => {
|
fetch('./cideraudio/impulses/CAP_Maikiwi.wav').then(async (impulseData) => {
|
||||||
let bufferedImpulse = await impulseData.arrayBuffer();
|
let bufferedImpulse = await impulseData.arrayBuffer();
|
||||||
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
||||||
});
|
});
|
||||||
|
@ -528,7 +522,7 @@ const CiderAudio = {
|
||||||
case "NATURAL":
|
case "NATURAL":
|
||||||
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
||||||
CiderAudio.audioNodes.llpw[0].normalize = false;
|
CiderAudio.audioNodes.llpw[0].normalize = false;
|
||||||
fetch('./audio/impulses/CAP_Natural.wav').then(async (impulseData) => {
|
fetch('./cideraudio/impulses/CAP_Natural.wav').then(async (impulseData) => {
|
||||||
let bufferedImpulse = await impulseData.arrayBuffer();
|
let bufferedImpulse = await impulseData.arrayBuffer();
|
||||||
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
||||||
});
|
});
|
||||||
|
@ -580,7 +574,7 @@ const CiderAudio = {
|
||||||
default:
|
default:
|
||||||
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
CiderAudio.audioNodes.llpw[0] = CiderAudio.context.createConvolver();
|
||||||
CiderAudio.audioNodes.llpw[0].normalize = false;
|
CiderAudio.audioNodes.llpw[0].normalize = false;
|
||||||
fetch('./audio/impulses/CAP_Maikiwi.wav').then(async (impulseData) => {
|
fetch('./cideraudio/impulses/CAP_Maikiwi.wav').then(async (impulseData) => {
|
||||||
let bufferedImpulse = await impulseData.arrayBuffer();
|
let bufferedImpulse = await impulseData.arrayBuffer();
|
||||||
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
CiderAudio.audioNodes.llpw[0].buffer = await CiderAudio.context.decodeAudioData(bufferedImpulse);
|
||||||
});
|
});
|
||||||
|
@ -740,7 +734,7 @@ const CiderAudio = {
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
CiderAudio.audioNodes.spatialgainNodeNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'h0':
|
case 'h0':
|
||||||
|
|
Binary file not shown.
|
@ -235,7 +235,9 @@ const app = new Vue({
|
||||||
pages: [],
|
pages: [],
|
||||||
},
|
},
|
||||||
moreinfodata: [],
|
moreinfodata: [],
|
||||||
notyf: notyf
|
notyf: notyf,
|
||||||
|
idleTimer : null,
|
||||||
|
idleState : false,
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
cfg: {
|
cfg: {
|
||||||
|
@ -784,8 +786,8 @@ const app = new Vue({
|
||||||
|
|
||||||
MusicKit.getInstance().videoContainerElement = document.getElementById("apple-music-video-player")
|
MusicKit.getInstance().videoContainerElement = document.getElementById("apple-music-video-player")
|
||||||
|
|
||||||
ipcRenderer.on('theme-update', (event, arg) => {
|
ipcRenderer.on('theme-update', async (event, arg) => {
|
||||||
less.refresh(true, true, true)
|
await less.refresh(true, true, true)
|
||||||
self.setTheme(self.cfg.visual.theme, true)
|
self.setTheme(self.cfg.visual.theme, true)
|
||||||
if (app.cfg.visual.styles.length != 0) {
|
if (app.cfg.visual.styles.length != 0) {
|
||||||
app.reloadStyles()
|
app.reloadStyles()
|
||||||
|
@ -936,12 +938,26 @@ const app = new Vue({
|
||||||
this.getBrowsePage();
|
this.getBrowsePage();
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
}, 500)
|
}, 500)
|
||||||
|
document.querySelector('#apple-music-video-player-controls').addEventListener('mousemove', () => {
|
||||||
|
this.showFoo('.music-player-info',2000);
|
||||||
|
})
|
||||||
ipcRenderer.invoke("renderer-ready", true)
|
ipcRenderer.invoke("renderer-ready", true)
|
||||||
document.querySelector("#LOADER").remove()
|
document.querySelector("#LOADER").remove()
|
||||||
if (this.cfg.general.themeUpdateNotification && !this.isDev) {
|
if (this.cfg.general.themeUpdateNotification && !this.isDev) {
|
||||||
this.checkForThemeUpdates()
|
this.checkForThemeUpdates()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
showFoo(querySelector,time) {
|
||||||
|
clearTimeout(this.idleTimer);
|
||||||
|
if (this.idleState == true) {
|
||||||
|
document.querySelector(querySelector).classList.remove("inactive");
|
||||||
|
}
|
||||||
|
this.idleState = false;
|
||||||
|
this.idleTimer = setTimeout(() => {
|
||||||
|
document.querySelector(querySelector).classList.add("inactive");
|
||||||
|
this.idleState = true;
|
||||||
|
}, time);
|
||||||
|
},
|
||||||
setContentScrollPos(scroll) {
|
setContentScrollPos(scroll) {
|
||||||
this.chrome.contentScrollPosY = scroll.target.scrollTop
|
this.chrome.contentScrollPosY = scroll.target.scrollTop
|
||||||
},
|
},
|
||||||
|
@ -991,7 +1007,7 @@ const app = new Vue({
|
||||||
document.querySelectorAll(`[id*='less']`).forEach(el => {
|
document.querySelectorAll(`[id*='less']`).forEach(el => {
|
||||||
el.remove()
|
el.remove()
|
||||||
});
|
});
|
||||||
less.refresh()
|
await less.refresh()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async reloadStyles() {
|
async reloadStyles() {
|
||||||
|
@ -1019,7 +1035,7 @@ const app = new Vue({
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
less.registerStylesheetsImmediately()
|
less.registerStylesheetsImmediately()
|
||||||
less.refresh(true, true, true)
|
await less.refresh(true, true, true)
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
return
|
return
|
||||||
},
|
},
|
||||||
|
|
|
@ -417,7 +417,7 @@ input[type=range].web-slider::-webkit-slider-runnable-track {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 16px;
|
right: 16px;
|
||||||
top: 3%;
|
top: 3%;
|
||||||
background: #1c1c1c8f;
|
background: var(--color2);
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
height: 94%;
|
height: 94%;
|
||||||
|
@ -875,17 +875,17 @@ input[type=range].web-slider::-webkit-slider-runnable-track {
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
left: 0px;
|
left: 0px;
|
||||||
background: var(--keyColor);
|
background: var(--keyColor);
|
||||||
animation: expandIndicator .2s cubic-bezier(0.25, 1, 0.5, 1);
|
// animation: expandIndicator .2s cubic-bezier(0.25, 1, 0.5, 1);
|
||||||
|
|
||||||
@keyframes expandIndicator {
|
// @keyframes expandIndicator {
|
||||||
0% {
|
// 0% {
|
||||||
transform: scaleY(0);
|
// transform: scaleY(0);
|
||||||
}
|
// }
|
||||||
|
|
||||||
100% {
|
// 100% {
|
||||||
transform: scaleY(1);
|
// transform: scaleY(1);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-chrome {
|
.app-chrome {
|
||||||
|
@ -2886,37 +2886,39 @@ input[type="range"].web-slider.display--small::-webkit-slider-thumb {
|
||||||
.wpfade_transform-enter-active,
|
.wpfade_transform-enter-active,
|
||||||
.wpfade_transform-leave-active {
|
.wpfade_transform-leave-active {
|
||||||
--transitionTime: 0.2s;
|
--transitionTime: 0.2s;
|
||||||
transition: opacity var(--transitionTime) var(--appleEase), transform var(--transitionTime) var(--appleEase);
|
transition : opacity var(--transitionTime) var(--appleEase);
|
||||||
will-change : opacity, transform;
|
will-change : opacity, transform;
|
||||||
}
|
}
|
||||||
|
|
||||||
.wpfade_transform-enter {
|
.wpfade_transform-enter {
|
||||||
opacity : 0;
|
opacity : 0;
|
||||||
transform: translateX(50%) translate3d(0,0,0);
|
transform : unset;
|
||||||
will-change: opacity, transform;
|
will-change: opacity;
|
||||||
}
|
}
|
||||||
|
|
||||||
.wpfade_transform-leave-to {
|
.wpfade_transform-leave-to {
|
||||||
opacity : 0;
|
opacity : 0;
|
||||||
transform: translateX(-50%) translate3d(0,0,0);
|
transform : unset;
|
||||||
will-change: opacity, transform;
|
will-change: opacity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.wpfade_transform_backwards-enter-active,
|
.wpfade_transform_backwards-enter-active,
|
||||||
.wpfade_transform_backwards-leave-active {
|
.wpfade_transform_backwards-leave-active {
|
||||||
--transitionTime: 0.2s;
|
--transitionTime: 0.2s;
|
||||||
transition: opacity var(--transitionTime) var(--appleEase), transform var(--transitionTime) var(--appleEase);
|
transition : opacity var(--transitionTime) var(--appleEase);
|
||||||
}
|
}
|
||||||
|
|
||||||
.wpfade_transform_backwards-enter {
|
.wpfade_transform_backwards-enter {
|
||||||
opacity : 0;
|
opacity : 0;
|
||||||
transform: translateX(-50%) translate3d(0,0,0);
|
transform : unset;
|
||||||
will-change: opacity, transform;
|
will-change: opacity;
|
||||||
}
|
}
|
||||||
|
|
||||||
.wpfade_transform_backwards-leave-to {
|
.wpfade_transform_backwards-leave-to {
|
||||||
opacity : 0;
|
opacity : 0;
|
||||||
transform: translateX(50%) translate3d(0,0,0);
|
transform : unset;
|
||||||
will-change: opacity, transform;
|
will-change: opacity;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fabfade-enter-active,
|
.fabfade-enter-active,
|
||||||
|
@ -2944,12 +2946,12 @@ input[type="range"].web-slider.display--small::-webkit-slider-thumb {
|
||||||
|
|
||||||
.drawertransition-enter-active,
|
.drawertransition-enter-active,
|
||||||
.drawertransition-leave-active {
|
.drawertransition-leave-active {
|
||||||
transition: right .25s var(--appleEase);
|
transition: transform .25s var(--appleEase);
|
||||||
}
|
}
|
||||||
|
|
||||||
.drawertransition-enter,
|
.drawertransition-enter,
|
||||||
.drawertransition-leave-to {
|
.drawertransition-leave-to {
|
||||||
right: -300px;
|
transform: translateX(400px);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
|
@ -2988,13 +2990,70 @@ input[type="range"].web-slider.display--small::-webkit-slider-thumb {
|
||||||
top: var(--chromeHeight1);
|
top: var(--chromeHeight1);
|
||||||
bottom: unset;
|
bottom: unset;
|
||||||
}
|
}
|
||||||
|
.inactive {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
#apple-music-video-player-controls {
|
#apple-music-video-player-controls {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 100001;
|
z-index: 100001;
|
||||||
float: left;
|
float: left;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
.playback-info{
|
||||||
|
position: absolute;
|
||||||
|
bottom: 2vw;
|
||||||
|
left: 2vw;
|
||||||
|
width: 97%;
|
||||||
|
.song-progress {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
.app-chrome-item.display--large{
|
||||||
|
position: relative;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
.playback-button {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
padding: 3px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.song-artist-album {
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 12px;
|
||||||
|
text-align: center;
|
||||||
|
/*height: 1.2em;
|
||||||
|
line-height: 1.2em;*/
|
||||||
|
z-index: 1;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
width: 80%;
|
||||||
|
max-width: 340px;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.song-artist-album-content {
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 12px;
|
||||||
|
text-align: center;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
&.song-artist-normal {
|
||||||
|
height: inherit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
&.song-artist-marquee {
|
||||||
|
> marquee {
|
||||||
|
margin-bottom: -3px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#apple-music-video-player-controls #player-exit {
|
#apple-music-video-player-controls #player-exit {
|
||||||
|
@ -3111,6 +3170,27 @@ body.no-gpu {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.floating-header {
|
||||||
|
background: black;
|
||||||
|
backdrop-filter: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
.artworkContainer {
|
||||||
|
animation: unset!important;
|
||||||
|
opacity: 0.7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.info-rect-card {
|
||||||
|
&:before {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-panel .menu-panel-body {
|
||||||
|
background: rgb(30 30 30);
|
||||||
|
backdrop-filter: unset;
|
||||||
|
}
|
||||||
|
|
||||||
#navigation-bar {
|
#navigation-bar {
|
||||||
backdrop-filter: unset;
|
backdrop-filter: unset;
|
||||||
mix-blend-mode: unset;
|
mix-blend-mode: unset;
|
||||||
|
|
|
@ -87,3 +87,39 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.wpfade_transform-enter-active,
|
||||||
|
.wpfade_transform-leave-active {
|
||||||
|
--transitionTime: 0.2s;
|
||||||
|
transition: opacity var(--transitionTime) var(--appleEase), transform var(--transitionTime) var(--appleEase);
|
||||||
|
will-change: opacity, transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wpfade_transform-enter {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(50%) translate3d(0,0,0);
|
||||||
|
will-change: opacity, transform;
|
||||||
|
}
|
||||||
|
.wpfade_transform-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-50%) translate3d(0,0,0);
|
||||||
|
will-change: opacity, transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.wpfade_transform_backwards-enter-active,
|
||||||
|
.wpfade_transform_backwards-leave-active {
|
||||||
|
--transitionTime: 0.2s;
|
||||||
|
transition: opacity var(--transitionTime) var(--appleEase), transform var(--transitionTime) var(--appleEase);
|
||||||
|
}
|
||||||
|
|
||||||
|
.wpfade_transform_backwards-enter {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-50%) translate3d(0,0,0);
|
||||||
|
will-change: opacity, transform;
|
||||||
|
}
|
||||||
|
.wpfade_transform_backwards-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(50%) translate3d(0,0,0);
|
||||||
|
will-change: opacity, transform;
|
||||||
|
}
|
|
@ -72,6 +72,57 @@
|
||||||
title="Fullscreen">
|
title="Fullscreen">
|
||||||
<%- include("../svg/fullscreen.svg") %>
|
<%- include("../svg/fullscreen.svg") %>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="playback-info music-player-info">
|
||||||
|
<div class="song-artist-album-content"
|
||||||
|
style="display: inline-block; -webkit-box-orient: horizontal; white-space: nowrap;">
|
||||||
|
<div class="song-artist" style="display: inline-block">
|
||||||
|
{{ mk.nowPlayingItem?.attributes?.artistName ?? '' }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="song-name">
|
||||||
|
{{ mk.nowPlayingItem?.attributes?.name ?? '' }}
|
||||||
|
<div class="explicit-icon"
|
||||||
|
v-if="mk.nowPlayingItem?.attributes?.contentRating == 'explicit'"
|
||||||
|
style="display: inline-block"></div>
|
||||||
|
</div>
|
||||||
|
<div class="song-progress">
|
||||||
|
<p style="width: auto">{{ convertTime(getSongProgress()) }}</p>
|
||||||
|
<input type="range" step="0.01" min="0" :style="progressBarStyle()" style="width: 95%"
|
||||||
|
@input="playerLCD.desiredDuration = $event.target.value;playerLCD.userInteraction = true"
|
||||||
|
@mouseup="mk.seekToTime($event.target.value);setTimeout(()=>{playerLCD.desiredDuration = 0;playerLCD.userInteraction = false}, 1000);"
|
||||||
|
@touchend="mk.seekToTime($event.target.value);setTimeout(()=>{playerLCD.desiredDuration = 0;playerLCD.userInteraction = false}, 1000);"
|
||||||
|
:max="mk.currentPlaybackDuration" :value="getSongProgress()">
|
||||||
|
<p style="width: auto">{{ convertTime(mk.currentPlaybackDuration) }}
|
||||||
|
</div>
|
||||||
|
<div class="app-chrome-item display--large">
|
||||||
|
<div class="app-chrome-item volume display--large">
|
||||||
|
<button class="volume-button--small volume" @click="muteButtonPressed()"
|
||||||
|
:class="{'active': this.cfg.audio.volume == 0}"
|
||||||
|
:title="cfg.audio.muted ? $root.getLz('term.unmute') : $root.getLz('term.mute')"
|
||||||
|
v-b-tooltip.hover></button>
|
||||||
|
<input type="range" @wheel="volumeWheel" :step="cfg.audio.volumeStep" min="0" :max="cfg.audio.maxVolume"
|
||||||
|
v-model="mk.volume" v-if="typeof mk.volume != 'undefined'" @change="checkMuteChange()"
|
||||||
|
v-b-tooltip.hover :title="formatVolumeTooltip()">
|
||||||
|
</div>
|
||||||
|
<button class="playback-button pause" @click="mk.pause()" v-if="mk.isPlaying"
|
||||||
|
:title="$root.getLz('term.pause')" v-b-tooltip.hover></button>
|
||||||
|
<button class="playback-button play" @click="mk.play()" v-else
|
||||||
|
:title="$root.getLz('term.play')" v-b-tooltip.hover></button>
|
||||||
|
<div class="app-chrome-item generic">
|
||||||
|
<template v-if="lyrics && lyrics != [] && lyrics.length > 0">
|
||||||
|
<button class="playback-button--small lyrics"
|
||||||
|
:title="$root.getLz('term.lyrics')"
|
||||||
|
v-b-tooltip.hover
|
||||||
|
:class="{'active': drawer.panel == 'lyrics'}"
|
||||||
|
@click="invokeDrawer('lyrics')"></button>
|
||||||
|
</template>
|
||||||
|
<template v-else>
|
||||||
|
<button class="playback-button--small lyrics"
|
||||||
|
:style="{'opacity': 0.3, 'pointer-events': 'none'}"></button>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="apple-music-video-player"></div>
|
<div id="apple-music-video-player"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
<div class="modal-window">
|
<div class="modal-window">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<div class="modal-title">{{$root.getLz('action.cast.todevices')}}</div>
|
<div class="modal-title">{{$root.getLz('action.cast.todevices')}}</div>
|
||||||
<button class="close-btn" @click="close()" :aria-label="app.getLz('action.close')"></button>
|
<button class="close-btn" @click="close()" :aria-label="$root.getLz('action.close')"></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-content" style="overflow-y: overlay; padding: 3%">
|
<div class="modal-content" style="overflow-y: overlay; padding: 3%">
|
||||||
<div class="md-labeltext">{{$root.getLz('action.cast.chromecast')}}</div>
|
<div class="md-labeltext">{{$root.getLz('action.cast.chromecast')}}</div>
|
||||||
<div class="md-option-container" style="margin-top: 12px;margin-bottom: 12px;">
|
<div class="md-option-container" style="margin-top: 12px;margin-bottom: 12px;overflow-y: scroll;">
|
||||||
<template v-if="!scanning">
|
<template v-if="!scanning">
|
||||||
<template v-for="(device) in devices.cast">
|
<template v-for="(device) in devices.cast">
|
||||||
<div class="md-option-line" style="cursor: pointer" @click="setCast(device)">
|
<div class="md-option-line" style="cursor: pointer" @click="setCast(device)">
|
||||||
|
@ -34,7 +34,7 @@
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-labeltext" >{{$root.getLz('action.cast.airplay')}}</div>
|
<div class="md-labeltext" >{{$root.getLz('action.cast.airplay')}}</div>
|
||||||
<div class="md-option-container" style="margin-top: 12px;margin-bottom: 12px;">
|
<div class="md-option-container" style="margin-top: 12px;margin-bottom: 12px;overflow-y: scroll;">
|
||||||
<div class="md-option-line">
|
<div class="md-option-line">
|
||||||
<div class="md-option-segment">
|
<div class="md-option-segment">
|
||||||
{{'EXPERIMENTAL!!! Supports Homepods / Apple TVs / Shairport for now, AirPlay on Samsung/LG/Sony devices will be added later'}}
|
{{'EXPERIMENTAL!!! Supports Homepods / Apple TVs / Shairport for now, AirPlay on Samsung/LG/Sony devices will be added later'}}
|
||||||
|
|
|
@ -128,7 +128,7 @@
|
||||||
} else {
|
} else {
|
||||||
this.itemId = this.item.id;
|
this.itemId = this.item.id;
|
||||||
}
|
}
|
||||||
if (this.item.attributes.playParams) {
|
if (this.item.attributes.playParams && this.$root.cfg.general.showLovedTracksInline) {
|
||||||
this.getHeartStatus();
|
this.getHeartStatus();
|
||||||
}
|
}
|
||||||
let duration = this.item.attributes.durationInMillis ?? 0
|
let duration = this.item.attributes.durationInMillis ?? 0
|
||||||
|
|
|
@ -2,8 +2,15 @@
|
||||||
<div class="mini-view" tabindex="0">
|
<div class="mini-view" tabindex="0">
|
||||||
<div class="background">
|
<div class="background">
|
||||||
</div>
|
</div>
|
||||||
<div class="player-pin" title="Pin to Top" @click="app.pinMiniPlayer()">
|
<div class="player-pin" title="Pin to Top" v-if="app.cfg.visual.miniplayer_top_toggle === false" @click="app.pinMiniPlayer()">
|
||||||
<span id="mini-pin">📌</span>
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" fill="none" class="feather feather-pin">
|
||||||
|
<path d="M7.05664 16.3613C7.05664 17.1523 7.59277 17.6797 8.42773 17.6797H13.1299V21.8369C13.1299 23.0762 13.7539 24.3242 14 24.3242C14.2373 24.3242 14.8613 23.0762 14.8613 21.8369V17.6797H19.5635C20.3984 17.6797 20.9346 17.1523 20.9346 16.3613C20.9346 14.4717 19.4316 12.5293 16.9531 11.6152L16.6631 7.52832C17.9727 6.78125 19.0098 5.96387 19.4668 5.38379C19.7041 5.06738 19.8271 4.75098 19.8271 4.46973C19.8271 3.88965 19.3789 3.45898 18.7197 3.45898H9.27148C8.6123 3.45898 8.16406 3.88965 8.16406 4.46973C8.16406 4.75098 8.28711 5.06738 8.52441 5.38379C8.98145 5.96387 10.0186 6.78125 11.3281 7.52832L11.0469 11.6152C8.55957 12.5293 7.05664 14.4717 7.05664 16.3613Z" fill="#ff2654"/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
<div class="player-pin" title="Unpin to Top" v-if="app.cfg.visual.miniplayer_top_toggle === true" @click="app.pinMiniPlayer(false)">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" fill="none" class="feather feather-pin-slashed">
|
||||||
|
<path d="M9.271 3.459c-.659 0-1.107.43-1.107 1.01 0 .282.114.59.352.897.448.59 1.494 1.415 2.777 2.162l-.07 1.02 8.99 8.991c.458-.202.722-.615.722-1.178 0-1.89-1.503-3.832-3.947-4.746l-.29-4.087c1.275-.747 2.312-1.555 2.76-2.144.246-.308.37-.633.37-.914 0-.58-.45-1.011-1.108-1.011H9.27ZM5.15 6.061l16.076 16.057c.272.281.73.273.993 0a.703.703 0 0 0 0-.984L6.15 5.076a.716.716 0 0 0-1.002 0 .711.711 0 0 0 0 .985Zm1.908 10.3c0 .791.536 1.319 1.37 1.319h4.703v4.157c0 1.24.624 2.487.861 2.487.246 0 .87-1.248.87-2.487V17.81h.413l-5.537-5.545c-1.678 1.002-2.68 2.557-2.68 4.095Z" fill="#ff2654"/>
|
||||||
|
</svg>
|
||||||
</div>
|
</div>
|
||||||
<div class="player-exit" title="Close" @click="app.miniPlayer(false)">
|
<div class="player-exit" title="Close" @click="app.miniPlayer(false)">
|
||||||
<svg fill="#323232e3" width="21" height="21" viewBox="0 0 21 21" aria-role="presentation" focusable="false" xmlns="http://www.w3.org/2000/svg">
|
<svg fill="#323232e3" width="21" height="21" viewBox="0 0 21 21" aria-role="presentation" focusable="false" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<div class="cd-queue-item"
|
<div class="cd-queue-item"
|
||||||
:class="{selected: selectedItems.includes(position)}"
|
:class="{selected: selectedItems.includes(position)}"
|
||||||
@click="select($event, position)"
|
@click="select($event, position)"
|
||||||
@dblclick="playQueueItem(position)" :key="position"
|
@dblclick="playQueueItem(queueItem.item.id)" :key="position"
|
||||||
@contextmenu="selected = position;queueContext($event, queueItem.item, position)">
|
@contextmenu="selected = position;queueContext($event, queueItem.item, position)">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-auto flex-center">
|
<div class="col-auto flex-center">
|
||||||
|
@ -150,8 +150,8 @@
|
||||||
}
|
}
|
||||||
app.showMenuPanel(menus[useMenu], event);
|
app.showMenuPanel(menus[useMenu], event);
|
||||||
},
|
},
|
||||||
playQueueItem(index) {
|
playQueueItem(id) {
|
||||||
app.mk.changeToMediaAtIndex(index)
|
app.mk.changeToMediaAtIndex(app.mk.queue._itemIDs.indexOf(id))
|
||||||
},
|
},
|
||||||
updateQueue() {
|
updateQueue() {
|
||||||
this.selected = -1
|
this.selected = -1
|
||||||
|
|
|
@ -63,10 +63,10 @@
|
||||||
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description')}}</small>
|
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description')}}</small>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-segment md-option-segment_auto">
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
<select class="md-select" style="width:180px;"
|
<select class="md-select" style="width:230px;"
|
||||||
v-model="$root.cfg.audio.maikiwiAudio.atmosphereRealizer1_value"
|
v-model="$root.cfg.audio.maikiwiAudio.atmosphereRealizer1_value"
|
||||||
v-on:change="CiderAudio.hierarchical_loading();">
|
v-on:change="CiderAudio.hierarchical_loading();">
|
||||||
<option v-for="profile in arprofiles" :value="profile.id">{{ getProfileLz("CTS", profile.name) }}</option>
|
<option v-for="profile in arprofiles" :value="profile.id">{{ getProfileLz("CAR", profile.id) }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -88,10 +88,10 @@
|
||||||
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description')}}</small>
|
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description')}}</small>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-segment md-option-segment_auto">
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
<select class="md-select" style="width:180px;"
|
<select class="md-select" style="width:230px;"
|
||||||
v-model="$root.cfg.audio.maikiwiAudio.atmosphereRealizer2_value"
|
v-model="$root.cfg.audio.maikiwiAudio.atmosphereRealizer2_value"
|
||||||
v-on:change="CiderAudio.hierarchical_loading();">
|
v-on:change="CiderAudio.hierarchical_loading();">
|
||||||
<option v-for="profile in arprofiles" :value="profile.id">{{ getProfileLz("CTS", profile.name) }}</option>
|
<option v-for="profile in arprofiles" :value="profile.id">{{ getProfileLz("CAR", profile.id) }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
<select class="md-select" style="width:180px;"
|
<select class="md-select" style="width:180px;"
|
||||||
v-model="$root.cfg.audio.maikiwiAudio.spatialProfile"
|
v-model="$root.cfg.audio.maikiwiAudio.spatialProfile"
|
||||||
v-on:change="toggleMaikiwiSpatial">
|
v-on:change="toggleMaikiwiSpatial">
|
||||||
<option v-for="profile in spprofiles" :value="profile.id">{{ getProfileLz("CAR", profile.id) }}</option>
|
<option v-for="profile in spprofiles" :value="profile.id">{{ getProfileLz("CTS", profile.name) }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -187,15 +187,21 @@
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getProfileLz(type, name) {
|
getProfileLz(type, name) {
|
||||||
if (name === "Cryptofyre" || name === "Maikiwi") {
|
switch (name) {
|
||||||
return name;
|
case "CRYPTO":
|
||||||
|
return "Cryptofyre";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "Maikiwi":
|
||||||
|
return "Maikiwi";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "CAR":
|
case "CAR":
|
||||||
return this.$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.' + name);
|
return this.$root.getLz('settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.' + name);
|
||||||
break;
|
break;
|
||||||
case "CTS":
|
case "CTS":
|
||||||
return this.$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.' + name);
|
return this.$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.' + name.toLowerCase());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return name;
|
return name;
|
||||||
|
|
|
@ -196,6 +196,28 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="md-option-line">
|
||||||
|
<div class="md-option-segment">
|
||||||
|
{{$root.getLz('settings.option.general.themeUpdateNotification')}}
|
||||||
|
</div>
|
||||||
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
|
<label>
|
||||||
|
<input type="checkbox" v-model="app.cfg.general.themeUpdateNotification"
|
||||||
|
switch/>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="md-option-line">
|
||||||
|
<div class="md-option-segment">
|
||||||
|
{{$root.getLz('settings.option.general.showLovedTracksInline')}}
|
||||||
|
</div>
|
||||||
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
|
<label>
|
||||||
|
<input type="checkbox" v-model="app.cfg.general.showLovedTracksInline"
|
||||||
|
switch/>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</b-tab>
|
</b-tab>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue