void PickerIndicatorElement::openPopup()
{
    if (m_chooser)
        return;
    if (!document()->page())
        return;
    if (!m_pickerIndicatorOwner)
        return;
    Chrome* chrome = document()->page()->chrome();
    if (!chrome)
        return;
    DateTimeChooserParameters parameters;
    if (!m_pickerIndicatorOwner->setupDateTimeChooserParameters(parameters))
        return;
    m_chooser = chrome->openDateTimeChooser(this, parameters);
}
void BaseChooserOnlyDateAndTimeInputType::handleDOMActivateEvent(Event*)
{
    if (element()->isDisabledOrReadOnly() || !element()->renderer() || !ScriptController::processingUserGesture())
        return;

    if (m_dateTimeChooser)
        return;
    if (!element()->document()->page())
        return;
    Chrome* chrome = element()->document()->page()->chrome();
    if (!chrome)
        return;
    DateTimeChooserParameters parameters;
    if (!element()->setupDateTimeChooserParameters(parameters))
        return;
    m_dateTimeChooser = chrome->openDateTimeChooser(this, parameters);
}