From f41a01602d917bef7ae1961deb9ede966479c257 Mon Sep 17 00:00:00 2001 From: Roman Peresipkyn Date: Thu, 14 Jul 2016 14:50:50 +0300 Subject: [PATCH] forbid enlightenment reconfigure eom client's resolution Since Enlightenment client has reconfigured its window to fit external output resolution and Enlightenment no nothing about external outputs Enlightenment sees that client's resolution differs form main screen resolution. Therefore, Enlightenment is trying to resize it back to main screen resolution. It uses timer for that purpose. To forbid it just delte the timer Change-Id: Ieaee40e7a20bfeb162bdd8e35ee466f56d943035 Signed-off-by: Roman Peresipkyn --- src/e_mod_main.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/src/e_mod_main.c b/src/e_mod_main.c index b6ae4bb..4d7a1dd 100644 --- a/src/e_mod_main.c +++ b/src/e_mod_main.c @@ -388,12 +388,29 @@ _e_eom_cb_client_buffer_change(void *data, int type, void *event) "resource is NULL"); /* - EOM_DBG("wl_buff:%dx%d type:%d", - external_wl_buffer->w, - external_wl_buffer->h, - external_wl_buffer->type); + EOM_DBG("wl_buff:%p type:%d %dx%d ", + external_wl_buffer, + external_wl_buffer->type, + external_wl_buffer->w, + external_wl_buffer->h, + ); */ + /* Since Enlightenment client has reconfigured its window to fit + * external output resolution and Enlightenment no nothing about + * external outputs Enlightenment sees that client's resolution + * differs form main screen resolution. Therefore, Enlightenment + * is trying to resize it back to main screen resolution. It uses + * timer for that purpose. To forbid it just delte the timer */ + + /* TODO: it works but maybe there is better solution exists ? + * Also I do not know how it affects on performance */ + if (ec->map_timer) + { + EOM_DBG("delete map_timer"); + E_FREE_FUNC(ec->map_timer, ecore_timer_del); + } + /* TODO: support buffers smaller then output resolution */ if (external_wl_buffer->w != eom_output->width || external_wl_buffer->h != eom_output->height ) -- 2.34.1