Dropdown follow wai-aria practices for expanding on arrow keys (#7277)

This commit is contained in:
Michael Telatynski 2021-12-06 09:25:44 +00:00 committed by GitHub
parent ca6feaad89
commit 7dfdb06627
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -222,14 +222,22 @@ export default class Dropdown extends React.Component<IProps, IState> {
this.close();
break;
case Key.ARROW_DOWN:
this.setState({
highlightedOption: this.nextOption(this.state.highlightedOption),
});
if (this.state.expanded) {
this.setState({
highlightedOption: this.nextOption(this.state.highlightedOption),
});
} else {
this.setState({ expanded: true });
}
break;
case Key.ARROW_UP:
this.setState({
highlightedOption: this.prevOption(this.state.highlightedOption),
});
if (this.state.expanded) {
this.setState({
highlightedOption: this.prevOption(this.state.highlightedOption),
});
} else {
this.setState({ expanded: true });
}
break;
default:
handled = false;