You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by pi...@apache.org on 2022/04/19 10:49:03 UTC

[royale-asjs] branch develop updated: MX ADG: Remove redundant event listener - it's already been registered in parent class

This is an automated email from the ASF dual-hosted git repository.

piotrz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new 1456bea114 MX ADG: Remove redundant event listener - it's already been registered in parent class
1456bea114 is described below

commit 1456bea11428380b4e356dc85f7a003434f5fecb
Author: Piotr Zarzycki <pi...@gmail.com>
AuthorDate: Tue Apr 19 12:48:56 2022 +0200

    MX ADG: Remove redundant event listener - it's already been registered in parent class
    
    - Remove "itemsCreated" which was redundant and caused Null Pointer Exceptions in some cases when HierarchicalData was used
    - Move reset cursor to separate function for reuse purposes
---
 .../royale/html/beads/VirtualDataContainerView.as  |  2 --
 ...actoryForICollectionViewAdvancedDataGridData.as | 34 ++++++++++++----------
 2 files changed, 19 insertions(+), 17 deletions(-)

diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
index 85a58f1d61..12b89e78a5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
@@ -57,8 +57,6 @@ package org.apache.royale.html.beads
 		{
 			_strand = value;
 			super.strand = value;
-			
-			host.addEventListener("beadsAdded", beadsAddedHandler);
 		}
 		
         /**
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/DataItemRendererFactoryForICollectionViewAdvancedDataGridData.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/DataItemRendererFactoryForICollectionViewAdvancedDataGridData.as
index eea390d130..da146c32bc 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/DataItemRendererFactoryForICollectionViewAdvancedDataGridData.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/DataItemRendererFactoryForICollectionViewAdvancedDataGridData.as
@@ -22,6 +22,8 @@ package mx.controls.advancedDataGridClasses
 	import mx.collections.ICollectionView;
 	import mx.collections.IViewCursor;
 
+	import org.apache.royale.core.IIndexedItemRenderer;
+	import org.apache.royale.core.IIndexedItemRendererInitializer;
 	import org.apache.royale.core.IItemRendererOwnerView;
 	import org.apache.royale.core.IStrandWithModelView;
 	import org.apache.royale.events.Event;
@@ -44,7 +46,10 @@ package mx.controls.advancedDataGridClasses
      */
 	public class DataItemRendererFactoryForICollectionViewAdvancedDataGridData extends VirtualDataItemRendererFactoryBase
 	{
-        /**
+		private var cursor:IViewCursor;
+		private var currentIndex:int;
+
+		/**
          *  Constructor.
          *
          *  @langversion 3.0
@@ -72,24 +77,12 @@ package mx.controls.advancedDataGridClasses
             if (!dp)
                 return;
 
-            if (cursor) cursor.finalizeThis();
-            cursor = dp.createCursor();
-            currentIndex = (dp.length > 0) ? 0 : -1;
-            
-            // listen for individual items being added in the future.
-            //var dped:IEventDispatcher = dp as IEventDispatcher;
-            //dped.addEventListener(CollectionEvent.ITEM_ADDED, itemAddedHandler);
-            //dped.addEventListener(CollectionEvent.ITEM_REMOVED, itemRemovedHandler);
-            //dped.addEventListener(CollectionEvent.ITEM_UPDATED, itemUpdatedHandler);
+            resetCollectionCursor();
+            currentIndex = -1;
 
-			sendStrandEvent(_strand, "itemsCreated");
 			super.dataProviderChangeHandler(event);
         }
 
-        private var cursor:IViewCursor;
-        private var currentIndex:int;
-		
-        
         /**
          *  Get a item for a given index.
          *
@@ -123,5 +116,16 @@ package mx.controls.advancedDataGridClasses
             currentIndex = index;
 			return cursor.current;
         }
+
+		private function resetCollectionCursor():void
+		{
+			if (cursor)
+			{
+				cursor.finalizeThis();
+			}
+
+			var dp:ICollectionView = dataProviderModel.dataProvider as ICollectionView;
+			cursor = dp.createCursor();
+		}
 	}
 }