change the symbol name related to the voutput
[platform/core/uifw/libtdm.git] / backends / virtual / tdm_virtual_display.c
index 3f9d9b5..ea3f5af 100644 (file)
@@ -457,8 +457,28 @@ virtual_output_commit(tdm_output *output, int sync, void *user_data)
                                                                         output_data->status_user_data);
        }
 
+       layer_data = output_data->primary_layer;
+
+       if (layer_data->display_buffer == NULL && layer_data->display_buffer_changed == 1) {
+               event_data = calloc(1, sizeof(tdm_virtual_event_data));
+               if (!event_data) {
+                       TDM_ERR("alloc failed");
+                       return TDM_ERROR_OUT_OF_MEMORY;
+               }
+
+               event_data->type = TDM_VIRTUAL_EVENT_TYPE_COMMIT;
+               event_data->output_data = output_data;
+               event_data->user_data = user_data;
+
+               ret = _tdm_virtual_display_wait_vblank(output_data, 3, event_data);
+               if (ret != TDM_ERROR_NONE) {
+                       free(event_data);
+                       return ret;
+               }
+               goto done;
+       }
+
        if (voutput_data->vcommit_func) {
-               layer_data = output_data->primary_layer;
                if (layer_data->display_buffer_changed) {
                        output_data->commit_user_data = user_data;
                        event_data = calloc(1, sizeof(tdm_virtual_event_data));
@@ -495,6 +515,9 @@ virtual_output_commit(tdm_output *output, int sync, void *user_data)
                }
        }
 
+done:
+       layer_data->display_buffer_changed = 0;
+
        return TDM_ERROR_NONE;
 }
 
@@ -582,7 +605,7 @@ virtual_output_set_status_handler(tdm_output *output,
 }
 
 tdm_error
-virtual_output_set_available_mode(tdm_voutput *voutput, const tdm_output_mode *modes, int count)
+virtual_voutput_set_available_mode(tdm_voutput *voutput, const tdm_output_mode *modes, int count)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
        tdm_virtual_output_data *output_data = NULL;
@@ -610,7 +633,7 @@ virtual_output_set_available_mode(tdm_voutput *voutput, const tdm_output_mode *m
 }
 
 tdm_error
-virtual_output_set_physical_size(tdm_voutput *voutput, unsigned int mmwidth, unsigned int mmheight)
+virtual_voutput_set_physical_size(tdm_voutput *voutput, unsigned int mmwidth, unsigned int mmheight)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
 
@@ -625,7 +648,7 @@ virtual_output_set_physical_size(tdm_voutput *voutput, unsigned int mmwidth, uns
 }
 
 tdm_error
-virtual_output_connect(tdm_voutput *voutput)
+virtual_voutput_connect(tdm_voutput *voutput)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
        tdm_virtual_output_data *output_data = NULL;
@@ -648,7 +671,7 @@ virtual_output_connect(tdm_voutput *voutput)
 }
 
 tdm_error
-virtual_output_disconnect(tdm_voutput *voutput)
+virtual_voutput_disconnect(tdm_voutput *voutput)
 {
 
        tdm_virtual_voutput_data *voutput_data = voutput;
@@ -755,7 +778,7 @@ virtual_layer_unset_buffer(tdm_layer *layer)
 }
 
 tdm_voutput *
-virtual_output_create(tdm_backend_data *bdata, const char *name, tdm_error *error)
+virtual_display_voutput_create(tdm_backend_data *bdata, const char *name, tdm_error *error)
 {
        tdm_virtual_data *virtual_data = bdata;
        tdm_virtual_voutput_data *voutput_data = NULL;
@@ -819,13 +842,8 @@ virtual_output_create(tdm_backend_data *bdata, const char *name, tdm_error *erro
        output_data->connector_type = TDM_OUTPUT_TYPE_Unknown;
        output_data->status = TDM_OUTPUT_CONN_STATUS_DISCONNECTED;
 
-       if (name) {
-               snprintf(voutput_data->name, TDM_NAME_LEN, "%s", name);
-               snprintf(output_data->name, TDM_NAME_LEN, "%s", name);
-       } else {
-               snprintf(voutput_data->name, TDM_NAME_LEN, "unknown");
-               snprintf(output_data->name, TDM_NAME_LEN, "%s", name);
-       }
+       snprintf(voutput_data->name, TDM_NAME_LEN, "%s", name);
+       snprintf(output_data->name, TDM_NAME_LEN, "%s", name);
 
        output_data->timer = tdm_event_loop_add_timer_handler(virtual_data->dpy,
                                                                                                                  _tdm_virtual_display_cb_timeout,
@@ -860,7 +878,6 @@ virtual_output_create(tdm_backend_data *bdata, const char *name, tdm_error *erro
        return voutput_data;
 
 create_fail:
-       if (layer_data) free(layer_data);
        if (output_data) free(output_data);
        if (voutput_data->output_modes) free(voutput_data->output_modes);
        if (voutput_data) free(voutput_data);
@@ -871,10 +888,10 @@ create_fail:
 }
 
 tdm_error
-virtual_output_destroy(tdm_voutput *voutput)
+virtual_voutput_destroy(tdm_voutput *voutput)
 {
        tdm_virtual_data *virtual_data = NULL;
-       tdm_virtual_voutput_data *vo, *voutput_data = voutput;
+       tdm_virtual_voutput_data *vo = NULL, *voutput_data = voutput;
        int find = 0;
 
        RETURN_VAL_IF_FAIL(voutput_data, TDM_ERROR_INVALID_PARAMETER);
@@ -926,12 +943,10 @@ virtual_output_destroy(tdm_voutput *voutput)
 }
 
 tdm_output *
-virtual_output_get_output(tdm_voutput *voutput, tdm_error *error)
+virtual_voutput_get_output(tdm_voutput *voutput, tdm_error *error)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
 
-       RETURN_VAL_IF_FAIL(voutput_data, NULL);
-
        if (!voutput_data) {
                if (error) *error = TDM_ERROR_INVALID_PARAMETER;
                return NULL;
@@ -943,12 +958,11 @@ virtual_output_get_output(tdm_voutput *voutput, tdm_error *error)
 }
 
 tdm_error
-virtual_output_set_commit_func(tdm_voutput *voutput,  tdm_voutput_commit_handler commit_func)
+virtual_voutput_set_commit_func(tdm_voutput *voutput,  tdm_voutput_commit_handler commit_func)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
 
        RETURN_VAL_IF_FAIL(voutput_data, TDM_ERROR_INVALID_PARAMETER);
-       RETURN_VAL_IF_FAIL(commit_func, TDM_ERROR_INVALID_PARAMETER);
 
        voutput_data->vcommit_func = commit_func;
 
@@ -956,7 +970,7 @@ virtual_output_set_commit_func(tdm_voutput *voutput,  tdm_voutput_commit_handler
 }
 
 tdm_error
-virtual_output_commit_done(tdm_voutput *voutput)
+virtual_voutput_commit_done(tdm_voutput *voutput)
 {
        tdm_virtual_voutput_data *voutput_data = voutput;
        tdm_virtual_output_data *output_data = NULL;