When using AutoComplete on Mobile devices, the onscreen keyboard pops up, and will mask the drop down list from the AutoComplete component. Yes, the Height of the dropdown list is controllable (px, em, etc.), but this is problematic with varying display sizes. For example, I was able to show a list of 6 lines on my phone, but when I demoed the App to the Chief Development Officer, his phone was older, smaller, and when the keyboard popped up, only 4 lines were visible! So embarrassing.
What I want to propose is to extend the AutoComplete component with a new Control called PopUpLines, where the MAX number of lines that can be displayed is set. In my example, I would set this value to 4 to make sure it works on the CDO's phone. However, the AutoComplete control would need to know what the screen size is, calculate how big a line is, and how many lines can be displayed without the on-screen keyboard masking the list. It would then display from 1 to PopULines worth of lines in the drop down box. This would insure that a on-screen keyboard never masks the AutoComplete list, destroying UI functionality.
When typing in the AutoComplete component, it defaults to the last visible line in the drop down list, if the item is greater than the window size. On mobile devices, this has a negative effect that the on-screen keyboard will mask the typed in entry if the list is too long. If the height of the dropdown list is accurate, it is not masked, but it is still at the bottom of the list. If you type a query into Google, the highlight item as at the top of the list, not the bottom.
1) I propose to change the default functionality of AutoComplete to display the closest match at the top of the dropdown box, not at the bottom.
2) I propose to add a new new control DefaultDisplayPosition=[First|Middle|Last] to give developers control over the UI experience.
To be clearer, you have a list that of X items. The AutoComplete window can display Y items. X can be >, < or = to Y. If X[selected] is < Y, it will be highlighted anywhere between Y[First] through Y[Last]. However, if it is >= Y[Last], then the highlighted selection is always the last item in the dropdown display. There should be an option to set the highlighted item to Y[First], Y[Middle], or Y[Last], maybe even Y[N] (not so sure about that). Again with all kinds of different mobile screen sizes, with the current default being Y[last], it can easily be hidden by the on screen keyboard.