{ "comment": "Surface ID to Layer ID mapping", "main_surface": { "surface_id": "1000", "comment": "This surface should never be made invisible (The HomeScreen)" }, "layers": [ { "name": "HomeScreen", "layer_id": "1000", "area": { "type": "full" } }, { "name": "Apps", "layer_id": "1001", "area": { "type": "rect", "rect": { "x": "0", "y": "100", "width": "-1", "height": "-201" } } }, { "name": "Popups", "layer_id": "9999", "area": { "type": "rect", "rect": { "x": "0", "y": "100", "width": "-1", "height": "-201" } } } ], "mappings": [ { "type": "single", "surface_id": "1000", "name": "HomeScreen", "layer_id": "1000", "area": { "type": "full" }, "comment": "Single layer map for the HomeScreen, XXX: type is redundant, could also check existence of id/first_id+last_id" }, { "type": "range", "first_surface_id": "2000", "last_surface_id": "2999", "name": "apps", "layer_id": "1001", "area": { "type": "rect", "rect": { "x": "0", "y": "100", "width": "-1", "height": "-201" } }, "comment": "Range of IDs that will always be placed on layer 1001, negative rect values are interpreted as output_size.dimension - $value" }, { "type": "range", "first_surface_id": "3000", "last_surface_id": "3999", "name": "popups", "layer_id": "9999", "area": { "type": "rect", "rect": { "x": "0", "y": "100", "width": "-1", "height": "-201" } }, "comment": "Range of IDs that will always be placed on the popup layer, that gets a very high 'dummy' id of 9999" } ], "tests": [ { "surface_id": "1000", "expect_layer_id": "1000" }, { "surface_id": "1001", "expect_layer_id": "-1", "comment": "check against -1 for not found entries" }, { "surface_id": "1999", "expect_layer_id": "-1" }, { "surface_id": "2000", "expect_layer_id": "1001" }, { "surface_id": "2500", "expect_layer_id": "1001" }, { "surface_id": "2999", "expect_layer_id": "1001" }, { "surface_id": "3000", "expect_layer_id": "9999" }, { "surface_id": "3500", "expect_layer_id": "9999" }, { "surface_id": "3999", "expect_layer_id": "9999" }, { "surface_id": "4711", "expect_layer_id": "-1" } ] }