Skip to content

damascene 0.4.1

Choose a tag to compare

@computer-whisperer computer-whisperer released this 06 Jun 01:39
· 69 commits to main since this release

HDR & color management

  • Color-managed images end to end — wide-gamut and HDR image sources are decoded, tagged, and converted through the paint stream on all backends (fe21b1e)
  • Per-image HDR luminance remasterdynamic_range_limit (à la CSS) tone-maps authored-HDR images via BT.2390, using measured peak × live headroom (ae41bbe)
  • PQ images anchored to reference whiteBT2020_PQ content maps 203 nits to UI white instead of clipping (#46) (7e9fbc1)
  • Live HDR negotiationpreferred_changed2 lets HDR output follow the window across monitors (26932de)
  • HostDiagnostics::hdr_active() — one true check for "is this window actually rendering HDR right now" (#46) (f83b1e5)
  • UI white now scales to the scRGB reference level on HDR swapchains (a4a85cb)
  • Host clear colors route through the paint-stream conversion (#45) (0047dfa)

Scene3D

  • Translucent meshes — materials with alpha < 1 render in a second, depth-sorted pass (#39) (2f2809f)
  • Grid/axes record after opaque meshes so depth resolves correctly (6e144ba)
  • Label occlusion now works on WebGL2 via packed depth-as-color capture; backends without depth read-back degrade gracefully (9364b8b, 79d01c8)

Widgets & API

  • page() — semantic window-root scaffold for app shells (#46) (6f27dbf)
  • EventCxon_event handlers and app code can query rects of keyed elements (#43) (bf61bd5)
  • External wakeup in damascene-winit-wgpu for push-driven event-class redraws (#44) (3c298a8)
  • Debug warning when .tooltip() re-set replaces different text (#46) (109806a)

Lints

  • New TooltipWithoutOverlayRoot — catches the overlays() requirement statically (#46) (b717502)
  • New UnpaddedViewportLeaf — flags flush window chrome at the root level (#46) (2d4ad4b, 7afe0ba)
  • Adjacency checks now run across container boundaries (#37) (dbfef84)

Fixes

  • Wrap text measures at its own Fixed width under Hug ancestors (#47) (51e1651)
  • Runner capabilities derive from the adapter in winit-wgpu, matching the web host (4aa1a3d, 31d0a54)

Build

  • Dev-profile opt-level overrides for the text rasterization stack — debug time-to-first-present drops 22.1 s → 1.14 s. Note: profile overrides don't propagate; downstream app workspaces need the same block in their own root Cargo.toml (ef6eff2)