| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 { |  | 
| 2   "name": "Content Root Layer", |  | 
| 3   "bounds": [1418, 1008], |  | 
| 4   "children": [ |  | 
| 5     { |  | 
| 6       "name": "LayoutView #document", |  | 
| 7       "bounds": [1418, 1008], |  | 
| 8       "contentsOpaque": true, |  | 
| 9       "drawsContent": true, |  | 
| 10       "paintInvalidations": [ |  | 
| 11         { |  | 
| 12           "object": "LayoutBlockFlow DIV id='container'", |  | 
| 13           "rect": [8, 8, 769, 110], |  | 
| 14           "reason": "forced by layout" |  | 
| 15         }, |  | 
| 16         { |  | 
| 17           "object": "LayoutBlockFlow (anonymous)", |  | 
| 18           "rect": [8, 118, 769, 55], |  | 
| 19           "reason": "bounds change" |  | 
| 20         }, |  | 
| 21         { |  | 
| 22           "object": "LayoutBlockFlow (anonymous)", |  | 
| 23           "rect": [8, 63, 769, 55], |  | 
| 24           "reason": "bounds change" |  | 
| 25         } |  | 
| 26       ], |  | 
| 27       "children": [ |  | 
| 28         { |  | 
| 29           "name": "Squashing Containment Layer", |  | 
| 30           "shouldFlattenTransform": false, |  | 
| 31           "children": [ |  | 
| 32             { |  | 
| 33               "name": "LayoutBlockFlow (positioned) DIV", |  | 
| 34               "position": [8, 8], |  | 
| 35               "bounds": [1000, 1000] |  | 
| 36             }, |  | 
| 37             { |  | 
| 38               "name": "Squashing Layer (first squashed layer: LayoutBlockFlow (r
     elative positioned) DIV class='mv-tile')", |  | 
| 39               "position": [8, 8], |  | 
| 40               "bounds": [1000, 105], |  | 
| 41               "drawsContent": true, |  | 
| 42               "paintInvalidations": [ |  | 
| 43                 { |  | 
| 44                   "object": "LayoutBlockFlow (relative positioned) DIV class='mv
     -tile'", |  | 
| 45                   "rect": [0, 110, 1000, 50], |  | 
| 46                   "reason": "subtree" |  | 
| 47                 }, |  | 
| 48                 { |  | 
| 49                   "object": "LayoutBlockFlow (relative positioned) DIV class='mv
     -tile'", |  | 
| 50                   "rect": [0, 55, 1000, 50], |  | 
| 51                   "reason": "compositing update" |  | 
| 52                 }, |  | 
| 53                 { |  | 
| 54                   "object": "LayoutBlockFlow (relative positioned) DIV class='mv
     -tile'", |  | 
| 55                   "rect": [0, 55, 100, 50], |  | 
| 56                   "reason": "subtree" |  | 
| 57                 }, |  | 
| 58                 { |  | 
| 59                   "object": "LayoutBlockFlow (relative positioned) DIV class='mv
     -tile'", |  | 
| 60                   "rect": [0, 0, 100, 50], |  | 
| 61                   "reason": "forced by layout" |  | 
| 62                 }, |  | 
| 63                 { |  | 
| 64                   "object": "LayoutBlockFlow (relative positioned) DIV id='foo' 
     class='mv-tile'", |  | 
| 65                   "rect": [0, 0, 100, 50], |  | 
| 66                   "reason": "layoutObject removal" |  | 
| 67                 } |  | 
| 68               ] |  | 
| 69             } |  | 
| 70           ] |  | 
| 71         } |  | 
| 72       ] |  | 
| 73     } |  | 
| 74   ], |  | 
| 75   "objectPaintInvalidations": [ |  | 
| 76     { |  | 
| 77       "object": "LayoutBlockFlow (relative positioned) DIV id='foo' class='mv-ti
     le'", |  | 
| 78       "reason": "layoutObject removal" |  | 
| 79     }, |  | 
| 80     { |  | 
| 81       "object": "LayoutBlockFlow (relative positioned) DIV class='mv-tile'", |  | 
| 82       "reason": "subtree" |  | 
| 83     }, |  | 
| 84     { |  | 
| 85       "object": "LayoutBlockFlow (relative positioned) DIV class='mv-tile'", |  | 
| 86       "reason": "subtree" |  | 
| 87     }, |  | 
| 88     { |  | 
| 89       "object": "LayoutBlockFlow DIV id='container'", |  | 
| 90       "reason": "forced by layout" |  | 
| 91     }, |  | 
| 92     { |  | 
| 93       "object": "RootInlineBox", |  | 
| 94       "reason": "forced by layout" |  | 
| 95     }, |  | 
| 96     { |  | 
| 97       "object": "LayoutBlockFlow (relative positioned) DIV class='mv-tile'", |  | 
| 98       "reason": "forced by layout" |  | 
| 99     }, |  | 
| 100     { |  | 
| 101       "object": "LayoutBlockFlow (anonymous)", |  | 
| 102       "reason": "bounds change" |  | 
| 103     }, |  | 
| 104     { |  | 
| 105       "object": "RootInlineBox", |  | 
| 106       "reason": "bounds change" |  | 
| 107     }, |  | 
| 108     { |  | 
| 109       "object": "LayoutBlockFlow (relative positioned) DIV class='mv-tile'", |  | 
| 110       "reason": "compositing update" |  | 
| 111     }, |  | 
| 112     { |  | 
| 113       "object": "LayoutText #text", |  | 
| 114       "reason": "location change" |  | 
| 115     }, |  | 
| 116     { |  | 
| 117       "object": "LayoutText #text", |  | 
| 118       "reason": "location change" |  | 
| 119     } |  | 
| 120   ] |  | 
| 121 } |  | 
| 122 |  | 
| OLD | NEW | 
|---|