[xmonad] Delays in focus update...

Brandon Allbery allbery.b at gmail.com
Mon Feb 6 23:44:48 CET 2012

On Mon, Feb 6, 2012 at 17:31, Norbert Zeh <nzeh at cs.dal.ca> wrote:

> Allen S. Rout [2012.02.06 1453 -0500]:
> > But I've noticed a certain lack of responsiveness when I make
> > sweeping motions with the mouse, and I've now done a bit of an
> > experiment  that seems to narrow it down.
> I am not entirely certain what inside the decoration module would create
> such
> massive delays - the CPU usage on one of my cores goes up to 50% when I'm
> in the
> endless loop.  I'm not too keen to dig into it because this module is a
> monster,
> but it may simply be necessary.

Two things that come to mind are that

(a) decoration windows are, somewhat uselessly, part of the StackSet and
must be traversed whenever the StackSet is searched for the newly focused

(b) Decoration registers interest in all events on decoration windows,
specifically including mouse events IIRC, and (usually pointlessly) invokes
a (usually stub) handler on such events.

BTW, the tabs module really needs to be rewritten not to use Decoration;
not only is Decoration inefficient, as above, but tabs are actually a
rather poor fit for Decoration because most of the Decoration code assumes
decoration windows take up space near the real window, and odd things
happen with respect to space allocation when they are instead located
somewhere else.  (I have local hacks around that which fix most of the odd
things with respect to figuring out the available workspace area, but not
all of them; and it still leaves the performance issues.)

brandon s allbery                                      allbery.b at gmail.com
wandering unix systems administrator (available)     (412) 475-9364 vm/sms
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/xmonad/attachments/20120206/c65b8417/attachment-0001.htm>

More information about the xmonad mailing list