From cab2c87ea0b6a0ac24785506644f9698130a015b Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Mon, 3 Aug 2020 20:41:07 +0900 Subject: [PATCH] e_config: add fake_output_resolution config for test environment, can be set fake resolution by fake_output_resolution config. Change-Id: I96877f517f02f1e27239e41904875b40fd5a9303 Signed-off-by: Junkyeong Kim --- src/bin/e_config.c | 4 ++++ src/bin/e_config.h | 8 ++++++++ src/bin/e_output.c | 12 ++++++++++-- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 5a6aabcf1d..66cd50551c 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -308,6 +308,9 @@ _e_config_edd_init(Eina_Bool old) E_CONFIG_VAL(D, T, use_desk_group, UCHAR); E_CONFIG_VAL(D, T, desk_zoom_effect.enable, UCHAR); E_CONFIG_VAL(D, T, desk_zoom_effect.duration, DOUBLE); + E_CONFIG_VAL(D, T, fake_output_resolution.use, UCHAR); + E_CONFIG_VAL(D, T, fake_output_resolution.w, INT); + E_CONFIG_VAL(D, T, fake_output_resolution.h, INT); } static Eina_Bool @@ -548,6 +551,7 @@ e_config_load(void) E_CONFIG_LIMIT(e_config->use_desk_group, 0, 1); E_CONFIG_LIMIT(e_config->desk_zoom_effect.enable, 0, 1); E_CONFIG_LIMIT(e_config->desk_zoom_effect.duration, 0.0, 10.0); + E_CONFIG_LIMIT(e_config->fake_output_resolution.use, 0, 1); } E_API int diff --git a/src/bin/e_config.h b/src/bin/e_config.h index 475b143b7e..7243b499ae 100644 --- a/src/bin/e_config.h +++ b/src/bin/e_config.h @@ -262,6 +262,14 @@ struct _E_Config Eina_Bool enable; double duration; } desk_zoom_effect; + + //set fake output resolution environment + struct + { + unsigned char use; // use fake_output_resolution + int w; // fake resolution width + int h; // fake resolution height + } fake_output_resolution; }; struct _E_Config_Desklock_Background diff --git a/src/bin/e_output.c b/src/bin/e_output.c index 771ba6d386..1c0b23a781 100644 --- a/src/bin/e_output.c +++ b/src/bin/e_output.c @@ -2702,8 +2702,16 @@ e_output_update(E_Output *output) if (tmodes[i].type & TDM_OUTPUT_MODE_TYPE_PREFERRED) rmode->preferred = EINA_TRUE; - rmode->w = tmodes[i].hdisplay; - rmode->h = tmodes[i].vdisplay; + if (e_config->fake_output_resolution.use) + { + rmode->w = e_config->fake_output_resolution.w; + rmode->h = e_config->fake_output_resolution.h; + } + else + { + rmode->w = tmodes[i].hdisplay; + rmode->h = tmodes[i].vdisplay; + } rmode->refresh = tmodes[i].vrefresh; rmode->tmode = &tmodes[i]; -- 2.34.1