diff --git a/simple-mind-map/package-lock.json b/simple-mind-map/package-lock.json index 762cfca1..4a85bc53 100644 --- a/simple-mind-map/package-lock.json +++ b/simple-mind-map/package-lock.json @@ -1,11 +1,11 @@ { "name": "simple-mind-map", - "version": "0.4.5", + "version": "0.4.6", "lockfileVersion": 2, "requires": true, "packages": { "": { - "version": "0.4.5", + "version": "0.4.6", "license": "MIT", "dependencies": { "@svgdotjs/svg.js": "^3.0.16", diff --git a/simple-mind-map/package.json b/simple-mind-map/package.json index 5f154591..cf50e66e 100644 --- a/simple-mind-map/package.json +++ b/simple-mind-map/package.json @@ -1,6 +1,6 @@ { "name": "simple-mind-map", - "version": "0.4.6", + "version": "0.4.7", "description": "一个简单的web在线思维导图", "authors": [ { diff --git a/simple-mind-map/src/RichText.js b/simple-mind-map/src/RichText.js index be16d1d7..eb15009f 100644 --- a/simple-mind-map/src/RichText.js +++ b/simple-mind-map/src/RichText.js @@ -97,13 +97,16 @@ class RichText { this.mindMap.renderer.textEdit.registerTmpShortcut() if (!this.textEditNode) { this.textEditNode = document.createElement('div') - this.textEditNode.style.cssText = `position:fixed;box-sizing: border-box;background-color:#fff;box-shadow: 0 0 20px rgba(0,0,0,.5);outline: none; word-break: break-all;` + this.textEditNode.style.cssText = `position:fixed;box-sizing: border-box;box-shadow: 0 0 20px rgba(0,0,0,.5);outline: none; word-break: break-all;` document.body.appendChild(this.textEditNode) } // 原始宽高 let g = node._textData.node let originWidth = g.attr('data-width') let originHeight = g.attr('data-height') + // 使用节点的填充色,否则如果节点颜色是白色的话编辑时看不见 + let bgColor = node.style.merge('fillColor') + this.textEditNode.style.backgroundColor = bgColor === 'transparent' ? '#fff' : bgColor this.textEditNode.style.minWidth = originWidth + 'px' this.textEditNode.style.minHeight = originHeight + 'px' this.textEditNode.style.left = @@ -126,7 +129,7 @@ class RichText { this.initQuillEditor() document.querySelector('.ql-editor').style.minHeight = originHeight + 'px' this.showTextEdit = true - this.selectAll() + this.focus() if (!node.nodeData.data.richText) { // 如果是非富文本的情况,需要手动应用文本样式 this.setTextStyleIfNotRichText(node) @@ -228,6 +231,12 @@ class RichText { this.quill.setSelection(0, this.quill.getLength()) } + // 聚焦 + focus() { + let len = this.quill.getLength() + this.quill.setSelection(len, len) + } + // 格式化当前选中的文本 formatText(config = {}, clear = false) { if (!this.range && !this.lastRange) return diff --git a/web/src/pages/Doc/en/changelog/index.md b/web/src/pages/Doc/en/changelog/index.md index ebf57502..145b23db 100644 --- a/web/src/pages/Doc/en/changelog/index.md +++ b/web/src/pages/Doc/en/changelog/index.md @@ -1,5 +1,9 @@ # Changelog +## 0.4.7 + +optimization: 1.During rich text editing, when initially focusing, all are no longer selected by default; 2.When editing rich text, use the node fill color as the background color to avoid being invisible when the node color is white. + ## 0.4.6 New: 1.Associated lines support adjusting control points. diff --git a/web/src/pages/Doc/en/changelog/index.vue b/web/src/pages/Doc/en/changelog/index.vue index be12a70e..30a99a95 100644 --- a/web/src/pages/Doc/en/changelog/index.vue +++ b/web/src/pages/Doc/en/changelog/index.vue @@ -1,6 +1,8 @@