// This code was autogenerated with `dbus-codegen-rust -c blocking -m None`, see https://github.com/diwic/dbus-rs use dbus; #[allow(unused_imports)] use dbus::arg; use dbus::blocking; pub trait OrgFreedesktopPortalScreenCast { fn create_session(&self, options: arg::PropMap) -> Result, dbus::Error>; fn select_sources( &self, session_handle: dbus::Path, options: arg::PropMap, ) -> Result, dbus::Error>; fn start( &self, session_handle: dbus::Path, parent_window: &str, options: arg::PropMap, ) -> Result, dbus::Error>; fn open_pipe_wire_remote( &self, session_handle: dbus::Path, options: arg::PropMap, ) -> Result; fn available_source_types(&self) -> Result; fn available_cursor_modes(&self) -> Result; fn version(&self) -> Result; } impl<'a, T: blocking::BlockingSender, C: ::std::ops::Deref> OrgFreedesktopPortalScreenCast for blocking::Proxy<'a, C> { fn create_session(&self, options: arg::PropMap) -> Result, dbus::Error> { self.method_call( "org.freedesktop.portal.ScreenCast", "CreateSession", (options,), ) .map(|r: (dbus::Path<'static>,)| r.0) } fn select_sources( &self, session_handle: dbus::Path, options: arg::PropMap, ) -> Result, dbus::Error> { self.method_call( "org.freedesktop.portal.ScreenCast", "SelectSources", (session_handle, options), ) .map(|r: (dbus::Path<'static>,)| r.0) } fn start( &self, session_handle: dbus::Path, parent_window: &str, options: arg::PropMap, ) -> Result, dbus::Error> { self.method_call( "org.freedesktop.portal.ScreenCast", "Start", (session_handle, parent_window, options), ) .map(|r: (dbus::Path<'static>,)| r.0) } fn open_pipe_wire_remote( &self, session_handle: dbus::Path, options: arg::PropMap, ) -> Result { self.method_call( "org.freedesktop.portal.ScreenCast", "OpenPipeWireRemote", (session_handle, options), ) .map(|r: (arg::OwnedFd,)| r.0) } fn available_source_types(&self) -> Result { ::get( &self, "org.freedesktop.portal.ScreenCast", "AvailableSourceTypes", ) } fn available_cursor_modes(&self) -> Result { ::get( &self, "org.freedesktop.portal.ScreenCast", "AvailableCursorModes", ) } fn version(&self) -> Result { ::get( &self, "org.freedesktop.portal.ScreenCast", "version", ) } } pub trait OrgFreedesktopPortalRequest { fn close(&self) -> Result<(), dbus::Error>; } impl<'a, T: blocking::BlockingSender, C: ::std::ops::Deref> OrgFreedesktopPortalRequest for blocking::Proxy<'a, C> { fn close(&self) -> Result<(), dbus::Error> { self.method_call("org.freedesktop.portal.Request", "Close", ()) } } #[derive(Debug)] pub struct OrgFreedesktopPortalRequestResponse { pub response: u32, pub results: arg::PropMap, } impl arg::AppendAll for OrgFreedesktopPortalRequestResponse { fn append(&self, i: &mut arg::IterAppend) { arg::RefArg::append(&self.response, i); arg::RefArg::append(&self.results, i); } } impl arg::ReadAll for OrgFreedesktopPortalRequestResponse { fn read(i: &mut arg::Iter) -> Result { Ok(OrgFreedesktopPortalRequestResponse { response: i.read()?, results: i.read()?, }) } } impl dbus::message::SignalArgs for OrgFreedesktopPortalRequestResponse { const NAME: &'static str = "Response"; const INTERFACE: &'static str = "org.freedesktop.portal.Request"; }