Feat v0.6.10 viewport foundation (#45)
All checks were successful
All checks were successful
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com> Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
This commit was merged in pull request #45.
This commit is contained in:
41
CHANGELOG.md
41
CHANGELOG.md
@@ -2,6 +2,47 @@
|
||||
|
||||
All notable changes to Armature are documented here.
|
||||
|
||||
## v0.6.10 — Viewport Foundation
|
||||
|
||||
Single layout model. Every surface renders inside one containment chain:
|
||||
`body → shell → surface`. No dual systems. No transform hacks.
|
||||
|
||||
### Changed
|
||||
|
||||
- **CSS `zoom` replaces `transform: scale()`**: UI scale (80%–175%) now
|
||||
uses CSS `zoom` on `#surfaceInner` instead of `transform: scale()`.
|
||||
`zoom` reflows layout correctly — `getBoundingClientRect()` returns
|
||||
accurate values, eliminating the scale-correction hack in `menu.js`.
|
||||
Supported in all evergreen browsers (Firefox 126+, June 2024).
|
||||
- **Single layout root**: `<body>` in `base.html` is the authoritative
|
||||
flex column layout. `.sw-shell` CSS demoted from viewport-level
|
||||
container (`height: 100vh`) to fill-parent (`height: 100%`).
|
||||
Safe-area insets moved from `.sw-shell` to `<body>`.
|
||||
- **Banner single source of truth**: Template banners measure their own
|
||||
height via inline `<script>` and set `--banner-top-height` /
|
||||
`--banner-bottom-height` CSS variables. Removed `--banner-h: 28px`
|
||||
fixed variable. `ShellBanner` Preact component's `useEffect`
|
||||
measurement removed (dead code — no surface imports `AppShell`).
|
||||
- **`sw-shell__banner` position**: Changed from `position: fixed` to
|
||||
`position: static` — template banners are in-flow elements.
|
||||
- **`sw-shell__body` padding**: Removed `padding-top/bottom` for
|
||||
banner offsets — unnecessary with in-flow banners.
|
||||
- **Extension surfaces `100vh` → `100%`**: `chat-app`, `chat-loading`,
|
||||
`surface-dashboard` now use `height: 100%` to inherit from the
|
||||
extension mount container (like Notes). Fixes overflow behind banners.
|
||||
- **`100vh` → `100dvh` fallbacks**: All viewport-height declarations
|
||||
use `height: 100vh; height: 100dvh;` pattern for correct behavior on
|
||||
mobile browsers. Affects: `base.html`, `sw-login.css`,
|
||||
`workflow.html`, `workflow-landing.html`, `primitives.css`,
|
||||
`git-board/css/main.css`.
|
||||
- **`sw.shell.getScale()` deprecated**: Returns `1` always — CSS `zoom`
|
||||
handles layout reflow without manual correction.
|
||||
|
||||
### Deprecated
|
||||
|
||||
- `src/js/sw/shell/app-shell.js`, `app.js`, `surface-viewport.js` —
|
||||
no surface imports these. Layout root is `<body>` in `base.html`.
|
||||
|
||||
## v0.6.9 — Session Lifetime Config
|
||||
|
||||
Admin-configurable session durations, "keep me logged in" opt-in, and
|
||||
|
||||
Reference in New Issue
Block a user