devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8c660ca3589ff78db8cfb3f03658f6bc11418186

commit 8c660ca3589ff78db8cfb3f03658f6bc11418186
Author: Gwanglim Lee <[email protected]>
Date:   Tue Jun 10 15:28:20 2014 -0400

    win: fix borderless_set behavior
    
    Summary:
    According to the current elm_win code, client side border should be removed
    when window is fullscreen mode. And border couldn't be shown on window
    during fullscreen mode. When window is going into normal mode from 
fullscreen,
    then display of border should be determined by its borderless state.
    
    1. client border should be shown when window is going into normal mode from 
fullscreen with borderless state.
    2. client border shouldn't be shown when window is going into normal mode 
from fullscreen with border state.
    3. and also client border shouldn't be shown when window is fullscreen mode.
    
    @fix
    
    Test Plan:
    1. run elementary_test in wayland server
    2. run window states
    3. select borderless
    4. select fullscreen
    5. unselect fullscreen
    6. unselect borderless
    
    Reviewers: raster, devilhorns, seoz
    
    Differential Revision: https://phab.enlightenment.org/D988
---
 src/lib/elm_win.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 3c3a6b7..abc13e6 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -3529,6 +3529,9 @@ _elm_win_borderless_set(Eo *obj EINA_UNUSED, Elm_Win_Data 
*sd, Eina_Bool borderl
                 ((!strcmp(engine_name, ELM_WAYLAND_SHM)) ||
                  (!strcmp(engine_name, ELM_WAYLAND_EGL)));
 
+   if (need_frame)
+     need_frame = !sd->fullscreen;
+
    if (borderless)
      {
         if (need_frame)
@@ -3652,6 +3655,9 @@ _elm_win_fullscreen_set(Eo *obj EINA_UNUSED, Elm_Win_Data 
*sd, Eina_Bool fullscr
                      ((!strcmp(engine_name, ELM_WAYLAND_SHM)) ||
                       (!strcmp(engine_name, ELM_WAYLAND_EGL)));
 
+        if (need_frame)
+          need_frame = !ecore_evas_borderless_get(sd->ee);
+
         TRAP(sd, fullscreen_set, fullscreen);
 
         if (fullscreen)

-- 


Reply via email to