From ffaf09eb2f4bdcaf0ea57e8e49b1cd8ba4fb18d5 Mon Sep 17 00:00:00 2001 From: Emre Ucan Date: Thu, 25 Jan 2018 14:36:12 +0100 Subject: [PATCH] hmi-controller: load as weston module weston loads hmi-controller as a weston module. IVI-shell does not need to load it explicitly. Signed-off-by: Emre Ucan Reviewed-by: Pekka Paalanen --- ivi-shell/hmi-controller.c | 36 ++++++++++++++++-------------------- ivi-shell/weston.ini.in | 2 +- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/ivi-shell/hmi-controller.c b/ivi-shell/hmi-controller.c index 34abc11..b13936f 100644 --- a/ivi-shell/hmi-controller.c +++ b/ivi-shell/hmi-controller.c @@ -148,12 +148,6 @@ struct launcher_info { int32_t index; }; -int -controller_module_init(struct weston_compositor *ec, - int *argc, char *argv[], - const struct ivi_layout_interface *interface, - size_t interface_version); - /***************************************************************************** * local functions ****************************************************************************/ @@ -766,17 +760,26 @@ hmi_controller_destroy(struct wl_listener *listener, void *data) * ivi_hmi_controller_home is requested. */ static struct hmi_controller * -hmi_controller_create(struct weston_compositor *ec, - const struct ivi_layout_interface *interface) +hmi_controller_create(struct weston_compositor *ec) { struct link_layer *tmp_link_layer = NULL; int32_t panel_height = 0; - struct hmi_controller *hmi_ctrl = MEM_ALLOC(sizeof(*hmi_ctrl)); + struct hmi_controller *hmi_ctrl; + const struct ivi_layout_interface *interface; struct hmi_controller_layer *base_layer = NULL; struct hmi_controller_layer *application_layer = NULL; struct weston_output *output; + int32_t i; - int32_t i = 0; + interface = ivi_layout_get_api(ec); + + if (!interface) { + weston_log("Cannot use ivi_layout_interface.\n"); + return NULL; + } + + hmi_ctrl = MEM_ALLOC(sizeof(*hmi_ctrl)); + i = 0; wl_array_init(&hmi_ctrl->ui_widgets); hmi_ctrl->layout_mode = IVI_HMI_CONTROLLER_LAYOUT_MODE_TILING; @@ -1954,20 +1957,13 @@ launch_hmi_client_process(void *data) * exported functions ****************************************************************************/ WL_EXPORT int -controller_module_init(struct weston_compositor *ec, - int *argc, char *argv[], - const struct ivi_layout_interface *interface, - size_t interface_version) +wet_module_init(struct weston_compositor *ec, + int *argc, char *argv[]) { struct hmi_controller *hmi_ctrl = NULL; struct wl_event_loop *loop = NULL; - if (interface_version < sizeof(struct ivi_layout_interface)) { - weston_log("ivi-shell: version mismatch of controller interface\n"); - return -1; - } - - hmi_ctrl = hmi_controller_create(ec, interface); + hmi_ctrl = hmi_controller_create(ec); if (hmi_ctrl == NULL) return -1; diff --git a/ivi-shell/weston.ini.in b/ivi-shell/weston.ini.in index 9b53691..3f11e1c 100644 --- a/ivi-shell/weston.ini.in +++ b/ivi-shell/weston.ini.in @@ -1,8 +1,8 @@ [core] shell=@plugin_prefix@ivi-shell.so +modules=@plugin_prefix@hmi-controller.so [ivi-shell] -ivi-module=@plugin_prefix@hmi-controller.so ivi-shell-user-interface=@abs_top_builddir@/weston-ivi-shell-user-interface #developermode=true -- 2.7.4