Branch: refs/heads/stable-15.5.x
Home: https://github.com/xwiki/xwiki-platform
Commit: 20ff788a87634370dd6377a4885977d4e01c5027
https://github.com/xwiki/xwiki-platform/commit/20ff788a87634370dd6377a48859…
Author: Marius Dumitru Florea <marius(a)xwiki.com>
Date: 2023-12-28 (Thu, 28 Dec 2023)
Changed paths:
M xwiki-platform-core/xwiki-platform-ckeditor/xwiki-platform-ckeditor-test/xwiki-platform-ckeditor-test-pageobjects/src/main/java/org/xwiki/ckeditor/test/po/RichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-test/xwiki-platform-realtime-wysiwyg-test-pageobjects/src/main/java/org/xwiki/realtime/wysiwyg/test/po/RealtimeRichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-ui/src/main/resources/XWiki/Realtime/WysiwygEditor.xml
A xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/editor.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/filters.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/loader.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/patches.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/wysiwygEditor.js
Log Message:
-----------
XWIKI-21661: RealtimeWYSIWYGEditorIT#inplaceEditableMacro is flickering
XWIKI-21660: RealtimeWYSIWYGEditorIT#applyInlineStylesOnTheSameParagraph is flickering
XWIKI-21656: RealtimeWYSIWYGEditorIT#editWithSelf is flickering
XWIKI-21605: RealtimeWYSIWYGEditorIT#editDifferentParagraphs is flickering
* Bulletproof RichTextAreaElement#waitForPlaceholder to try again when failing due to StaleElementReferenceException (because the coeditor placeholders are often replaced / recreated when the coeditors are changing their position / selection).
* Start moving the code that is specific to CKEditor in a separate JavaScript module, behind a generic interface / API (this required some refactoring).
* Separate generic HyperJSON filters from the ones that are specific to CKEditor.
* Drop the Diff (changes) filters and instead "rebase" local changes on top of the received remote changes. This means we now have to implement and maintain a single set of filters: the HyperJSON filters.
* Normalize the DOM before serializing it to HyperJSON (this includes adding a BR in empty blocks and after non-empty text nodes that are followed by a block).
* Improve the selection restore (because the selection can be affected even if the modified DOM nodes are outside, e.g. if the modified nodes are siblings of the selection start / end container).
(cherry picked from commit aad3b2830bc7202c4ed2b607426a08aaf4edacbd)
Branch: refs/heads/master
Home: https://github.com/xwiki/xwiki-platform
Commit: e67cf9fdcc2a1264cf8243517086a62f5ed909cb
https://github.com/xwiki/xwiki-platform/commit/e67cf9fdcc2a1264cf8243517086…
Author: Marius Dumitru Florea <marius(a)xwiki.com>
Date: 2023-12-28 (Thu, 28 Dec 2023)
Changed paths:
M xwiki-platform-core/xwiki-platform-ckeditor/xwiki-platform-ckeditor-test/xwiki-platform-ckeditor-test-pageobjects/src/main/java/org/xwiki/ckeditor/test/po/RichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-test/xwiki-platform-realtime-wysiwyg-test-pageobjects/src/main/java/org/xwiki/realtime/wysiwyg/test/po/RealtimeRichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-ui/src/main/resources/XWiki/Realtime/WysiwygEditor.xml
A xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/editor.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/filters.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/loader.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/patches.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/wysiwygEditor.js
Log Message:
-----------
XWIKI-21661: RealtimeWYSIWYGEditorIT#inplaceEditableMacro is flickering
XWIKI-21660: RealtimeWYSIWYGEditorIT#applyInlineStylesOnTheSameParagraph is flickering
XWIKI-21656: RealtimeWYSIWYGEditorIT#editWithSelf is flickering
XWIKI-21605: RealtimeWYSIWYGEditorIT#editDifferentParagraphs is flickering
* Bulletproof RichTextAreaElement#waitForPlaceholder to try again when failing due to StaleElementReferenceException (because the coeditor placeholders are often replaced / recreated when the coeditors are changing their position / selection).
* Start moving the code that is specific to CKEditor in a separate JavaScript module, behind a generic interface / API (this required some refactoring).
* Separate generic HyperJSON filters from the ones that are specific to CKEditor.
* Drop the Diff (changes) filters and instead "rebase" local changes on top of the received remote changes. This means we now have to implement and maintain a single set of filters: the HyperJSON filters.
* Normalize the DOM before serializing it to HyperJSON (this includes adding a BR in empty blocks and after non-empty text nodes that are followed by a block).
* Improve the selection restore (because the selection can be affected even if the modified DOM nodes are outside, e.g. if the modified nodes are siblings of the selection start / end container).
(cherry picked from commit aad3b2830bc7202c4ed2b607426a08aaf4edacbd)
Branch: refs/heads/stable-15.10.x
Home: https://github.com/xwiki/xwiki-platform
Commit: aad3b2830bc7202c4ed2b607426a08aaf4edacbd
https://github.com/xwiki/xwiki-platform/commit/aad3b2830bc7202c4ed2b607426a…
Author: Marius Dumitru Florea <marius(a)xwiki.com>
Date: 2023-12-28 (Thu, 28 Dec 2023)
Changed paths:
M xwiki-platform-core/xwiki-platform-ckeditor/xwiki-platform-ckeditor-test/xwiki-platform-ckeditor-test-pageobjects/src/main/java/org/xwiki/ckeditor/test/po/RichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-test/xwiki-platform-realtime-wysiwyg-test-pageobjects/src/main/java/org/xwiki/realtime/wysiwyg/test/po/RealtimeRichTextAreaElement.java
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-ui/src/main/resources/XWiki/Realtime/WysiwygEditor.xml
A xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/editor.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/filters.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/loader.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/patches.js
M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-wysiwyg/xwiki-platform-realtime-wysiwyg-webjar/src/main/webjar/wysiwygEditor.js
Log Message:
-----------
XWIKI-21661: RealtimeWYSIWYGEditorIT#inplaceEditableMacro is flickering
XWIKI-21660: RealtimeWYSIWYGEditorIT#applyInlineStylesOnTheSameParagraph is flickering
XWIKI-21656: RealtimeWYSIWYGEditorIT#editWithSelf is flickering
XWIKI-21605: RealtimeWYSIWYGEditorIT#editDifferentParagraphs is flickering
* Bulletproof RichTextAreaElement#waitForPlaceholder to try again when failing due to StaleElementReferenceException (because the coeditor placeholders are often replaced / recreated when the coeditors are changing their position / selection).
* Start moving the code that is specific to CKEditor in a separate JavaScript module, behind a generic interface / API (this required some refactoring).
* Separate generic HyperJSON filters from the ones that are specific to CKEditor.
* Drop the Diff (changes) filters and instead "rebase" local changes on top of the received remote changes. This means we now have to implement and maintain a single set of filters: the HyperJSON filters.
* Normalize the DOM before serializing it to HyperJSON (this includes adding a BR in empty blocks and after non-empty text nodes that are followed by a block).
* Improve the selection restore (because the selection can be affected even if the modified DOM nodes are outside, e.g. if the modified nodes are siblings of the selection start / end container).