Do we set listener twice because of the swapFrame trick? So that these events can fire on any of the two iframes?
If that's the case, we should put a comment, and eventually listen in both cases on the frames: `frame` and `browser`.