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

Reply via email to