dioxus_maplibre/handle/
padding.rs1#![allow(clippy::needless_pass_by_value, clippy::unused_async)]
3
4use super::MapHandle;
5use crate::options::Padding;
6#[cfg(target_arch = "wasm32")]
7use dioxus::prelude::document;
8
9impl MapHandle {
10 pub fn set_padding(&self, padding: Padding) {
12 self.fire_and_forget(|| {
13 let json = serde_json::to_string(&padding).unwrap_or_default();
14 crate::interop::set_padding_js(&self.map_id, &json)
15 });
16 }
17
18 #[cfg(target_arch = "wasm32")]
20 pub async fn get_padding(&self) -> Option<Padding> {
21 let js = crate::interop::get_padding_js(&self.map_id);
22 document::eval(&js).join::<Padding>().await.ok()
23 }
24
25 #[cfg(not(target_arch = "wasm32"))]
27 pub async fn get_padding(&self) -> Option<Padding> {
28 None
29 }
30}