fix: contextMenus setting
This commit is contained in:
@@ -142,7 +142,11 @@ async function showFab(translator) {
|
|||||||
* @param {*} param0
|
* @param {*} param0
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
function showTransbox({ tranboxSetting = DEFAULT_TRANBOX_SETTING, transApis }) {
|
function showTransbox({
|
||||||
|
contextMenus = true,
|
||||||
|
tranboxSetting = DEFAULT_TRANBOX_SETTING,
|
||||||
|
transApis,
|
||||||
|
}) {
|
||||||
if (!tranboxSetting?.transOpen) {
|
if (!tranboxSetting?.transOpen) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -163,7 +167,11 @@ function showTransbox({ tranboxSetting = DEFAULT_TRANBOX_SETTING, transApis }) {
|
|||||||
ReactDOM.createRoot(shadowRootElement).render(
|
ReactDOM.createRoot(shadowRootElement).render(
|
||||||
<React.StrictMode>
|
<React.StrictMode>
|
||||||
<CacheProvider value={cache}>
|
<CacheProvider value={cache}>
|
||||||
<Slection tranboxSetting={tranboxSetting} transApis={transApis} />
|
<Slection
|
||||||
|
contextMenus={contextMenus}
|
||||||
|
tranboxSetting={tranboxSetting}
|
||||||
|
transApis={transApis}
|
||||||
|
/>
|
||||||
</CacheProvider>
|
</CacheProvider>
|
||||||
</React.StrictMode>
|
</React.StrictMode>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -95,6 +95,8 @@ export default function Action({ translator, fab }) {
|
|||||||
// 注册菜单
|
// 注册菜单
|
||||||
try {
|
try {
|
||||||
const menuCommandIds = [];
|
const menuCommandIds = [];
|
||||||
|
const { contextMenus = true } = translator.setting;
|
||||||
|
contextMenus &&
|
||||||
menuCommandIds.push(
|
menuCommandIds.push(
|
||||||
GM.registerMenuCommand(
|
GM.registerMenuCommand(
|
||||||
"Toggle Translate (Alt+q)",
|
"Toggle Translate (Alt+q)",
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ export default function Settings() {
|
|||||||
value = limitNumber(value, 0, 4);
|
value = limitNumber(value, 0, 4);
|
||||||
break;
|
break;
|
||||||
case "contextMenus":
|
case "contextMenus":
|
||||||
sendBgMsg(MSG_CONTEXT_MENUS, { contextMenus: value });
|
isExt && sendBgMsg(MSG_CONTEXT_MENUS, { contextMenus: value });
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
@@ -214,6 +214,19 @@ export default function Settings() {
|
|||||||
</Select>
|
</Select>
|
||||||
</FormControl>
|
</FormControl>
|
||||||
|
|
||||||
|
<FormControl size="small">
|
||||||
|
<InputLabel>{i18n("add_context_menus")}</InputLabel>
|
||||||
|
<Select
|
||||||
|
name="contextMenus"
|
||||||
|
value={contextMenus}
|
||||||
|
label={i18n("add_context_menus")}
|
||||||
|
onChange={handleChange}
|
||||||
|
>
|
||||||
|
<MenuItem value={false}>{i18n("disable")}</MenuItem>
|
||||||
|
<MenuItem value={true}>{i18n("enable")}</MenuItem>
|
||||||
|
</Select>
|
||||||
|
</FormControl>
|
||||||
|
|
||||||
<FormControl size="small">
|
<FormControl size="small">
|
||||||
<InputLabel>{i18n("detect_lang_remote")}</InputLabel>
|
<InputLabel>{i18n("detect_lang_remote")}</InputLabel>
|
||||||
<Select
|
<Select
|
||||||
@@ -248,19 +261,6 @@ export default function Settings() {
|
|||||||
|
|
||||||
{isExt ? (
|
{isExt ? (
|
||||||
<>
|
<>
|
||||||
<FormControl size="small">
|
|
||||||
<InputLabel>{i18n("add_context_menus")}</InputLabel>
|
|
||||||
<Select
|
|
||||||
name="contextMenus"
|
|
||||||
value={contextMenus}
|
|
||||||
label={i18n("add_context_menus")}
|
|
||||||
onChange={handleChange}
|
|
||||||
>
|
|
||||||
<MenuItem value={false}>{i18n("disable")}</MenuItem>
|
|
||||||
<MenuItem value={true}>{i18n("enable")}</MenuItem>
|
|
||||||
</Select>
|
|
||||||
</FormControl>
|
|
||||||
|
|
||||||
<FormControl size="small">
|
<FormControl size="small">
|
||||||
<InputLabel>{i18n("if_clear_cache")}</InputLabel>
|
<InputLabel>{i18n("if_clear_cache")}</InputLabel>
|
||||||
<Select
|
<Select
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { sleep } from "../../libs/utils";
|
|||||||
import { isGm } from "../../libs/client";
|
import { isGm } from "../../libs/client";
|
||||||
import { MSG_OPEN_TRANBOX, DEFAULT_TRANBOX_SHORTCUT } from "../../config";
|
import { MSG_OPEN_TRANBOX, DEFAULT_TRANBOX_SHORTCUT } from "../../config";
|
||||||
|
|
||||||
export default function Slection({ tranboxSetting, transApis }) {
|
export default function Slection({ contextMenus, tranboxSetting, transApis }) {
|
||||||
const [showBox, setShowBox] = useState(false);
|
const [showBox, setShowBox] = useState(false);
|
||||||
const [showBtn, setShowBtn] = useState(false);
|
const [showBtn, setShowBtn] = useState(false);
|
||||||
const [selectedText, setSelText] = useState("");
|
const [selectedText, setSelText] = useState("");
|
||||||
@@ -88,6 +88,7 @@ export default function Slection({ tranboxSetting, transApis }) {
|
|||||||
// 注册菜单
|
// 注册菜单
|
||||||
try {
|
try {
|
||||||
const menuCommandIds = [];
|
const menuCommandIds = [];
|
||||||
|
contextMenus &&
|
||||||
menuCommandIds.push(
|
menuCommandIds.push(
|
||||||
GM.registerMenuCommand(
|
GM.registerMenuCommand(
|
||||||
"Translate Selected Text (Alt+S)",
|
"Translate Selected Text (Alt+S)",
|
||||||
@@ -106,7 +107,7 @@ export default function Slection({ tranboxSetting, transApis }) {
|
|||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log("[registerMenuCommand]", err);
|
console.log("[registerMenuCommand]", err);
|
||||||
}
|
}
|
||||||
}, [handleTranbox]);
|
}, [handleTranbox, contextMenus]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
|||||||
Reference in New Issue
Block a user