Make compositor_data.rs conform to 100 column line lengths

This commit is contained in:
Cameron Zwarich 2014-07-03 13:38:30 -07:00
parent b0ffeaf53c
commit e1a97ea14b

View file

@ -159,7 +159,8 @@ impl CompositorData {
rect: Rect<f32>, rect: Rect<f32>,
page_size: Size2D<f32>, page_size: Size2D<f32>,
scroll_policy: ScrollPolicy) -> bool { scroll_policy: ScrollPolicy) -> bool {
if layer.extra_data.borrow().pipeline.id != pipeline_id || layer.extra_data.borrow().id != parent_layer_id { if layer.extra_data.borrow().pipeline.id != pipeline_id ||
layer.extra_data.borrow().id != parent_layer_id {
return layer.children().any(|kid| { return layer.children().any(|kid| {
CompositorData::add_child_if_necessary(kid, CompositorData::add_child_if_necessary(kid,
pipeline_id, pipeline_id,
@ -179,16 +180,17 @@ impl CompositorData {
return true return true
} }
let new_compositor_data = CompositorData::new(layer.extra_data.borrow().pipeline.clone(),
child_layer_id,
rect,
Some(page_size),
layer.extra_data.borrow().cpu_painting,
DoesntWantScrollEvents,
scroll_policy,
false);
let new_kid = Rc::new(ContainerLayer::new(Some(page_size), let new_kid = Rc::new(ContainerLayer::new(Some(page_size),
ContainerLayer::tile_size(layer.clone()), ContainerLayer::tile_size(layer.clone()),
CompositorData::new(layer.extra_data.borrow().pipeline.clone(), new_compositor_data));
child_layer_id,
rect,
Some(page_size),
layer.extra_data.borrow().cpu_painting,
DoesntWantScrollEvents,
scroll_policy,
false)));
new_kid.extra_data.borrow_mut().scissor = Some(rect); new_kid.extra_data.borrow_mut().scissor = Some(rect);
new_kid.common.borrow_mut().origin = rect.origin; new_kid.common.borrow_mut().origin = rect.origin;
@ -270,7 +272,9 @@ impl CompositorData {
/// Actually scrolls the descendants of a layer that scroll. This is called by /// Actually scrolls the descendants of a layer that scroll. This is called by
/// `handle_scroll_event` above when it determines that a layer wants to scroll. /// `handle_scroll_event` above when it determines that a layer wants to scroll.
fn scroll(layer: Rc<ContainerLayer<CompositorData>>, scroll_offset: TypedPoint2D<PagePx, f32>) -> bool { fn scroll(layer: Rc<ContainerLayer<CompositorData>>,
scroll_offset: TypedPoint2D<PagePx, f32>)
-> bool {
let mut result = false; let mut result = false;
// Only scroll this layer if it's not fixed-positioned. // Only scroll this layer if it's not fixed-positioned.
@ -295,7 +299,8 @@ impl CompositorData {
// Takes in a MouseWindowEvent, determines if it should be passed to children, and // Takes in a MouseWindowEvent, determines if it should be passed to children, and
// sends the event off to the appropriate pipeline. NB: the cursor position is in // sends the event off to the appropriate pipeline. NB: the cursor position is in
// page coordinates. // page coordinates.
pub fn send_mouse_event(layer: Rc<ContainerLayer<CompositorData>>, event: MouseWindowEvent, cursor: TypedPoint2D<PagePx, f32>) { pub fn send_mouse_event(layer: Rc<ContainerLayer<CompositorData>>,
event: MouseWindowEvent, cursor: TypedPoint2D<PagePx, f32>) {
let cursor = cursor - layer.extra_data.borrow().scroll_offset; let cursor = cursor - layer.extra_data.borrow().scroll_offset;
for child in layer.children() { for child in layer.children() {
if child.extra_data.borrow().hidden { if child.extra_data.borrow().hidden {
@ -327,7 +332,8 @@ impl CompositorData {
let _ = chan.send_opt(SendEventMsg(layer.extra_data.borrow().pipeline.id.clone(), message)); let _ = chan.send_opt(SendEventMsg(layer.extra_data.borrow().pipeline.id.clone(), message));
} }
pub fn send_mouse_move_event(layer: Rc<ContainerLayer<CompositorData>>, cursor: TypedPoint2D<PagePx, f32>) { pub fn send_mouse_move_event(layer: Rc<ContainerLayer<CompositorData>>,
cursor: TypedPoint2D<PagePx, f32>) {
let message = MouseMoveEvent(cursor.to_untyped()); let message = MouseMoveEvent(cursor.to_untyped());
let ScriptChan(ref chan) = layer.extra_data.borrow().pipeline.script_chan; let ScriptChan(ref chan) = layer.extra_data.borrow().pipeline.script_chan;
let _ = chan.send_opt(SendEventMsg(layer.extra_data.borrow().pipeline.id.clone(), message)); let _ = chan.send_opt(SendEventMsg(layer.extra_data.borrow().pipeline.id.clone(), message));
@ -340,18 +346,24 @@ impl CompositorData {
window_rect: Rect<f32>, window_rect: Rect<f32>,
scale: f32) scale: f32)
-> bool { -> bool {
let (request, unused) = ContainerLayer::get_tile_rects_page(layer.clone(), window_rect, scale); let (request, unused) = ContainerLayer::get_tile_rects_page(layer.clone(),
window_rect,
scale);
let redisplay = !unused.is_empty(); let redisplay = !unused.is_empty();
if redisplay { if redisplay {
// Send back unused tiles. // Send back unused tiles.
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(UnusedBufferMsg(unused)); let msg = UnusedBufferMsg(unused);
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(msg);
} }
if !request.is_empty() { if !request.is_empty() {
// Ask for tiles. // Ask for tiles.
// //
// FIXME(#2003, pcwalton): We may want to batch these up in the case in which // FIXME(#2003, pcwalton): We may want to batch these up in the case in which
// one page has multiple layers, to avoid the user seeing inconsistent states. // one page has multiple layers, to avoid the user seeing inconsistent states.
let msg = ReRenderMsg(request, scale, layer.extra_data.borrow().id, layer.extra_data.borrow().epoch); let msg = ReRenderMsg(request,
scale,
layer.extra_data.borrow().id,
layer.extra_data.borrow().epoch);
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(msg); let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(msg);
} }
@ -373,7 +385,10 @@ impl CompositorData {
// to make the child_rect appear in coordinates local to it. // to make the child_rect appear in coordinates local to it.
let child_rect = Rect(new_rect.origin.sub(&scissor.origin), let child_rect = Rect(new_rect.origin.sub(&scissor.origin),
new_rect.size); new_rect.size);
CompositorData::get_buffer_request(kid.clone(), graphics_context, child_rect, scale) CompositorData::get_buffer_request(kid.clone(),
graphics_context,
child_rect,
scale)
} }
None => { None => {
false // Layer is offscreen false // Layer is offscreen
@ -400,7 +415,9 @@ impl CompositorData {
new_rect: Rect<f32>) new_rect: Rect<f32>)
-> bool { -> bool {
debug!("compositor_data: starting set_clipping_rect()"); debug!("compositor_data: starting set_clipping_rect()");
match CompositorData::find_child_with_layer_and_pipeline_id(layer.clone(), pipeline_id, layer_id) { match CompositorData::find_child_with_layer_and_pipeline_id(layer.clone(),
pipeline_id,
layer_id) {
Some(child_node) => { Some(child_node) => {
debug!("compositor_data: node found for set_clipping_rect()"); debug!("compositor_data: node found for set_clipping_rect()");
child_node.common.borrow_mut().origin = new_rect.origin; child_node.common.borrow_mut().origin = new_rect.origin;
@ -408,11 +425,13 @@ impl CompositorData {
child_node.extra_data.borrow_mut().scissor = Some(new_rect); child_node.extra_data.borrow_mut().scissor = Some(new_rect);
match old_rect { match old_rect {
Some(old_rect) => { Some(old_rect) => {
ContainerLayer::set_status_page(layer.clone(), old_rect, Normal, false); // Rect is unhidden // Rect is unhidden
ContainerLayer::set_status_page(layer.clone(), old_rect, Normal, false);
} }
None => {} // Nothing to do None => {} // Nothing to do
} }
ContainerLayer::set_status_page(layer.clone(), new_rect, Hidden, false); // Hide the new rect // Hide the new rect
ContainerLayer::set_status_page(layer.clone(), new_rect, Hidden, false);
// If possible, unhide child // If possible, unhide child
let mut child_data = child_node.extra_data.borrow_mut(); let mut child_data = child_node.extra_data.borrow_mut();
@ -423,7 +442,10 @@ impl CompositorData {
} }
None => { None => {
layer.children() layer.children()
.any(|kid| CompositorData::set_clipping_rect(kid.clone(), pipeline_id, layer_id, new_rect)) .any(|kid| CompositorData::set_clipping_rect(kid.clone(),
pipeline_id,
layer_id,
new_rect))
} }
} }
@ -440,8 +462,13 @@ impl CompositorData {
epoch: Epoch) epoch: Epoch)
-> bool { -> bool {
debug!("compositor_data: starting resize()"); debug!("compositor_data: starting resize()");
if layer.extra_data.borrow().pipeline.id != pipeline_id || layer.extra_data.borrow().id != layer_id { if layer.extra_data.borrow().pipeline.id != pipeline_id ||
return CompositorData::resize_helper(layer.clone(), pipeline_id, layer_id, new_size, epoch) layer.extra_data.borrow().id != layer_id {
return CompositorData::resize_helper(layer.clone(),
pipeline_id,
layer_id,
new_size,
epoch)
} }
debug!("compositor_data: layer found for resize()"); debug!("compositor_data: layer found for resize()");
@ -457,7 +484,10 @@ impl CompositorData {
// Call scroll for bounds checking if the page shrunk. Use (-1, -1) as the cursor position // Call scroll for bounds checking if the page shrunk. Use (-1, -1) as the cursor position
// to make sure the scroll isn't propagated downwards. // to make sure the scroll isn't propagated downwards.
CompositorData::handle_scroll_event(layer.clone(), TypedPoint2D(0f32, 0f32), TypedPoint2D(-1f32, -1f32), window_size); CompositorData::handle_scroll_event(layer.clone(),
TypedPoint2D(0f32, 0f32),
TypedPoint2D(-1f32, -1f32),
window_size);
layer.extra_data.borrow_mut().hidden = false; layer.extra_data.borrow_mut().hidden = false;
CompositorData::set_occlusions(layer.clone()); CompositorData::set_occlusions(layer.clone());
true true
@ -470,7 +500,8 @@ impl CompositorData {
window_size: TypedSize2D<PagePx, f32>) window_size: TypedSize2D<PagePx, f32>)
-> bool { -> bool {
// Search children for the right layer to move. // Search children for the right layer to move.
if layer.extra_data.borrow().pipeline.id != pipeline_id || layer.extra_data.borrow().id != layer_id { if layer.extra_data.borrow().pipeline.id != pipeline_id ||
layer.extra_data.borrow().id != layer_id {
return layer.children().any(|kid| { return layer.children().any(|kid| {
CompositorData::move(kid.clone(), pipeline_id, layer_id, origin, window_size) CompositorData::move(kid.clone(), pipeline_id, layer_id, origin, window_size)
}); });
@ -541,7 +572,8 @@ impl CompositorData {
layer_id: LayerId) layer_id: LayerId)
-> Option<Rc<ContainerLayer<CompositorData>>> { -> Option<Rc<ContainerLayer<CompositorData>>> {
for kid in layer.children() { for kid in layer.children() {
if pipeline_id == kid.extra_data.borrow().pipeline.id && layer_id == kid.extra_data.borrow().id { if pipeline_id == kid.extra_data.borrow().pipeline.id &&
layer_id == kid.extra_data.borrow().id {
return Some(kid); return Some(kid);
} }
} }
@ -557,7 +589,9 @@ impl CompositorData {
-> bool { -> bool {
debug!("compositor_data: starting resize_helper()"); debug!("compositor_data: starting resize_helper()");
let found = match CompositorData::find_child_with_layer_and_pipeline_id(layer.clone(), pipeline_id, layer_id) { let found = match CompositorData::find_child_with_layer_and_pipeline_id(layer.clone(),
pipeline_id,
layer_id) {
Some(child) => { Some(child) => {
debug!("compositor_data: layer found for resize_helper()"); debug!("compositor_data: layer found for resize_helper()");
child.extra_data.borrow_mut().epoch = epoch; child.extra_data.borrow_mut().epoch = epoch;
@ -565,7 +599,8 @@ impl CompositorData {
let unused_buffers = ContainerLayer::resize(child.clone(), new_size); let unused_buffers = ContainerLayer::resize(child.clone(), new_size);
if !unused_buffers.is_empty() { if !unused_buffers.is_empty() {
let _ = child.extra_data.borrow().pipeline.render_chan.send_opt(UnusedBufferMsg(unused_buffers)); let msg = UnusedBufferMsg(unused_buffers);
let _ = child.extra_data.borrow().pipeline.render_chan.send_opt(msg);
} }
let scissor_clone = child.extra_data.borrow().scissor.clone(); let scissor_clone = child.extra_data.borrow().scissor.clone();
@ -601,7 +636,8 @@ impl CompositorData {
// Collect buffers from the quadtree. This method IS NOT recursive, so child layers // Collect buffers from the quadtree. This method IS NOT recursive, so child layers
// are not rebuilt directly from this method. // are not rebuilt directly from this method.
pub fn build_layer_tree(layer: Rc<ContainerLayer<CompositorData>>, graphics_context: &NativeCompositingGraphicsContext) { pub fn build_layer_tree(layer: Rc<ContainerLayer<CompositorData>>,
graphics_context: &NativeCompositingGraphicsContext) {
// Clear all old textures. // Clear all old textures.
layer.tiles.borrow_mut().clear(); layer.tiles.borrow_mut().clear();
@ -652,7 +688,8 @@ impl CompositorData {
epoch: Epoch) epoch: Epoch)
-> Option<Box<LayerBufferSet>> { -> Option<Box<LayerBufferSet>> {
debug!("compositor_data: starting add_buffers()"); debug!("compositor_data: starting add_buffers()");
if layer.extra_data.borrow().pipeline.id != pipeline_id || layer.extra_data.borrow().id != layer_id { if layer.extra_data.borrow().pipeline.id != pipeline_id ||
layer.extra_data.borrow().id != layer_id {
// ID does not match ours, so recurse on descendents (including hidden children). // ID does not match ours, so recurse on descendents (including hidden children).
for child_layer in layer.children() { for child_layer in layer.children() {
match CompositorData::add_buffers(child_layer.clone(), match CompositorData::add_buffers(child_layer.clone(),
@ -677,7 +714,8 @@ impl CompositorData {
layer.extra_data.borrow().epoch, layer.extra_data.borrow().epoch,
epoch, epoch,
layer.extra_data.borrow().pipeline.id); layer.extra_data.borrow().pipeline.id);
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(UnusedBufferMsg(new_buffers.buffers)); let msg = UnusedBufferMsg(new_buffers.buffers);
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(msg);
return None return None
} }
@ -687,7 +725,8 @@ impl CompositorData {
unused_tiles.push_all_move(ContainerLayer::add_tile_pixel(layer.clone(), buffer)); unused_tiles.push_all_move(ContainerLayer::add_tile_pixel(layer.clone(), buffer));
} }
if !unused_tiles.is_empty() { // send back unused buffers if !unused_tiles.is_empty() { // send back unused buffers
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(UnusedBufferMsg(unused_tiles)); let msg = UnusedBufferMsg(unused_tiles);
let _ = layer.extra_data.borrow().pipeline.render_chan.send_opt(msg);
} }
} }
@ -759,10 +798,18 @@ impl CompositorData {
} }
} }
pub fn set_unrendered_color(layer: Rc<ContainerLayer<CompositorData>>, pipeline_id: PipelineId, layer_id: LayerId, color: Color) -> bool { pub fn set_unrendered_color(layer: Rc<ContainerLayer<CompositorData>>,
if layer.extra_data.borrow().pipeline.id != pipeline_id || layer.extra_data.borrow().id != layer_id { pipeline_id: PipelineId,
layer_id: LayerId,
color: Color)
-> bool {
if layer.extra_data.borrow().pipeline.id != pipeline_id ||
layer.extra_data.borrow().id != layer_id {
for child_layer in layer.children() { for child_layer in layer.children() {
if CompositorData::set_unrendered_color(child_layer.clone(), pipeline_id, layer_id, color) { if CompositorData::set_unrendered_color(child_layer.clone(),
pipeline_id,
layer_id,
color) {
return true; return true;
} }
} }