Fix page loading scheme; fix User switching
[blerg.git] / www / jssrc / blerg / Main.js
index 6fc7bb1..757779d 100644 (file)
@@ -4,13 +4,21 @@ enyo.kind({
        classes: "blerg-main",
        currentView: null,
        updateView: function(objdef) {
-               if (!this.currentView || this.currentView.kind != this.currentView.kind) {
+               if (!this.currentView || objdef.kind != this.currentView.kind) {
                        this.destroyComponents();
                        this.currentView = this.createComponent(objdef);
                        this.currentView.render();
                } else {
-                       for (var i in objdef)
-                               this.currentView.setProperty(i, objdef[i])
+                       // We don't want to invoke any change handlers until
+                       // these are all set, so we do that ourselves
+                       for (var i in objdef) {
+                               if (i == 'kind') continue;
+                               this.currentView[i] = objdef[i];
+                       }
+                       for (var i in objdef) {
+                               if (i == 'kind') continue;
+                               this.currentView[i + 'Changed'] && this.currentView[i + 'Changed']();
+                       }
                }
        }
 });