servo/components/layout
Martin Robinson c0b397322f Stall PaintTask exit until it can release all buffers
It is possible for a PaintTask to start exiting soon after sending new
buffers to the compositor. In that case, the compositor should return
the now unnecessary buffers to the PaintTask so that it can properly
free them.

To accomplish this, the compositor now keeps a hash map of paint task
channels per pipeline id. When a PaintTask exists, the constellation
informs the compositor that it can forget about it. Additionally, the
PaintTask should not wait for any buffers when the engine is doing a
complete shutdown. In that case, the compositor is already halted and
has simply let all buffers leak. We pipe through the shutdown type when
destroying the pipeline to make this decision.

Fixes #2641.
2015-01-02 15:20:32 -08:00
..
css Remove some transmute calls. 2014-12-27 17:07:32 +01:00
block.rs gfx: Clip the background properly when border-radius is used. 2014-12-22 14:48:55 -08:00
Cargo.toml style: Address review comments relating to bgcolor and column spans 2014-12-15 18:09:44 -08:00
construct.rs layout: to_string() -> into_string() 2014-12-27 14:48:36 +01:00
context.rs Use opts as a global, to avoid cloning and passing the struct all over the code. 2014-10-20 10:48:47 +10:00
display_list_builder.rs gfx: Clip the background properly when border-radius is used. 2014-12-22 14:48:55 -08:00
floats.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
flow.rs gfx: Clip the background properly when border-radius is used. 2014-12-22 14:48:55 -08:00
flow_list.rs Rust upgrade to rustc hash b03a2755193cd756583bcf5831cf4545d75ecb8a 2014-11-13 11:17:43 +10:00
flow_ref.rs Remove some manual deref() / deref_mut() calls. 2014-12-16 16:41:33 +01:00
fragment.rs gfx: Refactor the border drawing code and split out fragment display 2014-12-22 14:48:55 -08:00
incremental.rs Remove bitfield! macro in favour of bitflags! 2014-11-18 19:26:10 +01:00
inline.rs gfx: Clip the background properly when border-radius is used. 2014-12-22 14:48:55 -08:00
layout_debug.rs layout: to_string() -> into_string() 2014-12-27 14:48:36 +01:00
layout_task.rs Stall PaintTask exit until it can release all buffers 2015-01-02 15:20:32 -08:00
lib.rs style: Address review comments relating to bgcolor and column spans 2014-12-15 18:09:44 -08:00
list_item.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
model.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
parallel.rs compositing: Implement cursor per CSS3-UI § 8.1.1 in the CEF/Mac port. 2014-12-17 22:58:52 -08:00
sequential.rs Have ContentBox(es)Queries consult the flow tree 2014-11-03 10:30:28 -08:00
table.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
table_caption.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
table_cell.rs style: Remove glob imports added in #4405 2014-12-19 01:49:24 +09:00
table_colgroup.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
table_row.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
table_rowgroup.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
table_wrapper.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
text.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
traversal.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
util.rs Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
wrapper.rs layout: to_string() -> into_string() 2014-12-27 14:48:36 +01:00