{ "id": "61980", "key": "TIMOB-1348", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "11240", "name": "Release 1.6.0 M07", "archived": true, "released": true, "releaseDate": "2011-01-31" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T01:55:56.000+0000", "created": "2011-04-15T02:50:03.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "defect", "release-1.6.0", "textfield" ], "versions": [], "issuelinks": [], "assignee": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T01:55:56.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "{html}
textField on android (TiUIText) needs revisiting - currently the\nkeyboard type (and some states) set the inputType in\nhandleKeyboardType - which covers most use cases and is a reliable\nway of ensuring that you get a consistent text field and the\nassociated keyboard (& passwordMask).
\nHowever if you build the textField by setting properties or want\na complex mix of properties; ie you'd like auto-completion on a\npasswordField - then you're likely to have issues.
\nWhen setting individual properties - you'll need to use the\nrawInputType flags and to query the textView for it's current\nproperties. Then either use one of the Android input masks or work\nout which attributes are mutually exclusive.
Additional test was that password mask could not be set with the\nphone keypad.
(from [ed4d837742bd613b434d83507e7133a4277b9629])\n[#1348 state:fixed-in-qa] [#1730\nstate:fixed-in-qa] Rewrote the keyboard setup routine to take all\nmodifiers and selectors into consideration when initializing and\nchanging. Add a custom key handler to allow numbers and a set of\npunctuation chars, when the keyboard was numbers_and_punctuation\n\nhttp://github.com/appcelerator/titanium_mobile/commit/ed4d837742bd6...
Titanium.UI.KEYBOARD_URL + password mask resulted in no mask or\nurl keyboard.
Test case app.js for QA (also see KS Controls - Text field -\nKeyboard test, though that one does not have the URL-with-password\nmask test since it's kinda illogical).
\nThis test is also in Bugtests now.
\n\nTitanium.UI.setBackgroundColor('#000');\nvar win = Titanium.UI.createWindow({ \n title:'Test',\n backgroundColor:'#000',\n exitOnClose: true\n});\nwin.add(\n Ti.UI.createTextField({\n left: 0, right: 0, height: 40, top: 0,\n keyboardType: Ti.UI.KEYBOARD_URL,\n hintText: 'url (shld have slash & \"go\")'\n}));\nwin.add(\n Ti.UI.createTextField({\n left: 0, right: 0, height: 40, top: 50,\n keyboardType: Ti.UI.KEYBOARD_EMAIL,\n hintText: 'email (shld have @ sign)'\n}));\nwin.add(\n Ti.UI.createTextField({\n left: 0, right: 0, height: 40, top: 100,\n keyboardType: Ti.UI.KEYBOARD_NUMBER_PAD,\n hintText: 'number pad'\n}));\nwin.add(\n Ti.UI.createTextField({\n left: 0, right: 0, height: 40, top: 150,\n keyboardType: Ti.UI.KEYBOARD_PHONE_PAD,\n hintText: 'phone pad'\n}));\nwin.add(\n Ti.UI.createTextField({\n left: 0, right: 0, height: 40, top: 200,\n keyboardType: Ti.UI.KEYBOARD_URL,\n passwordMask: true,\n hintText: 'url with pwd mask'\n}));\n\nwin.add(\n Ti.UI.createLabel({\n left: 5, right: 5, bottom: 5, height: 'auto',\n text: \"Make sure the keyboard that appears for each field has the characteristics described in the field's hint text.\",\n color: 'white'\n}));\n\nwin.open();
\n
(from [ce71ef899c89d78c8a0c4ebfd5946cc86469fe7a])\n[#1348 state:fixed-in-qa] Use\nsetTransformationMethod for setting password masks, so as to avoid\nTYPE_TEXT_VARIATION_xxx mixtures \nhttps://github.com/appcelerator/titanium_mobile/commit/ce71ef899c89...
verified emulator 2.2