pub struct LinuxControllerConfig {
pub screencap_method: MaaLinuxScreencapMethod,
pub input_method: MaaLinuxInputMethod,
pub wlr_socket_path: Option<String>,
pub pw_socket_fd: Option<i32>,
pub pw_node_id: Option<u32>,
pub uinput_screen_width: Option<i32>,
pub uinput_screen_height: Option<i32>,
pub uinput_path: Option<String>,
pub eis_socket_path: Option<String>,
pub use_win32_vk_code: Option<bool>,
}Expand description
Configuration for crate::controller::Controller::new_linux.
Fields§
§screencap_method: MaaLinuxScreencapMethodScreencap method. Use LinuxScreencapMethod::bits to obtain the value.
input_method: MaaLinuxInputMethodInput method. Use LinuxInputMethod::bits to obtain the value.
wlr_socket_path: Option<String>Wayland socket path required by WLR screencap or input.
pw_socket_fd: Option<i32>PipeWire socket FD obtained from the ScreenCast portal.
Only required for PipeWire monitor capture via xdg-desktop-portal
(see crate::toolkit::PortalHelper). Ignored for PipeWire
session-daemon node capture.
pw_node_id: Option<u32>PipeWire node ID.
Used together with pw_socket_fd for portal monitor capture, or alone
to attach to a session-daemon node directly (e.g. a gamescope instance
found via crate::toolkit::Toolkit::find_gamescope_instances).
uinput_screen_width: Option<i32>Screen width in pixels for the uinput absolute axis range.
uinput_screen_height: Option<i32>Screen height in pixels for the uinput absolute axis range.
uinput_path: Option<String>UInput device path. MaaFramework defaults to /dev/uinput when omitted.
eis_socket_path: Option<String>Libei (EIS) socket path, e.g. /run/user/1000/gamescope-0-ei.
Required by the LinuxInputMethod::LIBEI input method. The socket is
provided by the compositor (e.g. gamescope’s gamescope-<n>-ei) and can
be discovered via crate::toolkit::Toolkit::find_gamescope_instances.
Requires the system libei library at runtime; text input additionally
needs libei >= 1.6.0 (Ubuntu 24.04 ships 1.2.1 and needs an upgrade).
use_win32_vk_code: Option<bool>Interpret key codes as Win32 virtual-key codes instead of raw evdev codes.
Trait Implementations§
Source§impl Clone for LinuxControllerConfig
impl Clone for LinuxControllerConfig
Source§fn clone(&self) -> LinuxControllerConfig
fn clone(&self) -> LinuxControllerConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more