[ 
https://issues.apache.org/jira/browse/FLEX-32721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13669043#comment-13669043
 ] 

Justin Mclean commented on FLEX-32721:
--------------------------------------

Confirmed still an issue in Apache Flex 4.9.1 and that suggested fix solves the 
issue.

As layoutChrome is fairly lightweight it it seem to be called almost every time 
I think we can do without the check.
                
> Border skin sometimes dissappears from AdvancedDataGrid
> -------------------------------------------------------
>
>                 Key: FLEX-32721
>                 URL: https://issues.apache.org/jira/browse/FLEX-32721
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Advanced Data Grid
>    Affects Versions: Adobe Flex SDK Previous
>         Environment: Affected OS(s): Windows
> Affected OS(s): Windows XP
> Language Found: English
>            Reporter: Adobe JIRA
>            Assignee: Justin Mclean
>            Priority: Minor
>
> Steps to reproduce:
> 1. compile attached mxml
> 2. show and hide dataGrid
>  
>  Actual Results:
>  Border goes missing when component re-added to the stage
>  
>  Expected Results:
>  Border does not go missing
>  
>  Workaround (if any):
> override protected function layoutChrome(unscaledWidth:Number, 
> unscaledHeight:Number):void
> {
>       super.layoutChrome( unscaledWidth, unscaledHeight );
>       
>       _layoutChromeCalled = true;
> }
> override protected function updateDisplayList( w : Number, h : Number ) : void
> {
>       _layoutChromeCalled = false;
>       
>       super.updateDisplayList( w, h );
>       
>       if( !_layoutChromeCalled )layoutChrome( w, h )
> }
> Explanation:
> When the ADG is re-added to the stage ScrollControlBase.styleChanged is 
> called with styleProp == null. This throws away the border and creates a new 
> one. createBorder calls invalidateDisplayList.
> When updateDisplayList is called AdvancedListBase.updateDisplayList returns 
> without calling super.updateDisplayList as the size of the component has not 
> changed and none of the other conditions evaluate to true. 
> ScrollControlBase.updateDisplayList, which is not called in this case would 
> call layoutChrome which would correctly size the border.

--
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

Reply via email to