diff --git a/crates/ely_servo_host/src/runtime.rs b/crates/ely_servo_host/src/runtime.rs
index 0102d6f..2a239f6 100644
--- a/crates/ely_servo_host/src/runtime.rs
+++ b/crates/ely_servo_host/src/runtime.rs
@@ -19,6 +19,8 @@ use servo::{
#[path = "runtime_context.rs"]
mod runtime_context;
+#[path = "runtime_paint.rs"]
+mod runtime_paint;
use runtime_context::hidpi_scale_from_factor;
pub use runtime_context::{RenderingContextKind, ServoSurfaceSize};
@@ -109,19 +111,6 @@ impl SoftwareServoHost {
self.create_webview_in_context(tab_id, profile_id, handles)
}
- /// Paint and present the current surface without RGBA readback.
- pub fn paint_without_readback(&mut self, webview_id: &WebViewId) -> Result<(), ServoHostError> {
- self.paint_without_readback_with_completion(webview_id, true)
- }
-
- pub fn paint_without_readback_with_completion(
- &mut self,
- webview_id: &WebViewId,
- wait_for_completion: bool,
- ) -> Result<(), ServoHostError> {
- self.paint_webview(webview_id, false, wait_for_completion).map(|_| ())
- }
-
pub fn close_webview(&mut self, webview_id: &WebViewId) -> bool {
let Some(webview) = self.webviews.remove(webview_id) else {
return false;
@@ -173,48 +162,6 @@ impl SoftwareServoHost {
})
}
- fn paint_webview(
- &mut self,
- webview_id: &WebViewId,
- capture_frame: bool,
- wait_for_completion: bool,
- ) -> Result