diff options
author | 2023-01-12 05:18:25 +0100 | |
---|---|---|
committer | 2023-01-12 05:18:25 +0100 | |
commit | e2ddef74387bcd81859b56e47316c47d7b739a01 (patch) | |
tree | 03864b74535a2abc6fdcfd5d08f3f9539e8b4004 /native/src/user_interface.rs | |
parent | 502c9bfbf6eb6193adf6c88abdc4cef90816a04b (diff) | |
download | iced-e2ddef74387bcd81859b56e47316c47d7b739a01.tar.gz iced-e2ddef74387bcd81859b56e47316c47d7b739a01.tar.bz2 iced-e2ddef74387bcd81859b56e47316c47d7b739a01.zip |
Replace `Option<Instant>` with `RedrawRequest` enum
Diffstat (limited to '')
-rw-r--r-- | native/src/user_interface.rs | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/native/src/user_interface.rs b/native/src/user_interface.rs index 49a6b00e..025f28a1 100644 --- a/native/src/user_interface.rs +++ b/native/src/user_interface.rs @@ -5,10 +5,9 @@ use crate::layout; use crate::mouse; use crate::renderer; use crate::widget; +use crate::window; use crate::{Clipboard, Element, Layout, Point, Rectangle, Shell, Size}; -use std::time::Instant; - /// A set of interactive graphical elements with a specific [`Layout`]. /// /// It can be updated and drawn. @@ -191,7 +190,7 @@ where use std::mem::ManuallyDrop; let mut outdated = false; - let mut redraw_requested_at = None; + let mut redraw_request = None; let mut manual_overlay = ManuallyDrop::new(self.root.as_widget_mut().overlay( @@ -221,12 +220,12 @@ where event_statuses.push(event_status); - match (redraw_requested_at, shell.redraw_requested_at()) { + match (redraw_request, shell.redraw_request()) { (None, Some(at)) => { - redraw_requested_at = Some(at); + redraw_request = Some(at); } (Some(current), Some(new)) if new < current => { - redraw_requested_at = Some(new); + redraw_request = Some(new); } _ => {} } @@ -303,12 +302,12 @@ where self.overlay = None; } - match (redraw_requested_at, shell.redraw_requested_at()) { + match (redraw_request, shell.redraw_request()) { (None, Some(at)) => { - redraw_requested_at = Some(at); + redraw_request = Some(at); } (Some(current), Some(new)) if new < current => { - redraw_requested_at = Some(new); + redraw_request = Some(new); } _ => {} } @@ -334,9 +333,7 @@ where if outdated { State::Outdated } else { - State::Updated { - redraw_requested_at, - } + State::Updated { redraw_request } }, event_statuses, ) @@ -594,6 +591,6 @@ pub enum State { /// rebuilding. Updated { /// The [`Instant`] when a redraw should be performed. - redraw_requested_at: Option<Instant>, + redraw_request: Option<window::RedrawRequest>, }, } |