You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by gr...@apache.org on 2020/06/11 08:42:56 UTC

[royale-asjs] branch develop updated (6b94870 -> e9040b9)

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

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


    from 6b94870  dispatch valueCommit from Checkbox.  Should fix #857
     new 65f368b  The index needs to be propagated as well here. PopUpMenuButton needs that.
     new 1f73fb6  Changes to support using UIComponent based renderers in a Menu, and fixes for PopUpMenuButton
     new e9040b9  Merge branch 'develop' of https://github.com/apache/royale-asjs into develop

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../projects/MXRoyale/src/main/royale/mx/controls/Menu.as    |  3 +--
 .../MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as  | 11 +++++------
 .../royale/mx/controls/beads/ListItemRendererInitializer.as  | 12 +++++++++++-
 .../controllers/CascadingMenuSelectionMouseController.as     |  3 ++-
 4 files changed, 19 insertions(+), 10 deletions(-)


[royale-asjs] 02/03: Changes to support using UIComponent based renderers in a Menu, and fixes for PopUpMenuButton

Posted by gr...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 1f73fb65c87c1be01853b50936d334de26a16bc3
Author: greg-dove <gr...@gmail.com>
AuthorDate: Thu Jun 11 20:32:41 2020 +1200

    Changes to support using UIComponent based renderers in a Menu, and fixes for PopUpMenuButton
---
 .../projects/MXRoyale/src/main/royale/mx/controls/Menu.as    |  3 +--
 .../MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as  | 11 +++++------
 .../royale/mx/controls/beads/ListItemRendererInitializer.as  | 12 +++++++++++-
 3 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/Menu.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/Menu.as
index 0097265..530666a 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/Menu.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/Menu.as
@@ -588,7 +588,7 @@ package mx.controls
 	 *  @playerversion AIR 1.1
 	 *  @productversion Flex 3
 	 */
-	public class Menu extends UIComponent implements IFocusManagerContainer, IMenu
+	public class Menu extends UIComponent implements IFocusManagerContainer, IMenu, IItemRendererProvider
 	{
 		// include "../core/Version.as";
 		
@@ -2848,7 +2848,6 @@ package mx.controls
             // were made; these are just defaults extracted from CSS.
             loadBeadFromValuesManager(IDataProviderItemRendererMapper, "iDataProviderItemRendererMapper", this);
             loadBeadFromValuesManager(IItemRendererClassFactory, "iItemRendererClassFactory", this);
-
 	        dispatchEvent(new Event("initComplete"));
 		}
 		
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as
index 6c4ef87..16cf76e 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/PopUpMenuButton.as
@@ -345,11 +345,8 @@ public class PopUpMenuButton extends PopUpButton
             var menuEvent:MenuEvent = new MenuEvent(MenuEvent.ITEM_CLICK);
             
             menuEvent.label = popUpMenu.itemToLabel(event.item);
-            /*if (labelSet)
-                super.label = _label;
-            else*/
-            //    super.label = popUpMenu.itemToLabel(event.item).replace(" ", "&nbsp;") + downArrowString;
 
+            var oldLabel:String = super.label;
             var labelBase:String = labelSet ? _label || '' : popUpMenu.itemToLabel(event.item);
             super.label = labelBase.replace(" ", "&nbsp;") + downArrowString
 
@@ -361,8 +358,9 @@ public class PopUpMenuButton extends PopUpButton
             /*itemRenderer = */menuEvent.itemRenderer = 
                 event.itemRenderer;
             dispatchEvent(menuEvent);
-            PopUpManager.removePopUp(popUp);
-            if (parent)
+            //@todo here could be possible need to check for 'closeOnActivity != false' or via implementation in PopUpButton
+            close(); //instead of 'PopUpManager.removePopUp(popUp)' ensures the showing/not showing state in the base component is maintained
+            if (parent && oldLabel != super.label)
                 (parent as IEventDispatcher).dispatchEvent(new Event("layoutNeeded"));
         }
     }
@@ -391,6 +389,7 @@ public class PopUpMenuButton extends PopUpButton
             }
         } else {
             if (popUpMenu) {
+                popUpMenu.removeEventListener(MenuEvent.ITEM_CLICK, menuChangeHandler);
                 close();
                 popUpMenu = null; //tbc
             }
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/ListItemRendererInitializer.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/ListItemRendererInitializer.as
index 642e72c..17448eb 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/ListItemRendererInitializer.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/ListItemRendererInitializer.as
@@ -34,6 +34,8 @@ package mx.controls.beads
     import org.apache.royale.core.UIBase;
     import org.apache.royale.html.beads.ListItemRendererInitializer;
     import mx.controls.treeClasses.TreeListData;
+
+	import mx.core.UIComponent;
     
 	/**
 	 *  The TreeItemRendererInitializer class initializes item renderers
@@ -74,7 +76,15 @@ package mx.controls.beads
 		{
             if (!dataProviderModel)
                 return;
-            
+
+			if (ir is UIComponent) {
+				COMPILE::JS{
+					//we are using a UIComponent as a renderer, but it is too late to use .isAbsolute = false
+					//so swap it out here:
+					ir.element.style.position = 'relative';
+				}
+			}
+
             super.initializeIndexedItemRenderer(ir, data, index);
             
 			if (ir is IOwnerViewItemRenderer)


[royale-asjs] 03/03: Merge branch 'develop' of https://github.com/apache/royale-asjs into develop

Posted by gr...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit e9040b9a03dc1e11829914dda74fa92b986ce6ab
Merge: 1f73fb6 6b94870
Author: greg-dove <gr...@gmail.com>
AuthorDate: Thu Jun 11 20:40:04 2020 +1200

    Merge branch 'develop' of https://github.com/apache/royale-asjs into develop

 .../SparkRoyale/src/main/royale/spark/components/CheckBox.as        | 6 ++++++
 1 file changed, 6 insertions(+)


[royale-asjs] 01/03: The index needs to be propagated as well here. PopUpMenuButton needs that.

Posted by gr...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 65f368b76f5c7d35b611ed3cd00fc45b6c317bc8
Author: greg-dove <gr...@gmail.com>
AuthorDate: Thu Jun 11 20:27:24 2020 +1200

    The index needs to be propagated as well here. PopUpMenuButton needs that.
---
 .../beads/controllers/CascadingMenuSelectionMouseController.as         | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/controllers/CascadingMenuSelectionMouseController.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/controllers/CascadingMenuSelectionMouseController.as
index 499446a..a04e611 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/controllers/CascadingMenuSelectionMouseController.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/controllers/CascadingMenuSelectionMouseController.as
@@ -75,7 +75,8 @@ package mx.controls.beads.controllers
 			{
 				label = data[menu.labelField];
 			}
-			menuEvent.label = label
+			menuEvent.label = label;
+			menuEvent.index = event.index;
 			findMenuDispatcher().dispatchEvent(menuEvent);
 		}