Skip to main content

Vine/Server/Notification/
WebviewPostMessage.rs

1//! Cocoon `webview.postMessage` notification - extension called
2//! `WebviewPanel.webview.postMessage(...)`. Stock VS Code delivers
3//! this as a DOM `message` event inside the webview iframe; Land emits
4//! on `sky://webview/postMessage` and lets the Sky bridge relay into
5//! the specific webview DOM container keyed on `{ handle, message }`.
6
7use serde_json::Value;
8
9use crate::{Host::VineHost, dev_log};
10
11pub async fn WebviewPostMessage(Host:&dyn VineHost, Parameter:&Value) {
12	Host.EmitToRenderer("sky://webview/postMessage", Parameter.clone());
13
14	dev_log!(
15		"grpc",
16		"[Webview] postMessage handle={}",
17		Parameter.get("handle").and_then(Value::as_str).unwrap_or("?")
18	);
19}