From 254e50d88c5f58cb8b736dbb4681d020ddb88919 Mon Sep 17 00:00:00 2001 From: Uli Schlachter Date: Fri, 23 Jan 2015 20:43:40 +0100 Subject: [PATCH] Partly revert commit 90fde1393f That commit made awful.tag use timer.delayed_call() to call withcurrent() during the manage signal. The idea was "if nothing else assigns any tags until the end, apply some default ones". However, the C core refuses to set the input focus to an unviewable client and thus this means that setting the input focus during manage failed. So, instead of using the delayed_call(), just call withcurrent() directly, like we did before. However, some part of that commit is still left: Awful.rules no longer disconnects the withcurrent() callback from the "manage" signal. This was originally added in commit 5e7ddd1efa, because it clients flickered otherwise if they were moved to some unselected tag during "manage". This happened because the C code unbanned the client when it got assigned the input focus and only later did some other code move it to some unselected tag. However, this flickering will no longer occur, because commit 3dbf89c990 added lazy focus setting. Thanks to this, setting the focus no longer unbans a client as a side-effect. Thus, if you focus a client and then remove it from all selected tags, nothing will be visible on-screen. To make a long story short: This commit reverts the part of commit 90fde1393f which caused side effects. The part that wasn't necessary any more is left in. Signed-off-by: Uli Schlachter --- lib/awful/tag.lua.in | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/awful/tag.lua.in b/lib/awful/tag.lua.in index f746ed48a..cfb3b105c 100644 --- a/lib/awful/tag.lua.in +++ b/lib/awful/tag.lua.in @@ -630,9 +630,7 @@ capi.client.connect_signal("manage", function(c) c:connect_signal("property::screen", tag.withcurrent) end) -capi.client.connect_signal("manage", function(c) - timer.delayed_call(tag.withcurrent, c) -end) +capi.client.connect_signal("manage", tag.withcurrent) capi.tag.connect_signal("request::select", tag.viewonly) capi.tag.add_signal("property::hide")