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

Sync changes from mozilla-central gfx/wr #3842

Merged
merged 3 commits into from Jan 24, 2020
Merged
Changes from all commits
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

@@ -270,20 +270,20 @@ impl FrameBuilder {
fb_config: &scene.config,
};

let root_render_task = RenderTask::new_picture(
RenderTaskLocation::Fixed(scene.output_rect),
scene.output_rect.size.to_f32(),
scene.root_pic_index,
DeviceIntPoint::zero(),
UvRectKind::Rect,
ROOT_SPATIAL_NODE_INDEX,
global_device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let root_render_task_id = render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Fixed(scene.output_rect),
scene.output_rect.size.to_f32(),
scene.root_pic_index,
DeviceIntPoint::zero(),
UvRectKind::Rect,
ROOT_SPATIAL_NODE_INDEX,
global_device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let root_render_task_id = render_tasks.add(root_render_task);

// Construct a dummy root surface, that represents the
// main framebuffer surface.
let root_surface = SurfaceInfo::new(
@@ -3613,20 +3613,20 @@ impl PicturePrimitive {
true,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, device_rect.size),
unclipped.size,
pic_index,
device_rect.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let picture_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, device_rect.size),
unclipped.size,
pic_index,
device_rect.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let picture_task_id = frame_state.render_tasks.add(picture_task);

let blur_render_task_id = RenderTask::new_blur(
blur_std_deviation,
picture_task_id,
@@ -3676,20 +3676,22 @@ impl PicturePrimitive {
true,
);

let mut picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, device_rect.size),
unclipped.size,
pic_index,
device_rect.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
);
picture_task.mark_for_saving();
let picture_task_id = frame_state.render_tasks.add().init({
let mut picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, device_rect.size),
unclipped.size,
pic_index,
device_rect.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
);
picture_task.mark_for_saving();

let picture_task_id = frame_state.render_tasks.add(picture_task);
picture_task
});

self.secondary_render_task_id = Some(picture_task_id);

@@ -3723,19 +3725,7 @@ impl PicturePrimitive {
true,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
);

let readback_task_id = frame_state.render_tasks.add(
let readback_task_id = frame_state.render_tasks.add().init(
RenderTask::new_readback(clipped)
);

@@ -3746,7 +3736,19 @@ impl PicturePrimitive {

self.secondary_render_task_id = Some(readback_task_id);

let render_task_id = frame_state.render_tasks.add(picture_task);
let render_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

Some((render_task_id, render_task_id))
}
@@ -3759,20 +3761,20 @@ impl PicturePrimitive {
true,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let render_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let render_task_id = frame_state.render_tasks.add(picture_task);

Some((render_task_id, render_task_id))
}
PictureCompositeMode::ComponentTransferFilter(..) => {
@@ -3784,20 +3786,20 @@ impl PicturePrimitive {
true,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let render_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let render_task_id = frame_state.render_tasks.add(picture_task);

Some((render_task_id, render_task_id))
}
PictureCompositeMode::TileCache { .. } => {
@@ -3996,23 +3998,23 @@ impl PicturePrimitive {
tile_cache.current_tile_size,
);

let task = RenderTask::new_picture(
RenderTaskLocation::PictureCache {
size: tile_cache.current_tile_size,
surface,
},
tile_cache.current_tile_size.to_f32(),
pic_index,
content_origin.to_i32(),
UvRectKind::Rect,
surface_spatial_node_index,
device_pixel_scale,
*visibility_mask,
Some(scissor_rect.to_i32()),
let render_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::PictureCache {
size: tile_cache.current_tile_size,
surface,
},
tile_cache.current_tile_size.to_f32(),
pic_index,
content_origin.to_i32(),
UvRectKind::Rect,
surface_spatial_node_index,
device_pixel_scale,
*visibility_mask,
Some(scissor_rect.to_i32()),
)
);

let render_task_id = frame_state.render_tasks.add(task);

frame_state.render_tasks.add_dependency(
frame_state.surfaces[parent_surface_index.0].render_tasks.unwrap().port,
render_task_id,
@@ -4060,20 +4062,20 @@ impl PicturePrimitive {
supports_snapping,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let render_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let render_task_id = frame_state.render_tasks.add(picture_task);

Some((render_task_id, render_task_id))
}
PictureCompositeMode::SvgFilter(ref primitives, ref filter_datas) => {
@@ -4085,20 +4087,20 @@ impl PicturePrimitive {
true,
);

let picture_task = RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
let picture_task_id = frame_state.render_tasks.add().init(
RenderTask::new_picture(
RenderTaskLocation::Dynamic(None, clipped.size),
unclipped.size,
pic_index,
clipped.origin,
uv_rect_kind,
surface_spatial_node_index,
device_pixel_scale,
PrimitiveVisibilityMask::all(),
None,
)
);

let picture_task_id = frame_state.render_tasks.add(picture_task);

let filter_task_id = RenderTask::new_svg_filter(
primitives,
filter_datas,
@@ -237,35 +237,24 @@ impl ImageData {
// Create a task to blit from the texture cache to
// a normal transient render task surface. This will
// copy only the sub-rect, if specified.
let cache_to_target_task = if false {
// TODO: figure out if/when this can be used
RenderTask::new_blit_with_padding(
*size,
padding,
BlitSource::Image { key: image_cache_key },
)
} else {
RenderTask::new_scaling_with_padding(
BlitSource::Image { key: image_cache_key },
render_tasks,
target_kind,
*size,
padding,
)
};
let cache_to_target_task_id = render_tasks.add(cache_to_target_task);
// TODO: figure out if/when we can do a blit instead.
let cache_to_target_task_id = RenderTask::new_scaling_with_padding(
BlitSource::Image { key: image_cache_key },
render_tasks,
target_kind,
*size,
padding,
);

// Create a task to blit the rect from the child render
// task above back into the right spot in the persistent
// render target cache.
let target_to_cache_task = RenderTask::new_blit(
render_tasks.add().init(RenderTask::new_blit(
*size,
BlitSource::RenderTask {
task_id: cache_to_target_task_id,
},
);

render_tasks.add(target_to_cache_task)
))
}
));
}
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.