Don't allow navigations in Document::detach.
Document. This process may detach plugin elements, causing a nested
message loop to run.
Document::detach() creates a ScriptForbiddenScope to prevent script from
breaking invariants. Since plugins were detached synchronously, any
script trying to execute in the nested message loop would be blocked.
However, the fix for https://crbug.com/524120
defers plugin updates to
happen outside the ScriptForbiddenScope. Thus, it is now possible to
attach a *new* Document with a synchronous navigation while the old
Document is being detached.