tauri-plugin-mpv 0.5.2

A Tauri plugin for embedding the mpv player in your app by controlling its process via JSON IPC.
Documentation
use log::error;

pub fn get_wid(raw_window_handle: raw_window_handle::RawWindowHandle) -> crate::Result<i64> {
    match raw_window_handle {
        raw_window_handle::RawWindowHandle::Win32(handle) => Ok(handle.hwnd.get() as i64),
        raw_window_handle::RawWindowHandle::Xlib(handle) => Ok(handle.window as i64),
        raw_window_handle::RawWindowHandle::Xcb(handle) => Ok(handle.window.get() as i64),
        raw_window_handle::RawWindowHandle::AppKit(handle) => Ok(handle.ns_view.as_ptr() as i64),
        raw_window_handle::RawWindowHandle::Wayland(_) => {
            let error_message =
                "Window embedding via --wid is not supported on Wayland.".to_string();
            error!("{}", error_message);
            Err(crate::Error::UnsupportedPlatform(error_message))
        }
        _ => {
            let error_message = "Unsupported platform.".to_string();
            error!("{}", error_message);
            Err(crate::Error::UnsupportedPlatform("".to_string()))
        }
    }
}