Struct x11rb::rust_connection::RustConnection

source ·
pub struct RustConnection<S: Stream = DefaultStream> {
    inner: Mutex<ConnectionInner>,
    stream: S,
    packet_reader: Mutex<PacketReader>,
    reader_condition: Condvar,
    setup: Setup,
    extension_manager: Mutex<ExtensionManager>,
    maximum_request_bytes: Mutex<MaxRequestBytes>,
    id_allocator: Mutex<IdAllocator>,
}
Expand description

A connection to an X11 server implemented in pure rust

This type is generic over S, which allows to use a generic stream to communicate with the server. This stream can written to and read from, but it can also be polled, meaning that one checks if new data can be read or written.

RustConnection always used an internal buffer for reading, so R does not need to be buffered.

Fields§

§inner: Mutex<ConnectionInner>§stream: S§packet_reader: Mutex<PacketReader>§reader_condition: Condvar§setup: Setup§extension_manager: Mutex<ExtensionManager>§maximum_request_bytes: Mutex<MaxRequestBytes>§id_allocator: Mutex<IdAllocator>

Implementations§

source§

impl RustConnection<DefaultStream>

source

pub fn connect(dpy_name: Option<&str>) -> Result<(Self, usize), ConnectError>

Establish a new connection.

If no dpy_name is provided, the value from $DISPLAY is used.

source§

impl<S: Stream> RustConnection<S>

source

pub fn connect_to_stream(stream: S, screen: usize) -> Result<Self, ConnectError>

Establish a new connection to the given streams.

read is used for reading data from the X11 server and write is used for writing. screen is the number of the screen that should be used. This function checks that a screen with that number exists.

source

pub fn connect_to_stream_with_auth_info( stream: S, screen: usize, auth_name: Vec<u8>, auth_data: Vec<u8>, ) -> Result<Self, ConnectError>

Establish a new connection to the given streams.

read is used for reading data from the X11 server and write is used for writing. screen is the number of the screen that should be used. This function checks that a screen with that number exists.

The parameters auth_name and auth_data are used for the members authorization_protocol_name and authorization_protocol_data of the SetupRequest that is sent to the X11 server.

source

pub fn for_connected_stream( stream: S, setup: Setup, ) -> Result<Self, ConnectError>

Establish a new connection for an already connected stream.

The given stream is used for communicating with the X11 server. It is assumed that setup was just received from the server. Thus, the first reply to a request that is sent will have sequence number one.

source

fn send_request( &self, bufs: &[IoSlice<'_>], fds: Vec<RawFdContainer>, kind: ReplyFdKind, ) -> Result<SequenceNumber, ConnectionError>

Internal function for actually sending a request.

This function “does the actual work” for send_request_with_reply() and send_request_without_reply().

source

fn send_sync<'a>( &'a self, inner: MutexGuard<'a, ConnectionInner>, ) -> Result<MutexGuard<'a, ConnectionInner>, Error>

Send a synchronisation packet to the X11 server.

This function sends a GetInputFocus request to the X11 server and arranges for its reply to be ignored. This ensures that a reply is expected (ConnectionInner.next_reply_expected increases).

source

fn write_all_vectored<'a>( &'a self, inner: MutexGuard<'a, ConnectionInner>, bufs: &[IoSlice<'_>], fds: Vec<RawFdContainer>, ) -> Result<MutexGuard<'a, ConnectionInner>>

Write a set of buffers on a writer. May also read packets from the server.

source

fn flush_impl<'a>( &'a self, inner: MutexGuard<'a, ConnectionInner>, ) -> Result<MutexGuard<'a, ConnectionInner>>

source

fn read_packet_and_enqueue<'a>( &'a self, inner: MutexGuard<'a, ConnectionInner>, mode: BlockingMode, ) -> Result<MutexGuard<'a, ConnectionInner>, Error>

Read a packet from the connection.

This function waits for an X11 packet to be received. It drops the mutex protecting the inner data while waiting for a packet so that other threads can make progress. For this reason, you need to pass in a MutexGuard to be dropped. This function locks the mutex again and returns a new MutexGuard.

Note: If mode is BlockingMode::Blocking, the lock on inner will be temporarily released. While sending a request, inner must be kept locked to avoid sending the data of different requests interleaved. So, when read_packet_and_enqueue is called as part of a write, it must always be done with mode set to BlockingMode::NonBlocking.

source

fn prefetch_maximum_request_bytes_impl( &self, max_bytes: &mut MutexGuard<'_, MaxRequestBytes>, )

source

pub fn stream(&self) -> &S

Returns a reference to the contained stream.

Trait Implementations§

source§

impl<S: Stream> Connection for RustConnection<S>

source§

fn wait_for_raw_event_with_sequence( &self, ) -> Result<RawEventAndSeqNumber<Vec<u8>>, ConnectionError>

Wait for a new raw/unparsed event from the X11 server.
source§

fn poll_for_raw_event_with_sequence( &self, ) -> Result<Option<RawEventAndSeqNumber<Vec<u8>>>, ConnectionError>

Poll for a new unparsed/raw event from the X11 server.
source§

fn flush(&self) -> Result<(), ConnectionError>

Send all pending requests to the server. Read more
source§

fn setup(&self) -> &Setup

Get the setup information sent by the X11 server. Read more
source§

fn generate_id(&self) -> Result<u32, ReplyOrIdError>

Generate a new X11 identifier. Read more
source§

fn wait_for_event(&self) -> Result<Event, ConnectionError>

Wait for a new event from the X11 server.
source§

fn wait_for_raw_event(&self) -> Result<Self::Buf, ConnectionError>

Wait for a new raw/unparsed event from the X11 server.
source§

fn wait_for_event_with_sequence( &self, ) -> Result<EventAndSeqNumber, ConnectionError>

Wait for a new event from the X11 server.
source§

fn poll_for_event(&self) -> Result<Option<Event>, ConnectionError>

Poll for a new event from the X11 server.
source§

fn poll_for_raw_event(&self) -> Result<Option<Self::Buf>, ConnectionError>

Poll for a new raw/unparsed event from the X11 server.
source§

fn poll_for_event_with_sequence( &self, ) -> Result<Option<EventAndSeqNumber>, ConnectionError>

Poll for a new event from the X11 server.
source§

impl<S: Debug + Stream> Debug for RustConnection<S>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<S: Stream> RequestConnection for RustConnection<S>

§

type Buf = Vec<u8>

Type used as buffer to store raw replies or events before they are parsed.
source§

fn send_request_with_reply<Reply>( &self, bufs: &[IoSlice<'_>], fds: Vec<RawFdContainer>, ) -> Result<Cookie<'_, Self, Reply>, ConnectionError>
where Reply: TryParse,

Send a request with a reply to the server. Read more
source§

fn send_request_with_reply_with_fds<Reply>( &self, bufs: &[IoSlice<'_>], fds: Vec<RawFdContainer>, ) -> Result<CookieWithFds<'_, Self, Reply>, ConnectionError>
where Reply: TryParseFd,

Send a request with a reply containing file descriptors to the server. Read more
source§

fn send_request_without_reply( &self, bufs: &[IoSlice<'_>], fds: Vec<RawFdContainer>, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Send a request without a reply to the server. Read more
source§

fn discard_reply( &self, sequence: SequenceNumber, _kind: RequestKind, mode: DiscardMode, )

A reply to an error should be discarded. Read more
source§

fn prefetch_extension_information( &self, extension_name: &'static str, ) -> Result<(), ConnectionError>

Prefetches information about an extension. Read more
source§

fn extension_information( &self, extension_name: &'static str, ) -> Result<Option<ExtensionInformation>, ConnectionError>

Get information about an extension. Read more
source§

fn wait_for_reply_or_raw_error( &self, sequence: SequenceNumber, ) -> Result<ReplyOrError<Vec<u8>>, ConnectionError>

Wait for the reply to a request. Read more
source§

fn wait_for_reply( &self, sequence: SequenceNumber, ) -> Result<Option<Vec<u8>>, ConnectionError>

Wait for the reply to a request. Read more
source§

fn check_for_raw_error( &self, sequence: SequenceNumber, ) -> Result<Option<<RustConnection as RequestConnection>::Buf>, ConnectionError>

Check whether a request that does not have a reply caused an X11 error. Read more
source§

fn wait_for_reply_with_fds_raw( &self, sequence: SequenceNumber, ) -> Result<ReplyOrError<BufWithFds, <RustConnection as RequestConnection>::Buf>, ConnectionError>

Wait for the reply to a request that has FDs. Read more
source§

fn maximum_request_bytes(&self) -> usize

The maximum number of bytes that the X11 server accepts in a request.
source§

fn prefetch_maximum_request_bytes(&self)

Prefetches the maximum request length. Read more
source§

fn parse_error(&self, error: &[u8]) -> Result<X11Error, ParseError>

Parse a generic error.
source§

fn parse_event(&self, event: &[u8]) -> Result<Event, ParseError>

Parse a generic event.
source§

fn send_trait_request_with_reply<R>( &self, request: R, ) -> Result<Cookie<'_, Self, <R as ReplyRequest>::Reply>, ConnectionError>
where R: ReplyRequest,

Send a request with a reply to the server. Read more
source§

fn send_trait_request_with_reply_with_fds<R>( &self, request: R, ) -> Result<CookieWithFds<'_, Self, R::Reply>, ConnectionError>
where R: ReplyFDsRequest,

Send a request with a reply containing file descriptors to the server. Read more
source§

fn send_trait_request_without_reply<R>( &self, request: R, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where R: VoidRequest,

Send a request without a reply to the server. Read more
source§

fn wait_for_reply_or_error( &self, sequence: SequenceNumber, ) -> Result<Self::Buf, ReplyError>

Wait for the reply to a request. Read more
source§

fn wait_for_reply_with_fds( &self, sequence: SequenceNumber, ) -> Result<BufWithFds<Self::Buf>, ReplyError>

Wait for the reply to a request that has FDs. Read more
source§

fn check_for_error(&self, sequence: SequenceNumber) -> Result<(), ReplyError>

Check whether a request that does not have a reply caused an X11 error. Read more

Auto Trait Implementations§

§

impl<S = DefaultStream> !Freeze for RustConnection<S>

§

impl<S> RefUnwindSafe for RustConnection<S>
where S: RefUnwindSafe,

§

impl<S> Send for RustConnection<S>
where S: Send,

§

impl<S> Sync for RustConnection<S>
where S: Sync,

§

impl<S> Unpin for RustConnection<S>
where S: Unpin,

§

impl<S> UnwindSafe for RustConnection<S>
where S: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<C> ConnectionExt for C

source§

fn xkb_use_extension( &self, wanted_major: u16, wanted_minor: u16, ) -> Result<Cookie<'_, Self, UseExtensionReply>, ConnectionError>

source§

fn xkb_select_events<'c, 'input>( &'c self, device_spec: DeviceSpec, clear: EventType, select_all: EventType, affect_map: MapPart, map: MapPart, details: &'input SelectEventsAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_bell( &self, device_spec: DeviceSpec, bell_class: BellClassSpec, bell_id: IDSpec, percent: i8, force_sound: bool, event_only: bool, pitch: i16, duration: i16, name: Atom, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xkb_get_state( &self, device_spec: DeviceSpec, ) -> Result<Cookie<'_, Self, GetStateReply>, ConnectionError>

source§

fn xkb_latch_lock_state( &self, device_spec: DeviceSpec, affect_mod_locks: ModMask, mod_locks: ModMask, lock_group: bool, group_lock: Group, affect_mod_latches: ModMask, latch_group: bool, group_latch: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xkb_get_controls( &self, device_spec: DeviceSpec, ) -> Result<Cookie<'_, Self, GetControlsReply>, ConnectionError>

source§

fn xkb_set_controls<'c, 'input>( &'c self, device_spec: DeviceSpec, affect_internal_real_mods: ModMask, internal_real_mods: ModMask, affect_ignore_lock_real_mods: ModMask, ignore_lock_real_mods: ModMask, affect_internal_virtual_mods: VMod, internal_virtual_mods: VMod, affect_ignore_lock_virtual_mods: VMod, ignore_lock_virtual_mods: VMod, mouse_keys_dflt_btn: u8, groups_wrap: u8, access_x_options: AXOption, affect_enabled_controls: BoolCtrl, enabled_controls: BoolCtrl, change_controls: Control, repeat_delay: u16, repeat_interval: u16, slow_keys_delay: u16, debounce_delay: u16, mouse_keys_delay: u16, mouse_keys_interval: u16, mouse_keys_time_to_max: u16, mouse_keys_max_speed: u16, mouse_keys_curve: i16, access_x_timeout: u16, access_x_timeout_mask: BoolCtrl, access_x_timeout_values: BoolCtrl, access_x_timeout_options_mask: AXOption, access_x_timeout_options_values: AXOption, per_key_repeat: &'input [u8; 32], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_get_map( &self, device_spec: DeviceSpec, full: MapPart, partial: MapPart, first_type: u8, n_types: u8, first_key_sym: Keycode, n_key_syms: u8, first_key_action: Keycode, n_key_actions: u8, first_key_behavior: Keycode, n_key_behaviors: u8, virtual_mods: VMod, first_key_explicit: Keycode, n_key_explicit: u8, first_mod_map_key: Keycode, n_mod_map_keys: u8, first_v_mod_map_key: Keycode, n_v_mod_map_keys: u8, ) -> Result<Cookie<'_, Self, GetMapReply>, ConnectionError>

source§

fn xkb_set_map<'c, 'input>( &'c self, device_spec: DeviceSpec, flags: SetMapFlags, min_key_code: Keycode, max_key_code: Keycode, first_type: u8, n_types: u8, first_key_sym: Keycode, n_key_syms: u8, total_syms: u16, first_key_action: Keycode, n_key_actions: u8, total_actions: u16, first_key_behavior: Keycode, n_key_behaviors: u8, total_key_behaviors: u8, first_key_explicit: Keycode, n_key_explicit: u8, total_key_explicit: u8, first_mod_map_key: Keycode, n_mod_map_keys: u8, total_mod_map_keys: u8, first_v_mod_map_key: Keycode, n_v_mod_map_keys: u8, total_v_mod_map_keys: u8, virtual_mods: VMod, values: &'input SetMapAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_get_compat_map( &self, device_spec: DeviceSpec, groups: SetOfGroup, get_all_si: bool, first_si: u16, n_si: u16, ) -> Result<Cookie<'_, Self, GetCompatMapReply>, ConnectionError>

source§

fn xkb_set_compat_map<'c, 'input>( &'c self, device_spec: DeviceSpec, recompute_actions: bool, truncate_si: bool, groups: SetOfGroup, first_si: u16, si: &'input [SymInterpret], group_maps: &'input [ModDef], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_get_indicator_state( &self, device_spec: DeviceSpec, ) -> Result<Cookie<'_, Self, GetIndicatorStateReply>, ConnectionError>

source§

fn xkb_get_indicator_map( &self, device_spec: DeviceSpec, which: u32, ) -> Result<Cookie<'_, Self, GetIndicatorMapReply>, ConnectionError>

source§

fn xkb_set_indicator_map<'c, 'input>( &'c self, device_spec: DeviceSpec, which: u32, maps: &'input [IndicatorMap], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_get_named_indicator<A>( &self, device_spec: DeviceSpec, led_class: LedClass, led_id: A, indicator: Atom, ) -> Result<Cookie<'_, Self, GetNamedIndicatorReply>, ConnectionError>
where A: Into<IDSpec>,

source§

fn xkb_set_named_indicator<A>( &self, device_spec: DeviceSpec, led_class: LedClass, led_id: A, indicator: Atom, set_state: bool, on: bool, set_map: bool, create_map: bool, map_flags: IMFlag, map_which_groups: IMGroupsWhich, map_groups: SetOfGroups, map_which_mods: IMModsWhich, map_real_mods: ModMask, map_vmods: VMod, map_ctrls: BoolCtrl, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<IDSpec>,

source§

fn xkb_get_names( &self, device_spec: DeviceSpec, which: NameDetail, ) -> Result<Cookie<'_, Self, GetNamesReply>, ConnectionError>

source§

fn xkb_set_names<'c, 'input>( &'c self, device_spec: DeviceSpec, virtual_mods: VMod, first_type: u8, n_types: u8, first_kt_levelt: u8, n_kt_levels: u8, indicators: u32, group_names: SetOfGroup, n_radio_groups: u8, first_key: Keycode, n_keys: u8, n_key_aliases: u8, total_kt_level_names: u16, values: &'input SetNamesAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_per_client_flags( &self, device_spec: DeviceSpec, change: PerClientFlag, value: PerClientFlag, ctrls_to_change: BoolCtrl, auto_ctrls: BoolCtrl, auto_ctrls_values: BoolCtrl, ) -> Result<Cookie<'_, Self, PerClientFlagsReply>, ConnectionError>

source§

fn xkb_list_components( &self, device_spec: DeviceSpec, max_names: u16, ) -> Result<Cookie<'_, Self, ListComponentsReply>, ConnectionError>

source§

fn xkb_get_kbd_by_name( &self, device_spec: DeviceSpec, need: GBNDetail, want: GBNDetail, load: bool, ) -> Result<Cookie<'_, Self, GetKbdByNameReply>, ConnectionError>

source§

fn xkb_get_device_info<A>( &self, device_spec: DeviceSpec, wanted: XIFeature, all_buttons: bool, first_button: u8, n_buttons: u8, led_class: LedClass, led_id: A, ) -> Result<Cookie<'_, Self, GetDeviceInfoReply>, ConnectionError>
where A: Into<IDSpec>,

source§

fn xkb_set_device_info<'c, 'input>( &'c self, device_spec: DeviceSpec, first_btn: u8, change: XIFeature, btn_actions: &'input [Action], leds: &'input [DeviceLedInfo], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xkb_set_debugging_flags<'c, 'input>( &'c self, affect_flags: u32, flags: u32, affect_ctrls: u32, ctrls: u32, message: &'input [String8], ) -> Result<Cookie<'c, Self, SetDebuggingFlagsReply>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn bigreq_enable( &self, ) -> Result<Cookie<'_, Self, EnableReply>, ConnectionError>

Enable the BIG-REQUESTS extension. Read more
source§

impl<C> ConnectionExt for C

source§

fn randr_query_version( &self, major_version: u32, minor_version: u32, ) -> Result<Cookie<'_, Self, QueryVersionReply>, ConnectionError>

source§

fn randr_set_screen_config( &self, window: Window, timestamp: Timestamp, config_timestamp: Timestamp, size_id: u16, rotation: Rotation, rate: u16, ) -> Result<Cookie<'_, Self, SetScreenConfigReply>, ConnectionError>

source§

fn randr_select_input( &self, window: Window, enable: NotifyMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_screen_info( &self, window: Window, ) -> Result<Cookie<'_, Self, GetScreenInfoReply>, ConnectionError>

source§

fn randr_get_screen_size_range( &self, window: Window, ) -> Result<Cookie<'_, Self, GetScreenSizeRangeReply>, ConnectionError>

source§

fn randr_set_screen_size( &self, window: Window, width: u16, height: u16, mm_width: u32, mm_height: u32, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_screen_resources( &self, window: Window, ) -> Result<Cookie<'_, Self, GetScreenResourcesReply>, ConnectionError>

source§

fn randr_get_output_info( &self, output: Output, config_timestamp: Timestamp, ) -> Result<Cookie<'_, Self, GetOutputInfoReply>, ConnectionError>

source§

fn randr_list_output_properties( &self, output: Output, ) -> Result<Cookie<'_, Self, ListOutputPropertiesReply>, ConnectionError>

source§

fn randr_query_output_property( &self, output: Output, property: Atom, ) -> Result<Cookie<'_, Self, QueryOutputPropertyReply>, ConnectionError>

source§

fn randr_configure_output_property<'c, 'input>( &'c self, output: Output, property: Atom, pending: bool, range: bool, values: &'input [i32], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_change_output_property<'c, 'input>( &'c self, output: Output, property: Atom, type_: Atom, format: u8, mode: PropMode, num_units: u32, data: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_delete_output_property( &self, output: Output, property: Atom, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_output_property<A>( &self, output: Output, property: Atom, type_: A, long_offset: u32, long_length: u32, delete: bool, pending: bool, ) -> Result<Cookie<'_, Self, GetOutputPropertyReply>, ConnectionError>
where A: Into<Atom>,

source§

fn randr_create_mode<'c, 'input>( &'c self, window: Window, mode_info: ModeInfo, name: &'input [u8], ) -> Result<Cookie<'c, Self, CreateModeReply>, ConnectionError>

source§

fn randr_destroy_mode( &self, mode: Mode, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_add_output_mode( &self, output: Output, mode: Mode, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_delete_output_mode( &self, output: Output, mode: Mode, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_crtc_info( &self, crtc: Crtc, config_timestamp: Timestamp, ) -> Result<Cookie<'_, Self, GetCrtcInfoReply>, ConnectionError>

source§

fn randr_set_crtc_config<'c, 'input>( &'c self, crtc: Crtc, timestamp: Timestamp, config_timestamp: Timestamp, x: i16, y: i16, mode: Mode, rotation: Rotation, outputs: &'input [Output], ) -> Result<Cookie<'c, Self, SetCrtcConfigReply>, ConnectionError>

source§

fn randr_get_crtc_gamma_size( &self, crtc: Crtc, ) -> Result<Cookie<'_, Self, GetCrtcGammaSizeReply>, ConnectionError>

source§

fn randr_get_crtc_gamma( &self, crtc: Crtc, ) -> Result<Cookie<'_, Self, GetCrtcGammaReply>, ConnectionError>

source§

fn randr_set_crtc_gamma<'c, 'input>( &'c self, crtc: Crtc, red: &'input [u16], green: &'input [u16], blue: &'input [u16], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_get_screen_resources_current( &self, window: Window, ) -> Result<Cookie<'_, Self, GetScreenResourcesCurrentReply>, ConnectionError>

source§

fn randr_set_crtc_transform<'c, 'input>( &'c self, crtc: Crtc, transform: Transform, filter_name: &'input [u8], filter_params: &'input [Fixed], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_get_crtc_transform( &self, crtc: Crtc, ) -> Result<Cookie<'_, Self, GetCrtcTransformReply>, ConnectionError>

source§

fn randr_get_panning( &self, crtc: Crtc, ) -> Result<Cookie<'_, Self, GetPanningReply>, ConnectionError>

source§

fn randr_set_panning( &self, crtc: Crtc, timestamp: Timestamp, left: u16, top: u16, width: u16, height: u16, track_left: u16, track_top: u16, track_width: u16, track_height: u16, border_left: i16, border_top: i16, border_right: i16, border_bottom: i16, ) -> Result<Cookie<'_, Self, SetPanningReply>, ConnectionError>

source§

fn randr_set_output_primary( &self, window: Window, output: Output, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_output_primary( &self, window: Window, ) -> Result<Cookie<'_, Self, GetOutputPrimaryReply>, ConnectionError>

source§

fn randr_get_providers( &self, window: Window, ) -> Result<Cookie<'_, Self, GetProvidersReply>, ConnectionError>

source§

fn randr_get_provider_info( &self, provider: Provider, config_timestamp: Timestamp, ) -> Result<Cookie<'_, Self, GetProviderInfoReply>, ConnectionError>

source§

fn randr_set_provider_offload_sink( &self, provider: Provider, sink_provider: Provider, config_timestamp: Timestamp, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_set_provider_output_source( &self, provider: Provider, source_provider: Provider, config_timestamp: Timestamp, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_list_provider_properties( &self, provider: Provider, ) -> Result<Cookie<'_, Self, ListProviderPropertiesReply>, ConnectionError>

source§

fn randr_query_provider_property( &self, provider: Provider, property: Atom, ) -> Result<Cookie<'_, Self, QueryProviderPropertyReply>, ConnectionError>

source§

fn randr_configure_provider_property<'c, 'input>( &'c self, provider: Provider, property: Atom, pending: bool, range: bool, values: &'input [i32], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_change_provider_property<'c, 'input>( &'c self, provider: Provider, property: Atom, type_: Atom, format: u8, mode: u8, num_items: u32, data: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn randr_delete_provider_property( &self, provider: Provider, property: Atom, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_get_provider_property( &self, provider: Provider, property: Atom, type_: Atom, long_offset: u32, long_length: u32, delete: bool, pending: bool, ) -> Result<Cookie<'_, Self, GetProviderPropertyReply>, ConnectionError>

source§

fn randr_get_monitors( &self, window: Window, get_active: bool, ) -> Result<Cookie<'_, Self, GetMonitorsReply>, ConnectionError>

source§

fn randr_set_monitor( &self, window: Window, monitorinfo: MonitorInfo, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_delete_monitor( &self, window: Window, name: Atom, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn randr_create_lease<'c, 'input>( &'c self, window: Window, lid: Lease, crtcs: &'input [Crtc], outputs: &'input [Output], ) -> Result<CookieWithFds<'c, Self, CreateLeaseReply>, ConnectionError>

source§

fn randr_free_lease( &self, lid: Lease, terminate: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn ge_query_version( &self, client_major_version: u16, client_minor_version: u16, ) -> Result<Cookie<'_, Self, QueryVersionReply>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn xfixes_query_version( &self, client_major_version: u32, client_minor_version: u32, ) -> Result<Cookie<'_, Self, QueryVersionReply>, ConnectionError>

source§

fn xfixes_change_save_set( &self, mode: SaveSetMode, target: SaveSetTarget, map: SaveSetMapping, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_select_selection_input( &self, window: Window, selection: Atom, event_mask: SelectionEventMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_select_cursor_input( &self, window: Window, event_mask: CursorNotifyMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_get_cursor_image( &self, ) -> Result<Cookie<'_, Self, GetCursorImageReply>, ConnectionError>

source§

fn xfixes_create_region<'c, 'input>( &'c self, region: Region, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xfixes_create_region_from_bitmap( &self, region: Region, bitmap: Pixmap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_create_region_from_window( &self, region: Region, window: Window, kind: SK, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_create_region_from_gc( &self, region: Region, gc: Gcontext, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_create_region_from_picture( &self, region: Region, picture: Picture, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_destroy_region( &self, region: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_set_region<'c, 'input>( &'c self, region: Region, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xfixes_copy_region( &self, source: Region, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_union_region( &self, source1: Region, source2: Region, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_intersect_region( &self, source1: Region, source2: Region, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_subtract_region( &self, source1: Region, source2: Region, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_invert_region( &self, source: Region, bounds: Rectangle, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_translate_region( &self, region: Region, dx: i16, dy: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_region_extents( &self, source: Region, destination: Region, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_fetch_region( &self, region: Region, ) -> Result<Cookie<'_, Self, FetchRegionReply>, ConnectionError>

source§

fn xfixes_set_gc_clip_region<A>( &self, gc: Gcontext, region: A, x_origin: i16, y_origin: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Region>,

source§

fn xfixes_set_window_shape_region<A>( &self, dest: Window, dest_kind: SK, x_offset: i16, y_offset: i16, region: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Region>,

source§

fn xfixes_set_picture_clip_region<A>( &self, picture: Picture, region: A, x_origin: i16, y_origin: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Region>,

source§

fn xfixes_set_cursor_name<'c, 'input>( &'c self, cursor: Cursor, name: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xfixes_get_cursor_name( &self, cursor: Cursor, ) -> Result<Cookie<'_, Self, GetCursorNameReply>, ConnectionError>

source§

fn xfixes_get_cursor_image_and_name( &self, ) -> Result<Cookie<'_, Self, GetCursorImageAndNameReply>, ConnectionError>

source§

fn xfixes_change_cursor( &self, source: Cursor, destination: Cursor, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_change_cursor_by_name<'c, 'input>( &'c self, src: Cursor, name: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xfixes_expand_region( &self, source: Region, destination: Region, left: u16, right: u16, top: u16, bottom: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_hide_cursor( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_show_cursor( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_create_pointer_barrier<'c, 'input>( &'c self, barrier: Barrier, window: Window, x1: u16, y1: u16, x2: u16, y2: u16, directions: BarrierDirections, devices: &'input [u16], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xfixes_delete_pointer_barrier( &self, barrier: Barrier, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xfixes_set_client_disconnect_mode( &self, disconnect_mode: ClientDisconnectFlags, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Sets the disconnect mode for the client.. Read more
source§

fn xfixes_get_client_disconnect_mode( &self, ) -> Result<Cookie<'_, Self, GetClientDisconnectModeReply>, ConnectionError>

source§

impl<C> ConnectionExt for C
where C: ConnectionExt + ?Sized,

source§

fn change_property8<A, B>( &self, mode: PropMode, window: Window, property: A, type_: B, data: &[u8], ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Atom>, B: Into<Atom>,

Change a property on a window with format 8.
source§

fn change_property16<A, B>( &self, mode: PropMode, window: Window, property: A, type_: B, data: &[u16], ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Atom>, B: Into<Atom>,

Change a property on a window with format 16.
source§

fn change_property32<A, B>( &self, mode: PropMode, window: Window, property: A, type_: B, data: &[u32], ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Atom>, B: Into<Atom>,

Change a property on a window with format 32.
source§

fn sync(&self) -> Result<(), ReplyError>

Synchronise with the X11 server. Read more
source§

impl<C> ConnectionExt for C

source§

fn shape_query_version( &self, ) -> Result<Cookie<'_, Self, QueryVersionReply>, ConnectionError>

source§

fn shape_rectangles<'c, 'input>( &'c self, operation: SO, destination_kind: SK, ordering: ClipOrdering, destination_window: Window, x_offset: i16, y_offset: i16, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn shape_mask<A>( &self, operation: SO, destination_kind: SK, destination_window: Window, x_offset: i16, y_offset: i16, source_bitmap: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Pixmap>,

source§

fn shape_combine( &self, operation: SO, destination_kind: SK, source_kind: SK, destination_window: Window, x_offset: i16, y_offset: i16, source_window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn shape_offset( &self, destination_kind: SK, destination_window: Window, x_offset: i16, y_offset: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn shape_query_extents( &self, destination_window: Window, ) -> Result<Cookie<'_, Self, QueryExtentsReply>, ConnectionError>

source§

fn shape_select_input( &self, destination_window: Window, enable: bool, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn shape_input_selected( &self, destination_window: Window, ) -> Result<Cookie<'_, Self, InputSelectedReply>, ConnectionError>

source§

fn shape_get_rectangles( &self, window: Window, source_kind: SK, ) -> Result<Cookie<'_, Self, GetRectanglesReply>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn render_query_version( &self, client_major_version: u32, client_minor_version: u32, ) -> Result<Cookie<'_, Self, QueryVersionReply>, ConnectionError>

source§

fn render_query_pict_formats( &self, ) -> Result<Cookie<'_, Self, QueryPictFormatsReply>, ConnectionError>

source§

fn render_query_pict_index_values( &self, format: Pictformat, ) -> Result<Cookie<'_, Self, QueryPictIndexValuesReply>, ConnectionError>

source§

fn render_create_picture<'c, 'input>( &'c self, pid: Picture, drawable: Drawable, format: Pictformat, value_list: &'input CreatePictureAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_change_picture<'c, 'input>( &'c self, picture: Picture, value_list: &'input ChangePictureAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_set_picture_clip_rectangles<'c, 'input>( &'c self, picture: Picture, clip_x_origin: i16, clip_y_origin: i16, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_free_picture( &self, picture: Picture, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_composite<A>( &self, op: PictOp, src: Picture, mask: A, dst: Picture, src_x: i16, src_y: i16, mask_x: i16, mask_y: i16, dst_x: i16, dst_y: i16, width: u16, height: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Picture>,

source§

fn render_trapezoids<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, src_x: i16, src_y: i16, traps: &'input [Trapezoid], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_triangles<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, src_x: i16, src_y: i16, triangles: &'input [Triangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_tri_strip<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, src_x: i16, src_y: i16, points: &'input [Pointfix], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_tri_fan<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, src_x: i16, src_y: i16, points: &'input [Pointfix], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_glyph_set( &self, gsid: Glyphset, format: Pictformat, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_reference_glyph_set( &self, gsid: Glyphset, existing: Glyphset, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_free_glyph_set( &self, glyphset: Glyphset, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_add_glyphs<'c, 'input>( &'c self, glyphset: Glyphset, glyphids: &'input [u32], glyphs: &'input [Glyphinfo], data: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_free_glyphs<'c, 'input>( &'c self, glyphset: Glyphset, glyphs: &'input [Glyph], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_composite_glyphs8<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, glyphset: Glyphset, src_x: i16, src_y: i16, glyphcmds: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_composite_glyphs16<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, glyphset: Glyphset, src_x: i16, src_y: i16, glyphcmds: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_composite_glyphs32<'c, 'input>( &'c self, op: PictOp, src: Picture, dst: Picture, mask_format: Pictformat, glyphset: Glyphset, src_x: i16, src_y: i16, glyphcmds: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_fill_rectangles<'c, 'input>( &'c self, op: PictOp, dst: Picture, color: Color, rects: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_cursor( &self, cid: Cursor, source: Picture, x: u16, y: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_set_picture_transform( &self, picture: Picture, transform: Transform, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_query_filters( &self, drawable: Drawable, ) -> Result<Cookie<'_, Self, QueryFiltersReply>, ConnectionError>

source§

fn render_set_picture_filter<'c, 'input>( &'c self, picture: Picture, filter: &'input [u8], values: &'input [Fixed], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_anim_cursor<'c, 'input>( &'c self, cid: Cursor, cursors: &'input [Animcursorelt], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_add_traps<'c, 'input>( &'c self, picture: Picture, x_off: i16, y_off: i16, traps: &'input [Trap], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_solid_fill( &self, picture: Picture, color: Color, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn render_create_linear_gradient<'c, 'input>( &'c self, picture: Picture, p1: Pointfix, p2: Pointfix, stops: &'input [Fixed], colors: &'input [Color], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_radial_gradient<'c, 'input>( &'c self, picture: Picture, inner: Pointfix, outer: Pointfix, inner_radius: Fixed, outer_radius: Fixed, stops: &'input [Fixed], colors: &'input [Color], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn render_create_conical_gradient<'c, 'input>( &'c self, picture: Picture, center: Pointfix, angle: Fixed, stops: &'input [Fixed], colors: &'input [Color], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn create_window<'c, 'input>( &'c self, depth: u8, wid: Window, parent: Window, x: i16, y: i16, width: u16, height: u16, border_width: u16, class: WindowClass, visual: Visualid, value_list: &'input CreateWindowAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Creates a window. Read more
source§

fn change_window_attributes<'c, 'input>( &'c self, window: Window, value_list: &'input ChangeWindowAttributesAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

change window attributes. Read more
source§

fn get_window_attributes( &self, window: Window, ) -> Result<Cookie<'_, Self, GetWindowAttributesReply>, ConnectionError>

Gets window attributes. Read more
source§

fn destroy_window( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Destroys a window. Read more
source§

fn destroy_subwindows( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn change_save_set( &self, mode: SetMode, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Changes a client’s save set. Read more
source§

fn reparent_window( &self, window: Window, parent: Window, x: i16, y: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Reparents a window. Read more
source§

fn map_window( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Makes a window visible. Read more
source§

fn map_subwindows( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn unmap_window( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Makes a window invisible. Read more
source§

fn unmap_subwindows( &self, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn configure_window<'c, 'input>( &'c self, window: Window, value_list: &'input ConfigureWindowAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Configures window attributes. Read more
source§

fn circulate_window( &self, direction: Circulate, window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Change window stacking order. Read more
source§

fn get_geometry( &self, drawable: Drawable, ) -> Result<Cookie<'_, Self, GetGeometryReply>, ConnectionError>

Get current window geometry. Read more
source§

fn query_tree( &self, window: Window, ) -> Result<Cookie<'_, Self, QueryTreeReply>, ConnectionError>

query the window tree. Read more
source§

fn intern_atom<'c, 'input>( &'c self, only_if_exists: bool, name: &'input [u8], ) -> Result<Cookie<'c, Self, InternAtomReply>, ConnectionError>

Get atom identifier by name. Read more
source§

fn get_atom_name( &self, atom: Atom, ) -> Result<Cookie<'_, Self, GetAtomNameReply>, ConnectionError>

source§

fn change_property<'c, 'input, A, B>( &'c self, mode: PropMode, window: Window, property: A, type_: B, format: u8, data_len: u32, data: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>
where A: Into<Atom>, B: Into<Atom>,

Changes a window property. Read more
source§

fn delete_property( &self, window: Window, property: Atom, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn get_property<A, B>( &self, delete: bool, window: Window, property: A, type_: B, long_offset: u32, long_length: u32, ) -> Result<Cookie<'_, Self, GetPropertyReply>, ConnectionError>
where A: Into<Atom>, B: Into<Atom>,

Gets a window property. Read more
source§

fn list_properties( &self, window: Window, ) -> Result<Cookie<'_, Self, ListPropertiesReply>, ConnectionError>

source§

fn set_selection_owner<A, B>( &self, owner: A, selection: Atom, time: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<Timestamp>,

Sets the owner of a selection. Read more
source§

fn get_selection_owner( &self, selection: Atom, ) -> Result<Cookie<'_, Self, GetSelectionOwnerReply>, ConnectionError>

Gets the owner of a selection. Read more
source§

fn convert_selection<A, B>( &self, requestor: Window, selection: Atom, target: Atom, property: A, time: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Atom>, B: Into<Timestamp>,

source§

fn send_event<A, B>( &self, propagate: bool, destination: A, event_mask: EventMask, event: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<[u8; 32]>,

send an event. Read more
source§

fn grab_pointer<A, B, C>( &self, owner_events: bool, grab_window: Window, event_mask: EventMask, pointer_mode: GrabMode, keyboard_mode: GrabMode, confine_to: A, cursor: B, time: C, ) -> Result<Cookie<'_, Self, GrabPointerReply>, ConnectionError>
where A: Into<Window>, B: Into<Cursor>, C: Into<Timestamp>,

Grab the pointer. Read more
source§

fn ungrab_pointer<A>( &self, time: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>,

release the pointer. Read more
source§

fn grab_button<A, B>( &self, owner_events: bool, grab_window: Window, event_mask: EventMask, pointer_mode: GrabMode, keyboard_mode: GrabMode, confine_to: A, cursor: B, button: ButtonIndex, modifiers: ModMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<Cursor>,

Grab pointer button(s). Read more
source§

fn ungrab_button( &self, button: ButtonIndex, grab_window: Window, modifiers: ModMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn change_active_pointer_grab<A, B>( &self, cursor: A, time: B, event_mask: EventMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Cursor>, B: Into<Timestamp>,

source§

fn grab_keyboard<A>( &self, owner_events: bool, grab_window: Window, time: A, pointer_mode: GrabMode, keyboard_mode: GrabMode, ) -> Result<Cookie<'_, Self, GrabKeyboardReply>, ConnectionError>
where A: Into<Timestamp>,

Grab the keyboard. Read more
source§

fn ungrab_keyboard<A>( &self, time: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>,

source§

fn grab_key<A>( &self, owner_events: bool, grab_window: Window, modifiers: ModMask, key: A, pointer_mode: GrabMode, keyboard_mode: GrabMode, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Keycode>,

Grab keyboard key(s). Read more
source§

fn ungrab_key<A>( &self, key: A, grab_window: Window, modifiers: ModMask, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Keycode>,

release a key combination. Read more
source§

fn allow_events<A>( &self, mode: Allow, time: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>,

release queued events. Read more
source§

fn grab_server(&self) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn ungrab_server(&self) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn query_pointer( &self, window: Window, ) -> Result<Cookie<'_, Self, QueryPointerReply>, ConnectionError>

get pointer coordinates. Read more
source§

fn get_motion_events<A, B>( &self, window: Window, start: A, stop: B, ) -> Result<Cookie<'_, Self, GetMotionEventsReply>, ConnectionError>
where A: Into<Timestamp>, B: Into<Timestamp>,

source§

fn translate_coordinates( &self, src_window: Window, dst_window: Window, src_x: i16, src_y: i16, ) -> Result<Cookie<'_, Self, TranslateCoordinatesReply>, ConnectionError>

source§

fn warp_pointer<A, B>( &self, src_window: A, dst_window: B, src_x: i16, src_y: i16, src_width: u16, src_height: u16, dst_x: i16, dst_y: i16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<Window>,

move mouse pointer. Read more
source§

fn set_input_focus<A, B>( &self, revert_to: InputFocus, focus: A, time: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<Timestamp>,

Sets input focus. Read more
source§

fn get_input_focus( &self, ) -> Result<Cookie<'_, Self, GetInputFocusReply>, ConnectionError>

source§

fn query_keymap( &self, ) -> Result<Cookie<'_, Self, QueryKeymapReply>, ConnectionError>

source§

fn open_font<'c, 'input>( &'c self, fid: Font, name: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

opens a font. Read more
source§

fn close_font( &self, font: Font, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn query_font( &self, font: Fontable, ) -> Result<Cookie<'_, Self, QueryFontReply>, ConnectionError>

query font metrics. Read more
source§

fn query_text_extents<'c, 'input>( &'c self, font: Fontable, string: &'input [Char2b], ) -> Result<Cookie<'c, Self, QueryTextExtentsReply>, ConnectionError>

get text extents. Read more
source§

fn list_fonts<'c, 'input>( &'c self, max_names: u16, pattern: &'input [u8], ) -> Result<Cookie<'c, Self, ListFontsReply>, ConnectionError>

get matching font names. Read more
source§

fn list_fonts_with_info<'c, 'input>( &'c self, max_names: u16, pattern: &'input [u8], ) -> Result<ListFontsWithInfoCookie<'c, Self>, ConnectionError>

get matching font names and information. Read more
source§

fn set_font_path<'c, 'input>( &'c self, font: &'input [Str], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn get_font_path( &self, ) -> Result<Cookie<'_, Self, GetFontPathReply>, ConnectionError>

source§

fn create_pixmap( &self, depth: u8, pid: Pixmap, drawable: Drawable, width: u16, height: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Creates a pixmap. Read more
source§

fn free_pixmap( &self, pixmap: Pixmap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Destroys a pixmap. Read more
source§

fn create_gc<'c, 'input>( &'c self, cid: Gcontext, drawable: Drawable, value_list: &'input CreateGCAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Creates a graphics context. Read more
source§

fn change_gc<'c, 'input>( &'c self, gc: Gcontext, value_list: &'input ChangeGCAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

change graphics context components. Read more
source§

fn copy_gc( &self, src_gc: Gcontext, dst_gc: Gcontext, value_mask: GC, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn set_dashes<'c, 'input>( &'c self, gc: Gcontext, dash_offset: u16, dashes: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn set_clip_rectangles<'c, 'input>( &'c self, ordering: ClipOrdering, gc: Gcontext, clip_x_origin: i16, clip_y_origin: i16, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn free_gc(&self, gc: Gcontext) -> Result<VoidCookie<'_, Self>, ConnectionError>

Destroys a graphics context. Read more
source§

fn clear_area( &self, exposures: bool, window: Window, x: i16, y: i16, width: u16, height: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn copy_area( &self, src_drawable: Drawable, dst_drawable: Drawable, gc: Gcontext, src_x: i16, src_y: i16, dst_x: i16, dst_y: i16, width: u16, height: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

copy areas. Read more
source§

fn copy_plane( &self, src_drawable: Drawable, dst_drawable: Drawable, gc: Gcontext, src_x: i16, src_y: i16, dst_x: i16, dst_y: i16, width: u16, height: u16, bit_plane: u32, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn poly_point<'c, 'input>( &'c self, coordinate_mode: CoordMode, drawable: Drawable, gc: Gcontext, points: &'input [Point], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn poly_line<'c, 'input>( &'c self, coordinate_mode: CoordMode, drawable: Drawable, gc: Gcontext, points: &'input [Point], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

draw lines. Read more
source§

fn poly_segment<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, segments: &'input [Segment], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

draw lines. Read more
source§

fn poly_rectangle<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn poly_arc<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, arcs: &'input [Arc], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn fill_poly<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, shape: PolyShape, coordinate_mode: CoordMode, points: &'input [Point], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn poly_fill_rectangle<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, rectangles: &'input [Rectangle], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Fills rectangles. Read more
source§

fn poly_fill_arc<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, arcs: &'input [Arc], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn put_image<'c, 'input>( &'c self, format: ImageFormat, drawable: Drawable, gc: Gcontext, width: u16, height: u16, dst_x: i16, dst_y: i16, left_pad: u8, depth: u8, data: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn get_image( &self, format: ImageFormat, drawable: Drawable, x: i16, y: i16, width: u16, height: u16, plane_mask: u32, ) -> Result<Cookie<'_, Self, GetImageReply>, ConnectionError>

source§

fn poly_text8<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, x: i16, y: i16, items: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn poly_text16<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, x: i16, y: i16, items: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn image_text8<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, x: i16, y: i16, string: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Draws text. Read more
source§

fn image_text16<'c, 'input>( &'c self, drawable: Drawable, gc: Gcontext, x: i16, y: i16, string: &'input [Char2b], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

Draws text. Read more
source§

fn create_colormap( &self, alloc: ColormapAlloc, mid: Colormap, window: Window, visual: Visualid, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn free_colormap( &self, cmap: Colormap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn copy_colormap_and_free( &self, mid: Colormap, src_cmap: Colormap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn install_colormap( &self, cmap: Colormap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn uninstall_colormap( &self, cmap: Colormap, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn list_installed_colormaps( &self, window: Window, ) -> Result<Cookie<'_, Self, ListInstalledColormapsReply>, ConnectionError>

source§

fn alloc_color( &self, cmap: Colormap, red: u16, green: u16, blue: u16, ) -> Result<Cookie<'_, Self, AllocColorReply>, ConnectionError>

Allocate a color. Read more
source§

fn alloc_named_color<'c, 'input>( &'c self, cmap: Colormap, name: &'input [u8], ) -> Result<Cookie<'c, Self, AllocNamedColorReply>, ConnectionError>

source§

fn alloc_color_cells( &self, contiguous: bool, cmap: Colormap, colors: u16, planes: u16, ) -> Result<Cookie<'_, Self, AllocColorCellsReply>, ConnectionError>

source§

fn alloc_color_planes( &self, contiguous: bool, cmap: Colormap, colors: u16, reds: u16, greens: u16, blues: u16, ) -> Result<Cookie<'_, Self, AllocColorPlanesReply>, ConnectionError>

source§

fn free_colors<'c, 'input>( &'c self, cmap: Colormap, plane_mask: u32, pixels: &'input [u32], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn store_colors<'c, 'input>( &'c self, cmap: Colormap, items: &'input [Coloritem], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn store_named_color<'c, 'input>( &'c self, flags: ColorFlag, cmap: Colormap, pixel: u32, name: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn query_colors<'c, 'input>( &'c self, cmap: Colormap, pixels: &'input [u32], ) -> Result<Cookie<'c, Self, QueryColorsReply>, ConnectionError>

source§

fn lookup_color<'c, 'input>( &'c self, cmap: Colormap, name: &'input [u8], ) -> Result<Cookie<'c, Self, LookupColorReply>, ConnectionError>

source§

fn create_cursor<A>( &self, cid: Cursor, source: Pixmap, mask: A, fore_red: u16, fore_green: u16, fore_blue: u16, back_red: u16, back_green: u16, back_blue: u16, x: u16, y: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Pixmap>,

source§

fn create_glyph_cursor<A>( &self, cid: Cursor, source_font: Font, mask_font: A, source_char: u16, mask_char: u16, fore_red: u16, fore_green: u16, fore_blue: u16, back_red: u16, back_green: u16, back_blue: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Font>,

create cursor. Read more
source§

fn free_cursor( &self, cursor: Cursor, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

Deletes a cursor. Read more
source§

fn recolor_cursor( &self, cursor: Cursor, fore_red: u16, fore_green: u16, fore_blue: u16, back_red: u16, back_green: u16, back_blue: u16, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn query_best_size( &self, class: QueryShapeOf, drawable: Drawable, width: u16, height: u16, ) -> Result<Cookie<'_, Self, QueryBestSizeReply>, ConnectionError>

source§

fn query_extension<'c, 'input>( &'c self, name: &'input [u8], ) -> Result<Cookie<'c, Self, QueryExtensionReply>, ConnectionError>

check if extension is present. Read more
source§

fn list_extensions( &self, ) -> Result<Cookie<'_, Self, ListExtensionsReply>, ConnectionError>

source§

fn change_keyboard_mapping<'c, 'input>( &'c self, keycode_count: u8, first_keycode: Keycode, keysyms_per_keycode: u8, keysyms: &'input [Keysym], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn get_keyboard_mapping( &self, first_keycode: Keycode, count: u8, ) -> Result<Cookie<'_, Self, GetKeyboardMappingReply>, ConnectionError>

source§

fn change_keyboard_control<'c, 'input>( &'c self, value_list: &'input ChangeKeyboardControlAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn get_keyboard_control( &self, ) -> Result<Cookie<'_, Self, GetKeyboardControlReply>, ConnectionError>

source§

fn bell(&self, percent: i8) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn change_pointer_control( &self, acceleration_numerator: i16, acceleration_denominator: i16, threshold: i16, do_acceleration: bool, do_threshold: bool, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn get_pointer_control( &self, ) -> Result<Cookie<'_, Self, GetPointerControlReply>, ConnectionError>

source§

fn set_screen_saver( &self, timeout: i16, interval: i16, prefer_blanking: Blanking, allow_exposures: Exposures, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn get_screen_saver( &self, ) -> Result<Cookie<'_, Self, GetScreenSaverReply>, ConnectionError>

source§

fn change_hosts<'c, 'input>( &'c self, mode: HostMode, family: Family, address: &'input [u8], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn list_hosts( &self, ) -> Result<Cookie<'_, Self, ListHostsReply>, ConnectionError>

source§

fn set_access_control( &self, mode: AccessControl, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn set_close_down_mode( &self, mode: CloseDown, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn kill_client<A>( &self, resource: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<u32>,

kills a client. Read more
source§

fn rotate_properties<'c, 'input>( &'c self, window: Window, delta: i16, atoms: &'input [Atom], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn force_screen_saver( &self, mode: ScreenSaver, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn set_pointer_mapping<'c, 'input>( &'c self, map: &'input [u8], ) -> Result<Cookie<'c, Self, SetPointerMappingReply>, ConnectionError>

source§

fn get_pointer_mapping( &self, ) -> Result<Cookie<'_, Self, GetPointerMappingReply>, ConnectionError>

source§

fn set_modifier_mapping<'c, 'input>( &'c self, keycodes: &'input [Keycode], ) -> Result<Cookie<'c, Self, SetModifierMappingReply>, ConnectionError>

source§

fn get_modifier_mapping( &self, ) -> Result<Cookie<'_, Self, GetModifierMappingReply>, ConnectionError>

source§

fn no_operation(&self) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn xinput_get_extension_version<'c, 'input>( &'c self, name: &'input [u8], ) -> Result<Cookie<'c, Self, GetExtensionVersionReply>, ConnectionError>

source§

fn xinput_list_input_devices( &self, ) -> Result<Cookie<'_, Self, ListInputDevicesReply>, ConnectionError>

source§

fn xinput_open_device( &self, device_id: u8, ) -> Result<Cookie<'_, Self, OpenDeviceReply>, ConnectionError>

source§

fn xinput_close_device( &self, device_id: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xinput_set_device_mode( &self, device_id: u8, mode: ValuatorMode, ) -> Result<Cookie<'_, Self, SetDeviceModeReply>, ConnectionError>

source§

fn xinput_select_extension_event<'c, 'input>( &'c self, window: Window, classes: &'input [EventClass], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_get_selected_extension_events( &self, window: Window, ) -> Result<Cookie<'_, Self, GetSelectedExtensionEventsReply>, ConnectionError>

source§

fn xinput_change_device_dont_propagate_list<'c, 'input>( &'c self, window: Window, mode: PropagateMode, classes: &'input [EventClass], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_get_device_dont_propagate_list( &self, window: Window, ) -> Result<Cookie<'_, Self, GetDeviceDontPropagateListReply>, ConnectionError>

source§

fn xinput_get_device_motion_events<A>( &self, start: Timestamp, stop: A, device_id: u8, ) -> Result<Cookie<'_, Self, GetDeviceMotionEventsReply>, ConnectionError>
where A: Into<Timestamp>,

source§

fn xinput_change_keyboard_device( &self, device_id: u8, ) -> Result<Cookie<'_, Self, ChangeKeyboardDeviceReply>, ConnectionError>

source§

fn xinput_change_pointer_device( &self, x_axis: u8, y_axis: u8, device_id: u8, ) -> Result<Cookie<'_, Self, ChangePointerDeviceReply>, ConnectionError>

source§

fn xinput_grab_device<'c, 'input, A>( &'c self, grab_window: Window, time: A, this_device_mode: GrabMode, other_device_mode: GrabMode, owner_events: bool, device_id: u8, classes: &'input [EventClass], ) -> Result<Cookie<'c, Self, GrabDeviceReply>, ConnectionError>
where A: Into<Timestamp>,

source§

fn xinput_ungrab_device<A>( &self, time: A, device_id: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>,

source§

fn xinput_grab_device_key<'c, 'input, A, B>( &'c self, grab_window: Window, modifiers: ModMask, modifier_device: A, grabbed_device: u8, key: B, this_device_mode: GrabMode, other_device_mode: GrabMode, owner_events: bool, classes: &'input [EventClass], ) -> Result<VoidCookie<'c, Self>, ConnectionError>
where A: Into<u8>, B: Into<u8>,

source§

fn xinput_ungrab_device_key<A, B>( &self, grab_window: Window, modifiers: ModMask, modifier_device: A, key: B, grabbed_device: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<u8>, B: Into<u8>,

source§

fn xinput_grab_device_button<'c, 'input, A, B>( &'c self, grab_window: Window, grabbed_device: u8, modifier_device: A, modifiers: ModMask, this_device_mode: GrabMode, other_device_mode: GrabMode, button: B, owner_events: bool, classes: &'input [EventClass], ) -> Result<VoidCookie<'c, Self>, ConnectionError>
where A: Into<u8>, B: Into<u8>,

source§

fn xinput_ungrab_device_button<A, B>( &self, grab_window: Window, modifiers: ModMask, modifier_device: A, button: B, grabbed_device: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<u8>, B: Into<u8>,

source§

fn xinput_allow_device_events<A>( &self, time: A, mode: DeviceInputMode, device_id: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>,

source§

fn xinput_get_device_focus( &self, device_id: u8, ) -> Result<Cookie<'_, Self, GetDeviceFocusReply>, ConnectionError>

source§

fn xinput_set_device_focus<A, B>( &self, focus: A, time: B, revert_to: InputFocus, device_id: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Window>, B: Into<Timestamp>,

source§

fn xinput_get_feedback_control( &self, device_id: u8, ) -> Result<Cookie<'_, Self, GetFeedbackControlReply>, ConnectionError>

source§

fn xinput_change_feedback_control( &self, mask: ChangeFeedbackControlMask, device_id: u8, feedback_id: u8, feedback: FeedbackCtl, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xinput_get_device_key_mapping( &self, device_id: u8, first_keycode: KeyCode, count: u8, ) -> Result<Cookie<'_, Self, GetDeviceKeyMappingReply>, ConnectionError>

source§

fn xinput_change_device_key_mapping<'c, 'input>( &'c self, device_id: u8, first_keycode: KeyCode, keysyms_per_keycode: u8, keycode_count: u8, keysyms: &'input [Keysym], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_get_device_modifier_mapping( &self, device_id: u8, ) -> Result<Cookie<'_, Self, GetDeviceModifierMappingReply>, ConnectionError>

source§

fn xinput_set_device_modifier_mapping<'c, 'input>( &'c self, device_id: u8, keymaps: &'input [u8], ) -> Result<Cookie<'c, Self, SetDeviceModifierMappingReply>, ConnectionError>

source§

fn xinput_get_device_button_mapping( &self, device_id: u8, ) -> Result<Cookie<'_, Self, GetDeviceButtonMappingReply>, ConnectionError>

source§

fn xinput_set_device_button_mapping<'c, 'input>( &'c self, device_id: u8, map: &'input [u8], ) -> Result<Cookie<'c, Self, SetDeviceButtonMappingReply>, ConnectionError>

source§

fn xinput_query_device_state( &self, device_id: u8, ) -> Result<Cookie<'_, Self, QueryDeviceStateReply>, ConnectionError>

source§

fn xinput_device_bell( &self, device_id: u8, feedback_id: u8, feedback_class: u8, percent: i8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xinput_set_device_valuators<'c, 'input>( &'c self, device_id: u8, first_valuator: u8, valuators: &'input [i32], ) -> Result<Cookie<'c, Self, SetDeviceValuatorsReply>, ConnectionError>

source§

fn xinput_get_device_control( &self, control_id: DeviceControl, device_id: u8, ) -> Result<Cookie<'_, Self, GetDeviceControlReply>, ConnectionError>

source§

fn xinput_change_device_control( &self, control_id: DeviceControl, device_id: u8, control: DeviceCtl, ) -> Result<Cookie<'_, Self, ChangeDeviceControlReply>, ConnectionError>

source§

fn xinput_list_device_properties( &self, device_id: u8, ) -> Result<Cookie<'_, Self, ListDevicePropertiesReply>, ConnectionError>

source§

fn xinput_change_device_property<'c, 'input>( &'c self, property: Atom, type_: Atom, device_id: u8, mode: PropMode, num_items: u32, items: &'input ChangeDevicePropertyAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_delete_device_property( &self, property: Atom, device_id: u8, ) -> Result<VoidCookie<'_, Self>, ConnectionError>

source§

fn xinput_get_device_property( &self, property: Atom, type_: Atom, offset: u32, len: u32, device_id: u8, delete: bool, ) -> Result<Cookie<'_, Self, GetDevicePropertyReply>, ConnectionError>

source§

fn xinput_xi_query_pointer<A>( &self, window: Window, deviceid: A, ) -> Result<Cookie<'_, Self, XIQueryPointerReply>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_warp_pointer<A>( &self, src_win: Window, dst_win: Window, src_x: Fp1616, src_y: Fp1616, src_width: u16, src_height: u16, dst_x: Fp1616, dst_y: Fp1616, deviceid: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_change_cursor<A>( &self, window: Window, cursor: Cursor, deviceid: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_change_hierarchy<'c, 'input>( &'c self, changes: &'input [HierarchyChange], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_xi_set_client_pointer<A>( &self, window: Window, deviceid: A, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_get_client_pointer( &self, window: Window, ) -> Result<Cookie<'_, Self, XIGetClientPointerReply>, ConnectionError>

source§

fn xinput_xi_select_events<'c, 'input>( &'c self, window: Window, masks: &'input [EventMask], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_xi_query_version( &self, major_version: u16, minor_version: u16, ) -> Result<Cookie<'_, Self, XIQueryVersionReply>, ConnectionError>

source§

fn xinput_xi_query_device<A>( &self, deviceid: A, ) -> Result<Cookie<'_, Self, XIQueryDeviceReply>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_set_focus<A, B>( &self, window: Window, time: A, deviceid: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>, B: Into<DeviceId>,

source§

fn xinput_xi_get_focus<A>( &self, deviceid: A, ) -> Result<Cookie<'_, Self, XIGetFocusReply>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_grab_device<'c, 'input, A, B>( &'c self, window: Window, time: A, cursor: Cursor, deviceid: B, mode: GrabMode, paired_device_mode: GrabMode, owner_events: GrabOwner, mask: &'input [u32], ) -> Result<Cookie<'c, Self, XIGrabDeviceReply>, ConnectionError>
where A: Into<Timestamp>, B: Into<DeviceId>,

source§

fn xinput_xi_ungrab_device<A, B>( &self, time: A, deviceid: B, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>, B: Into<DeviceId>,

source§

fn xinput_xi_allow_events<A, B>( &self, time: A, deviceid: B, event_mode: EventMode, touchid: u32, grab_window: Window, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<Timestamp>, B: Into<DeviceId>,

source§

fn xinput_xi_passive_grab_device<'c, 'input, A, B>( &'c self, time: A, grab_window: Window, cursor: Cursor, detail: u32, deviceid: B, grab_type: GrabType, grab_mode: GrabMode22, paired_device_mode: GrabMode, owner_events: GrabOwner, mask: &'input [u32], modifiers: &'input [u32], ) -> Result<Cookie<'c, Self, XIPassiveGrabDeviceReply>, ConnectionError>
where A: Into<Timestamp>, B: Into<DeviceId>,

source§

fn xinput_xi_passive_ungrab_device<'c, 'input, A>( &'c self, grab_window: Window, detail: u32, deviceid: A, grab_type: GrabType, modifiers: &'input [u32], ) -> Result<VoidCookie<'c, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_list_properties<A>( &self, deviceid: A, ) -> Result<Cookie<'_, Self, XIListPropertiesReply>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_change_property<'c, 'input, A>( &'c self, deviceid: A, mode: PropMode, property: Atom, type_: Atom, num_items: u32, items: &'input XIChangePropertyAux, ) -> Result<VoidCookie<'c, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_delete_property<A>( &self, deviceid: A, property: Atom, ) -> Result<VoidCookie<'_, Self>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_get_property<A>( &self, deviceid: A, delete: bool, property: Atom, type_: Atom, offset: u32, len: u32, ) -> Result<Cookie<'_, Self, XIGetPropertyReply>, ConnectionError>
where A: Into<DeviceId>,

source§

fn xinput_xi_get_selected_events( &self, window: Window, ) -> Result<Cookie<'_, Self, XIGetSelectedEventsReply>, ConnectionError>

source§

fn xinput_xi_barrier_release_pointer<'c, 'input>( &'c self, barriers: &'input [BarrierReleasePointerInfo], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

fn xinput_send_extension_event<'c, 'input>( &'c self, destination: Window, device_id: u8, propagate: bool, events: &'input [EventForSend], classes: &'input [EventClass], ) -> Result<VoidCookie<'c, Self>, ConnectionError>

source§

impl<C> ConnectionExt for C

source§

fn xc_misc_get_version( &self, client_major_version: u16, client_minor_version: u16, ) -> Result<Cookie<'_, Self, GetVersionReply>, ConnectionError>

source§

fn xc_misc_get_xid_range( &self, ) -> Result<Cookie<'_, Self, GetXIDRangeReply>, ConnectionError>

source§

fn xc_misc_get_xid_list( &self, count: u32, ) -> Result<Cookie<'_, Self, GetXIDListReply>, ConnectionError>

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.