From 54f9ab7d5f0680bab95a8bdf95b46fb7d06b6ede Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Thu, 3 Nov 2022 02:30:41 +0100 Subject: Implement `Widget::operate` for `lazy::Cached` --- lazy/src/cached.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'lazy') 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, + ) { + self.with_element(|element| { + element.as_widget().operate( + &mut tree.children[0], + layout, + operation, + ); + }); + } + fn on_event( &mut self, tree: &mut Tree, -- cgit