tdm_caps_layer caps;
tdm_layer *layer_backend;
- tdm_private_layer_buffer *pending_buffer;
+ /* When a buffer is set to a layer, it will be stored to waiting_buffer.
+ * And when a layer is committed, it will be moved to committed_buffer.
+ * Finally when a commit handler is called, it will be moved to showing_buffer.
+ */
tdm_private_layer_buffer *waiting_buffer;
+ tdm_private_layer_buffer *committed_buffer; /* for output_commit */
tdm_private_layer_buffer *showing_buffer;
tbm_surface_queue_h buffer_queue;
tdm_private_layer *private_layer;
tdm_layer_commit_handler func;
void *user_data;
+
+ tdm_private_layer_buffer *committed_buffer; /* for layer_commit */
};
struct _tdm_private_change_handler {