From ecf04d3b7d4425ece51d38efab532ac2b080b964 Mon Sep 17 00:00:00 2001 From: undefined Date: Wed, 5 May 2021 19:08:58 +0800 Subject: [PATCH] ui: auto move cursor to end --- packages/ui-default/components/discussion/comments.page.js | 2 +- packages/ui-default/components/editor/index.js | 7 +++---- packages/ui-default/package.json | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/ui-default/components/discussion/comments.page.js b/packages/ui-default/components/discussion/comments.page.js index a18978b53..fcc6216d9 100644 --- a/packages/ui-default/components/discussion/comments.page.js +++ b/packages/ui-default/components/discussion/comments.page.js @@ -118,7 +118,7 @@ async function onCommentClickReplyReply(ev) { $evTarget .closest('.dczcomments__item') .find('[name="dczcomments__op-reply-comment"]').eq(0) - .trigger('click', { initialText: `@${username}: ` }); + .trigger('click', { initialText: `@${username.trim()}: ` }); } async function onCommentClickEdit(mode, ev) { diff --git a/packages/ui-default/components/editor/index.js b/packages/ui-default/components/editor/index.js index 515dbf743..f1dcf573b 100644 --- a/packages/ui-default/components/editor/index.js +++ b/packages/ui-default/components/editor/index.js @@ -78,7 +78,6 @@ export default class Editor extends DOMAttachedObject { label: 'Use light theme', run: () => monaco.editor.setTheme('vs-light'), }); - let prevHeight = 0; const updateEditorHeight = () => { const editorElement = this.editor.getDomNode(); @@ -92,12 +91,10 @@ export default class Editor extends DOMAttachedObject { this.editor.layout(); } }; - this.editor.onDidChangeModelDecorations(() => { updateEditorHeight(); // typing requestAnimationFrame(updateEditorHeight); // folding }); - this._subscription = this.editor.onDidChangeModelContent(() => { const val = this.editor.getValue(); $dom.val(val); @@ -105,7 +102,7 @@ export default class Editor extends DOMAttachedObject { if (onChange) onChange(val); }); this.isValid = true; - if (hasFocus) this.editor.focus(); + if (hasFocus) this.focus(); } async initVditor() { @@ -150,6 +147,8 @@ export default class Editor extends DOMAttachedObject { focus() { this.ensureValid(); this.editor.focus(); + const range = this.model.getFullModelRange(); + this.editor.setPosition({ lineNumber: range.endLineNumber, column: range.endColumn }); } } diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 71874150a..07a8160e0 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.6.33", + "version": "4.6.34", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js",