mirror of
https://github.com/servo/servo.git
synced 2025-06-23 16:44:33 +01:00
Update WR.
- Subpixel positioning improvements. - Clipping fixes and optimizations. - Fix panic when transform can't be inverted. - Support multiple filters on single stacking context. - Optimize gradients, support unlimited stops. - Add external image + texture cache support. - Support error path on shader compile error. - Optimize border handling in texture atlas. - Preliminary work towards clip/scroll root changes.
This commit is contained in:
parent
db3e5be878
commit
f1558b1c7b
9 changed files with 36 additions and 46 deletions
50
Cargo.lock
generated
50
Cargo.lock
generated
|
@ -294,7 +294,7 @@ dependencies = [
|
|||
"offscreen_gl_context 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"plugins 0.0.1",
|
||||
"servo_config 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -309,7 +309,7 @@ dependencies = [
|
|||
"plugins 0.0.1",
|
||||
"serde 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_derive 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -444,8 +444,8 @@ dependencies = [
|
|||
"servo_url 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender 0.15.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -479,7 +479,7 @@ dependencies = [
|
|||
"servo_remutex 0.0.1",
|
||||
"servo_url 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"webvr_traits 0.0.1",
|
||||
]
|
||||
|
||||
|
@ -700,7 +700,7 @@ dependencies = [
|
|||
"servo_geometry 0.0.1",
|
||||
"servo_url 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"x11 2.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
|
@ -982,7 +982,7 @@ dependencies = [
|
|||
"time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"truetype 0.24.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"unicode-script 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"xi-unicode 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
|
@ -1062,7 +1062,7 @@ dependencies = [
|
|||
"servo_url 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"user32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"x11 2.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
@ -1362,7 +1362,7 @@ dependencies = [
|
|||
"style_traits 0.0.1",
|
||||
"unicode-bidi 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"unicode-script 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1403,7 +1403,7 @@ dependencies = [
|
|||
"servo_geometry 0.0.1",
|
||||
"servo_url 0.0.1",
|
||||
"style 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1417,7 +1417,7 @@ dependencies = [
|
|||
"profile_traits 0.0.1",
|
||||
"script_traits 0.0.1",
|
||||
"servo_url 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1502,8 +1502,8 @@ dependencies = [
|
|||
"style 0.0.1",
|
||||
"url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webdriver_server 0.0.1",
|
||||
"webrender 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender 0.15.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"webvr 0.0.1",
|
||||
"webvr_traits 0.0.1",
|
||||
]
|
||||
|
@ -1643,7 +1643,7 @@ dependencies = [
|
|||
"plugins 0.0.1",
|
||||
"serde 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_derive 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1679,7 +1679,7 @@ dependencies = [
|
|||
"unicase 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"uuid 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"websocket 0.17.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
|
@ -1739,7 +1739,7 @@ dependencies = [
|
|||
"servo_url 0.0.1",
|
||||
"url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"uuid 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"websocket 0.17.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
|
@ -2292,7 +2292,7 @@ dependencies = [
|
|||
"tinyfiledialogs 2.5.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"uuid 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"websocket 0.17.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webvr 0.0.1",
|
||||
"webvr_traits 0.0.1",
|
||||
|
@ -3161,8 +3161,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "webrender"
|
||||
version = "0.14.0"
|
||||
source = "git+https://github.com/servo/webrender#2f17a525d6b3ff8737b2ffb9e7ff5c1ad11e333a"
|
||||
version = "0.15.0"
|
||||
source = "git+https://github.com/servo/webrender#512b4a1433a7827ef7cfd121d2f99fdd91ecf80e"
|
||||
dependencies = [
|
||||
"app_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bincode 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -3183,13 +3183,13 @@ dependencies = [
|
|||
"offscreen_gl_context 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"threadpool 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "webrender_traits"
|
||||
version = "0.13.0"
|
||||
source = "git+https://github.com/servo/webrender#2f17a525d6b3ff8737b2ffb9e7ff5c1ad11e333a"
|
||||
version = "0.14.0"
|
||||
source = "git+https://github.com/servo/webrender#512b4a1433a7827ef7cfd121d2f99fdd91ecf80e"
|
||||
dependencies = [
|
||||
"app_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -3229,7 +3229,7 @@ dependencies = [
|
|||
"msg 0.0.1",
|
||||
"script_traits 0.0.1",
|
||||
"servo_config 0.0.1",
|
||||
"webrender_traits 0.13.0 (git+https://github.com/servo/webrender)",
|
||||
"webrender_traits 0.14.0 (git+https://github.com/servo/webrender)",
|
||||
"webvr_traits 0.0.1",
|
||||
]
|
||||
|
||||
|
@ -3565,8 +3565,8 @@ dependencies = [
|
|||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
|
||||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff"
|
||||
"checksum webdriver 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cdc28802daddee94267a657ffeac2593a33881fb7a3a44fedd320b1319efcaf6"
|
||||
"checksum webrender 0.14.0 (git+https://github.com/servo/webrender)" = "<none>"
|
||||
"checksum webrender_traits 0.13.0 (git+https://github.com/servo/webrender)" = "<none>"
|
||||
"checksum webrender 0.15.0 (git+https://github.com/servo/webrender)" = "<none>"
|
||||
"checksum webrender_traits 0.14.0 (git+https://github.com/servo/webrender)" = "<none>"
|
||||
"checksum websocket 0.17.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a1a6ea5ed0367f32eb3d94dcc58859ef4294b5f75ba983dbf56ac314af45d"
|
||||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
|
||||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
|
||||
|
|
|
@ -361,11 +361,6 @@ impl webrender_traits::RenderNotifier for RenderNotifier {
|
|||
fn new_scroll_frame_ready(&mut self, composite_needed: bool) {
|
||||
self.compositor_proxy.send(Msg::NewScrollFrameReady(composite_needed));
|
||||
}
|
||||
|
||||
fn pipeline_size_changed(&mut self,
|
||||
_: webrender_traits::PipelineId,
|
||||
_: Option<webrender_traits::LayoutSize>) {
|
||||
}
|
||||
}
|
||||
|
||||
// Used to dispatch functions from webrender to the main thread's event loop.
|
||||
|
|
|
@ -229,8 +229,8 @@ impl WebRenderDisplayItemConverter for DisplayItem {
|
|||
let glyph_offset = glyph.offset().unwrap_or(Point2D::zero());
|
||||
let glyph = webrender_traits::GlyphInstance {
|
||||
index: glyph.id(),
|
||||
x: (origin.x + glyph_offset.x).to_f32_px(),
|
||||
y: (origin.y + glyph_offset.y).to_f32_px(),
|
||||
point: Point2D::new((origin.x + glyph_offset.x).to_f32_px(),
|
||||
(origin.y + glyph_offset.y).to_f32_px()),
|
||||
};
|
||||
glyphs.push(glyph);
|
||||
}
|
||||
|
@ -354,7 +354,11 @@ impl WebRenderDisplayItemConverter for DisplayItem {
|
|||
}
|
||||
DisplayItem::PopStackingContext(_) => builder.pop_stacking_context(),
|
||||
DisplayItem::PushScrollRoot(ref item) => {
|
||||
builder.push_scroll_layer(item.scroll_root.clip.to_rectf(),
|
||||
let clip = builder.new_clip_region(&item.scroll_root.clip.to_rectf(),
|
||||
vec![],
|
||||
None);
|
||||
|
||||
builder.push_scroll_layer(clip,
|
||||
item.scroll_root.size.to_sizef(),
|
||||
item.scroll_root.id.convert_to_webrender());
|
||||
}
|
||||
|
|
|
@ -184,7 +184,7 @@ impl<Window> Browser<Window> where Window: WindowMethods + 'static {
|
|||
clear_framebuffer: true,
|
||||
clear_color: webrender_traits::ColorF::new(1.0, 1.0, 1.0, 1.0),
|
||||
render_target_debug: false,
|
||||
}).unwrap()
|
||||
}).expect("Unable to initialize webrender!")
|
||||
};
|
||||
|
||||
// Important that this call is done in a single-threaded fashion, we
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
[css-scale-nested-001.htm]
|
||||
type: reftest
|
||||
expected: CRASH
|
|
@ -1,3 +0,0 @@
|
|||
[scale-zero-001.htm]
|
||||
type: reftest
|
||||
expected: CRASH
|
|
@ -1,3 +0,0 @@
|
|||
[transform-singular-001.htm]
|
||||
type: reftest
|
||||
expected: CRASH
|
|
@ -1,3 +0,0 @@
|
|||
[transform3d-scale-004.htm]
|
||||
type: reftest
|
||||
expected: CRASH
|
|
@ -0,0 +1,3 @@
|
|||
[css-filters-animation-combined-001.htm]
|
||||
type: reftest
|
||||
expected: FAIL
|
Loading…
Add table
Add a link
Reference in a new issue