Block Editor: Implements hints for Tabs (fixes #21178)#21672
Merged
nielslyngsoe merged 35 commits intomainfrom Feb 10, 2026
Merged
Block Editor: Implements hints for Tabs (fixes #21178)#21672nielslyngsoe merged 35 commits intomainfrom
nielslyngsoe merged 35 commits intomainfrom
Conversation
Co-authored-by: nielslyngsoe <6791648+nielslyngsoe@users.noreply.github.com>
Co-authored-by: nielslyngsoe <6791648+nielslyngsoe@users.noreply.github.com>
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
Contributor
There was a problem hiding this comment.
Pull request overview
Implements tab-level hint/badge support in the Block Workspace by introducing per-tab view contexts and wiring validation hints into those contexts so tab headers can display badges when a tab contains validation issues.
Changes:
- Add per-tab
UmbViewControllerinstances in block workspace edit views and render tab badges based onfirstHintOfVariant. - Switch block element managers from
UmbHintContexttoUmbViewContextand route validation hints throughview.hints. - Wire block workspace
content/settingsviews to inherit from the workspace view (but includes a stray debug subscription).
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts | Creates/provides per-tab view contexts and renders hint badges in router-based block edit tabs. |
| src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts | Adds similar per-tab view contexts + hint badge rendering for inline/no-router block editing. |
| src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/block-workspace.context.ts | Hooks up view inheritance for content/settings views (but also adds a debug console subscription). |
| src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/block-element-manager.ts | Replaces hint context with view context and connects validation-to-hints to view.hints. |
Comments suppressed due to low confidence (1)
src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts:71
- When
_hasRootPropertieschanges, you don’t call#setupViewContexts(). If root properties become available after initial load, the required view context (and its hint observer) will never be created. Call#setupViewContexts()from thehasPropertiesobserver as well.
this.observe(
this.#tabsStructureHelper.hasProperties,
(hasRootProperties) => {
this._hasRootProperties = hasRootProperties;
this.#checkDefaultTabName();
},
'observeRootProperties',
);
...ages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts
Outdated
Show resolved
Hide resolved
...UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
Outdated
Show resolved
Hide resolved
src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/block-workspace.context.ts
Outdated
Show resolved
Hide resolved
...ages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts
Show resolved
Hide resolved
...ages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts
Outdated
Show resolved
Hide resolved
...ages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts
Show resolved
Hide resolved
AndyButland
reviewed
Feb 9, 2026
Contributor
There was a problem hiding this comment.
This looks to be working as expected from my testing @nielslyngsoe. There are a few Copilot comments you should review though, and some debug logging that should be cleaned-up.
…iews/edit/block-workspace-view-edit-content-no-router.element.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…iews/edit/block-workspace-view-edit.element.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
…21476 # Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
…21476 # Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts
# Conflicts: # src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.ts
madsrasmussen
approved these changes
Feb 10, 2026
nielslyngsoe
added a commit
that referenced
this pull request
Feb 10, 2026
* cherry-pick from #21672 * cherry pick tab rendering to handle one more case * move the root route down for it to stay an empty path. * Revert empty root path commit * fullPath for root includes 'root' * revert claude settings commit * refactor accordingly to feedback
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements hints for tabs of the Block Workspace. Notice how this is used for all Blocks, in the Modal when editing Blocks, and when editing List Blocks in inline-mode.
This generally finished the implementation of badges, it seems there where a few missing links/bindings between the View Contexts.
Here a few screenshots of the scenarios I have tested: