discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=68e0b75929b0555654c7d0c1f6b07c527a7d80e0

commit 68e0b75929b0555654c7d0c1f6b07c527a7d80e0
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Tue Nov 25 15:02:06 2014 -0500

    set skip pager/taskbar hints on parent window instead of client window
    
    this is a change in behavior as compared to E17-E18 where any setting of 
related flags would alter the client hints
    
    ref T1692
---
 src/bin/e_hints.c | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/src/bin/e_hints.c b/src/bin/e_hints.c
index 4b02b71..7b8cd09 100644
--- a/src/bin/e_hints.c
+++ b/src/bin/e_hints.c
@@ -593,10 +593,13 @@ e_hints_window_state_set(E_Client *ec)
      state[num++] = ECORE_X_WINDOW_STATE_MAXIMIZED_HORZ;
    if (ec->netwm.state.shaded)
      state[num++] = ECORE_X_WINDOW_STATE_SHADED;
-   if (ec->netwm.state.skip_taskbar)
-     state[num++] = ECORE_X_WINDOW_STATE_SKIP_TASKBAR;
-   if (ec->netwm.state.skip_pager)
-     state[num++] = ECORE_X_WINDOW_STATE_SKIP_PAGER;
+   if (ec->internal)
+     {
+        if (ec->netwm.state.skip_taskbar)
+          state[num++] = ECORE_X_WINDOW_STATE_SKIP_TASKBAR;
+        if (ec->netwm.state.skip_pager)
+          state[num++] = ECORE_X_WINDOW_STATE_SKIP_PAGER;
+     }
    if (ec->netwm.state.hidden)
      state[num++] = ECORE_X_WINDOW_STATE_HIDDEN;
    if (ec->netwm.state.fullscreen)
@@ -617,6 +620,16 @@ e_hints_window_state_set(E_Client *ec)
         break;
      }
    ecore_x_netwm_window_state_set(e_client_util_win_get(ec), state, num);
+   if (!ec->internal)
+     {
+        num = 0;
+        if (ec->netwm.state.skip_taskbar)
+          state[num++] = ECORE_X_WINDOW_STATE_SKIP_TASKBAR;
+        if (ec->netwm.state.skip_pager)
+          state[num++] = ECORE_X_WINDOW_STATE_SKIP_PAGER;
+        if (num)
+          ecore_x_netwm_window_state_set(e_client_util_win_get(ec), state, 
num);
+     }
 #endif
 }
 

-- 


Reply via email to