Changeset 134239 in webkit


Ignore:
Timestamp:
Nov 12, 2012 7:38:31 AM (11 years ago)
Author:
tkent@chromium.org
Message:

Refactoring: set read-only values on layout in DateTimeEditElement
https://bugs.webkit.org/show_bug.cgi?id=101916

Reviewed by Kentaro Hara.

We have always updated read-only values when we set an empty value or
DateTimeFieldsState. It has wasted CPU time because such read-only
values are never updated after layout() essentially. So, we set
read-only values in DateTimeEditBuilder used by layout(), and remove
dateForReadOnlyField arguments of setEmptyValue and
setValueAsDateTimeFieldsState.

No new tests. This should not make behavior changes.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::restoreFormControlState):
We removed dateForReadOnlyField argument because read-only values are
already set in DateTimeFieldElement::layout().

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitField):
Set a value to a read-only minute/second/millisecond field while
building UI elements.
Also, changed variable types for millisecond and second fields to
RefPtr<DateTimeNumericFieldElement> because we'd like to call
setValueAsDate, which is private in DateTimeMillisecondFieldElement and
DateTimeSecondFieldElement
(WebCore::DateTimeEditElement::setValueAsDateTimeFieldsState):
We removed dateForReadOnlyField argument because read-only values are
already set in DateTimeFieldElement::layout().
(WebCore::DateTimeEditElement::setEmptyValue): Ditto.

  • html/shadow/DateTimeEditElement.h:

(DateTimeEditElement):
Removed dateForReadOnlyField argument for setValueAsDateTimeFieldsState.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
We removed dateForReadOnlyField argument because read-only values are
already set in DateTimeFieldElement::layout().

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Ditto.

  • html/shadow/DateTimeFieldElements.cpp: Ditto.
  • html/shadow/DateTimeFieldElements.h: Ditto.
  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::setEmptyValue):
It should do nothing if it is read-only because a read-only value was
already set just after construction.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):
Removed dateForReadOnlyField argument of setEmptyValue.

  • html/shadow/DateTimeSymbolicFieldElement.cpp:

(WebCore::DateTimeSymbolicFieldElement::setEmptyValue): Ditto.

  • html/shadow/DateTimeSymbolicFieldElement.h:

(DateTimeSymbolicFieldElement): Ditto.

Location:
trunk/Source/WebCore
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r134227 r134239  
     12012-11-12  Kent Tamura  <tkent@chromium.org>
     2
     3        Refactoring: set read-only values on layout in DateTimeEditElement
     4        https://bugs.webkit.org/show_bug.cgi?id=101916
     5
     6        Reviewed by Kentaro Hara.
     7
     8        We have always updated read-only values when we set an empty value or
     9        DateTimeFieldsState. It has wasted CPU time because such read-only
     10        values are never updated after layout() essentially. So, we set
     11        read-only values in DateTimeEditBuilder used by layout(), and remove
     12        dateForReadOnlyField arguments of setEmptyValue and
     13        setValueAsDateTimeFieldsState.
     14
     15        No new tests. This should not make behavior changes.
     16
     17        * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
     18        (WebCore::BaseMultipleFieldsDateAndTimeInputType::restoreFormControlState):
     19        We removed dateForReadOnlyField argument because read-only values are
     20        already set in DateTimeFieldElement::layout().
     21        * html/shadow/DateTimeEditElement.cpp:
     22        (WebCore::DateTimeEditBuilder::visitField):
     23        Set a value to a read-only minute/second/millisecond field while
     24        building UI elements.
     25        Also, changed variable types for millisecond and second fields to
     26        RefPtr<DateTimeNumericFieldElement> because we'd like to call
     27        setValueAsDate, which is private in DateTimeMillisecondFieldElement and
     28        DateTimeSecondFieldElement
     29        (WebCore::DateTimeEditElement::setValueAsDateTimeFieldsState):
     30        We removed dateForReadOnlyField argument because read-only values are
     31        already set in DateTimeFieldElement::layout().
     32        (WebCore::DateTimeEditElement::setEmptyValue): Ditto.
     33        * html/shadow/DateTimeEditElement.h:
     34        (DateTimeEditElement):
     35        Removed dateForReadOnlyField argument for setValueAsDateTimeFieldsState.
     36
     37        * html/shadow/DateTimeFieldElement.cpp:
     38        (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
     39        We removed dateForReadOnlyField argument because read-only values are
     40        already set in DateTimeFieldElement::layout().
     41        * html/shadow/DateTimeFieldElement.h:
     42        (DateTimeFieldElement): Ditto.
     43
     44        * html/shadow/DateTimeFieldElements.cpp: Ditto.
     45        * html/shadow/DateTimeFieldElements.h: Ditto.
     46        * html/shadow/DateTimeNumericFieldElement.cpp:
     47        (WebCore::DateTimeNumericFieldElement::setEmptyValue):
     48        It should do nothing if it is read-only because a read-only value was
     49        already set just after construction.
     50        * html/shadow/DateTimeNumericFieldElement.h:
     51        (DateTimeNumericFieldElement):
     52        Removed dateForReadOnlyField argument of setEmptyValue.
     53        * html/shadow/DateTimeSymbolicFieldElement.cpp:
     54        (WebCore::DateTimeSymbolicFieldElement::setEmptyValue): Ditto.
     55        * html/shadow/DateTimeSymbolicFieldElement.h:
     56        (DateTimeSymbolicFieldElement): Ditto.
     57
    1582012-11-12  Tiancheng Jiang  <tijiang@rim.com>
    259
  • trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.cpp

    r134206 r134239  
    300300    if (!m_dateTimeEditElement)
    301301        return;
    302     DateComponents date;
    303     setMillisecondToDateComponents(createStepRange(AnyIsDefaultStep).minimum().toDouble(), &date);
    304302    DateTimeFieldsState dateTimeFieldsState = DateTimeFieldsState::restoreFormControlState(state);
    305     m_dateTimeEditElement->setValueAsDateTimeFieldsState(dateTimeFieldsState, date);
     303    m_dateTimeEditElement->setValueAsDateTimeFieldsState(dateTimeFieldsState);
    306304    element()->setValueInternal(sanitizeValue(m_dateTimeEditElement->value()), DispatchNoEvent);
    307305}
  • trunk/Source/WebCore/html/shadow/DateTimeEditElement.cpp

    r133848 r134239  
    122122        RefPtr<DateTimeNumericFieldElement> field = DateTimeMinuteFieldElement::create(document, m_editElement);
    123123        m_editElement.addField(field);
    124         if (shouldMinuteFieldReadOnly())
     124        if (shouldMinuteFieldReadOnly()) {
     125            field->setValueAsDate(m_dateValue);
    125126            field->setReadOnly();
     127        }
    126128        return;
    127129    }
     
    162164
    163165    case DateTimeFormat::FieldTypeSecond: {
    164         RefPtr<DateTimeSecondFieldElement> field = DateTimeSecondFieldElement::create(document, m_editElement);
     166        RefPtr<DateTimeNumericFieldElement> field = DateTimeSecondFieldElement::create(document, m_editElement);
    165167        m_editElement.addField(field);
    166         if (shouldSecondFieldReadOnly())
     168        if (shouldSecondFieldReadOnly()) {
     169            field->setValueAsDate(m_dateValue);
    167170            field->setReadOnly();
     171        }
    168172
    169173        if (needMillisecondField()) {
     
    175179
    176180    case DateTimeFormat::FieldTypeFractionalSecond: {
    177         RefPtr<DateTimeMillisecondFieldElement> field = DateTimeMillisecondFieldElement::create(document, m_editElement);
     181        RefPtr<DateTimeNumericFieldElement> field = DateTimeMillisecondFieldElement::create(document, m_editElement);
    178182        m_editElement.addField(field);
    179         if (shouldMillisecondFieldReadOnly())
     183        if (shouldMillisecondFieldReadOnly()) {
     184            field->setValueAsDate(m_dateValue);
    180185            field->setReadOnly();
     186        }
    181187        return;
    182188    }
     
    463469}
    464470
    465 void DateTimeEditElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     471void DateTimeEditElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    466472{
    467473    for (size_t fieldIndex = 0; fieldIndex < m_fields.size(); ++fieldIndex)
    468         m_fields[fieldIndex]->setValueAsDateTimeFieldsState(dateTimeFieldsState, dateForReadOnlyField);
     474        m_fields[fieldIndex]->setValueAsDateTimeFieldsState(dateTimeFieldsState);
    469475}
    470476
     
    473479    layout(layoutParameters, dateForReadOnlyField);
    474480    for (size_t fieldIndex = 0; fieldIndex < m_fields.size(); ++fieldIndex)
    475         m_fields[fieldIndex]->setEmptyValue(dateForReadOnlyField, DateTimeFieldElement::DispatchNoEvent);
     481        m_fields[fieldIndex]->setEmptyValue(DateTimeFieldElement::DispatchNoEvent);
    476482}
    477483
  • trunk/Source/WebCore/html/shadow/DateTimeEditElement.h

    r132774 r134239  
    9898    void setEmptyValue(const LayoutParameters&, const DateComponents& dateForReadOnlyField);
    9999    void setValueAsDate(const LayoutParameters&, const DateComponents&);
    100     void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField);
     100    void setValueAsDateTimeFieldsState(const DateTimeFieldsState&);
    101101    void stepDown();
    102102    void stepUp();
  • trunk/Source/WebCore/html/shadow/DateTimeFieldElement.cpp

    r133848 r134239  
    112112    if (keyIdentifier == "U+0008" || keyIdentifier == "U+007F") {
    113113        keyboardEvent->setDefaultHandled();
    114         setEmptyValue(DateComponents(), DispatchEvent);
     114        setEmptyValue(DispatchEvent);
    115115        return;
    116116    }
  • trunk/Source/WebCore/html/shadow/DateTimeFieldElement.h

    r133848 r134239  
    6666    void removeEventHandler() { m_fieldOwner = 0; }
    6767    void setReadOnly();
    68     virtual void setEmptyValue(const DateComponents& dateForReadOnlyField, EventBehavior = DispatchNoEvent) = 0;
     68    virtual void setEmptyValue(EventBehavior = DispatchNoEvent) = 0;
    6969    virtual void setValueAsDate(const DateComponents&) = 0;
    70     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) = 0;
     70    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) = 0;
    7171    virtual void setValueAsInteger(int, EventBehavior = DispatchNoEvent) = 0;
    7272    virtual void stepDown() = 0;
  • trunk/Source/WebCore/html/shadow/DateTimeFieldElements.cpp

    r133976 r134239  
    6262}
    6363
    64 void DateTimeAMPMFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     64void DateTimeAMPMFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    6565{
    6666    if (dateTimeFieldsState.hasAMPM())
    6767        setValueAsInteger(dateTimeFieldsState.ampm());
    6868    else
    69         setEmptyValue(dateForReadOnlyField);
     69        setEmptyValue();
    7070}
    7171
     
    9595}
    9696
    97 void DateTimeDayFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     97void DateTimeDayFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    9898{
    9999    if (!dateTimeFieldsState.hasDayOfMonth()) {
    100         setEmptyValue(dateForReadOnlyField);
     100        setEmptyValue();
    101101        return;
    102102    }
     
    108108    }
    109109
    110     setEmptyValue(dateForReadOnlyField);
     110    setEmptyValue();
    111111}
    112112
     
    167167}
    168168
    169 void DateTimeHourFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     169void DateTimeHourFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    170170{
    171171    if (!dateTimeFieldsState.hasHour()) {
    172         setEmptyValue(dateForReadOnlyField);
     172        setEmptyValue();
    173173        return;
    174174    }
     
    177177
    178178    if (hour12 < 1 || hour12 > 12) {
    179         setEmptyValue(dateForReadOnlyField);
     179        setEmptyValue();
    180180        return;
    181181    }
     
    241241}
    242242
    243 void DateTimeMillisecondFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     243void DateTimeMillisecondFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    244244{
    245245    if (!dateTimeFieldsState.hasMillisecond()) {
    246         setEmptyValue(dateForReadOnlyField);
     246        setEmptyValue();
    247247        return;
    248248    }
     
    250250    const unsigned value = dateTimeFieldsState.millisecond();
    251251    if (value > static_cast<unsigned>(maximum())) {
    252         setEmptyValue(dateForReadOnlyField);
     252        setEmptyValue();
    253253        return;
    254254    }
     
    282282}
    283283
    284 void DateTimeMinuteFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     284void DateTimeMinuteFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    285285{
    286286    if (!dateTimeFieldsState.hasMinute()) {
    287         setEmptyValue(dateForReadOnlyField);
     287        setEmptyValue();
    288288        return;
    289289    }
     
    291291    const unsigned value = dateTimeFieldsState.minute();
    292292    if (value > static_cast<unsigned>(maximum())) {
    293         setEmptyValue(dateForReadOnlyField);
     293        setEmptyValue();
    294294        return;
    295295    }
     
    323323}
    324324
    325 void DateTimeMonthFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     325void DateTimeMonthFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    326326{
    327327    if (!dateTimeFieldsState.hasMonth()) {
    328         setEmptyValue(dateForReadOnlyField);
     328        setEmptyValue();
    329329        return;
    330330    }
     
    336336    }
    337337
    338     setEmptyValue(dateForReadOnlyField);
     338    setEmptyValue();
    339339}
    340340
     
    364364}
    365365
    366 void DateTimeSecondFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     366void DateTimeSecondFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    367367{
    368368    if (!dateTimeFieldsState.hasSecond()) {
    369         setEmptyValue(dateForReadOnlyField);
     369        setEmptyValue();
    370370        return;
    371371    }
     
    373373    const unsigned value = dateTimeFieldsState.second();
    374374    if (value > static_cast<unsigned>(maximum())) {
    375         setEmptyValue(dateForReadOnlyField);
     375        setEmptyValue();
    376376        return;
    377377    }
     
    408408}
    409409
    410 void DateTimeSymbolicMonthFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     410void DateTimeSymbolicMonthFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    411411{
    412412    if (!dateTimeFieldsState.hasMonth()) {
    413         setEmptyValue(dateForReadOnlyField);
     413        setEmptyValue();
    414414        return;
    415415    }
     
    417417    const unsigned value = dateTimeFieldsState.month() - 1;
    418418    if (value >= symbolsSize()) {
    419         setEmptyValue(dateForReadOnlyField);
     419        setEmptyValue();
    420420        return;
    421421    }
     
    449449}
    450450
    451 void DateTimeWeekFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     451void DateTimeWeekFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    452452{
    453453    if (!dateTimeFieldsState.hasWeekOfYear()) {
    454         setEmptyValue(dateForReadOnlyField);
     454        setEmptyValue();
    455455        return;
    456456    }
     
    462462    }
    463463
    464     setEmptyValue(dateForReadOnlyField);
     464    setEmptyValue();
    465465}
    466466
     
    522522}
    523523
    524 void DateTimeYearFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState, const DateComponents& dateForReadOnlyField)
     524void DateTimeYearFieldElement::setValueAsDateTimeFieldsState(const DateTimeFieldsState& dateTimeFieldsState)
    525525{
    526526    if (!dateTimeFieldsState.hasYear()) {
    527         setEmptyValue(dateForReadOnlyField);
     527        setEmptyValue();
    528528        return;
    529529    }
     
    535535    }
    536536
    537     setEmptyValue(dateForReadOnlyField);
     537    setEmptyValue();
    538538}
    539539
  • trunk/Source/WebCore/html/shadow/DateTimeFieldElements.h

    r131898 r134239  
    4545    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    4646    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    47     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     47    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    4848};
    4949
     
    6060    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    6161    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    62     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     62    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    6363};
    6464
     
    8181    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    8282    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    83     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     83    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    8484    virtual void setValueAsInteger(int, EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
    8585    virtual int valueAsInteger() const OVERRIDE FINAL;
     
    100100    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    101101    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    102     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     102    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    103103};
    104104
     
    115115    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    116116    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    117     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     117    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    118118};
    119119
     
    130130    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    131131    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    132     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     132    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    133133};
    134134
     
    145145    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    146146    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    147     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     147    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    148148};
    149149
     
    160160    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    161161    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    162     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     162    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    163163};
    164164
     
    175175    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    176176    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    177     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     177    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    178178};
    179179
     
    206206    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) OVERRIDE FINAL;
    207207    virtual void setValueAsDate(const DateComponents&) OVERRIDE FINAL;
    208     virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&, const DateComponents& dateForReadOnlyField) OVERRIDE FINAL;
     208    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) OVERRIDE FINAL;
    209209
    210210    // DateTimeNumericFieldElement functions.
  • trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.cpp

    r132774 r134239  
    161161}
    162162
    163 void DateTimeNumericFieldElement::setEmptyValue(const DateComponents& dateForReadOnlyField, EventBehavior eventBehavior)
    164 {
    165     m_lastDigitCharTime = 0;
    166 
    167     if (isReadOnly()) {
    168         setValueAsDate(dateForReadOnlyField);
    169         return;
    170     }
     163void DateTimeNumericFieldElement::setEmptyValue(EventBehavior eventBehavior)
     164{
     165    m_lastDigitCharTime = 0;
     166
     167    if (isReadOnly())
     168        return;
    171169
    172170    m_hasValue = false;
  • trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.h

    r132774 r134239  
    6363    virtual bool hasValue() const OVERRIDE FINAL;
    6464    virtual int maximum() const OVERRIDE FINAL;
    65     virtual void setEmptyValue(const DateComponents& dateForReadOnlyField, EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
     65    virtual void setEmptyValue(EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
    6666    virtual void setValueAsInteger(int, EventBehavior = DispatchNoEvent) OVERRIDE;
    6767    virtual int valueAsInteger() const OVERRIDE;
  • trunk/Source/WebCore/html/shadow/DateTimeSymbolicFieldElement.cpp

    r131710 r134239  
    106106}
    107107
    108 void DateTimeSymbolicFieldElement::setEmptyValue(const DateComponents&, EventBehavior eventBehavior)
     108void DateTimeSymbolicFieldElement::setEmptyValue(EventBehavior eventBehavior)
    109109{
    110110    m_selectedIndex = invalidIndex;
  • trunk/Source/WebCore/html/shadow/DateTimeSymbolicFieldElement.h

    r131898 r134239  
    4141    size_t symbolsSize() const { return m_symbols.size(); }
    4242    virtual bool hasValue() const OVERRIDE FINAL;
    43     virtual void setEmptyValue(const DateComponents& dateForReadOnlyField, EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
     43    virtual void setEmptyValue(EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
    4444    virtual void setValueAsInteger(int, EventBehavior = DispatchNoEvent) OVERRIDE FINAL;
    4545    virtual int valueAsInteger() const OVERRIDE FINAL;
Note: See TracChangeset for help on using the changeset viewer.