Skip to content

Commit ea9fee5

Browse files
committed
don't display tooltip until after expanded
1 parent 8621a0f commit ea9fee5

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

components/filter/filter.js

+14-8
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@ function addSpaceListener() {
4949
if (spaceListenerAdded) return;
5050
spaceListenerAdded = true;
5151
document.addEventListener('keydown', e => {
52-
if (e.keyCode !== 32) return;
52+
if (e.key !== ' ') return;
5353
spacePressed = true;
5454
});
5555
document.addEventListener('keyup', e => {
56-
if (e.keyCode !== 32) return;
56+
if (e.key !== ' ') return;
5757
spacePressed = false;
5858
});
5959
}
@@ -244,6 +244,7 @@ class Filter extends FocusMixin(LocalizeCoreElement(RtlMixin(LitElement))) {
244244
onSubscribe: this._updateActiveFiltersSubscriber.bind(this),
245245
updateSubscribers: this._updateActiveFiltersSubscribers.bind(this)
246246
});
247+
this._spacePressedDuringLastSelection = false;
247248
}
248249

249250
static get focusElementSelector() {
@@ -617,7 +618,7 @@ class Filter extends FocusMixin(LocalizeCoreElement(RtlMixin(LitElement))) {
617618
return html`
618619
<d2l-list-item
619620
id="${itemId}"
620-
@d2l-list-item-selected="${ifDefined(item.additionalContent ? this._handleListItemSelelcted : undefined)}"
621+
@d2l-list-item-selected="${item.additionalContent ? this._handleListItemSelected : undefined}"
621622
?selection-disabled="${item.disabled}"
622623
?hidden="${item.hidden}"
623624
key="${item.key}"
@@ -896,18 +897,23 @@ class Filter extends FocusMixin(LocalizeCoreElement(RtlMixin(LitElement))) {
896897
}
897898

898899
async _handleExpandCollapse(e) {
899-
const eventPromise = e.target.expanded ? e.detail.expandComplete : e.detail.collapseComplete;
900+
const expanded = e.target.expanded;
901+
const eventPromise = expanded ? e.detail.expandComplete : e.detail.collapseComplete;
900902
const parentListItem = e.target.closest('d2l-list-item');
901903
parentListItem.classList.add('expanding-content');
902904

903905
await eventPromise;
904906
parentListItem.classList.remove('expanding-content');
907+
908+
if (expanded && !hasDisplayedKeyboardTooltip && this._spacePressedDuringLastSelection) {
909+
await new Promise(resolve => requestAnimationFrame(resolve));
910+
this._displayKeyboardTooltip = true;
911+
hasDisplayedKeyboardTooltip = true;
912+
}
905913
}
906914

907-
_handleListItemSelelcted() {
908-
if (hasDisplayedKeyboardTooltip || !spacePressed) return;
909-
this._displayKeyboardTooltip = true;
910-
hasDisplayedKeyboardTooltip = true;
915+
_handleListItemSelected() {
916+
this._spacePressedDuringLastSelection = spacePressed;
911917
}
912918

913919
_handleSearch(e) {

0 commit comments

Comments
 (0)