diff options
author | 2024-03-21 22:27:17 +0100 | |
---|---|---|
committer | 2024-03-21 22:27:17 +0100 | |
commit | 3645d34d6a1ba1247238e830e9eefd52d9e5b986 (patch) | |
tree | 2d38961161df0a85c1667474b2b696aab86b7160 /examples/multitouch | |
parent | 7e4ae8450e1f28c15717ca5ca9748981af9c9541 (diff) | |
download | iced-3645d34d6a1ba1247238e830e9eefd52d9e5b986.tar.gz iced-3645d34d6a1ba1247238e830e9eefd52d9e5b986.tar.bz2 iced-3645d34d6a1ba1247238e830e9eefd52d9e5b986.zip |
Implement composable, type-safe renderer fallback
Diffstat (limited to 'examples/multitouch')
-rw-r--r-- | examples/multitouch/src/main.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/examples/multitouch/src/main.rs b/examples/multitouch/src/main.rs index 2453c7f5..41bd0151 100644 --- a/examples/multitouch/src/main.rs +++ b/examples/multitouch/src/main.rs @@ -5,7 +5,7 @@ use iced::mouse; use iced::touch; use iced::widget::canvas::event; use iced::widget::canvas::stroke::{self, Stroke}; -use iced::widget::canvas::{self, Canvas, Geometry}; +use iced::widget::canvas::{self, Canvas}; use iced::{Color, Element, Length, Point, Rectangle, Renderer, Theme}; use std::collections::HashMap; @@ -83,11 +83,13 @@ impl canvas::Program<Message> for Multitouch { fn draw( &self, _state: &Self::State, - renderer: &Renderer, + renderer: &mut Renderer, _theme: &Theme, bounds: Rectangle, _cursor: mouse::Cursor, - ) -> Vec<Geometry> { + ) { + use canvas::Frame; + let fingerweb = self.cache.draw(renderer, bounds.size(), |frame| { if self.fingers.len() < 2 { return; @@ -154,6 +156,6 @@ impl canvas::Program<Message> for Multitouch { } }); - vec![fingerweb] + renderer.draw_geometry([fingerweb]); } } |