Skip to main content

iced_layershell/
lib.rs

1#![doc = include_str!("../README.md")]
2pub mod actions;
3pub mod build_pattern;
4mod clipboard;
5mod conversion;
6mod error;
7mod event;
8mod multi_window;
9mod proxy;
10mod user_interface;
11
12pub mod settings;
13
14pub mod reexport {
15    pub use layershellev::NewInputPanelSettings;
16    pub use layershellev::NewLayerShellSettings;
17    pub use layershellev::OutputOption;
18    pub use layershellev::WithConnection;
19    pub use layershellev::reexport::Anchor;
20    pub use layershellev::reexport::KeyboardInteractivity;
21    pub use layershellev::reexport::Layer;
22    pub use layershellev::reexport::wayland_client::{WlRegion, wl_keyboard};
23    pub mod core {
24        pub use iced_core::*;
25    }
26    pub use iced_core::window::Id as IcedId;
27    pub use iced_runtime::Task;
28}
29
30mod ime_preedit;
31
32pub use iced_layershell_macros::to_layer_message;
33
34pub use error::Error;
35
36/// Opt-out for clipboard initialization. Call this before starting the
37/// runtime when your app has no text input and doesn't need paste/copy —
38/// this skips spawning the always-on smithay-clipboard worker thread.
39pub fn disable_clipboard() {
40    clipboard::set_disabled();
41}
42
43pub type Result = std::result::Result<(), error::Error>;
44use iced_core::theme::Style as Appearance;
45
46use iced_core::theme::Base as DefaultStyle;
47
48// layershell application
49pub use build_pattern::application;
50pub use build_pattern::daemon;
51
52pub use settings::Settings;