| Index: Source/core/html/HTMLTextFormControlElement.cpp
|
| diff --git a/Source/core/html/HTMLTextFormControlElement.cpp b/Source/core/html/HTMLTextFormControlElement.cpp
|
| index 03a8854b8cd7236ac39ebfb69cce901d3445bfda..1520edd6dc347a7c8b1fdb00f3b657c568e368b5 100644
|
| --- a/Source/core/html/HTMLTextFormControlElement.cpp
|
| +++ b/Source/core/html/HTMLTextFormControlElement.cpp
|
| @@ -548,6 +548,33 @@ PassRefPtrWillBeRawPtr<Range> HTMLTextFormControlElement::selection() const
|
| return Range::create(document(), startNode, start, endNode, end);
|
| }
|
|
|
| +const AtomicString& HTMLTextFormControlElement::autocapitalize() const
|
| +{
|
| + DEFINE_STATIC_LOCAL(const AtomicString, off, ("off", AtomicString::ConstructFromLiteral));
|
| + DEFINE_STATIC_LOCAL(const AtomicString, none, ("none", AtomicString::ConstructFromLiteral));
|
| + DEFINE_STATIC_LOCAL(const AtomicString, characters, ("characters", AtomicString::ConstructFromLiteral));
|
| + DEFINE_STATIC_LOCAL(const AtomicString, words, ("words", AtomicString::ConstructFromLiteral));
|
| + DEFINE_STATIC_LOCAL(const AtomicString, sentences, ("sentences", AtomicString::ConstructFromLiteral));
|
| +
|
| + const AtomicString& value = fastGetAttribute(autocapitalizeAttr);
|
| + if (equalIgnoringCase(value, none) || equalIgnoringCase(value, off))
|
| + return none;
|
| + if (equalIgnoringCase(value, characters))
|
| + return characters;
|
| + if (equalIgnoringCase(value, words))
|
| + return words;
|
| + if (equalIgnoringCase(value, sentences))
|
| + return sentences;
|
| +
|
| + // Invalid or missing value.
|
| + return defaultAutocapitalize();
|
| +}
|
| +
|
| +void HTMLTextFormControlElement::setAutocapitalize(const AtomicString& autocapitalize)
|
| +{
|
| + setAttribute(autocapitalizeAttr, autocapitalize);
|
| +}
|
| +
|
| void HTMLTextFormControlElement::restoreCachedSelection()
|
| {
|
| setSelectionRange(m_cachedSelectionStart, m_cachedSelectionEnd, m_cachedSelectionDirection, NotDispatchSelectEvent);
|
|
|