invalidateDisplayList doesn't include invalidateSize.
There probably isn't a good reason we don't invalidateSize on a collectionChange. We do on a dataProvider change. Sometimes we don't want to recalc layout on data items changing. ________________________________ From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Josh McDonald Sent: Monday, August 18, 2008 10:16 PM To: [email protected] Subject: Re: [flexcoders] Why does ComboBox not invalidateSize() on DATA_CHANGE (at least once)? Not sure why the problem disappeared, but my original question is still valid, however you're right I should have been looking at the collection change handler. It seems that ComboBase.collectionChangeHandler() is kinda wonky :) It does a bunch of things including some conditional invalidateDisplaylist() calls, then calls invalidateDisplayList() anyway, and for REFRESH and some REMOVEs will also dispatch "valueCommit". It won't do anything except invalidateDisplayList() if its an ADD event, which is what we're interested in at the moment, as it's a long-lived list that's late-populated (don't ask, not my arch). Does invalidateDisplayList() automatically include invalidateSize()? I didn't think it did, but I could be mistaken. If not, is there a reason invalidateSize() isn't called from ComboBase.collectionChangeHandler()? -Josh On Tue, Aug 19, 2008 at 2:53 PM, Josh McDonald <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: No doubt. Will investigate further :) On Tue, Aug 19, 2008 at 2:36 PM, Alex Harui <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: Spooky... Potentially fragile, IMHO. ________________________________ From: [email protected] <mailto:[email protected]> [mailto:[email protected] <mailto:[email protected]> ] On Behalf Of Josh McDonald Sent: Monday, August 18, 2008 9:25 PM To: [email protected] <mailto:[email protected]> Subject: Re: [flexcoders] Why does ComboBox not invalidateSize() on DATA_CHANGE (at least once)? Nope. One of our guys was having a problem where the CB wouldn't be the right size when nested in a VBox, so I suggest he call cb.invalidateSize() on dataChange, and it fixed the problem. Maybe just a happy coincidence. I don't like it when things like that happen and I can't explain 'em tho :( -Josh On Tue, Aug 19, 2008 at 2:16 PM, Alex Harui <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: ??? DATA_CHANGE is when the data property changes which is inactive unless the CB is a renderer in some list. Did you mean COLLECTION_CHANGE? ________________________________ From: [email protected] <mailto:[email protected]> [mailto:[email protected] <mailto:[email protected]> ] On Behalf Of Josh McDonald Sent: Monday, August 18, 2008 4:53 PM To: [email protected] <mailto:[email protected]> Subject: [flexcoders] Why does ComboBox not invalidateSize() on DATA_CHANGE (at least once)? Hey Guys, Just wondering why the default behaviour of ComboBox doesn't invalidateSize() when data is changed, or at least the first time it does? Seems odd to me is all. It seems to resize just fine under some circumstances, but when placed in a VBox you need dataChange="invalidateSize()" -Josh -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

