Repository: flex-asjs Updated Branches: refs/heads/develop 02da6b0bc -> 40e6a5aec
Fix for JIRA bug FLEX-35169: ComboBox broken. Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/40e6a5ae Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/40e6a5ae Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/40e6a5ae Branch: refs/heads/develop Commit: 40e6a5aec6719dc6511618986ef9e4db044f3b8e Parents: 02da6b0 Author: Peter Ent <[email protected]> Authored: Wed Nov 16 16:41:32 2016 -0500 Committer: Peter Ent <[email protected]> Committed: Wed Nov 16 16:41:32 2016 -0500 ---------------------------------------------------------------------- .../ListSingleSelectionMouseController.as | 32 ++++++++++---------- .../html/supportClasses/ContainerContentArea.as | 9 ++++++ 2 files changed, 25 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/40e6a5ae/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ListSingleSelectionMouseController.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ListSingleSelectionMouseController.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ListSingleSelectionMouseController.as index 77ab6f5..d794135 100644 --- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ListSingleSelectionMouseController.as +++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ListSingleSelectionMouseController.as @@ -30,7 +30,7 @@ package org.apache.flex.html.beads.controllers import org.apache.flex.events.ItemRemovedEvent; import org.apache.flex.events.MouseEvent; import org.apache.flex.html.beads.IListView; - + import org.apache.flex.events.ItemClickedEvent; /** @@ -42,7 +42,7 @@ package org.apache.flex.html.beads.controllers * and updates an ISelectionModel (which only supports single * selection). Other controller/model pairs would support * various kinds of multiple selection. - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -52,7 +52,7 @@ package org.apache.flex.html.beads.controllers { /** * Constructor. - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -61,10 +61,10 @@ package org.apache.flex.html.beads.controllers public function ListSingleSelectionMouseController() { } - + /** * The model. - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -74,7 +74,7 @@ package org.apache.flex.html.beads.controllers /** * The view. - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -84,7 +84,7 @@ package org.apache.flex.html.beads.controllers /** * The parent of the item renderers. - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -93,10 +93,10 @@ package org.apache.flex.html.beads.controllers protected var dataGroup:IItemRendererParent; private var _strand:IStrand; - + /** * @copy org.apache.flex.core.IBead#strand - * + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 @@ -110,27 +110,27 @@ package org.apache.flex.html.beads.controllers IEventDispatcher(_strand).addEventListener("itemAdded", handleItemAdded); IEventDispatcher(_strand).addEventListener("itemRemoved", handleItemRemoved); } - + protected function handleItemAdded(event:ItemAddedEvent):void { IEventDispatcher(event.item).addEventListener("itemClicked", selectedHandler); IEventDispatcher(event.item).addEventListener("itemRollOver", rolloverHandler); IEventDispatcher(event.item).addEventListener("itemRollOut", rolloutHandler); } - - protected function handleItemRemoved(event:ItemAddedEvent):void + + protected function handleItemRemoved(event:ItemRemovedEvent):void { IEventDispatcher(event.item).removeEventListener("itemClicked", selectedHandler); IEventDispatcher(event.item).removeEventListener("itemRollOver", rolloverHandler); IEventDispatcher(event.item).removeEventListener("itemRollOut", rolloutHandler); } - + protected function selectedHandler(event:ItemClickedEvent):void { listModel.selectedIndex = event.index; listView.host.dispatchEvent(new Event("change")); } - + protected function rolloverHandler(event:Event):void { var renderer:ISelectableItemRenderer = event.currentTarget as ISelectableItemRenderer; @@ -138,7 +138,7 @@ package org.apache.flex.html.beads.controllers IRollOverModel(listModel).rollOverIndex = renderer.index; } } - + protected function rolloutHandler(event:Event):void { var renderer:ISelectableItemRenderer = event.currentTarget as ISelectableItemRenderer; @@ -148,6 +148,6 @@ package org.apache.flex.html.beads.controllers IRollOverModel(listModel).rollOverIndex = -1; } } - + } } http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/40e6a5ae/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ContainerContentArea.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ContainerContentArea.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ContainerContentArea.as index 481c8e9..502211e 100644 --- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ContainerContentArea.as +++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ContainerContentArea.as @@ -23,6 +23,10 @@ package org.apache.flex.html.supportClasses import org.apache.flex.events.Event; import org.apache.flex.events.IEventDispatcher; + COMPILE::SWF { + import org.apache.flex.core.IChild; + } + /** * The ContainerContentArea class implements the contentView for * a Container. Container's don't always parent their children directly as @@ -67,6 +71,11 @@ package org.apache.flex.html.supportClasses { COMPILE::SWF { + var n:Number = numElements; + for (var i:Number = n-1; i >= 0; i--) { + var child:IChild = getElementAt(i); + removeElement(child,false); + } $sprite.removeChildren(0); } COMPILE::JS
