static void
_e_hwc_window_buffer_queue_unset(E_Hwc_Window *hwc_window)
{
- /* reset the TDM_HWC_WIN_CONSTRAINT_BUFFER_QUEUE */
- if (hwc_window->queue)
- {
- e_hwc_window_queue_user_unset(hwc_window->queue, hwc_window);
+ if (!hwc_window->queue) return;
- if (hwc_window->queue_destroy_listener.notify)
- {
- wl_list_remove(&hwc_window->queue_destroy_listener.link);
- hwc_window->queue_destroy_listener.notify = NULL;
- }
+ e_hwc_window_queue_user_unset(hwc_window->queue, hwc_window);
- hwc_window->queue = NULL;
+ if (hwc_window->queue_destroy_listener.notify)
+ {
+ wl_list_remove(&hwc_window->queue_destroy_listener.link);
+ hwc_window->queue_destroy_listener.notify = NULL;
}
- EHWTRACE("Unset constraints BUFFER_QUEUE - {%s}",
- hwc_window->ec, hwc_window->hwc, hwc_window, e_client_util_name_get(hwc_window->ec));
+ hwc_window->queue = NULL;
+
+ EHWTRACE("Unset constraints BUFFER_QUEUE - {%s}",
+ hwc_window->ec, hwc_window->hwc, hwc_window, e_client_util_name_get(hwc_window->ec));
}
EINTERN void
_e_hwc_window_buffer_queue_unset(hwc_window);
+ if (hwc_window->constraints == TDM_HWC_WIN_CONSTRAINT_NONE)
+ return;
+
hwc_window->constraints = TDM_HWC_WIN_CONSTRAINT_NONE;
EHWTRACE("Reset constraints - {%s}",
if (hwc_window->is_target) return;
if (hwc_window->is_video) return;
+ e_hwc_window_constraints_reset(hwc_window);
+
if ((hwc_window->state == E_HWC_WINDOW_STATE_CLIENT) ||
(hwc_window->state == E_HWC_WINDOW_STATE_VIDEO) ||
(hwc_window->state == E_HWC_WINDOW_STATE_NONE))
return;
e_hwc_window_state_set(hwc_window, E_HWC_WINDOW_STATE_CLIENT, EINA_TRUE);
- e_hwc_window_constraints_reset(hwc_window);
e_hwc_window_rendered_window_update(hwc_window);
EHWTRACE("set client override", hwc_window->ec, hwc_window->hwc, hwc_window);