mirror of
https://github.com/storytold/figcraft.git
synced 2026-10-25 02:47:02 -06:00
Review of the zoom previews found three problems: - The browser worker never previewed: wasm builds timed every render as 0 ms, below the 12 ms threshold. Renders are now timed with web-time's monotonic clock on every target (already in the tree via the engine), and the inline worker is built everywhere so a test runs it with the production threshold: preview one frame, refine the next, a newer request skips the old refinement. - A preview was refused whenever the texture on screen was refined at the same zoom, even when that texture showed another part of the page (back at 100% about another point after 800%: 1/64 of the view). It now has to show the whole view asked for, not just its zoom. - The latencies read the frame's start time before the inline render and before the texture was set. They now run on the same clock from the request to the image handed to egui as the canvas texture. Refs #295
36 lines
1003 B
TOML
36 lines
1003 B
TOML
[package]
|
|
name = "figcraft-ui-egui"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
description = "FigCraft egui frontend (the Figma-style UI: canvas, toolbar, layers, design and prototype panels, menus); swappable: nothing below depends on it"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
figcraft-geom = { workspace = true }
|
|
figcraft-color = { workspace = true }
|
|
figcraft-doc = { workspace = true }
|
|
figcraft-text = { workspace = true }
|
|
figcraft-layout = { workspace = true }
|
|
figcraft-render = { workspace = true }
|
|
figcraft-pathops = { workspace = true }
|
|
figcraft-engine = { workspace = true }
|
|
figcraft-format = { workspace = true }
|
|
egui = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
log = { workspace = true }
|
|
base64 = { workspace = true }
|
|
image = { workspace = true }
|
|
egui_extras = { workspace = true }
|
|
web-time = "1.1.0"
|
|
|
|
[build-dependencies]
|
|
serde_json = { workspace = true }
|
|
toml = "1"
|
|
|
|
[dev-dependencies]
|
|
wat = { workspace = true }
|