Skip to content

Update backdrop to support table loading state#6570

Draft
duncanuszkay-d2l wants to merge 1 commit intomainfrom
dunk.backdrop-loader-table
Draft

Update backdrop to support table loading state#6570
duncanuszkay-d2l wants to merge 1 commit intomainfrom
dunk.backdrop-loader-table

Conversation

@duncanuszkay-d2l
Copy link

@duncanuszkay-d2l duncanuszkay-d2l commented Feb 6, 2026

Downstream ticket
Upstream ticket

We want to add a visual loading state to the table in the event that the data needs to be refreshed. This can occur after filters are applied, sort orders are changed, and possibly in future when we move to a new page.

In this PR, I'm updating the existing backdrop component in a few ways to make it compatible with this solution:

  • I'm adding a contained option which limits the backdrop to the containing block instead of attaching it to the viewport
  • When the backdrop is contained, it doesn't prevent body scrolling
  • When aria-hiding elements, it now stops at the first positioned element rather than going all the way up to the document itself

Video Demo

Recording.2026-02-06.134345.mp4

@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

Thanks for the PR! 🎉

We've deployed an automatic preview for this PR - you can see your changes here:

URL https://live.d2l.dev/prs/BrightspaceUI/core/pr-6570/

Note

The build needs to finish before your changes are deployed.
Changes to the PR will automatically update the instance.

@duncanuszkay-d2l duncanuszkay-d2l force-pushed the dunk.backdrop-loader-table branch 2 times, most recently from 0e7c051 to 0d1ae75 Compare February 6, 2026 17:37
Comment on lines +207 to +209
if (options.contained && isPositionedElement(parent)) {
break;
}
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One possible alternative is to either disable the aria-hiding stage entirely when the contained option is set, or possibly add another option to disable aria-hiding, but I felt that this option to hide within the container was the most intuitive for the downstream consumer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant