diff options
Diffstat (limited to 'addons/web_editor/static/src/js')
| -rw-r--r-- | addons/web_editor/static/src/js/wysiwyg/plugin/history.js | 6 | ||||
| -rw-r--r-- | addons/web_editor/static/src/js/wysiwyg_snippets/snippets.editor.js | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/addons/web_editor/static/src/js/wysiwyg/plugin/history.js b/addons/web_editor/static/src/js/wysiwyg/plugin/history.js index a60ab41523b..addf6383783 100644 --- a/addons/web_editor/static/src/js/wysiwyg/plugin/history.js +++ b/addons/web_editor/static/src/js/wysiwyg/plugin/history.js @@ -19,6 +19,12 @@ var HistoryPlugin = Plugins.history.extend({ console.error(e); } this.context.invoke('editor.focus'); + var newRange = this.context.invoke('editor.createRange'); + if (!this.options.isEditableNode(newRange.sc)) { + var firstEditableSel = '[contenteditable="true"]:not(":hidden")'; + var sc = this.$editable.find(firstEditableSel)[0]; + this.context.invoke('editor.setRange', sc, 0, sc, 0).select(); + } }, /** * Clear the history. diff --git a/addons/web_editor/static/src/js/wysiwyg_snippets/snippets.editor.js b/addons/web_editor/static/src/js/wysiwyg_snippets/snippets.editor.js index 9bc9124688b..d13ddf63038 100644 --- a/addons/web_editor/static/src/js/wysiwyg_snippets/snippets.editor.js +++ b/addons/web_editor/static/src/js/wysiwyg_snippets/snippets.editor.js @@ -358,6 +358,8 @@ var SnippetEditor = Widget.extend({ ev.preventDefault(); this.trigger_up('cover_will_change'); + this.trigger_up('snippet_will_be_cloned', {$target: this.$target}); + var $clone = this.$target.clone(false); this.trigger_up('request_history_undo_record', {$target: this.$target}); @@ -372,7 +374,7 @@ var SnippetEditor = Widget.extend({ } }, }); - this.trigger_up('snippet_cloned', {$target: $clone}); + this.trigger_up('snippet_cloned', {$target: $clone, $origin: this.$target}); $clone.trigger('content_changed'); }, /** |
