From 795367c751c408b38a45fcbd8a5787ac72f42405 Mon Sep 17 00:00:00 2001 From: Kenzie Raditya Tirtarahardja Date: Mon, 23 Jun 2025 15:52:53 +0800 Subject: [PATCH] Webdriver: Call webdriver handler on headless EventLoop (#37623) Previously, `handle_webdriver_messages` only called in `winit::ApplictionHandler`. This means the webdriver command only looped in headed (desktop) event loop. Testing: this will fix webdriver test on headless `test-wpt`, which widely used in the CI. Signed-off-by: PotatoCP --- ports/servoshell/desktop/app.rs | 2 +- ports/servoshell/desktop/events_loop.rs | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/servoshell/desktop/app.rs b/ports/servoshell/desktop/app.rs index 95407a09f1e..c24e5426d5f 100644 --- a/ports/servoshell/desktop/app.rs +++ b/ports/servoshell/desktop/app.rs @@ -316,7 +316,7 @@ impl App { } } - fn handle_webdriver_messages(&mut self) { + pub fn handle_webdriver_messages(&self) { let AppState::Running(running_state) = &self.state else { return; }; diff --git a/ports/servoshell/desktop/events_loop.rs b/ports/servoshell/desktop/events_loop.rs index e47257d4f23..859e9d8ba8a 100644 --- a/ports/servoshell/desktop/events_loop.rs +++ b/ports/servoshell/desktop/events_loop.rs @@ -93,6 +93,7 @@ impl EventsLoop { app.init(None); loop { self.sleep(flag, condvar); + app.handle_webdriver_messages(); if !app.handle_events_with_headless() { break; }