[Fuchsia] Avoid redundant IPC in PlatformFallbackFontForCharacter()

Previously PlatformFallbackFontForCharacter() was sending 2 font
provider requests and didn't guarantee that the returned font actually
contain requested character. Rewrote it to fix both issues.

Also added FontCache::GetBcp47LocaleForRequest() and updated all
matchFamilyStyleCharacter() callers to use it.

Bug: 957256
Change-Id: I989c1e0b8fdc46a81d4d58d63ae3f3d02133f357
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1586476
Reviewed-by: Dominik Röttsches <drott@chromium.org>
Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
Auto-Submit: Sergey Ulanov <sergeyu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#657319}
5 files changed