chore: Optimize configuration updates in Danmuku and Setting classes

This commit is contained in:
Harvey Zack committed 2024-05-26 21:29:14 +08:00
1 parent 2c618bc7b4
commit 8a9132ea91
4 files changed
+68 -45

No files matched your search

@@ -395,6 +395,7 @@ class Danmuku {
}
// 动态配置
config(option) {
console.log("option", option);
const { clamp } = this.utils;
const { $controlsCenter } = this.art.template;
this.option = Object.assign({}, Danmuku.option, this.option, option);
@@ -407,8 +408,11 @@ class Danmuku {
this.option.mount = this.option.mount || $controlsCenter;
// 重新计算弹幕字体大小,需要重新渲染
if (option.fontSize) {
this.option.fontSize = this.getFontSize(this.option.fontSize);
this.reset();
const fontSize = this.getFontSize(this.option.fontSize);
if (fontSize !== this.option.fontSize) {
this.option.fontSize = fontSize;
this.reset();
}
}
// 通过配置项控制弹幕的显示和隐藏
if (this.option.visible) this.show();
@@ -833,20 +837,22 @@ class Setting {
art.on("fullscreen", (state)=>this.onFullscreen(state));
art.on("fullscreenWeb", (state)=>this.onFullscreen(state));
}
static icons = {
$on: (0, _onSvgDefault.default),
$off: (0, _offSvgDefault.default),
$config: (0, _configSvgDefault.default),
$style: (0, _styleSvgDefault.default),
$mode_0_off: (0, _mode0OffSvgDefault.default),
$mode_0_on: (0, _mode0OnSvgDefault.default),
$mode_1_off: (0, _mode1OffSvgDefault.default),
$mode_1_on: (0, _mode1OnSvgDefault.default),
$mode_2_off: (0, _mode2OffSvgDefault.default),
$mode_2_on: (0, _mode2OnSvgDefault.default),
$check_on: (0, _checkOnSvgDefault.default),
$check_off: (0, _checkOffSvgDefault.default)
};
static get icons() {
return {
$on: (0, _onSvgDefault.default),
$off: (0, _offSvgDefault.default),
$config: (0, _configSvgDefault.default),
$style: (0, _styleSvgDefault.default),
$mode_0_off: (0, _mode0OffSvgDefault.default),
$mode_0_on: (0, _mode0OnSvgDefault.default),
$mode_1_off: (0, _mode1OffSvgDefault.default),
$mode_1_on: (0, _mode1OnSvgDefault.default),
$mode_2_off: (0, _mode2OffSvgDefault.default),
$mode_2_on: (0, _mode2OnSvgDefault.default),
$check_on: (0, _checkOnSvgDefault.default),
$check_off: (0, _checkOffSvgDefault.default)
};
}
get option() {
return this.danmuku.option;
}
@@ -1132,8 +1138,9 @@ class Setting {
onChange: (index)=>{
const { $opacityValue } = this.template;
$opacityValue.textContent = `${index}%`;
this.danmuku.config({
opacity: index / 100
const value = index / 100;
if (value !== this.option.opacity) this.danmuku.config({
opacity: value
});
}
});
@@ -1149,8 +1156,9 @@ class Setting {
const margin = this.MARGIN[index];
const { $marginValue } = this.template;
$marginValue.textContent = margin.name;
this.danmuku.config({
margin: margin.value
const value = margin.value;
if (value[0] !== this.option.margin[0] || value[1] !== this.option.margin[1]) this.danmuku.config({
margin: value
});
}
});
@@ -1161,13 +1169,14 @@ class Setting {
container: this.template.$fontSizeSlider,
findIndex: ()=>{
const { clientHeight } = this.art.template.$player;
if (typeof this.option.fontSize === "number") return Math.round(this.option.fontSize / clientHeight * 100) || 5;
else return Math.round(this.option.fontSize.replace("%", "")) || 5;
return Math.round(this.option.fontSize / clientHeight * 100) || 5;
},
onChange: (index)=>{
const { $fontSizeValue } = this.template;
const { clientHeight } = this.art.template.$player;
$fontSizeValue.textContent = `${index}%`;
this.danmuku.config({
const percent = Math.round(this.option.fontSize / clientHeight * 100);
if (index !== percent) this.danmuku.config({
fontSize: `${index}%`
});
}
@@ -1184,8 +1193,9 @@ class Setting {
const speed = this.SPEED[index];
const { $speedValue } = this.template;
$speedValue.textContent = speed.name;
this.danmuku.config({
speed: speed.value
const value = speed.value;
if (value !== this.option.speed) this.danmuku.config({
speed: value
});
}
});
@@ -1 +1 @@
{"mappings":"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 truncated
{"mappings":"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 truncated