[
https://issues.apache.org/jira/browse/FLEX-33740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13770870#comment-13770870
]
Alex Harui commented on FLEX-33740:
-----------------------------------
Your first proposal is the safer one. Even changing all of the classes in the
SDK to use a protected removedFromStageHandler is insufficient. It is such a
likely name of a method that the odds are that other third parties have
handlers of the same name and will be impacted.
And even a name like removeFromStage is risky, so I would suggest something
slightly more obscure.
Note that, in many cases, event handlers of non-bubbling events can be
overridden and thus effectively removed by adding your listener first or using
a higher priority and calling stopImmediatePropagation.
> Change UIComponent function removedFromStageHandler from private to protected
> to allow override
> -----------------------------------------------------------------------------------------------
>
> Key: FLEX-33740
> URL: https://issues.apache.org/jira/browse/FLEX-33740
> Project: Apache Flex
> Issue Type: Improvement
> Components: .Unspecified - Framework
> Affects Versions: Apache Flex 4.10.0
> Environment: Gui framework
> Reporter: David Lantier
> Labels: features, performance
> Fix For: Apache Flex 4.11.0
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> It would be more safe and faster if it was possible to override the function
> UIComponent::removedFromStageHandler (and also, remove) instead to have to
> add and remove events listeners for those who extends UI classes.
> Have to check if new proposed method name "removedFromStage" not used by any
> component, or choose another.
> Example:
> private function removedFromStageHandler(event:Event):void
> {
> _systemManagerDirty = true;
> removedFromStage(); // proposition: add this call
> }
> // proposition: new function protected, dedicated to override
> /** Override this allow to be called when this is removing from stage. Avoids
> to have to listen REMOVED_FROM_STAGE event. */
> protected function removedFromStage():void {}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira