Esanders has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/117214

Change subject: Fix application of slug focus classes
......................................................................

Fix application of slug focus classes

Bug: 62285
Change-Id: If248f732330846d9030d33aa0cacbe3ab26cf7c7
---
M modules/ve/ce/ve.ce.SurfaceObserver.js
1 file changed, 18 insertions(+), 12 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor 
refs/changes/14/117214/1

diff --git a/modules/ve/ce/ve.ce.SurfaceObserver.js 
b/modules/ve/ce/ve.ce.SurfaceObserver.js
index cdbe7c5..e21b2ab 100644
--- a/modules/ve/ce/ve.ce.SurfaceObserver.js
+++ b/modules/ve/ce/ve.ce.SurfaceObserver.js
@@ -174,7 +174,7 @@
  * @fires selectionChange
  */
 ve.ce.SurfaceObserver.prototype.pollOnceInternal = function ( emitChanges ) {
-       var $nodeOrSlug, node, text, hash, range, rangyRange;
+       var $nodeOrSlug, node, text, hash, range, rangyRange, inSlug;
 
        if ( !this.domDocument ) {
                return;
@@ -190,19 +190,25 @@
                $nodeOrSlug = $( rangyRange.anchorNode ).closest( 
'.ve-ce-branchNode, .ve-ce-branchNode-slug' );
                if ( $nodeOrSlug.length ) {
                        range = rangyRange.getRange();
-                       if ( this.$slugWrapper ) {
-                               this.$slugWrapper
-                                       .addClass( 
've-ce-branchNode-blockSlugWrapper-unfocussed' )
-                                       .removeClass( 
've-ce-branchNode-blockSlugWrapper-focussed' );
-                               this.$slugWrapper = null;
-                       }
-                       if ( !$nodeOrSlug.hasClass( 've-ce-branchNode-slug' ) ) 
{
+                       inSlug = $nodeOrSlug.hasClass( 've-ce-branchNode-slug' 
);
+                       if ( !inSlug ) {
                                node = $nodeOrSlug.data( 'view' );
-                       } else {
-                               this.$slugWrapper = $nodeOrSlug.closest( 
'.ve-ce-branchNode-blockSlugWrapper' )
-                                       .addClass( 
've-ce-branchNode-blockSlugWrapper-focussed' )
-                                       .removeClass( 
've-ce-branchNode-blockSlugWrapper-unfocussed' );
                        }
+               } else {
+                       inSlug = false;
+               }
+
+               if ( inSlug && !this.$slugWrapper ) {
+                       this.$slugWrapper = $nodeOrSlug.closest( 
'.ve-ce-branchNode-blockSlugWrapper' )
+                               .addClass( 
've-ce-branchNode-blockSlugWrapper-focussed' )
+                               .removeClass( 
've-ce-branchNode-blockSlugWrapper-unfocussed' );
+               }
+
+               if ( !inSlug && this.$slugWrapper ) {
+                       this.$slugWrapper
+                               .addClass( 
've-ce-branchNode-blockSlugWrapper-unfocussed' )
+                               .removeClass( 
've-ce-branchNode-blockSlugWrapper-focussed' );
+                       this.$slugWrapper = null;
                }
        }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/117214
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If248f732330846d9030d33aa0cacbe3ab26cf7c7
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <esand...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to