diff options
author | 2022-11-03 02:30:41 +0100 | |
---|---|---|
committer | 2022-11-03 02:30:41 +0100 | |
commit | 54f9ab7d5f0680bab95a8bdf95b46fb7d06b6ede (patch) | |
tree | a569e1c533a319ecc31c1f52f256f96a28bf8e5b /lazy | |
parent | b5d33b0370ba8430bb8dbede7fef377ac2a67667 (diff) | |
download | iced-54f9ab7d5f0680bab95a8bdf95b46fb7d06b6ede.tar.gz iced-54f9ab7d5f0680bab95a8bdf95b46fb7d06b6ede.tar.bz2 iced-54f9ab7d5f0680bab95a8bdf95b46fb7d06b6ede.zip |
Implement `Widget::operate` for `lazy::Cached`
Diffstat (limited to 'lazy')
-rw-r--r-- | lazy/src/cached.rs | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/lazy/src/cached.rs b/lazy/src/cached.rs index a2a519c0..931184b5 100644 --- a/lazy/src/cached.rs +++ b/lazy/src/cached.rs @@ -4,8 +4,9 @@ use iced_native::mouse; use iced_native::overlay; use iced_native::renderer; use iced_native::widget::tree::{self, Tree}; +use iced_native::widget::{self, Widget}; +use iced_native::Element; use iced_native::{Clipboard, Hasher, Length, Point, Rectangle, Shell, Size}; -use iced_native::{Element, Widget}; use ouroboros::self_referencing; use std::cell::{Ref, RefCell, RefMut}; @@ -125,6 +126,21 @@ where }) } + fn operate( + &self, + tree: &mut Tree, + layout: Layout<'_>, + operation: &mut dyn widget::Operation<Message>, + ) { + self.with_element(|element| { + element.as_widget().operate( + &mut tree.children[0], + layout, + operation, + ); + }); + } + fn on_event( &mut self, tree: &mut Tree, |