#[cfg(target_os = "linux")]
pub(crate) mod keymap;
#[cfg(target_os = "linux")]
pub(crate) mod uinput;
#[cfg(target_os = "linux")]
pub mod portal;
#[cfg(not(target_os = "linux"))]
pub mod portal {
use auv_driver_common::error::{DriverError, DriverResult};
use auv_driver_common::geometry::Point;
use auv_driver_common::input::{Click, Scroll};
#[derive(Debug, Default)]
pub struct PortalClipboard;
impl PortalClipboard {
pub fn open(_app_id: Option<&String>) -> DriverResult<ClipboardSession> {
Err(DriverError::unsupported("linux.portal.clipboard"))
}
}
#[derive(Debug, Default)]
pub struct ClipboardSession;
impl ClipboardSession {
pub fn snapshot(&mut self) -> DriverResult<String> {
Err(DriverError::unsupported("linux.portal.clipboard"))
}
pub fn set_text(&mut self, _text: &str) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.clipboard"))
}
}
#[derive(Debug, Default)]
pub struct PortalInput;
impl PortalInput {
pub fn open(_restore_tokens: Option<&RestoreTokenStore>, _app_id: Option<&String>) -> DriverResult<InputSession> {
Err(DriverError::unsupported("linux.portal.input"))
}
}
#[derive(Clone, Debug, Default)]
pub struct RestoreTokenStore;
impl RestoreTokenStore {
pub(crate) fn new(_root: std::path::PathBuf) -> Self {
Self
}
}
#[derive(Debug, Default)]
pub struct InputSession;
impl InputSession {
pub fn button(&mut self, _button: auv_driver_common::MouseButton, _down: bool) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn move_to(&mut self, _point: Point) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn click_at(
&mut self,
_point: Point,
_button: auv_driver_common::MouseButton,
_click: Click,
_modifiers: &[i32],
) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn scroll(&mut self, _scroll: Scroll) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn scroll_at(&mut self, _point: Point, _scroll: Scroll) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn key_press(&mut self, _keysym: i32) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn key_transition(&mut self, _keysym: i32, _down: bool) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
pub fn key_chord(&mut self, _modifiers: &[i32], _key: i32) -> DriverResult<()> {
Err(DriverError::unsupported("linux.portal.input"))
}
}
#[derive(Debug, Default)]
pub struct ScreenCastSession;
impl ScreenCastSession {
pub fn open_monitor(_restore_tokens: Option<&RestoreTokenStore>, _app_id: Option<&String>) -> DriverResult<Self> {
Err(DriverError::unsupported("linux.portal.screencast"))
}
}
}