From: Changyeon Lee Date: Thu, 24 Oct 2019 05:19:03 +0000 (+0900) Subject: e_hwc_window_queue: reset constraints if window isn't set device type X-Git-Tag: submit/tizen/20191104.053427~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=789101c29ef8b543119daf98966d4ef8cb825685;p=platform%2Fupstream%2Fenlightenment.git e_hwc_window_queue: reset constraints if window isn't set device type if buffer of queue is commited, hwc_window should be set by device type Change-Id: I30f46a159bfdab455b0dff874b90e69c0d6f8f51 --- diff --git a/src/bin/e_hwc_window_queue.c b/src/bin/e_hwc_window_queue.c index 433ad96699..ebd2ce5170 100644 --- a/src/bin/e_hwc_window_queue.c +++ b/src/bin/e_hwc_window_queue.c @@ -1048,9 +1048,19 @@ _e_hwc_window_queue_cb_accepted_state_set(void *data, E_Hwc_Window *hwc_window) queue = hwc_window->queue; state = e_hwc_window_accepted_state_get(hwc_window); - if ((state == E_HWC_WINDOW_STATE_DEVICE) && - (queue->state == E_HWC_WINDOW_QUEUE_STATE_SET_WAITING_BUFFER)) - _e_hwc_window_queue_set(queue); + if ((state == E_HWC_WINDOW_STATE_DEVICE)) + { + if(queue->state == E_HWC_WINDOW_QUEUE_STATE_SET_WAITING_BUFFER) + _e_hwc_window_queue_set(queue); + } + else if ((state == E_HWC_WINDOW_STATE_CLIENT) || (state == E_HWC_WINDOW_STATE_NONE)) + { + /* if buffer of queue is commited, hwc_window should be set by Device Type */ + if (!hwc_window->buffer.tsurface) return; + + if (e_hwc_window_queue_buffer_find(queue, hwc_window->buffer.tsurface)) + e_hwc_window_constraints_reset(hwc_window); + } } static void