Add visibility dst-rect controller hooks
authorMarcus Fritzsch <marcus_fritzsch@mentor.com>
Tue, 12 Sep 2017 09:29:40 +0000 (11:29 +0200)
committerMarcus Fritzsch <marcus_fritzsch@mentor.com>
Tue, 12 Sep 2017 09:29:40 +0000 (11:29 +0200)
Signed-off-by: Marcus Fritzsch <marcus_fritzsch@mentor.com>
src/controller_hooks.hpp
src/wayland.cpp

index 18569aa..b30c05e 100644 (file)
@@ -29,8 +29,9 @@ struct controller_hooks {
    struct App *app;
 
    void surface_created(uint32_t surface_id);
-
    void surface_removed(uint32_t surface_id);
+   void surface_visibility(uint32_t surface_id, uint32_t v);
+   void surface_destination_rectangle(uint32_t surface_id, uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 };
 
 }  // namespace wm
index 49e01aa..05e155f 100644 (file)
@@ -624,6 +624,7 @@ void controller::surface_visibility(struct surface *s, int32_t visibility) {
    logdebug("genivi::surface %s @ %d v %i", __func__, s->id,
             visibility);
    this->sprops[s->id].visibility = visibility;
+   this->chooks->surface_visibility(s->id, visibility);
 }
 
 void controller::surface_opacity(struct surface *s, float opacity) {
@@ -646,6 +647,7 @@ void controller::surface_destination_rectangle(struct surface *s, int32_t x,
    logdebug("genivi::surface %s @ %d x %i y %i w %i h %i", __func__,
             s->id, x, y, width, height);
    this->sprops[s->id].dst_rect = rect{width, height, x, y};
+   this->chooks->surface_destination_rectangle(s->id, x, y, width, height);
 }
 
 void controller::surface_configuration(struct surface *s, int32_t width,