Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(604)

Unified Diff: Source/core/html/HTMLInputElement.cpp

Issue 14859003: Remove the compile time flag for DATALIST Element. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebasing after r150849 Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/html/HTMLInputElement.h ('k') | Source/core/html/HTMLInputElement.idl » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/html/HTMLInputElement.cpp
diff --git a/Source/core/html/HTMLInputElement.cpp b/Source/core/html/HTMLInputElement.cpp
index e6655c4e0056eb3a8929433d30f8412ad9d96421..7330bee480368c06758a73ffda7fd7ebcf170718 100644
--- a/Source/core/html/HTMLInputElement.cpp
+++ b/Source/core/html/HTMLInputElement.cpp
@@ -32,6 +32,7 @@
#include "CSSPropertyNames.h"
#include "CSSValueKeywords.h"
#include "HTMLNames.h"
+#include "RuntimeEnabledFeatures.h"
#include "bindings/v8/ScriptEventListener.h"
#include "core/accessibility/AXObjectCache.h"
#include "core/css/resolver/StyleResolver.h"
@@ -62,7 +63,6 @@
#include "core/html/parser/HTMLParserIdioms.h"
#include "core/page/Frame.h"
#include "core/page/FrameView.h"
-#include "RuntimeEnabledFeatures.h"
#include "core/page/UseCounter.h"
#include "core/platform/DateTimeChooser.h"
#include "core/platform/Language.h"
@@ -78,17 +78,12 @@
#include "core/html/ColorInputType.h"
#endif
-#if ENABLE(INPUT_SPEECH)
-#include "RuntimeEnabledFeatures.h"
-#endif
-
using namespace std;
namespace WebCore {
using namespace HTMLNames;
-#if ENABLE(DATALIST_ELEMENT)
class ListAttributeTargetObserver : IdTargetObserver {
WTF_MAKE_FAST_ALLOCATED;
public:
@@ -100,7 +95,6 @@ private:
HTMLInputElement* m_element;
};
-#endif
// FIXME: According to HTML4, the length attribute's value can be arbitrarily
// large. However, due to https://bugs.webkit.org/show_bug.cgi?id=14536 things
@@ -122,9 +116,7 @@ HTMLInputElement::HTMLInputElement(const QualifiedName& tagName, Document* docum
, m_isActivatedSubmit(false)
, m_autocomplete(Uninitialized)
, m_isAutofilled(false)
-#if ENABLE(DATALIST_ELEMENT)
, m_hasNonEmptyList(false)
-#endif
, m_stateRestored(false)
, m_parsingInProgress(createdByParser)
, m_valueAttributeWasUpdatedAfterParsing(false)
@@ -345,12 +337,10 @@ StepRange HTMLInputElement::createStepRange(AnyStepHandling anyStepHandling) con
return m_inputType->createStepRange(anyStepHandling);
}
-#if ENABLE(DATALIST_ELEMENT)
Decimal HTMLInputElement::findClosestTickMarkValue(const Decimal& value)
{
return m_inputType->findClosestTickMarkValue(value);
}
-#endif
void HTMLInputElement::stepUp(int n, ExceptionCode& ec)
{
@@ -700,9 +690,7 @@ void HTMLInputElement::parseAttribute(const QualifiedName& name, const AtomicStr
} else if (name == readonlyAttr) {
HTMLTextFormControlElement::parseAttribute(name, value);
m_inputType->readonlyAttributeChanged();
- }
-#if ENABLE(DATALIST_ELEMENT)
- else if (name == listAttr) {
+ } else if (name == listAttr) {
m_hasNonEmptyList = !value.isEmpty();
if (m_hasNonEmptyList) {
resetListAttributeTargetObserver();
@@ -710,7 +698,6 @@ void HTMLInputElement::parseAttribute(const QualifiedName& name, const AtomicStr
}
UseCounter::count(document(), UseCounter::ListAttribute);
}
-#endif
#if ENABLE(INPUT_SPEECH)
else if (name == webkitspeechAttr) {
if (renderer()) {
@@ -1425,9 +1412,7 @@ Node::InsertionNotificationRequest HTMLInputElement::insertedInto(ContainerNode*
HTMLTextFormControlElement::insertedInto(insertionPoint);
if (insertionPoint->inDocument() && !form())
addToRadioButtonGroup();
-#if ENABLE(DATALIST_ELEMENT)
resetListAttributeTargetObserver();
-#endif
return InsertionDone;
}
@@ -1437,9 +1422,7 @@ void HTMLInputElement::removedFrom(ContainerNode* insertionPoint)
removeFromRadioButtonGroup();
HTMLTextFormControlElement::removedFrom(insertionPoint);
ASSERT(!inDocument());
-#if ENABLE(DATALIST_ELEMENT)
resetListAttributeTargetObserver();
-#endif
}
void HTMLInputElement::didMoveToNewDocument(Document* oldDocument)
@@ -1489,7 +1472,6 @@ void HTMLInputElement::selectColorInColorChooser(const Color& color)
}
#endif
-#if ENABLE(DATALIST_ELEMENT)
HTMLElement* HTMLInputElement::list() const
{
return dataList();
@@ -1524,7 +1506,6 @@ void HTMLInputElement::listAttributeTargetChanged()
{
m_inputType->listAttributeTargetChanged();
}
-#endif // ENABLE(DATALIST_ELEMENT)
bool HTMLInputElement::isSteppable() const
{
@@ -1787,7 +1768,6 @@ void HTMLInputElement::setWidth(unsigned width)
setAttribute(widthAttr, String::number(width));
}
-#if ENABLE(DATALIST_ELEMENT)
PassOwnPtr<ListAttributeTargetObserver> ListAttributeTargetObserver::create(const AtomicString& id, HTMLInputElement* element)
{
return adoptPtr(new ListAttributeTargetObserver(id, element));
@@ -1803,7 +1783,6 @@ void ListAttributeTargetObserver::idTargetChanged()
{
m_element->listAttributeTargetChanged();
}
-#endif
void HTMLInputElement::setRangeText(const String& replacement, ExceptionCode& ec)
{
@@ -1853,18 +1832,18 @@ bool HTMLInputElement::setupDateTimeChooserParameters(DateTimeChooserParameters&
parameters.anchorRectInRootView = document()->view()->contentsToRootView(pixelSnappedBoundingBox());
parameters.currentValue = value();
parameters.isAnchorElementRTL = computedStyle()->direction() == RTL;
-#if ENABLE(DATALIST_ELEMENT)
- if (HTMLDataListElement* dataList = this->dataList()) {
- RefPtr<HTMLCollection> options = dataList->options();
- for (unsigned i = 0; HTMLOptionElement* option = toHTMLOptionElement(options->item(i)); ++i) {
- if (!isValidValue(option->value()))
- continue;
- parameters.suggestionValues.append(sanitizeValue(option->value()));
- parameters.localizedSuggestionValues.append(localizeValue(option->value()));
- parameters.suggestionLabels.append(option->value() == option->label() ? String() : option->label());
+ if (RuntimeEnabledFeatures::dataListElementEnabled()) {
+ if (HTMLDataListElement* dataList = this->dataList()) {
+ RefPtr<HTMLCollection> options = dataList->options();
+ for (unsigned i = 0; HTMLOptionElement* option = toHTMLOptionElement(options->item(i)); ++i) {
+ if (!isValidValue(option->value()))
+ continue;
+ parameters.suggestionValues.append(sanitizeValue(option->value()));
+ parameters.localizedSuggestionValues.append(localizeValue(option->value()));
+ parameters.suggestionLabels.append(option->value() == option->label() ? String() : option->label());
+ }
}
}
-#endif
return true;
}
@@ -1876,9 +1855,7 @@ void HTMLInputElement::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) con
info.addMember(m_valueIfDirty, "valueIfDirty");
info.addMember(m_suggestedValue, "suggestedValue");
info.addMember(m_inputType, "inputType");
-#if ENABLE(DATALIST_ELEMENT)
info.addMember(m_listAttributeTargetObserver, "listAttributeTargetObserver");
-#endif
}
#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
« no previous file with comments | « Source/core/html/HTMLInputElement.h ('k') | Source/core/html/HTMLInputElement.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698