mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
webdriver: Get the window position as well as the size when resolving "Get Window Rect" (#37812)
1. Rename `GetWindowSize` to `GetWindowRect` 2. Return the WindowRect in device pixels correctly. Previously, it returns `(0, 0, ScreenWidth, ScreenHeight)` which is a static value. 3. Add `fn window_rect` to `WindowPortsMethods`. Implement it for both Headless Window and Headed Window. Testing: Tested manually with powershell script. Result is now dynamic and reflects the truth. Fixes: Task 1 & 2 of https://github.com/servo/servo/issues/37804 --------- Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
This commit is contained in:
parent
95d9d3a412
commit
94f35ba998
7 changed files with 35 additions and 19 deletions
|
@ -20,7 +20,7 @@ use servo_url::ServoUrl;
|
|||
use style_traits::CSSPixel;
|
||||
use webdriver::common::{WebElement, WebFrame, WebWindow};
|
||||
use webdriver::error::ErrorStatus;
|
||||
use webrender_api::units::{DeviceIntSize, DevicePixel};
|
||||
use webrender_api::units::{DeviceIntRect, DeviceIntSize, DevicePixel};
|
||||
|
||||
use crate::{MouseButton, MouseButtonAction};
|
||||
|
||||
|
@ -31,7 +31,7 @@ pub struct WebDriverMessageId(pub usize);
|
|||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub enum WebDriverCommandMsg {
|
||||
/// Get the window size.
|
||||
GetWindowSize(WebViewId, IpcSender<Size2D<i32, DevicePixel>>),
|
||||
GetWindowRect(WebViewId, IpcSender<DeviceIntRect>),
|
||||
/// Get the viewport size.
|
||||
GetViewportSize(WebViewId, IpcSender<Size2D<u32, DevicePixel>>),
|
||||
/// Load a URL in the top-level browsing context with the given ID.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue