aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2018-11-20 17:02:17 -0800
committerManish Goregaokar <manishsmail@gmail.com>2018-11-27 17:33:13 -0800
commit5413328be2838b725cc7fe82754e75f2c289f272 (patch)
tree3e35776bc1d71828888f1446a4a807040fded9be
parent482923cec2947b1f4698cdd5c31802bed1ce8a14 (diff)
downloadservo-5413328be2838b725cc7fe82754e75f2c289f272.tar.gz
servo-5413328be2838b725cc7fe82754e75f2c289f272.zip
Update webrender
-rw-r--r--Cargo.lock91
-rw-r--r--components/canvas/canvas_data.rs5
-rw-r--r--components/canvas/webgl_thread.rs6
-rw-r--r--components/compositing/compositor.rs8
-rw-r--r--components/compositing/compositor_thread.rs8
-rw-r--r--components/compositing/windowing.rs12
-rw-r--r--components/embedder_traits/lib.rs4
-rw-r--r--components/layout/display_list/border.rs12
-rw-r--r--components/layout/display_list/builder.rs6
-rw-r--r--components/layout/display_list/webrender_helpers.rs22
-rw-r--r--components/net/image_cache.rs2
-rw-r--r--components/script/dom/htmlmediaelement.rs11
-rw-r--r--components/script/dom/screen.rs6
-rw-r--r--components/script/dom/window.rs8
-rw-r--r--components/script_traits/lib.rs4
-rw-r--r--components/script_traits/script_msg.rs8
-rw-r--r--components/webdriver_server/lib.rs7
-rw-r--r--ports/libmlservo/src/lib.rs10
-rw-r--r--ports/libsimpleservo/src/api.rs4
-rw-r--r--ports/servo/glutin_app/window.rs26
20 files changed, 138 insertions, 122 deletions
diff --git a/Cargo.lock b/Cargo.lock
index a6852b50b5f..5d0dee2170d 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -137,7 +137,7 @@ version = "0.35.0"
source = "git+https://github.com/servo/rust-azure#a85619e40463ed6139ccc8186ef306e8c62a496d"
dependencies = [
"cmake 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
"servo-freetype-sys 4.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
"servo-skia 0.30000020.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -378,9 +378,9 @@ dependencies = [
"canvas_traits 0.0.1",
"compositing 0.0.1",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"half 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -398,8 +398,8 @@ name = "canvas_traits"
version = "0.0.1"
dependencies = [
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_size_of 0.0.1",
@@ -449,7 +449,7 @@ name = "cgl"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -560,9 +560,9 @@ version = "0.0.1"
dependencies = [
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"embedder_traits 0.0.1",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -598,7 +598,7 @@ dependencies = [
"debugger 0.0.1",
"devtools_traits 0.0.1",
"embedder_traits 0.0.1",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gaol 0.0.1 (git+https://github.com/servo/gaol)",
"gfx 0.0.1",
"gfx_traits 0.0.1",
@@ -1087,7 +1087,7 @@ dependencies = [
[[package]]
name = "euclid"
-version = "0.19.0"
+version = "0.19.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1256,7 +1256,7 @@ dependencies = [
"core-graphics 0.17.3 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 13.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"dwrote 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
"fontsan 0.4.0 (git+https://github.com/servo/fontsan)",
"freetype 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1320,7 +1320,7 @@ dependencies = [
[[package]]
name = "gleam"
-version = "0.6.7"
+version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gl_generator 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1842,7 +1842,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cgl 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"core-foundation 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"leaky-cow 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1964,7 +1964,7 @@ dependencies = [
"bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas_traits 0.0.1",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
"fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx 0.0.1",
@@ -2010,7 +2010,7 @@ dependencies = [
"atomic_refcell 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"embedder_traits 0.0.1",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
"fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx 0.0.1",
@@ -2136,10 +2136,10 @@ dependencies = [
"devtools_traits 0.0.1",
"embedder_traits 0.0.1",
"env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gaol 0.0.1 (git+https://github.com/servo/gaol)",
"gfx 0.0.1",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"layout_thread 0.0.1",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2269,7 +2269,7 @@ dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"hashglobe 0.1.0",
"hyper 0.12.14 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper_serde 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2751,9 +2751,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cgl 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"core-foundation 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gl_generator 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2914,7 +2914,7 @@ dependencies = [
name = "pixels"
version = "0.0.1"
dependencies = [
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_size_of 0.0.1",
"malloc_size_of_derive 0.0.1",
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2931,7 +2931,7 @@ version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"binary-space-partition 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -3258,9 +3258,9 @@ dependencies = [
"embedder_traits 0.0.1",
"encoding_rs 0.8.12 (registry+https://github.com/rust-lang/crates.io-index)",
"enum-iterator 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"headers-core 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
"headers-ext 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"html5ever 0.22.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3335,7 +3335,7 @@ dependencies = [
"canvas_traits 0.0.1",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
"html5ever 0.22.3 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3373,7 +3373,7 @@ dependencies = [
name = "script_tests"
version = "0.0.1"
dependencies = [
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"servo_url 0.0.1",
@@ -3389,7 +3389,7 @@ dependencies = [
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"devtools_traits 0.0.1",
"embedder_traits 0.0.1",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
"http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper 0.12.14 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3475,9 +3475,9 @@ dependencies = [
"bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"glutin 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3547,7 +3547,7 @@ source = "git+https://github.com/servo/media#3b347d7b0431c58611e2bd7b22d34062b64
dependencies = [
"boxfnonce 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"byte-slice-cast 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3592,9 +3592,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cgl 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"cmake 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"expat-sys 2.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"glutin 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"glx 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"io-surface 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3637,7 +3637,7 @@ dependencies = [
"dirs 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"embedder_traits 0.0.1",
"env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3655,7 +3655,7 @@ name = "servo_geometry"
version = "0.0.1"
dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_size_of 0.0.1",
"malloc_size_of_derive 0.0.1",
"style_traits 0.0.1",
@@ -3856,7 +3856,7 @@ dependencies = [
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding_rs 0.8.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"fallible 0.0.1",
"fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"hashglobe 0.1.0",
@@ -3917,7 +3917,7 @@ dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"html5ever 0.22.3 (registry+https://github.com/rust-lang/crates.io-index)",
"parking_lot 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3940,7 +3940,7 @@ dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.25.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_size_of 0.0.1",
"malloc_size_of_derive 0.0.1",
"selectors 0.20.0",
@@ -4538,7 +4538,7 @@ dependencies = [
"base64 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
"cookie 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper 0.12.14 (registry+https://github.com/rust-lang/crates.io-index)",
"image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4561,7 +4561,7 @@ dependencies = [
[[package]]
name = "webrender"
version = "0.57.2"
-source = "git+https://github.com/servo/webrender#9ec08a4cf0ce6762a98ddd4df34611dbf0694703"
+source = "git+https://github.com/servo/webrender#323b7ea140ba956af342e4f2660e67e04913e9fb"
dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"base64 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4573,10 +4573,9 @@ dependencies = [
"core-graphics 0.17.3 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 13.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"dwrote 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
"image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4596,7 +4595,7 @@ dependencies = [
[[package]]
name = "webrender_api"
version = "0.57.2"
-source = "git+https://github.com/servo/webrender#9ec08a4cf0ce6762a98ddd4df34611dbf0694703"
+source = "git+https://github.com/servo/webrender#323b7ea140ba956af342e4f2660e67e04913e9fb"
dependencies = [
"app_units 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bincode 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4605,7 +4604,7 @@ dependencies = [
"core-foundation 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"core-graphics 0.17.3 (registry+https://github.com/rust-lang/crates.io-index)",
"dwrote 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_bytes 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4619,7 +4618,7 @@ version = "0.0.1"
dependencies = [
"canvas_traits 0.0.1",
"crossbeam-channel 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
@@ -4923,7 +4922,7 @@ dependencies = [
"checksum enum-iterator-derive 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "719423964c7a03e4ce4c67115d6e44a5b2dd9b51789a575dfbad68b490b0f0a0"
"checksum env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0e6e40ebb0e66918a37b38c7acab4e10d299e0463fe2af5d29b9cc86710cfd2a"
"checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02"
-"checksum euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "70a2ebdf55fb9d6329046e026329a55ef8fbaae5ea833f56e170beb3125a8a5f"
+"checksum euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)" = "600657e7e5c03bfbccdc68721bc3b5abcb761553973387124eae9c9e4f02c210"
"checksum expat-sys 2.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "658f19728920138342f68408b7cf7644d90d4784353d8ebc32e7e8663dbe45fa"
"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
"checksum fixedbitset 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33"
@@ -4945,7 +4944,7 @@ dependencies = [
"checksum getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)" = "b900c08c1939860ce8b54dc6a89e26e00c04c380fd0e09796799bd7f12861e05"
"checksum gif 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff3414b424657317e708489d2857d9575f4403698428b040b609b9d1c1a84a2c"
"checksum gl_generator 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a0ffaf173cf76c73a73e080366bf556b4776ece104b06961766ff11449f38604"
-"checksum gleam 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bef810e31d619f5b77a7daea76a26ee50e63036637048a9f2128a33d5474141a"
+"checksum gleam 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4b47f5b15742aee359c7895ab98cf2cceecc89bb4feb6f4e42f802d7899877da"
"checksum glib 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "740f7fda8dde5f5e3944dabdb4a73ac6094a8a7fdf0af377468e98ca93733e61"
"checksum glib-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3573351e846caed9f11207b275cd67bc07f0c2c94fb628e5d7c92ca056c7882d"
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
diff --git a/components/canvas/canvas_data.rs b/components/canvas/canvas_data.rs
index 2c8418d38af..04540c8a495 100644
--- a/components/canvas/canvas_data.rs
+++ b/components/canvas/canvas_data.rs
@@ -17,6 +17,7 @@ use ipc_channel::ipc::{IpcSender, IpcSharedMemory};
use num_traits::ToPrimitive;
use std::mem;
use std::sync::Arc;
+use webrender::api::DirtyRect;
pub struct CanvasData<'a> {
drawtarget: DrawTarget,
@@ -462,7 +463,7 @@ impl<'a> CanvasData<'a> {
let size = self.drawtarget.get_size();
let descriptor = webrender_api::ImageDescriptor {
- size: webrender_api::DeviceUintSize::new(size.width as u32, size.height as u32),
+ size: webrender_api::DeviceIntSize::new(size.width, size.height),
stride: None,
format: webrender_api::ImageFormat::BGRA8,
offset: 0,
@@ -478,7 +479,7 @@ impl<'a> CanvasData<'a> {
match self.image_key {
Some(image_key) => {
debug!("Updating image {:?}.", image_key);
- txn.update_image(image_key, descriptor, data, None);
+ txn.update_image(image_key, descriptor, data, &DirtyRect::All);
},
None => {
self.image_key = Some(self.webrender_api.generate_image_key());
diff --git a/components/canvas/webgl_thread.rs b/components/canvas/webgl_thread.rs
index dd279caabf0..a6835844bda 100644
--- a/components/canvas/webgl_thread.rs
+++ b/components/canvas/webgl_thread.rs
@@ -566,7 +566,7 @@ impl<VR: WebVRRenderHandler + 'static> WebGLThread<VR> {
let data = Self::external_image_data(context_id);
let mut txn = webrender_api::Transaction::new();
- txn.update_image(image_key, descriptor, data, None);
+ txn.update_image(image_key, descriptor, data, &webrender_api::DirtyRect::All);
webrender_api.update_resources(txn.resource_updates);
}
@@ -600,14 +600,14 @@ impl<VR: WebVRRenderHandler + 'static> WebGLThread<VR> {
let data = webrender_api::ImageData::new(data);
let mut txn = webrender_api::Transaction::new();
- txn.update_image(image_key, descriptor, data, None);
+ txn.update_image(image_key, descriptor, data, &webrender_api::DirtyRect::All);
webrender_api.update_resources(txn.resource_updates);
}
/// Helper function to create a `webrender_api::ImageDescriptor`.
fn image_descriptor(size: Size2D<i32>, alpha: bool) -> webrender_api::ImageDescriptor {
webrender_api::ImageDescriptor {
- size: webrender_api::DeviceUintSize::new(size.width as u32, size.height as u32),
+ size: webrender_api::DeviceIntSize::new(size.width, size.height),
stride: None,
format: webrender_api::ImageFormat::BGRA8,
offset: 0,
diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs
index 0eb0e695e80..365cb8219ed 100644
--- a/components/compositing/compositor.rs
+++ b/components/compositing/compositor.rs
@@ -1182,8 +1182,12 @@ impl<Window: WindowMethods> IOCompositor<Window> {
&mut self,
target: CompositeTarget,
) -> Result<Option<Image>, UnableToComposite> {
- let width = self.embedder_coordinates.framebuffer.width_typed();
- let height = self.embedder_coordinates.framebuffer.height_typed();
+ let width = self.embedder_coordinates.framebuffer.to_u32().width_typed();
+ let height = self
+ .embedder_coordinates
+ .framebuffer
+ .to_u32()
+ .height_typed();
if !self.window.prepare_for_composite() {
return Err(UnableToComposite::WindowUnprepared);
}
diff --git a/components/compositing/compositor_thread.rs b/components/compositing/compositor_thread.rs
index cb9cefdcdea..e4dee4f595a 100644
--- a/components/compositing/compositor_thread.rs
+++ b/components/compositing/compositor_thread.rs
@@ -17,7 +17,7 @@ use profile_traits::time;
use script_traits::{AnimationState, ConstellationMsg, EventResult};
use std::fmt::{Debug, Error, Formatter};
use style_traits::viewport::ViewportConstraints;
-use webrender_api::{self, DeviceIntPoint, DeviceUintSize};
+use webrender_api::{self, DeviceIntPoint, DeviceIntSize};
/// Sends messages to the compositor.
pub struct CompositorProxy {
@@ -106,11 +106,11 @@ pub enum Msg {
LoadComplete(TopLevelBrowsingContextId),
/// Get Window Informations size and position.
- GetClientWindow(IpcSender<(DeviceUintSize, DeviceIntPoint)>),
+ GetClientWindow(IpcSender<(DeviceIntSize, DeviceIntPoint)>),
/// Get screen size.
- GetScreenSize(IpcSender<DeviceUintSize>),
+ GetScreenSize(IpcSender<DeviceIntSize>),
/// Get screen available size.
- GetScreenAvailSize(IpcSender<DeviceUintSize>),
+ GetScreenAvailSize(IpcSender<DeviceIntSize>),
}
impl Debug for Msg {
diff --git a/components/compositing/windowing.rs b/components/compositing/windowing.rs
index 1356902b8fc..7e95ca02161 100644
--- a/components/compositing/windowing.rs
+++ b/components/compositing/windowing.rs
@@ -17,7 +17,7 @@ use std::fmt::{Debug, Error, Formatter};
#[cfg(feature = "gl")]
use std::rc::Rc;
use style_traits::DevicePixel;
-use webrender_api::{DeviceIntPoint, DevicePoint, DeviceUintRect, DeviceUintSize, ScrollLocation};
+use webrender_api::{DeviceIntPoint, DeviceIntRect, DeviceIntSize, DevicePoint, ScrollLocation};
#[derive(Clone)]
pub enum MouseWindowEvent {
@@ -149,13 +149,13 @@ pub struct EmbedderCoordinates {
/// The pixel density of the display.
pub hidpi_factor: TypedScale<f32, DeviceIndependentPixel, DevicePixel>,
/// Size of the screen.
- pub screen: DeviceUintSize,
+ pub screen: DeviceIntSize,
/// Size of the available screen space (screen without toolbars and docks).
- pub screen_avail: DeviceUintSize,
+ pub screen_avail: DeviceIntSize,
/// Size of the native window.
- pub window: (DeviceUintSize, DeviceIntPoint),
+ pub window: (DeviceIntSize, DeviceIntPoint),
/// Size of the GL buffer in the window.
- pub framebuffer: DeviceUintSize,
+ pub framebuffer: DeviceIntSize,
/// Coordinates of the document within the framebuffer.
- pub viewport: DeviceUintRect,
+ pub viewport: DeviceIntRect,
}
diff --git a/components/embedder_traits/lib.rs b/components/embedder_traits/lib.rs
index bd6249876c3..93c3275522d 100644
--- a/components/embedder_traits/lib.rs
+++ b/components/embedder_traits/lib.rs
@@ -18,7 +18,7 @@ use msg::constellation_msg::{InputMethodType, TopLevelBrowsingContextId};
use servo_url::ServoUrl;
use std::fmt::{Debug, Error, Formatter};
use style_traits::cursor::CursorKind;
-use webrender_api::{DeviceIntPoint, DeviceUintSize};
+use webrender_api::{DeviceIntPoint, DeviceIntSize};
/// Used to wake up the event loop, provided by the servo port/embedder.
pub trait EventLoopWaker: 'static + Send {
@@ -76,7 +76,7 @@ pub enum EmbedderMsg {
/// Move the window to a point
MoveTo(DeviceIntPoint),
/// Resize the window to size
- ResizeTo(DeviceUintSize),
+ ResizeTo(DeviceIntSize),
// Show an alert message.
Alert(String, IpcSender<()>),
/// Wether or not to follow a link
diff --git a/components/layout/display_list/border.rs b/components/layout/display_list/border.rs
index 0b4f543a92a..bf1df990096 100644
--- a/components/layout/display_list/border.rs
+++ b/components/layout/display_list/border.rs
@@ -181,18 +181,18 @@ pub fn image_width(
)
}
-fn resolve_percentage(value: NumberOrPercentage, length: u32) -> u32 {
+fn resolve_percentage(value: NumberOrPercentage, length: i32) -> i32 {
match value {
- NumberOrPercentage::Percentage(p) => (p.0 * length as f32).round() as u32,
- NumberOrPercentage::Number(n) => n.round() as u32,
+ NumberOrPercentage::Percentage(p) => (p.0 * length as f32).round() as i32,
+ NumberOrPercentage::Number(n) => n.round() as i32,
}
}
pub fn image_slice(
border_image_slice: &StyleRect<NumberOrPercentage>,
- width: u32,
- height: u32,
-) -> SideOffsets2D<u32> {
+ width: i32,
+ height: i32,
+) -> SideOffsets2D<i32> {
SideOffsets2D::new(
resolve_percentage(border_image_slice.0, height),
resolve_percentage(border_image_slice.1, width),
diff --git a/components/layout/display_list/builder.rs b/components/layout/display_list/builder.rs
index 755f7e95730..c68853b9149 100644
--- a/components/layout/display_list/builder.rs
+++ b/components/layout/display_list/builder.rs
@@ -1459,9 +1459,9 @@ impl FragmentDisplayListBuilding for Fragment {
let details = BorderDetails::NinePatch(NinePatchBorder {
source,
- width,
- height,
- slice: border::image_slice(border_image_slice, width, height),
+ width: width as i32,
+ height: height as i32,
+ slice: border::image_slice(border_image_slice, width as i32, height as i32),
fill: border_image_fill,
repeat_horizontal: border_image_repeat.0.to_layout(),
repeat_vertical: border_image_repeat.1.to_layout(),
diff --git a/components/layout/display_list/webrender_helpers.rs b/components/layout/display_list/webrender_helpers.rs
index 41f773e08f9..6e79d48b640 100644
--- a/components/layout/display_list/webrender_helpers.rs
+++ b/components/layout/display_list/webrender_helpers.rs
@@ -104,37 +104,43 @@ impl WebRenderDisplayItemConverter for DisplayItem {
match *self {
DisplayItem::Rectangle(ref item) => {
- builder.push_item(SpecificDisplayItem::Rectangle(item.item), &self.prim_info());
+ builder.push_item(
+ &SpecificDisplayItem::Rectangle(item.item),
+ &self.prim_info(),
+ );
},
DisplayItem::Text(ref item) => {
- builder.push_item(SpecificDisplayItem::Text(item.item), &self.prim_info());
+ builder.push_item(&SpecificDisplayItem::Text(item.item), &self.prim_info());
builder.push_iter(item.data.iter());
},
DisplayItem::Image(ref item) => {
- builder.push_item(SpecificDisplayItem::Image(item.item), &self.prim_info());
+ builder.push_item(&SpecificDisplayItem::Image(item.item), &self.prim_info());
},
DisplayItem::Border(ref item) => {
if !item.data.is_empty() {
builder.push_stops(item.data.as_ref());
}
- builder.push_item(SpecificDisplayItem::Border(item.item), &self.prim_info());
+ builder.push_item(&SpecificDisplayItem::Border(item.item), &self.prim_info());
},
DisplayItem::Gradient(ref item) => {
builder.push_stops(item.data.as_ref());
- builder.push_item(SpecificDisplayItem::Gradient(item.item), &self.prim_info());
+ builder.push_item(&SpecificDisplayItem::Gradient(item.item), &self.prim_info());
},
DisplayItem::RadialGradient(ref item) => {
builder.push_stops(item.data.as_ref());
builder.push_item(
- SpecificDisplayItem::RadialGradient(item.item),
+ &SpecificDisplayItem::RadialGradient(item.item),
&self.prim_info(),
);
},
DisplayItem::Line(ref item) => {
- builder.push_item(SpecificDisplayItem::Line(item.item), &self.prim_info());
+ builder.push_item(&SpecificDisplayItem::Line(item.item), &self.prim_info());
},
DisplayItem::BoxShadow(ref item) => {
- builder.push_item(SpecificDisplayItem::BoxShadow(item.item), &self.prim_info());
+ builder.push_item(
+ &SpecificDisplayItem::BoxShadow(item.item),
+ &self.prim_info(),
+ );
},
DisplayItem::PushTextShadow(ref item) => {
builder.push_shadow(&self.prim_info(), item.shadow);
diff --git a/components/net/image_cache.rs b/components/net/image_cache.rs
index 9681a9d2442..8b3a4f56c7d 100644
--- a/components/net/image_cache.rs
+++ b/components/net/image_cache.rs
@@ -72,7 +72,7 @@ fn set_webrender_image_key(webrender_api: &webrender_api::RenderApi, image: &mut
},
};
let descriptor = webrender_api::ImageDescriptor {
- size: webrender_api::DeviceUintSize::new(image.width, image.height),
+ size: webrender_api::DeviceIntSize::new(image.width as i32, image.height as i32),
stride: None,
format: webrender_api::ImageFormat::BGRA8,
offset: 0,
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs
index bfc51227dc5..d78cf8cb8f9 100644
--- a/components/script/dom/htmlmediaelement.rs
+++ b/components/script/dom/htmlmediaelement.rs
@@ -88,8 +88,8 @@ impl MediaFrameRenderer {
impl FrameRenderer for MediaFrameRenderer {
fn render(&mut self, frame: Frame) {
let descriptor = ImageDescriptor::new(
- frame.get_width() as u32,
- frame.get_height() as u32,
+ frame.get_width(),
+ frame.get_height(),
ImageFormat::BGRA8,
false,
false,
@@ -107,7 +107,12 @@ impl FrameRenderer for MediaFrameRenderer {
Some((ref image_key, ref mut width, ref mut height))
if *width == frame.get_width() && *height == frame.get_height() =>
{
- txn.update_image(*image_key, descriptor, image_data, None);
+ txn.update_image(
+ *image_key,
+ descriptor,
+ image_data,
+ &webrender_api::DirtyRect::All,
+ );
if let Some(old_image_key) = self.old_frame.take() {
txn.delete_image(old_image_key);
diff --git a/components/script/dom/screen.rs b/components/script/dom/screen.rs
index 517dcad4ad0..a7cf8160114 100644
--- a/components/script/dom/screen.rs
+++ b/components/script/dom/screen.rs
@@ -16,7 +16,7 @@ use euclid::TypedSize2D;
use profile_traits::ipc;
use script_traits::ScriptMsg;
use style_traits::CSSPixel;
-use webrender_api::DeviceUintSize;
+use webrender_api::DeviceIntSize;
#[dom_struct]
pub struct Screen {
@@ -42,7 +42,7 @@ impl Screen {
fn screen_size(&self) -> TypedSize2D<u32, CSSPixel> {
let (send, recv) =
- ipc::channel::<DeviceUintSize>(self.global().time_profiler_chan().clone()).unwrap();
+ ipc::channel::<DeviceIntSize>(self.global().time_profiler_chan().clone()).unwrap();
self.window
.upcast::<GlobalScope>()
.script_to_constellation_chan()
@@ -55,7 +55,7 @@ impl Screen {
fn screen_avail_size(&self) -> TypedSize2D<u32, CSSPixel> {
let (send, recv) =
- ipc::channel::<DeviceUintSize>(self.global().time_profiler_chan().clone()).unwrap();
+ ipc::channel::<DeviceIntSize>(self.global().time_profiler_chan().clone()).unwrap();
self.window
.upcast::<GlobalScope>()
.script_to_constellation_chan()
diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs
index b07998de6d4..6245f628140 100644
--- a/components/script/dom/window.rs
+++ b/components/script/dom/window.rs
@@ -129,9 +129,7 @@ use style::str::HTML_SPACE_CHARACTERS;
use style::stylesheets::CssRuleType;
use style_traits::{CSSPixel, DevicePixel, ParsingMode};
use url::Position;
-use webrender_api::{
- DeviceIntPoint, DeviceUintSize, DocumentId, ExternalScrollId, RenderApiSender,
-};
+use webrender_api::{DeviceIntPoint, DeviceIntSize, DocumentId, ExternalScrollId, RenderApiSender};
use webvr_traits::WebVRMsg;
/// Current state of the window object
@@ -1042,7 +1040,7 @@ impl WindowMethods for Window {
//TODO determine if this operation is allowed
let dpr = self.device_pixel_ratio();
let size = TypedSize2D::new(width, height).to_f32() * dpr;
- self.send_to_embedder(EmbedderMsg::ResizeTo(size.to_u32()));
+ self.send_to_embedder(EmbedderMsg::ResizeTo(size.to_i32()));
}
// https://drafts.csswg.org/cssom-view/#dom-window-resizeby
@@ -1326,7 +1324,7 @@ impl Window {
fn client_window(&self) -> (TypedSize2D<u32, CSSPixel>, TypedPoint2D<i32, CSSPixel>) {
let timer_profile_chan = self.global().time_profiler_chan().clone();
let (send, recv) =
- ProfiledIpc::channel::<(DeviceUintSize, DeviceIntPoint)>(timer_profile_chan).unwrap();
+ ProfiledIpc::channel::<(DeviceIntSize, DeviceIntPoint)>(timer_profile_chan).unwrap();
self.send_to_constellation(ScriptMsg::GetClientWindow(send));
let (size, point) = recv
.recv()
diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs
index 57ed4e77b1c..51e3417e274 100644
--- a/components/script_traits/lib.rs
+++ b/components/script_traits/lib.rs
@@ -54,7 +54,7 @@ use style_traits::cursor::CursorKind;
use style_traits::CSSPixel;
use style_traits::SpeculativePainter;
use webrender_api::{
- DevicePixel, DeviceUintSize, DocumentId, ExternalScrollId, ImageKey, RenderApiSender,
+ DeviceIntSize, DevicePixel, DocumentId, ExternalScrollId, ImageKey, RenderApiSender,
};
use webvr_traits::{WebVREvent, WebVRMsg};
@@ -701,7 +701,7 @@ pub enum WebDriverCommandMsg {
/// Set the window size.
SetWindowSize(
TopLevelBrowsingContextId,
- DeviceUintSize,
+ DeviceIntSize,
IpcSender<WindowSizeData>,
),
/// Take a screenshot of the window.
diff --git a/components/script_traits/script_msg.rs b/components/script_traits/script_msg.rs
index 50eddc30a0a..4cb64c162f4 100644
--- a/components/script_traits/script_msg.rs
+++ b/components/script_traits/script_msg.rs
@@ -28,7 +28,7 @@ use std::fmt;
use style_traits::cursor::CursorKind;
use style_traits::viewport::ViewportConstraints;
use style_traits::CSSPixel;
-use webrender_api::{DeviceIntPoint, DeviceUintSize};
+use webrender_api::{DeviceIntPoint, DeviceIntSize};
/// Messages from the layout to the constellation.
#[derive(Deserialize, Serialize)]
@@ -185,11 +185,11 @@ pub enum ScriptMsg {
/// Store the data required to activate a service worker for the given scope
RegisterServiceWorker(ScopeThings, ServoUrl),
/// Get Window Informations size and position
- GetClientWindow(IpcSender<(DeviceUintSize, DeviceIntPoint)>),
+ GetClientWindow(IpcSender<(DeviceIntSize, DeviceIntPoint)>),
/// Get the screen size (pixel)
- GetScreenSize(IpcSender<(DeviceUintSize)>),
+ GetScreenSize(IpcSender<(DeviceIntSize)>),
/// Get the available screen size (pixel)
- GetScreenAvailSize(IpcSender<(DeviceUintSize)>),
+ GetScreenAvailSize(IpcSender<(DeviceIntSize)>),
}
impl fmt::Debug for ScriptMsg {
diff --git a/components/webdriver_server/lib.rs b/components/webdriver_server/lib.rs
index 9c5bc67877e..93df193283e 100644
--- a/components/webdriver_server/lib.rs
+++ b/components/webdriver_server/lib.rs
@@ -527,8 +527,11 @@ impl Handler {
};
let size = TypedSize2D::new(width as u32, height as u32);
let top_level_browsing_context_id = self.session()?.top_level_browsing_context_id;
- let cmd_msg =
- WebDriverCommandMsg::SetWindowSize(top_level_browsing_context_id, size, sender.clone());
+ let cmd_msg = WebDriverCommandMsg::SetWindowSize(
+ top_level_browsing_context_id,
+ size.to_i32(),
+ sender.clone(),
+ );
self.constellation_chan
.send(ConstellationMsg::WebDriverCommand(cmd_msg))
diff --git a/ports/libmlservo/src/lib.rs b/ports/libmlservo/src/lib.rs
index 55b22c3b394..15c53387414 100644
--- a/ports/libmlservo/src/lib.rs
+++ b/ports/libmlservo/src/lib.rs
@@ -392,16 +392,16 @@ impl WindowMethods for WindowInstance {
fn get_coordinates(&self) -> EmbedderCoordinates {
EmbedderCoordinates {
hidpi_factor: TypedScale::new(self.hidpi),
- screen: TypedSize2D::new(self.width, self.height),
- screen_avail: TypedSize2D::new(self.width, self.height),
+ screen: TypedSize2D::new(self.width as i32, self.height as i32),
+ screen_avail: TypedSize2D::new(self.width as i32, self.height as i32),
window: (
- TypedSize2D::new(self.width, self.height),
+ TypedSize2D::new(self.width as i32, self.height as i32),
TypedPoint2D::new(0, 0),
),
- framebuffer: TypedSize2D::new(self.width, self.height),
+ framebuffer: TypedSize2D::new(self.width as i32, self.height as i32),
viewport: TypedRect::new(
TypedPoint2D::new(0, 0),
- TypedSize2D::new(self.width, self.height),
+ TypedSize2D::new(self.width as i32, self.height as i32),
),
}
}
diff --git a/ports/libsimpleservo/src/api.rs b/ports/libsimpleservo/src/api.rs
index be84847ad4e..90c6abdb702 100644
--- a/ports/libsimpleservo/src/api.rs
+++ b/ports/libsimpleservo/src/api.rs
@@ -520,9 +520,9 @@ impl WindowMethods for ServoCallbacks {
}
fn get_coordinates(&self) -> EmbedderCoordinates {
- let size = TypedSize2D::new(self.width.get(), self.height.get());
+ let size = TypedSize2D::new(self.width.get() as i32, self.height.get() as i32);
EmbedderCoordinates {
- viewport: webrender_api::DeviceUintRect::new(TypedPoint2D::zero(), size),
+ viewport: webrender_api::DeviceIntRect::new(TypedPoint2D::zero(), size),
framebuffer: size,
window: (size, TypedPoint2D::new(0, 0)),
screen: size,
diff --git a/ports/servo/glutin_app/window.rs b/ports/servo/glutin_app/window.rs
index ef6aafbffb1..f2ab3bbd9b3 100644
--- a/ports/servo/glutin_app/window.rs
+++ b/ports/servo/glutin_app/window.rs
@@ -18,7 +18,7 @@ use servo::servo_config::opts;
use servo::servo_geometry::DeviceIndependentPixel;
use servo::style_traits::DevicePixel;
use servo::style_traits::cursor::CursorKind;
-use servo::webrender_api::{DeviceIntPoint, DeviceUintRect, DeviceUintSize, ScrollLocation};
+use servo::webrender_api::{DeviceIntPoint, DeviceIntRect, DeviceIntSize, ScrollLocation};
use std::cell::{Cell, RefCell};
#[cfg(any(target_os = "linux", target_os = "macos"))]
use std::ffi::CString;
@@ -169,8 +169,8 @@ impl Window {
is_foreground: bool,
window_size: TypedSize2D<u32, DeviceIndependentPixel>,
) -> Rc<Window> {
- let win_size: DeviceUintSize =
- (window_size.to_f32() * window_creation_scale_factor()).to_u32();
+ let win_size: DeviceIntSize =
+ (window_size.to_f32() * window_creation_scale_factor()).to_i32();
let width = win_size.to_untyped().width;
let height = win_size.to_untyped().height;
@@ -183,9 +183,9 @@ impl Window {
let screen_size;
let inner_size;
let window_kind = if opts::get().headless {
- screen_size = TypedSize2D::new(width, height);
- inner_size = TypedSize2D::new(width, height);
- WindowKind::Headless(HeadlessContext::new(width, height))
+ screen_size = TypedSize2D::new(width as u32, height as u32);
+ inner_size = TypedSize2D::new(width as u32, height as u32);
+ WindowKind::Headless(HeadlessContext::new(width as u32, height as u32))
} else {
let events_loop = winit::EventsLoop::new();
let mut window_builder = winit::WindowBuilder::new()
@@ -308,7 +308,7 @@ impl Window {
}
}
- pub fn set_inner_size(&self, size: DeviceUintSize) {
+ pub fn set_inner_size(&self, size: DeviceIntSize) {
if let WindowKind::Window(ref window, _) = self.kind {
let size = size.to_f32() / self.device_hidpi_factor();
window.set_inner_size(LogicalSize::new(size.width.into(), size.height.into()))
@@ -685,16 +685,16 @@ impl WindowMethods for Window {
let LogicalPosition { x, y } = window
.get_position()
.unwrap_or(LogicalPosition::new(0., 0.));
- let win_size = (TypedSize2D::new(width as f32, height as f32) * dpr).to_u32();
+ let win_size = (TypedSize2D::new(width as f32, height as f32) * dpr).to_i32();
let win_origin = (TypedPoint2D::new(x as f32, y as f32) * dpr).to_i32();
- let screen = (self.screen_size.to_f32() * dpr).to_u32();
+ let screen = (self.screen_size.to_f32() * dpr).to_i32();
let LogicalSize { width, height } = window
.get_inner_size()
.expect("Failed to get window inner size.");
- let inner_size = (TypedSize2D::new(width as f32, height as f32) * dpr).to_u32();
+ let inner_size = (TypedSize2D::new(width as f32, height as f32) * dpr).to_i32();
- let viewport = DeviceUintRect::new(TypedPoint2D::zero(), inner_size);
+ let viewport = DeviceIntRect::new(TypedPoint2D::zero(), inner_size);
EmbedderCoordinates {
viewport: viewport,
@@ -709,9 +709,9 @@ impl WindowMethods for Window {
WindowKind::Headless(ref context) => {
let dpr = self.servo_hidpi_factor();
let size =
- (TypedSize2D::new(context.width, context.height).to_f32() * dpr).to_u32();
+ (TypedSize2D::new(context.width, context.height).to_f32() * dpr).to_i32();
EmbedderCoordinates {
- viewport: DeviceUintRect::new(TypedPoint2D::zero(), size),
+ viewport: DeviceIntRect::new(TypedPoint2D::zero(), size),
framebuffer: size,
window: (size, TypedPoint2D::zero()),
screen: size,