wibox: do not set need_arrange on wibox detach

Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Julien Danjou 2009-05-10 16:41:28 +02:00
parent 1a0b1a2215
commit 25b3e718d1
2 changed files with 23 additions and 19 deletions

View File

@ -93,23 +93,29 @@ function getname(layout)
end
hooks.arrange.register(on_arrange)
hooks.property.register(function (c, prop)
if type(c) ~= "client" then return end
if prop == "size_hints_honor"
or prop == "struts"
or prop == "minimized"
or prop == "sticky"
or prop == "fullscreen"
or prop == "maximized_horizontal"
or prop == "maximized_vertical"
or prop == "border_width"
or prop == "hide" then
on_arrange(c.screen)
elseif prop == "screen" then
-- If prop is screen, we do not know what was the previous screen, so
-- let's arrange all screens :-(
for screen = 1, capi.screen.count() do
on_arrange(screen)
hooks.property.register(function (obj, prop)
local objtype = type(obj)
if objtype == "client" then
if prop == "size_hints_honor"
or prop == "struts"
or prop == "minimized"
or prop == "sticky"
or prop == "fullscreen"
or prop == "maximized_horizontal"
or prop == "maximized_vertical"
or prop == "border_width"
or prop == "hide" then
on_arrange(obj.screen)
elseif prop == "screen" then
-- If prop is screen, we do not know what was the previous screen, so
-- let's arrange all screens :-(
for screen = 1, capi.screen.count() do
on_arrange(screen)
end
end
elseif objtype == "wibox" then
if prop == "screen" then
on_arrange(obj.screen)
end
end
end)

View File

@ -386,8 +386,6 @@ wibox_detach(wibox_t *wibox)
simplewindow_wipe(&wibox->sw);
wibox->screen->need_arrange = true;
foreach(item, globalconf.wiboxes)
if(*item == wibox)
{