A couple of people where talking about it on irc and I've been seeing
this issue as well:

Somewhere there's an implicit raise() or something which in some
situations causes flicker when a client is being managed. The most
common situation I see this in is when in max layout and having 1
urxvt window open,  I spawn another one and for a split second I can
see it in the top-left corner of the screen in its default size before
the screen is arranged.

I've been trying to track it down but eventually gave up due to the
relevant C code being split into 50 different functions in 30
different files :P. There is a client_raise() in manage function of
client.c and tried replacing that with client_stack_append/push and
such but it changes nothing.

In principle I think it would be best to avoid implicit raise in C
code and have new clients pushed to the bottom of the stack by default
and then handle raise in lua-side hooks - beats hardcoded raise() on
manage + optional lower() because this way you get a choice whether
you want to show the window on manage or not, rather than being forced
to see it on the screen for a sec before you lower it.

I'm not sure if this is comprehensible, I was trying to make a video
but I couldn't catch the flicker on that.

k

-- 
To unsubscribe, send mail to [email protected].

Reply via email to