Remove RenderFrameImpl::DidReceiveResponse

We already handle the main resource response during CommitNavigation.
The only missing bit was the fake "200" status code for data urls,
which we can set in BuildDocumentState.

This approach differs with existing one in the following cases:

1. Data urls committed as WebData (as opposite to a fake WebURLRequest)
   don't get 200 currently. This seems like a bug - we should either mark
   all data urls as 200, or none.

2. Due to browser-side navigation, DidReceiveResponse may encounter a
   placeholder document loader for some outstanding requests (e.g. favicon from
   previous load). This leads to using wrong alpn negotiated protocol and/or
   status code, which is definitely a bug.

3. Test-only path which skips RenderFrameImpl entirely for subframes when
   loading an html string - it does not set 200 for data urls. This is a
   test-only issue, which is again fixed with the new approach.

Bug: 855189
Change-Id: I5e2d0e539f9e5c3ad1a8af1153390dff2bfb678b
Reviewed-on: https://chromium-review.googlesource.com/c/1272135
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616182}
7 files changed