Update WebView variants of ConstellationMsg (#32163)

* Add ConstellationMsg::WebViewOpened

* Remove unused variants

* Send the message on first webview as well
This commit is contained in:
Ngo Iok Ui (Wu Yu Wei) 2024-04-29 16:59:52 +09:00 committed by GitHub
parent 1d6be62454
commit 74897c3851
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 21 additions and 63 deletions

View file

@ -1459,6 +1459,15 @@ where
FromCompositorMsg::NewWebView(url, top_level_browsing_context_id) => {
self.handle_new_top_level_browsing_context(url, top_level_browsing_context_id);
},
// A top level browsing context is created and opened in both constellation and
// compositor.
FromCompositorMsg::WebViewOpened(top_level_browsing_context_id) => {
let msg = (
Some(top_level_browsing_context_id),
EmbedderMsg::WebViewOpened(top_level_browsing_context_id),
);
self.embedder_proxy.send(msg);
},
// Close a top level browsing context.
FromCompositorMsg::CloseWebView(top_level_browsing_context_id) => {
self.handle_close_top_level_browsing_context(top_level_browsing_context_id);
@ -1471,48 +1480,6 @@ where
}
self.handle_panic(top_level_browsing_context_id, error, None);
},
FromCompositorMsg::MoveResizeWebView(top_level_browsing_context_id, rect) => {
if self.webviews.get(top_level_browsing_context_id).is_none() {
return warn!(
"{}: MoveResizeWebView on unknown top-level browsing context",
top_level_browsing_context_id
);
}
self.compositor_proxy.send(CompositorMsg::MoveResizeWebView(
top_level_browsing_context_id,
rect,
));
},
FromCompositorMsg::ShowWebView(webview_id, hide_others) => {
if self.webviews.get(webview_id).is_none() {
return warn!(
"{}: ShowWebView on unknown top-level browsing context",
webview_id
);
}
self.compositor_proxy
.send(CompositorMsg::ShowWebView(webview_id, hide_others));
},
FromCompositorMsg::HideWebView(webview_id) => {
if self.webviews.get(webview_id).is_none() {
return warn!(
"{}: HideWebView on unknown top-level browsing context",
webview_id
);
}
self.compositor_proxy
.send(CompositorMsg::HideWebView(webview_id));
},
FromCompositorMsg::RaiseWebViewToTop(webview_id, hide_others) => {
if self.webviews.get(webview_id).is_none() {
return warn!(
"{}: RaiseWebViewToTop on unknown top-level browsing context",
webview_id
);
}
self.compositor_proxy
.send(CompositorMsg::RaiseWebViewToTop(webview_id, hide_others));
},
FromCompositorMsg::FocusWebView(top_level_browsing_context_id) => {
if self.webviews.get(top_level_browsing_context_id).is_none() {
return warn!("{top_level_browsing_context_id}: FocusWebView on unknown top-level browsing context");
@ -2975,11 +2942,6 @@ where
) {
let window_size = self.window_size.initial_viewport;
let pipeline_id = PipelineId::new();
let msg = (
Some(top_level_browsing_context_id),
EmbedderMsg::WebViewOpened(top_level_browsing_context_id),
);
self.embedder_proxy.send(msg);
let browsing_context_id = BrowsingContextId::from(top_level_browsing_context_id);
let load_data = LoadData::new(
LoadOrigin::Constellation,

View file

@ -76,12 +76,9 @@ mod from_compositor {
Self::Reload(..) => target!("Reload"),
Self::LogEntry(..) => target!("LogEntry"),
Self::NewWebView(..) => target!("NewWebView"),
Self::WebViewOpened(..) => target!("WebViewOpened"),
Self::CloseWebView(..) => target!("CloseWebView"),
Self::SendError(..) => target!("SendError"),
Self::MoveResizeWebView(..) => target!("MoveResizeWebView"),
Self::ShowWebView(..) => target!("ShowWebView"),
Self::HideWebView(..) => target!("HideWebView"),
Self::RaiseWebViewToTop(..) => target!("RaiseWebViewToTop"),
Self::FocusWebView(..) => target!("FocusWebView"),
Self::BlurWebView => target!("BlurWebView"),
Self::ForwardEvent(_, event) => event.log_target(),