Bug 1500101 - Update webrender to commit 347e66c2aa117724ac6b0f391b346f9c6898ad11 (WR PR 3259). r=kats

Differential Revision: https://phabricator.services.mozilla.com/D10682

--HG--
extra : moz-landing-system : lando
This commit is contained in:
WR Updater Bot 2018-11-02 07:32:52 +00:00
Родитель 8de57eee20
Коммит 366e98d80b
5 изменённых файлов: 3 добавлений и 54 удалений

Просмотреть файл

@ -424,7 +424,6 @@ impl AlphaBatchContainer {
struct SegmentInstanceData {
textures: BatchTextures,
user_data: i32,
is_opaque_override: Option<bool>,
}
/// Encapsulates the logic of building batches for items that are blended.
@ -1342,16 +1341,8 @@ impl AlphaBatchBuilder {
BrushSegmentTaskId::Empty => return,
};
// If the segment instance data specifies opacity for that
// segment, use it. Otherwise, assume opacity for the segment
// from the overall primitive opacity.
let is_segment_opaque = match segment_data.is_opaque_override {
Some(is_opaque) => is_opaque,
None => prim_instance.opacity.is_opaque,
};
let is_inner = segment.edge_flags.is_empty();
let needs_blending = !is_segment_opaque ||
let needs_blending = !prim_instance.opacity.is_opaque ||
segment.clip_task_id.needs_blending() ||
(!is_inner && transform_kind == TransformedRectKind::Complex);
@ -1597,7 +1588,6 @@ impl BrushBatchParameters {
SegmentInstanceData {
textures,
user_data: segment_user_data,
is_opaque_override: None,
}
),
}
@ -1695,7 +1685,6 @@ impl BrushPrimitive {
SegmentInstanceData {
textures: BatchTextures::color(cache_item.texture_id),
user_data: cache_item.uv_rect_handle.as_int(gpu_cache),
is_opaque_override: Some(segment.is_opaque),
}
);
}

Просмотреть файл

@ -192,7 +192,6 @@ impl<'a> DisplayListFlattener<'a> {
pub trait BorderSideHelpers {
fn border_color(&self, is_inner_border: bool) -> ColorF;
fn is_opaque(&self) -> bool;
}
impl BorderSideHelpers for BorderSide {
@ -221,11 +220,6 @@ impl BorderSideHelpers for BorderSide {
let black = if lighter { 0.7 } else { 0.3 };
ColorF::new(black, black, black, self.color.a)
}
/// Returns true if all pixels in this border style are opaque.
fn is_opaque(&self) -> bool {
self.color.a >= 1.0 && self.style.is_opaque()
}
}
/// The kind of border corner clip.
@ -962,12 +956,6 @@ fn add_corner_segment(
return;
}
let is_opaque =
side0.is_opaque() &&
side1.is_opaque() &&
radius.width <= 0.0 &&
radius.height <= 0.0;
brush_segments.push(
BrushSegment::new(
image_rect,
@ -981,7 +969,6 @@ fn add_corner_segment(
border_segments.push(BorderSegmentInfo {
handle: None,
local_task_size: image_rect.size,
is_opaque,
cache_key: RenderTaskCacheKey {
size: DeviceIntSize::zero(),
kind: RenderTaskCacheKeyKind::BorderCorner(
@ -1035,8 +1022,6 @@ fn add_edge_segment(
return;
}
let is_opaque = side.is_opaque();
brush_segments.push(
BrushSegment::new(
image_rect,
@ -1050,7 +1035,6 @@ fn add_edge_segment(
border_segments.push(BorderSegmentInfo {
handle: None,
local_task_size: size,
is_opaque,
cache_key: RenderTaskCacheKey {
size: DeviceIntSize::zero(),
kind: RenderTaskCacheKeyKind::BorderEdge(

Просмотреть файл

@ -547,7 +547,6 @@ pub struct BorderSegmentInfo {
pub handle: Option<RenderTaskCacheEntryHandle>,
pub local_task_size: LayoutSize,
pub cache_key: RenderTaskCacheKey,
pub is_opaque: bool,
}
#[derive(Debug)]
@ -3171,7 +3170,7 @@ impl PrimitiveInstance {
frame_state.gpu_cache,
frame_state.render_tasks,
None,
segment.is_opaque,
false, // TODO(gw): We don't calculate opacity for borders yet!
|render_tasks| {
let task = RenderTask::new_border_segment(
segment.cache_key.size,

Просмотреть файл

@ -435,29 +435,6 @@ impl BorderStyle {
pub fn is_hidden(&self) -> bool {
*self == BorderStyle::Hidden || *self == BorderStyle::None
}
/// Returns true if the border style itself is opaque. Other
/// factors (such as color, or border radii) may mean that
/// the border segment isn't opaque regardless of this.
pub fn is_opaque(&self) -> bool {
match *self {
BorderStyle::None |
BorderStyle::Double |
BorderStyle::Dotted |
BorderStyle::Dashed |
BorderStyle::Hidden => {
false
}
BorderStyle::Solid |
BorderStyle::Groove |
BorderStyle::Ridge |
BorderStyle::Inset |
BorderStyle::Outset => {
true
}
}
}
}
#[repr(u32)]

Просмотреть файл

@ -1 +1 @@
340c25fa718146a5c278d59ccc5194a23dfd7996
347e66c2aa117724ac6b0f391b346f9c6898ad11