From 17fc938e8bd03d8c9010afff5ab62810644851ac Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 22 Mar 2019 16:34:09 +0900 Subject: [PATCH] e_hwc_window: add e_hwc_window_pp_rendered_window_update API for pp zoom if pp set, make all hwc_window to client forcely.(except video) so execute _e_hwc_window_rendered_window_set with FALSE parameter. Change-Id: I5e9c3fc9bc0e4e47b7d51821519c80d5da125fad Signed-off-by: Junkyeong Kim --- src/bin/e_hwc_window.c | 24 ++++++++++++++++++++++++ src/bin/e_hwc_window.h | 2 ++ 2 files changed, 26 insertions(+) diff --git a/src/bin/e_hwc_window.c b/src/bin/e_hwc_window.c index 08ddffc..9839d5f 100644 --- a/src/bin/e_hwc_window.c +++ b/src/bin/e_hwc_window.c @@ -1917,3 +1917,27 @@ e_hwc_window_fps_get(E_Hwc_Window *hwc_window, double *fps) return EINA_FALSE; } + +EINTERN Eina_Bool +e_hwc_window_pp_rendered_window_update(E_Hwc_Window *hwc_window) +{ + E_Client *ec = NULL; + E_Pointer *pointer = NULL; + + EINA_SAFETY_ON_NULL_RETURN_VAL(hwc_window, EINA_FALSE); + + ec = hwc_window->ec; + EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE); + + if (hwc_window->is_cursor) + pointer = e_pointer_get(hwc_window->ec); + + if (e_hwc_window_is_video(hwc_window)) + return EINA_TRUE; + + _e_hwc_window_rendered_window_set(hwc_window, EINA_FALSE); + if (pointer) + e_pointer_hwc_set(pointer, EINA_TRUE); + + return EINA_TRUE; +} \ No newline at end of file diff --git a/src/bin/e_hwc_window.h b/src/bin/e_hwc_window.h index 59cb077..196da8b 100644 --- a/src/bin/e_hwc_window.h +++ b/src/bin/e_hwc_window.h @@ -210,5 +210,7 @@ EINTERN void e_hwc_window_trace_debug(Eina_Bool onoff); EINTERN void e_hwc_window_commit_data_buffer_dump(E_Hwc_Window *hwc_window); EINTERN Eina_Bool e_hwc_window_fps_get(E_Hwc_Window *hwc_window, double *fps); +EINTERN Eina_Bool e_hwc_window_pp_rendered_window_update(E_Hwc_Window *hwc_window); + #endif // E_HWC_WINDOW_H #endif -- 2.7.4