Rewild Your Web
web
browser
dweb
1--- original
2+++ modified
3@@ -215,6 +215,18 @@
4 self.delegate().request_create_new(self.clone(), request);
5 }
6
7+ pub(crate) fn request_create_embedded(
8+ &self,
9+ response_sender: GenericSender<Option<NewWebViewDetails>>,
10+ ) {
11+ let request = CreateNewWebViewRequest {
12+ servo: self.inner().servo.clone(),
13+ responder: IpcResponder::new(response_sender, None),
14+ };
15+ self.delegate()
16+ .request_create_embedded(self.clone(), request);
17+ }
18+
19 pub(crate) fn viewport_details(&self) -> ViewportDetails {
20 // The division by 1 represents the page's default zoom of 100%,
21 // and gives us the appropriate CSSPixel type for the viewport.
22@@ -224,6 +236,7 @@
23 ViewportDetails {
24 size: scaled_viewport_size / Scale::new(1.0),
25 hidpi_scale_factor: Scale::new(inner.hidpi_scale_factor.0),
26+ page_zoom_for_rendering: None,
27 }
28 }
29
30@@ -753,6 +766,11 @@
31 EmbedderControlRequest::FilePicker { .. } => {
32 unreachable!("This message should be routed through the FileManagerThread")
33 },
34+ EmbedderControlRequest::PermissionPrompt { .. } => {
35+ unreachable!(
36+ "Permission prompts for top-level webviews use EmbedderMsg::PromptPermission, not ShowEmbedderControl"
37+ )
38+ },
39 };
40
41 self.delegate()