Skip to content

Commit

Permalink
ELEMENTS-1697: update tabindex & lastindex in nuxeo-data-grid
Browse files Browse the repository at this point in the history
ELEMENTS-1697: update tabindex & lastindex in nuxeo-data-grid
  • Loading branch information
rakeshkumar1019 committed Dec 13, 2023
1 parent fd1cc3f commit 631356a
Showing 1 changed file with 27 additions and 1 deletion.
28 changes: 27 additions & 1 deletion ui/nuxeo-data-grid/nuxeo-data-grid.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,16 +218,42 @@ import { PageProviderDisplayBehavior } from '../nuxeo-page-provider-display-beha
type: Boolean,
value: false,
},

_lastIndex: {
type: Number,
value: 0,
},

_lastIndexValue: {
type: Number,
value: 0,
},
};
}

static get observers() {
return ['_fetchMissingItems(loading)'];
return ['_fetchMissingItems(loading)', '_lastIndexChanged(lastIndex)'];
}

ready() {
super.ready();
this.addEventListener('iron-resize', this._fetchMissingItems);
this.addEventListener('keydown', this._handleKeyDown);
}

_handleKeyDown(event) {
if (event.key === 'Tab') {
if (
this.$.list.lastVisibleIndex === this._lastIndexValue ||
this.$.list.lastVisibleIndex === this._lastIndexValue - 1
) {
this.$.list.scrollTop = 0;
}
}
}

_lastIndexChanged(lastIndex) {
this._lastIndexValue = lastIndex;
}

// WEBUI-159: Check if there are more items in viewport than the ones set by the provider and load them.
Expand Down

0 comments on commit 631356a

Please sign in to comment.