I imagine that the software architecture is sufficiently abstracted that by the time the call to open the new window is reached, it really has no idea how it got there.

I think all of it comes down to the fact that it they were written without the notion of ever having to implement something like this and all the implementations so far are (more or less) lousy hacks. A completely new browser implementation will probably be required with that as a design criterion before it's fixed.
_________________________
Bitt Faulk