@@ -115,7 +115,7 @@ where
115115 }
116116}
117117
118- impl < ' a , Message > Widget < Message , Theme , Renderer > for Manager < ' a , Message > {
118+ impl < Message > Widget < Message , Theme , Renderer > for Manager < ' _ , Message > {
119119 fn size ( & self ) -> Size < Length > {
120120 self . content . as_widget ( ) . size ( )
121121 }
@@ -289,7 +289,7 @@ struct Overlay<'a, 'b, Message> {
289289 timeout_secs : u64 ,
290290}
291291
292- impl < ' a , ' b , Message > overlay:: Overlay < Message , Theme , Renderer > for Overlay < ' a , ' b , Message > {
292+ impl < Message > overlay:: Overlay < Message , Theme , Renderer > for Overlay < ' _ , ' _ , Message > {
293293 fn layout ( & mut self , renderer : & Renderer , bounds : Size ) -> layout:: Node {
294294 let limits = layout:: Limits :: new ( Size :: ZERO , bounds) ;
295295
@@ -308,6 +308,47 @@ impl<'a, 'b, Message> overlay::Overlay<Message, Theme, Renderer> for Overlay<'a,
308308 . translate ( Vector :: new ( self . position . x , self . position . y ) )
309309 }
310310
311+ fn draw (
312+ & self ,
313+ renderer : & mut Renderer ,
314+ theme : & Theme ,
315+ style : & renderer:: Style ,
316+ layout : Layout < ' _ > ,
317+ cursor : mouse:: Cursor ,
318+ ) {
319+ let viewport = layout. bounds ( ) ;
320+
321+ for ( ( child, state) , layout) in self
322+ . toasts
323+ . iter ( )
324+ . zip ( self . state . iter ( ) )
325+ . zip ( layout. children ( ) )
326+ {
327+ child
328+ . as_widget ( )
329+ . draw ( state, renderer, theme, style, layout, cursor, & viewport) ;
330+ }
331+ }
332+
333+ fn operate (
334+ & mut self ,
335+ layout : Layout < ' _ > ,
336+ renderer : & Renderer ,
337+ operation : & mut dyn widget:: Operation ,
338+ ) {
339+ operation. container ( None , layout. bounds ( ) , & mut |operation| {
340+ self . toasts
341+ . iter ( )
342+ . zip ( self . state . iter_mut ( ) )
343+ . zip ( layout. children ( ) )
344+ . for_each ( |( ( child, state) , layout) | {
345+ child
346+ . as_widget ( )
347+ . operate ( state, layout, renderer, operation) ;
348+ } ) ;
349+ } ) ;
350+ }
351+
311352 fn on_event (
312353 & mut self ,
313354 event : Event ,
@@ -379,47 +420,6 @@ impl<'a, 'b, Message> overlay::Overlay<Message, Theme, Renderer> for Overlay<'a,
379420 . fold ( event:: Status :: Ignored , event:: Status :: merge)
380421 }
381422
382- fn draw (
383- & self ,
384- renderer : & mut Renderer ,
385- theme : & Theme ,
386- style : & renderer:: Style ,
387- layout : Layout < ' _ > ,
388- cursor : mouse:: Cursor ,
389- ) {
390- let viewport = layout. bounds ( ) ;
391-
392- for ( ( child, state) , layout) in self
393- . toasts
394- . iter ( )
395- . zip ( self . state . iter ( ) )
396- . zip ( layout. children ( ) )
397- {
398- child
399- . as_widget ( )
400- . draw ( state, renderer, theme, style, layout, cursor, & viewport) ;
401- }
402- }
403-
404- fn operate (
405- & mut self ,
406- layout : Layout < ' _ > ,
407- renderer : & Renderer ,
408- operation : & mut dyn widget:: Operation ,
409- ) {
410- operation. container ( None , layout. bounds ( ) , & mut |operation| {
411- self . toasts
412- . iter ( )
413- . zip ( self . state . iter_mut ( ) )
414- . zip ( layout. children ( ) )
415- . for_each ( |( ( child, state) , layout) | {
416- child
417- . as_widget ( )
418- . operate ( state, layout, renderer, operation) ;
419- } ) ;
420- } ) ;
421- }
422-
423423 fn mouse_interaction (
424424 & self ,
425425 layout : Layout < ' _ > ,
0 commit comments