aboutsummaryrefslogtreecommitdiffstats
path: root/src/wayland_ivi_wm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/wayland_ivi_wm.cpp')
-rw-r--r--src/wayland_ivi_wm.cpp10
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);