diff --git a/firebase-query-behavior.html b/firebase-query-behavior.html index 56ba739..a7dea7c 100644 --- a/firebase-query-behavior.html +++ b/firebase-query-behavior.html @@ -69,6 +69,15 @@ this.location = ''; }, + listeners: { + 'firebase-value': '_onFirebaseLoaded' + }, + + _onFirebaseLoaded: function() { + this.unlisten(this, 'firebase-value', '_onFirebaseLoaded'); + this.fire('firebase-loaded'); + }, + _localDataChanged: function(changes) { // Virtual.. }, @@ -87,7 +96,7 @@ _dataChanged: function(changes) { if (this._receivingRemoteChanges || - this._receivingLocalChanges) { + this._receivingLocalChanges) { return; } @@ -102,6 +111,7 @@ if (query) { this._listenToQuery(query); } + this.listen(this, 'firebase-value', '_onFirebaseLoaded'); }, _listenToQuery: function(query) { diff --git a/test/firebase-document.html b/test/firebase-document.html index bae48b1..bd5ae2b 100644 --- a/test/firebase-document.html +++ b/test/firebase-document.html @@ -80,7 +80,7 @@ suite('document updating', function() { setup(function(done) { firebase = fixture('UpdateableDocument'); - waitForEvent(firebase, 'firebase-value').then(function() { + waitForEvent(firebase, 'firebase-loaded').then(function() { done(); }); });