From a5a928a75327bf409a01a58343fc13a50c2cc4ce Mon Sep 17 00:00:00 2001 From: Changyeon Lee Date: Thu, 8 Oct 2020 14:23:41 +0900 Subject: [PATCH] e_hwc_windows: don't commit after dpms is set OFF Change-Id: I83605aa4d979e73090f9c406947b88b30383950b --- src/bin/e_hwc_windows.c | 2 +- src/bin/e_output.c | 4 ++++ src/bin/e_output.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/bin/e_hwc_windows.c b/src/bin/e_hwc_windows.c index fd199ea03c..2e987d18ac 100644 --- a/src/bin/e_hwc_windows.c +++ b/src/bin/e_hwc_windows.c @@ -3126,7 +3126,7 @@ e_hwc_windows_commit(E_Hwc *hwc, E_Output_Display_Mode display_mode) goto re_evaluate; } - if (output->dpms == E_OUTPUT_DPMS_OFF) + if ((output->dpms == E_OUTPUT_DPMS_OFF) || (output->set_dpms == E_OUTPUT_DPMS_OFF)) { _e_hwc_windows_offscreen_commit(hwc); goto update_done; diff --git a/src/bin/e_output.c b/src/bin/e_output.c index 1c0b23a781..21fa0a5a54 100644 --- a/src/bin/e_output.c +++ b/src/bin/e_output.c @@ -992,6 +992,7 @@ _e_output_cb_output_change(tdm_output *toutput, else edpms = output->dpms; output->dpms = edpms; + output->set_dpms = edpms; _e_output_hook_call(E_OUTPUT_HOOK_DPMS_CHANGE, output); @@ -3111,6 +3112,7 @@ e_output_dpms_set(E_Output *output, E_OUTPUT_DPMS val) if (output->fake_config) { + output->set_dpms = val; output->dpms = val; return EINA_TRUE; } @@ -3130,6 +3132,8 @@ e_output_dpms_set(E_Output *output, E_OUTPUT_DPMS val) return EINA_FALSE; } + output->set_dpms = val; + return EINA_TRUE; } diff --git a/src/bin/e_output.h b/src/bin/e_output.h index ffa4b84308..e9935e95ff 100644 --- a/src/bin/e_output.h +++ b/src/bin/e_output.h @@ -83,6 +83,7 @@ struct _E_Output E_Comp_Screen *e_comp_screen; E_OUTPUT_DPMS dpms; + E_OUTPUT_DPMS set_dpms; Eina_Bool dpms_async; struct { -- 2.34.1