Skip to main content

lingxia_platform/
traits.rs

1use std::future::Future;
2use std::pin::Pin;
3
4use crate::error::PlatformError;
5
6/// A platform operation that finishes asynchronously and reports only success
7/// or failure. Named for its shape rather than for the first caller that
8/// needed one, so a second caller does not have to borrow an unrelated alias.
9pub type PlatformFuture = Pin<Box<dyn Future<Output = Result<(), PlatformError>> + Send + 'static>>;
10
11pub mod app_runtime;
12pub mod clipboard;
13pub mod device;
14pub mod file;
15pub mod keyboard;
16pub mod location;
17pub mod media_interaction;
18pub mod media_runtime;
19pub mod mouse;
20pub mod network;
21pub mod pull_to_refresh;
22pub mod screenshot;
23pub mod secure_store;
24pub mod share;
25pub mod stream_decoder;
26pub mod ui;
27pub mod update;
28pub mod video_player;
29pub mod wifi;
30
31pub mod prelude {
32    pub use super::app_runtime::AppRuntime;
33    pub use super::clipboard::ClipboardService;
34    pub use super::device::{Device, DeviceHardware};
35    pub use super::file::FileService;
36    pub use super::keyboard::{
37        AppKeyboard, AppKeyboardAction, AppKeyboardModifier, AppKeyboardRequest,
38    };
39    pub use super::location::Location;
40    pub use super::media_interaction::MediaInteraction;
41    pub use super::media_runtime::MediaRuntime;
42    pub use super::mouse::{AppMouse, AppMouseAction, AppMouseButton, AppMouseRequest};
43    pub use super::network::Network;
44    pub use super::pull_to_refresh::PullToRefresh;
45    pub use super::screenshot::AppScreenshot;
46    pub use super::secure_store::SecureStore;
47    pub use super::share::ShareService;
48    pub use super::ui::{SurfacePresenter, UIUpdate, UserFeedback};
49    pub use super::update::UpdateService;
50    pub use super::video_player::{VideoPlayerHandle, VideoPlayerManager};
51    pub use super::wifi::Wifi;
52}