diff options
author | Ucan, Emre (ADITG/SW1) <eucan@de.adit-jv.com> | 2016-03-17 14:36:52 +0000 |
---|---|---|
committer | Pekka Paalanen <pekka.paalanen@collabora.co.uk> | 2016-03-18 12:42:50 +0200 |
commit | c6459c495dbfad84b9516d4558304501da86710e (patch) | |
tree | b8e83e4379e39895d9ad50f7eb37078097ff17d3 /ivi-shell | |
parent | 783cb4dcfef5eb0822460107e6d9eff0bd2e2f7c (diff) |
hmi-controller: fix wrong panel width
The width of the first base layer is used for all panels.
Every display has a base layer which is as big as the
display. Therefore, it is wrong to use the width of the
first base layer for all panels, because every display
could have a different resolution.
Signed-off-by: Emre Ucan <eucan@de.adit-jv.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Diffstat (limited to 'ivi-shell')
-rw-r--r-- | ivi-shell/hmi-controller.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/ivi-shell/hmi-controller.c b/ivi-shell/hmi-controller.c index e8fcf137..e9c9ab04 100644 --- a/ivi-shell/hmi-controller.c +++ b/ivi-shell/hmi-controller.c @@ -961,12 +961,9 @@ ivi_hmi_controller_set_panel(struct hmi_controller *hmi_ctrl, uint32_t id_surface) { struct ivi_layout_surface *ivisurf = NULL; - struct hmi_controller_layer *base_layer = - wl_container_of(hmi_ctrl->base_layer_list.prev, - base_layer, - link); + struct hmi_controller_layer *base_layer; struct ivi_layout_layer *ivilayer = NULL; - const int32_t width = base_layer->width; + int32_t width; int32_t ret = 0; int32_t panel_height = hmi_ctrl->hmi_setting->panel_height; const int32_t dstx = 0; @@ -986,6 +983,7 @@ ivi_hmi_controller_set_panel(struct hmi_controller *hmi_ctrl, assert(!ret); dsty = base_layer->height - panel_height; + width = base_layer->width; ret = ivi_layout_interface->surface_set_destination_rectangle( ivisurf, dstx, dsty, width, panel_height); |