Skip to content

web: honor ui/notifications/size-changed and ui/request-display-mode #1568

Description

@cliffhall

Summary

Honor two view→host requests that are currently silently dropped:

  • ui/notifications/size-changed — resize the host frame to the view's reported content height. The host supplies a host-controlled outer container (containerRef + ResizeObserver) whose size is driven by host layout, while the inner frame height follows the view's report — so the two signals don't couple into a feedback loop.
  • ui/request-display-mode — wire display-mode requests through the existing maximize control; the host filters against HOST_AVAILABLE_DISPLAY_MODES and returns the applied mode per spec (declining unsupported modes like pip).

Reference implementation (PR #1510)

Re-implement informed by these changes at 33fac3f:

Depends on

  • hostContext delivery + host-context-changed (containerDimensions/displayMode are hostContext fields; same files)

Wave 2 lane — sequential with the other AppRenderer/AppsScreen issues.

Notes

  • AppsScreen layout changes must follow the Mantine rules: .withProps() subcomponent constants, theme variants over CSS classes, no inline styles, no raw color literals.
  • The mcp_app_demo preset exercises size-changed end-to-end.
  • Coverage gate ≥90 on all four dimensions.

Part of the PR #1510 decomposition (see tracking issue).

Metadata

Metadata

Assignees

Labels

v2Issues and PRs for v2

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions