Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
Apache Flex 4.12.0
-
None
-
Affected OS(s): All OS Platforms
Affected OS(s): All OS Platforms
Browser: Safari
Language Found: English
Description
Steps to reproduce:
1. Create a component that extends SkinnableContainer
2. Create one skin with <Group id="contentGroup" />
3. Create another skin class with <VGroup id="contentGroup" />
4. Toggle between the skin classes during runtime
Actual Results:
The following runtime error is shown:
Error: You are not allowed to change the layout for this class. It is read-only.
at spark.components::VGroup/set layout()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\VGroup.as:465]
at spark.components::SkinnableContainer/partRemoved()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\SkinnableContainer.as:955]
at com.vmware.ue.treenavigation.view.components::MockObjectContainer/partRemoved()[/Users/swid/Workspaces/ue/prototypes/TreeNavigation/src/com/vmware/ue/treenavigation/view/components/MockObjectContainer.as:61]
at spark.components.supportClasses::SkinnableComponent/clearSkinParts()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:698]
at spark.components.supportClasses::SkinnableComponent/detachSkin()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:732]
at spark.components.supportClasses::SkinnableComponent/validateSkinChange()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:404]
at spark.components.supportClasses::SkinnableComponent/commitProperties()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:419]
at mx.core::UIComponent/validateProperties()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:7772]
at mx.managers::LayoutManager/validateProperties()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:572]
at mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:730]
at mx.managers::LayoutManager/doPhasedInstantiationCallback()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:1072]
Expected Results:
I would expect that changing the content group's container from Group to VGroup to Group, would not cause a runtime error. The container, I suppose, should be reinstantiated.
Workaround (if any):
In both skin classes, use <Group> component and change the layout using <layout><VerticalLayout /></layout>
Attachments
Issue Links
- is related to
-
FLEX-34383 RTE when removing SkinnableContainer with skinDestructionPolicy "auto" and skin with VGroup or HGroup as the "contentGroup"
-
- Open
-