Merge pull request #3020 from libkurisu/master

Fix missing redraw request in `geometry` example
This commit is contained in:
Héctor 2025-11-29 13:01:23 +01:00 committed by GitHub
commit 4c3999c7a8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -5,10 +5,11 @@ mod rainbow {
use iced::advanced::layout::{self, Layout};
use iced::advanced::renderer;
use iced::advanced::widget::{self, Widget};
use iced::advanced::{Clipboard, Shell};
use iced::mouse;
use iced::{
Element, Length, Rectangle, Renderer, Size, Theme, Transformation,
Vector,
Element, Event, Length, Rectangle, Renderer, Size, Theme,
Transformation, Vector,
};
#[derive(Debug, Clone, Copy, Default)]
@ -37,6 +38,22 @@ mod rainbow {
layout::Node::new(Size::new(width, width))
}
fn update(
&mut self,
_state: &mut widget::Tree,
_event: &Event,
layout: Layout<'_>,
cursor: mouse::Cursor,
_renderer: &Renderer,
_clipboard: &mut dyn Clipboard,
shell: &mut Shell<'_, Message>,
_viewport: &Rectangle,
) {
if cursor.is_over(layout.bounds()) {
shell.request_redraw();
}
}
fn draw(
&self,
_tree: &widget::Tree,