refactor(renderer): use one document serialization command

This commit is contained in:
ldm0
2026-10-01 16:51:46 +08:00
committed by Donough Liu
parent 0b892ccb59
commit 429847e98a
5 changed files with 8 additions and 15 deletions
@@ -1449,7 +1449,7 @@ impl Page {
}
pub fn start_serialize_html(&self) -> Result<PendingPageCommand> {
self.start_page_command(RendererPageCommand::SerializeHtml)
self.start_page_command(RendererPageCommand::SerializeDocument)
}
/// Publishes current layout for subsequent geometry reads without painting.
@@ -1562,8 +1562,8 @@ impl Page {
expect_page_reply!(
reply,
"serialize HTML page command",
"a string reply",
RendererPageReply::OptionalString(Some(html)) => Ok(html),
"a serialized document reply",
RendererPageReply::SerializedDocument { html, .. } => Ok(html),
)
}
@@ -1576,8 +1576,8 @@ impl Page {
expect_page_reply!(
reply,
"serialize HTML page command",
"a string reply",
RendererPageReply::OptionalString(Some(html)) => Ok(html),
"a serialized document reply",
RendererPageReply::SerializedDocument { html, .. } => Ok(html),
)
}
@@ -75,7 +75,6 @@ impl RendererPageCommand {
| Self::ResetCssAgentSession { .. }
| Self::OuterHtmlForDocument { .. }
| Self::OuterHtmlForBackendNodeId { .. }
| Self::SerializeHtml
| Self::SerializeDocument
| Self::LayoutMetrics
| Self::PublishLayout
@@ -853,9 +853,6 @@ impl PageVm {
RendererPageCommand::RenderPageDump { options } => Ok(RendererPageReply::OptionalString(
Some(self.render_page_dump(options)),
)),
RendererPageCommand::SerializeHtml => {
Ok(RendererPageReply::OptionalString(Some(self.serialize_html())))
}
RendererPageCommand::SerializeDocument => {
// Capture both from the live document in this handler turn.
// Browser admission metadata may precede a queued history update.
@@ -921,7 +921,6 @@ impl RendererRuntimeCommandOutput {
self.v8_state_update = Some(state);
}
#[doc(hidden)]
#[doc(hidden)]
pub fn bind_renderer_agent_attachment(&mut self, id: RendererAgentAttachmentId) {
match self.renderer_agent_attachment_id {
@@ -5008,7 +5007,6 @@ pub enum RendererPageCommand {
RenderPageDump {
options: RendererPageDumpOptions,
},
SerializeHtml,
SerializeDocument,
LayoutMetrics,
PublishLayout,
@@ -5623,7 +5621,6 @@ impl RendererPageCommand {
Self::OuterHtmlForDocument { .. } => Some("OuterHtmlForDocument"),
Self::OuterHtmlForBackendNodeId { .. } => Some("OuterHtmlForBackendNodeId"),
Self::RenderPageDump { .. } => Some("RenderPageDump"),
Self::SerializeHtml => Some("SerializeHtml"),
Self::SerializeDocument => Some("SerializeDocument"),
Self::LayoutMetrics => Some("LayoutMetrics"),
Self::PublishLayout => Some("PublishLayout"),
+3 -3
View File
@@ -278,12 +278,12 @@ async fn recv_page_lifecycle_until(
async fn serialize_html_for_renderer_page(page: &RendererPageHandle) -> String {
let (reply, _) = page
.run_async_command(RendererPageCommand::SerializeHtml)
.run_async_command(RendererPageCommand::SerializeDocument)
.await
.expect("renderer page should serialize HTML");
match reply {
RendererPageReply::OptionalString(Some(html)) => html,
_ => panic!("expected SerializeHtml string reply"),
RendererPageReply::SerializedDocument { html, .. } => html,
_ => panic!("expected serialized document reply"),
}
}