Re: some patches for next

2008-12-08 Thread Julien Danjou
At 1228522529 time_t, Maarten Maathuis wrote:
 Subject: [PATCH] client: Sometimes you need to arrange before a client gets 
 unbanned.

Merged.

 Subject: [PATCH] client: Don't show transient windows for invisible parents.
 +/* If the parent is invisible, then so should the child. */
 +if(c-transient_for)
 +if(!client_isvisible_exclude_banned(c-transient_for, screen))
 +return false;

If I understand correctly this breaks the tagging of transient windows.
If there tags are differents from the parents, they will be totally
invisible.
I did not merged this one.

 diff --git a/client.c b/client.c
 index f1c2426..f55371e 100644
 --- a/client.c
 +++ b/client.c
 @@ -1284,7 +1284,11 @@ luaA_client_geometry(lua_State *L)
  geometry.height = luaA_getopt_number(L, 2, height, 
 (*c)-geometry.height);
  }
  
 -(*c)-ismaxhoriz = (*c)-ismaxvert = false;
 +if ((*c)-geometry.width != geometry.width || (*c)-geometry.x != 
 geometry.x)
 +(*c)-ismaxhoriz = false;
 +
 +if ((*c)-geometry.height != geometry.height || (*c)-geometry.y != 
 geometry.y)
 +(*c)-ismaxvert = false;
  
  client_resize(*c, geometry, (*c)-honorsizehints);
  }

This part seems ok so I've merged it into
client: maximize belongs to client internal

 diff --git a/lib/awful/client.lua.in b/lib/awful/client.lua.in
 index 5ad971f..b2c7a98 100644
 --- a/lib/awful/client.lua.in
 +++ b/lib/awful/client.lua.in
 @@ -572,4 +572,25 @@ hooks.unmanage.register(urgent.delete)
  
  hooks.unmanage.register(floating.delete)
  
 +-- Pseudo tiled beheaviour for fully maximized clients.
 +-- The lowering is needed to see all tiled windows again.
 +-- The raising is needed to see the maximized window again.
 +-- Lowering upon unfocus would mess with floating/transient windows.
 +hooks.focus.register(function(c)
 +if c.maximized_horizontal and c.maximized_vertical then
 +c:raise()
 +elseif not floating.get(c) then
 +-- Find all maximized windows and lower them
 +local tls = tag.selectedlist(c.screen)
 +for i, t in pairs(tls) do
 +local cls = t:clients()
 +for j, cot in pairs(cls) do
 +if cot.maximized_horizontal and cot.maximized_vertical then
 +cot:lower()
 +end
 +end
 +end
 +end
 +end)

If I understand correctly, you raise full-maximized windows upon focus.
If it's not focus, then you lower all maximized windows to get them
under tiled ones.
So you basically implements two layers of windows: tiled/maximized ?

Not against it, this does not seem bad but seems to be a very personal choice.

Cheers,
-- 
Julien Danjou
// ᐰ [EMAIL PROTECTED]   http://julien.danjou.info
// 9A0D 5FD9 EB42 22F6 8974  C95C A462 B51E C2FE E5CD


signature.asc
Description: Digital signature


Re: some patches for next

2008-12-08 Thread Julien Danjou
At 1228603551 time_t, Maarten Maathuis wrote:
 Two more patches, one to avoid taskbars keeping their original size when  
 struts change, the other to resize the taskbar when clients with struts  
 are (un)banned.

I can't see justification for:

 Subject: [PATCH] wibox: Always resize, otherwise your wiboxes are too large 
 or small when the workarea changes.

Do you have steps to reproduce this?

 Subject: [PATCH] client: Also check for struts on client_{ban,unban}

Nice, merged.

Cheers,
-- 
Julien Danjou
// ᐰ [EMAIL PROTECTED]   http://julien.danjou.info
// 9A0D 5FD9 EB42 22F6 8974  C95C A462 B51E C2FE E5CD


signature.asc
Description: Digital signature