diff --git a/gdk4/src/drag_surface_size.rs b/gdk4/src/drag_surface_size.rs index 53091d3adce2..087dec6d35d1 100644 --- a/gdk4/src/drag_surface_size.rs +++ b/gdk4/src/drag_surface_size.rs @@ -1,22 +1,22 @@ // Take a look at the license at the top of the repository in the LICENSE file. +use std::ptr::NonNull; + use glib::translate::*; -glib::wrapper! { - #[doc(alias = "GdkDragSurfaceSize")] - #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] - pub struct DragSurfaceSize(Boxed); +#[repr(transparent)] +#[doc(alias = "GdkDragSurfaceSize")] +pub struct DragSurfaceSize(NonNull); - match fn { - copy => |ptr| glib::gobject_ffi::g_boxed_copy(ffi::gdk_drag_surface_size_get_type(), ptr as *mut _) as *mut ffi::GdkDragSurfaceSize, - free => |ptr| glib::gobject_ffi::g_boxed_free(ffi::gdk_drag_surface_size_get_type(), ptr as *mut _), - type_ => || ffi::gdk_drag_surface_size_get_type(), +impl glib::StaticType for DragSurfaceSize { + fn static_type() -> glib::Type { + unsafe { from_glib(ffi::gdk_drag_surface_size_get_type()) } } } impl DragSurfaceSize { #[doc(alias = "gdk_drag_surface_size_set_size")] pub fn set_size(&self, width: i32, height: i32) { - unsafe { ffi::gdk_drag_surface_size_set_size(self.to_glib_none().0, width, height) } + unsafe { ffi::gdk_drag_surface_size_set_size(self.0.as_ptr(), width, height) } } }