Update locale files for English, Traditional Chinese, and Simplified Chinese to include new effect titles and crossfeed options; refactor EffectsPage to utilize localized labels and improve state management for audio effects.
This commit is contained in:
@@ -1225,6 +1225,15 @@ export default function EQPage() {
|
||||
loadHeadphones();
|
||||
}, [api, isDemoMode, loadRawCurveForPeq]);
|
||||
|
||||
/** 仅耳机/型号/filters 变化时变;preamp、autoPre 变化不触发,避免拖总增益时反复请求 modelCurve */
|
||||
const modelCurveReloadKey = useMemo(() => {
|
||||
const peq = peqItems[headphoneIdx];
|
||||
if (!peq) return "";
|
||||
const filtersKey =
|
||||
typeof peq.filters === "string" ? peq.filters : JSON.stringify(peq.filters ?? []);
|
||||
return [headphoneIdx, peq.name ?? "", peq.brand ?? "", peq.model ?? "", filtersKey].join("\u0001");
|
||||
}, [headphoneIdx, peqItems]);
|
||||
|
||||
// 切换耳机型号后,立即用该型号 filters 刷新 10 个滤波器与曲线(暂停一次上报避免错写)
|
||||
useEffect(() => {
|
||||
const peq = peqItems[headphoneIdx];
|
||||
@@ -1247,7 +1256,7 @@ export default function EQPage() {
|
||||
return () => {
|
||||
cancelled = true;
|
||||
};
|
||||
}, [headphoneIdx, peqItems, loadRawCurveForPeq]);
|
||||
}, [modelCurveReloadKey, loadRawCurveForPeq]);
|
||||
|
||||
const schedulePeqSync = (
|
||||
peq: { name: string; autoPre?: number; preamp?: number; canDel?: number } | undefined,
|
||||
|
||||
Reference in New Issue
Block a user