From 3f03d88443c2d5c746ba3c77f6e5fc69464c7c3c Mon Sep 17 00:00:00 2001 From: Hufe921 Date: Sun, 16 Jul 2023 21:56:44 +0800 Subject: [PATCH] fix: disable partial contextmenu in readonly mode --- src/editor/core/contextmenu/menus/controlMenus.ts | 2 +- src/editor/core/contextmenu/menus/hyperlinkMenus.ts | 6 +++--- src/editor/core/contextmenu/menus/imageMenus.ts | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/editor/core/contextmenu/menus/controlMenus.ts b/src/editor/core/contextmenu/menus/controlMenus.ts index 0470df3..0c10bc4 100644 --- a/src/editor/core/contextmenu/menus/controlMenus.ts +++ b/src/editor/core/contextmenu/menus/controlMenus.ts @@ -6,7 +6,7 @@ export const controlMenus: IRegisterContextMenu[] = [ { i18nPath: 'contextmenu.control.delete', when: (payload) => { - return !payload.editorHasSelection && payload.startElement?.type === ElementType.CONTROL + return !payload.isReadonly && !payload.editorHasSelection && payload.startElement?.type === ElementType.CONTROL }, callback: (command: Command) => { command.executeRemoveControl() diff --git a/src/editor/core/contextmenu/menus/hyperlinkMenus.ts b/src/editor/core/contextmenu/menus/hyperlinkMenus.ts index 28e2745..fdd037e 100644 --- a/src/editor/core/contextmenu/menus/hyperlinkMenus.ts +++ b/src/editor/core/contextmenu/menus/hyperlinkMenus.ts @@ -6,7 +6,7 @@ export const hyperlinkMenus: IRegisterContextMenu[] = [ { i18nPath: 'contextmenu.hyperlink.delete', when: (payload) => { - return payload.startElement?.type === ElementType.HYPERLINK + return !payload.isReadonly && payload.startElement?.type === ElementType.HYPERLINK }, callback: (command: Command) => { command.executeDeleteHyperlink() @@ -15,7 +15,7 @@ export const hyperlinkMenus: IRegisterContextMenu[] = [ { i18nPath: 'contextmenu.hyperlink.cancel', when: (payload) => { - return payload.startElement?.type === ElementType.HYPERLINK + return !payload.isReadonly && payload.startElement?.type === ElementType.HYPERLINK }, callback: (command: Command) => { command.executeCancelHyperlink() @@ -24,7 +24,7 @@ export const hyperlinkMenus: IRegisterContextMenu[] = [ { i18nPath: 'contextmenu.hyperlink.edit', when: (payload) => { - return payload.startElement?.type === ElementType.HYPERLINK + return !payload.isReadonly && payload.startElement?.type === ElementType.HYPERLINK }, callback: (command: Command, context: IContextMenuContext) => { const url = window.prompt('编辑链接', context.startElement?.url) diff --git a/src/editor/core/contextmenu/menus/imageMenus.ts b/src/editor/core/contextmenu/menus/imageMenus.ts index f309992..04b3d0b 100644 --- a/src/editor/core/contextmenu/menus/imageMenus.ts +++ b/src/editor/core/contextmenu/menus/imageMenus.ts @@ -8,7 +8,7 @@ export const imageMenus: IRegisterContextMenu[] = [ i18nPath: 'contextmenu.image.change', icon: 'image-change', when: (payload) => { - return !payload.editorHasSelection && payload.startElement?.type === ElementType.IMAGE + return !payload.isReadonly && !payload.editorHasSelection && payload.startElement?.type === ElementType.IMAGE }, callback: (command: Command) => { // 创建代理元素 @@ -41,7 +41,7 @@ export const imageMenus: IRegisterContextMenu[] = [ { i18nPath: 'contextmenu.image.textWrap', when: (payload) => { - return !payload.editorHasSelection && payload.startElement?.type === ElementType.IMAGE + return !payload.isReadonly && !payload.editorHasSelection && payload.startElement?.type === ElementType.IMAGE }, childMenus: [ {