derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0611dbc1e9bbf81026e7630a65766c325495bf47

commit 0611dbc1e9bbf81026e7630a65766c325495bf47
Author: Derek Foreman <[email protected]>
Date:   Fri Dec 7 10:46:11 2018 -0600

    efl_ui_win: Don't allow the frame object to change size before first draw
    
    This fixes a bug where calling:
    
    evas_object_show(win);
    evas_object_resize(win, 400, 400);
    elm_run();
    
    Would show a much smaller than 400,400 window on wayland, as the CSD
    calcs would set the size smaller.
    
    It also fixes some differences in startup size between X and wayland for
    some trivial test clients.
    
    Signed-off-by: Derek Foreman <[email protected]>
    Reviewed-by: Chris Michael <[email protected]>
    Differential Revision: https://phab.enlightenment.org/D7438
---
 src/lib/elementary/efl_ui_win.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 0d33fe31f0..0eca88120a 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -1551,10 +1551,10 @@ _elm_win_frame_obj_update(Efl_Ui_Win_Data *sd, 
Eina_Bool force)
 
    if (!_elm_win_framespace_set(sd, cx, cy, ow - cw, oh - ch) && (!force)) 
return;
    _elm_win_frame_geometry_adjust(sd);
-   if (sd->first_draw)
-     evas_object_geometry_get(sd->obj, NULL, NULL, &w, &h);
-   else
-     w = ow, h = oh;
+
+   if (!sd->first_draw) return;
+
+   evas_object_geometry_get(sd->obj, NULL, NULL, &w, &h);
    if (w && h)
      TRAP(sd, resize, w, h);
 }

-- 


Reply via email to