Expose system module through feature flag
This commit is contained in:
parent
5eefa5d4ea
commit
93bfe2c75e
8 changed files with 30 additions and 14 deletions
|
|
@ -42,6 +42,8 @@ smol = ["iced_futures/smol"]
|
||||||
palette = ["iced_core/palette"]
|
palette = ["iced_core/palette"]
|
||||||
# Enables pure, virtual widgets in the `pure` module
|
# Enables pure, virtual widgets in the `pure` module
|
||||||
pure = ["iced_pure", "iced_graphics/pure"]
|
pure = ["iced_pure", "iced_graphics/pure"]
|
||||||
|
# Enables querying system information
|
||||||
|
system = ["iced_winit/system"]
|
||||||
|
|
||||||
[badges]
|
[badges]
|
||||||
maintenance = { status = "actively-developed" }
|
maintenance = { status = "actively-developed" }
|
||||||
|
|
|
||||||
|
|
@ -6,5 +6,5 @@ edition = "2021"
|
||||||
publish = false
|
publish = false
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
iced = { path = "../.." }
|
iced = { path = "../..", features = ["system"] }
|
||||||
bytesize = { version = "1.1.0" }
|
bytesize = { version = "1.1.0" }
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ categories = ["gui"]
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
debug = ["iced_winit/debug"]
|
debug = ["iced_winit/debug"]
|
||||||
|
system = ["iced_winit/system"]
|
||||||
|
|
||||||
[dependencies.log]
|
[dependencies.log]
|
||||||
version = "0.4"
|
version = "0.4"
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ pub mod application;
|
||||||
pub use iced_winit::clipboard;
|
pub use iced_winit::clipboard;
|
||||||
pub use iced_winit::conversion;
|
pub use iced_winit::conversion;
|
||||||
pub use iced_winit::settings;
|
pub use iced_winit::settings;
|
||||||
pub use iced_winit::system;
|
|
||||||
pub use iced_winit::window;
|
pub use iced_winit::window;
|
||||||
pub use iced_winit::{Error, Mode};
|
pub use iced_winit::{Error, Mode};
|
||||||
|
|
||||||
|
|
@ -32,3 +31,6 @@ pub use application::Application;
|
||||||
pub use clipboard::Clipboard;
|
pub use clipboard::Clipboard;
|
||||||
#[doc(no_inline)]
|
#[doc(no_inline)]
|
||||||
pub use settings::Settings;
|
pub use settings::Settings;
|
||||||
|
|
||||||
|
#[cfg(feature = "system")]
|
||||||
|
pub use iced_winit::system;
|
||||||
|
|
|
||||||
|
|
@ -224,8 +224,10 @@ pub use settings::Settings;
|
||||||
|
|
||||||
pub use runtime::alignment;
|
pub use runtime::alignment;
|
||||||
pub use runtime::futures;
|
pub use runtime::futures;
|
||||||
pub use runtime::system;
|
|
||||||
pub use runtime::{
|
pub use runtime::{
|
||||||
Alignment, Background, Color, Command, ContentFit, Font, Length, Point,
|
Alignment, Background, Color, Command, ContentFit, Font, Length, Point,
|
||||||
Rectangle, Size, Subscription, Vector,
|
Rectangle, Size, Subscription, Vector,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#[cfg(feature = "system")]
|
||||||
|
pub use runtime::system;
|
||||||
|
|
|
||||||
|
|
@ -12,12 +12,12 @@ categories = ["gui"]
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
debug = ["iced_native/debug"]
|
debug = ["iced_native/debug"]
|
||||||
|
system = ["sysinfo"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
window_clipboard = "0.2"
|
window_clipboard = "0.2"
|
||||||
log = "0.4"
|
log = "0.4"
|
||||||
thiserror = "1.0"
|
thiserror = "1.0"
|
||||||
sysinfo = "0.23"
|
|
||||||
|
|
||||||
[dependencies.winit]
|
[dependencies.winit]
|
||||||
version = "0.26"
|
version = "0.26"
|
||||||
|
|
@ -42,3 +42,7 @@ version = "0.3.6"
|
||||||
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
|
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
|
||||||
version = "0.3"
|
version = "0.3"
|
||||||
features = ["Document", "Window"]
|
features = ["Document", "Window"]
|
||||||
|
|
||||||
|
[dependencies.sysinfo]
|
||||||
|
version = "0.23"
|
||||||
|
optional = true
|
||||||
|
|
|
||||||
|
|
@ -542,7 +542,7 @@ pub fn run_command<Message: 'static + std::fmt::Debug + Send, E: Executor>(
|
||||||
clipboard: &mut Clipboard,
|
clipboard: &mut Clipboard,
|
||||||
proxy: &mut winit::event_loop::EventLoopProxy<Message>,
|
proxy: &mut winit::event_loop::EventLoopProxy<Message>,
|
||||||
window: &winit::window::Window,
|
window: &winit::window::Window,
|
||||||
graphics_info: impl FnOnce() -> compositor::Information + Copy,
|
_graphics_info: impl FnOnce() -> compositor::Information + Copy,
|
||||||
) {
|
) {
|
||||||
use iced_native::command;
|
use iced_native::command;
|
||||||
use iced_native::system;
|
use iced_native::system;
|
||||||
|
|
@ -580,15 +580,18 @@ pub fn run_command<Message: 'static + std::fmt::Debug + Send, E: Executor>(
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
command::Action::System(action) => match action {
|
command::Action::System(action) => match action {
|
||||||
system::Action::QueryInformation(tag) => {
|
system::Action::QueryInformation(_tag) => {
|
||||||
let information =
|
#[cfg(feature = "sysinfo")]
|
||||||
crate::system::information(graphics_info());
|
{
|
||||||
|
let information =
|
||||||
|
crate::system::information(_graphics_info());
|
||||||
|
|
||||||
let message = tag(information);
|
let message = _tag(information);
|
||||||
|
|
||||||
proxy
|
proxy
|
||||||
.send_event(message)
|
.send_event(message)
|
||||||
.expect("Send message to event loop");
|
.expect("Send message to event loop");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -31,9 +31,11 @@ pub mod application;
|
||||||
pub mod clipboard;
|
pub mod clipboard;
|
||||||
pub mod conversion;
|
pub mod conversion;
|
||||||
pub mod settings;
|
pub mod settings;
|
||||||
pub mod system;
|
|
||||||
pub mod window;
|
pub mod window;
|
||||||
|
|
||||||
|
#[cfg(feature = "system")]
|
||||||
|
pub mod system;
|
||||||
|
|
||||||
mod error;
|
mod error;
|
||||||
mod mode;
|
mod mode;
|
||||||
mod position;
|
mod position;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue