Skip to content

Commit 410ff60

Browse files
committed
Fix translation fallback
1 parent 19f5ee6 commit 410ff60

File tree

5 files changed

+38
-4
lines changed

5 files changed

+38
-4
lines changed

src/renderer/components/external-player-settings/external-player-settings.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,14 @@ export default Vue.extend({
2424
},
2525

2626
externalPlayerNames: function () {
27-
return this.$store.getters.getExternalPlayerNames.map((value) => this.$t(value))
27+
const fallbackNames = this.$store.getters.getExternalPlayerNames
28+
const nameTranslationKeys = this.$store.getters.getExternalPlayerNameTranslationKeys
29+
30+
return nameTranslationKeys.map((translationKey, idx) => {
31+
if (this.$te(translationKey)) { return this.$t(translationKey) }
32+
33+
return fallbackNames[idx]
34+
})
2835
},
2936
externalPlayerValues: function () {
3037
return this.$store.getters.getExternalPlayerValues

src/renderer/store/modules/utils.js

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ const state = {
7878
'#F1FA8C'
7979
],
8080
externalPlayerNames: [],
81+
externalPlayerNameTranslationKeys: [],
8182
externalPlayerValues: [],
8283
externalPlayerCmdArguments: {}
8384
}
@@ -135,6 +136,10 @@ const getters = {
135136
return state.externalPlayerNames
136137
},
137138

139+
getExternalPlayerNameTranslationKeys () {
140+
return state.externalPlayerNameTranslationKeys
141+
},
142+
138143
getExternalPlayerValues () {
139144
return state.externalPlayerValues
140145
},
@@ -797,17 +802,24 @@ const actions = {
797802
}
798803

799804
const externalPlayerMap = JSON.parse(fileData).map((entry) => {
800-
return { name: entry.name, value: entry.value, cmdArguments: entry.cmdArguments }
805+
return {
806+
name: entry.name,
807+
nameTranslationKey: entry.nameTranslationKey,
808+
value: entry.value,
809+
cmdArguments: entry.cmdArguments
810+
}
801811
})
802812

803813
const externalPlayerNames = externalPlayerMap.map((entry) => { return entry.name })
814+
const externalPlayerNameTranslationKeys = externalPlayerMap.map((entry) => { return entry.nameTranslationKey })
804815
const externalPlayerValues = externalPlayerMap.map((entry) => { return entry.value })
805816
const externalPlayerCmdArguments = externalPlayerMap.reduce((result, item) => {
806817
result[item.value] = item.cmdArguments
807818
return result
808819
}, {})
809820

810821
commit('setExternalPlayerNames', externalPlayerNames)
822+
commit('setExternalPlayerNameTranslationKeys', externalPlayerNameTranslationKeys)
811823
commit('setExternalPlayerValues', externalPlayerValues)
812824
commit('setExternalPlayerCmdArguments', externalPlayerCmdArguments)
813825
},
@@ -1020,6 +1032,10 @@ const mutations = {
10201032
state.externalPlayerNames = value
10211033
},
10221034

1035+
setExternalPlayerNameTranslationKeys (state, value) {
1036+
state.externalPlayerNameTranslationKeys = value
1037+
},
1038+
10231039
setExternalPlayerValues (state, value) {
10241040
state.externalPlayerValues = value
10251041
},

static/external-player-map.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
[
22
{
3-
"name": "Settings.External Player Settings.None",
3+
"name": "None",
4+
"nameTranslationKey": "Settings.External Player Settings.Players.None.Name",
45
"value": "",
56
"cmdArguments": null
67
},
78
{
89
"name": "mpv",
10+
"nameTranslationKey": "Settings.External Player Settings.Players.mpv.Name",
911
"value": "mpv",
1012
"cmdArguments": {
1113
"defaultExecutable": "mpv",
@@ -23,6 +25,7 @@
2325
},
2426
{
2527
"name": "VLC",
28+
"nameTranslationKey": "Settings.External Player Settings.Players.VLC.Name",
2629
"value": "vlc",
2730
"cmdArguments": {
2831
"defaultExecutable": "vlc",
@@ -40,6 +43,7 @@
4043
},
4144
{
4245
"name": "iina",
46+
"nameTranslationKey": "Settings.External Player Settings.Players.iina.Name",
4347
"value": "iina",
4448
"cmdArguments": {
4549
"defaultExecutable": "iina",

static/locales/en-US.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,10 +230,13 @@ Settings:
230230
External Player Settings:
231231
External Player Settings: External Player Settings
232232
External Player: External Player
233-
None: None
234233
Ignore Unsupported Action Warnings: Ignore Unsupported Action Warnings
235234
Custom External Player Executable: Custom External Player Executable
236235
Custom External Player Arguments: Custom External Player Arguments
236+
237+
Players:
238+
None:
239+
Name: None
237240
Privacy Settings:
238241
Privacy Settings: Privacy Settings
239242
Remember History: Remember History

static/locales/zh-TW.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,10 @@ Settings:
334334
Ignore Unsupported Action Warnings: 忽略不支援的動作警告
335335
External Player: 外部播放程式
336336
External Player Settings: 外部播放程式設定
337+
338+
Players:
339+
None:
340+
Name: Nein
337341
Download Settings:
338342
Download Settings: 下載設定
339343
Ask Download Path: 詢問下載路徑

0 commit comments

Comments
 (0)