From: Doyoun Kang Date: Wed, 24 Aug 2022 00:43:34 +0000 (+0900) Subject: ecore_wl2_window: modify configure_send function X-Git-Tag: accepted/tizen/unified/20220829.062608^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1585fc2f9cedeb57d75d9b73af2f95518ad70acf;p=platform%2Fupstream%2Fefl.git ecore_wl2_window: modify configure_send function If the def_config's serial and req_config's serial are same, it means that the ECORE_WL2_EVENT_WINDOW_CONFIGURE event is not generated by configure_event from display server. In this case, ECORE_WL2_EVENT_WINDOW_CONFIGURE event handle window's states not a size. So, a width and height of the event are set by zero. @tizen_only Change-Id: Ie7d922dcddba48ec36dee7698fe60325a4fedd9f --- diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c b/src/lib/ecore_wl2/ecore_wl2_window.c index 9746724..433954e 100644 --- a/src/lib/ecore_wl2/ecore_wl2_window.c +++ b/src/lib/ecore_wl2/ecore_wl2_window.c @@ -160,35 +160,44 @@ _ecore_wl2_window_configure_send(Ecore_Wl2_Window *win) ev->y = win->set_config.geometry.y; // -// TIZEN_ONLY(220421): modify event size - if (win->def_config.fullscreen || win->def_config.maximized) +// TIZEN_ONLY(220421/220822): modify event size + if (win->def_config.serial == win->req_config.serial) { - ev->w = win->def_config.geometry.w; - ev->h = win->def_config.geometry.h; + // this means that this function is called by internal function not display server's configure + ev->w = 0; + ev->h = 0; } else { - if ((win->def_config.fullscreen != win->req_config.fullscreen) || - (win->def_config.maximized != win->req_config.maximized)) + if (win->def_config.fullscreen || win->def_config.maximized) { - // this means that window unset fullscreen or maximized. - // use saved geometry - ev->w = win->saved.w; - ev->h = win->saved.h; + ev->w = win->def_config.geometry.w; + ev->h = win->def_config.geometry.h; } else { - if (win->def_config.geometry.w || win->def_config.geometry.h) + if ((win->def_config.fullscreen != win->req_config.fullscreen) || + (win->def_config.maximized != win->req_config.maximized)) { - ev->w = win->def_config.geometry.w; - ev->h = win->def_config.geometry.h; + // this means that window unset fullscreen or maximized. + // use saved geometry + ev->w = win->saved.w; + ev->h = win->saved.h; } else { - // this means that display server didn't consider client's size. - // use client set_config size - ev->w = win->set_config.geometry.w; - ev->h = win->set_config.geometry.h; + if (win->def_config.geometry.w || win->def_config.geometry.h) + { + ev->w = win->def_config.geometry.w; + ev->h = win->def_config.geometry.h; + } + else + { + // this means that display server didn't consider client's size. + // use client set_config size + ev->w = win->set_config.geometry.w; + ev->h = win->set_config.geometry.h; + } } } }