Changeset 133284 in webkit


Ignore:
Timestamp:
Nov 2, 2012 4:27:50 AM (11 years ago)
Author:
tkent@chromium.org
Message:

Introduce ENABLE_DATE_AND_TIME_INPUT_TYPES, and clarify usage of other related flags
https://bugs.webkit.org/show_bug.cgi?id=101007

Reviewed by Kentaro Hara.

Source/WebCore:

ChromeClient::openDateTimeChooser and Locale::formatDateTime are
necessary if one of date/time input types is enabled and even if
ENABLE_INPUT_MULTIPLE_FIELDS_UI is disabled. So they should be wrapped
with ENABLE(DATE_AND_TIME_INPUT_TYPES).

The following clases are used only for ChromeClient::openDateTimeChooser.
They should be wrapped with the same flag.

  • class DateTimeChooser
  • class DateTiemChooserClient

The following classes/functions are used for
Locale::formatDateTime. They should be wrapped with the same flag.

  • Locale::dateFormat
  • Locale::monthFormat
  • Locale::timeFormat
  • Locale::shortTimeFormat
  • Locale::monthLabels
  • Locale::shortMonthLabels
  • Locale::standAloneMonthLabels
  • Locale::shortStandAloneMonthLabels
  • class DateTimeFormat

Also, we change the meaning of ENABLE_CALENDAR_PICKER. It meant

1) <input> supports calendar picker UI, and
2) WebCore/Resources/pagepopups/ is used for the calendar UI implementation.

Now ENABLE_CALENDAR_PICKER means only 2.

No new tests because of no behavior changes.

  • html/BaseDateAndTimeInputType.h: This is necessary only if date/time

input types are enabled because this is a common super class of
date/time InputType classes.

  • html/BaseDateAndTimeInputType.cpp: Ditto.
  • html/BaseChooserOnlyDateAndTimeInputType.cpp: Ditto.
  • html/BaseChooserOnlyDateAndTimeInputType.h: Ditto.
  • page/ChromeClient.h: Change the flag for openDateTimeChooser, and add a comment.
  • loader/EmptyClients.cpp: Follow the openDateTimeChooser flag change.
  • loader/EmptyClients.h: Ditto.
  • platform/DateTimeChooser.h:

This is needed only if ChromeClient::openDateTimeChooser is available.

  • platform/DateTimeChooserClient.h: Ditto.
  • platform/LocalizedStrings.h:

weekFormatInLDML is necessary if ENABLE(INPUT_TYPE_WEEK) regardless of
ENABLE(INPUT_MULTIPLE_FIELDS_UI).

  • platform/text/PlatformLocale.h:

Change the condition for Locale::formatDateTime and the code used by
Locale::formatDateTime.

  • platform/text/PlatformLocale.cpp:

(WebCore::Locale::formatDateTime):
This is necessary even if !ENABLE(INPUT_MULTIPLE_FIELDS_UI), to produce
localized representations of date/time values.

  • platform/text/LocaleICU.cpp:

Change the condition for the code used by Locale::formatDateTime.

  • platform/text/LocaleICU.h: Ditto.
  • platform/text/LocaleNone.cpp: Ditto.
  • platform/text/mac/LocaleMac.h: Ditto.
  • platform/text/mac/LocaleMac.mm: Ditto.
  • platform/text/win/LocaleWin.cpp: Ditto.
  • platform/text/win/LocaleWin.h: Ditto.
  • platform/text/DateTimeFormat.cpp: Ditto.
  • platform/text/DateTimeFormat.h: Ditto.
  • html/BaseMultipleFieldsDateAndTimeInputType.h:

Remove some #if-#endif for a picker indicator element because
ENABLE_CALENDAR_PICKER meaning is changed.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp: Ditto.
  • html/shadow/PickerIndicatorElement.cpp: CALENDAR_PICKER ->

INPUT_MULTIPLE_FIELDS_UI because ENABLE_CALENDAR_PICKER meaning is changed.

  • html/shadow/PickerIndicatorElement.h: Ditto.
  • rendering/RenderDetailsMarker.cpp: Ditto.
  • rendering/RenderDetailsMarker.h: Ditto.
  • rendering/RenderTheme.h: Ditto.
  • rendering/RenderThemeChromiumCommon.cpp: Ditto.
  • rendering/RenderThemeChromiumCommon.h: Ditto.
  • rendering/RenderThemeChromiumMac.h: Ditto.
  • rendering/RenderThemeChromiumSkia.h: Ditto.

Source/WebKit/chromium:

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::openDateTimeChooser):
Follow the ChromeClient::openDateTimeChooser flag change.
Also, add an empty implemenatation for Android.

  • src/ChromeClientImpl.h:

Follow the ChromeClient::openDateTimeChooser flag change.

  • src/DateTimeChooserImpl.cpp: Wrapped with

ENABLE(INPUT_MULTIPLE_FIELDS_UI). This class is not used in Android.

  • src/DateTimeChooserImpl.h: Ditto.
  • src/LocalizedStrings.cpp: Follow the LocalizedString.h change.

Source/WTF:

  • wtf/Platform.h:

Add ENABLE_DATE_AND_TIME_INPUT_TYPES. It's a union of
ENABLE_INPUT_TYPE_{DATE,DATETIME,DATETIMELOCAL,MONTH,TIME,WEEK}.

Location:
trunk/Source
Files:
41 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r133272 r133284  
     12012-11-01  Kent Tamura  <tkent@chromium.org>
     2
     3        Introduce ENABLE_DATE_AND_TIME_INPUT_TYPES, and clarify usage of other related flags
     4        https://bugs.webkit.org/show_bug.cgi?id=101007
     5
     6        Reviewed by Kentaro Hara.
     7
     8        * wtf/Platform.h:
     9        Add ENABLE_DATE_AND_TIME_INPUT_TYPES.  It's a union of
     10        ENABLE_INPUT_TYPE_{DATE,DATETIME,DATETIMELOCAL,MONTH,TIME,WEEK}.
     11
    1122012-11-01  Yury Semikhatsky  <yurys@chromium.org>
    213
  • trunk/Source/WTF/wtf/Platform.h

    r133233 r133284  
    835835#endif
    836836
     837#if ENABLE(INPUT_TYPE_DATE) || ENABLE(INPUT_TYPE_DATETIME) || ENABLE(INPUT_TYPE_DATETIMELOCAL) || ENABLE(INPUT_TYPE_MONTH) || ENABLE(INPUT_TYPE_TIME) || ENABLE(INPUT_TYPE_WEEK)
     838#define ENABLE_DATE_AND_TIME_INPUT_TYPES 1
     839#endif
     840
    837841#define ENABLE_DEBUG_WITH_BREAKPOINT 0
    838842#define ENABLE_SAMPLING_COUNTERS 0
  • trunk/Source/WebCore/ChangeLog

    r133283 r133284  
     12012-11-01  Kent Tamura  <tkent@chromium.org>
     2
     3        Introduce ENABLE_DATE_AND_TIME_INPUT_TYPES, and clarify usage of other related flags
     4        https://bugs.webkit.org/show_bug.cgi?id=101007
     5
     6        Reviewed by Kentaro Hara.
     7
     8        ChromeClient::openDateTimeChooser and Locale::formatDateTime are
     9        necessary if one of date/time input types is enabled and even if
     10        ENABLE_INPUT_MULTIPLE_FIELDS_UI is disabled. So they should be wrapped
     11        with ENABLE(DATE_AND_TIME_INPUT_TYPES).
     12
     13        The following clases are used only for ChromeClient::openDateTimeChooser.
     14        They should be wrapped with the same flag.
     15          - class DateTimeChooser
     16          - class DateTiemChooserClient
     17
     18        The following classes/functions are used for
     19        Locale::formatDateTime. They should be wrapped with the same flag.
     20          - Locale::dateFormat
     21          - Locale::monthFormat
     22          - Locale::timeFormat
     23          - Locale::shortTimeFormat
     24          - Locale::monthLabels
     25          - Locale::shortMonthLabels
     26          - Locale::standAloneMonthLabels
     27          - Locale::shortStandAloneMonthLabels
     28          - class DateTimeFormat
     29
     30        Also, we change the meaning of ENABLE_CALENDAR_PICKER. It meant
     31         1) <input> supports calendar picker UI, and
     32         2) WebCore/Resources/pagepopups/ is used for the calendar UI implementation.
     33        Now ENABLE_CALENDAR_PICKER means only 2.
     34
     35        No new tests because of no behavior changes.
     36
     37        * html/BaseDateAndTimeInputType.h: This is necessary only if date/time
     38        input types are enabled because this is a common super class of
     39        date/time InputType classes.
     40        * html/BaseDateAndTimeInputType.cpp: Ditto.
     41        * html/BaseChooserOnlyDateAndTimeInputType.cpp: Ditto.
     42        * html/BaseChooserOnlyDateAndTimeInputType.h: Ditto.
     43
     44        * page/ChromeClient.h: Change the flag for openDateTimeChooser, and add a comment.
     45        * loader/EmptyClients.cpp: Follow the openDateTimeChooser flag change.
     46        * loader/EmptyClients.h: Ditto.
     47        * platform/DateTimeChooser.h:
     48        This is needed only if ChromeClient::openDateTimeChooser is available.
     49        * platform/DateTimeChooserClient.h: Ditto.
     50
     51        * platform/LocalizedStrings.h:
     52        weekFormatInLDML is necessary if ENABLE(INPUT_TYPE_WEEK) regardless of
     53        ENABLE(INPUT_MULTIPLE_FIELDS_UI).
     54
     55        * platform/text/PlatformLocale.h:
     56        Change the condition for Locale::formatDateTime and the code used by
     57        Locale::formatDateTime.
     58        * platform/text/PlatformLocale.cpp:
     59        (WebCore::Locale::formatDateTime):
     60        This is necessary even if !ENABLE(INPUT_MULTIPLE_FIELDS_UI), to produce
     61        localized representations of date/time values.
     62        * platform/text/LocaleICU.cpp:
     63        Change the condition for the code used by Locale::formatDateTime.
     64        * platform/text/LocaleICU.h: Ditto.
     65        * platform/text/LocaleNone.cpp: Ditto.
     66        * platform/text/mac/LocaleMac.h: Ditto.
     67        * platform/text/mac/LocaleMac.mm: Ditto.
     68        * platform/text/win/LocaleWin.cpp: Ditto.
     69        * platform/text/win/LocaleWin.h: Ditto.
     70        * platform/text/DateTimeFormat.cpp: Ditto.
     71        * platform/text/DateTimeFormat.h: Ditto.
     72
     73        * html/BaseMultipleFieldsDateAndTimeInputType.h:
     74        Remove some #if-#endif for a picker indicator element because
     75        ENABLE_CALENDAR_PICKER meaning is changed.
     76        * html/BaseMultipleFieldsDateAndTimeInputType.cpp: Ditto.
     77
     78        * html/shadow/PickerIndicatorElement.cpp: CALENDAR_PICKER ->
     79        INPUT_MULTIPLE_FIELDS_UI because ENABLE_CALENDAR_PICKER meaning is changed.
     80        * html/shadow/PickerIndicatorElement.h: Ditto.
     81        * rendering/RenderDetailsMarker.cpp: Ditto.
     82        * rendering/RenderDetailsMarker.h: Ditto.
     83        * rendering/RenderTheme.h: Ditto.
     84        * rendering/RenderThemeChromiumCommon.cpp: Ditto.
     85        * rendering/RenderThemeChromiumCommon.h: Ditto.
     86        * rendering/RenderThemeChromiumMac.h: Ditto.
     87        * rendering/RenderThemeChromiumSkia.h: Ditto.
     88
    1892012-11-02  Zeno Albisser  <zeno@webkit.org>
    290
  • trunk/Source/WebCore/html/BaseChooserOnlyDateAndTimeInputType.cpp

    r133282 r133284  
    2525
    2626#include "config.h"
    27 #if !ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     27#if ENABLE(DATE_AND_TIME_INPUT_TYPES) && !ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    2828#include "BaseChooserOnlyDateAndTimeInputType.h"
    2929
  • trunk/Source/WebCore/html/BaseChooserOnlyDateAndTimeInputType.h

    r133282 r133284  
    2727#define BaseChooserOnlyDateAndTimeInputType_h
    2828
    29 #if !ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     29#if ENABLE(DATE_AND_TIME_INPUT_TYPES) && !ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3030#include "BaseDateAndTimeInputType.h"
    3131
  • trunk/Source/WebCore/html/BaseDateAndTimeInputType.cpp

    r133134 r133284  
    3030
    3131#include "config.h"
     32#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3233#include "BaseDateAndTimeInputType.h"
    3334
     
    181182
    182183} // namespace WebCore
     184#endif
  • trunk/Source/WebCore/html/BaseDateAndTimeInputType.h

    r130835 r133284  
    3232#define BaseDateAndTimeInputType_h
    3333
     34#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3435#include "DateComponents.h"
    3536#include "TextFieldInputType.h"
     
    6869
    6970} // namespace WebCore
    70 
     71#endif
    7172#endif // BaseDateAndTimeInputType_h
  • trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.cpp

    r132985 r133284  
    173173    container->appendChild(spinButton);
    174174
    175 #if ENABLE(DATALIST_ELEMENT) || ENABLE(CALENDAR_PICKER)
    176175    bool shouldAddPickerIndicator = false;
    177176#if ENABLE(DATALIST_ELEMENT)
     
    179178        shouldAddPickerIndicator = true;
    180179#endif
    181 #if ENABLE(CALENDAR_PICKER)
    182180    RefPtr<RenderTheme> theme = document->page() ? document->page()->theme() : RenderTheme::defaultTheme();
    183181    if (theme->supportsCalendarPicker(formControlType())) {
     
    185183        m_pickerIndicatorIsAlwaysVisible = true;
    186184    }
    187 #endif
    188185    if (shouldAddPickerIndicator) {
    189186        RefPtr<PickerIndicatorElement> pickerElement = PickerIndicatorElement::create(document);
     
    193190        updatePickerIndicatorVisibility();
    194191    }
    195 #endif // ENABLE(DATALIST_ELEMENT) || ENABLE(CALENDAR_PICKER)
    196192}
    197193
     
    346342#endif
    347343
    348 #if ENABLE(DATALIST_ELEMENT) || ENABLE(CALENDAR_PICKER)
    349344void BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility()
    350345{
    351 #if ENABLE(CALENDAR_PICKER)
    352346    if (m_pickerIndicatorIsAlwaysVisible) {
    353347        showPickerIndicator();
    354348        return;
    355349    }
    356 #endif
    357350#if ENABLE(DATALIST_ELEMENT)
    358351    if (HTMLDataListElement* dataList = element()->dataList()) {
     
    386379    m_pickerIndicatorElement->removeInlineStyleProperty(CSSPropertyDisplay);
    387380}
    388 #endif // ENABLE(DATALIST_ELEMENT) || ENABLE(CALENDAR_PICKER)
    389381
    390382int BaseMultipleFieldsDateAndTimeInputType::fullYear(const String& source) const
  • trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.h

    r132291 r133284  
    9696    DateTimeEditElement* m_dateTimeEditElement;
    9797    SpinButtonElement* m_spinButtonElement;
    98 #if ENABLE(DATALIST_ELEMENT) || ENABLE(CALENDAR_PICKER)
    9998    PickerIndicatorElement* m_pickerIndicatorElement;
    10099    bool m_pickerIndicatorIsVisible;
    101 #if ENABLE(CALENDAR_PICKER)
    102100    bool m_pickerIndicatorIsAlwaysVisible;
    103 #endif
    104 #endif
    105101};
    106102
  • trunk/Source/WebCore/html/shadow/PickerIndicatorElement.cpp

    r132895 r133284  
    3030
    3131#include "config.h"
     32#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3233#include "PickerIndicatorElement.h"
    33 
    34 #if ENABLE(CALENDAR_PICKER)
    3534
    3635#include "Chrome.h"
  • trunk/Source/WebCore/html/shadow/PickerIndicatorElement.h

    r132895 r133284  
    3232#define PickerIndicatorElement_h
    3333
    34 #if ENABLE(CALENDAR_PICKER)
    35 
     34#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3635#include "DateTimeChooser.h"
    3736#include "DateTimeChooserClient.h"
  • trunk/Source/WebCore/loader/EmptyClients.cpp

    r132895 r133284  
    105105#endif
    106106
    107 #if ENABLE(CALENDAR_PICKER)
     107#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    108108PassRefPtr<DateTimeChooser> EmptyChromeClient::openDateTimeChooser(DateTimeChooserClient*, const DateTimeChooserParameters&)
    109109{
  • trunk/Source/WebCore/loader/EmptyClients.h

    r133167 r133284  
    174174#endif
    175175
    176 #if ENABLE(CALENDAR_PICKER)
     176#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    177177    virtual PassRefPtr<DateTimeChooser> openDateTimeChooser(DateTimeChooserClient*, const DateTimeChooserParameters&) OVERRIDE;
    178178#endif
  • trunk/Source/WebCore/page/ChromeClient.h

    r132915 r133284  
    227227#endif
    228228
    229 #if ENABLE(CALENDAR_PICKER)
     229#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
     230        // This function is used for:
     231        //  - Mandatory date/time choosers if !ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     232        //  - Date/time choosers for types for which RenderTheme::supportsCalendarPicker
     233        //    returns true, if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     234        //  - <datalist> UI for date/time input types regardless of
     235        //    ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    230236        virtual PassRefPtr<DateTimeChooser> openDateTimeChooser(DateTimeChooserClient*, const DateTimeChooserParameters&) = 0;
    231237#endif
  • trunk/Source/WebCore/platform/DateTimeChooser.h

    r132895 r133284  
    3232#define DateTimeChooser_h
    3333
     34#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3435#include "IntRect.h"
    3536#include <wtf/RefCounted.h>
     
    6263
    6364} // namespace WebCore
    64 
     65#endif
    6566#endif // DateTimeChooser_h
  • trunk/Source/WebCore/platform/DateTimeChooserClient.h

    r127558 r133284  
    3232#define DateTimeChooserClient_h
    3333
     34#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3435namespace WebCore {
    3536
     
    4546
    4647} // namespace WebCore
    47 
     48#endif
    4849#endif // DateTimeChooserClient_h
  • trunk/Source/WebCore/platform/LocalizedStrings.h

    r132896 r133284  
    192192    // "datetime-local" input UI instead "----".
    193193    String placeholderForYearField();
    194 
     194#endif
     195#if ENABLE(INPUT_TYPE_WEEK)
    195196    // weekFormatInLDML() returns week and year format in LDML, Unicode
    196     // technical standard 35, Locale Data Markup Language, e.g. "WW-yyyyy"
    197     // for "week" input type.
     197    // technical standard 35, Locale Data Markup Language, e.g. "'Week' ww, yyyy"
    198198    String weekFormatInLDML();
    199199#endif
  • trunk/Source/WebCore/platform/text/DateTimeFormat.cpp

    r132292 r133284  
    2727#include "DateTimeFormat.h"
    2828
    29 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     29#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3030#include <wtf/ASCIICType.h>
    3131#include <wtf/text/StringBuilder.h>
  • trunk/Source/WebCore/platform/text/DateTimeFormat.h

    r132292 r133284  
    2727#define DateTimeFormat_h
    2828
    29 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     29#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    3030#include <wtf/Forward.h>
    3131
  • trunk/Source/WebCore/platform/text/LocaleICU.cpp

    r133134 r133284  
    5959    , m_firstDayOfWeek(0)
    6060#endif
    61 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     61#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    6262    , m_mediumTimeFormat(0)
    6363    , m_shortTimeFormat(0)
     
    7171    unum_close(m_numberFormat);
    7272    udat_close(m_shortDateFormat);
    73 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     73#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    7474    udat_close(m_mediumTimeFormat);
    7575    udat_close(m_shortTimeFormat);
     
    156156}
    157157
    158 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     158#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    159159static String getDateFormatPattern(const UDateFormat* dateFormat)
    160160{
     
    173173    return String::adopt(buffer);
    174174}
    175 #endif
    176 
    177 #if ENABLE(CALENDAR_PICKER)
     175
    178176PassOwnPtr<Vector<String> > LocaleICU::createLabelVector(const UDateFormat* dateFormat, UDateFormatSymbolType type, int32_t startIndex, int32_t size)
    179177{
     
    199197    return labels.release();
    200198}
    201 
     199#endif
     200
     201#if ENABLE(CALENDAR_PICKER)
    202202static PassOwnPtr<Vector<String> > createFallbackWeekDayShortLabels()
    203203{
     
    232232#endif
    233233
    234 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     234#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    235235static PassOwnPtr<Vector<String> > createFallbackMonthLabels()
    236236{
     
    276276#endif
    277277
    278 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     278#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    279279static PassOwnPtr<Vector<String> > createFallbackAMPMLabels()
    280280{
  • trunk/Source/WebCore/platform/text/LocaleICU.h

    r133134 r133284  
    5555    virtual bool isRTL() OVERRIDE;
    5656#endif
    57 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    58     virtual const Vector<String>& monthLabels() OVERRIDE;
    59 #endif
    60 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     57#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    6158    virtual String dateFormat() OVERRIDE;
    6259    virtual String monthFormat() OVERRIDE;
    6360    virtual String timeFormat() OVERRIDE;
    6461    virtual String shortTimeFormat() OVERRIDE;
     62    virtual const Vector<String>& monthLabels() OVERRIDE;
    6563    virtual const Vector<String>& shortMonthLabels() OVERRIDE;
    6664    virtual const Vector<String>& standAloneMonthLabels() OVERRIDE;
     
    8583#endif
    8684
    87 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     85#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    8886    PassOwnPtr<Vector<String> > createLabelVector(const UDateFormat*, UDateFormatSymbolType, int32_t startIndex, int32_t size);
    89 #endif
    90 
    91 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    9287    void initializeDateTimeFormat();
    9388#endif
     
    10398    unsigned m_firstDayOfWeek;
    10499#endif
    105 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     100#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    106101    OwnPtr<Vector<String> > m_monthLabels;
    107 #endif
    108 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    109102    String m_dateFormat;
    110103    String m_monthFormat;
  • trunk/Source/WebCore/platform/text/LocaleNone.cpp

    r133134 r133284  
    4040    virtual bool isRTL() OVERRIDE;
    4141#endif
    42 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    43     virtual const Vector<String>& monthLabels() OVERRIDE;
    44 #endif
    45 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     42#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    4643    virtual String dateFormat() OVERRIDE;
    4744    virtual String monthFormat() OVERRIDE;
    4845    virtual String timeFormat() OVERRIDE;
    4946    virtual String shortTimeFormat() OVERRIDE;
     47    virtual const Vector<String>& monthLabels() OVERRIDE;
    5048    virtual const Vector<String>& shortMonthLabels() OVERRIDE;
    5149    virtual const Vector<String>& standAloneMonthLabels() OVERRIDE;
     
    5553    Vector<String> m_timeAMPMLabels;
    5654    Vector<String> m_shortMonthLabels;
    57 #endif
    58 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    5955    Vector<String> m_monthLabels;
    6056#endif
     
    8177#endif
    8278
    83 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     79#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    8480const Vector<String>& LocaleNone::monthLabels()
    8581{
     
    9187    return m_monthLabels;
    9288}
    93 #endif
    9489
    95 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    9690String LocaleNone::dateFormat()
    9791{
  • trunk/Source/WebCore/platform/text/PlatformLocale.cpp

    r132774 r133284  
    3737namespace WebCore {
    3838
    39 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     39#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    4040
    4141class DateTimeStringBuilder : private DateTimeFormat::TokenHandler {
     
    315315    return m_decimalSymbols[DecimalSeparatorIndex];
    316316}
    317 
     317#endif
     318
     319#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    318320String Locale::dateTimeFormatWithSeconds()
    319321{
     
    341343    return m_dateTimeFormatWithoutSeconds;
    342344}
    343 #endif
    344345
    345346String Locale::formatDateTime(const DateComponents& date, FormatType formatType)
    346347{
    347 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    348348    if (date.type() != DateComponents::Time && date.type() != DateComponents::Date)
    349349        return String();
     350    // FIXME: Supports all types.
     351
    350352    DateTimeStringBuilder builder(*this, date);
    351353    if (date.type() == DateComponents::Time)
     
    354356        builder.build(dateFormat());
    355357    return builder.toString();
    356 #else
    357     UNUSED_PARAM(date);
    358     UNUSED_PARAM(formatType);
    359     return String();
     358}
    360359#endif
    361 }
    362 
    363 }
     360
     361}
  • trunk/Source/WebCore/platform/text/PlatformLocale.h

    r133134 r133284  
    5757    // Returns localized decimal separator, e.g. "." for English, "," for French.
    5858    String localizedDecimalSeparator();
     59#endif
    5960
     61#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    6062    // Returns date format in Unicode TR35 LDML[1] containing day of month,
    6163    // month, and year, e.g. "dd/mm/yyyy"
     
    100102    // Returns localized period field(AM/PM) strings.
    101103    virtual const Vector<String>& timeAMPMLabels() = 0;
    102 #endif
    103104
    104 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    105105    // Returns a vector of string of which size is 12. The first item is a
    106106    // localized string of January, and the last item is a localized string of
     
    123123#endif
    124124
     125#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    125126    enum FormatType { FormatTypeUnspecified, FormatTypeShort, FormatTypeMedium };
    126127
     
    129130    // localized dates the function should return an empty string.
    130131    String formatDateTime(const DateComponents&, FormatType = FormatTypeUnspecified);
     132#endif
    131133
    132134    virtual ~Locale();
     
    140142    };
    141143
    142 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     144#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    143145    String m_dateTimeFormatWithSeconds;
    144146    String m_dateTimeFormatWithoutSeconds;
  • trunk/Source/WebCore/platform/text/mac/LocaleMac.h

    r133134 r133284  
    5757    virtual bool isRTL() OVERRIDE;
    5858#endif
    59 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    60     virtual const Vector<String>& monthLabels() OVERRIDE;
    61 #endif
    6259
    63 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     60#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    6461    virtual String dateFormat() OVERRIDE;
    6562    virtual String monthFormat() OVERRIDE;
    6663    virtual String timeFormat() OVERRIDE;
    6764    virtual String shortTimeFormat() OVERRIDE;
     65    virtual const Vector<String>& monthLabels() OVERRIDE;
    6866    virtual const Vector<String>& shortMonthLabels() OVERRIDE;
    6967    virtual const Vector<String>& standAloneMonthLabels() OVERRIDE;
     
    8280    Vector<String> m_weekDayShortLabels;
    8381#endif
    84 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     82#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    8583    Vector<String> m_monthLabels;
    86 #endif
    87 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    8884    RetainPtr<NSDateFormatter> timeFormatter();
    8985    RetainPtr<NSDateFormatter> shortTimeFormatter();
  • trunk/Source/WebCore/platform/text/mac/LocaleMac.mm

    r133134 r133284  
    115115}
    116116
    117 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     117#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    118118const Vector<String>& LocaleMac::monthLabels()
    119119{
     
    166166#endif
    167167
    168 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     168#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    169169RetainPtr<NSDateFormatter> LocaleMac::timeFormatter()
    170170{
  • trunk/Source/WebCore/platform/text/win/LocaleWin.cpp

    r133134 r133284  
    3333
    3434#include "DateComponents.h"
    35 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3635#include "DateTimeFormat.h"
    37 #endif
    3836#include "Language.h"
    3937#include "LocalizedStrings.h"
     
    355353}
    356354
    357 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     355#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    358356const Vector<String>& LocaleWin::monthLabels()
    359357{
     
    382380#endif
    383381
    384 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     382#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    385383static String convertWindowsDateFormatToLDML(const Vector<DateFormatToken>& tokens)
    386384{
  • trunk/Source/WebCore/platform/text/win/LocaleWin.h

    r133134 r133284  
    5252    virtual bool isRTL() OVERRIDE;
    5353#endif
    54 #if ENABLE(CALENDAR_PICKER) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    55     virtual const Vector<String>& monthLabels() OVERRIDE;
    56 #endif
    57 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
     54#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    5855    virtual String dateFormat() OVERRIDE;
    5956    virtual String monthFormat() OVERRIDE;
    6057    virtual String timeFormat() OVERRIDE;
    6158    virtual String shortTimeFormat() OVERRIDE;
     59    virtual const Vector<String>& monthLabels() OVERRIDE;
    6260    virtual const Vector<String>& shortMonthLabels() OVERRIDE;
    6361    virtual const Vector<String>& standAloneMonthLabels() OVERRIDE;
    6462    virtual const Vector<String>& shortStandAloneMonthLabels() OVERRIDE;
    6563    virtual const Vector<String>& timeAMPMLabels() OVERRIDE;
    66 #endif
    6764
    68 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    6965    static String dateFormat(const String&);
    7066#endif
     
    8581    LCID m_lcid;
    8682    Vector<DateFormatToken> m_shortDateTokens;
     83#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    8784    Vector<String> m_shortMonthLabels;
    8885    Vector<String> m_monthLabels;
    89 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    9086    String m_dateFormat;
    9187    String m_monthFormat;
  • trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp

    r123296 r133284  
    2222#include "RenderDetailsMarker.h"
    2323
    24 #if ENABLE(DETAILS_ELEMENT) || ENABLE(CALENDAR_PICKER)
     24#if ENABLE(DETAILS_ELEMENT) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    2525#include "Element.h"
    2626#include "GraphicsContext.h"
  • trunk/Source/WebCore/rendering/RenderDetailsMarker.h

    r123296 r133284  
    2222#define RenderDetailsMarker_h
    2323
    24 #if ENABLE(DETAILS_ELEMENT) || ENABLE(CALENDAR_PICKER)
     24#if ENABLE(DETAILS_ELEMENT) || ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    2525#include "RenderBlock.h"
    2626
  • trunk/Source/WebCore/rendering/RenderTheme.h

    r132112 r133284  
    139139    virtual bool supportsDataListUI(const AtomicString&) const { return false; }
    140140
    141 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) && ENABLE(CALENDAR_PICKER)
     141#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    142142    // A method asking if the platform is able to show a calendar picker for a given input type.
    143143    virtual bool supportsCalendarPicker(const AtomicString&) const { return false; }
  • trunk/Source/WebCore/rendering/RenderThemeChromiumCommon.cpp

    r130369 r133284  
    4747}
    4848
    49 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) && ENABLE(CALENDAR_PICKER)
     49#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    5050bool RenderThemeChromiumCommon::supportsCalendarPicker(const AtomicString& type)
    5151{
  • trunk/Source/WebCore/rendering/RenderThemeChromiumCommon.h

    r130369 r133284  
    3636public:
    3737    static bool supportsDataListUI(const AtomicString& type);
    38 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) && ENABLE(CALENDAR_PICKER)
     38#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3939    static bool supportsCalendarPicker(const AtomicString& type);
    4040#endif
  • trunk/Source/WebCore/rendering/RenderThemeChromiumMac.h

    r130369 r133284  
    7878    virtual CString extraCalendarPickerStyleSheet() OVERRIDE;
    7979#endif
    80 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) && ENABLE(CALENDAR_PICKER)
     80#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    8181    virtual bool supportsCalendarPicker(const AtomicString& type) const OVERRIDE;
    8282#endif
  • trunk/Source/WebCore/rendering/RenderThemeChromiumSkia.h

    r130369 r133284  
    182182    virtual LayoutUnit sliderTickSnappingThreshold() const OVERRIDE;
    183183#endif
    184 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI) && ENABLE(CALENDAR_PICKER)
     184#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    185185    virtual bool supportsCalendarPicker(const AtomicString& type) const OVERRIDE;
    186186#endif
  • trunk/Source/WebKit/chromium/ChangeLog

    r133195 r133284  
     12012-11-01  Kent Tamura  <tkent@chromium.org>
     2
     3        Introduce ENABLE_DATE_AND_TIME_INPUT_TYPES, and clarify usage of other related flags
     4        https://bugs.webkit.org/show_bug.cgi?id=101007
     5
     6        Reviewed by Kentaro Hara.
     7
     8        * src/ChromeClientImpl.cpp:
     9        (WebKit::ChromeClientImpl::openDateTimeChooser):
     10        Follow the ChromeClient::openDateTimeChooser flag change.
     11        Also, add an empty implemenatation for Android.
     12        * src/ChromeClientImpl.h:
     13        Follow the ChromeClient::openDateTimeChooser flag change.
     14        * src/DateTimeChooserImpl.cpp: Wrapped with
     15        ENABLE(INPUT_MULTIPLE_FIELDS_UI). This class is not used in Android.
     16        * src/DateTimeChooserImpl.h: Ditto.
     17        * src/LocalizedStrings.cpp: Follow the LocalizedString.h change.
     18
    1192012-11-01  Alec Flett  <alecflett@chromium.org>
    220
  • trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp

    r132895 r133284  
    4343#include "Cursor.h"
    4444#include "DatabaseTracker.h"
     45#include "DateTimeChooser.h"
    4546#include "DateTimeChooserImpl.h"
    4647#include "Document.h"
     
    693694#endif
    694695
    695 #if ENABLE(CALENDAR_PICKER)
     696#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    696697PassRefPtr<DateTimeChooser> ChromeClientImpl::openDateTimeChooser(DateTimeChooserClient* pickerClient, const DateTimeChooserParameters& parameters)
    697698{
     699#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    698700    return DateTimeChooserImpl::create(this, pickerClient, parameters);
     701#else
     702    notImplemented();
     703    return PassRefPtr<DateTimeChooser>();
     704#endif
    699705}
    700706#endif
  • trunk/Source/WebKit/chromium/src/ChromeClientImpl.h

    r132895 r133284  
    148148    PassOwnPtr<WebColorChooser> createWebColorChooser(WebColorChooserClient*, const WebColor&);
    149149#endif
    150 #if ENABLE(CALENDAR_PICKER)
     150#if ENABLE(DATE_AND_TIME_INPUT_TYPES)
    151151    virtual PassRefPtr<WebCore::DateTimeChooser> openDateTimeChooser(WebCore::DateTimeChooserClient*, const WebCore::DateTimeChooserParameters&) OVERRIDE;
    152152#endif
  • trunk/Source/WebKit/chromium/src/DateTimeChooserImpl.cpp

    r133132 r133284  
    3030
    3131#include "config.h"
     32#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3233#include "DateTimeChooserImpl.h"
    33 
    34 #if ENABLE(CALENDAR_PICKER)
    3534
    3635#include "CalendarPicker.h"
     
    4847#include <public/Platform.h>
    4948#include <public/WebLocalizedString.h>
     49
     50#if !ENABLE(CALENDAR_PICKER)
     51#error "ENABLE_INPUT_MULTIPLE_FIELDS_UI requires ENABLE_CALENDAR_PICKER in Chromium."
     52#endif
    5053
    5154using namespace WebCore;
     
    171174} // namespace WebKit
    172175
    173 #endif // ENABLE(CALENDAR_PICKER)
     176#endif // ENABLE(INPUT_MULTIPLE_FIELDS_UI)
  • trunk/Source/WebKit/chromium/src/DateTimeChooserImpl.h

    r132895 r133284  
    3232#define DateTimeChooserImpl_h
    3333
     34#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    3435#include "DateTimeChooser.h"
    3536#include "PagePopupClient.h"
    36 
    37 #if ENABLE(CALENDAR_PICKER)
    3837
    3938namespace WebCore {
     
    7271}
    7372
    74 #endif // ENABLE(CALENDAR_PICKER)
     73#endif // ENABLE(INPUT_MULTIPLE_FIELDS_UI)
    7574
    7675#endif // DateTimeChooserImpl_h
  • trunk/Source/WebKit/chromium/src/LocalizedStrings.cpp

    r132896 r133284  
    269269    return query(WebLocalizedString::PlaceholderForYearField);
    270270}
    271 
     271#endif
     272
     273#if ENABLE(INPUT_TYPE_WEEK)
    272274String weekFormatInLDML()
    273275{
Note: See TracChangeset for help on using the changeset viewer.