servo/components/layout
bors-servo e4b620ea54 Auto merge of #5652 - dmarcos:webgl, r=jdm
@jdm @ecoal95 I'm working on making VR happen in the Browser and I want to bring to Servo the [webVR APIs](https://github.com/MozVR/webvr-spec/blob/master/webvr.idl) we already have in Gecko. Before anything happens we need a working implementation of WebGL (and also the [fullscreen API](https://fullscreen.spec.whatwg.org/)). My implementation is very basic and probably naive (I just recently started to contribute to Servo). My patch is just a starting point: 

- It only implements ```clearColor``` and ```clear``` methods of the [WebGL spec](https://www.khronos.org/registry/webgl/specs/latest/).
- It uses the readback strategy that ```canvasRenderingContext2D``` is using (The webgl task paints stuff independently on it's own buffer and the compositor task request the pixels back to the webgl task when it needs them) I'm sure there are much better ways to handle this. Latency and FPS are critical in VR so we have to figure out the fastest way to push pixels to the screen. I've read something about layerizing the canvas but I'm still not sure what that even means :)
- There's an included test you can try ```./mach run tests/ref/webgl-context/clearcolor.html``` 

@ecoal95 I know you'll be working on this for the next three months. With a foundation in place we will be able to make quick progress in parallel. This is exciting!

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5652)
<!-- Reviewable:end -->
2015-04-20 19:29:02 -05:00
..
css Adding cmdling argument for disabling style share cache, fix #5581 2015-04-09 21:42:41 -04:00
animation.rs Animate many more CSS properties 2015-04-16 17:42:57 +01:00
block.rs Don't link to specific WHATWG multipage page 2015-04-16 22:39:25 -04:00
Cargo.toml Split out shared networking code into net_traits crate 2015-04-03 13:38:10 -04:00
construct.rs layout: Lay out nested inline elements with different vertical-align 2015-04-09 14:55:05 -07:00
context.rs Split out shared networking code into net_traits crate 2015-04-03 13:38:10 -04:00
data.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
display_list_builder.rs Auto merge of #5652 - dmarcos:webgl, r=jdm 2015-04-20 19:29:02 -05:00
floats.rs layout: During inline layout, make place_between_floats use the same 2015-04-09 14:23:08 -07:00
flow.rs layout: Use the same code path for computing static positions of regular 2015-04-14 13:00:10 -07:00
flow_list.rs Use usize in flow_list. 2015-03-29 12:43:44 +02:00
flow_ref.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
fragment.rs Kicks off a WebGL implementation 2015-04-20 14:29:39 -07:00
generated_content.rs Use usize in generated_content. 2015-04-02 15:06:27 +02:00
incremental.rs layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1 2015-03-09 17:13:45 -07:00
inline.rs layout: Use the same code path for computing static positions of regular 2015-04-14 13:00:10 -07:00
layout_debug.rs Remove old_path usage from layout. 2015-03-25 22:36:01 +01:00
layout_task.rs Animate many more CSS properties 2015-04-16 17:42:57 +01:00
lib.rs Split out shared networking code into net_traits crate 2015-04-03 13:38:10 -04:00
list_item.rs layout: Position and size list images properly in the block direction. 2015-04-07 15:42:52 -07:00
model.rs layout: Use the same code path for computing static positions of regular 2015-04-14 13:00:10 -07:00
opaque_node.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
parallel.rs Use isize with children_count members. 2015-04-02 14:50:15 +02:00
sequential.rs layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1 2015-03-09 17:13:45 -07:00
table.rs layout: Use the same code path for computing static positions of regular 2015-04-14 13:00:10 -07:00
table_caption.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
table_cell.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
table_colgroup.rs Use u32 for TableColumnFragmentInfo::span. 2015-04-02 14:46:19 +02:00
table_row.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
table_rowgroup.rs Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
table_wrapper.rs layout: Minor stylistic cleanup. 2015-04-14 13:00:11 -07:00
text.rs layout: Simplify and improve the correctness of whitespace stripping in 2015-04-08 14:29:23 -07:00
traversal.rs Stop using u/i suffixes in layout. 2015-04-02 15:14:09 +02:00
wrapper.rs Kicks off a WebGL implementation 2015-04-20 14:29:39 -07:00