[FIX] *: display the correct eye icon of the invisible elements
*web_editor, website Steps to reproduce the bug: - Add a Text-Image snippet. - Change its visibility to "Conditionally". - Save. - Edit again. => The eye icon indicates that the snippet is not visible but the snippet is displayed. Note that [1] introduced a mechanism to solve this problem (the `cleanForSave()` of the `ConditionalVisibility` option) but the code was not working correctly since [2]. Let's first remember that when calling `toggleTargetVisibility()`, two main actions are performed: - The addition or suppression of the `data-invisible` attribute from the dataset of an invisible element. This attribute is responsible for the crossed or not of the eye icon in the "Invisible Elements" panel. - The call to `onTargetHide()` or `onTargetShow()` that performs among other things the addition or the suppression of the `o_conditional_hidden` class on an invisible element. This class is responsible for the visibility of the element on the page in edit mode. This being said, here is what happened at the "Save" before this commit: - `cleanForSave()` of `snippetEditor` is called. If the related element has the `o_snippet_invisible` class, `toggleTargetVisibility(false)` is called (meaning that the `o_conditional_hidden` class and the `data-invisible` attribute are added to the element). - `cleanForSave()` of the `ConditionalVisibility` option is called and before [2], the `data-invisible` attribute was removed from the corresponding element. - At the `DOMContentLoaded`, the `o_conditional_hidden` class is removed from all the elements that have a conditional visibility. The visibility of those elements on the page now depends on the rule set by the user. The goal of this commit is to restore the mechansim of the remove of the `data-invisible` attribute from the conditionnal elements at the `cleanForSave()`. [1]: https://github.com/odoo/odoo/commit/1c442782f887a8c16bae05a43fae13a310ac05df [2]: https://github.com/odoo/odoo/commit/de3c29fab2bc5349da8a9418f9d0086d76e6f7de task-3203914 X-original-commit: https://github.com/odoo/odoo/commit/aae9053cbab6e0d3eda256a67fce98aced183ee7 Part-of: odoo/odoo#122454
Showing
- addons/web_editor/static/src/js/editor/snippets.editor.js 4 additions, 0 deletionsaddons/web_editor/static/src/js/editor/snippets.editor.js
- addons/website/static/src/js/editor/snippets.options.js 2 additions, 11 deletionsaddons/website/static/src/js/editor/snippets.options.js
- addons/website/static/tests/tours/conditional_visibility.js 73 additions, 0 deletionsaddons/website/static/tests/tours/conditional_visibility.js
- addons/website/tests/test_ui.py 1 addition, 0 deletionsaddons/website/tests/test_ui.py
Loading
Please register or sign in to comment