Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update WR (details below): #18890

Merged
merged 1 commit into from Oct 16, 2017
Merged
Changes from all commits
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

Update WR (details below):

* Add support for clip masks on text runs.
* Fix atomic ordering of items with multiple shadows.
* Update to bincode + ipc-channel with optimizations.
* Fix some plane splitting precision errors.
* Improve the anti-aliasing quality significantly.
* Add internal ClipChain support.
* Fix diacritic glyphs on Linux.
  • Loading branch information
gw3583 committed Oct 16, 2017
commit 4469f39f3fe9b214074b8cbff8685b8deabed9b3

Large diffs are not rendered by default.

@@ -13,7 +13,7 @@ path = "lib.rs"
bitflags = "0.7"
bluetooth_traits = {path = "../bluetooth_traits"}
device = {git = "https://github.com/servo/devices", features = ["bluetooth-test"]}
ipc-channel = "0.8"
ipc-channel = "0.9"
servo_config = {path = "../config"}
servo_rand = {path = "../rand"}
uuid = {version = "0.5", features = ["v4"]}
@@ -10,7 +10,7 @@ name = "bluetooth_traits"
path = "lib.rs"

[dependencies]
ipc-channel = "0.8"
ipc-channel = "0.9"
regex = "0.2"
serde = "1.0"
servo_config = {path = "../config"}
@@ -17,7 +17,7 @@ cssparser = "0.22.0"
euclid = "0.15"
fnv = "1.0"
gleam = "0.4"
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
num-traits = "0.1.32"
offscreen_gl_context = { version = "0.11", features = ["serde", "osmesa"] }
@@ -14,7 +14,7 @@ cssparser = "0.22.0"
euclid = "0.15"
heapsize = "0.4"
heapsize_derive = "0.1"
ipc-channel = "0.8"
ipc-channel = "0.9"
lazy_static = "0.2"
nonzero = {path = "../nonzero"}
offscreen_gl_context = { version = "0.11", features = ["serde"] }
@@ -14,7 +14,7 @@ euclid = "0.15"
gfx_traits = {path = "../gfx_traits"}
gleam = "0.4"
image = "0.16"
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
msg = {path = "../msg"}
net_traits = {path = "../net_traits"}
@@ -22,7 +22,7 @@ euclid = "0.15"
gfx = {path = "../gfx"}
gfx_traits = {path = "../gfx_traits"}
hyper = "0.10"
ipc-channel = "0.8"
ipc-channel = "0.9"
itertools = "0.5"
layout_traits = {path = "../layout_traits"}
log = "0.3.5"
@@ -13,7 +13,7 @@ path = "lib.rs"
devtools_traits = {path = "../devtools_traits"}
hyper = "0.10"
hyper_serde = "0.7"
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
msg = {path = "../msg"}
serde = "1.0"
@@ -15,7 +15,7 @@ heapsize = "0.4"
heapsize_derive = "0.1"
hyper = "0.10"
hyper_serde = "0.7"
ipc-channel = "0.8"
ipc-channel = "0.9"
msg = {path = "../msg"}
serde = "1.0"
servo_url = {path = "../url"}
@@ -23,7 +23,7 @@ gfx_traits = {path = "../gfx_traits"}
harfbuzz-sys = "0.1"
heapsize = "0.4"
heapsize_derive = "0.1"
ipc-channel = "0.8"
ipc-channel = "0.9"
lazy_static = "0.2"
libc = "0.2"
log = "0.3.5"
@@ -606,7 +606,7 @@ pub enum DisplayItem {
Line(Box<LineDisplayItem>),
BoxShadow(Box<BoxShadowDisplayItem>),
PushTextShadow(Box<PushTextShadowDisplayItem>),
PopTextShadow(Box<PopTextShadowDisplayItem>),
PopAllTextShadows(Box<PopAllTextShadowsDisplayItem>),
Iframe(Box<IframeDisplayItem>),
PushStackingContext(Box<PushStackingContextItem>),
PopStackingContext(Box<PopStackingContextItem>),
@@ -1190,7 +1190,7 @@ pub struct PushTextShadowDisplayItem {

/// Defines a text shadow that affects all items until the next PopTextShadow.
#[derive(Clone, Deserialize, HeapSizeOf, Serialize)]
pub struct PopTextShadowDisplayItem {
pub struct PopAllTextShadowsDisplayItem {
/// Fields common to all display items.
pub base: BaseDisplayItem,
}
@@ -1248,7 +1248,7 @@ impl DisplayItem {
DisplayItem::Line(ref line) => &line.base,
DisplayItem::BoxShadow(ref box_shadow) => &box_shadow.base,
DisplayItem::PushTextShadow(ref push_text_shadow) => &push_text_shadow.base,
DisplayItem::PopTextShadow(ref pop_text_shadow) => &pop_text_shadow.base,
DisplayItem::PopAllTextShadows(ref pop_text_shadow) => &pop_text_shadow.base,
DisplayItem::Iframe(ref iframe) => &iframe.base,
DisplayItem::PushStackingContext(ref stacking_context) => &stacking_context.base,
DisplayItem::PopStackingContext(ref item) => &item.base,
@@ -1373,7 +1373,7 @@ impl fmt::Debug for DisplayItem {
DisplayItem::Line(_) => "Line".to_owned(),
DisplayItem::BoxShadow(_) => "BoxShadow".to_owned(),
DisplayItem::PushTextShadow(_) => "PushTextShadow".to_owned(),
DisplayItem::PopTextShadow(_) => "PopTextShadow".to_owned(),
DisplayItem::PopAllTextShadows(_) => "PopTextShadow".to_owned(),
DisplayItem::Iframe(_) => "Iframe".to_owned(),
DisplayItem::PushStackingContext(_) |
DisplayItem::PopStackingContext(_) |
@@ -20,7 +20,7 @@ gfx = {path = "../gfx"}
gfx_traits = {path = "../gfx_traits"}
heapsize = "0.4"
html5ever = "0.20.0"
ipc-channel = "0.8"
ipc-channel = "0.9"
libc = "0.2"
log = "0.3.5"
msg = {path = "../msg"}
@@ -28,7 +28,7 @@ use gfx::display_list::{BorderRadii, BoxShadowClipMode, BoxShadowDisplayItem, Cl
use gfx::display_list::{ClipScrollNodeType, ClippingRegion, DisplayItem, DisplayItemMetadata};
use gfx::display_list::{DisplayList, DisplayListSection, GradientDisplayItem, IframeDisplayItem};
use gfx::display_list::{ImageBorder, ImageDisplayItem, LineDisplayItem, NormalBorder, OpaqueNode};
use gfx::display_list::{PopTextShadowDisplayItem, PushTextShadowDisplayItem};
use gfx::display_list::{PopAllTextShadowsDisplayItem, PushTextShadowDisplayItem};
use gfx::display_list::{RadialGradientDisplayItem, SolidColorDisplayItem, StackingContext};
use gfx::display_list::{StackingContextType, TextDisplayItem, TextOrientation, WebRenderImageInfo};
use gfx_traits::{combine_id_with_fragment_type, FragmentType, StackingContextId};
@@ -2340,9 +2340,9 @@ impl FragmentDisplayListBuilding for Fragment {
);
}

// Pair all the PushTextShadows
for _ in text_shadows {
state.add_display_item(DisplayItem::PopTextShadow(Box::new(PopTextShadowDisplayItem {
// Pop all the PushTextShadows
if !text_shadows.is_empty() {
state.add_display_item(DisplayItem::PopAllTextShadows(Box::new(PopAllTextShadowsDisplayItem {
base: base.clone(),
})));
}
@@ -465,8 +465,8 @@ impl WebRenderDisplayItemConverter for DisplayItem {
color: item.color,
});
}
DisplayItem::PopTextShadow(_) => {
builder.pop_shadow();
DisplayItem::PopAllTextShadows(_) => {
builder.pop_all_shadows();
}
DisplayItem::Iframe(ref item) => {
let rect = item.base.bounds;
@@ -21,7 +21,7 @@ gfx = {path = "../gfx"}
gfx_traits = {path = "../gfx_traits"}
heapsize = "0.4"
html5ever = "0.20.0"
ipc-channel = "0.8"
ipc-channel = "0.9"
layout = {path = "../layout"}
layout_traits = {path = "../layout_traits"}
lazy_static = "0.2"
@@ -11,7 +11,7 @@ path = "lib.rs"

[dependencies]
gfx = {path = "../gfx"}
ipc-channel = "0.8"
ipc-channel = "0.9"
metrics = {path = "../metrics"}
msg = {path = "../msg"}
net_traits = {path = "../net_traits"}
@@ -12,7 +12,7 @@ path = "lib.rs"
[dependencies]
gfx = {path = "../gfx"}
gfx_traits = {path = "../gfx_traits"}
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
msg = {path = "../msg"}
profile_traits = {path = "../profile_traits"}
@@ -19,7 +19,7 @@ hyper = "0.10"
hyper_serde = "0.7"
hyper-openssl = "0.2.2"
immeta = "0.3.1"
ipc-channel = "0.8"
ipc-channel = "0.9"
lazy_static = "0.2"
log = "0.3.5"
matches = "0.1"
@@ -16,7 +16,7 @@ heapsize_derive = "0.1"
hyper = "0.10"
hyper_serde = "0.7"
image = "0.16"
ipc-channel = "0.8"
ipc-channel = "0.9"
lazy_static = "0.2"
log = "0.3.5"
msg = {path = "../msg"}
@@ -15,7 +15,7 @@ unstable = []
[dependencies]
profile_traits = {path = "../profile_traits"}
influent = "0.4"
ipc-channel = "0.8"
ipc-channel = "0.9"
heartbeats-simple = "0.4"
log = "0.3.5"
serde = "1.0"
@@ -15,7 +15,7 @@ energy-profiling = ["energymon", "energy-monitor"]
[dependencies]
energy-monitor = {version = "0.2.0", optional = true}
energymon = {git = "https://github.com/energymon/energymon-rust.git", optional = true}
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
serde = "1.0"
servo_config = {path = "../config"}
@@ -49,7 +49,7 @@ html5ever = {version = "0.20", features = ["heap_size"]}
hyper = "0.10"
hyper_serde = "0.7"
image = "0.16"
ipc-channel = "0.8"
ipc-channel = "0.9"
js = {git = "https://github.com/servo/rust-mozjs", features = ["promises"]}
jstraceable_derive = {path = "../jstraceable_derive"}
lazy_static = "0.2"
@@ -19,7 +19,7 @@ gfx_traits = {path = "../gfx_traits"}
heapsize = "0.4"
heapsize_derive = "0.1"
html5ever = "0.20.0"
ipc-channel = "0.8"
ipc-channel = "0.9"
libc = "0.2"
log = "0.3.5"
metrics = {path = "../metrics"}
@@ -20,7 +20,7 @@ heapsize = "0.4"
heapsize_derive = "0.1"
hyper = "0.10"
hyper_serde = "0.7"
ipc-channel = "0.8"
ipc-channel = "0.9"
libc = "0.2"
msg = {path = "../msg"}
net_traits = {path = "../net_traits"}
@@ -39,7 +39,7 @@ env_logger = "0.4"
euclid = "0.15"
gfx = {path = "../gfx"}
gleam = "0.4"
ipc-channel = "0.8"
ipc-channel = "0.9"
layout_thread = {path = "../layout_thread"}
log = "0.3"
msg = {path = "../msg"}
@@ -15,7 +15,7 @@ cookie = "0.6"
euclid = "0.15"
hyper = "0.10"
image = "0.16"
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3.5"
msg = {path = "../msg"}
net_traits = {path = "../net_traits"}
@@ -16,7 +16,7 @@ oculusvr = ['rust-webvr/oculusvr']
[dependencies]
canvas_traits = {path = "../canvas_traits"}
euclid = "0.15"
ipc-channel = "0.8"
ipc-channel = "0.9"
log = "0.3"
msg = {path = "../msg"}
rust-webvr = {version = "0.9", features = ["openvr"]}
@@ -10,7 +10,7 @@ name = "webvr_traits"
path = "lib.rs"

[dependencies]
ipc-channel = "0.8"
ipc-channel = "0.9"
msg = {path = "../msg"}
rust-webvr-api = {version = "0.9", features = ["serde-serialization"]}
serde = "1.0"
@@ -12,5 +12,5 @@ doctest = false
[dependencies]
cssparser = "0.22.0"
gfx = {path = "../../../components/gfx"}
ipc-channel = "0.8"
ipc-channel = "0.9"
style = {path = "../../../components/style"}
@@ -13,7 +13,7 @@ doctest = false
euclid = "0.15"
gfx = {path = "../../../components/gfx"}
gfx_traits = {path = "../../../components/gfx_traits"}
ipc-channel = "0.8"
ipc-channel = "0.9"
metrics = {path = "../../../components/metrics"}
msg = {path = "../../../components/msg"}
net_traits = {path = "../../../components/net_traits"}
@@ -16,7 +16,7 @@ flate2 = "0.2.0"
hyper = "0.10"
hyper-openssl = "0.2"
hyper_serde = "0.7"
ipc-channel = "0.8"
ipc-channel = "0.9"
msg = {path = "../../../components/msg"}
net = {path = "../../../components/net"}
net_traits = {path = "../../../components/net_traits"}
@@ -10,6 +10,6 @@ path = "lib.rs"
doctest = false

[dependencies]
ipc-channel = "0.8"
ipc-channel = "0.9"
profile = {path = "../../../components/profile"}
profile_traits = {path = "../../../components/profile_traits"}
@@ -0,0 +1,6 @@
[mix-blend-mode-intermediate-element-overflow-hidden-and-border-radius.htm]
type: reftest

This comment has been minimized.

@emilio

emilio Oct 16, 2017

Member

Can you add a bug: <link-to-issue> entry here?

expected:
if os == "linux": FAIL
bug: https://github.com/servo/webrender/issues/1776

@@ -0,0 +1,5 @@
[transform-3d-rotateY-stair-below-001.htm]
type: reftest

This comment has been minimized.

@emilio

emilio Oct 16, 2017

Member

Same here.

expected: FAIL
bug: https://github.com/servo/webrender/issues/1776

ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.