Repository navigation
Scriptoscope 0.8.0
Scriptoscope 0.8.0 is a minor release on 0.7.0, and the first cut from main since the v2 integration branch was retired. It's 0.8.0 rather than a patch because of one breaking sizing change; everything else is fixes. It continues 0.y.z pre-launch development (#168).
Breaking: auto-sized windows now fit their chrome inside the element's box (#526, #541)
- A window with no declared size used to take the element's measured size as its content size and draw the frame outside it.
- The measured size,
data-scriptoscope-extra-width/-heightand pxmax-width/max-heightcaps now bound the whole window. Thick-framed schemes therefore get a smaller content area: on dolphin-som, the measured width less 116 px. - To keep a fixed content area, declare
data-scriptoscope-width/-height. These are still content sizes, as areWindowManager.addwidth/heightandsetContentSize. - New:
outerSizeonWindowManager.add,WindowManager.setOuterSizeandWindowManager.chromeExtent, for sizing by the outer box.
Fixed: windows and controls behave like the classic Window and Control Managers
- Scroll bars act on the part under the pointer, with auto-repeat (#567). Inactive windows draw inactive scroll bars, and a first press on one only activates the window (#594). Scroll arrows sit clear of the grow box (#524).
- Title-bar and grow-box presses that don't move are no longer drags or resizes (#552, #561), and cancelled drags revert (#563). Outer bounds hold through collapse, zoom and restore.
- Keyboard focus entering a window activates and raises it (#550). Focus and control identity survive re-renders (#525, #533), and title widgets follow the visual tab order (#537).
Fixed: rendering
- Dialog and alert bodies use the scheme's dialog colour, from Kaleidoscope's PACH 130 patch (#540).
- Disclosure triangles draw the scheme's own art for each direction and state (#595).
- Themed sliders let a patterned window body show through (#596).
composeButtonreportsunavailableinstead of returning a blank button on the five built-in-frame schemes (#608).- Disposed themes are rejected in every browser (#589).
Fixed: demo
- Showcase text, links and picker tiles reach WCAG AA contrast on every scheme.
- Ready timing and persisted layouts are fixed.
Documentation
- New
docs/interaction.md, a consumer reference for every interactive behaviour. llms.txtand the integration docs no longer describe removed APIs.- New decode specs: slider host background (#606), window structure regions and hit-testing (#610), and corrected kDEF dispatch labels (#615).
Contributor workflow
- All work lands on
main;v2is archived as tagarchive/v2. - CI is tiered (#598). PRs run Chromium rendering shards and exact Linux goldens. A release-tier gate runs Firefox/WebKit interaction contracts, the extended matrix and the scene fixtures, which are now required (#607).
Final release gate passed on the exact tagged commit, and the tag check confirmed it.
Runtime size versus 0.7.0:
| non-test source | 0.7.0 | 0.8.0 | delta |
|---|---|---|---|
| logic | 16081 | 16654 | +573 |
| cited engine tables | 2329 | 2380 | +51 |
| total | 18410 | 19034 | +624 |
See the CHANGELOG for details. No npm publication accompanies this GitHub release.