diff options
Diffstat (limited to 'native/src/window.rs')
-rw-r--r-- | native/src/window.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/native/src/window.rs b/native/src/window.rs index 1b97e655..4bccc471 100644 --- a/native/src/window.rs +++ b/native/src/window.rs @@ -8,3 +8,18 @@ pub use action::Action; pub use event::Event; pub use mode::Mode; pub use user_attention::UserAttention; + +use crate::subscription::{self, Subscription}; + +use std::time::Instant; + +/// Subscribes to the frames of the window of the running application. +/// +/// The resulting [`Subscription`] will produce items at a rate equal to the +/// framerate of the monitor of said window. +pub fn frames() -> Subscription<Instant> { + subscription::raw_events(|event, _status| match event { + crate::Event::Window(Event::RedrawRequested(at)) => Some(at), + _ => None, + }) +} |