Fix external file presentation.

This bug is a regression, because ios/web started presenting error pages
if hasControllerForURL: returns NO and the URL is not a WebUI URL.
ios/web change was a reasonable change, but BVC did not follow API
contract and returned NO from hasControllerForURL: even if controller
existed.

Return YES from hasControllerForURL: for kChromeUIExternalFileHost if
NativeController actually exists. This change enforces existing API
constract for CRWNativeContentProvider.

EG tests do not have good infrastructure to write end-to-end test for
external URLs. BVC is also not testable, so this CL does not include
tests.

Bug: 902271
Change-Id: I81c08b439460bcbf81f0e7234f9cdbe57938e6fe
Reviewed-on: https://chromium-review.googlesource.com/c/1370931
Commit-Queue: Eugene But <eugenebut@chromium.org>
Reviewed-by: Kurt Horimoto <kkhorimoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615384}
1 file changed