[iOS] Introduce ShellColorChooserIOS

This CL enables WebContentsDelegate::OpenColorChooser
on iOS to create a color chooser with UI components supported
on iOS framework and introduces ShellColorChooserIOS that
would have UI controller and coordinator.

Chromium uses mainly ColorChooserPopupUIController for all
platforms except Android.
With this CL, if PagePopupEnabled() is false, ContentShell on
iOS calls the delegate method to create a color chooser, not
using ColorChooserPopupUIController.

Bug: 1467802
Change-Id: I0acd680a78167babff3b2ac1d32bf866149ae8e5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4721125
Reviewed-by: Avi Drissman <[email protected]>
Commit-Queue: Julie Jeongeun Kim <[email protected]>
Reviewed-by: Dave Tapuska <[email protected]>
Reviewed-by: Mason Freed <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1176406}
diff --git a/content/shell/browser/shell_platform_delegate.cc b/content/shell/browser/shell_platform_delegate.cc
index fd6dfbc..e938334 100644
--- a/content/shell/browser/shell_platform_delegate.cc
+++ b/content/shell/browser/shell_platform_delegate.cc
@@ -37,6 +37,13 @@
 }
 
 #if !BUILDFLAG(IS_IOS)
+std::unique_ptr<ColorChooser> ShellPlatformDelegate::OpenColorChooser(
+    WebContents* web_contents,
+    SkColor color,
+    const std::vector<blink::mojom::ColorSuggestionPtr>& suggestions) {
+  return nullptr;
+}
+
 void ShellPlatformDelegate::RunFileChooser(
     RenderFrameHost* render_frame_host,
     scoped_refptr<FileSelectListener> listener,