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

carlosrovira pushed a commit to branch feature/jewel-imagebutton-changes
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit 5e6187ea4c6239485ea51be8bcd531a6d8a25963
Author: Carlos Rovira <[email protected]>
AuthorDate: Sun Jul 12 17:45:38 2020 +0200

    jewel-imagebutton: changes to make it button with nested img instead of 
input type image - ErrorImage is not working -check TDJ example
---
 .../royale/org/apache/royale/jewel/ImageButton.as  | 29 +++++++++++-----------
 1 file changed, 14 insertions(+), 15 deletions(-)

diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ImageButton.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ImageButton.as
index c8d8ff4..1527fa1 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ImageButton.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ImageButton.as
@@ -63,8 +63,9 @@ package org.apache.royale.jewel
                COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-                       addElementToWrapper(this, 'input');
-            element.setAttribute('type', 'image');
+                       addElementToWrapper(this,'button');
+            element.setAttribute('type', 'button');
+
             return element;
         }
 
@@ -87,22 +88,14 @@ package org.apache.royale.jewel
             ImageModel(model).url = url;
             COMPILE::SWF
             {
-                if (!style)
-                    style = new SimpleCSSStyles();
-                style.backgroundImage = url;
+            if (!style)
+                style = new SimpleCSSStyles();
+            style.backgroundImage = url;
             }
 
             COMPILE::JS
             {
-                if(!_imageElement)
-                {
-                    (element as HTMLInputElement).src = url;
-                    _imageElement = (element as HTMLInputElement);
-                }
-                if (_imageElement && url)
-                {
-                    (_imageElement as HTMLInputElement).src = url;
-                }
+            (imageElement as HTMLImageElement).src = url;
             }
 
                        dispatchEvent(new Event("srcChanged"));
@@ -119,11 +112,17 @@ package org.apache.royale.jewel
          *  @productversion Royale 0.9.8
          *  @royaleignorecoercion 
org.apache.royale.core.IImageButton#imageElement
          *  @royaleignorecoercion Element
+         *  @royaleignorecoercion HTMLImageElement
          */
         COMPILE::JS
                public function get imageElement():Element
                {
-                       return _imageElement;
+                       if(!_imageElement)
+            {
+                _imageElement = document.createElement("img") as 
HTMLImageElement;
+                element.appendChild(_imageElement);
+            }                
+            return _imageElement;
                }
        }
 }

Reply via email to