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(); this.close();
break; break;
case Key.ARROW_DOWN: case Key.ARROW_DOWN:
if (this.state.expanded) {
this.setState({ this.setState({
highlightedOption: this.nextOption(this.state.highlightedOption), highlightedOption: this.nextOption(this.state.highlightedOption),
}); });
} else {
this.setState({ expanded: true });
}
break; break;
case Key.ARROW_UP: case Key.ARROW_UP:
if (this.state.expanded) {
this.setState({ this.setState({
highlightedOption: this.prevOption(this.state.highlightedOption), highlightedOption: this.prevOption(this.state.highlightedOption),
}); });
} else {
this.setState({ expanded: true });
}
break; break;
default: default:
handled = false; handled = false;