raw_window_handle_extensions/
web.rs1use crate::{RawDisplayHandleType, RawWindowHandleType, VeryRawDisplayHandle, VeryRawWindowHandle};
2use raw_window_handle::{WebDisplayHandle, WebWindowHandle};
3
4impl From<WebWindowHandle> for VeryRawWindowHandle {
5 fn from(value: WebWindowHandle) -> Self {
6 Self {
7 handle_type: RawWindowHandleType::Web,
8 ptr_1: std::ptr::null_mut(),
9 ptr_2: std::ptr::null_mut(),
10 ptr_3: std::ptr::null_mut(),
11 id_1: value.id as u64,
12 id_2: Default::default(),
13 }
14 }
15}
16
17impl From<VeryRawWindowHandle> for WebWindowHandle {
18 fn from(value: VeryRawWindowHandle) -> Self {
19 assert_eq!(value.handle_type, RawWindowHandleType::Web);
20 let window_handle = Self::new(value.id_1 as u32);
21 window_handle
22 }
23}
24
25impl From<WebDisplayHandle> for VeryRawDisplayHandle {
26 fn from(_value: WebDisplayHandle) -> Self {
27 Self {
28 handle_type: RawDisplayHandleType::Web,
29 ptr_1: std::ptr::null_mut(),
30 id_1: Default::default(),
31 }
32 }
33}
34
35impl From<VeryRawDisplayHandle> for WebDisplayHandle {
36 fn from(value: VeryRawDisplayHandle) -> Self {
37 assert_eq!(value.handle_type, RawDisplayHandleType::Web);
38 let window_handle = Self::new();
39 window_handle
40 }
41}