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

commit 00bbbcae9b249fde65d43637b412a4a99c8a0870
Author: DESKTOP-RH4S838\Yishay <[email protected]>
AuthorDate: Tue Jan 2 10:59:12 2018 +0200

    MaskBead now changes svg element into a mask definition instead of
    attempting to draw mask using path.
---
 .../main/royale/org/apache/royale/svg/MaskBead.as  | 26 +++++++++++++++++-----
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git 
a/frameworks/projects/Graphics/src/main/royale/org/apache/royale/svg/MaskBead.as
 
b/frameworks/projects/Graphics/src/main/royale/org/apache/royale/svg/MaskBead.as
index 8c8bc96..7eb2ac5 100644
--- 
a/frameworks/projects/Graphics/src/main/royale/org/apache/royale/svg/MaskBead.as
+++ 
b/frameworks/projects/Graphics/src/main/royale/org/apache/royale/svg/MaskBead.as
@@ -71,12 +71,12 @@ package org.apache.royale.svg
                        {
                                _strand = value;
                                var currentPositioner:Element = (value as 
IRenderedObject).element as Element;
-                               var myPositioner:Element = 
createChildNode(currentPositioner, "defs") as Element;
-                               myPositioner = createChildNode(myPositioner, 
"mask") as Element;
-                               maskElementId = myPositioner.id = "myMask" + 
UIDUtil.createUID();
-                               (value as IUIBase).positioner = myPositioner as 
WrappedHTMLElement;
+                               var newPositioner:Element = 
createChildNode(currentPositioner, "defs") as Element;
+                               newPositioner = createChildNode(newPositioner, 
"mask") as Element;
+                               maskElementId = newPositioner.id = "myMask" + 
UIDUtil.createUID();
+                               (value as IUIBase).positioner = newPositioner 
as WrappedHTMLElement;
                                // this helps retains width and height
-                               myPositioner.setAttribute('style', 
currentPositioner.getAttribute('style'));
+                               newPositioner.setAttribute('style', 
currentPositioner.getAttribute('style'));
                                // move children to new positioner
                                var childNodes:Object = 
currentPositioner.childNodes;
                                for (var i:int = 0; i < childNodes.length; i++)
@@ -84,7 +84,7 @@ package org.apache.royale.svg
                                        var childNode:Element = childNodes[i] 
as Element;
                                        if (childNode.tagName != "defs")
                                        {
-                                               
myPositioner.appendChild(childNode);
+                                               
newPositioner.appendChild(childNode);
                                        }
                                }
                        }
@@ -104,6 +104,20 @@ package org.apache.royale.svg
                        return _strand as IRenderedObject;
                }
 
+               COMPILE::SWF 
+               public function 
unmaskElement(renderedObject:IRenderedObject):void
+               {
+                       renderedObject.$displayObject.mask = null;
+               }
+
+               COMPILE::SWF 
+               public function maskElement(renderedObject:IRenderedObject):void
+               {
+                       renderedObject.$displayObject.x = host.$displayObject.x;
+                       renderedObject.$displayObject.y = host.$displayObject.y;
+                       renderedObject.$displayObject.mask = 
host.$displayObject;
+               }
+
                COMPILE::JS 
                public function 
unmaskElement(renderedObject:IRenderedObject):void
                {

-- 
To stop receiving notification emails like this one, please contact
"[email protected]" <[email protected]>.

Reply via email to