From 5838dcaade3b2ed12a2beafb0b42e1d38160f1a5 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Mon, 23 Jul 2018 15:25:35 +0900 Subject: [PATCH] virtual: execute tdm_display_destroy_output when voutput destroy execute set_available_modes and set_physical_size when connect Change-Id: Ifd37190120ee6b4139d0c75a2f53001f6475ba09 Signed-off-by: Junkyeong Kim --- src/tdm_server.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/tdm_server.c b/src/tdm_server.c index cf743fa..e540133 100644 --- a/src/tdm_server.c +++ b/src/tdm_server.c @@ -715,6 +715,22 @@ _tdm_server_cb_create_output(struct wl_client *client, struct wl_resource *resou static void _tdm_voutput_cb_destroy(struct wl_client *client, struct wl_resource *resource) { + tdm_server_voutput_info *voutput_info; + tdm_private_server *private_server; + tdm_output *output; + tdm_error ret = TDM_ERROR_NONE; + + voutput_info = wl_resource_get_user_data(resource); + + private_server = voutput_info->private_server; + output = voutput_info->output; + + if (output) + ret = tdm_display_destroy_output(private_server->private_loop->dpy, output); + + if (ret != TDM_ERROR_NONE) + TDM_ERR("_tdm_voutput_cb_destroy fail"); + wl_resource_destroy(resource); } @@ -807,6 +823,10 @@ _tdm_voutput_cb_connect(struct wl_client *client, struct wl_resource *resource) voutput_info = wl_resource_get_user_data(resource); voutput_info->status = TDM_OUTPUT_CONN_STATUS_CONNECTED; + + tdm_output_set_physical_size(voutput_info->output, voutput_info->mmwidth, voutput_info->mmheight); + tdm_output_set_available_mode(voutput_info->output, voutput_info->available_modes.modes, voutput_info->available_modes.count); + //tdm_output_set_connect(); } static void -- 2.7.4