Fix reentrance of BaseMultipleFieldsDateAndTimeInputType::destroyShadowSubtree.

destroyShadowSubtree could dispatch 'blur' event unexpectedly because
element()->focused() had incorrect information. We make sure it has
correct information by checking if the UA shadow root contains the
focused element.

BUG=257353

Review URL: https://chromiumcodereview.appspot.com/19067004

git-svn-id: svn://svn.chromium.org/blink/trunk@154086 bbb929c8-8fbe-4397-9dbb-9b2b20218538
void BaseMultipleFieldsDateAndTimeInputType::updateClearButtonVisibility()
{
    ClearButtonElement* clearButton = clearButtonElement();
    if (!clearButton)
        return;

    if (element()->isRequired() || !dateTimeEditElement()->anyEditableFieldsHaveValues())
        clearButton->setInlineStyleProperty(CSSPropertyVisibility, CSSValueHidden);
    else
        clearButton->removeInlineStyleProperty(CSSPropertyVisibility);
}

void BaseMultipleFieldsDateAndTimeInputType::updateClearButtonVisibility()
{
    ClearButtonElement* clearButton = clearButtonElement();
    if (!clearButton)
        return;

    if (element()->isRequired() || !dateTimeEditElement()->anyEditableFieldsHaveValues())
        clearButton->setInlineStyleProperty(CSSPropertyVisibility, CSSValueHidden);
    else
        clearButton->removeInlineStyleProperty(CSSPropertyVisibility);
}
