mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
gfx: Make display lists serializable using serde
.
This commit introduces the `serde` dependency, which we will use to serialize messages going between processes in multiprocess Servo. This also adds a new debugging flag, `-Z print-display-list-json`, allowing the output of display list serialization to be visualized. This will be useful for our experiments with alternate rasterizers.
This commit is contained in:
parent
b6b95085fb
commit
6eacb0c995
30 changed files with 320 additions and 124 deletions
|
@ -140,6 +140,9 @@ pub struct Opts {
|
|||
/// Dumps the display list after a layout.
|
||||
pub dump_display_list: bool,
|
||||
|
||||
/// Dumps the display list in JSON form after a layout.
|
||||
pub dump_display_list_json: bool,
|
||||
|
||||
/// Dumps the display list after optimization (post layout, at painting time).
|
||||
pub dump_display_list_optimized: bool,
|
||||
|
||||
|
@ -178,6 +181,7 @@ pub fn print_debug_usage(app: &str) -> ! {
|
|||
print_option("disable-text-aa", "Disable antialiasing of rendered text.");
|
||||
print_option("dump-flow-tree", "Print the flow tree after each layout.");
|
||||
print_option("dump-display-list", "Print the display list after each layout.");
|
||||
print_option("dump-display-list-json", "Print the display list in JSON form.");
|
||||
print_option("dump-display-list-optimized", "Print optimized display list (at paint time).");
|
||||
print_option("relayout-event", "Print notifications when there is a relayout.");
|
||||
print_option("profile-tasks", "Instrument each task, writing the output to a file.");
|
||||
|
@ -248,6 +252,7 @@ pub fn default_opts() -> Opts {
|
|||
user_agent: None,
|
||||
dump_flow_tree: false,
|
||||
dump_display_list: false,
|
||||
dump_display_list_json: false,
|
||||
dump_display_list_optimized: false,
|
||||
relayout_event: false,
|
||||
validate_display_list_geometry: false,
|
||||
|
@ -424,6 +429,7 @@ pub fn from_cmdline_args(args: &[String]) {
|
|||
enable_canvas_antialiasing: !debug_options.contains(&"disable-canvas-aa"),
|
||||
dump_flow_tree: debug_options.contains(&"dump-flow-tree"),
|
||||
dump_display_list: debug_options.contains(&"dump-display-list"),
|
||||
dump_display_list_json: debug_options.contains(&"dump-display-list-json"),
|
||||
dump_display_list_optimized: debug_options.contains(&"dump-display-list-optimized"),
|
||||
relayout_event: debug_options.contains(&"relayout-event"),
|
||||
validate_display_list_geometry: debug_options.contains(&"validate-display-list-geometry"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue