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

carlosrovira 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 800b5b5  Some improvements in Jewel Alert in closing handling
800b5b5 is described below

commit 800b5b5ad0fbd2d2013a9a95e4298e6ba3fae6cd
Author: Carlos Rovira <[email protected]>
AuthorDate: Mon Feb 11 19:24:31 2019 +0100

    Some improvements in Jewel Alert in closing handling
---
 .../src/main/royale/org/apache/royale/jewel/Alert.as  | 19 ++++++++-----------
 .../royale/jewel/beads/controllers/AlertController.as | 14 ++++++++------
 .../org/apache/royale/jewel/beads/views/AlertView.as  |  6 ++++--
 3 files changed, 20 insertions(+), 19 deletions(-)

diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
index 74ebed3..43dce10 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
@@ -18,15 +18,15 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.jewel.Group;
-       import org.apache.royale.core.IAlertModel;
-       import org.apache.royale.core.IPopUp;
-
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
-               import org.apache.royale.html.util.addElementToWrapper;
+        import org.apache.royale.html.util.addElementToWrapper;
     }
+    import org.apache.royale.core.IAlertModel;
+    import org.apache.royale.core.IPopUp;
+    import org.apache.royale.events.CloseEvent;
+    import org.apache.royale.jewel.Group;
 
     [Event(name="close", type="org.apache.royale.events.CloseEvent")]
        /**
@@ -319,13 +319,10 @@ package org.apache.royale.jewel
                 *  @playerversion AIR 2.6
                 *  @productversion Royale 0.9.4
                 */
-               public function close():void
+               public function close(buttonFlag:uint = 0x000004):void
                {
-                       COMPILE::JS
-                       {
-                               document.body.classList.remove("viewport");
-                               dialog.close();
-                       }
+                       var closeEvent:CloseEvent = new CloseEvent("close", 
false, false, buttonFlag);
+                       dispatchEvent(closeEvent);
                }
        }
 }
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
index 0f4d1de..db0b2eb 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
@@ -86,17 +86,19 @@ package org.apache.royale.jewel.beads.controllers
                 */
         private function alertCloseHandler(event:CloseEvent):void
         {
+                       var host:UIBase = strand as UIBase;
+               
                        COMPILE::SWF
             {
-                
DisplayObject(_strand).parent.removeChild(DisplayObject(_strand));
+            DisplayObject(host).parent.removeChild(DisplayObject(_strand));
             }
-
+                       
                        COMPILE::JS
                        {
-                               document.body.classList.remove("viewport");
-                               var host:UIBase = strand as UIBase;
-                var htmlElement:HTMLElement = host.element as HTMLElement;
-                htmlElement.parentElement.removeChild(host.element);
+                       document.body.classList.remove("viewport");
+                       var dialog:HTMLDialogElement = host.element as 
HTMLDialogElement;
+                       dialog.close();
+                       dialog.parentElement.removeChild(dialog);
                        }
         }
        }
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
index 2b9b0bc..3dd2852 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
@@ -28,6 +28,10 @@ package org.apache.royale.jewel.beads.views
         import org.apache.royale.html.beads.IBorderBead;
         import org.apache.royale.utils.loadBeadFromValuesManager;
        }
+       COMPILE::JS
+       {
+       import org.apache.royale.jewel.ControlBar;      
+       }
     import org.apache.royale.core.IAlertModel;
     import org.apache.royale.core.IBeadLayout;
     import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
@@ -43,14 +47,12 @@ package org.apache.royale.jewel.beads.views
     import org.apache.royale.html.beads.GroupView;
     import org.apache.royale.jewel.Alert;
     import org.apache.royale.jewel.Button;
-    import org.apache.royale.jewel.ControlBar;
     import org.apache.royale.jewel.Group;
     import org.apache.royale.jewel.Label;
     import org.apache.royale.jewel.TitleBar;
     import org.apache.royale.jewel.VGroup;
     import org.apache.royale.jewel.beads.layouts.HorizontalLayout;
     import org.apache.royale.jewel.beads.views.AlertTitleBarView;
-
        
        /**
         *  The AlertView class creates the visual elements of the 
org.apache.royale.jewel.Alert

Reply via email to