Show an arrow mark in text input types to show availability of <datalist> suggestions, and open datalist popup by clicking it.

It was hard for uses to know that <datalist> suggestions were available for
a text input. We should show an arrow mark like date/time input types and
<select> elements.

We add new Element subclass to represent the arrow mark,
DataListIndicatorElement. Existing PickerIndicatorElement doesn't work well
for text input types.

DataListIndicatorElement should be added to UA ShadowRoot only if the
associated <datalist> has a valid option, and we should update the UA
shadow dynamically.
We add HTMLDataListElement::childrenChanged override to notify its
children changes to associated <input>s.

If DataListIndicatorElement is clicked, we call
Chrome::openTextDataListChooser(), which is connected to
WebAutofillClient::openTextDataListChooser().

BUG=152375
R=keishi@chromium.org

Review URL: https://codereview.chromium.org/112633002

git-svn-id: svn://svn.chromium.org/blink/trunk@163850 bbb929c8-8fbe-4397-9dbb-9b2b20218538