mirror of
https://github.com/MichaelScottsman/LiquidAss-Frame.git
synced 2026-10-29 04:02:11 +01:00
- Frame menu: measured expanded width so Steam's width transition animates; reporter sends cover.morph end shape + start time, glassd morphs the glass on the same spring (70 ms native lead). - Main window: glass-mode change reported from the mutation callback and the cover marked data-lgs-cover="pending" (no opaque CSS window); glassd springs covers in/out; daemon keeps lgs-native 1.5 s between modes. - Launcher: the name plate dissolves in place, then the label fades back.
27 lines
2.3 KiB
JSON
27 lines
2.3 KiB
JSON
{
|
|
"version": 2,
|
|
"about": [
|
|
"C1a Shell chrome (WN §3.1, §3.3.6, §3.4, §3.7; PLAN §1.2, §1.6, §1.7). Contract: docs/phase2/contracts/reporter.md.",
|
|
"Window cover: 00-base.json's main.modes, keyed on the data-lgs-glass value C1a's runtime sets on %{BasicUiRoot} (window 656, window-full and hero 720, radius 54; windowless: plates only). Nothing to change here.",
|
|
"Nothing in the toolbar row or the bottom ornament pops: the legacy hdr-back, hdr-search, footer and sort-filter pops are superseded while wp.c1a is on (they come back with the flag off).",
|
|
"The ornament is a liquid plate (shell-ornament, the T2 node #Footer > .lgs-orn-plate, also the data-lgs-nopop box); on windowless routes Back and the search field are liquid plates (shell-back, shell-search). These are DOM attributes from device/rt/20-shell.js, not rules.",
|
|
"frame.menu: liquid (PLAN §1.6), and its cover is the tab bar's two capsules (the T2 nodes .lgs-tabcap), not the menu's box (which also holds the gap and the band under the bar). Without the runtime the cover falls back to the box. The cover's radius is the element's own border-radius (no r field), which 20-shell.css §4 sets from --lgs-c1a-tab-r: collapsed a capsule (half the column), expanded a 30 px rounded rectangle (a capsule radius on the expanded panel drew an oval blob); the fallback box gets the same radius, so it is never a square slab (REQ P7->C1a, review R2 M2).",
|
|
"The tab bar opens and closes by animating its width (20-shell.css §4, on snappy out and fade back): cover.morph has the reporter send the end shape with the motion's start time and spring, and glassd morphs the two capsules' glass along with the page (no glass trailing the labels).",
|
|
"The tab bar's +25 mm is P7's tabBarDepth rule (theme/sg/00-base.json) and the always-visible flag is theme/popups/20-shell.json (tabBarAlways): never a crop."
|
|
],
|
|
"flag": "wp.c1a",
|
|
"owns": ["frame.menu"],
|
|
"supersedes": ["hdr-back", "hdr-search", "footer", "sort-filter"],
|
|
"surfaces": {
|
|
"frame.menu": {
|
|
"material": "liquid",
|
|
"cover": {
|
|
"sel": "%{DashboardMenu}%{Variant_FrameMenu} > .lgs-tabcap, %{DashboardMenu}%{Variant_FrameMenu}:not(:has(> .lgs-tabcap))",
|
|
"all": true,
|
|
"morph": {"grow": "snappy", "shrink": "fade"}
|
|
},
|
|
"layers": []
|
|
}
|
|
}
|
|
}
|