flex-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maurice Amsellem (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (FLEX-29024) TextInput component ignores autoCapitalize, autoCorrect, and softKeyboardType properties when using TextInputSkin skin
Date Thu, 14 Nov 2013 12:45:24 GMT

    [ https://issues.apache.org/jira/browse/FLEX-29024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13822370#comment-13822370
] 

Maurice Amsellem edited comment on FLEX-29024 at 11/14/13 12:44 PM:
--------------------------------------------------------------------

I changed the ticket title to reflect the real issue.  
I could make more tests on an iPad that confirm my assumptions and what is described in Adobe
links above: 
It's not about subclassing the skin, but rather on the base skins capabilities themselves.

TextInput can be used on mobile with two possible skins, that both have pros and cons. You
chose the one that better fits your requirements, but none are perfect fit.

*a) StageTextInputSkin:*
it's a wrapper on *StylableStageText* and *StageText* (native OS text field), and allows fine
control on the native soft keyboard capabilities:  autoCapitalize, autoCorrect, softKeyboardType,
but cannot be used on Forms that scrolls and does not support embedded or complex styled fonts.
(however, it behaves correctly when changing the orientation of the screen, tested by me).
This is the default and preferred skin

*b) TextInputSkin*
This is purely Flex component, using *StyleableTextField* (subclass of flash.text.TextField)
as the inner input object. It's part of the DisplayList, so allows all Flex behavior (Scrolling,
styling, embedded fonts).
However, it does not allow for fine control of the soft keyboard caps.  autoCaps, autoCorrect
and softKeyboardType are ignored and use default values.

Now, you know the limitations of each option, so chose the one that fits your #1 requirements,
but you can't get scrolling and keyboard=number at the same time.

*Important Note*: The key to this behavior is the innner classes ( flash.text.StageText and
flash.text.TextField) which both belong to the Flash Player or AIR player.
So this is definitely an *Adobe* issue, and not a Flex issue, sorry.






was (Author: mamsellem):
I changed the ticket title to reflect the real issue.  
I could make more tests on an iPad that confirm my assumptions and what is described in Adobe
links above: 
It's not about subclassing the skin, but rather on the base skin capabilities themselves.
TextInput can be used on mobile with two possible skins, that both have pros and cons. You
chose the one that better fits your requirements, but none are perfect fit.

*a) StageTextInputSkin:*
it's a wrapper on *StylableStageText* and *StageText* (native OS text field), and allows fine
control on the native soft keyboard capabilities:  autoCapitalize, autoCorrect, softKeyboardType,
but cannot be used on Forms that scrolls and does not support embedded or complex styled fonts.
(however, it behaves correctly when changing the orientation of the screen, tested by me).
This is the default and preferred skin

*b) TextInputSkin*
This is purely Flex component, using *StyleableTextField* (subclass of flash.text.TextField)
as the inner input object. It's part of the DisplayList, so allows all Flex behavior (Scrolling,
styling, embedded fonts).
However, it does not allow for fine control of the soft keyboard caps.  autoCaps, autoCorrect
and softKeyboardType are ignored and use default values.

Now, you know the limitations of each option, so chose the one that fits your #1 requirements,
but you can't get scrolling and keyboard=number at the same time.

*Important Note*: The key to this behavior is the innner classes ( flash.text.StageText and
flash.text.TextField) which both belong to the Flash Player or AIR player.
So this is definitely an *Adobe* issue, and not a Flex issue, sorry.





> TextInput component ignores autoCapitalize, autoCorrect, and softKeyboardType properties
when using TextInputSkin skin
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: FLEX-29024
>                 URL: https://issues.apache.org/jira/browse/FLEX-29024
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Spark: TextInput
>    Affects Versions: Adobe Flex SDK 4.6 (Release)
>         Environment: Affected OS(s): All OS Platforms
> Affected OS(s): All OS Platforms
> Language Found: English
>            Reporter: Adobe JIRA
>            Assignee: Maurice Amsellem
>
> Steps to reproduce:
> 1. add a textinput in a flex mobile project then do one or more of the following:
> 2. set the autoCapitalize property to "none"
> 3. set the autoCorrect property to "false"
> 4. set the softKeyboard property to "number"
> 5. create a custom skin and set the skin either in a css file or by setting the skin
property of the component.  (note:  I have tried just making a skin as simple as extending
the TextInputSkin with nothing else but calling the super() method, and I have tried coping
the actual TextInputSkin myself and setting the skin to that file and the functionality will
not work) 
>  
>  Actual Results:  Text input will still use autocorrect, auto capitalize and only show
the regular keyboard.  Removing the skin results in the functionality working properly.
>  
>  
>  Expected Results:  Text input with custom skin should not allow auto correcting or auto
capitalization of text being typed, correct type of keyboard should appear as well.
>  
>  
>  Workaround (if any): none



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message