Merge "Form validation: Validation bubble should be closed on document unload process." to M58

This CL fixes a bug that a validation bubble is not closed by page navigation in
some cases.

We close a validation message on Page::documentDetached(). However it seems it was
too late to communicate with the browser process in some cases. So, this CL moves
it to Document unload timing.

 * Add ValidationMessage::willUnloadDocument(), which closes a validation bubble,
  and Document::dispatchUnloadEvents() calls it indirectly through Page.

 * HTMLFormControlElement prevents from showing a validation message after the
  unload processing.

BUG=704560

Review-Url: https://codereview.chromium.org/2771193002
Cr-Commit-Position: refs/heads/master@{#459701}
(cherry picked from commit a896ff44a395a50ab18f5120f20b7eb5a9550247)

Review-Url: https://codereview.chromium.org/2782093003 .
Cr-Commit-Position: refs/branch-heads/3029@{#472}
Cr-Branched-From: 939b32ee5ba05c396eef3fd992822fcca9a2e262-refs/heads/master@{#454471}
8 files changed