summaryrefslogtreecommitdiffstats
path: root/winit/src
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-03-05 06:35:20 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-03-05 06:35:20 +0100
commit99e0a71504456976ba88040f5d1d3bbc347694ea (patch)
treea228c064fd3847831ff8072aa9375dc59db47f47 /winit/src
parent8af69be47e88896b3c5f70174db609eee0c67971 (diff)
downloadiced-99e0a71504456976ba88040f5d1d3bbc347694ea.tar.gz
iced-99e0a71504456976ba88040f5d1d3bbc347694ea.tar.bz2
iced-99e0a71504456976ba88040f5d1d3bbc347694ea.zip
Rename `iced_native` to `iced_runtime`
Diffstat (limited to '')
-rw-r--r--runtime/src/window.rs (renamed from winit/src/window.rs)28
-rw-r--r--winit/src/application.rs14
-rw-r--r--winit/src/application/state.rs2
-rw-r--r--winit/src/clipboard.rs14
-rw-r--r--winit/src/lib.rs7
-rw-r--r--winit/src/system.rs4
6 files changed, 37 insertions, 32 deletions
diff --git a/winit/src/window.rs b/runtime/src/window.rs
index 6ac58e20..236064f7 100644
--- a/winit/src/window.rs
+++ b/runtime/src/window.rs
@@ -1,7 +1,27 @@
-//! Interact with the window of your application.
-use crate::core::window::{Mode, UserAttention};
-use crate::native::command::{self, Command};
-use crate::native::window::Action;
+//! Build window-based GUI applications.
+mod action;
+
+pub use action::Action;
+
+use crate::command::{self, Command};
+use crate::core::time::Instant;
+use crate::core::window::{Event, Mode, UserAttention};
+use crate::futures::subscription::{self, Subscription};
+
+/// Subscribes to the frames of the window of the running application.
+///
+/// The resulting [`Subscription`] will produce items at a rate equal to the
+/// refresh rate of the window. Note that this rate may be variable, as it is
+/// normally managed by the graphics driver and/or the OS.
+///
+/// In any case, this [`Subscription`] is useful to smoothly draw application-driven
+/// animations without missing any frames.
+pub fn frames() -> Subscription<Instant> {
+ subscription::raw_events(|event, _status| match event {
+ iced_core::Event::Window(Event::RedrawRequested(at)) => Some(at),
+ _ => None,
+ })
+}
/// Closes the current window and exits the application.
pub fn close<Message>() -> Command<Message> {
diff --git a/winit/src/application.rs b/winit/src/application.rs
index d863c846..9666fcae 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -16,10 +16,10 @@ use crate::core::{Event, Size};
use crate::futures::futures;
use crate::futures::{Executor, Runtime, Subscription};
use crate::graphics::compositor::{self, Compositor};
-use crate::native::clipboard;
-use crate::native::program::Program;
-use crate::native::user_interface::{self, UserInterface};
-use crate::native::{Command, Debug};
+use crate::runtime::clipboard;
+use crate::runtime::program::Program;
+use crate::runtime::user_interface::{self, UserInterface};
+use crate::runtime::{Command, Debug};
use crate::style::application::{Appearance, StyleSheet};
use crate::{Clipboard, Error, Proxy, Settings};
@@ -709,9 +709,9 @@ pub fn run_command<A, E>(
E: Executor,
<A::Renderer as core::Renderer>::Theme: StyleSheet,
{
- use iced_native::command;
- use iced_native::system;
- use iced_native::window;
+ use crate::runtime::command;
+ use crate::runtime::system;
+ use crate::runtime::window;
for action in command.actions() {
match action {
diff --git a/winit/src/application/state.rs b/winit/src/application/state.rs
index b727e03c..c37ccca6 100644
--- a/winit/src/application/state.rs
+++ b/winit/src/application/state.rs
@@ -3,7 +3,7 @@ use crate::conversion;
use crate::core;
use crate::core::{Color, Point, Size};
use crate::graphics::Viewport;
-use crate::native::Debug;
+use crate::runtime::Debug;
use crate::Application;
use std::marker::PhantomData;
diff --git a/winit/src/clipboard.rs b/winit/src/clipboard.rs
index 22509130..7271441d 100644
--- a/winit/src/clipboard.rs
+++ b/winit/src/clipboard.rs
@@ -1,6 +1,4 @@
//! Access the clipboard.
-use crate::native::clipboard::Action;
-use crate::native::command::{self, Command};
/// A buffer for short-term storage and transfer within and between
/// applications.
@@ -64,15 +62,3 @@ impl crate::core::Clipboard for Clipboard {
self.write(contents)
}
}
-
-/// Read the current contents of the clipboard.
-pub fn read<Message>(
- f: impl Fn(Option<String>) -> Message + 'static,
-) -> Command<Message> {
- Command::single(command::Action::Clipboard(Action::Read(Box::new(f))))
-}
-
-/// Write the given contents to the clipboard.
-pub fn write<Message>(contents: String) -> Command<Message> {
- Command::single(command::Action::Clipboard(Action::Write(contents)))
-}
diff --git a/winit/src/lib.rs b/winit/src/lib.rs
index 0d8c04d3..5cde510a 100644
--- a/winit/src/lib.rs
+++ b/winit/src/lib.rs
@@ -31,9 +31,9 @@
#![allow(clippy::inherent_to_string, clippy::type_complexity)]
#![cfg_attr(docsrs, feature(doc_cfg))]
pub use iced_graphics as graphics;
-pub use iced_native as native;
-pub use iced_native::core;
-pub use iced_native::futures;
+pub use iced_runtime as runtime;
+pub use iced_runtime::core;
+pub use iced_runtime::futures;
pub use iced_style as style;
pub use winit;
@@ -42,7 +42,6 @@ pub mod application;
pub mod clipboard;
pub mod conversion;
pub mod settings;
-pub mod window;
#[cfg(feature = "system")]
pub mod system;
diff --git a/winit/src/system.rs b/winit/src/system.rs
index 3a6a8a8e..069efa29 100644
--- a/winit/src/system.rs
+++ b/winit/src/system.rs
@@ -1,7 +1,7 @@
//! Access the native system.
use crate::graphics::compositor;
-use crate::native::command::{self, Command};
-use crate::native::system::{Action, Information};
+use crate::runtime::command::{self, Command};
+use crate::runtime::system::{Action, Information};
/// Query for available system information.
pub fn fetch_information<Message>(