title: Trapping the source of a focus event
body: <p>I'm trying to track down a tricky focus traversal problem.</p>
  
  <p>Trapping what is executing the focus change is easy, but to little purpose, its the event queue.  What I need is to trap what requested the focus change - to find the code that initiated the focus change request.</p>
  
  <p>I'd had a handy tool at one time that used some gimmick or other that made it effectively the queue that received events, which could then be customized with debug logic to print out stack traces of the request's origin, but I've lost that tool, and creating it is beyond me. I would however love to have it again, as its amazingly simple and great for debugging focus problems.</p>
  
  <p>So I ask: how do I trap the source of an event?  I only need it for focus events, so if its a solution targeted at just those, it's just as good for me as a general event queue solution.</p>
  
  <p>I can brute force the problem without such a tool, but I'd rather not have to resort to stepping through lines of code one at a time with the debugger.</p>