diff options
Diffstat (limited to 'src/wayland_ivi_wm.cpp')
-rw-r--r-- | src/wayland_ivi_wm.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/wayland_ivi_wm.cpp b/src/wayland_ivi_wm.cpp index 5cc16b2..b26ce7e 100644 --- a/src/wayland_ivi_wm.cpp +++ b/src/wayland_ivi_wm.cpp @@ -534,6 +534,14 @@ void controller::create_screen(struct wl_output *output) this->screen = std::make_unique<struct screen>(0, this, output); } +void controller::get_surface_properties(uint32_t surface_id, int param) +{ + if(param == 0){ + param = IVI_WM_PARAM_OPACITY | IVI_WM_PARAM_VISIBILITY | IVI_WM_PARAM_SIZE; + } + ivi_wm_surface_get(this->proxy.get(), surface_id, param); +} + void controller::layer_created(uint32_t id) { HMI_DEBUG("wm", "compositor::controller @ %p layer %u (%x)", this->proxy.get(), id, id); @@ -608,6 +616,7 @@ void controller::surface_stats_received(struct surface *s, uint32_t surface_id, { HMI_DEBUG("wm", "compositor::surface %s @ %d f %u pid %u", __func__, surface_id, frame_count, pid); + this->sprops[s->id].id = pid; } void controller::surface_created(uint32_t id) @@ -624,7 +633,6 @@ void controller::surface_created(uint32_t id) // Set surface type:IVI_WM_SURFACE_TYPE_DESKTOP) // for resizing wayland surface when switching from split to full surface. ivi_wm_set_surface_type(this->proxy.get(), id, IVI_WM_SURFACE_TYPE_DESKTOP); - // Set source reactangle even if we should not need to set it // for enable setting for destination region. this->surfaces[id]->set_source_rectangle(0, 0, this->output_size.w, this->output_size.h); |