[IMP] web_editor: test adding nested editables
Commit e834173314f00e36cb3a1f99690d9f220584682c fixed an issue where editable elements could not be removed if they were nested in a non-editable element, because the editor considered them to be an editable root. However, the same logic also applied when doing a history step after adding such an element. Adding a nested editable element would make the history step invalid and result in a rollback. Such a situation can be encountered when adding a recaptcha legal notice to a website form. The footer of the form is a non-editable paet of the document, however the legal notice can still be updated by the user. This commit adds a separate test for the addition of such editable elements that were previously considered unremovable. opw-2723017 closes odoo/odoo#88733 X-original-commit: f693e8ed27f753a728d903dfe4d7d10ae1334526 Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
This commit is contained in:
@@ -3228,6 +3228,19 @@ X[]
|
||||
});
|
||||
});
|
||||
});
|
||||
describe('step', () => {
|
||||
it('should allow insertion of nested contenteditable="true"', async () => {
|
||||
await testEditor(BasicEditor, {
|
||||
contentBefore: `<div contenteditable="false"></div>`,
|
||||
stepFunction: async editor => {
|
||||
const editable = '<div contenteditable="true">abc</div>';
|
||||
editor.editable.querySelector('div').innerHTML = editable;
|
||||
editor.historyStep();
|
||||
},
|
||||
contentAfter: `<div contenteditable="false"><div contenteditable="true">abc</div></div>`,
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// Note that arrow keys test have a contentAfter that is not reflective of
|
||||
|
||||
Reference in New Issue
Block a user