diff options
author | Marcus Fritzsch <marcus_fritzsch@mentor.com> | 2017-07-24 11:42:54 +0200 |
---|---|---|
committer | Marcus Fritzsch <marcus_fritzsch@mentor.com> | 2017-08-08 17:24:00 +0200 |
commit | f0e3d51ee7adb54cd31f0625a71c86995cf0760f (patch) | |
tree | 5db9b7cb310b35e60ef81611463aeb67c257b80a /src | |
parent | 9ce5644a2350f8acbf606b2ee1073727578111ee (diff) |
wayland: add display::add_global_handler which forwards to registry
Signed-off-by: Marcus Fritzsch <marcus_fritzsch@mentor.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/app.cpp | 18 | ||||
-rw-r--r-- | src/wayland.hpp | 5 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/app.cpp b/src/app.cpp index 29b28b5..ed17107 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -31,21 +31,21 @@ int App::init() { return -1; } - this->display->r.add_global_handler( - "wl_output", [](wl_registry *r, uint32_t name, uint32_t v) { - g_app->outputs.emplace_back(std::make_unique<wl::output>(r, name, v)); + this->display->add_global_handler( + "wl_output", [this](wl_registry *r, uint32_t name, uint32_t v) { + this->outputs.emplace_back(std::make_unique<wl::output>(r, name, v)); }); - this->display->r.add_global_handler( - "ivi_controller", [](wl_registry *r, uint32_t name, uint32_t v) { - g_app->controller = std::make_unique<genivi::controller>(r, name, v); + this->display->add_global_handler( + "ivi_controller", [this](wl_registry *r, uint32_t name, uint32_t v) { + this->controller = std::make_unique<genivi::controller>(r, name, v); // XXX: This protocol needs the output, so lets just add our mapping // here... - g_app->controller->add_proxy_to_id_mapping( - g_app->outputs.back()->proxy.get(), + this->controller->add_proxy_to_id_mapping( + this->outputs.back()->proxy.get(), wl_proxy_get_id(reinterpret_cast<struct wl_proxy *>( - g_app->outputs.back()->proxy.get()))); + this->outputs.back()->proxy.get()))); }); // First level objects diff --git a/src/wayland.hpp b/src/wayland.hpp index 3b81e15..e2a1259 100644 --- a/src/wayland.hpp +++ b/src/wayland.hpp @@ -76,6 +76,11 @@ struct display { void flush(); int get_fd() const; int get_error(); + + // Lets just proxy this for the registry + inline void add_global_handler(char const *iface, registry::binder bind) { + this->r.add_global_handler(iface, bind); + } }; // _ _ |