gdk4/auto/
grab_broken_event.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use crate::{ffi, Surface};
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9    /// An event related to a broken windowing system grab.
10    #[doc(alias = "GdkGrabBrokenEvent")]
11    pub struct GrabBrokenEvent(Shared<ffi::GdkGrabBrokenEvent>);
12
13    match fn {
14        ref => |ptr| ffi::gdk_event_ref(ptr as *mut ffi::GdkEvent),
15        unref => |ptr| ffi::gdk_event_unref(ptr as *mut ffi::GdkEvent),
16    }
17}
18
19impl StaticType for GrabBrokenEvent {
20    fn static_type() -> glib::Type {
21        unsafe { from_glib(ffi::gdk_grab_broken_event_get_type()) }
22    }
23}
24
25impl GrabBrokenEvent {
26    /// Extracts the grab surface from a grab broken event.
27    ///
28    /// # Returns
29    ///
30    /// the grab surface of @self
31    #[doc(alias = "gdk_grab_broken_event_get_grab_surface")]
32    #[doc(alias = "get_grab_surface")]
33    pub fn grab_surface(&self) -> Surface {
34        unsafe {
35            from_glib_none(ffi::gdk_grab_broken_event_get_grab_surface(
36                self.to_glib_none().0,
37            ))
38        }
39    }
40
41    /// Checks whether the grab broken event is for an implicit grab.
42    ///
43    /// # Returns
44    ///
45    /// [`true`] if the an implicit grab was broken
46    #[doc(alias = "gdk_grab_broken_event_get_implicit")]
47    #[doc(alias = "get_implicit")]
48    pub fn is_implicit(&self) -> bool {
49        unsafe {
50            from_glib(ffi::gdk_grab_broken_event_get_implicit(
51                self.to_glib_none().0,
52            ))
53        }
54    }
55}