# Demo Chrome Stability Policy

## Purpose

`dev-22.0.1` fixes a Demo maximization layout problem where the browser page could still scroll after maximization. When page scroll remained active, the product title/menu row could scroll out of the viewport while the toolbar and grid were still visible, which made it look as if the UnifiedSpread menu had disappeared.

## Design

- Demo maximization is still implemented only under `demo/assets`.
- The product runtime in `scripts/` does not know about Demo parameter panels or restore buttons.
- `html` and `body` receive a demo-only `demo-maximized` class to lock page scroll.
- The mounted Control frame receives a fixed viewport-sized layout.
- Grid scrolling stays inside the NativeGrid viewport, not in the browser page.
- `#workspace` min-height is disabled only in Demo maximized mode so product chrome can remain visible in constrained viewports.

## Why this matters

Charts and floating objects add another visual layer above the cell grid. Object drag/resize should not cause Host/Demo page scrolling, because page scrolling can hide product chrome. The stable behavior is:

1. Demo panels are hidden.
2. UnifiedSpread chrome remains visible.
3. NativeGrid viewport owns grid scrolling.
4. Object layer operations stay inside the grid frame.
