[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
tkent at chromium.org
tkent at chromium.org
Wed Dec 22 13:54:19 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 970a1cb1d331adad4cb629f6794e735d0529e009
Author: tkent at chromium.org <tkent at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Sep 29 06:18:18 2010 +0000
Refactor HTMLInputElement: Introducing InputType class and classes
for each input element types.
https://bugs.webkit.org/show_bug.cgi?id=45872
Reviewed by Darin Adler.
No new tests because this doesn't change any behavior.
* Android.mk: Add new files.
* CMakeLists.txt: ditto.
* GNUmakefile.am: ditto.
* WebCore.gypi: ditto.
* WebCore.pro: ditto.
* WebCore.vcproj/WebCore.vcproj: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.
* html/BaseTextInputType.cpp: Added.
(WebCore::BaseTextInputType::isTextType):
(WebCore::BaseTextInputType::patternMismatch):
* html/BaseTextInputType.h: Added.
(WebCore::BaseTextInputType::BaseTextInputType):
* html/ButtonInputType.cpp: Added.
(WebCore::ButtonInputType::create):
(WebCore::ButtonInputType::formControlType):
* html/ButtonInputType.h: Added.
(WebCore::ButtonInputType::ButtonInputType):
* html/CheckboxInputType.cpp: Added.
(WebCore::CheckboxInputType::create):
(WebCore::CheckboxInputType::formControlType):
* html/CheckboxInputType.h: Added.
(WebCore::CheckboxInputType::CheckboxInputType):
* html/ColorInputType.cpp: Added.
(WebCore::ColorInputType::create):
(WebCore::ColorInputType::formControlType):
* html/ColorInputType.h: Added.
(WebCore::ColorInputType::ColorInputType):
* html/DateInputType.cpp: Added.
(WebCore::DateInputType::create):
(WebCore::DateInputType::formControlType):
* html/DateInputType.h: Added.
(WebCore::DateInputType::DateInputType):
* html/DateTimeInputType.cpp: Added.
(WebCore::DateTimeInputType::create):
(WebCore::DateTimeInputType::formControlType):
* html/DateTimeInputType.h: Added.
(WebCore::DateTimeInputType::DateTimeInputType):
* html/DateTimeLocalInputType.cpp: Added.
(WebCore::DateTimeLocalInputType::create):
(WebCore::DateTimeLocalInputType::formControlType):
* html/DateTimeLocalInputType.h: Added.
(WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
* html/EmailInputType.cpp: Added.
(WebCore::EmailInputType::create):
(WebCore::EmailInputType::formControlType):
* html/EmailInputType.h: Added.
(WebCore::EmailInputType::EmailInputType):
* html/FileInputType.cpp: Added.
(WebCore::FileInputType::create):
(WebCore::FileInputType::formControlType):
* html/FileInputType.h: Added.
(WebCore::FileInputType::FileInputType):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType.
(WebCore::HTMLInputElement::patternMismatch): Delegate to InputType.
(WebCore::HTMLInputElement::updateType): Update m_inputType with new type.
(WebCore::HTMLInputElement::formControlType): Delegate to InputType.
(WebCore::HTMLInputElement::isTextField): ditto.
(WebCore::HTMLInputElement::isTextType): ditto.
* html/HTMLInputElement.h:
* html/HiddenInputType.cpp: Added.
(WebCore::HiddenInputType::create):
(WebCore::HiddenInputType::formControlType):
* html/HiddenInputType.h: Added.
(WebCore::HiddenInputType::HiddenInputType):
* html/ImageInputType.cpp: Added.
(WebCore::ImageInputType::create):
(WebCore::ImageInputType::formControlType):
* html/ImageInputType.h: Added.
(WebCore::ImageInputType::ImageInputType):
* html/InputType.cpp: Added.
(WebCore::createInputTypeFactoryMap):
(WebCore::InputType::create):
(WebCore::InputType::createText):
(WebCore::InputType::~InputType):
(WebCore::InputType::isTextField):
(WebCore::InputType::isTextType):
(WebCore::InputType::patternMismatch):
(WebCore::InputTypeNames::button):
(WebCore::InputTypeNames::checkbox):
(WebCore::InputTypeNames::color):
(WebCore::InputTypeNames::date):
(WebCore::InputTypeNames::datetime):
(WebCore::InputTypeNames::datetimelocal):
(WebCore::InputTypeNames::email):
(WebCore::InputTypeNames::file):
(WebCore::InputTypeNames::hidden):
(WebCore::InputTypeNames::image):
(WebCore::InputTypeNames::isindex):
(WebCore::InputTypeNames::month):
(WebCore::InputTypeNames::number):
(WebCore::InputTypeNames::password):
(WebCore::InputTypeNames::radio):
(WebCore::InputTypeNames::range):
(WebCore::InputTypeNames::reset):
(WebCore::InputTypeNames::search):
(WebCore::InputTypeNames::submit):
(WebCore::InputTypeNames::telephone):
(WebCore::InputTypeNames::text):
(WebCore::InputTypeNames::time):
(WebCore::InputTypeNames::url):
(WebCore::InputTypeNames::week):
* html/InputType.h: Added.
(WebCore::InputType::InputType):
(WebCore::InputType::element):
* html/IsIndexInputType.cpp: Added.
(WebCore::IsIndexInputType::create):
(WebCore::IsIndexInputType::formControlType):
* html/IsIndexInputType.h: Added.
(WebCore::IsIndexInputType::IsIndexInputType):
* html/MonthInputType.cpp: Added.
(WebCore::MonthInputType::create):
(WebCore::MonthInputType::formControlType):
* html/MonthInputType.h: Added.
(WebCore::MonthInputType::MonthInputType):
* html/NumberInputType.cpp: Added.
(WebCore::NumberInputType::create):
(WebCore::NumberInputType::formControlType):
* html/NumberInputType.h: Added.
(WebCore::NumberInputType::NumberInputType):
* html/PasswordInputType.cpp: Added.
(WebCore::PasswordInputType::create):
(WebCore::PasswordInputType::formControlType):
* html/PasswordInputType.h: Added.
(WebCore::PasswordInputType::PasswordInputType):
* html/RadioInputType.cpp: Added.
(WebCore::RadioInputType::create):
(WebCore::RadioInputType::formControlType):
* html/RadioInputType.h: Added.
(WebCore::RadioInputType::RadioInputType):
* html/RangeInputType.cpp: Added.
(WebCore::RangeInputType::create):
(WebCore::RangeInputType::formControlType):
* html/RangeInputType.h: Added.
(WebCore::RangeInputType::RangeInputType):
* html/ResetInputType.cpp: Added.
(WebCore::ResetInputType::create):
(WebCore::ResetInputType::formControlType):
* html/ResetInputType.h: Added.
(WebCore::ResetInputType::ResetInputType):
* html/SearchInputType.cpp: Added.
(WebCore::SearchInputType::create):
(WebCore::SearchInputType::formControlType):
* html/SearchInputType.h: Added.
(WebCore::SearchInputType::SearchInputType):
* html/SubmitInputType.cpp: Added.
(WebCore::SubmitInputType::create):
(WebCore::SubmitInputType::formControlType):
* html/SubmitInputType.h: Added.
(WebCore::SubmitInputType::SubmitInputType):
* html/TelephoneInputType.cpp: Added.
(WebCore::TelephoneInputType::create):
(WebCore::TelephoneInputType::formControlType):
* html/TelephoneInputType.h: Added.
(WebCore::TelephoneInputType::TelephoneInputType):
* html/TextFieldInputType.cpp: Added.
(WebCore::TextFieldInputType::isTextField):
* html/TextFieldInputType.h: Added.
(WebCore::TextFieldInputType::TextFieldInputType):
* html/TextInputType.cpp: Added.
(WebCore::TextInputType::create):
(WebCore::TextInputType::formControlType):
* html/TextInputType.h: Added.
(WebCore::TextInputType::TextInputType):
* html/TimeInputType.cpp: Added.
(WebCore::TimeInputType::create):
(WebCore::TimeInputType::formControlType):
* html/TimeInputType.h: Added.
(WebCore::TimeInputType::TimeInputType):
* html/URLInputType.cpp: Added.
(WebCore::URLInputType::create):
(WebCore::URLInputType::formControlType):
* html/URLInputType.h: Added.
(WebCore::URLInputType::URLInputType):
* html/WeekInputType.cpp: Added.
(WebCore::WeekInputType::create):
(WebCore::WeekInputType::formControlType):
* html/WeekInputType.h: Added.
(WebCore::WeekInputType::WeekInputType):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/Android.mk b/WebCore/Android.mk
index cb311e9..7047e7e 100644
--- a/WebCore/Android.mk
+++ b/WebCore/Android.mk
@@ -261,9 +261,18 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
history/android/HistoryItemAndroid.cpp \
\
html/AsyncImageResizer.cpp \
+ html/BaseTextInputType.cpp \
+ html/ButtonInputType.cpp \
+ html/CheckboxInputType.cpp \
html/CollectionCache.cpp \
html/parser/CSSPreloadScanner.cpp \
+ html/ColorInputType.cpp \
html/DOMFormData.cpp \
+ html/DateInputType.cpp \
+ html/DateTimeInputType.cpp \
+ html/DateTimeLocalInputType.cpp \
+ html/EmailInputType.cpp \
+ html/FileInputType.cpp \
html/FormDataList.cpp \
html/HTMLAllCollection.cpp \
html/HTMLCollection.cpp \
@@ -277,14 +286,32 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \
html/HTMLParserErrorCodes.cpp \
html/HTMLTableRowsCollection.cpp \
html/HTMLViewSourceDocument.cpp \
+ html/HiddenInputType.cpp \
html/ImageData.cpp \
html/ImageDocument.cpp \
- html/MediaDocument.cpp \
+ html/ImageInputType.cpp \
html/ImageResizerThread.cpp \
+ html/InputType.cpp \
+ html/IsIndexInputType.cpp \
+ html/MediaDocument.cpp \
+ html/MonthInputType.cpp \
+ html/NumberInputType.cpp \
+ html/PasswordInputType.cpp \
html/PluginDocument.cpp \
+ html/RadioInputType.cpp \
+ html/RangeInputType.cpp \
+ html/ResetInputType.cpp \
+ html/SearchInputType.cpp \
+ html/SubmitInputType.cpp \
+ html/TelephoneInputType.cpp \
html/TextDocument.cpp \
+ html/TextFieldInputType.cpp \
+ html/TextInputType.cpp \
+ html/TimeInputType.cpp \
html/TimeRanges.cpp \
+ html/URLInputType.cpp \
html/ValidityState.cpp \
+ html/WeekInputType.cpp \
\
html/canvas/CanvasGradient.cpp \
html/canvas/WebGLObject.cpp \
diff --git a/WebCore/CMakeLists.txt b/WebCore/CMakeLists.txt
index 4c562a8..29a04d5 100644
--- a/WebCore/CMakeLists.txt
+++ b/WebCore/CMakeLists.txt
@@ -944,14 +944,23 @@ SET(WebCore_SOURCES
history/PageCache.cpp
html/AsyncImageResizer.cpp
+ html/BaseTextInputType.cpp
+ html/ButtonInputType.cpp
+ html/CheckboxInputType.cpp
html/CollectionCache.cpp
+ html/ColorInputType.cpp
html/DOMDataGridDataSource.cpp
html/DOMFormData.cpp
html/DOMTokenList.cpp
html/DataGridColumn.cpp
html/DataGridColumnList.cpp
html/DateComponents.cpp
+ html/DateInputType.cpp
+ html/DateTimeInputType.cpp
+ html/DateTimeLocalInputType.cpp
+ html/EmailInputType.cpp
html/FTPDirectoryDocument.cpp
+ html/FileInputType.cpp
html/FormDataList.cpp
html/HTMLAllCollection.cpp
html/HTMLAnchorElement.cpp
@@ -1034,15 +1043,33 @@ SET(WebCore_SOURCES
html/HTMLTitleElement.cpp
html/HTMLUListElement.cpp
html/HTMLViewSourceDocument.cpp
+ html/HiddenInputType.cpp
html/ImageData.cpp
html/ImageDocument.cpp
+ html/ImageInputType.cpp
html/ImageResizerThread.cpp
+ html/InputType.cpp
+ html/IsIndexInputType.cpp
html/LabelsNodeList.cpp
html/MediaDocument.cpp
+ html/MonthInputType.cpp
+ html/NumberInputType.cpp
+ html/PasswordInputType.cpp
html/PluginDocument.cpp
+ html/RadioInputType.cpp
+ html/RangeInputType.cpp
+ html/ResetInputType.cpp
+ html/SearchInputType.cpp
html/StepRange.cpp
+ html/SubmitInputType.cpp
+ html/TelephoneInputType.cpp
html/TextDocument.cpp
+ html/TextFieldInputType.cpp
+ html/TextInputType.cpp
+ html/TimeInputType.cpp
+ html/URLInputType.cpp
html/ValidityState.cpp
+ html/WeekInputType.cpp
html/canvas/CanvasGradient.cpp
html/canvas/CanvasPattern.cpp
html/canvas/CanvasPixelArray.cpp
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index a52cc9b..20c0e2b 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,193 @@
+2010-09-28 Kent Tamura <tkent at chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Refactor HTMLInputElement: Introducing InputType class and classes
+ for each input element types.
+ https://bugs.webkit.org/show_bug.cgi?id=45872
+
+ No new tests because this doesn't change any behavior.
+
+ * Android.mk: Add new files.
+ * CMakeLists.txt: ditto.
+ * GNUmakefile.am: ditto.
+ * WebCore.gypi: ditto.
+ * WebCore.pro: ditto.
+ * WebCore.vcproj/WebCore.vcproj: ditto.
+ * WebCore.xcodeproj/project.pbxproj: ditto.
+ * html/BaseTextInputType.cpp: Added.
+ (WebCore::BaseTextInputType::isTextType):
+ (WebCore::BaseTextInputType::patternMismatch):
+ * html/BaseTextInputType.h: Added.
+ (WebCore::BaseTextInputType::BaseTextInputType):
+ * html/ButtonInputType.cpp: Added.
+ (WebCore::ButtonInputType::create):
+ (WebCore::ButtonInputType::formControlType):
+ * html/ButtonInputType.h: Added.
+ (WebCore::ButtonInputType::ButtonInputType):
+ * html/CheckboxInputType.cpp: Added.
+ (WebCore::CheckboxInputType::create):
+ (WebCore::CheckboxInputType::formControlType):
+ * html/CheckboxInputType.h: Added.
+ (WebCore::CheckboxInputType::CheckboxInputType):
+ * html/ColorInputType.cpp: Added.
+ (WebCore::ColorInputType::create):
+ (WebCore::ColorInputType::formControlType):
+ * html/ColorInputType.h: Added.
+ (WebCore::ColorInputType::ColorInputType):
+ * html/DateInputType.cpp: Added.
+ (WebCore::DateInputType::create):
+ (WebCore::DateInputType::formControlType):
+ * html/DateInputType.h: Added.
+ (WebCore::DateInputType::DateInputType):
+ * html/DateTimeInputType.cpp: Added.
+ (WebCore::DateTimeInputType::create):
+ (WebCore::DateTimeInputType::formControlType):
+ * html/DateTimeInputType.h: Added.
+ (WebCore::DateTimeInputType::DateTimeInputType):
+ * html/DateTimeLocalInputType.cpp: Added.
+ (WebCore::DateTimeLocalInputType::create):
+ (WebCore::DateTimeLocalInputType::formControlType):
+ * html/DateTimeLocalInputType.h: Added.
+ (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
+ * html/EmailInputType.cpp: Added.
+ (WebCore::EmailInputType::create):
+ (WebCore::EmailInputType::formControlType):
+ * html/EmailInputType.h: Added.
+ (WebCore::EmailInputType::EmailInputType):
+ * html/FileInputType.cpp: Added.
+ (WebCore::FileInputType::create):
+ (WebCore::FileInputType::formControlType):
+ * html/FileInputType.h: Added.
+ (WebCore::FileInputType::FileInputType):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType.
+ (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType.
+ (WebCore::HTMLInputElement::updateType): Update m_inputType with new type.
+ (WebCore::HTMLInputElement::formControlType): Delegate to InputType.
+ (WebCore::HTMLInputElement::isTextField): ditto.
+ (WebCore::HTMLInputElement::isTextType): ditto.
+ * html/HTMLInputElement.h:
+ * html/HiddenInputType.cpp: Added.
+ (WebCore::HiddenInputType::create):
+ (WebCore::HiddenInputType::formControlType):
+ * html/HiddenInputType.h: Added.
+ (WebCore::HiddenInputType::HiddenInputType):
+ * html/ImageInputType.cpp: Added.
+ (WebCore::ImageInputType::create):
+ (WebCore::ImageInputType::formControlType):
+ * html/ImageInputType.h: Added.
+ (WebCore::ImageInputType::ImageInputType):
+ * html/InputType.cpp: Added.
+ (WebCore::createInputTypeFactoryMap):
+ (WebCore::InputType::create):
+ (WebCore::InputType::createText):
+ (WebCore::InputType::~InputType):
+ (WebCore::InputType::isTextField):
+ (WebCore::InputType::isTextType):
+ (WebCore::InputType::patternMismatch):
+ (WebCore::InputTypeNames::button):
+ (WebCore::InputTypeNames::checkbox):
+ (WebCore::InputTypeNames::color):
+ (WebCore::InputTypeNames::date):
+ (WebCore::InputTypeNames::datetime):
+ (WebCore::InputTypeNames::datetimelocal):
+ (WebCore::InputTypeNames::email):
+ (WebCore::InputTypeNames::file):
+ (WebCore::InputTypeNames::hidden):
+ (WebCore::InputTypeNames::image):
+ (WebCore::InputTypeNames::isindex):
+ (WebCore::InputTypeNames::month):
+ (WebCore::InputTypeNames::number):
+ (WebCore::InputTypeNames::password):
+ (WebCore::InputTypeNames::radio):
+ (WebCore::InputTypeNames::range):
+ (WebCore::InputTypeNames::reset):
+ (WebCore::InputTypeNames::search):
+ (WebCore::InputTypeNames::submit):
+ (WebCore::InputTypeNames::telephone):
+ (WebCore::InputTypeNames::text):
+ (WebCore::InputTypeNames::time):
+ (WebCore::InputTypeNames::url):
+ (WebCore::InputTypeNames::week):
+ * html/InputType.h: Added.
+ (WebCore::InputType::InputType):
+ (WebCore::InputType::element):
+ * html/IsIndexInputType.cpp: Added.
+ (WebCore::IsIndexInputType::create):
+ (WebCore::IsIndexInputType::formControlType):
+ * html/IsIndexInputType.h: Added.
+ (WebCore::IsIndexInputType::IsIndexInputType):
+ * html/MonthInputType.cpp: Added.
+ (WebCore::MonthInputType::create):
+ (WebCore::MonthInputType::formControlType):
+ * html/MonthInputType.h: Added.
+ (WebCore::MonthInputType::MonthInputType):
+ * html/NumberInputType.cpp: Added.
+ (WebCore::NumberInputType::create):
+ (WebCore::NumberInputType::formControlType):
+ * html/NumberInputType.h: Added.
+ (WebCore::NumberInputType::NumberInputType):
+ * html/PasswordInputType.cpp: Added.
+ (WebCore::PasswordInputType::create):
+ (WebCore::PasswordInputType::formControlType):
+ * html/PasswordInputType.h: Added.
+ (WebCore::PasswordInputType::PasswordInputType):
+ * html/RadioInputType.cpp: Added.
+ (WebCore::RadioInputType::create):
+ (WebCore::RadioInputType::formControlType):
+ * html/RadioInputType.h: Added.
+ (WebCore::RadioInputType::RadioInputType):
+ * html/RangeInputType.cpp: Added.
+ (WebCore::RangeInputType::create):
+ (WebCore::RangeInputType::formControlType):
+ * html/RangeInputType.h: Added.
+ (WebCore::RangeInputType::RangeInputType):
+ * html/ResetInputType.cpp: Added.
+ (WebCore::ResetInputType::create):
+ (WebCore::ResetInputType::formControlType):
+ * html/ResetInputType.h: Added.
+ (WebCore::ResetInputType::ResetInputType):
+ * html/SearchInputType.cpp: Added.
+ (WebCore::SearchInputType::create):
+ (WebCore::SearchInputType::formControlType):
+ * html/SearchInputType.h: Added.
+ (WebCore::SearchInputType::SearchInputType):
+ * html/SubmitInputType.cpp: Added.
+ (WebCore::SubmitInputType::create):
+ (WebCore::SubmitInputType::formControlType):
+ * html/SubmitInputType.h: Added.
+ (WebCore::SubmitInputType::SubmitInputType):
+ * html/TelephoneInputType.cpp: Added.
+ (WebCore::TelephoneInputType::create):
+ (WebCore::TelephoneInputType::formControlType):
+ * html/TelephoneInputType.h: Added.
+ (WebCore::TelephoneInputType::TelephoneInputType):
+ * html/TextFieldInputType.cpp: Added.
+ (WebCore::TextFieldInputType::isTextField):
+ * html/TextFieldInputType.h: Added.
+ (WebCore::TextFieldInputType::TextFieldInputType):
+ * html/TextInputType.cpp: Added.
+ (WebCore::TextInputType::create):
+ (WebCore::TextInputType::formControlType):
+ * html/TextInputType.h: Added.
+ (WebCore::TextInputType::TextInputType):
+ * html/TimeInputType.cpp: Added.
+ (WebCore::TimeInputType::create):
+ (WebCore::TimeInputType::formControlType):
+ * html/TimeInputType.h: Added.
+ (WebCore::TimeInputType::TimeInputType):
+ * html/URLInputType.cpp: Added.
+ (WebCore::URLInputType::create):
+ (WebCore::URLInputType::formControlType):
+ * html/URLInputType.h: Added.
+ (WebCore::URLInputType::URLInputType):
+ * html/WeekInputType.cpp: Added.
+ (WebCore::WeekInputType::create):
+ (WebCore::WeekInputType::formControlType):
+ * html/WeekInputType.h: Added.
+ (WebCore::WeekInputType::WeekInputType):
+
2010-09-28 David Hyatt <hyatt at apple.com>
Reviewed by Maciej Stachowiak.
diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
index 722b5c2..ac9b719 100644
--- a/WebCore/GNUmakefile.am
+++ b/WebCore/GNUmakefile.am
@@ -1425,6 +1425,10 @@ webcore_sources += \
WebCore/history/PageCache.h \
WebCore/html/AsyncImageResizer.cpp \
WebCore/html/AsyncImageResizer.h \
+ WebCore/html/BaseTextInputType.cpp \
+ WebCore/html/BaseTextInputType.h \
+ WebCore/html/ButtonInputType.cpp \
+ WebCore/html/ButtonInputType.h \
WebCore/html/canvas/CanvasContextAttributes.h \
WebCore/html/canvas/CanvasGradient.cpp \
WebCore/html/canvas/CanvasGradient.h \
@@ -1440,9 +1444,13 @@ webcore_sources += \
WebCore/html/canvas/CanvasStyle.h \
WebCore/html/DOMTokenList.cpp \
WebCore/html/DOMTokenList.h \
+ WebCore/html/CheckboxInputType.cpp \
+ WebCore/html/CheckboxInputType.h \
WebCore/html/CollectionCache.cpp \
WebCore/html/CollectionCache.h \
WebCore/html/CollectionType.h \
+ WebCore/html/ColorInputType.cpp \
+ WebCore/html/ColorInputType.h \
WebCore/html/DataGridColumn.cpp \
WebCore/html/DataGridColumn.h \
WebCore/html/DataGridColumnList.cpp \
@@ -1450,10 +1458,20 @@ webcore_sources += \
WebCore/html/DataGridDataSource.h \
WebCore/html/DateComponents.cpp \
WebCore/html/DateComponents.h \
+ WebCore/html/DateInputType.cpp \
+ WebCore/html/DateInputType.h \
+ WebCore/html/DateTimeInputType.cpp \
+ WebCore/html/DateTimeInputType.h \
+ WebCore/html/DateTimeLocalInputType.cpp \
+ WebCore/html/DateTimeLocalInputType.h \
WebCore/html/DOMDataGridDataSource.cpp \
WebCore/html/DOMDataGridDataSource.h \
WebCore/html/DOMFormData.cpp \
WebCore/html/DOMFormData.h \
+ WebCore/html/EmailInputType.cpp \
+ WebCore/html/EmailInputType.h \
+ WebCore/html/FileInputType.cpp \
+ WebCore/html/FileInputType.h \
WebCore/html/FormDataList.cpp \
WebCore/html/FormDataList.h \
WebCore/html/FTPDirectoryDocument.cpp \
@@ -1631,17 +1649,29 @@ webcore_sources += \
WebCore/html/HTMLVideoElement.h \
WebCore/html/HTMLViewSourceDocument.cpp \
WebCore/html/HTMLViewSourceDocument.h \
+ WebCore/html/HiddenInputType.cpp \
+ WebCore/html/HiddenInputType.h \
WebCore/html/ImageData.cpp \
WebCore/html/ImageData.h \
WebCore/html/ImageDocument.cpp \
WebCore/html/ImageDocument.h \
+ WebCore/html/ImageInputType.cpp \
+ WebCore/html/ImageInputType.h \
WebCore/html/ImageResizerThread.cpp \
WebCore/html/ImageResizerThread.h \
+ WebCore/html/InputType.cpp \
+ WebCore/html/InputType.h \
+ WebCore/html/IsIndexInputType.cpp \
+ WebCore/html/IsIndexInputType.h \
WebCore/html/LabelsNodeList.cpp \
WebCore/html/LabelsNodeList.h \
WebCore/html/MediaDocument.cpp \
WebCore/html/MediaDocument.h \
WebCore/html/MediaError.h \
+ WebCore/html/MonthInputType.cpp \
+ WebCore/html/MonthInputType.h \
+ WebCore/html/NumberInputType.cpp \
+ WebCore/html/NumberInputType.h \
WebCore/html/parser/CSSPreloadScanner.cpp \
WebCore/html/parser/CSSPreloadScanner.h \
WebCore/html/parser/HTMLConstructionSite.cpp \
@@ -1679,18 +1709,42 @@ webcore_sources += \
WebCore/html/parser/TextDocumentParser.h \
WebCore/html/parser/TextViewSourceParser.cpp \
WebCore/html/parser/TextViewSourceParser.h \
+ WebCore/html/PasswordInputType.cpp \
+ WebCore/html/PasswordInputType.h \
WebCore/html/PluginDocument.cpp \
WebCore/html/PluginDocument.h \
+ WebCore/html/RadioInputType.cpp \
+ WebCore/html/RadioInputType.h \
+ WebCore/html/RangeInputType.cpp \
+ WebCore/html/RangeInputType.h \
+ WebCore/html/ResetInputType.cpp \
+ WebCore/html/ResetInputType.h \
+ WebCore/html/SearchInputType.cpp \
+ WebCore/html/SearchInputType.h \
WebCore/html/StepRange.cpp \
WebCore/html/StepRange.h \
+ WebCore/html/SubmitInputType.cpp \
+ WebCore/html/SubmitInputType.h \
+ WebCore/html/TelephoneInputType.cpp \
+ WebCore/html/TelephoneInputType.h \
WebCore/html/TextDocument.cpp \
WebCore/html/TextDocument.h \
+ WebCore/html/TextFieldInputType.cpp \
+ WebCore/html/TextFieldInputType.h \
+ WebCore/html/TextInputType.cpp \
+ WebCore/html/TextInputType.h \
WebCore/html/TextMetrics.h \
+ WebCore/html/TimeInputType.cpp \
+ WebCore/html/TimeInputType.h \
WebCore/html/TimeRanges.cpp \
WebCore/html/TimeRanges.h \
+ WebCore/html/URLInputType.cpp \
+ WebCore/html/URLInputType.h \
WebCore/html/ValidityState.cpp \
WebCore/html/ValidityState.h \
WebCore/html/VoidCallback.h \
+ WebCore/html/WeekInputType.cpp \
+ WebCore/html/WeekInputType.h \
WebCore/icu/unicode/parseerr.h \
WebCore/icu/unicode/platform.h \
WebCore/icu/unicode/putil.h \
diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
index ee65f47..651a178 100644
--- a/WebCore/WebCore.gypi
+++ b/WebCore/WebCore.gypi
@@ -1512,9 +1512,17 @@
'history/PageCache.h',
'html/AsyncImageResizer.cpp',
'html/AsyncImageResizer.h',
+ 'html/BaseTextInputType.cpp',
+ 'html/BaseTextInputType.h',
+ 'html/ButtonInputType.cpp',
+ 'html/ButtonInputType.h',
+ 'html/CheckboxInputType.cpp',
+ 'html/CheckboxInputType.h',
'html/CollectionCache.cpp',
'html/CollectionCache.h',
'html/CollectionType.h',
+ 'html/ColorInputType.cpp',
+ 'html/ColorInputType.h',
'html/DOMDataGridDataSource.cpp',
'html/DOMDataGridDataSource.h',
'html/DOMFormData.cpp',
@@ -1527,8 +1535,18 @@
'html/DataGridColumnList.h',
'html/DateComponents.cpp',
'html/DateComponents.h',
+ 'html/DateInputType.cpp',
+ 'html/DateInputType.h',
+ 'html/DateTimeInputType.cpp',
+ 'html/DateTimeInputType.h',
+ 'html/DateTimeLocalInputType.cpp',
+ 'html/DateTimeLocalInputType.h',
+ 'html/EmailInputType.cpp',
+ 'html/EmailInputType.h',
'html/FTPDirectoryDocument.cpp',
'html/FTPDirectoryDocument.h',
+ 'html/FileInputType.cpp',
+ 'html/FileInputType.h',
'html/FormDataList.cpp',
'html/FormDataList.h',
'html/HTMLAllCollection.cpp',
@@ -1701,29 +1719,65 @@
'html/HTMLVideoElement.h',
'html/HTMLViewSourceDocument.cpp',
'html/HTMLViewSourceDocument.h',
+ 'html/HiddenInputType.cpp',
+ 'html/HiddenInputType.h',
'html/ImageData.cpp',
'html/ImageData.h',
'html/ImageDocument.cpp',
'html/ImageDocument.h',
+ 'html/ImageInputType.cpp',
+ 'html/ImageInputType.h',
'html/ImageResizerThread.cpp',
'html/ImageResizerThread.h',
+ 'html/InputType.cpp',
+ 'html/InputType.h',
+ 'html/IsIndexInputType.cpp',
+ 'html/IsIndexInputType.h',
'html/LabelsNodeList.cpp',
'html/LabelsNodeList.h',
'html/MediaDocument.cpp',
'html/MediaDocument.h',
'html/MediaError.h',
+ 'html/MonthInputType.cpp',
+ 'html/MonthInputType.h',
+ 'html/NumberInputType.cpp',
+ 'html/NumberInputType.h',
+ 'html/PasswordInputType.cpp',
+ 'html/PasswordInputType.h',
'html/PluginDocument.cpp',
'html/PluginDocument.h',
+ 'html/RadioInputType.cpp',
+ 'html/RadioInputType.h',
+ 'html/RangeInputType.cpp',
+ 'html/RangeInputType.h',
+ 'html/ResetInputType.cpp',
+ 'html/ResetInputType.h',
+ 'html/SearchInputType.cpp',
+ 'html/SearchInputType.h',
'html/StepRange.cpp',
'html/StepRange.h',
+ 'html/SubmitInputType.cpp',
+ 'html/SubmitInputType.h',
+ 'html/TelephoneInputType.cpp',
+ 'html/TelephoneInputType.h',
'html/TextDocument.cpp',
'html/TextDocument.h',
+ 'html/TextFieldInputType.cpp',
+ 'html/TextFieldInputType.h',
+ 'html/TextInputType.cpp',
+ 'html/TextInputType.h',
'html/TextMetrics.h',
+ 'html/TimeInputType.cpp',
+ 'html/TimeInputType.h',
'html/TimeRanges.cpp',
'html/TimeRanges.h',
+ 'html/URLInputType.cpp',
+ 'html/URLInputType.h',
'html/ValidityState.cpp',
'html/ValidityState.h',
'html/VoidCallback.h',
+ 'html/WeekInputType.cpp',
+ 'html/WeekInputType.h',
'html/canvas/ArrayBuffer.cpp',
'html/canvas/ArrayBuffer.h',
'html/canvas/ArrayBufferView.cpp',
diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
index a3422c1..e595f3b 100644
--- a/WebCore/WebCore.pro
+++ b/WebCore/WebCore.pro
@@ -836,14 +836,23 @@ SOURCES += \
history/qt/HistoryItemQt.cpp \
history/PageCache.cpp \
html/AsyncImageResizer.cpp \
+ html/BaseTextInputType.cpp \
+ html/ButtonInputType.cpp \
+ html/CheckboxInputType.cpp \
html/CollectionCache.cpp \
+ html/ColorInputType.cpp \
html/DOMDataGridDataSource.cpp \
html/DOMFormData.cpp \
html/DOMTokenList.cpp \
html/DataGridColumn.cpp \
html/DataGridColumnList.cpp \
html/DateComponents.cpp \
+ html/DateInputType.cpp \
+ html/DateTimeInputType.cpp \
+ html/DateTimeLocalInputType.cpp \
+ html/EmailInputType.cpp \
html/FTPDirectoryDocument.cpp \
+ html/FileInputType.cpp \
html/FormDataList.cpp \
html/HTMLAllCollection.cpp \
html/HTMLAnchorElement.cpp \
@@ -926,15 +935,33 @@ SOURCES += \
html/HTMLTitleElement.cpp \
html/HTMLUListElement.cpp \
html/HTMLViewSourceDocument.cpp \
+ html/HiddenInputType.cpp \
html/ImageData.cpp \
html/ImageDocument.cpp \
+ html/ImageInputType.cpp \
html/ImageResizerThread.cpp \
+ html/InputType.cpp \
+ html/IsIndexInputType.cpp \
html/LabelsNodeList.cpp \
html/MediaDocument.cpp \
+ html/MonthInputType.cpp \
+ html/NumberInputType.cpp \
+ html/PasswordInputType.cpp \
html/PluginDocument.cpp \
+ html/RadioInputType.cpp \
+ html/RangeInputType.cpp \
+ html/ResetInputType.cpp \
+ html/SearchInputType.cpp \
html/StepRange.cpp \
+ html/SubmitInputType.cpp \
+ html/TelephoneInputType.cpp \
html/TextDocument.cpp \
+ html/TextFieldInputType.cpp \
+ html/TextInputType.cpp \
+ html/TimeInputType.cpp \
+ html/URLInputType.cpp \
html/ValidityState.cpp \
+ html/WeekInputType.cpp \
html/canvas/CanvasGradient.cpp \
html/canvas/CanvasPattern.cpp \
html/canvas/CanvasPixelArray.cpp \
diff --git a/WebCore/WebCore.vcproj/WebCore.vcproj b/WebCore/WebCore.vcproj/WebCore.vcproj
index 254b02a..6147ebb 100644
--- a/WebCore/WebCore.vcproj/WebCore.vcproj
+++ b/WebCore/WebCore.vcproj/WebCore.vcproj
@@ -37561,6 +37561,14 @@
>
</File>
<File
+ RelativePath="..\html\BaseTextInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\BaseTextInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\fileapi\Blob.cpp"
>
</File>
@@ -37585,6 +37593,14 @@
>
</File>
<File
+ RelativePath="..\html\ButtonInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\ButtonInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\canvas\CanvasGradient.cpp"
>
</File>
@@ -37633,6 +37649,14 @@
>
</File>
<File
+ RelativePath="..\html\CheckboxInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\CheckboxInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\CollectionCache.cpp"
>
<FileConfiguration
@@ -37653,6 +37677,14 @@
>
</File>
<File
+ RelativePath="..\html\ColorInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\ColorInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\DataGridColumn.cpp"
>
</File>
@@ -37681,6 +37713,30 @@
>
</File>
<File
+ RelativePath="..\html\DateInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\DateInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\DateTimeInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\DateTimeInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\DateTimeLocalInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\DateTimeLocalInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\fileapi\DirectoryEntry.cpp"
>
</File>
@@ -37729,6 +37785,14 @@
>
</File>
<File
+ RelativePath="..\html\EmailInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\EmailInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\fileapi\EntriesCallback.h"
>
</File>
@@ -37789,6 +37853,14 @@
>
</File>
<File
+ RelativePath="..\html\FileInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\FileInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\fileapi\FileList.cpp"
>
</File>
@@ -42237,6 +42309,14 @@
>
</File>
<File
+ RelativePath="..\html\HiddenInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\HiddenInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\ImageData.cpp"
>
</File>
@@ -42253,6 +42333,14 @@
>
</File>
<File
+ RelativePath="..\html\ImageInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\ImageInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\ImageResizerThread.cpp"
>
</File>
@@ -42261,6 +42349,22 @@
>
</File>
<File
+ RelativePath="..\html\InputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\InputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\IsIndexInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\IsIndexInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\LabelsNodeList.cpp"
>
</File>
@@ -42297,6 +42401,30 @@
>
</File>
<File
+ RelativePath="..\html\MonthInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\MonthInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\NumberInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\NumberInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\PasswordInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\PasswordInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\PluginDocument.cpp"
>
</File>
@@ -42305,6 +42433,38 @@
>
</File>
<File
+ RelativePath="..\html\RadioInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\RadioInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\RangeInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\RangeInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\ResetInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\ResetInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\SearchInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\SearchInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\StepRange.cpp"
>
</File>
@@ -42313,10 +42473,42 @@
>
</File>
<File
+ RelativePath="..\html\SubmitInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\SubmitInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\TelephoneInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\TelephoneInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\TextDocument.cpp"
>
</File>
<File
+ RelativePath="..\html\TextFieldInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\TextFieldInputType.h"
+ >
+ </File>
+ <File
+ RelativePath="..\html\TextInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\TextInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\fileapi\ThreadableBlobRegistry.cpp"
>
</File>
@@ -42333,6 +42525,14 @@
>
</File>
<File
+ RelativePath="..\html\URLInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\URLInputType.h"
+ >
+ </File>
+ <File
RelativePath="..\html\ValidityState.cpp"
>
</File>
@@ -42344,6 +42544,14 @@
RelativePath="..\html\VoidCallback.h"
>
</File>
+ <File
+ RelativePath="..\html\WeekInputType.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\html\WeekInputType.h"
+ >
+ </File>
<Filter
Name="parser"
>
diff --git a/WebCore/WebCore.xcodeproj/project.pbxproj b/WebCore/WebCore.xcodeproj/project.pbxproj
index fd1a00b..d104455 100644
--- a/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -826,6 +826,8 @@
37C238221098C84200EF9F72 /* ComplexTextControllerCoreText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37C238201098C84200EF9F72 /* ComplexTextControllerCoreText.cpp */; };
37C28A6810F659CC008C7813 /* TypesettingFeatures.h in Headers */ = {isa = PBXBuildFile; fileRef = 37C28A6710F659CC008C7813 /* TypesettingFeatures.h */; settings = {ATTRIBUTES = (Private, ); }; };
37C61F0112095C87007A3C67 /* AtomicStringKeyedMRUCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 37C61F0012095C87007A3C67 /* AtomicStringKeyedMRUCache.h */; };
+ 37E3524B12450C5200BAF5D9 /* InputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37E3524A12450C5200BAF5D9 /* InputType.cpp */; };
+ 37E3524D12450C6600BAF5D9 /* InputType.h in Headers */ = {isa = PBXBuildFile; fileRef = 37E3524C12450C6600BAF5D9 /* InputType.h */; settings = {ATTRIBUTES = (Private, ); }; };
37F818FD0D657606005E1F05 /* WebCoreURLResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 37F818FB0D657606005E1F05 /* WebCoreURLResponse.h */; settings = {ATTRIBUTES = (Private, ); }; };
37F818FE0D657606005E1F05 /* WebCoreURLResponse.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37F818FC0D657606005E1F05 /* WebCoreURLResponse.mm */; };
37FD4298118368460093C029 /* TreeDepthLimit.h in Headers */ = {isa = PBXBuildFile; fileRef = 37FD4297118368460093C029 /* TreeDepthLimit.h */; };
@@ -5375,6 +5377,58 @@
F3D461491161D53200CA0D09 /* JSWorkerContextErrorHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = F3D461471161D53200CA0D09 /* JSWorkerContextErrorHandler.h */; };
F4EAF4AE10C742B1009100D3 /* OpenTypeSanitizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4EAF4AC10C742B1009100D3 /* OpenTypeSanitizer.cpp */; };
F4EAF4AF10C742B1009100D3 /* OpenTypeSanitizer.h in Headers */ = {isa = PBXBuildFile; fileRef = F4EAF4AD10C742B1009100D3 /* OpenTypeSanitizer.h */; };
+ F55B3DAD1251F12D003EF269 /* BaseTextInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D791251F12D003EF269 /* BaseTextInputType.cpp */; };
+ F55B3DAE1251F12D003EF269 /* BaseTextInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D7A1251F12D003EF269 /* BaseTextInputType.h */; };
+ F55B3DAF1251F12D003EF269 /* ButtonInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D7B1251F12D003EF269 /* ButtonInputType.cpp */; };
+ F55B3DB01251F12D003EF269 /* ButtonInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D7C1251F12D003EF269 /* ButtonInputType.h */; };
+ F55B3DB11251F12D003EF269 /* CheckboxInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D7D1251F12D003EF269 /* CheckboxInputType.cpp */; };
+ F55B3DB21251F12D003EF269 /* CheckboxInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D7E1251F12D003EF269 /* CheckboxInputType.h */; };
+ F55B3DB31251F12D003EF269 /* ColorInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D7F1251F12D003EF269 /* ColorInputType.cpp */; };
+ F55B3DB41251F12D003EF269 /* ColorInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D801251F12D003EF269 /* ColorInputType.h */; };
+ F55B3DB51251F12D003EF269 /* DateInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D811251F12D003EF269 /* DateInputType.cpp */; };
+ F55B3DB61251F12D003EF269 /* DateInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D821251F12D003EF269 /* DateInputType.h */; };
+ F55B3DB71251F12D003EF269 /* DateTimeInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D831251F12D003EF269 /* DateTimeInputType.cpp */; };
+ F55B3DB81251F12D003EF269 /* DateTimeInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D841251F12D003EF269 /* DateTimeInputType.h */; };
+ F55B3DB91251F12D003EF269 /* DateTimeLocalInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D851251F12D003EF269 /* DateTimeLocalInputType.cpp */; };
+ F55B3DBA1251F12D003EF269 /* DateTimeLocalInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D861251F12D003EF269 /* DateTimeLocalInputType.h */; };
+ F55B3DBB1251F12D003EF269 /* EmailInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D871251F12D003EF269 /* EmailInputType.cpp */; };
+ F55B3DBC1251F12D003EF269 /* EmailInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D881251F12D003EF269 /* EmailInputType.h */; };
+ F55B3DBD1251F12D003EF269 /* FileInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D891251F12D003EF269 /* FileInputType.cpp */; };
+ F55B3DBE1251F12D003EF269 /* FileInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D8A1251F12D003EF269 /* FileInputType.h */; };
+ F55B3DBF1251F12D003EF269 /* HiddenInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D8B1251F12D003EF269 /* HiddenInputType.cpp */; };
+ F55B3DC01251F12D003EF269 /* HiddenInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D8C1251F12D003EF269 /* HiddenInputType.h */; };
+ F55B3DC11251F12D003EF269 /* ImageInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D8D1251F12D003EF269 /* ImageInputType.cpp */; };
+ F55B3DC21251F12D003EF269 /* ImageInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D8E1251F12D003EF269 /* ImageInputType.h */; };
+ F55B3DC31251F12D003EF269 /* IsIndexInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D8F1251F12D003EF269 /* IsIndexInputType.cpp */; };
+ F55B3DC41251F12D003EF269 /* IsIndexInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D901251F12D003EF269 /* IsIndexInputType.h */; };
+ F55B3DC51251F12D003EF269 /* MonthInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D911251F12D003EF269 /* MonthInputType.cpp */; };
+ F55B3DC61251F12D003EF269 /* MonthInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D921251F12D003EF269 /* MonthInputType.h */; };
+ F55B3DC71251F12D003EF269 /* NumberInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D931251F12D003EF269 /* NumberInputType.cpp */; };
+ F55B3DC81251F12D003EF269 /* NumberInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D941251F12D003EF269 /* NumberInputType.h */; };
+ F55B3DC91251F12D003EF269 /* PasswordInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D951251F12D003EF269 /* PasswordInputType.cpp */; };
+ F55B3DCA1251F12D003EF269 /* PasswordInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D961251F12D003EF269 /* PasswordInputType.h */; };
+ F55B3DCB1251F12D003EF269 /* RadioInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D971251F12D003EF269 /* RadioInputType.cpp */; };
+ F55B3DCC1251F12D003EF269 /* RadioInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D981251F12D003EF269 /* RadioInputType.h */; };
+ F55B3DCD1251F12D003EF269 /* RangeInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D991251F12D003EF269 /* RangeInputType.cpp */; };
+ F55B3DCE1251F12D003EF269 /* RangeInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D9A1251F12D003EF269 /* RangeInputType.h */; };
+ F55B3DCF1251F12D003EF269 /* ResetInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D9B1251F12D003EF269 /* ResetInputType.cpp */; };
+ F55B3DD01251F12D003EF269 /* ResetInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D9C1251F12D003EF269 /* ResetInputType.h */; };
+ F55B3DD11251F12D003EF269 /* SearchInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D9D1251F12D003EF269 /* SearchInputType.cpp */; };
+ F55B3DD21251F12D003EF269 /* SearchInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3D9E1251F12D003EF269 /* SearchInputType.h */; };
+ F55B3DD31251F12D003EF269 /* SubmitInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3D9F1251F12D003EF269 /* SubmitInputType.cpp */; };
+ F55B3DD41251F12D003EF269 /* SubmitInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DA01251F12D003EF269 /* SubmitInputType.h */; };
+ F55B3DD51251F12D003EF269 /* TelephoneInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DA11251F12D003EF269 /* TelephoneInputType.cpp */; };
+ F55B3DD61251F12D003EF269 /* TelephoneInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DA21251F12D003EF269 /* TelephoneInputType.h */; };
+ F55B3DD71251F12D003EF269 /* TextFieldInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DA31251F12D003EF269 /* TextFieldInputType.cpp */; };
+ F55B3DD81251F12D003EF269 /* TextFieldInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DA41251F12D003EF269 /* TextFieldInputType.h */; };
+ F55B3DD91251F12D003EF269 /* TextInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DA51251F12D003EF269 /* TextInputType.cpp */; };
+ F55B3DDA1251F12D003EF269 /* TextInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DA61251F12D003EF269 /* TextInputType.h */; };
+ F55B3DDB1251F12D003EF269 /* TimeInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DA71251F12D003EF269 /* TimeInputType.cpp */; };
+ F55B3DDC1251F12D003EF269 /* TimeInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DA81251F12D003EF269 /* TimeInputType.h */; };
+ F55B3DDD1251F12D003EF269 /* URLInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DA91251F12D003EF269 /* URLInputType.cpp */; };
+ F55B3DDE1251F12D003EF269 /* URLInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DAA1251F12D003EF269 /* URLInputType.h */; };
+ F55B3DDF1251F12D003EF269 /* WeekInputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F55B3DAB1251F12D003EF269 /* WeekInputType.cpp */; };
+ F55B3DE01251F12D003EF269 /* WeekInputType.h in Headers */ = {isa = PBXBuildFile; fileRef = F55B3DAC1251F12D003EF269 /* WeekInputType.h */; };
F5C041DA0FFCA7CE00839D4A /* HTMLDataListElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5C041D70FFCA7CE00839D4A /* HTMLDataListElement.cpp */; };
F5C041DB0FFCA7CE00839D4A /* HTMLDataListElement.h in Headers */ = {isa = PBXBuildFile; fileRef = F5C041D80FFCA7CE00839D4A /* HTMLDataListElement.h */; };
F5C041E30FFCA96D00839D4A /* DOMHTMLDataListElement.h in Headers */ = {isa = PBXBuildFile; fileRef = F5C041DE0FFCA96D00839D4A /* DOMHTMLDataListElement.h */; };
@@ -6720,6 +6774,8 @@
37C238201098C84200EF9F72 /* ComplexTextControllerCoreText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComplexTextControllerCoreText.cpp; sourceTree = "<group>"; };
37C28A6710F659CC008C7813 /* TypesettingFeatures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypesettingFeatures.h; sourceTree = "<group>"; };
37C61F0012095C87007A3C67 /* AtomicStringKeyedMRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AtomicStringKeyedMRUCache.h; sourceTree = "<group>"; };
+ 37E3524A12450C5200BAF5D9 /* InputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InputType.cpp; sourceTree = "<group>"; };
+ 37E3524C12450C6600BAF5D9 /* InputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputType.h; sourceTree = "<group>"; };
37F818FB0D657606005E1F05 /* WebCoreURLResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreURLResponse.h; sourceTree = "<group>"; };
37F818FC0D657606005E1F05 /* WebCoreURLResponse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebCoreURLResponse.mm; sourceTree = "<group>"; };
37FC96DA1104ED71003E1FAD /* TrailingFloatsRootInlineBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TrailingFloatsRootInlineBox.h; sourceTree = "<group>"; };
@@ -11269,6 +11325,58 @@
F523D30402DE4476018635CA /* Range.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = Range.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
F523D30902DE4476018635CA /* XMLDocumentParser.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XMLDocumentParser.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
F523D30A02DE4476018635CA /* XMLDocumentParser.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = XMLDocumentParser.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
+ F55B3D791251F12D003EF269 /* BaseTextInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseTextInputType.cpp; sourceTree = "<group>"; };
+ F55B3D7A1251F12D003EF269 /* BaseTextInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseTextInputType.h; sourceTree = "<group>"; };
+ F55B3D7B1251F12D003EF269 /* ButtonInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ButtonInputType.cpp; sourceTree = "<group>"; };
+ F55B3D7C1251F12D003EF269 /* ButtonInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ButtonInputType.h; sourceTree = "<group>"; };
+ F55B3D7D1251F12D003EF269 /* CheckboxInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckboxInputType.cpp; sourceTree = "<group>"; };
+ F55B3D7E1251F12D003EF269 /* CheckboxInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CheckboxInputType.h; sourceTree = "<group>"; };
+ F55B3D7F1251F12D003EF269 /* ColorInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ColorInputType.cpp; sourceTree = "<group>"; };
+ F55B3D801251F12D003EF269 /* ColorInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ColorInputType.h; sourceTree = "<group>"; };
+ F55B3D811251F12D003EF269 /* DateInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DateInputType.cpp; sourceTree = "<group>"; };
+ F55B3D821251F12D003EF269 /* DateInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateInputType.h; sourceTree = "<group>"; };
+ F55B3D831251F12D003EF269 /* DateTimeInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DateTimeInputType.cpp; sourceTree = "<group>"; };
+ F55B3D841251F12D003EF269 /* DateTimeInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateTimeInputType.h; sourceTree = "<group>"; };
+ F55B3D851251F12D003EF269 /* DateTimeLocalInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DateTimeLocalInputType.cpp; sourceTree = "<group>"; };
+ F55B3D861251F12D003EF269 /* DateTimeLocalInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateTimeLocalInputType.h; sourceTree = "<group>"; };
+ F55B3D871251F12D003EF269 /* EmailInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EmailInputType.cpp; sourceTree = "<group>"; };
+ F55B3D881251F12D003EF269 /* EmailInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailInputType.h; sourceTree = "<group>"; };
+ F55B3D891251F12D003EF269 /* FileInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileInputType.cpp; sourceTree = "<group>"; };
+ F55B3D8A1251F12D003EF269 /* FileInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileInputType.h; sourceTree = "<group>"; };
+ F55B3D8B1251F12D003EF269 /* HiddenInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HiddenInputType.cpp; sourceTree = "<group>"; };
+ F55B3D8C1251F12D003EF269 /* HiddenInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HiddenInputType.h; sourceTree = "<group>"; };
+ F55B3D8D1251F12D003EF269 /* ImageInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ImageInputType.cpp; sourceTree = "<group>"; };
+ F55B3D8E1251F12D003EF269 /* ImageInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageInputType.h; sourceTree = "<group>"; };
+ F55B3D8F1251F12D003EF269 /* IsIndexInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IsIndexInputType.cpp; sourceTree = "<group>"; };
+ F55B3D901251F12D003EF269 /* IsIndexInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IsIndexInputType.h; sourceTree = "<group>"; };
+ F55B3D911251F12D003EF269 /* MonthInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MonthInputType.cpp; sourceTree = "<group>"; };
+ F55B3D921251F12D003EF269 /* MonthInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MonthInputType.h; sourceTree = "<group>"; };
+ F55B3D931251F12D003EF269 /* NumberInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NumberInputType.cpp; sourceTree = "<group>"; };
+ F55B3D941251F12D003EF269 /* NumberInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NumberInputType.h; sourceTree = "<group>"; };
+ F55B3D951251F12D003EF269 /* PasswordInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PasswordInputType.cpp; sourceTree = "<group>"; };
+ F55B3D961251F12D003EF269 /* PasswordInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PasswordInputType.h; sourceTree = "<group>"; };
+ F55B3D971251F12D003EF269 /* RadioInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RadioInputType.cpp; sourceTree = "<group>"; };
+ F55B3D981251F12D003EF269 /* RadioInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RadioInputType.h; sourceTree = "<group>"; };
+ F55B3D991251F12D003EF269 /* RangeInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RangeInputType.cpp; sourceTree = "<group>"; };
+ F55B3D9A1251F12D003EF269 /* RangeInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RangeInputType.h; sourceTree = "<group>"; };
+ F55B3D9B1251F12D003EF269 /* ResetInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResetInputType.cpp; sourceTree = "<group>"; };
+ F55B3D9C1251F12D003EF269 /* ResetInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResetInputType.h; sourceTree = "<group>"; };
+ F55B3D9D1251F12D003EF269 /* SearchInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SearchInputType.cpp; sourceTree = "<group>"; };
+ F55B3D9E1251F12D003EF269 /* SearchInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchInputType.h; sourceTree = "<group>"; };
+ F55B3D9F1251F12D003EF269 /* SubmitInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SubmitInputType.cpp; sourceTree = "<group>"; };
+ F55B3DA01251F12D003EF269 /* SubmitInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubmitInputType.h; sourceTree = "<group>"; };
+ F55B3DA11251F12D003EF269 /* TelephoneInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TelephoneInputType.cpp; sourceTree = "<group>"; };
+ F55B3DA21251F12D003EF269 /* TelephoneInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TelephoneInputType.h; sourceTree = "<group>"; };
+ F55B3DA31251F12D003EF269 /* TextFieldInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextFieldInputType.cpp; sourceTree = "<group>"; };
+ F55B3DA41251F12D003EF269 /* TextFieldInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextFieldInputType.h; sourceTree = "<group>"; };
+ F55B3DA51251F12D003EF269 /* TextInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextInputType.cpp; sourceTree = "<group>"; };
+ F55B3DA61251F12D003EF269 /* TextInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextInputType.h; sourceTree = "<group>"; };
+ F55B3DA71251F12D003EF269 /* TimeInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TimeInputType.cpp; sourceTree = "<group>"; };
+ F55B3DA81251F12D003EF269 /* TimeInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TimeInputType.h; sourceTree = "<group>"; };
+ F55B3DA91251F12D003EF269 /* URLInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = URLInputType.cpp; sourceTree = "<group>"; };
+ F55B3DAA1251F12D003EF269 /* URLInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = URLInputType.h; sourceTree = "<group>"; };
+ F55B3DAB1251F12D003EF269 /* WeekInputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WeekInputType.cpp; sourceTree = "<group>"; };
+ F55B3DAC1251F12D003EF269 /* WeekInputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WeekInputType.h; sourceTree = "<group>"; };
F58784F002DE375901EA4122 /* CursorMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CursorMac.mm; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
F587851502DE375901EA4122 /* DeprecatedPtrListImpl.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = DeprecatedPtrListImpl.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
F587851602DE375901EA4122 /* DeprecatedPtrListImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DeprecatedPtrListImpl.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
@@ -14145,9 +14253,17 @@
97C1F5511228558800EDE616 /* parser */,
B0149E7911A4B21500196A7B /* AsyncImageResizer.cpp */,
B0149E7A11A4B21500196A7B /* AsyncImageResizer.h */,
+ F55B3D791251F12D003EF269 /* BaseTextInputType.cpp */,
+ F55B3D7A1251F12D003EF269 /* BaseTextInputType.h */,
+ F55B3D7B1251F12D003EF269 /* ButtonInputType.cpp */,
+ F55B3D7C1251F12D003EF269 /* ButtonInputType.h */,
+ F55B3D7D1251F12D003EF269 /* CheckboxInputType.cpp */,
+ F55B3D7E1251F12D003EF269 /* CheckboxInputType.h */,
93C441ED0F813A1A00C1A634 /* CollectionCache.cpp */,
93C441EE0F813A1A00C1A634 /* CollectionCache.h */,
93C441FF0F813AE100C1A634 /* CollectionType.h */,
+ F55B3D7F1251F12D003EF269 /* ColorInputType.cpp */,
+ F55B3D801251F12D003EF269 /* ColorInputType.h */,
BC77D2380FF298080070887B /* DataGridColumn.cpp */,
BC77CFC10FF175550070887B /* DataGridColumn.h */,
BC77CF9E0FF172B30070887B /* DataGridColumn.idl */,
@@ -14157,6 +14273,12 @@
BCBCAE360FF19385000762AE /* DataGridDataSource.h */,
F5D3A57A106B83B300545297 /* DateComponents.cpp */,
F5D3A57B106B83B300545297 /* DateComponents.h */,
+ F55B3D811251F12D003EF269 /* DateInputType.cpp */,
+ F55B3D821251F12D003EF269 /* DateInputType.h */,
+ F55B3D831251F12D003EF269 /* DateTimeInputType.cpp */,
+ F55B3D841251F12D003EF269 /* DateTimeInputType.h */,
+ F55B3D851251F12D003EF269 /* DateTimeLocalInputType.cpp */,
+ F55B3D861251F12D003EF269 /* DateTimeLocalInputType.h */,
BC7DAAEC0FF9615D00CE0138 /* DOMDataGridDataSource.cpp */,
BC7DAAED0FF9615D00CE0138 /* DOMDataGridDataSource.h */,
2ED609BA1145B07100C8684E /* DOMFormData.cpp */,
@@ -14165,10 +14287,16 @@
76FC2B0812370DA0006A991A /* DOMTokenList.cpp */,
76FC2B0912370DA0006A991A /* DOMTokenList.h */,
76FC2B0A12370DA0006A991A /* DOMTokenList.idl */,
+ F55B3D871251F12D003EF269 /* EmailInputType.cpp */,
+ F55B3D881251F12D003EF269 /* EmailInputType.h */,
+ F55B3D891251F12D003EF269 /* FileInputType.cpp */,
+ F55B3D8A1251F12D003EF269 /* FileInputType.h */,
A8136D370973A8E700D74463 /* FormDataList.cpp */,
A8136D360973A8E700D74463 /* FormDataList.h */,
97205AAD123928CA00B17380 /* FTPDirectoryDocument.cpp */,
97205AAE123928CA00B17380 /* FTPDirectoryDocument.h */,
+ F55B3D8B1251F12D003EF269 /* HiddenInputType.cpp */,
+ F55B3D8C1251F12D003EF269 /* HiddenInputType.h */,
BC97E239109144950010D361 /* HTMLAllCollection.cpp */,
BC97E238109144950010D361 /* HTMLAllCollection.h */,
BC97E23C109146F10010D361 /* HTMLAllCollection.idl */,
@@ -14421,30 +14549,64 @@
A77979150D6B9D0C003851B9 /* ImageData.idl */,
97205AB11239291000B17380 /* ImageDocument.cpp */,
97205AB21239291000B17380 /* ImageDocument.h */,
+ F55B3D8D1251F12D003EF269 /* ImageInputType.cpp */,
+ F55B3D8E1251F12D003EF269 /* ImageInputType.h */,
B0149E7B11A4B21500196A7B /* ImageResizerThread.cpp */,
B0149E7C11A4B21500196A7B /* ImageResizerThread.h */,
+ 37E3524A12450C5200BAF5D9 /* InputType.cpp */,
+ 37E3524C12450C6600BAF5D9 /* InputType.h */,
+ F55B3D8F1251F12D003EF269 /* IsIndexInputType.cpp */,
+ F55B3D901251F12D003EF269 /* IsIndexInputType.h */,
A456FA2411AD4A830020B420 /* LabelsNodeList.cpp */,
A456FA2511AD4A830020B420 /* LabelsNodeList.h */,
97205AB31239291000B17380 /* MediaDocument.cpp */,
97205AB41239291000B17380 /* MediaDocument.h */,
E446139B0CD6331000FADA75 /* MediaError.h */,
E446139C0CD6331000FADA75 /* MediaError.idl */,
+ F55B3D911251F12D003EF269 /* MonthInputType.cpp */,
+ F55B3D921251F12D003EF269 /* MonthInputType.h */,
+ F55B3D931251F12D003EF269 /* NumberInputType.cpp */,
+ F55B3D941251F12D003EF269 /* NumberInputType.h */,
+ F55B3D951251F12D003EF269 /* PasswordInputType.cpp */,
+ F55B3D961251F12D003EF269 /* PasswordInputType.h */,
97205AB91239292700B17380 /* PluginDocument.cpp */,
97205ABA1239292700B17380 /* PluginDocument.h */,
+ F55B3D971251F12D003EF269 /* RadioInputType.cpp */,
+ F55B3D981251F12D003EF269 /* RadioInputType.h */,
+ F55B3D991251F12D003EF269 /* RangeInputType.cpp */,
+ F55B3D9A1251F12D003EF269 /* RangeInputType.h */,
+ F55B3D9B1251F12D003EF269 /* ResetInputType.cpp */,
+ F55B3D9C1251F12D003EF269 /* ResetInputType.h */,
+ F55B3D9D1251F12D003EF269 /* SearchInputType.cpp */,
+ F55B3D9E1251F12D003EF269 /* SearchInputType.h */,
A5AFB34D115151A700B045CB /* StepRange.cpp */,
A5AFB34E115151A700B045CB /* StepRange.h */,
+ F55B3D9F1251F12D003EF269 /* SubmitInputType.cpp */,
+ F55B3DA01251F12D003EF269 /* SubmitInputType.h */,
+ F55B3DA11251F12D003EF269 /* TelephoneInputType.cpp */,
+ F55B3DA21251F12D003EF269 /* TelephoneInputType.h */,
97BC84B112371180000C6161 /* TextDocument.cpp */,
97BC84B212371180000C6161 /* TextDocument.h */,
+ F55B3DA31251F12D003EF269 /* TextFieldInputType.cpp */,
+ F55B3DA41251F12D003EF269 /* TextFieldInputType.h */,
+ F55B3DA51251F12D003EF269 /* TextInputType.cpp */,
+ F55B3DA61251F12D003EF269 /* TextInputType.h */,
BCEF45E80E687767001C1287 /* TextMetrics.h */,
BCEF453F0E676AC1001C1287 /* TextMetrics.idl */,
+ F55B3DA71251F12D003EF269 /* TimeInputType.cpp */,
+ F55B3DA81251F12D003EF269 /* TimeInputType.h */,
E446139D0CD6331000FADA75 /* TimeRanges.cpp */,
E446139E0CD6331000FADA75 /* TimeRanges.h */,
E446139F0CD6331000FADA75 /* TimeRanges.idl */,
+ F55B3DA91251F12D003EF269 /* URLInputType.cpp */,
+ F55B3DAA1251F12D003EF269 /* URLInputType.h */,
15C7708B100D3C6A005BA267 /* ValidityState.cpp */,
15C7708A100D3C6A005BA267 /* ValidityState.h */,
15C77089100D3C6A005BA267 /* ValidityState.idl */,
E44613B40CD6344E00FADA75 /* VoidCallback.h */,
E44613A00CD6331000FADA75 /* VoidCallback.idl */,
+ F55B3DAB1251F12D003EF269 /* WeekInputType.cpp */,
+ F55B3DAC1251F12D003EF269 /* WeekInputType.h */,
);
path = html;
sourceTree = "<group>";
@@ -17919,6 +18081,7 @@
BCA8CA6011E4E6D100812FB7 /* BackForwardListImpl.h in Headers */,
BC124EE80C2641CD009E2349 /* BarInfo.h in Headers */,
B2C3DA220D006C1D00EF6F26 /* Base64.h in Headers */,
+ F55B3DAE1251F12D003EF269 /* BaseTextInputType.h in Headers */,
BC9462D8107A7B4C00857193 /* BeforeLoadEvent.h in Headers */,
51721FBB11D2790700638B42 /* BeforeProcessEvent.h in Headers */,
AB23A32809BBA7D00067CC53 /* BeforeTextInsertedEvent.h in Headers */,
@@ -17946,6 +18109,7 @@
93309DDB099E64920056E581 /* BreakBlockquoteCommand.h in Headers */,
599E759011055A1F00D904FA /* Bridge.h in Headers */,
59B5977511086579007159E8 /* BridgeJSC.h in Headers */,
+ F55B3DB01251F12D003EF269 /* ButtonInputType.h in Headers */,
1A569CF80D7E2B82007C3983 /* c_class.h in Headers */,
1A569CFA0D7E2B82007C3983 /* c_instance.h in Headers */,
1A569CFC0D7E2B82007C3983 /* c_runtime.h in Headers */,
@@ -17978,6 +18142,7 @@
6550B6A0099DF0270090D781 /* CharacterData.h in Headers */,
B2C3DA260D006C1D00EF6F26 /* CharacterNames.h in Headers */,
B2C3DA2A0D006C1D00EF6F26 /* CharsetData.h in Headers */,
+ F55B3DB21251F12D003EF269 /* CheckboxInputType.h in Headers */,
A00B721A11DE6428008AB9FF /* CheckedInt.h in Headers */,
93F925430F7EF5B8007E37C9 /* CheckedRadioButtons.h in Headers */,
A81872200977D3C0005826D9 /* ChildNodeList.h in Headers */,
@@ -17996,6 +18161,7 @@
93C442000F813AE100C1A634 /* CollectionType.h in Headers */,
B27535670B053814002CE64F /* Color.h in Headers */,
B22279630D00BF220071B782 /* ColorDistance.h in Headers */,
+ F55B3DB41251F12D003EF269 /* ColorInputType.h in Headers */,
EDE3A5000C7A430600956A37 /* ColorMac.h in Headers */,
9382DF5810A8D5C900925652 /* ColorSpace.h in Headers */,
BCDD454E1236C95C009A7985 /* ColumnInfo.h in Headers */,
@@ -18107,6 +18273,9 @@
BC22746F0E83664500E7F975 /* DataRef.h in Headers */,
BC64641C11D7F416006455B0 /* DatasetDOMStringMap.h in Headers */,
F5D3A57D106B83B300545297 /* DateComponents.h in Headers */,
+ F55B3DB61251F12D003EF269 /* DateInputType.h in Headers */,
+ F55B3DB81251F12D003EF269 /* DateTimeInputType.h in Headers */,
+ F55B3DBA1251F12D003EF269 /* DateTimeLocalInputType.h in Headers */,
A8C228A111D5722E00D5A7D3 /* DecodedDataDocumentParser.h in Headers */,
4162A451101145AE00DFF3ED /* DedicatedWorkerContext.h in Headers */,
41A3D58F101C152D00316D07 /* DedicatedWorkerThread.h in Headers */,
@@ -18914,6 +19083,7 @@
63F5D4F70E8C4B7100C0BD04 /* ElementRareData.h in Headers */,
E415F1840D9A1A830033CE97 /* ElementTimeControl.h in Headers */,
A8CFF6BE0A156118000A4234 /* EllipsisBox.h in Headers */,
+ F55B3DBC1251F12D003EF269 /* EmailInputType.h in Headers */,
B25599A50D00D8BA00BB825C /* EmptyClients.h in Headers */,
5DC87EF011716DF2001C0E6D /* EmptyProtocolDefinitions.h in Headers */,
A8EA7EC20A1945D000A8EF5F /* Entity.h in Headers */,
@@ -18957,6 +19127,7 @@
89878562122CA064003AABDA /* FileEntry.h in Headers */,
976D6C83122B8A3D001FD1F7 /* FileError.h in Headers */,
2EDF369F122C94C8002F7D4E /* FileException.h in Headers */,
+ F55B3DBE1251F12D003EF269 /* FileInputType.h in Headers */,
976D6C86122B8A3D001FD1F7 /* FileList.h in Headers */,
976D6C89122B8A3D001FD1F7 /* FileReader.h in Headers */,
2EDF369D122C94B4002F7D4E /* FileReaderSync.h in Headers */,
@@ -19048,6 +19219,7 @@
C50B561712119D23008B46E0 /* GroupSettings.h in Headers */,
7693BAD2106C2DCA007B0823 /* HaltablePlugin.h in Headers */,
8482B7461198C35400BFB005 /* HashChangeEvent.h in Headers */,
+ F55B3DC01251F12D003EF269 /* HiddenInputType.h in Headers */,
BC94D1540C275C8B006BC617 /* History.h in Headers */,
97DCE20210807C750057D394 /* HistoryController.h in Headers */,
51741D110B07259A00ED442C /* HistoryItem.h in Headers */,
@@ -19207,6 +19379,7 @@
BCA979171215D055005C485C /* ImageBufferData.h in Headers */,
A779791A0D6B9D0C003851B9 /* ImageData.h in Headers */,
97205AB61239291000B17380 /* ImageDocument.h in Headers */,
+ F55B3DC21251F12D003EF269 /* ImageInputType.h in Headers */,
089582560E857A7E00F82C83 /* ImageLoader.h in Headers */,
BC7F44A80B9E324E00A9D081 /* ImageObserver.h in Headers */,
B0149E8011A4B21500196A7B /* ImageResizerThread.h in Headers */,
@@ -19221,6 +19394,7 @@
BCE789161120D6080060ECE5 /* InlineIterator.h in Headers */,
BCEA485A097D93020094C9E4 /* InlineTextBox.h in Headers */,
08591AA50F085C4E009BACB1 /* InputElement.h in Headers */,
+ 37E3524D12450C6600BAF5D9 /* InputType.h in Headers */,
93309DEA099E64920056E581 /* InsertIntoTextNodeCommand.h in Headers */,
93309DEC099E64920056E581 /* InsertLineBreakCommand.h in Headers */,
D07DEABA0A36554A00CA30F8 /* InsertListCommand.h in Headers */,
@@ -19255,6 +19429,7 @@
B27535740B053814002CE64F /* IntRect.h in Headers */,
B27535750B053814002CE64F /* IntSize.h in Headers */,
B27535760B053814002CE64F /* IntSizeHash.h in Headers */,
+ F55B3DC41251F12D003EF269 /* IsIndexInputType.h in Headers */,
59E560A71105336600AA1258 /* JavaClassJSC.h in Headers */,
59A9E7B21104759400DFB4C1 /* JavaInstanceJSC.h in Headers */,
E16982681134680700894115 /* JavaRuntimeObject.h in Headers */,
@@ -19784,6 +19959,7 @@
8987856A122CA064003AABDA /* MetadataCallback.h in Headers */,
BC772C4F0C4EB3040083285F /* MIMETypeRegistry.h in Headers */,
C6D74AD509AA282E000B0A52 /* ModifySelectionListLevel.h in Headers */,
+ F55B3DC61251F12D003EF269 /* MonthInputType.h in Headers */,
85031B460A44EFC700F992E0 /* MouseEvent.h in Headers */,
935C476309AC4CE600A6AAB4 /* MouseEventWithHitTestResults.h in Headers */,
85031B480A44EFC700F992E0 /* MouseRelatedEvent.h in Headers */,
@@ -19821,6 +19997,7 @@
1A569D100D7E2B82007C3983 /* npruntime_internal.h in Headers */,
1A569D110D7E2B82007C3983 /* npruntime_priv.h in Headers */,
1A27CF97118A354C0041D632 /* nptypes.h in Headers */,
+ F55B3DC81251F12D003EF269 /* NumberInputType.h in Headers */,
1A569D120D7E2B82007C3983 /* objc_class.h in Headers */,
1A569D140D7E2B82007C3983 /* objc_header.h in Headers */,
1A569D150D7E2B82007C3983 /* objc_instance.h in Headers */,
@@ -19848,6 +20025,7 @@
0885068011DA045B00182B98 /* PaintPhase.h in Headers */,
A80E6CFB0A1989CA007FB8C5 /* Pair.h in Headers */,
BC76AC130DD7AD5C00415F34 /* ParserUtilities.h in Headers */,
+ F55B3DCA1251F12D003EF269 /* PasswordInputType.h in Headers */,
4B2708C70AF19EE40065127F /* Pasteboard.h in Headers */,
A7D3C5240B576B4B002CA450 /* PasteboardHelper.h in Headers */,
B27535800B053814002CE64F /* Path.h in Headers */,
@@ -19900,9 +20078,11 @@
E4D687790ED7AE4F006EA978 /* PurgeableBuffer.h in Headers */,
550A0BCA085F6039007353D6 /* QualifiedName.h in Headers */,
B22279720D00BF220071B782 /* RadialGradientAttributes.h in Headers */,
+ F55B3DCC1251F12D003EF269 /* RadioInputType.h in Headers */,
93F1991808245E59001E9ABC /* Range.h in Headers */,
93D9D53C0DA27E180077216C /* RangeBoundaryPoint.h in Headers */,
D23CA56C0AB0EB8D005108A5 /* RangeException.h in Headers */,
+ F55B3DCE1251F12D003EF269 /* RangeInputType.h in Headers */,
A84D827C11D333ED00972990 /* RawDataDocumentParser.h in Headers */,
BC4368E80C226E32005EFB5F /* Rect.h in Headers */,
979F43D41075E44A0000F83B /* RedirectScheduler.h in Headers */,
@@ -20024,6 +20204,7 @@
A89CCC530F44E98100B5DA10 /* ReplaceNodeWithSpanCommand.h in Headers */,
93309E0A099E64920056E581 /* ReplaceSelectionCommand.h in Headers */,
BCB16C2F0979C3BD00467741 /* Request.h in Headers */,
+ F55B3DD01251F12D003EF269 /* ResetInputType.h in Headers */,
934F71420D5A6F4400018D69 /* ResourceError.h in Headers */,
934F713C0D5A6F1900018D69 /* ResourceErrorBase.h in Headers */,
514C76790CE923A1007EF3CD /* ResourceHandle.h in Headers */,
@@ -20086,6 +20267,7 @@
5D925B680F64D4DD00B847F0 /* ScrollBehavior.h in Headers */,
93C09C860B0657AA005ABD4D /* ScrollTypes.h in Headers */,
BC6D6E2609AF943500F59759 /* ScrollView.h in Headers */,
+ F55B3DD21251F12D003EF269 /* SearchInputType.h in Headers */,
AB7170890B3118080017123E /* SearchPopupMenu.h in Headers */,
D39D009D11F907E6006041F2 /* SearchPopupMenuMac.h in Headers */,
33C0CCD5112C5E6200CE057D /* SecureTextInput.h in Headers */,
@@ -20196,6 +20378,7 @@
BC5EB8100E81F2CE00B25965 /* StyleTransformData.h in Headers */,
BC5EB69A0E81DA6300B25965 /* StyleVisualData.h in Headers */,
D000ED2811C1B9CD00C47726 /* SubframeLoader.h in Headers */,
+ F55B3DD41251F12D003EF269 /* SubmitInputType.h in Headers */,
656D37480ADBA5DE00A4554D /* SubresourceLoader.h in Headers */,
1A3178930B20A81600316987 /* SubresourceLoaderClient.h in Headers */,
659A7D130B6DB4D9001155B3 /* SubstituteData.h in Headers */,
@@ -20390,6 +20573,7 @@
93E62D9B0985F41600E1B5E3 /* SystemTime.h in Headers */,
A8CFF0510A154F09000A4234 /* TableLayout.h in Headers */,
BCE3BEC30D222B1D007E06E4 /* TagNodeList.h in Headers */,
+ F55B3DD61251F12D003EF269 /* TelephoneInputType.h in Headers */,
6550B6A6099DF0270090D781 /* Text.h in Headers */,
93309E17099E64920056E581 /* TextAffinity.h in Headers */,
B2C3DA340D006C1D00EF6F26 /* TextBoundaries.h in Headers */,
@@ -20409,7 +20593,9 @@
C105DA640F3AA6B8001DD44F /* TextEncodingDetector.h in Headers */,
B2C3DA490D006C1D00EF6F26 /* TextEncodingRegistry.h in Headers */,
933A14300B7D188600A53FFD /* TextEvent.h in Headers */,
+ F55B3DD81251F12D003EF269 /* TextFieldInputType.h in Headers */,
93309E18099E64920056E581 /* TextGranularity.h in Headers */,
+ F55B3DDA1251F12D003EF269 /* TextInputType.h in Headers */,
93309E1C099E64920056E581 /* TextIterator.h in Headers */,
BCEF45E90E687767001C1287 /* TextMetrics.h in Headers */,
930FC68A1072B9280045293E /* TextRenderingMode.h in Headers */,
@@ -20428,6 +20614,7 @@
51DF6D7E0B92A16D00C2DC85 /* ThreadCheck.h in Headers */,
E1FF57A30F01255B00891EBB /* ThreadGlobalData.h in Headers */,
185BCF290F3279CE000EA262 /* ThreadTimers.h in Headers */,
+ F55B3DDC1251F12D003EF269 /* TimeInputType.h in Headers */,
7553CFE8108F473F00EA281E /* TimelineRecordFactory.h in Headers */,
9305B24D098F1B6B00C28855 /* Timer.h in Headers */,
E44613B00CD6331000FADA75 /* TimeRanges.h in Headers */,
@@ -20454,6 +20641,7 @@
B2C3DA4D0D006C1D00EF6F26 /* UnicodeRange.h in Headers */,
E4AFCFA50DAF29A300F5F55C /* UnitBezier.h in Headers */,
D086FE9809D53AAB005BC74D /* UnlinkCommand.h in Headers */,
+ F55B3DDE1251F12D003EF269 /* URLInputType.h in Headers */,
656581B209D14EE6000E61D7 /* UserAgentStyleSheets.h in Headers */,
003F1FEA11E6AB43008258D9 /* UserContentTypes.h in Headers */,
BCACF3BD1072921A00C0C8A3 /* UserContentURLPattern.h in Headers */,
@@ -20514,6 +20702,7 @@
7637C543112E7B7E003D6CDC /* WebSocketHandshakeRequest.h in Headers */,
767F99C011A119560080C51D /* WebSocketHandshakeResponse.h in Headers */,
0FCF332D0F2B9A25004B6795 /* WebTiledLayer.h in Headers */,
+ F55B3DE01251F12D003EF269 /* WeekInputType.h in Headers */,
85031B510A44EFC700F992E0 /* WheelEvent.h in Headers */,
9380F47409A11AB4001FDB34 /* Widget.h in Headers */,
939B02EF0EA2DBC400C54570 /* WidthIterator.h in Headers */,
@@ -20971,6 +21160,7 @@
BCA8CA5F11E4E6D100812FB7 /* BackForwardListImpl.cpp in Sources */,
BC124EE70C2641CD009E2349 /* BarInfo.cpp in Sources */,
B2C3DA210D006C1D00EF6F26 /* Base64.cpp in Sources */,
+ F55B3DAD1251F12D003EF269 /* BaseTextInputType.cpp in Sources */,
5172204B11D2960500638B42 /* BeforeProcessEvent.cpp in Sources */,
AB23A32709BBA7D00067CC53 /* BeforeTextInsertedEvent.cpp in Sources */,
85031B3C0A44EFC700F992E0 /* BeforeUnloadEvent.cpp in Sources */,
@@ -20989,6 +21179,7 @@
BCEA4854097D93020094C9E4 /* break_lines.cpp in Sources */,
93309DDA099E64920056E581 /* BreakBlockquoteCommand.cpp in Sources */,
59B597731108656B007159E8 /* BridgeJSC.cpp in Sources */,
+ F55B3DAF1251F12D003EF269 /* ButtonInputType.cpp in Sources */,
1A569CF70D7E2B82007C3983 /* c_class.cpp in Sources */,
1A569CF90D7E2B82007C3983 /* c_instance.cpp in Sources */,
1A569CFB0D7E2B82007C3983 /* c_runtime.cpp in Sources */,
@@ -21016,6 +21207,7 @@
514185EF0CD65F0400763C99 /* ChangeVersionWrapper.cpp in Sources */,
6550B69F099DF0270090D781 /* CharacterData.cpp in Sources */,
9326DC0C09DAD5D600AFC847 /* CharsetData.cpp in Sources */,
+ F55B3DB11251F12D003EF269 /* CheckboxInputType.cpp in Sources */,
93F925440F7EF5B8007E37C9 /* CheckedRadioButtons.cpp in Sources */,
A81872250977D3C0005826D9 /* ChildNodeList.cpp in Sources */,
14D8238B0AF92DF60004F057 /* Chrome.cpp in Sources */,
@@ -21030,6 +21222,7 @@
B27535660B053814002CE64F /* Color.cpp in Sources */,
0FCF33240F2B9715004B6795 /* ColorCG.cpp in Sources */,
B22279620D00BF220071B782 /* ColorDistance.cpp in Sources */,
+ F55B3DB31251F12D003EF269 /* ColorInputType.cpp in Sources */,
B27535770B053814002CE64F /* ColorMac.mm in Sources */,
6550B6A1099DF0270090D781 /* Comment.cpp in Sources */,
37C236101097EE7700EF9F72 /* ComplexTextController.cpp in Sources */,
@@ -21118,6 +21311,9 @@
BC77D1FD0FF28D9B0070887B /* DataGridColumnList.cpp in Sources */,
BC64641D11D7F416006455B0 /* DatasetDOMStringMap.cpp in Sources */,
F5D3A57C106B83B300545297 /* DateComponents.cpp in Sources */,
+ F55B3DB51251F12D003EF269 /* DateInputType.cpp in Sources */,
+ F55B3DB71251F12D003EF269 /* DateTimeInputType.cpp in Sources */,
+ F55B3DB91251F12D003EF269 /* DateTimeLocalInputType.cpp in Sources */,
A8C228A211D5722E00D5A7D3 /* DecodedDataDocumentParser.cpp in Sources */,
4162A450101145AE00DFF3ED /* DedicatedWorkerContext.cpp in Sources */,
41A3D58E101C152D00316D07 /* DedicatedWorkerThread.cpp in Sources */,
@@ -21456,6 +21652,7 @@
ED501DC60B249F2900AE18D9 /* EditorMac.mm in Sources */,
A8C4A80809D563270003AC8D /* Element.cpp in Sources */,
A8CFF6CB0A1561CD000A4234 /* EllipsisBox.cpp in Sources */,
+ F55B3DBB1251F12D003EF269 /* EmailInputType.cpp in Sources */,
A8EA7EC30A1945D000A8EF5F /* Entity.cpp in Sources */,
A8EA7EC10A1945D000A8EF5F /* EntityReference.cpp in Sources */,
8987855B122CA064003AABDA /* Entry.cpp in Sources */,
@@ -21491,6 +21688,7 @@
934FE9E50B5CA539003E4A73 /* FileChooser.cpp in Sources */,
066C772D0AB603D200238CC4 /* FileChooserMac.mm in Sources */,
89878561122CA064003AABDA /* FileEntry.cpp in Sources */,
+ F55B3DBD1251F12D003EF269 /* FileInputType.cpp in Sources */,
976D6C85122B8A3D001FD1F7 /* FileList.cpp in Sources */,
976D6C88122B8A3D001FD1F7 /* FileReader.cpp in Sources */,
2EDF369C122C94B4002F7D4E /* FileReaderSync.cpp in Sources */,
@@ -21569,6 +21767,7 @@
0F580B050F12A2550051D689 /* GraphicsLayerCA.mm in Sources */,
B2A015AA0AF6CD53006BCE0E /* GraphicsTypes.cpp in Sources */,
C50B561612119D23008B46E0 /* GroupSettings.cpp in Sources */,
+ F55B3DBF1251F12D003EF269 /* HiddenInputType.cpp in Sources */,
BC94D1530C275C8B006BC617 /* History.cpp in Sources */,
97DCE20110807C750057D394 /* HistoryController.cpp in Sources */,
51741D120B07259A00ED442C /* HistoryItem.cpp in Sources */,
@@ -21715,6 +21914,7 @@
B275355E0B053814002CE64F /* ImageCG.cpp in Sources */,
A77979190D6B9D0C003851B9 /* ImageData.cpp in Sources */,
97205AB51239291000B17380 /* ImageDocument.cpp in Sources */,
+ F55B3DC11251F12D003EF269 /* ImageInputType.cpp in Sources */,
089582550E857A7E00F82C83 /* ImageLoader.cpp in Sources */,
B275357B0B053814002CE64F /* ImageMac.mm in Sources */,
B0149E7F11A4B21500196A7B /* ImageResizerThread.cpp in Sources */,
@@ -21728,6 +21928,7 @@
A8CFF5E40A155A05000A4234 /* InlineFlowBox.cpp in Sources */,
BCEA4859097D93020094C9E4 /* InlineTextBox.cpp in Sources */,
08700BE70F086C5300919419 /* InputElement.cpp in Sources */,
+ 37E3524B12450C5200BAF5D9 /* InputType.cpp in Sources */,
93309DE9099E64920056E581 /* InsertIntoTextNodeCommand.cpp in Sources */,
93309DEB099E64920056E581 /* InsertLineBreakCommand.cpp in Sources */,
D07DEAB90A36554A00CA30F8 /* InsertListCommand.cpp in Sources */,
@@ -21761,6 +21962,7 @@
B275357D0B053814002CE64F /* IntRectMac.mm in Sources */,
B27535620B053814002CE64F /* IntSizeCG.cpp in Sources */,
B275357E0B053814002CE64F /* IntSizeMac.mm in Sources */,
+ F55B3DC31251F12D003EF269 /* IsIndexInputType.cpp in Sources */,
59E560A91105336F00AA1258 /* JavaClassJSC.cpp in Sources */,
59A9E7B01104758800DFB4C1 /* JavaInstanceJSC.cpp in Sources */,
E1698264113467F300894115 /* JavaRuntimeObject.cpp in Sources */,
@@ -22378,6 +22580,7 @@
BC772C4E0C4EB3040083285F /* MIMETypeRegistry.cpp in Sources */,
BC772C5E0C4EB3440083285F /* MIMETypeRegistryMac.mm in Sources */,
C6D74AE409AA290A000B0A52 /* ModifySelectionListLevel.cpp in Sources */,
+ F55B3DC51251F12D003EF269 /* MonthInputType.cpp in Sources */,
85031B450A44EFC700F992E0 /* MouseEvent.cpp in Sources */,
93EB355F09E37FD600F43799 /* MouseEventWithHitTestResults.cpp in Sources */,
85031B470A44EFC700F992E0 /* MouseRelatedEvent.cpp in Sources */,
@@ -22403,6 +22606,7 @@
3390CA550FFC157B00921962 /* NotificationCenter.cpp in Sources */,
1A569D0A0D7E2B82007C3983 /* NP_jsobject.cpp in Sources */,
1A569D0D0D7E2B82007C3983 /* npruntime.cpp in Sources */,
+ F55B3DC71251F12D003EF269 /* NumberInputType.cpp in Sources */,
1A569D130D7E2B82007C3983 /* objc_class.mm in Sources */,
1A569D160D7E2B82007C3983 /* objc_instance.mm in Sources */,
1A569D180D7E2B82007C3983 /* objc_runtime.mm in Sources */,
@@ -22424,6 +22628,7 @@
1C26497C0D7E24EC00BD10F2 /* PageMac.cpp in Sources */,
E1284AEA10447DEE00EAEB52 /* PageTransitionEvent.cpp in Sources */,
51E1ECC20C91C90400DC255B /* PageURLRecord.cpp in Sources */,
+ F55B3DC91251F12D003EF269 /* PasswordInputType.cpp in Sources */,
4B2709830AF2E5E00065127F /* PasteboardMac.mm in Sources */,
B275357F0B053814002CE64F /* Path.cpp in Sources */,
B27535630B053814002CE64F /* PathCG.cpp in Sources */,
@@ -22460,7 +22665,9 @@
514C76740CE923A1007EF3CD /* ProtectionSpace.cpp in Sources */,
E4D687770ED7AE3D006EA978 /* PurgeableBufferMac.cpp in Sources */,
550A0BC9085F6039007353D6 /* QualifiedName.cpp in Sources */,
+ F55B3DCB1251F12D003EF269 /* RadioInputType.cpp in Sources */,
93F19AB908245E59001E9ABC /* Range.cpp in Sources */,
+ F55B3DCD1251F12D003EF269 /* RangeInputType.cpp in Sources */,
979F43D31075E44A0000F83B /* RedirectScheduler.cpp in Sources */,
85031B4B0A44EFC700F992E0 /* RegisteredEventListener.cpp in Sources */,
B2C3DA2C0D006C1D00EF6F26 /* RegularExpression.cpp in Sources */,
@@ -22578,6 +22785,7 @@
A89CCC520F44E98100B5DA10 /* ReplaceNodeWithSpanCommand.cpp in Sources */,
93309E09099E64920056E581 /* ReplaceSelectionCommand.cpp in Sources */,
BCB16C2E0979C3BD00467741 /* Request.cpp in Sources */,
+ F55B3DCF1251F12D003EF269 /* ResetInputType.cpp in Sources */,
934F713E0D5A6F2800018D69 /* ResourceErrorBase.cpp in Sources */,
514C76500CE9234E007EF3CD /* ResourceErrorMac.mm in Sources */,
514C76780CE923A1007EF3CD /* ResourceHandle.cpp in Sources */,
@@ -22632,6 +22840,7 @@
5D925B670F64D4DD00B847F0 /* ScrollBehavior.cpp in Sources */,
BC2441C40E8B65D00055320F /* ScrollView.cpp in Sources */,
9353676B09AED88B00D35CD6 /* ScrollViewMac.mm in Sources */,
+ F55B3DD11251F12D003EF269 /* SearchInputType.cpp in Sources */,
AB7170A00B31193B0017123E /* SearchPopupMenuMac.mm in Sources */,
33C0CCD4112C5E6200CE057D /* SecureTextInput.cpp in Sources */,
BCD0E0FA0E972C3500265DEA /* SecurityOrigin.cpp in Sources */,
@@ -22733,6 +22942,7 @@
BC5EB80F0E81F2CE00B25965 /* StyleTransformData.cpp in Sources */,
BC5EB6990E81DA6300B25965 /* StyleVisualData.cpp in Sources */,
D000ED2711C1B9CD00C47726 /* SubframeLoader.cpp in Sources */,
+ F55B3DD31251F12D003EF269 /* SubmitInputType.cpp in Sources */,
93E227E40AF589AD00D48324 /* SubresourceLoader.cpp in Sources */,
93B2D8180F9920EE006AE6B2 /* SuddenTermination.mm in Sources */,
62C1217C11AB9E77003C462C /* SuspendableTimer.cpp in Sources */,
@@ -22912,6 +23122,7 @@
B2E4EC970D00C22B00432643 /* SVGZoomEvent.cpp in Sources */,
6582A16309999D6D00BEEB6D /* SystemTimeMac.cpp in Sources */,
BCE3BEC20D222B1D007E06E4 /* TagNodeList.cpp in Sources */,
+ F55B3DD51251F12D003EF269 /* TelephoneInputType.cpp in Sources */,
6550B6A5099DF0270090D781 /* Text.cpp in Sources */,
B2AFFC970D00A5DF0030074D /* TextBoundaries.mm in Sources */,
B2C3DA370D006C1D00EF6F26 /* TextBreakIteratorICU.cpp in Sources */,
@@ -22929,6 +23140,8 @@
C105DA620F3AA68F001DD44F /* TextEncodingDetectorICU.cpp in Sources */,
B2C3DA480D006C1D00EF6F26 /* TextEncodingRegistry.cpp in Sources */,
933A142E0B7D188600A53FFD /* TextEvent.cpp in Sources */,
+ F55B3DD71251F12D003EF269 /* TextFieldInputType.cpp in Sources */,
+ F55B3DD91251F12D003EF269 /* TextInputType.cpp in Sources */,
93309E1B099E64920056E581 /* TextIterator.cpp in Sources */,
93F19A9D08245E59001E9ABC /* TextResourceDecoder.cpp in Sources */,
B2C3DA4A0D006C1D00EF6F26 /* TextStream.cpp in Sources */,
@@ -22941,6 +23154,7 @@
51DF6D800B92A18E00C2DC85 /* ThreadCheck.mm in Sources */,
E1FF57A60F01256B00891EBB /* ThreadGlobalData.cpp in Sources */,
185BCF280F3279CE000EA262 /* ThreadTimers.cpp in Sources */,
+ F55B3DDB1251F12D003EF269 /* TimeInputType.cpp in Sources */,
7553CFE9108F473F00EA281E /* TimelineRecordFactory.cpp in Sources */,
93309EA4099EB78C0056E581 /* Timer.cpp in Sources */,
E44613AF0CD6331000FADA75 /* TimeRanges.cpp in Sources */,
@@ -22961,6 +23175,7 @@
49EECDEE10503C2400099FAB /* Uint8Array.cpp in Sources */,
B2C3DA4C0D006C1D00EF6F26 /* UnicodeRange.cpp in Sources */,
D086FE9909D53AAB005BC74D /* UnlinkCommand.cpp in Sources */,
+ F55B3DDD1251F12D003EF269 /* URLInputType.cpp in Sources */,
65DF326109D1E199000BE325 /* UserAgentStyleSheetsData.cpp in Sources */,
BCACF3BC1072921A00C0C8A3 /* UserContentURLPattern.cpp in Sources */,
2542F4DA1166C25A00E89A86 /* UserGestureIndicator.cpp in Sources */,
@@ -23005,6 +23220,7 @@
7637C541112E7B74003D6CDC /* WebSocketHandshakeRequest.cpp in Sources */,
767F99BE11A1194A0080C51D /* WebSocketHandshakeResponse.cpp in Sources */,
0FCF332C0F2B9A25004B6795 /* WebTiledLayer.mm in Sources */,
+ F55B3DDF1251F12D003EF269 /* WeekInputType.cpp in Sources */,
85031B500A44EFC700F992E0 /* WheelEvent.cpp in Sources */,
935C477309AC4D7700A6AAB4 /* WheelEventMac.mm in Sources */,
9380F47309A11AB4001FDB34 /* Widget.cpp in Sources */,
diff --git a/WebCore/html/BaseTextInputType.cpp b/WebCore/html/BaseTextInputType.cpp
new file mode 100644
index 0000000..3e57ace
--- /dev/null
+++ b/WebCore/html/BaseTextInputType.cpp
@@ -0,0 +1,52 @@
+/*
+ * This file is part of the WebKit project.
+ *
+ * Copyright (C) 2009 Michelangelo De Simone <micdesim at gmail.com>
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "config.h"
+#include "BaseTextInputType.h"
+
+#include "HTMLInputElement.h"
+#include "HTMLNames.h"
+#include "RegularExpression.h"
+
+namespace WebCore {
+
+using namespace HTMLNames;
+
+bool BaseTextInputType::isTextType() const
+{
+ return true;
+}
+
+bool BaseTextInputType::patternMismatch(const String& value) const
+{
+ const AtomicString& pattern = element()->fastGetAttribute(patternAttr);
+ // Empty values can't be mismatched
+ if (pattern.isEmpty() || value.isEmpty())
+ return false;
+ int matchLength = 0;
+ int valueLength = value.length();
+ int matchOffset = RegularExpression(pattern, TextCaseSensitive).match(value, 0, &matchLength);
+ return matchOffset || matchLength != valueLength;
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/BaseTextInputType.h b/WebCore/html/BaseTextInputType.h
new file mode 100644
index 0000000..9bd6c6d
--- /dev/null
+++ b/WebCore/html/BaseTextInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef BaseTextInputType_h
+#define BaseTextInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+// Base of email, password, search, tel, text, and URL types.
+// They support maxlength, selection functions, and so on.
+class BaseTextInputType : public TextFieldInputType {
+protected:
+ BaseTextInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual bool isTextType() const;
+ virtual bool patternMismatch(const String&) const;
+};
+
+} // namespace WebCore
+
+#endif // BaseTextInputType_h
diff --git a/WebCore/html/ButtonInputType.cpp b/WebCore/html/ButtonInputType.cpp
new file mode 100644
index 0000000..7f56970
--- /dev/null
+++ b/WebCore/html/ButtonInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "ButtonInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> ButtonInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new ButtonInputType(element));
+}
+
+const AtomicString& ButtonInputType::formControlType() const
+{
+ return InputTypeNames::button();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/ButtonInputType.h b/WebCore/html/ButtonInputType.h
new file mode 100644
index 0000000..99b3574
--- /dev/null
+++ b/WebCore/html/ButtonInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef ButtonInputType_h
+#define ButtonInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class ButtonInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ ButtonInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // ButtonInputType_h
diff --git a/WebCore/html/CheckboxInputType.cpp b/WebCore/html/CheckboxInputType.cpp
new file mode 100644
index 0000000..1c7ea4b
--- /dev/null
+++ b/WebCore/html/CheckboxInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "CheckboxInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> CheckboxInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new CheckboxInputType(element));
+}
+
+const AtomicString& CheckboxInputType::formControlType() const
+{
+ return InputTypeNames::checkbox();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/CheckboxInputType.h b/WebCore/html/CheckboxInputType.h
new file mode 100644
index 0000000..6a152e9
--- /dev/null
+++ b/WebCore/html/CheckboxInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef CheckboxInputType_h
+#define CheckboxInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class CheckboxInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ CheckboxInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // CheckboxInputType_h
diff --git a/WebCore/html/ColorInputType.cpp b/WebCore/html/ColorInputType.cpp
new file mode 100644
index 0000000..c68acea
--- /dev/null
+++ b/WebCore/html/ColorInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "ColorInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> ColorInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new ColorInputType(element));
+}
+
+const AtomicString& ColorInputType::formControlType() const
+{
+ return InputTypeNames::color();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/ColorInputType.h b/WebCore/html/ColorInputType.h
new file mode 100644
index 0000000..7259346
--- /dev/null
+++ b/WebCore/html/ColorInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef ColorInputType_h
+#define ColorInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class ColorInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ ColorInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // ButtonInputType_h
diff --git a/WebCore/html/DateInputType.cpp b/WebCore/html/DateInputType.cpp
new file mode 100644
index 0000000..0605846
--- /dev/null
+++ b/WebCore/html/DateInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "DateInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> DateInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new DateInputType(element));
+}
+
+const AtomicString& DateInputType::formControlType() const
+{
+ return InputTypeNames::date();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/DateInputType.h b/WebCore/html/DateInputType.h
new file mode 100644
index 0000000..e6f60d7
--- /dev/null
+++ b/WebCore/html/DateInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef DateInputType_h
+#define DateInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class DateInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ DateInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // DateInputType_h
diff --git a/WebCore/html/DateTimeInputType.cpp b/WebCore/html/DateTimeInputType.cpp
new file mode 100644
index 0000000..0bf5e04
--- /dev/null
+++ b/WebCore/html/DateTimeInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "DateTimeInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> DateTimeInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new DateTimeInputType(element));
+}
+
+const AtomicString& DateTimeInputType::formControlType() const
+{
+ return InputTypeNames::datetime();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/DateTimeInputType.h b/WebCore/html/DateTimeInputType.h
new file mode 100644
index 0000000..f24ebfb
--- /dev/null
+++ b/WebCore/html/DateTimeInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef DateTimeInputType_h
+#define DateTimeInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class DateTimeInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ DateTimeInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // DateTimeInputType_h
diff --git a/WebCore/html/DateTimeLocalInputType.cpp b/WebCore/html/DateTimeLocalInputType.cpp
new file mode 100644
index 0000000..33c6cfa
--- /dev/null
+++ b/WebCore/html/DateTimeLocalInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "DateTimeLocalInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> DateTimeLocalInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new DateTimeLocalInputType(element));
+}
+
+const AtomicString& DateTimeLocalInputType::formControlType() const
+{
+ return InputTypeNames::datetimelocal();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/DateTimeLocalInputType.h b/WebCore/html/DateTimeLocalInputType.h
new file mode 100644
index 0000000..1a3d866
--- /dev/null
+++ b/WebCore/html/DateTimeLocalInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef DateTimeLocalInputType_h
+#define DateTimeLocalInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class DateTimeLocalInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ DateTimeLocalInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // DateTimeLocalInputType_h
diff --git a/WebCore/html/EmailInputType.cpp b/WebCore/html/EmailInputType.cpp
new file mode 100644
index 0000000..4472310
--- /dev/null
+++ b/WebCore/html/EmailInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "EmailInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> EmailInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new EmailInputType(element));
+}
+
+const AtomicString& EmailInputType::formControlType() const
+{
+ return InputTypeNames::email();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/EmailInputType.h b/WebCore/html/EmailInputType.h
new file mode 100644
index 0000000..bbf6f73
--- /dev/null
+++ b/WebCore/html/EmailInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef EmailInputType_h
+#define EmailInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class EmailInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ EmailInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // ButtonInputType_h
diff --git a/WebCore/html/FileInputType.cpp b/WebCore/html/FileInputType.cpp
new file mode 100644
index 0000000..0e08362
--- /dev/null
+++ b/WebCore/html/FileInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "FileInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> FileInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new FileInputType(element));
+}
+
+const AtomicString& FileInputType::formControlType() const
+{
+ return InputTypeNames::file();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/FileInputType.h b/WebCore/html/FileInputType.h
new file mode 100644
index 0000000..cebfab7
--- /dev/null
+++ b/WebCore/html/FileInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef FileInputType_h
+#define FileInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class FileInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ FileInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // FileInputType_h
diff --git a/WebCore/html/HTMLInputElement.cpp b/WebCore/html/HTMLInputElement.cpp
index b06aa35..6c19e38 100644
--- a/WebCore/html/HTMLInputElement.cpp
+++ b/WebCore/html/HTMLInputElement.cpp
@@ -51,6 +51,7 @@
#include "HTMLNames.h"
#include "HTMLOptionElement.h"
#include "HTMLParserIdioms.h"
+#include "InputType.h"
#include "KeyboardEvent.h"
#include "LocalizedStrings.h"
#include "MouseEvent.h"
@@ -161,6 +162,7 @@ HTMLInputElement::HTMLInputElement(const QualifiedName& tagName, Document* docum
, m_autocomplete(Uninitialized)
, m_autofilled(false)
, m_inited(false)
+ , m_inputType(InputType::createText(this))
{
ASSERT(hasTagName(inputTag) || hasTagName(isindexTag));
}
@@ -345,17 +347,7 @@ bool HTMLInputElement::valueMissing(const String& value) const
bool HTMLInputElement::patternMismatch(const String& value) const
{
- if (!isTextType())
- return false;
- const AtomicString& pattern = getAttribute(patternAttr);
- // Empty values can't be mismatched
- if (pattern.isEmpty() || value.isEmpty())
- return false;
- RegularExpression patternRegExp(pattern, TextCaseSensitive);
- int matchLength = 0;
- int valueLength = value.length();
- int matchOffset = patternRegExp.match(value, 0, &matchLength);
- return matchOffset || matchLength != valueLength;
+ return m_inputType->patternMismatch(value);
}
bool HTMLInputElement::tooLong(const String& value, NeedsToCheckDirtyFlag check) const
@@ -911,6 +903,7 @@ void HTMLInputElement::updateType()
bool wasPasswordField = deprecatedInputType() == PASSWORD;
bool didRespectHeightAndWidth = respectHeightAndWidthAttrs();
m_deprecatedTypeNumber = newType;
+ m_inputType = InputType::create(this, typeString);
setNeedsWillValidateCheck();
bool willStoreValue = storesValueSeparateFromAttribute();
bool isPasswordField = deprecatedInputType() == PASSWORD;
@@ -959,42 +952,9 @@ void HTMLInputElement::updateType()
m_imageLoader.clear();
}
-static const AtomicString* createFormControlTypes()
-{
- AtomicString* types = new AtomicString[HTMLInputElement::deprecatedNumberOfTypes];
- // The values must be lowercased because they will be the return values of
- // input.type and it must be lowercase according to DOM Level 2.
- types[HTMLInputElement::BUTTON] = "button";
- types[HTMLInputElement::CHECKBOX] = "checkbox";
- types[HTMLInputElement::COLOR] = "color";
- types[HTMLInputElement::DATE] = "date";
- types[HTMLInputElement::DATETIME] = "datetime";
- types[HTMLInputElement::DATETIMELOCAL] = "datetime-local";
- types[HTMLInputElement::EMAIL] = "email";
- types[HTMLInputElement::FILE] = "file";
- types[HTMLInputElement::HIDDEN] = "hidden";
- types[HTMLInputElement::IMAGE] = "image";
- types[HTMLInputElement::ISINDEX] = emptyAtom;
- types[HTMLInputElement::MONTH] = "month";
- types[HTMLInputElement::NUMBER] = "number";
- types[HTMLInputElement::PASSWORD] = "password";
- types[HTMLInputElement::RADIO] = "radio";
- types[HTMLInputElement::RANGE] = "range";
- types[HTMLInputElement::RESET] = "reset";
- types[HTMLInputElement::SEARCH] = "search";
- types[HTMLInputElement::SUBMIT] = "submit";
- types[HTMLInputElement::TELEPHONE] = "tel";
- types[HTMLInputElement::TEXT] = "text";
- types[HTMLInputElement::TIME] = "time";
- types[HTMLInputElement::URL] = "url";
- types[HTMLInputElement::WEEK] = "week";
- return types;
-}
-
const AtomicString& HTMLInputElement::formControlType() const
{
- static const AtomicString* formControlTypes = createFormControlTypes();
- return formControlTypes[deprecatedInputType()];
+ return m_inputType->formControlType();
}
bool HTMLInputElement::saveFormControlState(String& result) const
@@ -1481,70 +1441,12 @@ void HTMLInputElement::reset()
bool HTMLInputElement::isTextField() const
{
- switch (deprecatedInputType()) {
- case COLOR:
- case DATE:
- case DATETIME:
- case DATETIMELOCAL:
- case EMAIL:
- case ISINDEX:
- case MONTH:
- case NUMBER:
- case PASSWORD:
- case SEARCH:
- case TELEPHONE:
- case TEXT:
- case TIME:
- case URL:
- case WEEK:
- return true;
- case BUTTON:
- case CHECKBOX:
- case FILE:
- case HIDDEN:
- case IMAGE:
- case RADIO:
- case RANGE:
- case RESET:
- case SUBMIT:
- return false;
- }
- ASSERT_NOT_REACHED();
- return false;
+ return m_inputType->isTextField();
}
bool HTMLInputElement::isTextType() const
{
- switch (deprecatedInputType()) {
- case EMAIL:
- case PASSWORD:
- case SEARCH:
- case TELEPHONE:
- case TEXT:
- case URL:
- return true;
- case BUTTON:
- case CHECKBOX:
- case COLOR:
- case DATE:
- case DATETIME:
- case DATETIMELOCAL:
- case FILE:
- case HIDDEN:
- case IMAGE:
- case ISINDEX:
- case MONTH:
- case NUMBER:
- case RADIO:
- case RANGE:
- case RESET:
- case SUBMIT:
- case TIME:
- case WEEK:
- return false;
- }
- ASSERT_NOT_REACHED();
- return false;
+ return m_inputType->isTextType();
}
void HTMLInputElement::setChecked(bool nowChecked, bool sendChangeEvent)
diff --git a/WebCore/html/HTMLInputElement.h b/WebCore/html/HTMLInputElement.h
index e068c8c..88e2bf7 100644
--- a/WebCore/html/HTMLInputElement.h
+++ b/WebCore/html/HTMLInputElement.h
@@ -35,6 +35,7 @@ class FileList;
class HTMLDataListElement;
class HTMLImageLoader;
class HTMLOptionElement;
+class InputType;
class KURL;
class VisibleSelection;
@@ -65,9 +66,7 @@ public:
MONTH,
TIME,
WEEK,
- // If you add new types or change the order of enum values, update deprecatedNumberOfTypes below.
};
- static const int deprecatedNumberOfTypes = WEEK + 1;
static PassRefPtr<HTMLInputElement> create(const QualifiedName&, Document*, HTMLFormElement*);
virtual ~HTMLInputElement();
@@ -375,6 +374,7 @@ private:
#if ENABLE(DATALIST)
bool m_hasNonEmptyList : 1;
#endif
+ OwnPtr<InputType> m_inputType;
};
} //namespace
diff --git a/WebCore/html/HiddenInputType.cpp b/WebCore/html/HiddenInputType.cpp
new file mode 100644
index 0000000..d97fe3a
--- /dev/null
+++ b/WebCore/html/HiddenInputType.cpp
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "HiddenInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> HiddenInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new HiddenInputType(element));
+}
+
+const AtomicString& HiddenInputType::formControlType() const {
+ return InputTypeNames::hidden();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/HiddenInputType.h b/WebCore/html/HiddenInputType.h
new file mode 100644
index 0000000..564f99e
--- /dev/null
+++ b/WebCore/html/HiddenInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef HiddenInputType_h
+#define HiddenInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class HiddenInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ HiddenInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // HiddenInputType_h
diff --git a/WebCore/html/ImageInputType.cpp b/WebCore/html/ImageInputType.cpp
new file mode 100644
index 0000000..78b3981
--- /dev/null
+++ b/WebCore/html/ImageInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "ImageInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> ImageInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new ImageInputType(element));
+}
+
+const AtomicString& ImageInputType::formControlType() const
+{
+ return InputTypeNames::image();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/ImageInputType.h b/WebCore/html/ImageInputType.h
new file mode 100644
index 0000000..00ac77b
--- /dev/null
+++ b/WebCore/html/ImageInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef ImageInputType_h
+#define ImageInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class ImageInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ ImageInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // ImageInputType_h
diff --git a/WebCore/html/InputType.cpp b/WebCore/html/InputType.cpp
new file mode 100644
index 0000000..c3435f7
--- /dev/null
+++ b/WebCore/html/InputType.cpp
@@ -0,0 +1,277 @@
+/*
+ * Copyright (C) 1999 Lars Knoll (knoll at kde.org)
+ * (C) 1999 Antti Koivisto (koivisto at kde.org)
+ * (C) 2001 Dirk Mueller (mueller at kde.org)
+ * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved.
+ * (C) 2006 Alexey Proskuryakov (ap at nypop.com)
+ * Copyright (C) 2007 Samuel Weinig (sam at webkit.org)
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "config.h"
+#include "InputType.h"
+
+#include "ButtonInputType.h"
+#include "CheckboxInputType.h"
+#include "ColorInputType.h"
+#include "DateInputType.h"
+#include "DateTimeInputType.h"
+#include "DateTimeLocalInputType.h"
+#include "EmailInputType.h"
+#include "FileInputType.h"
+#include "HTMLInputElement.h"
+#include "HiddenInputType.h"
+#include "ImageInputType.h"
+#include "IsIndexInputType.h"
+#include "MonthInputType.h"
+#include "NumberInputType.h"
+#include "PasswordInputType.h"
+#include "RadioInputType.h"
+#include "RangeInputType.h"
+#include "RegularExpression.h"
+#include "ResetInputType.h"
+#include "SearchInputType.h"
+#include "SubmitInputType.h"
+#include "TelephoneInputType.h"
+#include "TextInputType.h"
+#include "TimeInputType.h"
+#include "URLInputType.h"
+#include "WeekInputType.h"
+#include <wtf/HashMap.h>
+#include <wtf/text/StringHash.h>
+
+namespace WebCore {
+
+typedef HashMap<String, PassOwnPtr<InputType> (*)(HTMLInputElement*), CaseFoldingHash> InputTypeFactoryMap;
+static PassOwnPtr<InputTypeFactoryMap> createInputTypeFactoryMap()
+{
+ OwnPtr<InputTypeFactoryMap> map = adoptPtr(new InputTypeFactoryMap);
+ map->add(InputTypeNames::button(), ButtonInputType::create);
+ map->add(InputTypeNames::checkbox(), CheckboxInputType::create);
+ map->add(InputTypeNames::color(), ColorInputType::create);
+ map->add(InputTypeNames::date(), DateInputType::create);
+ map->add(InputTypeNames::datetime(), DateTimeInputType::create);
+ map->add(InputTypeNames::datetimelocal(), DateTimeLocalInputType::create);
+ map->add(InputTypeNames::email(), EmailInputType::create);
+ map->add(InputTypeNames::file(), FileInputType::create);
+ map->add(InputTypeNames::hidden(), HiddenInputType::create);
+ map->add(InputTypeNames::image(), ImageInputType::create);
+ map->add(InputTypeNames::isindex(), IsIndexInputType::create);
+ map->add(InputTypeNames::month(), MonthInputType::create);
+ map->add(InputTypeNames::number(), NumberInputType::create);
+ map->add(InputTypeNames::password(), PasswordInputType::create);
+ map->add(InputTypeNames::radio(), RadioInputType::create);
+ map->add(InputTypeNames::range(), RangeInputType::create);
+ map->add(InputTypeNames::reset(), ResetInputType::create);
+ map->add(InputTypeNames::search(), SearchInputType::create);
+ map->add(InputTypeNames::submit(), SubmitInputType::create);
+ map->add(InputTypeNames::telephone(), TelephoneInputType::create);
+ map->add(InputTypeNames::time(), TimeInputType::create);
+ map->add(InputTypeNames::url(), URLInputType::create);
+ map->add(InputTypeNames::week(), WeekInputType::create);
+ // No need to register "text" because it is the default type.
+ return map.release();
+}
+
+PassOwnPtr<InputType> InputType::create(HTMLInputElement* element, const AtomicString& typeName)
+{
+ static const InputTypeFactoryMap* factoryMap = createInputTypeFactoryMap().leakPtr();
+ PassOwnPtr<InputType> (*factory)(HTMLInputElement*) = typeName.isEmpty() ? 0 : factoryMap->get(typeName);
+ if (!factory)
+ factory = TextInputType::create;
+ return factory(element);
+}
+
+PassOwnPtr<InputType> InputType::createText(HTMLInputElement* element)
+{
+ return TextInputType::create(element);
+}
+
+InputType::~InputType()
+{
+}
+
+bool InputType::isTextField() const
+{
+ return false;
+}
+
+bool InputType::isTextType() const
+{
+ return false;
+}
+
+bool InputType::patternMismatch(const String&) const
+{
+ return false;
+}
+
+namespace InputTypeNames {
+
+// The type names must be lowercased because they will be the return values of
+// input.type and input.type must be lowercase according to DOM Level 2.
+
+const AtomicString& button()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("button"));
+ return name;
+}
+
+const AtomicString& checkbox()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("checkbox"));
+ return name;
+}
+
+const AtomicString& color()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("color"));
+ return name;
+}
+
+const AtomicString& date()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("date"));
+ return name;
+}
+
+const AtomicString& datetime()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("datetime"));
+ return name;
+}
+
+const AtomicString& datetimelocal()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("datetime-local"));
+ return name;
+}
+
+const AtomicString& email()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("email"));
+ return name;
+}
+
+const AtomicString& file()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("file"));
+ return name;
+}
+
+const AtomicString& hidden()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("hidden"));
+ return name;
+}
+
+const AtomicString& image()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("image"));
+ return name;
+}
+
+const AtomicString& isindex()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("khtml_isindex"));
+ return name;
+}
+
+const AtomicString& month()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("month"));
+ return name;
+}
+
+const AtomicString& number()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("number"));
+ return name;
+}
+
+const AtomicString& password()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("password"));
+ return name;
+}
+
+const AtomicString& radio()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("radio"));
+ return name;
+}
+
+const AtomicString& range()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("range"));
+ return name;
+}
+
+const AtomicString& reset()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("reset"));
+ return name;
+}
+
+const AtomicString& search()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("search"));
+ return name;
+}
+
+const AtomicString& submit()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("submit"));
+ return name;
+}
+
+const AtomicString& telephone()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("tel"));
+ return name;
+}
+
+const AtomicString& text()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("text"));
+ return name;
+}
+
+const AtomicString& time()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("time"));
+ return name;
+}
+
+const AtomicString& url()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("url"));
+ return name;
+}
+
+const AtomicString& week()
+{
+ DEFINE_STATIC_LOCAL(AtomicString, name, ("week"));
+ return name;
+}
+
+} // namespace WebCore::InpuTypeNames
+
+} // namespace WebCore
+
diff --git a/WebCore/html/InputType.h b/WebCore/html/InputType.h
new file mode 100644
index 0000000..3141f34
--- /dev/null
+++ b/WebCore/html/InputType.h
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef InputType_h
+#define InputType_h
+
+#include <wtf/Forward.h>
+#include <wtf/Noncopyable.h>
+
+namespace WebCore {
+
+class HTMLInputElement;
+
+class InputType : public Noncopyable {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*, const AtomicString&);
+ static PassOwnPtr<InputType> createText(HTMLInputElement*);
+ virtual ~InputType();
+
+ virtual bool isTextField() const;
+ virtual bool isTextType() const;
+ virtual const AtomicString& formControlType() const = 0;
+
+ virtual bool patternMismatch(const String&) const;
+
+protected:
+ InputType(HTMLInputElement* element) : m_element(element) { }
+ HTMLInputElement* element() const { return m_element; }
+
+private:
+ // Raw pointer because the HTMLInputElement object owns this InputType object.
+ HTMLInputElement* m_element;
+};
+
+namespace InputTypeNames {
+
+const AtomicString& button();
+const AtomicString& checkbox();
+const AtomicString& color();
+const AtomicString& date();
+const AtomicString& datetime();
+const AtomicString& datetimelocal();
+const AtomicString& email();
+const AtomicString& file();
+const AtomicString& hidden();
+const AtomicString& image();
+const AtomicString& isindex();
+const AtomicString& month();
+const AtomicString& number();
+const AtomicString& password();
+const AtomicString& radio();
+const AtomicString& range();
+const AtomicString& reset();
+const AtomicString& search();
+const AtomicString& submit();
+const AtomicString& telephone();
+const AtomicString& text();
+const AtomicString& time();
+const AtomicString& url();
+const AtomicString& week();
+
+} // namespace WebCore::InputTypeNames
+
+} // namespace WebCore
+
+#endif
diff --git a/WebCore/html/IsIndexInputType.cpp b/WebCore/html/IsIndexInputType.cpp
new file mode 100644
index 0000000..80e0617
--- /dev/null
+++ b/WebCore/html/IsIndexInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "IsIndexInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> IsIndexInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new IsIndexInputType(element));
+}
+
+const AtomicString& IsIndexInputType::formControlType() const
+{
+ return emptyAtom;
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/IsIndexInputType.h b/WebCore/html/IsIndexInputType.h
new file mode 100644
index 0000000..93a1c08
--- /dev/null
+++ b/WebCore/html/IsIndexInputType.h
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef IsIndexInputType_h
+#define IsIndexInputType_h
+
+#include "TextFieldInputType.h"
+#include <wtf/text/AtomicString.h>
+
+namespace WebCore {
+
+class IsIndexInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ IsIndexInputType(HTMLInputElement* element) : TextFieldInputType(element) { };
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // IsIndexInputType_h
diff --git a/WebCore/html/MonthInputType.cpp b/WebCore/html/MonthInputType.cpp
new file mode 100644
index 0000000..54f78c6
--- /dev/null
+++ b/WebCore/html/MonthInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "MonthInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> MonthInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new MonthInputType(element));
+}
+
+const AtomicString& MonthInputType::formControlType() const
+{
+ return InputTypeNames::month();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/MonthInputType.h b/WebCore/html/MonthInputType.h
new file mode 100644
index 0000000..d605ffa
--- /dev/null
+++ b/WebCore/html/MonthInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef MonthInputType_h
+#define MonthInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class MonthInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ MonthInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // MonthInputType_h
diff --git a/WebCore/html/NumberInputType.cpp b/WebCore/html/NumberInputType.cpp
new file mode 100644
index 0000000..9aba5c3
--- /dev/null
+++ b/WebCore/html/NumberInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "NumberInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> NumberInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new NumberInputType(element));
+}
+
+const AtomicString& NumberInputType::formControlType() const
+{
+ return InputTypeNames::number();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/NumberInputType.h b/WebCore/html/NumberInputType.h
new file mode 100644
index 0000000..5347249
--- /dev/null
+++ b/WebCore/html/NumberInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef NumberInputType_h
+#define NumberInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class NumberInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ NumberInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // NumberInputType_h
diff --git a/WebCore/html/PasswordInputType.cpp b/WebCore/html/PasswordInputType.cpp
new file mode 100644
index 0000000..a645f96
--- /dev/null
+++ b/WebCore/html/PasswordInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "PasswordInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> PasswordInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new PasswordInputType(element));
+}
+
+const AtomicString& PasswordInputType::formControlType() const
+{
+ return InputTypeNames::password();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/PasswordInputType.h b/WebCore/html/PasswordInputType.h
new file mode 100644
index 0000000..db13449
--- /dev/null
+++ b/WebCore/html/PasswordInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef PasswordInputType_h
+#define PasswordInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class PasswordInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ PasswordInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // PasswordInputType_h
diff --git a/WebCore/html/RadioInputType.cpp b/WebCore/html/RadioInputType.cpp
new file mode 100644
index 0000000..a1c8d04
--- /dev/null
+++ b/WebCore/html/RadioInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "RadioInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> RadioInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new RadioInputType(element));
+}
+
+const AtomicString& RadioInputType::formControlType() const
+{
+ return InputTypeNames::radio();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/RadioInputType.h b/WebCore/html/RadioInputType.h
new file mode 100644
index 0000000..180c6dd
--- /dev/null
+++ b/WebCore/html/RadioInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef RadioInputType_h
+#define RadioInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class RadioInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ RadioInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // RadioInputType_h
diff --git a/WebCore/html/RangeInputType.cpp b/WebCore/html/RangeInputType.cpp
new file mode 100644
index 0000000..f5f7322
--- /dev/null
+++ b/WebCore/html/RangeInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "RangeInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> RangeInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new RangeInputType(element));
+}
+
+const AtomicString& RangeInputType::formControlType() const
+{
+ return InputTypeNames::range();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/RangeInputType.h b/WebCore/html/RangeInputType.h
new file mode 100644
index 0000000..d42c617
--- /dev/null
+++ b/WebCore/html/RangeInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef RangeInputType_h
+#define RangeInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class RangeInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ RangeInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // RangeInputType_h
diff --git a/WebCore/html/ResetInputType.cpp b/WebCore/html/ResetInputType.cpp
new file mode 100644
index 0000000..8b18a8d
--- /dev/null
+++ b/WebCore/html/ResetInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "ResetInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> ResetInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new ResetInputType(element));
+}
+
+const AtomicString& ResetInputType::formControlType() const
+{
+ return InputTypeNames::reset();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/ResetInputType.h b/WebCore/html/ResetInputType.h
new file mode 100644
index 0000000..e0d8997
--- /dev/null
+++ b/WebCore/html/ResetInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef ResetInputType_h
+#define ResetInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class ResetInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ ResetInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // ResetInputType_h
diff --git a/WebCore/html/SearchInputType.cpp b/WebCore/html/SearchInputType.cpp
new file mode 100644
index 0000000..6f3a01c
--- /dev/null
+++ b/WebCore/html/SearchInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "SearchInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> SearchInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new SearchInputType(element));
+}
+
+const AtomicString& SearchInputType::formControlType() const
+{
+ return InputTypeNames::search();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/SearchInputType.h b/WebCore/html/SearchInputType.h
new file mode 100644
index 0000000..edffdb0
--- /dev/null
+++ b/WebCore/html/SearchInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef SearchInputType_h
+#define SearchInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class SearchInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ SearchInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // SearchInputType_h
diff --git a/WebCore/html/SubmitInputType.cpp b/WebCore/html/SubmitInputType.cpp
new file mode 100644
index 0000000..dd13e6b
--- /dev/null
+++ b/WebCore/html/SubmitInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "SubmitInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> SubmitInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new SubmitInputType(element));
+}
+
+const AtomicString& SubmitInputType::formControlType() const
+{
+ return InputTypeNames::submit();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/SubmitInputType.h b/WebCore/html/SubmitInputType.h
new file mode 100644
index 0000000..7ea448e
--- /dev/null
+++ b/WebCore/html/SubmitInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef SubmitInputType_h
+#define SubmitInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+class SubmitInputType : public InputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ SubmitInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // SubmitInputType_h
diff --git a/WebCore/html/TelephoneInputType.cpp b/WebCore/html/TelephoneInputType.cpp
new file mode 100644
index 0000000..27d66ce
--- /dev/null
+++ b/WebCore/html/TelephoneInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "TelephoneInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> TelephoneInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new TelephoneInputType(element));
+}
+
+const AtomicString& TelephoneInputType::formControlType() const
+{
+ return InputTypeNames::telephone();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/TelephoneInputType.h b/WebCore/html/TelephoneInputType.h
new file mode 100644
index 0000000..9458f50
--- /dev/null
+++ b/WebCore/html/TelephoneInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef TelephoneInputType_h
+#define TelephoneInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class TelephoneInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ TelephoneInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // TelephoneInputType_h
diff --git a/WebCore/html/TextFieldInputType.cpp b/WebCore/html/TextFieldInputType.cpp
new file mode 100644
index 0000000..e681b40
--- /dev/null
+++ b/WebCore/html/TextFieldInputType.cpp
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+bool TextFieldInputType::isTextField() const
+{
+ return true;
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/TextFieldInputType.h b/WebCore/html/TextFieldInputType.h
new file mode 100644
index 0000000..fb33a01
--- /dev/null
+++ b/WebCore/html/TextFieldInputType.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef TextFieldInputType_h
+#define TextFieldInputType_h
+
+#include "InputType.h"
+
+namespace WebCore {
+
+// The class represents types of which UI contain text fields.
+// It supports not only the types for BaseTextInputType but also type=number.
+class TextFieldInputType : public InputType {
+protected:
+ TextFieldInputType(HTMLInputElement* element) : InputType(element) { }
+ virtual bool isTextField() const;
+};
+
+} // namespace WebCore
+
+#endif // TextFieldInputType_h
diff --git a/WebCore/html/TextInputType.cpp b/WebCore/html/TextInputType.cpp
new file mode 100644
index 0000000..23a8679
--- /dev/null
+++ b/WebCore/html/TextInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "TextInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> TextInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new TextInputType(element));
+}
+
+const AtomicString& TextInputType::formControlType() const
+{
+ return InputTypeNames::text();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/TextInputType.h b/WebCore/html/TextInputType.h
new file mode 100644
index 0000000..89fd9b0
--- /dev/null
+++ b/WebCore/html/TextInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef TextInputType_h
+#define TextInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class TextInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ TextInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // TextInputType_h
diff --git a/WebCore/html/TimeInputType.cpp b/WebCore/html/TimeInputType.cpp
new file mode 100644
index 0000000..1564bc5
--- /dev/null
+++ b/WebCore/html/TimeInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "TimeInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> TimeInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new TimeInputType(element));
+}
+
+const AtomicString& TimeInputType::formControlType() const
+{
+ return InputTypeNames::time();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/TimeInputType.h b/WebCore/html/TimeInputType.h
new file mode 100644
index 0000000..9530f7d
--- /dev/null
+++ b/WebCore/html/TimeInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef TimeInputType_h
+#define TimeInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class TimeInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ TimeInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // TimeInputType_h
diff --git a/WebCore/html/URLInputType.cpp b/WebCore/html/URLInputType.cpp
new file mode 100644
index 0000000..2afdcde
--- /dev/null
+++ b/WebCore/html/URLInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "URLInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> URLInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new URLInputType(element));
+}
+
+const AtomicString& URLInputType::formControlType() const
+{
+ return InputTypeNames::url();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/URLInputType.h b/WebCore/html/URLInputType.h
new file mode 100644
index 0000000..85d4f9f
--- /dev/null
+++ b/WebCore/html/URLInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef URLInputType_h
+#define URLInputType_h
+
+#include "BaseTextInputType.h"
+
+namespace WebCore {
+
+class URLInputType : public BaseTextInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ URLInputType(HTMLInputElement* element) : BaseTextInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // URLInputType_h
diff --git a/WebCore/html/WeekInputType.cpp b/WebCore/html/WeekInputType.cpp
new file mode 100644
index 0000000..0b4ab30
--- /dev/null
+++ b/WebCore/html/WeekInputType.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "WeekInputType.h"
+
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+PassOwnPtr<InputType> WeekInputType::create(HTMLInputElement* element)
+{
+ return adoptPtr(new WeekInputType(element));
+}
+
+const AtomicString& WeekInputType::formControlType() const
+{
+ return InputTypeNames::week();
+}
+
+} // namespace WebCore
diff --git a/WebCore/html/WeekInputType.h b/WebCore/html/WeekInputType.h
new file mode 100644
index 0000000..7b6ee23
--- /dev/null
+++ b/WebCore/html/WeekInputType.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef WeekInputType_h
+#define WeekInputType_h
+
+#include "TextFieldInputType.h"
+
+namespace WebCore {
+
+class WeekInputType : public TextFieldInputType {
+public:
+ static PassOwnPtr<InputType> create(HTMLInputElement*);
+
+private:
+ WeekInputType(HTMLInputElement* element) : TextFieldInputType(element) { }
+ virtual const AtomicString& formControlType() const;
+};
+
+} // namespace WebCore
+
+#endif // WeekInputType_h
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list