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 ca6ff63  jewel-textprompt: some cases was not working
ca6ff63 is described below

commit ca6ff63e4113322a8226da06cabf265a034c8dc7
Author: Carlos Rovira <[email protected]>
AuthorDate: Wed Mar 4 23:19:58 2020 +0100

    jewel-textprompt: some cases was not working
---
 .../beads/controls/combobox/ComboBoxTextPrompt.as  |  3 +-
 .../controls/datefield/DateFieldTextPrompt.as      |  3 +-
 .../jewel/beads/controls/textinput/TextPrompt.as   | 32 +++++++++-------------
 3 files changed, 17 insertions(+), 21 deletions(-)

diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/combobox/ComboBoxTextPrompt.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/combobox/ComboBoxTextPrompt.as
index c6099a1..7b27e56 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/combobox/ComboBoxTextPrompt.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/combobox/ComboBoxTextPrompt.as
@@ -22,6 +22,7 @@ package org.apache.royale.jewel.beads.controls.combobox
        {
                import flash.utils.setTimeout;
     }
+       import org.apache.royale.core.UIBase;
        import org.apache.royale.jewel.beads.controls.combobox.IComboBoxView;
        import org.apache.royale.jewel.beads.controls.textinput.TextPrompt;
        
@@ -60,7 +61,7 @@ package org.apache.royale.jewel.beads.controls.combobox
                COMPILE::JS
                override protected function updatePromptText():void
                {
-                       (host.view as 
IComboBoxView).textinput.input.placeholder = prompt;
+                       ((_strand as UIBase).view as 
IComboBoxView).textinput.input.placeholder = prompt;
                }
        }
 }
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as
index 476d512..229d413 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as
@@ -22,6 +22,7 @@ package org.apache.royale.jewel.beads.controls.datefield
        {
                import flash.utils.setTimeout;
     }
+       import org.apache.royale.core.UIBase;
        import org.apache.royale.jewel.beads.controls.textinput.TextPrompt;
        import org.apache.royale.jewel.beads.views.DateFieldView;
        
@@ -60,7 +61,7 @@ package org.apache.royale.jewel.beads.controls.datefield
                COMPILE::JS
                override protected function updatePromptText():void
                {
-                       (host.view as 
DateFieldView).textInput.input.placeholder = prompt;
+                       ((_strand as UIBase).view as 
DateFieldView).textInput.input.placeholder = prompt;
                }
        }
 }
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPrompt.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPrompt.as
index 8d77a26..03ecfaa 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPrompt.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPrompt.as
@@ -23,13 +23,12 @@ package org.apache.royale.jewel.beads.controls.textinput
                import flash.text.TextFieldType;
 
                import org.apache.royale.core.CSSTextField;
-               import org.apache.royale.events.IEventDispatcher;
        }
-       
        import org.apache.royale.core.Bead;
        import org.apache.royale.core.IStrand;
-       import org.apache.royale.core.UIBase;
        import org.apache.royale.events.Event;
+       import org.apache.royale.events.IEventDispatcher;
+       import org.apache.royale.jewel.supportClasses.textinput.TextInputBase;
        
        /**
         *  The TextPrompt class is a specialty bead that can be used with
@@ -74,19 +73,17 @@ package org.apache.royale.jewel.beads.controls.textinput
                        if(value != _prompt)
                        {
                                _prompt = value;
-                               if(host)
+                               if(_strand)
                                {
                                        COMPILE::JS
                                        {
                                        updatePromptText();
                                        }
-                                       host.dispatchEvent(new 
Event("promptChanged"));
+                                       
IEventDispatcher(_strand).dispatchEvent(new Event("promptChanged"));
                                }       
                        }
                }
-               
-               protected var host:UIBase;
-               
+
                /**
                 *  @copy org.apache.royale.core.IBead#strand
                 *  
@@ -100,9 +97,10 @@ package org.apache.royale.jewel.beads.controls.textinput
                override public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       host = _strand as UIBase;
+                       COMPILE::JS
+                       {
                        listenOnStrand("beadsAdded", beadsAddedHandler);
-                       
+                       }
                        COMPILE::SWF
                        {
                                // listen for changes in text to hide or show 
the prompt
@@ -127,18 +125,16 @@ package org.apache.royale.jewel.beads.controls.textinput
                        }
                }
 
+               COMPILE::JS
                private function beadsAddedHandler(event:Event):void
                {
-                       host.removeEventListener("beadsAdded", 
beadsAddedHandler);
-                       COMPILE::JS
-                       {
+                       
IEventDispatcher(_strand).removeEventListener("beadsAdded", beadsAddedHandler);
                        updatePromptText();
-                       }
                }
 
-
                /**
-         *  Update the internal element placeholder with the prompt property
+         *  Update the internal element placeholder with the prompt property.
+                *  This method is intended to be overriden in subclasses
          *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
@@ -148,9 +144,7 @@ package org.apache.royale.jewel.beads.controls.textinput
                COMPILE::JS
                protected function updatePromptText():void
                {
-                       var e:HTMLInputElement = host.element as 
HTMLInputElement;
-                       if(e)
-                               e.placeholder = prompt;
+                       (_strand as TextInputBase).input.placeholder = prompt;
                }
                
                COMPILE::SWF

Reply via email to