Skip to content

Let widgets and views change their layout with their size - #986

Merged
manuelmayer-dev merged 1 commit into
mainfrom
feature/responsive-ui-variants
Sep 23, 2026
Merged

manuelmayer-dev merged 1 commit into
mainfrom
feature/responsive-ui-variants

Conversation

@manuelmayer-dev

Copy link
Copy Markdown
Member

Summary

A view can now hold several layouts in one UiResponsive node, and the reader draws the one whose size or aspect condition matches its box, so a widget can lay itself out differently at 1x1, 2x1 and 1x2 (and a folder view or dialog per screen) without a round-trip. Older readers get a copy of the default layout as the fallback; see ADR 0094. New public members: UiResponsive, UiResponsiveVariant, UiResponsiveSelection and UiTestHost.SetBox.

Testing

Full solution build with warnings as errors and all .NET suites pass (except the Plugin.Cli build test that cannot resolve the pinned SDK on this machine), plus runtime, web client, desktop UI and the docs build. Verified against a running host with an out-of-process plugin: the deck draws the matching layout per tile size and switches on resize, and the user tested it in the desktop UI.

Plugin SDK / API compatibility

  • No public, non-obsolete SDK or plugin protocol contract was removed or changed
  • Contracts were only extended additively (new members with defaults, new optional fields, new message types)
  • A plugin compiled against the previous SDK still loads and behaves identically (source and binary compatible)

Checklist

  • Tests were added or updated where needed
  • The change was verified manually where appropriate
  • Documentation was updated if the change affects documented behaviour
  • I reviewed and understand every submitted change

@manuelmayer-dev manuelmayer-dev added feature New feature or request area:host Host: Domain, Application, Infrastructure area:widgets Built-in widgets and the widget editor area:ui-model Shared UI model contracts area:desktop-ui The Angular desktop UI area:web-client The framework-free web client area:runtime Shared UI runtime consumed by both clients area:docs The published developer documentation site compat:plugin-api Affects a public plugin-facing contract; needs a compatibility review labels Sep 23, 2026
@manuelmayer-dev
manuelmayer-dev merged commit e1ce72c into main Sep 23, 2026
10 checks passed
@manuelmayer-dev
manuelmayer-dev deleted the feature/responsive-ui-variants branch September 23, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:desktop-ui The Angular desktop UI area:docs The published developer documentation site area:host Host: Domain, Application, Infrastructure area:runtime Shared UI runtime consumed by both clients area:ui-model Shared UI model contracts area:web-client The framework-free web client area:widgets Built-in widgets and the widget editor compat:plugin-api Affects a public plugin-facing contract; needs a compatibility review feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant