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

yishayw 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 95a88c0  Fix bug in emulation of menus being shown only once
95a88c0 is described below

commit 95a88c0740add901c6e8a1f98fa89053c023a930
Author: Yishay Weiss <[email protected]>
AuthorDate: Mon Mar 14 16:49:47 2022 +0200

    Fix bug in emulation of menus being shown only once
---
 .../controllers/CascadingMenuSelectionMouseController.as      | 11 +++++++++++
 1 file changed, 11 insertions(+)

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 a04e611..74a0c7d 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
@@ -28,6 +28,7 @@ package mx.controls.beads.controllers
        import org.apache.royale.events.ItemClickedEvent;
        
        import mx.events.MenuEvent;
+       import org.apache.royale.core.UIBase;
 
 /**
  *  The CascadingMenuSelectionMouseController is the default controller for 
emulation cascading menu
@@ -59,6 +60,16 @@ package mx.controls.beads.controllers
                        return (node as XML).children().length() > 0;
                }
 
+               override protected function removeMenu(menu:UIBase):void
+               {
+                       super.removeMenu(menu);
+                       // this fixes issues of menu not being re-added after 
removal in mx control
+                       if (!menu.parent && menu.visible)
+                       {
+                               menu.visible = false;
+                       }
+               }
+
                override protected function 
selectedHandler(event:ItemClickedEvent):void
                {
                        super.selectedHandler(event);

Reply via email to