Added internal check to see if view has been set before creating a new one. Removed references to "actualParent" which is no longer needed.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/84ece7b7 Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/84ece7b7 Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/84ece7b7 Branch: refs/heads/master Commit: 84ece7b7faf4cfbd5dd81a8d96e2c1aca23082f8 Parents: a6eb386 Author: Peter Ent <[email protected]> Authored: Mon Sep 21 15:11:55 2015 -0400 Committer: Peter Ent <[email protected]> Committed: Mon Sep 21 15:11:55 2015 -0400 ---------------------------------------------------------------------- .../Core/as/src/org/apache/flex/core/UIBase.as | 2 +- .../js/src/org/apache/flex/core/ContainerBase.js | 19 ------------------- .../Core/js/src/org/apache/flex/core/UIBase.js | 6 ++++-- .../html/supportClasses/ContainerContentArea.as | 2 +- .../js/src/org/apache/flex/html/Container.js | 4 ++-- 5 files changed, 8 insertions(+), 25 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/84ece7b7/frameworks/projects/Core/as/src/org/apache/flex/core/UIBase.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/Core/as/src/org/apache/flex/core/UIBase.as b/frameworks/projects/Core/as/src/org/apache/flex/core/UIBase.as index 3f00b32..b263664 100644 --- a/frameworks/projects/Core/as/src/org/apache/flex/core/UIBase.as +++ b/frameworks/projects/Core/as/src/org/apache/flex/core/UIBase.as @@ -988,7 +988,7 @@ package org.apache.flex.core addBead(model); } } - if (getBeadByType(IBeadView) == null) + if (_view == null && getBeadByType(IBeadView) == null) { c = ValuesManager.valuesImpl.getValue(this, "iBeadView") as Class; if (c) http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/84ece7b7/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js ---------------------------------------------------------------------- diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js index 593a11c..1441721 100644 --- a/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js +++ b/frameworks/projects/Core/js/src/org/apache/flex/core/ContainerBase.js @@ -63,7 +63,6 @@ org.apache.flex.core.ContainerBase = function() { this.strandChildren_ = new org.apache.flex.core.ContainerBaseStrandChildren(this); this.document = this; - this.actualParent_ = this; }; goog.inherits(org.apache.flex.core.ContainerBase, @@ -91,13 +90,6 @@ org.apache.flex.core.ContainerBase.prototype.mxmlsd = null; /** - * @private - * @type {Object} - */ -org.apache.flex.core.ContainerBase.prototype.actualParent_ = null; - - -/** * @export * @type {boolean} */ @@ -377,17 +369,6 @@ Object.defineProperties(org.apache.flex.core.ContainerBase.prototype, { } }, /** @export */ - actualParent: { - /** @this {org.apache.flex.core.ContainerBase} */ - get: function() { - return this.actualParent_; - }, - /** @this {org.apache.flex.core.ContainerBase} */ - set: function(s) { - this.actualParent_ = s; - } - }, - /** @export */ strandChildren: { /** @this {org.apache.flex.core.ContainerBase} */ get: function() { http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/84ece7b7/frameworks/projects/Core/js/src/org/apache/flex/core/UIBase.js ---------------------------------------------------------------------- diff --git a/frameworks/projects/Core/js/src/org/apache/flex/core/UIBase.js b/frameworks/projects/Core/js/src/org/apache/flex/core/UIBase.js index 5642cd0..f00bb51 100644 --- a/frameworks/projects/Core/js/src/org/apache/flex/core/UIBase.js +++ b/frameworks/projects/Core/js/src/org/apache/flex/core/UIBase.js @@ -291,7 +291,7 @@ org.apache.flex.core.UIBase.prototype.addedToParent = function() { } } } - if (this.getBeadByType(org.apache.flex.core.IBeadView) == null) + if (this.view_ == null && this.getBeadByType(org.apache.flex.core.IBeadView) == null) { if (org.apache.flex.core.ValuesManager.valuesImpl.getValue) { c = /** @type {Function} */ (org.apache.flex.core.ValuesManager.valuesImpl. @@ -299,8 +299,10 @@ org.apache.flex.core.UIBase.prototype.addedToParent = function() { if (c) { var view = new c(); - if (view) + if (view) { + this.view_ = view; this.addBead(view); + } } } } http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/84ece7b7/frameworks/projects/HTML/as/src/org/apache/flex/html/supportClasses/ContainerContentArea.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/HTML/as/src/org/apache/flex/html/supportClasses/ContainerContentArea.as b/frameworks/projects/HTML/as/src/org/apache/flex/html/supportClasses/ContainerContentArea.as index 5549f8d..38f40f9 100644 --- a/frameworks/projects/HTML/as/src/org/apache/flex/html/supportClasses/ContainerContentArea.as +++ b/frameworks/projects/HTML/as/src/org/apache/flex/html/supportClasses/ContainerContentArea.as @@ -23,7 +23,7 @@ package org.apache.flex.html.supportClasses import org.apache.flex.events.Event; /** - * The ContainerContentArea class implements the actualParent for + * The ContainerContentArea class implements the contentView for * a Container. Container's don't always parent their children directly as * that makes it harder to handle scrolling. * http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/84ece7b7/frameworks/projects/HTML/js/src/org/apache/flex/html/Container.js ---------------------------------------------------------------------- diff --git a/frameworks/projects/HTML/js/src/org/apache/flex/html/Container.js b/frameworks/projects/HTML/js/src/org/apache/flex/html/Container.js index 2434524..c363807 100644 --- a/frameworks/projects/HTML/js/src/org/apache/flex/html/Container.js +++ b/frameworks/projects/HTML/js/src/org/apache/flex/html/Container.js @@ -118,7 +118,7 @@ org.apache.flex.html.Container.prototype.runLayoutHandler = */ org.apache.flex.html.Container.prototype.internalChildren = function() { - return this.actualParent.element.children; + return this.element.children; }; @@ -126,7 +126,7 @@ org.apache.flex.html.Container.prototype.internalChildren = * @return {Array} All of the children of the container. */ org.apache.flex.html.Container.prototype.getChildren = function() { - var arr = this.actualParent.element.children; + var arr = this.element.children; var comparr = []; var n = arr.length; for (var i = 0; i < n; i++)
