diff --git a/addons/web_editor/static/src/js/rte.js b/addons/web_editor/static/src/js/rte.js index 595602d6305..564857966b5 100644 --- a/addons/web_editor/static/src/js/rte.js +++ b/addons/web_editor/static/src/js/rte.js @@ -326,9 +326,12 @@ var RTE = Widget.extend({ }); // start element observation - $(document).on('content_changed', '.o_editable', function (event) { + $(document).on('content_changed', '.o_editable', function (ev) { self.trigger('change', this); - $(this).addClass('o_dirty'); + if (!ev.__isDirtyHandled) { + $(this).addClass('o_dirty'); + ev.__isDirtyHandled = true; + } }); $('#wrapwrap, .o_editable').on('click.rte', '*', this, this.onClick.bind(this)); @@ -357,6 +360,10 @@ var RTE = Widget.extend({ this.__saved = {}; // list of allready saved views and data + + $('.o_editable') + .destroy() + .removeClass('o_editable o_is_inline_editable'); var defs = $('.o_dirty') .removeAttr('contentEditable') .removeClass('o_dirty oe_carlos_danger o_is_inline_editable')