/*
- * Copyright (C) 2017 Mentor Graphics Development (Deutschland) GmbH
+ * Copyright (c) 2017 TOYOTA MOTOR CORPORATION
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include "layout.hpp"
#include "result.hpp"
-#include "wayland.hpp"
+#include "wayland_ivi_wm.hpp"
namespace wm {
// the actual value is computed using MAX + 1 - w
// That is; allow us to specify dimensions dependent on
// e.g. screen dimension, w/o knowing the actual screen size.
- genivi::rect rect;
+ compositor::rect rect;
// Specify a role prefix for surfaces that should be
// put on this layer.
std::string role;
using role_to_layer_map = std::vector<std::pair<std::string, int>>;
using addsurf_layer_map = std::map<int, int>;
- // XXX: we also will need a layer_id to layer map, perhaps
- // make this the primary map, and the surface_id->layer a
- // secondary map.
-
storage_type mapping; // map surface_id to layer
layers_type layers; // the actual layer IDs we have
int main_surface;
struct result<struct layer_map> to_layer_map(nlohmann::json const &j);
+static const nlohmann::json default_layers_json = {
+ {"main_surface", {
+ {"surface_role", "HomeScreen"}
+ }},
+ {"mappings", {
+ {
+ {"role", "^HomeScreen$"},
+ {"name", "HomeScreen"},
+ {"layer_id", 1000},
+ {"area", {
+ {"type", "full"}
+ }}
+ },
+ {
+ {"role", "MediaPlayer|Radio|Phone|Navigation|HVAC|Settings|Dashboard|POI|Mixer"},
+ {"name", "apps"},
+ {"layer_id", 1001},
+ {"area", {
+ {"type", "rect"},
+ {"rect", {
+ {"x", 0},
+ {"y", 218},
+ {"width", -1},
+ {"height", -433}
+ }}
+ }}
+ },
+ {
+ {"role", "^OnScreen.*"},
+ {"name", "popups"},
+ {"layer_id", 9999},
+ {"area", {
+ {"type", "rect"},
+ {"rect", {
+ {"x", 0},
+ {"y", 760},
+ {"width", -1},
+ {"height", 400}
+ }}
+ }}
+ }
+ }}
+};
} // namespace wm
#endif // TMCAGLWM_LAYERS_H