diff options
author | Manuel Bachmann <mbc@iot.bzh> | 2016-03-14 09:03:31 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@172.30.200.200> | 2016-03-14 14:48:56 +0000 |
commit | 67662f237904ad175fc1137204356225e0507d9e (patch) | |
tree | dc43d0651175dd15a7f3a389fb112c0d690b2d7d /meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch | |
parent | 20dfa8d262d6de0c689cce0d8fc0b76a40ba5a75 (diff) |
Upgrade to Wayland/Weston 1.9.0
Yocto 2.0 ("Jethro") provides Wayland and Weston 1.8.0;
manually upgrading to 1.9.0 does not break compatibility
with existing frameworks (Qt..), while at the same time
allowing easier integration of mandatory components such
as Weston IVI-Shell and Wayland IVI Extension.
We can thus in the same pass remove backport patches for
these 2 components.
Here is the related discussion on the mailing list :
http://lists.linuxfoundation.org/pipermail/
automotive-discussions/2016-March/001623.html
Change-Id: I874eac50ff64d8b93e32910b6f1297002faa06a5
Signed-off-by: Manuel Bachmann <mbc@iot.bzh>
Diffstat (limited to 'meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch')
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch b/meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch new file mode 100644 index 000000000..2df9f4aed --- /dev/null +++ b/meta-ivi-common/recipes-graphics/wayland/weston-ivi-shell/0001-IVI-Shell-use-primary-screen-for-resolution.patch @@ -0,0 +1,49 @@ +From: Manuel Bachmann <manuel.bachmann@iot.bzh> +Date: Thu, Nov 5 10:17:00 2015 +0000 +Subject: ivi-shell: use primary screen for resolution values + +Screen resolution values (width, height) are always grabbed +from the first screen, n.0, which can be a bad choice if it +is not the one really used as main display. + +This mostly happens on hardware with a VGA adapter, such as +laptops or Renesas R-Car E2 "Silk", and prevents correct +layout stretching (black borders). + +Discover the primary screen and use its values. + +Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh> +--- + +--- a/ivi-shell/hmi-controller.c 2015-11-05 09:57:55.740942450 +0000 ++++ b/ivi-shell/hmi-controller.c 2015-11-05 10:00:23.545912494 +0000 +@@ -676,6 +676,8 @@ + struct link_layer *tmp_link_layer = NULL; + int32_t panel_height = 0; + struct hmi_controller *hmi_ctrl = MEM_ALLOC(sizeof(*hmi_ctrl)); ++ struct weston_output *output = NULL; ++ int i = 0; + + wl_array_init(&hmi_ctrl->ui_widgets); + hmi_ctrl->layout_mode = IVI_HMI_CONTROLLER_LAYOUT_MODE_TILING; +@@ -684,11 +686,19 @@ + + ivi_controller_interface->get_screens(&screen_length, &pp_screen); + +- iviscrn = pp_screen[0]; ++ /* find primary screen */ ++ for (i = 0; i < screen_length; i++) { ++ iviscrn = pp_screen[i]; ++ output = ivi_controller_interface->screen_get_output(iviscrn); ++ if (output->x == 0) ++ break; ++ } + + ivi_controller_interface->get_screen_resolution(iviscrn, &screen_width, + &screen_height); + ++ iviscrn = pp_screen[0]; ++ + /* init base ivi_layer*/ + hmi_ctrl->base_layer.x = 0; + hmi_ctrl->base_layer.y = 0; |