Ensure WebContentsObserver.destroy is called
When a Java-based WebContents instance is destroyed, it may yet have
Java-based WebContentsObserver instances. Previously, these instances
would always see a destroy (formerly detach) call, as they each had
a native counterpart.
With the introduction of the proxy WebContentsObserver, destroy was not
always called, as the remaining observers were simply cleared from the
observer list. Explicitly call WebContentsObserver.destroy for these
dangling instances, ensuring proper cleanup.
BUG=464076
Review URL: https://codereview.chromium.org/
981703002
Cr-Commit-Position: refs/heads/master@{#319162}