ashpd/desktop/
mod.rs

1mod handle_token;
2pub(crate) mod request;
3mod session;
4#[cfg_attr(docsrs, doc(cfg(feature = "backend")))]
5#[cfg(feature = "backend")]
6pub use self::handle_token::HandleToken;
7#[cfg(not(feature = "backend"))]
8pub(crate) use self::handle_token::HandleToken;
9pub use self::{
10    request::{Request, Response, ResponseError, ResponseType},
11    session::{Session, SessionPortal},
12};
13mod color;
14pub use color::Color;
15mod icon;
16pub use icon::Icon;
17
18pub mod account;
19pub mod background;
20pub mod camera;
21pub mod clipboard;
22#[deprecated = "The portal does not serve any purpose as nothing really can make use of it as is."]
23pub mod device;
24pub mod dynamic_launcher;
25pub mod email;
26/// Open/save file(s) chooser.
27pub mod file_chooser;
28/// Enable/disable/query the status of Game Mode.
29pub mod game_mode;
30/// Register global shortcuts
31pub mod global_shortcuts;
32/// Inhibit the session from being restarted or the user from logging out.
33pub mod inhibit;
34/// Capture input events from physical or logical devices.
35pub mod input_capture;
36/// Query the user's GPS location.
37pub mod location;
38/// Monitor memory level.
39pub mod memory_monitor;
40/// Check the status of the network on a user's machine.
41pub mod network_monitor;
42/// Send/withdraw notifications.
43pub mod notification;
44pub mod open_uri;
45/// Power profile monitoring.
46pub mod power_profile_monitor;
47/// Print a document.
48pub mod print;
49/// Proxy information.
50pub mod proxy_resolver;
51pub mod realtime;
52/// Start a remote desktop session and interact with it.
53pub mod remote_desktop;
54pub mod screencast;
55pub mod screenshot;
56/// Retrieve a per-application secret used to encrypt confidential data inside
57/// the sandbox.
58pub mod secret;
59/// Read & listen to system settings changes.
60pub mod settings;
61pub mod trash;
62pub mod usb;
63pub mod wallpaper;
64
65#[cfg_attr(feature = "glib", derive(glib::Enum))]
66#[cfg_attr(feature = "glib", enum_type(name = "AshpdPersistMode"))]
67#[derive(
68    Default, serde_repr::Serialize_repr, PartialEq, Eq, Debug, Copy, Clone, zbus::zvariant::Type,
69)]
70#[doc(alias = "XdpPersistMode")]
71#[repr(u32)]
72/// Persistence mode for a screencast or remote desktop session.
73pub enum PersistMode {
74    #[doc(alias = "XDP_PERSIST_MODE_NONE")]
75    #[default]
76    /// Do not persist.
77    DoNot = 0,
78    #[doc(alias = "XDP_PERSIST_MODE_TRANSIENT")]
79    /// Persist while the application is running.
80    Application = 1,
81    #[doc(alias = "XDP_PERSIST_MODE_PERSISTENT")]
82    /// Persist until explicitly revoked.
83    ExplicitlyRevoked = 2,
84}