From bb914f863d58704a86e0bc1535fd2122e52a4005 Mon Sep 17 00:00:00 2001 From: Deependra Solanki Date: Mon, 27 Mar 2023 05:17:27 +0000 Subject: [PATCH] [FIX] web_editor: do not scroll up when inserting a link Before this commit: When we write a long pad and go to bottom a insert a link when the modal opens the editable area scrolls to the top. After this commit: Now from the bottom of the pad when we insert a link the editable area does not scrolls to the top. task - 3138700 closes odoo/odoo#119279 X-original-commit: 2c50808d9cebc7ba0913a098bf79a15ef36da47f Signed-off-by: David Monjoie (dmo) --- .../static/src/js/editor/odoo-editor/src/OdooEditor.js | 6 ++---- .../src/js/editor/odoo-editor/test/spec/utils.test.js | 1 + 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/addons/web_editor/static/src/js/editor/odoo-editor/src/OdooEditor.js b/addons/web_editor/static/src/js/editor/odoo-editor/src/OdooEditor.js index ad928a1a79b..717b704d496 100644 --- a/addons/web_editor/static/src/js/editor/odoo-editor/src/OdooEditor.js +++ b/addons/web_editor/static/src/js/editor/odoo-editor/src/OdooEditor.js @@ -451,10 +451,8 @@ export class OdooEditor extends EventTarget { this.historyRevertUntil(this._powerboxBeforeStepIndex); this.historyStep(true); this._historyStepsStates.set(peek(this._historySteps).id, 'consumed'); - setTimeout(() => { - ensureFocus(this.editable); - getDeepRange(this.editable, { select: true }); - }); + ensureFocus(this.editable); + getDeepRange(this.editable, { select: true }); } }, afterCommand: () => { diff --git a/addons/web_editor/static/src/js/editor/odoo-editor/test/spec/utils.test.js b/addons/web_editor/static/src/js/editor/odoo-editor/test/spec/utils.test.js index a10b2989724..d3ecab53011 100644 --- a/addons/web_editor/static/src/js/editor/odoo-editor/test/spec/utils.test.js +++ b/addons/web_editor/static/src/js/editor/odoo-editor/test/spec/utils.test.js @@ -756,6 +756,7 @@ describe('Utils', () => { triggerEvent(element, 'keyup', { key: '2' }); await nextTickFrame(); triggerEvent(editor.editable, 'keydown', { key: 'Enter' }); + await nextTickFrame(); const activeElement = document.activeElement; setCursorStart(activeElement.lastElementChild); await nextTickFrame();