Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-24053] Android: passwordMask property cannot be changed after rendering (Regression)

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2016-10-24T19:25:56.000+0000
Affected Version/sRelease 5.4.0, Release 5.3.0, Release 5.5.0, Release 5.5.1
Fix Version/sRelease 6.0.0
ComponentsAndroid
Labelsandroid, automated, passwordMask, regression, textfield
ReporterAdam Armstrong
AssigneeGary Mathews
Created2016-10-07T18:42:27.000+0000
Updated2017-10-26T01:58:12.000+0000

Description

When using the following JS and XML on 5.2.2GA, I am successfully able to toggle the passwordMask for both iOS and Android to show/hide the text in the TextField. When I simply change my sdk to 5.5.1GA, iOS continues to work, *but Android no longer works*. The "mask" never toggles. It also appears it doesn't work for Android in 5.4.0GA either. index.xml ======== index.js ======== isPasswordVisible = false; function togglePasswordVisible(){ if (isPasswordVisible){ $.password.passwordMask = true; isPasswordVisible = false; } else { $.password.passwordMask = false; isPasswordVisible = true; } } $.index.open();

Comments

  1. Adam Armstrong 2016-10-07

    I think I created this in the wrong "project"
  2. Sharif AbuDarda 2016-10-19

    Aru you still having the issue? Can you check in SDK 6.0.0. Let us know. Thanks.
  3. Adam Armstrong 2016-10-19

    I'm in the middle of Production Releases on multiple apps - I can't afford to jump into BETA right now. Don't you have accessibility to 6.x Beta in a lab to verify its fixed?
  4. Adam Armstrong 2016-10-20

    ok, I pin-pointed the issue here. The issue is isolated to a TextField and when using the property editable="false". If I use a *Label* on 5.5.1GA, the mask "toggle" works fine for both iOS and Android. If I use a *TextField* on 5.5.1GA, and set the property editable="true", then the "toggle" works on both iOS and Android. But obviously this makes it difficult to click the field as the OS wants to highlight the text - so clicking becomes difficult.
       <TextField value="show/hide" color="#000000" id="passwordVisible" editable="true" width="49%"  onClick="togglePasswordVisible" />
       
    But if I use a *TextField* on 5.5.1GA, and set the property editable="false", then the "toggle" only works on iOS. Does NOT work on Android.
       <TextField value="show/hide" color="#000000" id="passwordVisible" editable="false" width="49%"  onClick="togglePasswordVisible" />
       
    So, the work around for now is to use a Label for a cross-platform solution. But I still think this needs to be corrected in a future release to maintain complete functionality.
  5. Gary Mathews 2016-10-21

    https://github.com/appcelerator/titanium_mobile/pull/8530
  6. Christopher Williams 2016-10-24

    Merged to master (6.1.0) and cherry-picked to 6_0_X. Not sure if that means it'll be in 6.0.0 GA, or 6.0.1 (if/when that gets released)?
  7. Hans Knöchel 2016-10-25

    [~cwilliams] Thx. Current 6_0_X will go into 6.0.0.RC and therefore 6.0.0.GA as well. :-)
  8. Lokesh Choudhary 2016-10-25

    Verified the fix. PasswordMask can now be changed successfully. Closing. Appc Studio : 4.8.0.201610171310 SDK Version : 6.0.0.v20161024184632 Mac OS Version : 10.11.6 Xcode Version : Xcode 8.0 Build version 8A218a Appc CLI AND Appc NPM : {"NPM":"4.2.8-9","CLI":"6.0.0-65"} Ti CLI : 5.0.10 Alloy : 1.9.3 Node : v4.6.0 Nexus 5 : 6.0.1

JSON Source