Merge pull request #728 from MathieuPuech/fix/724-select-rich-preventDefault
fix(select-rich): prevent scrolling when focused
This commit is contained in:
commit
641ec01681
1 changed files with 24 additions and 0 deletions
|
|
@ -69,6 +69,30 @@ export class LionSelectInvoker extends LionButton {
|
||||||
this.type = 'button';
|
this.type = 'button';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
connectedCallback() {
|
||||||
|
if (super.connectedCallback) {
|
||||||
|
super.connectedCallback();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleKeydown = event => {
|
||||||
|
switch (event.key) {
|
||||||
|
case 'ArrowDown':
|
||||||
|
case 'ArrowUp':
|
||||||
|
event.preventDefault();
|
||||||
|
/* no default */
|
||||||
|
}
|
||||||
|
};
|
||||||
|
this.handleKeydown = handleKeydown;
|
||||||
|
this.addEventListener('keydown', this.handleKeydown);
|
||||||
|
}
|
||||||
|
|
||||||
|
disconnectedCallback() {
|
||||||
|
if (super.disconnectedCallback) {
|
||||||
|
super.disconnectedCallback();
|
||||||
|
}
|
||||||
|
this.removeEventListener('keydown', this.handleKeydown);
|
||||||
|
}
|
||||||
|
|
||||||
_contentTemplate() {
|
_contentTemplate() {
|
||||||
if (this.selectedElement) {
|
if (this.selectedElement) {
|
||||||
const labelNodes = Array.from(this.selectedElement.querySelectorAll('*'));
|
const labelNodes = Array.from(this.selectedElement.querySelectorAll('*'));
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue