145 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			145 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| // 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::Path<'static>, dbus::Error>;
 | |
|     fn select_sources(
 | |
|         &self,
 | |
|         session_handle: dbus::Path,
 | |
|         options: arg::PropMap,
 | |
|     ) -> Result<dbus::Path<'static>, dbus::Error>;
 | |
|     fn start(
 | |
|         &self,
 | |
|         session_handle: dbus::Path,
 | |
|         parent_window: &str,
 | |
|         options: arg::PropMap,
 | |
|     ) -> Result<dbus::Path<'static>, dbus::Error>;
 | |
|     fn open_pipe_wire_remote(
 | |
|         &self,
 | |
|         session_handle: dbus::Path,
 | |
|         options: arg::PropMap,
 | |
|     ) -> Result<arg::OwnedFd, dbus::Error>;
 | |
|     fn available_source_types(&self) -> Result<u32, dbus::Error>;
 | |
|     fn available_cursor_modes(&self) -> Result<u32, dbus::Error>;
 | |
|     fn version(&self) -> Result<u32, dbus::Error>;
 | |
| }
 | |
| 
 | |
| impl<'a, T: blocking::BlockingSender, C: ::std::ops::Deref<Target = T>>
 | |
|     OrgFreedesktopPortalScreenCast for blocking::Proxy<'a, C>
 | |
| {
 | |
|     fn create_session(&self, options: arg::PropMap) -> Result<dbus::Path<'static>, 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::Path<'static>, 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::Path<'static>, 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<arg::OwnedFd, dbus::Error> {
 | |
|         self.method_call(
 | |
|             "org.freedesktop.portal.ScreenCast",
 | |
|             "OpenPipeWireRemote",
 | |
|             (session_handle, options),
 | |
|         )
 | |
|         .map(|r: (arg::OwnedFd,)| r.0)
 | |
|     }
 | |
| 
 | |
|     fn available_source_types(&self) -> Result<u32, dbus::Error> {
 | |
|         <Self as blocking::stdintf::org_freedesktop_dbus::Properties>::get(
 | |
|             &self,
 | |
|             "org.freedesktop.portal.ScreenCast",
 | |
|             "AvailableSourceTypes",
 | |
|         )
 | |
|     }
 | |
| 
 | |
|     fn available_cursor_modes(&self) -> Result<u32, dbus::Error> {
 | |
|         <Self as blocking::stdintf::org_freedesktop_dbus::Properties>::get(
 | |
|             &self,
 | |
|             "org.freedesktop.portal.ScreenCast",
 | |
|             "AvailableCursorModes",
 | |
|         )
 | |
|     }
 | |
| 
 | |
|     fn version(&self) -> Result<u32, dbus::Error> {
 | |
|         <Self as blocking::stdintf::org_freedesktop_dbus::Properties>::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<Target = T>> 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<Self, arg::TypeMismatchError> {
 | |
|         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";
 | |
| }
 |