diff --git a/web/src/pages/Edit/components/Contextmenu.vue b/web/src/pages/Edit/components/Contextmenu.vue index 75d6c490..f8b4fd7f 100644 --- a/web/src/pages/Edit/components/Contextmenu.vue +++ b/web/src/pages/Edit/components/Contextmenu.vue @@ -244,7 +244,8 @@ export default { enableCopyToClipboardApi: navigator.clipboard, numberType: '', numberLevel: '', - subItemsShowLeft: false + subItemsShowLeft: false, + isNodeMousedown: false } }, computed: { @@ -344,6 +345,7 @@ export default { this.$bus.$on('svg_mousedown', this.onMousedown) this.$bus.$on('mouseup', this.onMouseup) this.$bus.$on('translate', this.hide) + this.$bus.$on('node_mousedown', this.onNodeMousedown) }, beforeDestroy() { this.$bus.$off('node_contextmenu', this.show) @@ -353,6 +355,7 @@ export default { this.$bus.$off('svg_mousedown', this.onMousedown) this.$bus.$off('mouseup', this.onMouseup) this.$bus.$off('translate', this.hide) + this.$bus.$off('node_mousedown', this.onNodeMousedown) }, methods: { ...mapMutations(['setLocalConfig']), @@ -387,6 +390,10 @@ export default { }) }, + onNodeMousedown() { + this.isNodeMousedown = true + }, + // 鼠标按下事件 onMousedown(e) { if (e.which !== 3) { @@ -402,6 +409,10 @@ export default { if (!this.isMousedown) { return } + if (this.isNodeMousedown) { + this.isNodeMousedown = false + return + } this.isMousedown = false if ( Math.abs(this.mosuedownX - e.clientX) > 3 || diff --git a/web/src/pages/Edit/components/Edit.vue b/web/src/pages/Edit/components/Edit.vue index 9a680285..3c894600 100644 --- a/web/src/pages/Edit/components/Edit.vue +++ b/web/src/pages/Edit/components/Edit.vue @@ -593,7 +593,8 @@ export default { 'node_attachmentContextmenu', 'demonstrate_jump', 'exit_demonstrate', - 'node_note_dblclick' + 'node_note_dblclick', + 'node_mousedown' ].forEach(event => { this.mindMap.on(event, (...args) => { this.$bus.$emit(event, ...args)