Esanders has uploaded a new change for review.

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

Change subject: SurfaceObserver should observe the surface
......................................................................

SurfaceObserver should observe the surface

The clue's in the name.

Change-Id: I1941b87cbc70e195382e754dba3e64a2aa06d695
---
M src/ce/ve.ce.Surface.js
M src/ce/ve.ce.SurfaceObserver.js
2 files changed, 8 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor 
refs/changes/25/162125/1

diff --git a/src/ce/ve.ce.Surface.js b/src/ce/ve.ce.Surface.js
index a655583..58f413d 100644
--- a/src/ce/ve.ce.Surface.js
+++ b/src/ce/ve.ce.Surface.js
@@ -28,7 +28,7 @@
        this.surface = surface;
        this.model = model;
        this.documentView = new ve.ce.Document( model.getDocument(), this );
-       this.surfaceObserver = new ve.ce.SurfaceObserver( this.documentView );
+       this.surfaceObserver = new ve.ce.SurfaceObserver( this );
        this.selectionTimeout = null;
        this.$window = this.$( this.getElementWindow() );
        this.$document = this.$( this.getElementDocument() );
diff --git a/src/ce/ve.ce.SurfaceObserver.js b/src/ce/ve.ce.SurfaceObserver.js
index a85a3ec..b786540 100644
--- a/src/ce/ve.ce.SurfaceObserver.js
+++ b/src/ce/ve.ce.SurfaceObserver.js
@@ -11,14 +11,15 @@
  * @mixins OO.EventEmitter
  *
  * @constructor
- * @param {ve.ce.Document} documentView Document to observe
+ * @param {ve.ce.Surface} surface Surface to observe
  */
-ve.ce.SurfaceObserver = function VeCeSurfaceObserver( documentView ) {
+ve.ce.SurfaceObserver = function VeCeSurfaceObserver( surface ) {
        // Mixin constructors
        OO.EventEmitter.call( this );
 
        // Properties
-       this.documentView = documentView;
+       this.surface = surface;
+       this.documentView = surface.getDocument();
        this.domDocument = null;
        this.polling = false;
        this.timeoutId = null;
@@ -82,6 +83,7 @@
  * @method
  */
 ve.ce.SurfaceObserver.prototype.detach = function () {
+       this.surface = null;
        this.documentView = null;
        this.domDocument = null;
 };
@@ -239,8 +241,8 @@
                        if ( slugChange ) {
                                // Emit 'position' on the surface view after 
the animation completes
                                this.setTimeout( function () {
-                                       if ( observer.documentView ) {
-                                               
observer.documentView.documentNode.surface.emit( 'position' );
+                                       if ( observer.surface ) {
+                                               observer.surface.emit( 
'position' );
                                        }
                                }, 200 );
                        }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1941b87cbc70e195382e754dba3e64a2aa06d695
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to