jenkins-bot has submitted this change and it was merged.
Change subject: ve.ce.Surface: Defer checkSequences call for insertText as well
......................................................................
ve.ce.Surface: Defer checkSequences call for insertText as well
Calling checkSequences before the current observation cycle
has finished can leave the mode and view out of sync.
Defer it like we do in handleLinearEnter.
Bug: T116180
Change-Id: I972c5b658e4ac5187c53c61eb7050e33f593305a
---
M src/ce/ve.ce.Surface.js
1 file changed, 6 insertions(+), 1 deletion(-)
Approvals:
Divec: Looks good to me, approved
jenkins-bot: Verified
diff --git a/src/ce/ve.ce.Surface.js b/src/ce/ve.ce.Surface.js
index ecbc785..3321c81 100644
--- a/src/ce/ve.ce.Surface.js
+++ b/src/ce/ve.ce.Surface.js
@@ -2557,6 +2557,7 @@
ve.ce.Surface.prototype.handleObservedChanges = function ( oldState, newState
) {
var newSelection, dmContentChange,
+ surface = this,
dmDoc = this.getModel().getDocument(),
insertedText = false;
@@ -2623,7 +2624,10 @@
}
if ( insertedText ) {
- this.checkSequences();
+ // Use setTimeout to escape current renderLock
+ setTimeout( function () {
+ surface.checkSequences();
+ } );
}
if ( newState.branchNodeChanged && newState.node ) {
this.updateCursorHolders();
@@ -3486,6 +3490,7 @@
}
// Reset and resume polling
this.surfaceObserver.clear();
+ // TODO: This setTimeout appears to be unnecessary (we're not
render-locked)
setTimeout( function () {
surface.checkSequences();
} );
--
To view, visit https://gerrit.wikimedia.org/r/247865
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I972c5b658e4ac5187c53c61eb7050e33f593305a
Gerrit-PatchSet: 2
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>
Gerrit-Reviewer: DLynch <[email protected]>
Gerrit-Reviewer: Divec <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits