diff --git a/src/lib/template/templatizer.html b/src/lib/template/templatizer.html index 698ef36395..60245c6f8e 100644 --- a/src/lib/template/templatizer.html +++ b/src/lib/template/templatizer.html @@ -101,7 +101,6 @@ _prepParentProperties: function(archetype) { var parentProps = this._parentProps = archetype._parentProps; if (this._forwardParentProp && parentProps) { - // Prototype setup (memoized on archetype) var proto = archetype._parentPropProto; if (!proto) { @@ -126,13 +125,11 @@ Polymer.Bind._createAccessors(proto, parentProp, effects); } } - // Instance setup if (this._templatized != this) { Polymer.Bind.prepareInstance(this._templatized); } this._extendTemplate(this._templatized, proto); - } }, @@ -195,6 +192,8 @@ stamp: function(model) { model = model || {}; if (this._parentProps) { + // TODO(kschaaf): Maybe this is okay + // model.parent = this.dataHost; model.parent = model.parent || {}; for (var prop in this._parentProps) { model.parent[prop] = this['_parent_' + prop]; diff --git a/src/lib/template/x-if.html b/src/lib/template/x-if.html index d4c1bdd610..60671d43a1 100644 --- a/src/lib/template/x-if.html +++ b/src/lib/template/x-if.html @@ -53,11 +53,11 @@ render: function() { this.debounce('render', function() { - if (!this.ctor) { - this._wrapTextNodes(this._content); - this.templatize(this); - } if (this.if) { + if (!this.ctor) { + this._wrapTextNodes(this._content); + this.templatize(this); + } this._ensureInstance(); } else if (this.restamp) { this._teardownInstance(); diff --git a/src/lib/template/x-repeat.html b/src/lib/template/x-repeat.html index b5b023a25b..74e968f8bd 100644 --- a/src/lib/template/x-repeat.html +++ b/src/lib/template/x-repeat.html @@ -195,7 +195,7 @@ _itemsChanged: function(items, old, path) { if (path) { - this._notifyItemChanged(path, items); + this._forwardItemPath(path, items); this._checkObservedPaths(path); } else { if (old) { @@ -496,7 +496,7 @@ // Called as a side effect of a host items.. path change, // responsible for notifying item. changes to row for key - _notifyItemChanged: function(path, value) { + _forwardItemPath: function(path, value) { if (this._rowForKey) { // 'items.'.length == 6 var dot = path.indexOf('.', 6);