View: add fn for toggling optimize and force texture caching (#1136)
* TextInput: expose the location of the caret/cursor in absolute window-relative coordinates. THis allows, for ex, a widget to be placed relative to the current location of the text being inputted by the user. * View: add fn for toggling `optimize` and force texture caching Add CachedView fns that make it easier to control its parameters: * set_optimize(cx, ViewOptimize): switch optimize mode at runtime and allocate the draw_list on demand. Previously `optimize` was set once from `texture_caching` and never reset, so a view couldn't toggle between direct and texture-cached rendering per frame. * set_texture_max_height(Option<f64>): cap the Texture-mode render turtle's height so a tall Fit-height cached view can't allocate a render target past the GPU's max texture size (was a hard MTLTextureDescriptor abort once content exceeded 16384px). None (default) leaves it uncapped; content past the cap is clipped. Only affects Texture mode. * redraw_texture_cache() / force_texture_redraw: force one offscreen re-render after a content repopulate or an optimize-mode flip. The rect-based will_redraw check can't see a content change on a recycled or toggled view, so without this it would composite a stale texture. * view_size is now updated in every optimize mode, not just draw-list modes. The None (direct-render) path previously left it stale, so a view toggled None<->Texture sized its next offscreen turtle from an old height and clipped/mis-positioned its content.
K
Kevin Boos committed
30eeae75ca62097b132856243a13a1d70a648ffa
Parent: c65b72e
Committed by GitHub <noreply@github.com>
on 7/2/2026, 6:34:19 AM