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