dependencies: Upgrade to WebRender 0.64 (#31486)

This brings the version of WebRender used in Servo up-to-date with Gecko
upstream. The big change here is that HiDPI is no longer handled via
WebRender. Instead this happens via a scale applied to the root layer in
the compositor. In addition to this change, various changes are made to
Servo to adapt to the new WebRender API.

Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
This commit is contained in:
Martin Robinson 2024-03-14 18:40:54 +01:00 committed by GitHub
parent 4597aeae5f
commit ad37a54f59
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
102 changed files with 704 additions and 600 deletions

View file

@ -527,12 +527,12 @@ impl WindowMethods for Window {
let viewport_size = inner_size - Size2D::from_lengths(Length::zero(), toolbar_height);
let viewport_origin = DeviceIntPoint::zero(); // bottom left
let viewport = DeviceIntRect::new(viewport_origin, viewport_size.to_i32());
let viewport = DeviceIntRect::from_origin_and_size(viewport_origin, viewport_size.to_i32());
let screen = self.screen_size.to_i32();
EmbedderCoordinates {
viewport,
framebuffer: viewport.size,
framebuffer: viewport.size(),
window: (window_size, window_origin),
screen,
// FIXME: Winit doesn't have API for available size. Fallback to screen size

View file

@ -161,7 +161,7 @@ impl WindowMethods for Window {
.unwrap_or(None)
.map(|info| Size2D::from_untyped(info.size))
.unwrap_or(Size2D::new(0, 0));
let viewport = DeviceIntRect::new(Point2D::zero(), size);
let viewport = DeviceIntRect::from_origin_and_size(Point2D::zero(), size);
EmbedderCoordinates {
viewport,
framebuffer: size,