Branch: refs/heads/master Home: https://github.com/xwiki/xwiki-platform Commit: 3ca286673577c0a301d5b8fd92017952fcf8f310 https://github.com/xwiki/xwiki-platform/commit/3ca286673577c0a301d5b8fd92017... Author: Marius Dumitru Florea <[email protected]> Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M xwiki-platform-core/xwiki-platform-blocknote/xwiki-platform-blocknote-api/pom.xml A xwiki-platform-core/xwiki-platform-blocknote/xwiki-platform-blocknote-api/src/main/java/org/xwiki/blocknote/internal/BlockNoteUnlockRule.java M xwiki-platform-core/xwiki-platform-blocknote/xwiki-platform-blocknote-api/src/main/resources/META-INF/components.txt A xwiki-platform-core/xwiki-platform-blocknote/xwiki-platform-blocknote-api/src/test/java/org/xwiki/blocknote/internal/BlockNoteUnlockRuleTest.java M xwiki-platform-core/xwiki-platform-blocknote/xwiki-platform-blocknote-test/xwiki-platform-blocknote-test-docker/src/test/it/org/xwiki/blocknote/test/ui/CollaborationIT.java M xwiki-platform-core/xwiki-platform-edit/xwiki-platform-edit-ui/src/main/resources/XWiki/InplaceEditing.xml A xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/internal/edit/EditModeResolver.java A xwiki-platform-core/xwiki-platform-oldcore/src/main/java/org/xwiki/doc/lock/LockContext.java A xwiki-platform-core/xwiki-platform-oldcore/src/main/java/org/xwiki/doc/lock/UnlockRule.java A xwiki-platform-core/xwiki-platform-oldcore/src/main/java/org/xwiki/internal/document/lock/DefaultLockContext.java M xwiki-platform-core/xwiki-platform-oldcore/src/main/java/org/xwiki/model/validation/edit/XWikiDocumentLockEditConfirmationChecker.java M xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/META-INF/components.txt A xwiki-platform-core/xwiki-platform-oldcore/src/test/java/com/xpn/xwiki/internal/edit/EditModeResolverTest.java A xwiki-platform-core/xwiki-platform-oldcore/src/test/java/org/xwiki/internal/document/lock/DefaultLockContextTest.java M xwiki-platform-core/xwiki-platform-oldcore/src/test/java/org/xwiki/model/validation/edit/XWikiDocumentLockEditConfirmationCheckerTest.java M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/pom.xml R xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/main/java/org/xwiki/realtime/internal/DefaultRealtimeSessionManager.java A xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/main/java/org/xwiki/realtime/internal/NetfluxUnlockRule.java R xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/main/java/org/xwiki/realtime/internal/RealtimeSessionManager.java R xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/main/java/org/xwiki/realtime/internal/XWikiRealtimeDocumentLockEditConfirmationChecker.java M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/main/resources/META-INF/components.txt R xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/test/java/org/xwiki/realtime/internal/DefaultRealtimeSessionManagerTest.java A xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/test/java/org/xwiki/realtime/internal/NetfluxUnlockRuleTest.java R xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-api/src/test/java/org/xwiki/realtime/internal/XWikiRealtimeDocumentLockEditConfirmationCheckerTest.java M xwiki-platform-core/xwiki-platform-realtime/xwiki-platform-realtime-ui/pom.xml M xwiki-platform-core/xwiki-platform-wysiwyg/xwiki-platform-wysiwyg-api/src/main/java/org/xwiki/wysiwyg/script/WysiwygEditorScriptService.java Log Message: ----------- XWIKI-24371: Skip the force edit lock confirmation when joining a realtime collaboration session with BlockNote * Refactor the XWikiDocumentLockEditConfirmationChecker to suppor implementing rules for auto-unlock (bypass the document edit lock when some conditions are met) * Define a LockContext, that UnlockRules are evaluated against (holds the information required by the unlock rules) * Provide a DefaultLockContext implementation that caches the computed information (avoids computing it multiple times when multiple unlock rules are evaluated) * Refactor XWikiRealtimeDocumentLockEditConfirmationChecker into NetfluxUnlockRule * Add an unlock rule for BlockNote * Move the code that determines the edit mode into a shared internal component EditModeResolver (used by both unlock rules) * Update BlockNote's CollaborationIT to stop forcing the edit lock. * Make WysiwygEditorScriptService use the EditModeResolver to determine if a given syntax is WYSIWYG-enabled, in order to avoid code duplication, even though the location of the code is not the best. To unsubscribe from these emails, change your notification settings at https://github.com/xwiki/xwiki-platform/settings/notifications