Autocomplete initial positioning
- Dominant language
- TypeScript
- Stars
- 25k
- Forks
- 6.8k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 91
Description
#### Bug, feature request, or proposal:
I have a project where the `autocomplete` dropdown does not properly position itself until it the input box that it is acting upon is unfocused and refocused. It initially extends past the bottom of the screen, choosing to initially position on the bottom of its input box.
Perhaps there could be a directive to force positioning of an `autocomplete` dropdown?
#### What is the expected behavior?
Expected behavior is for the `autocomplete` dropdown to recognize that it will be off-screen if it extends downward and instead position itself above the input box.
#### What is the current behavior?
In its current behavior, the `autocomplete` dropdown only calculates its position properly once its input box has been refocused. Switching tabs also causes the `autocomplete` dropdown to position properly.
#### What are the steps to reproduce?
The project in which this bug is occurring is already large and mature. I have, as of yet, been unable to reproduce this issue within a simple context.
#### What is the use-case or motivation for changing an existing behavior?
There may be cases where the code does not properly position the `autocomplete` dropdown. Adding a directive or other such mechanism for forcing positioning may prove useful.
#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
```
@angular/cli: 1.5.0
@angular/material: 2.0.0-beta.12
typescript: 2.3.3
OS: (Gentoo) Linux
Browsers: webkit and gecko
```
#### Is there anything else we should know?
I don't particularly expect great support since I am unable to provide reproducable steps, but thanks in advance anybody's time in addressing this matter.
Contributor guide
Research direction
No source file, test, or reproducible example is named. Start by building a minimal reproduction of the autocomplete opening near the bottom of the viewport, then trace the initial positioning path and compare it with refocus and tab-switch behavior. Done means the dropdown initially moves above the input when it would extend off-screen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100