diff options
author | 2019-11-11 06:07:31 +0100 | |
---|---|---|
committer | 2019-11-11 06:07:31 +0100 | |
commit | 860a6923bbed57a21ce4b2cae331f6a3a51ca3fe (patch) | |
tree | b179c26278ef95b6aa2520c1cef69b5fa264ebcf /wgpu/src/renderer | |
parent | d4d14b68f47e9527554a728ebbba9b840832626a (diff) | |
download | iced-860a6923bbed57a21ce4b2cae331f6a3a51ca3fe.tar.gz iced-860a6923bbed57a21ce4b2cae331f6a3a51ca3fe.tar.bz2 iced-860a6923bbed57a21ce4b2cae331f6a3a51ca3fe.zip |
Split text measurements cache from rendering cache
This speeds up layouting in the most common scenario considerably!
:tada:
Diffstat (limited to 'wgpu/src/renderer')
-rw-r--r-- | wgpu/src/renderer/widget/text.rs | 2 | ||||
-rw-r--r-- | wgpu/src/renderer/widget/text_input.rs | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/wgpu/src/renderer/widget/text.rs b/wgpu/src/renderer/widget/text.rs index 713b514f..b9ccd787 100644 --- a/wgpu/src/renderer/widget/text.rs +++ b/wgpu/src/renderer/widget/text.rs @@ -22,7 +22,7 @@ impl text::Renderer for Renderer { }; let (width, height) = if let Some(bounds) = - self.glyph_brush.borrow_mut().glyph_bounds(§ion) + self.text_measurements.borrow_mut().glyph_bounds(§ion) { (bounds.width().ceil(), bounds.height().ceil()) } else { diff --git a/wgpu/src/renderer/widget/text_input.rs b/wgpu/src/renderer/widget/text_input.rs index b5f6c5f6..75eb20f7 100644 --- a/wgpu/src/renderer/widget/text_input.rs +++ b/wgpu/src/renderer/widget/text_input.rs @@ -78,7 +78,7 @@ impl text_input::Renderer for Renderer { .to_string(); let mut text_value_width = self - .glyph_brush + .text_measurements .borrow_mut() .glyph_bounds(Section { text: text_before_cursor, @@ -94,7 +94,7 @@ impl text_input::Renderer for Renderer { if spaces_at_the_end > 0 { let space_width = { - let glyph_brush = self.glyph_brush.borrow(); + let glyph_brush = self.text_measurements.borrow(); // TODO: Select appropriate font let font = &glyph_brush.fonts()[0]; |