feat: add translate interval setting
This commit is contained in:
@@ -167,6 +167,10 @@ export const I18N = {
|
||||
zh: `请求间隔时间 (0-5000ms)`,
|
||||
en: `Request Interval (0-5000ms)`,
|
||||
},
|
||||
translate_interval: {
|
||||
zh: `翻译间隔时间 (100-5000ms)`,
|
||||
en: `Translate Interval (100-5000ms)`,
|
||||
},
|
||||
min_translate_length: {
|
||||
zh: `最小翻译长度 (1-100)`,
|
||||
en: `Min Translate Length (1-100)`,
|
||||
|
||||
@@ -430,10 +430,13 @@ export class Translator {
|
||||
|
||||
_reTranslate = debounce(() => {
|
||||
if (this._rule.transOpen === "true") {
|
||||
window.removeEventListener("keydown", this._handleKeydown);
|
||||
this._mutaObserver.disconnect();
|
||||
this._interseObserver.disconnect();
|
||||
this._removeInjector();
|
||||
this._register();
|
||||
}
|
||||
}, 500);
|
||||
}, this._setting.transInterval);
|
||||
|
||||
_invalidLength = (q) =>
|
||||
!q ||
|
||||
|
||||
@@ -52,6 +52,9 @@ export default function Settings() {
|
||||
case "fetchInterval":
|
||||
value = limitNumber(value, 0, 5000);
|
||||
break;
|
||||
case "transInterval":
|
||||
value = limitNumber(value, 100, 5000);
|
||||
break;
|
||||
case "minLength":
|
||||
value = limitNumber(value, 1, 100);
|
||||
break;
|
||||
@@ -94,6 +97,7 @@ export default function Settings() {
|
||||
contextMenuType = 1,
|
||||
touchTranslate = 2,
|
||||
blacklist = DEFAULT_BLACKLIST.join(",\n"),
|
||||
transInterval = 500,
|
||||
} = setting;
|
||||
const { isHide = false } = fab || {};
|
||||
|
||||
@@ -134,6 +138,15 @@ export default function Settings() {
|
||||
onChange={handleChange}
|
||||
/>
|
||||
|
||||
<TextField
|
||||
size="small"
|
||||
label={i18n("translate_interval")}
|
||||
type="number"
|
||||
name="transInterval"
|
||||
defaultValue={transInterval}
|
||||
onChange={handleChange}
|
||||
/>
|
||||
|
||||
<TextField
|
||||
size="small"
|
||||
label={i18n("min_translate_length")}
|
||||
|
||||
Reference in New Issue
Block a user