UI5 / UI5/webcomponents

"busy" and "__isBusy" handling

Open
#5,236 2 comments 0 reactions 1 assignee View on GitHub

@nnaydenow is already working on this.

Since Feb 2, 2026.

TOPIC Core
Dominant language
TypeScript
Stars
1.8k
Forks
285
Avg merge
3d 2h
Merged PRs (30d)
59

Description

We have the OpenUI5Enablement feature that adds an __isBusy property + the necessary code for it. Although this is only used in the OpenUI5 context now (but could become a core web components feature in the future), the code itself is maintained here in this repo.

There are currently 2 issues:

  • Some components have a busy property already, and when both busy and __isBusy are set (f.e. the OpenUI5 ui5-table wrapper has setBusy(true) ) users see 2 busy indicators
  • Some of our web components (ui5-wizard-step) have no shadow root, but still have the __isBusy property when enriched with the OpenUI5Enablement mixin. However, when __isBusy is set to true nothing happens (due to no shadow root and nowhere for the "busy" code to act)

The first could be solved either in UI5 Web Components (OpenUI5Elablement for example not only adds __isBusy to the metadata, but also removes busy for the components that have such a property), or in OpenUI5 (WebComponent.js never sets it to the web components instance). To be determined which would be best.

The second issue is trickier. All component wrappers are controls (even for the components that are logical elements such as options, items, etc.). One way to do it would be to create WebComponent.js and WebComponentElement.js classes in OpenUI5 and only set busy support for the first ones. But this way wizard steps would not have busy support at all. The other way would be to manually enable it for some elements (such as wizard steps). For this to work, the parent component (ui5-wizard) would need to monitor the __isBusy property of its children and act upon it - f.e. set busy state to some of its own shadow root as the wizard is the one to display the steps. This would mean that UI5 Web Components code starts working with, and understanding the __isBusy property.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.