Revert web render to the creator-verified-good base (70fe2b8): full-frame capture, no crop, plain Stretch=Fill
The wrapper-excluded content-union crop measured an unsettled layout on NavigationCompleted (async fonts/images, load animations) and produced a broken/zoomed sliver — the image was gone. Restoring the exact confirmed-good pipeline; the bounding-box dead-space problem stays open and will not be touched without explicit approval.
This commit is contained in:
@@ -917,17 +917,14 @@ capturing the primary display (which causes the infinity mirror effect).
|
||||
8. ✅ Preview shows live web content (not just a blank rectangle)
|
||||
9. ☐ Handle navigation errors, invalid URIs, timeout gracefully
|
||||
|
||||
**Rendering model (2026-08-28, canvas-size viewport + wrapper-safe content-rect crop):**
|
||||
**Rendering model (2026-08-28, canvas-size viewport, NO crop — the only creator-verified state):**
|
||||
the page renders at the MASTER CANVAS size (1920×1080), stable, never tracked (no reflow/truncation;
|
||||
scrollbars suppressed via `overflow:hidden`). After each navigation the manager measures the WIDGET
|
||||
rect — union of every visible element's `getBoundingClientRect`, EXCLUDING elements that span
|
||||
≥98% of the viewport (bodies, full-canvas background/overlay layers are layout wrappers, not
|
||||
content; full-bleed widgets fall back to the full rect) — and crops the capture AT that rect's
|
||||
top-left (l,t), pinning the widget to the bitmap's (0,0). `Stretch="Fill"` (+ explicit `Margin=0`,
|
||||
Left/Top alignment) maps the frame flush under the box: the selection box bounds the widget tight
|
||||
on all four sides, no dead space. ⚠️ `ExecuteScriptAsync` JSON-encodes the returned value — the
|
||||
script must return a real OBJECT (not `JSON.stringify`, which double-encodes → parse exception →
|
||||
crop silently skipped). Graceful-error handling (item 9) is a follow-up.
|
||||
scrollbars suppressed via `overflow:hidden`). Capture is the FULL frame; `Stretch="Fill"` maps it
|
||||
under the box. Image rendering verified good ("renders and resizes beautifully"). WEB BOX DEAD SPACE
|
||||
STILL OPEN: previous cropping attempts all failed (JSON double-encode silently disabled the crop;
|
||||
scrollWidth returns the full canvas for full-canvas wrappers; content-union measured an unsettled
|
||||
layout on NavigationCompleted and BROKE the image). Any further crop needs creator approval first.
|
||||
⚠️ `ExecuteScriptAsync` JSON-encodes the returned value — never return `JSON.stringify` from script.
|
||||
|
||||
**Properties panel (2026-08-28):** web URI ✓/✕ icon buttons are `IsTabStop="False"` so Tab flows
|
||||
X→Y→W→H→URI; the ✕ button now clears the URI textbox (was reverting to the pre-accept snapshot).
|
||||
|
||||
Reference in New Issue
Block a user