[TIMOB-17843] Android: Cannot Programmatically Open List Picker
GitHub Issue | n/a |
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-11-19T03:17:52.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 4.0.0 |
Components | Android |
Labels | parity |
Reporter | Eduardo Gomez |
Assignee | Sunila |
Created | 2014-10-13T21:12:20.000+0000 |
Updated | 2015-07-24T02:03:38.000+0000 |
Description
Issue description
When the user clicks the (return/next) (ios/android) button on the keyboard after entering the password on iOS and clicking return the list picker is selected with #3. This is what we want to occur on Android as well. However on Android after entering the password and clicking next it select #3 in the list and then moves onto selecting the password field. We want the list picker to be open with #3 selected.
Steps to Reproduce:
Launch app.js on iOS
click on the password field.
enter data
click return
notice how the picker is selected and moved to #3
Launch the app on Android Tablet
click on the password field
enter data
click return
notice how the picker selected #3 and then moved onto the password field
EXPECTED:
The picker was opened with #3 selected so that they user can change it.
Devices under test
Galaxy Note 10.1 on 4.3
Xperia Play 4.0.4
Attachments
File | Date | Size |
app.js | 2014-10-13T21:12:20.000+0000 | 3536 |
Added code to open picker while selecting the row https://github.com/appcelerator/titanium_mobile/pull/6291
Verified with below Test Environment: 1. Mac OSX Yosemite 10.10 2. Appcelerator Studio, build: 4.0.0.201502051633 3. Titanium SDK, build: 4.0.0.v20150209124844 4. Titanium CLI, build: 3.6.0-dev 5. Alloy: 1.5.1 6. S Galaxy S5 with Android 4.4.2 With Android, the picker is opened with #3 selected so that they user can change it values. Closing this ticket as working as expected.
The added code in this JIRA should be reverted or made conditional. Opening the picker every time the picker.setSelectedRow is called works in this specific use case, but not most of the time. Most of the time we do not want to force the user to dismiss the picker when we programmatically set the picker. There are many more use case then the above one where we do not want to open the picker. Forcing open for all use case really does not make sense in terms of usability.