From 860a6923bbed57a21ce4b2cae331f6a3a51ca3fe Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Mon, 11 Nov 2019 06:07:31 +0100 Subject: Split text measurements cache from rendering cache This speeds up layouting in the most common scenario considerably! :tada: --- native/src/renderer.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'native/src/renderer.rs') diff --git a/native/src/renderer.rs b/native/src/renderer.rs index 5963d577..833de571 100644 --- a/native/src/renderer.rs +++ b/native/src/renderer.rs @@ -26,6 +26,15 @@ mod windowed; pub use debugger::Debugger; pub use windowed::{Target, Windowed}; -pub trait Renderer { +use crate::{layout, Element}; + +pub trait Renderer: Sized { type Output; + + fn layout<'a, Message>( + &mut self, + element: &Element<'a, Message, Self>, + ) -> layout::Node { + element.layout(self, &layout::Limits::NONE) + } } -- cgit