public ShellSurface(IntPtr handle, IntPtr surfaceHandle, SharedMemory sharedMemory) : base(surfaceHandle, sharedMemory) { ShellSurfaceHandle = handle; SurfaceType = SurfaceType.WaylandShell; _surfacePingListener = OnShellSurfacePing; _surfaceConfigureListener = OnShellSurfaceConfigure; _surfacePopupDoneListener = OnShellSurfacePopupDone; ShellSurfaceSetTopLevel(handle); ShellSurfaceAddListeners(handle, _surfacePingListener, _surfaceConfigureListener, _surfacePopupDoneListener); }
private static extern void ShellSurfaceAddListeners(IntPtr registry, ShellSurfacePingListener pingListener, ShellSurfaceConfigureListener configureListener, ShellSurfacePopupDoneListener popupDoneListener);