flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mih...@apache.org
Subject git commit: [flex-sdk] [refs/heads/develop] - FLEX-27509 CAUSE: In an AdvancedDataGrid with non-text item renderers AdvancedDataGrid.expandItem() applies masks onto those item renderers when it needs to close a node. At the same time, AdvancedListBase ha
Date Thu, 12 Jan 2017 12:26:20 GMT
Repository: flex-sdk
Updated Branches:
  refs/heads/develop a5b04e150 -> 6c577a50c


FLEX-27509
CAUSE: In an AdvancedDataGrid with non-text item renderers AdvancedDataGrid.expandItem() applies
masks onto those item renderers when it needs to close a node. At the same time, AdvancedListBase
has its own custom mechanism for using masks to scroll vertically in a more efficient way.
In order to detect whether it's used this mechanism, and reset the changes (detection happens
in AdvancedListBase.removeClipMask(), while the mechanism is applied in addClipMask()), it
simply asks whether the non-text item renderer has a mask applied. However, this mask could
have been applied by the expandItem() mechanism mentioned above, which means that addClipMask()
will never have been called. As a result, itemMaskFreeList is still null, which leads to the
fatal.

SOLUTION: Ideally there should be a flag that specifies whether AdvancedListBase.addClipMask()
has applied the masking mechanism. But for now we can simply check that itemMaskFreeList isn't
null before we use it.


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/6c577a50
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/6c577a50
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/6c577a50

Branch: refs/heads/develop
Commit: 6c577a50c59d66c2bf151f080d4f5bf90f5f2777
Parents: a5b04e1
Author: Mihai Chira <mihaic@apache.org>
Authored: Thu Jan 12 13:24:40 2017 +0100
Committer: Mihai Chira <mihaic@apache.org>
Committed: Thu Jan 12 13:24:40 2017 +0100

----------------------------------------------------------------------
 .../src/mx/controls/listClasses/AdvancedListBase.as             | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/6c577a50/frameworks/projects/advancedgrids/src/mx/controls/listClasses/AdvancedListBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/advancedgrids/src/mx/controls/listClasses/AdvancedListBase.as
b/frameworks/projects/advancedgrids/src/mx/controls/listClasses/AdvancedListBase.as
index 854f0df..a872381 100644
--- a/frameworks/projects/advancedgrids/src/mx/controls/listClasses/AdvancedListBase.as
+++ b/frameworks/projects/advancedgrids/src/mx/controls/listClasses/AdvancedListBase.as
@@ -5231,7 +5231,10 @@ public class AdvancedListBase extends ScrollControlBase
             }
             else if (item && item.mask)
             {
-                itemMaskFreeList.push(item.mask);
+                if(itemMaskFreeList)
+                {
+                    itemMaskFreeList.push(item.mask);
+                }
                 item.mask = null;
             }
         }


Mime
View raw message