Struct winit::platform_impl::linux::x11::window::UnownedWindow
source · pub struct UnownedWindow {
pub(crate) xconn: Arc<XConnection>,
xwindow: Window,
visual: u32,
root: Window,
screen_id: i32,
selected_cursor: Mutex<SelectedCursor>,
cursor_grabbed_mode: Mutex<CursorGrabMode>,
cursor_visible: Mutex<bool>,
ime_sender: Mutex<Sender<ImeRequest>>,
pub shared_state: Mutex<SharedState>,
redraw_sender: WakeSender<WindowId>,
activation_sender: WakeSender<(WindowId, AsyncRequestSerial)>,
}
Fields§
§xconn: Arc<XConnection>
§xwindow: Window
§visual: u32
§root: Window
§screen_id: i32
§selected_cursor: Mutex<SelectedCursor>
§cursor_grabbed_mode: Mutex<CursorGrabMode>
§cursor_visible: Mutex<bool>
§ime_sender: Mutex<Sender<ImeRequest>>
§redraw_sender: WakeSender<WindowId>
§activation_sender: WakeSender<(WindowId, AsyncRequestSerial)>
Implementations§
source§impl UnownedWindow
impl UnownedWindow
pub(crate) fn new( event_loop: &ActiveEventLoop, window_attrs: WindowAttributes, ) -> Result<UnownedWindow, RootOsError>
sourcepub(super) fn embed_window(&self) -> Result<(), RootOsError>
pub(super) fn embed_window(&self) -> Result<(), RootOsError>
Embed this window into a parent window.
fn set_pid(&self) -> Result<Option<VoidCookie<'_, XCBConnection>>, X11Error>
fn set_window_types( &self, window_types: Vec<WindowType>, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_theme_inner( &self, theme: Option<Theme>, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_theme(&self, theme: Option<Theme>)
fn set_netwm( &self, operation: StateOperation, properties: (u32, u32, u32, u32), ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
fn set_fullscreen_hint( &self, fullscreen: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
fn set_fullscreen_inner( &self, fullscreen: Option<Fullscreen>, ) -> Result<Option<VoidCookie<'_, XCBConnection>>, X11Error>
pub(crate) fn fullscreen(&self) -> Option<Fullscreen>
pub(crate) fn set_fullscreen(&self, fullscreen: Option<Fullscreen>)
pub(crate) fn visibility_notify(&self)
pub fn current_monitor(&self) -> Option<X11MonitorHandle>
pub fn available_monitors(&self) -> Vec<X11MonitorHandle>
pub fn primary_monitor(&self) -> Option<X11MonitorHandle>
pub fn is_minimized(&self) -> Option<bool>
sourcepub(super) fn refresh_dpi_for_monitor<T: 'static>(
&self,
new_monitor: &X11MonitorHandle,
maybe_prev_scale_factor: Option<f64>,
callback: impl FnMut(Event<T>),
)
pub(super) fn refresh_dpi_for_monitor<T: 'static>( &self, new_monitor: &X11MonitorHandle, maybe_prev_scale_factor: Option<f64>, callback: impl FnMut(Event<T>), )
Refresh the API for the given monitor.
fn set_minimized_inner( &self, minimized: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_minimized(&self, minimized: bool)
pub fn is_maximized(&self) -> bool
fn set_maximized_inner( &self, maximized: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_maximized(&self, maximized: bool)
fn set_title_inner( &self, title: &str, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_title(&self, title: &str)
pub fn set_transparent(&self, _transparent: bool)
pub fn set_blur(&self, _blur: bool)
fn set_decorations_inner( &self, decorations: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_decorations(&self, decorations: bool)
pub fn is_decorated(&self) -> bool
fn set_maximizable_inner( &self, maximizable: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
fn toggle_atom( &self, atom_name: AtomName, enable: bool, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
fn set_window_level_inner( &self, level: WindowLevel, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub fn set_window_level(&self, level: WindowLevel)
fn set_icon_inner( &self, icon: PlatformIcon, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
fn unset_icon_inner(&self) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub(crate) fn set_window_icon(&self, icon: Option<PlatformIcon>)
pub fn set_visible(&self, visible: bool)
pub fn is_visible(&self) -> Option<bool>
fn update_cached_frame_extents(&self)
pub(crate) fn invalidate_cached_frame_extents(&self)
pub(crate) fn outer_position_physical(&self) -> (i32, i32)
pub fn outer_position(&self) -> Result<PhysicalPosition<i32>, NotSupportedError>
pub(crate) fn inner_position_physical(&self) -> (i32, i32)
pub fn inner_position(&self) -> Result<PhysicalPosition<i32>, NotSupportedError>
pub(crate) fn set_position_inner( &self, x: i32, y: i32, ) -> Result<VoidCookie<'_, XCBConnection>, X11Error>
pub(crate) fn set_position_physical(&self, x: i32, y: i32)
pub fn set_outer_position(&self, position: Position)
pub(crate) fn inner_size_physical(&self) -> (u32, u32)
pub fn inner_size(&self) -> PhysicalSize<u32>
pub fn outer_size(&self) -> PhysicalSize<u32>
pub(crate) fn request_inner_size_physical(&self, width: u32, height: u32)
pub fn request_inner_size(&self, size: Size) -> Option<PhysicalSize<u32>>
fn update_normal_hints<F>(&self, callback: F) -> Result<(), X11Error>where
F: FnOnce(&mut WmSizeHints),
pub(crate) fn set_min_inner_size_physical(&self, dimensions: Option<(u32, u32)>)
pub fn set_min_inner_size(&self, dimensions: Option<Size>)
pub(crate) fn set_max_inner_size_physical(&self, dimensions: Option<(u32, u32)>)
pub fn set_max_inner_size(&self, dimensions: Option<Size>)
pub fn resize_increments(&self) -> Option<PhysicalSize<u32>>
pub fn set_resize_increments(&self, increments: Option<Size>)
pub(crate) fn adjust_for_dpi( &self, old_scale_factor: f64, new_scale_factor: f64, width: u32, height: u32, shared_state: &SharedState, ) -> (u32, u32)
pub fn set_resizable(&self, resizable: bool)
pub fn is_resizable(&self) -> bool
pub fn xlib_display(&self) -> *mut c_void
pub fn xlib_window(&self) -> c_ulong
pub fn set_cursor(&self, cursor: Cursor)
pub fn set_cursor_grab(&self, mode: CursorGrabMode) -> Result<(), ExternalError>
pub fn set_cursor_visible(&self, visible: bool)
pub fn scale_factor(&self) -> f64
pub fn set_cursor_position_physical( &self, x: i32, y: i32, ) -> Result<(), ExternalError>
pub fn set_cursor_position( &self, position: Position, ) -> Result<(), ExternalError>
pub fn set_cursor_hittest(&self, hittest: bool) -> Result<(), ExternalError>
sourcepub fn drag_window(&self) -> Result<(), ExternalError>
pub fn drag_window(&self) -> Result<(), ExternalError>
Moves the window while it is being dragged.
sourcepub fn drag_resize_window(
&self,
direction: ResizeDirection,
) -> Result<(), ExternalError>
pub fn drag_resize_window( &self, direction: ResizeDirection, ) -> Result<(), ExternalError>
Resizes the window while it is being dragged.
sourcefn drag_initiate(&self, action: isize) -> Result<(), ExternalError>
fn drag_initiate(&self, action: isize) -> Result<(), ExternalError>
Initiates a drag operation while the left mouse button is pressed.
pub fn set_ime_cursor_area(&self, spot: Position, _size: Size)
pub fn set_ime_allowed(&self, allowed: bool)
pub fn set_ime_purpose(&self, _purpose: ImePurpose)
pub fn focus_window(&self)
pub fn request_user_attention(&self, request_type: Option<UserAttentionType>)
pub(crate) fn generate_activation_token(&self) -> Result<String, X11Error>
pub fn request_activation_token( &self, ) -> Result<AsyncRequestSerial, NotSupportedError>
pub fn id(&self) -> WindowId
pub fn request_redraw(&self)
pub fn pre_present_notify(&self)
pub fn raw_window_handle_rwh_06(&self) -> Result<RawWindowHandle, HandleError>
pub fn raw_display_handle_rwh_06(&self) -> Result<RawDisplayHandle, HandleError>
pub fn theme(&self) -> Option<Theme>
pub fn set_content_protected(&self, _protected: bool)
pub fn has_focus(&self) -> bool
pub fn title(&self) -> String
Trait Implementations§
impl Send for UnownedWindow
impl Sync for UnownedWindow
Auto Trait Implementations§
impl !Freeze for UnownedWindow
impl RefUnwindSafe for UnownedWindow
impl Unpin for UnownedWindow
impl UnwindSafe for UnownedWindow
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.