gtk4_layer_shell/
manual.rs

1use glib::object::IsA;
2use glib::translate::*;
3use gtk4_layer_shell_sys as ffi;
4
5/// ## `window`
6/// A layer surface.
7///
8/// # Returns
9///
10/// The underlying layer surface Wayland object
11#[doc(alias = "gtk_layer_get_zwlr_layer_surface_v1")]
12#[doc(alias = "get_zwlr_layer_surface_v1")]
13pub fn zwlr_layer_surface_v1(
14    window: &impl IsA<gtk::Window>,
15) -> Option<*mut ffi::zwlr_layer_surface_v1> {
16    assert_initialized_main_thread!();
17
18    unsafe {
19        let ptr = ffi::gtk_layer_get_zwlr_layer_surface_v1(window.as_ref().to_glib_none().0);
20        if ptr.is_null() {
21            None
22        } else {
23            Some(ptr)
24        }
25    }
26}