CASE 1, original layer tree { "bounds": [800, 600], "children": [ { "bounds": [800, 600], "contentsOpaque": true, "drawsContent": true, "children": [ { "children": [ { "position": [50, 50], "bounds": [100, 100], "contentsOpaque": true, "drawsContent": true, "backgroundColor": "#0000FF" }, { "position": [130, 130], "bounds": [100, 100], "drawsContent": true } ] } ] } ] } CASE 2, change color of "inner" to red { "bounds": [800, 600], "children": [ { "bounds": [800, 600], "contentsOpaque": true, "drawsContent": true, "children": [ { "children": [ { "position": [50, 50], "bounds": [100, 100], "contentsOpaque": true, "drawsContent": true, "backgroundColor": "#0000FF" }, { "position": [130, 130], "bounds": [100, 100], "drawsContent": true, "repaintRects": [ [10, 10, 50, 50] ] } ] } ] } ] }