The document inside you iFrame is a completely separate document and can be from a different domain as well so won't get any events just like you don't get events from other browser tabs. However you could communicate across the boundary by defining your own api's. What I mean is you can add Javascript methods to the containing document and call them from the child using top.<insert method name>.
What I've done in the past is create 2 entry points (and modules), essentially two GWT apps, one for the parent window and the other for the child window. Using JSNI expose a well know method name on the parent that can be called. It can be a pain but we had an app that could be hosted in another app using a iFrame and could have hot key support for both passing key events to the parent. By the way this only works when both apps are from the same domain.
Good Luck,
Gordon Pike