-
Notifications
You must be signed in to change notification settings - Fork 3.4k
autocomplete: closes instantly when opened with touch #11778
Comments
On Chrome for Android there are some issues where you need to double click Cannot reproduce on iOS. |
On Chrome OS, I can reproduce this with |
Reproduced on macOS with Chrome as well in |
On macOS, many times when just tapping instead of doing a full click, Chrome doesn't fire a On Chrome OS using a touchscreen, tapping the screen often fires all of the same I tried having
I still need to
|
I can't figure out how or why, but it appears that PR #11743 introduced a regression on iOS with |
- open options pop-up on `touchstart` - since a `click` is often not sent on touch devices - this usually happens when the start/end point are not the same - use `touchend` on the document to close the options panel on iOS - iOS mostly does not send `click` events for taps on the backdrop - call `doBlur()`` since iOS doesn't blur in this case - combine some jQuery event handler calls - combine duplicate `onMouseup()` and `focusInputElement()` functions - don't let touchstart or touchend events bubble out of the component - focus the input for `mousedown` events - this covers an edge case on touch pads where a `click` isn't sent - move `isIos` and `isAndroid` logic out of gestures into `$mdUtil` - add and correct JSDoc Fixes #11778. Relates to #11625. Relates to #11757. Relates to #11758.
Hi @Splaktar What about the change to the default value of Marek |
@marosoft thank you for taking a look. That's one change in that PR that I hadn't really debugged yet. Unfortunately, I just checked it out and going back to |
- open options pop-up on `touchstart` - since a `click` is often not sent on touch devices - this usually happens when the start/end point are not the same - use `touchend` on the document to close the options panel on iOS - iOS mostly does not send `click` events for taps on the backdrop - call `doBlur()`` since iOS doesn't blur in this case - combine some jQuery event handler calls - combine duplicate `onMouseup()` and `focusInputElement()` functions - don't let touchstart or touchend events bubble out of the component - focus the input for `mousedown` events - this covers an edge case on touch pads where a `click` isn't sent - move `isIos` and `isAndroid` logic out of gestures into `$mdUtil` - add and correct JSDoc Fixes #11778. Relates to #11625. Relates to #11757. Relates to #11758.
…11782) - open options pop-up on `touchstart` - since a `click` is often not sent on touch devices - this usually happens when the start/end point are not the same - use `touchend` on the document to close the options panel on iOS - iOS mostly does not send `click` events for taps on the backdrop - call `doBlur()`` since iOS doesn't blur in this case - combine some jQuery event handler calls - combine duplicate `onMouseup()` and `focusInputElement()` functions - don't let touchstart or touchend events bubble out of the component - focus the input for `mousedown` events - this covers an edge case on touch pads where a `click` isn't sent - move `isIos` and `isAndroid` logic out of gestures into `$mdUtil` - add and correct JSDoc Fixes #11778. Relates to #11625. Relates to #11757. Relates to #11758.
The mdAutocomplete closes instantly when it's opened with a touch (tap) instead of a mouse. I can reproduce this on a Chromebox by either tapping (but not hard-clicking) the touchpad, or by tapping the touchscreen. It's also been reported that this occurs with a MacBook touchpad (again for the soft tap and not the hard click).
You can reproduce it directly on the demo:
https://material.angularjs.org/latest/demo/autocomplete
The text was updated successfully, but these errors were encountered: