summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/html
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-11-09 12:15:52 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2012-11-09 12:16:06 +0100
commitde4f791e30be4e4239b381c11745ffa4d87ddb8b (patch)
tree885e3a5d6670828b454cf676b4d42f78e28b1f0e /Source/WebCore/html
parentb022df48697d40cdabdeafb2c29bb14fe489b6fe (diff)
Imported WebKit commit e2c32e2f53e02d388e70b9db88b91d8d9d28fc84 (http://svn.webkit.org/repository/webkit/trunk@133952)
Revert back to an older snapshot that should build on ARM
Diffstat (limited to 'Source/WebCore/html')
-rw-r--r--Source/WebCore/html/FileInputType.cpp2
-rw-r--r--Source/WebCore/html/FormController.cpp4
-rw-r--r--Source/WebCore/html/HTMLButtonElement.cpp6
-rw-r--r--Source/WebCore/html/HTMLDetailsElement.cpp2
-rw-r--r--Source/WebCore/html/HTMLFieldSetElement.cpp2
-rw-r--r--Source/WebCore/html/HTMLKeygenElement.cpp4
-rw-r--r--Source/WebCore/html/HTMLOptGroupElement.cpp2
-rw-r--r--Source/WebCore/html/HTMLOutputElement.cpp2
-rw-r--r--Source/WebCore/html/HTMLSelectElement.cpp4
-rw-r--r--Source/WebCore/html/HTMLTextAreaElement.cpp2
-rw-r--r--Source/WebCore/html/HTMLTextFormControlElement.cpp6
-rw-r--r--Source/WebCore/html/parser/HTMLEntityParser.cpp2
-rw-r--r--Source/WebCore/html/parser/HTMLTokenizer.cpp2
-rw-r--r--Source/WebCore/html/shadow/ContentSelectorQuery.cpp104
-rw-r--r--Source/WebCore/html/shadow/ContentSelectorQuery.h8
-rw-r--r--Source/WebCore/html/shadow/DateTimeFieldElements.cpp20
-rw-r--r--Source/WebCore/html/shadow/DetailsMarkerControl.cpp2
-rw-r--r--Source/WebCore/html/shadow/HTMLContentElement.cpp109
-rw-r--r--Source/WebCore/html/shadow/HTMLContentElement.h24
-rw-r--r--Source/WebCore/html/shadow/HTMLShadowElement.cpp6
-rw-r--r--Source/WebCore/html/shadow/HTMLShadowElement.h7
-rw-r--r--Source/WebCore/html/shadow/ImageInnerElement.cpp2
-rw-r--r--Source/WebCore/html/shadow/InsertionPoint.h4
-rw-r--r--Source/WebCore/html/shadow/MediaControlElements.cpp44
-rw-r--r--Source/WebCore/html/shadow/MediaControlRootElement.cpp2
-rw-r--r--Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp4
-rw-r--r--Source/WebCore/html/shadow/MediaControlRootElementChromiumAndroid.cpp2
-rw-r--r--Source/WebCore/html/shadow/MeterShadowElement.cpp10
-rw-r--r--Source/WebCore/html/shadow/ProgressShadowElement.cpp6
-rw-r--r--Source/WebCore/html/shadow/SliderThumbElement.cpp8
-rw-r--r--Source/WebCore/html/shadow/SpinButtonElement.cpp2
-rw-r--r--Source/WebCore/html/shadow/TextControlInnerElements.cpp10
-rw-r--r--Source/WebCore/html/track/TextTrackCue.cpp8
-rw-r--r--Source/WebCore/html/track/TextTrackCue.h1
-rw-r--r--Source/WebCore/html/track/WebVTTTokenizer.cpp2
35 files changed, 200 insertions, 225 deletions
diff --git a/Source/WebCore/html/FileInputType.cpp b/Source/WebCore/html/FileInputType.cpp
index f6105ca94..89fcc878e 100644
--- a/Source/WebCore/html/FileInputType.cpp
+++ b/Source/WebCore/html/FileInputType.cpp
@@ -82,7 +82,7 @@ UploadButtonElement::UploadButtonElement(Document* document)
const AtomicString& UploadButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-file-upload-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-file-upload-button"));
return pseudoId;
}
diff --git a/Source/WebCore/html/FormController.cpp b/Source/WebCore/html/FormController.cpp
index 8a8af05a9..7f87b97ff 100644
--- a/Source/WebCore/html/FormController.cpp
+++ b/Source/WebCore/html/FormController.cpp
@@ -272,7 +272,7 @@ Vector<String> SavedFormState::getReferencedFilePaths() const
Vector<String> toReturn;
for (FormElementStateMap::const_iterator it = m_stateForNewFormElements.begin(); it != m_stateForNewFormElements.end(); ++it) {
const FormElementKey& key = it->key;
- if (!equal(key.type(), "file", 4))
+ if (AtomicString(key.type()) != AtomicString("file"))
continue;
const Deque<FormControlState>& queue = it->value;
for (Deque<FormControlState>::const_iterator queIterator = queue.begin(); queIterator != queue.end(); ++queIterator) {
@@ -344,7 +344,7 @@ AtomicString FormKeyGenerator::formKey(const HTMLFormControlElementWithState& co
{
HTMLFormElement* form = ownerFormForState(control);
if (!form) {
- DEFINE_STATIC_LOCAL(AtomicString, formKeyForNoOwner, ("No owner", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, formKeyForNoOwner, ("No owner"));
return formKeyForNoOwner;
}
FormToKeyMap::const_iterator it = m_formToKeyMap.find(form);
diff --git a/Source/WebCore/html/HTMLButtonElement.cpp b/Source/WebCore/html/HTMLButtonElement.cpp
index 205e96269..cbd1f2998 100644
--- a/Source/WebCore/html/HTMLButtonElement.cpp
+++ b/Source/WebCore/html/HTMLButtonElement.cpp
@@ -71,15 +71,15 @@ const AtomicString& HTMLButtonElement::formControlType() const
{
switch (m_type) {
case SUBMIT: {
- DEFINE_STATIC_LOCAL(const AtomicString, submit, ("submit", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, submit, ("submit"));
return submit;
}
case BUTTON: {
- DEFINE_STATIC_LOCAL(const AtomicString, button, ("button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, button, ("button"));
return button;
}
case RESET: {
- DEFINE_STATIC_LOCAL(const AtomicString, reset, ("reset", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, reset, ("reset"));
return reset;
}
}
diff --git a/Source/WebCore/html/HTMLDetailsElement.cpp b/Source/WebCore/html/HTMLDetailsElement.cpp
index ce53ce1cc..86a7b48ca 100644
--- a/Source/WebCore/html/HTMLDetailsElement.cpp
+++ b/Source/WebCore/html/HTMLDetailsElement.cpp
@@ -39,7 +39,7 @@ using namespace HTMLNames;
static const AtomicString& summaryQuerySelector()
{
- DEFINE_STATIC_LOCAL(AtomicString, selector, ("summary:first-of-type", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, selector, ("summary:first-of-type"));
return selector;
};
diff --git a/Source/WebCore/html/HTMLFieldSetElement.cpp b/Source/WebCore/html/HTMLFieldSetElement.cpp
index 73ff537cd..6b01019be 100644
--- a/Source/WebCore/html/HTMLFieldSetElement.cpp
+++ b/Source/WebCore/html/HTMLFieldSetElement.cpp
@@ -79,7 +79,7 @@ bool HTMLFieldSetElement::supportsFocus() const
const AtomicString& HTMLFieldSetElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, fieldset, ("fieldset", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, fieldset, ("fieldset"));
return fieldset;
}
diff --git a/Source/WebCore/html/HTMLKeygenElement.cpp b/Source/WebCore/html/HTMLKeygenElement.cpp
index 7436496a2..cfe2d8e49 100644
--- a/Source/WebCore/html/HTMLKeygenElement.cpp
+++ b/Source/WebCore/html/HTMLKeygenElement.cpp
@@ -52,7 +52,7 @@ public:
virtual const AtomicString& shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-keygen-select", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-keygen-select"));
return pseudoId;
}
@@ -120,7 +120,7 @@ bool HTMLKeygenElement::appendFormData(FormDataList& encoded_values, bool)
const AtomicString& HTMLKeygenElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, keygen, ("keygen", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, keygen, ("keygen"));
return keygen;
}
diff --git a/Source/WebCore/html/HTMLOptGroupElement.cpp b/Source/WebCore/html/HTMLOptGroupElement.cpp
index c5e526f54..c95b1ff41 100644
--- a/Source/WebCore/html/HTMLOptGroupElement.cpp
+++ b/Source/WebCore/html/HTMLOptGroupElement.cpp
@@ -68,7 +68,7 @@ bool HTMLOptGroupElement::isFocusable() const
const AtomicString& HTMLOptGroupElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, optgroup, ("optgroup", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, optgroup, ("optgroup"));
return optgroup;
}
diff --git a/Source/WebCore/html/HTMLOutputElement.cpp b/Source/WebCore/html/HTMLOutputElement.cpp
index 277fe5aa7..5432c92f1 100644
--- a/Source/WebCore/html/HTMLOutputElement.cpp
+++ b/Source/WebCore/html/HTMLOutputElement.cpp
@@ -52,7 +52,7 @@ PassRefPtr<HTMLOutputElement> HTMLOutputElement::create(const QualifiedName& tag
const AtomicString& HTMLOutputElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, output, ("output", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, output, ("output"));
return output;
}
diff --git a/Source/WebCore/html/HTMLSelectElement.cpp b/Source/WebCore/html/HTMLSelectElement.cpp
index 1ceae8c18..9583dae5f 100644
--- a/Source/WebCore/html/HTMLSelectElement.cpp
+++ b/Source/WebCore/html/HTMLSelectElement.cpp
@@ -90,8 +90,8 @@ PassRefPtr<HTMLSelectElement> HTMLSelectElement::create(const QualifiedName& tag
const AtomicString& HTMLSelectElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, selectMultiple, ("select-multiple", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(const AtomicString, selectOne, ("select-one", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, selectMultiple, ("select-multiple"));
+ DEFINE_STATIC_LOCAL(const AtomicString, selectOne, ("select-one"));
return m_multiple ? selectMultiple : selectOne;
}
diff --git a/Source/WebCore/html/HTMLTextAreaElement.cpp b/Source/WebCore/html/HTMLTextAreaElement.cpp
index 0585e914e..c8c2ae972 100644
--- a/Source/WebCore/html/HTMLTextAreaElement.cpp
+++ b/Source/WebCore/html/HTMLTextAreaElement.cpp
@@ -111,7 +111,7 @@ void HTMLTextAreaElement::createShadowSubtree()
const AtomicString& HTMLTextAreaElement::formControlType() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, textarea, ("textarea", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, textarea, ("textarea"));
return textarea;
}
diff --git a/Source/WebCore/html/HTMLTextFormControlElement.cpp b/Source/WebCore/html/HTMLTextFormControlElement.cpp
index a2f952a53..d52a82571 100644
--- a/Source/WebCore/html/HTMLTextFormControlElement.cpp
+++ b/Source/WebCore/html/HTMLTextFormControlElement.cpp
@@ -394,9 +394,9 @@ int HTMLTextFormControlElement::computeSelectionEnd() const
static const AtomicString& directionString(TextFieldSelectionDirection direction)
{
- DEFINE_STATIC_LOCAL(const AtomicString, none, ("none", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(const AtomicString, forward, ("forward", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(const AtomicString, backward, ("backward", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, none, ("none"));
+ DEFINE_STATIC_LOCAL(const AtomicString, forward, ("forward"));
+ DEFINE_STATIC_LOCAL(const AtomicString, backward, ("backward"));
switch (direction) {
case SelectionHasNoDirection:
diff --git a/Source/WebCore/html/parser/HTMLEntityParser.cpp b/Source/WebCore/html/parser/HTMLEntityParser.cpp
index 72f91cb78..18718054b 100644
--- a/Source/WebCore/html/parser/HTMLEntityParser.cpp
+++ b/Source/WebCore/html/parser/HTMLEntityParser.cpp
@@ -28,7 +28,7 @@
#include "config.h"
#include "HTMLEntityParser.h"
-#include "CharacterReferenceParserInlines.h"
+#include "CharacterReferenceParserInlineMethods.h"
#include "HTMLEntitySearch.h"
#include "HTMLEntityTable.h"
#include <wtf/text/StringBuilder.h>
diff --git a/Source/WebCore/html/parser/HTMLTokenizer.cpp b/Source/WebCore/html/parser/HTMLTokenizer.cpp
index c3856780e..4ffd319c0 100644
--- a/Source/WebCore/html/parser/HTMLTokenizer.cpp
+++ b/Source/WebCore/html/parser/HTMLTokenizer.cpp
@@ -32,7 +32,7 @@
#include "HTMLToken.h"
#include "HTMLTreeBuilder.h"
#include "HTMLNames.h"
-#include "MarkupTokenizerInlines.h"
+#include "MarkupTokenizerInlineMethods.h"
#include "NotImplemented.h"
#include <wtf/ASCIICType.h>
#include <wtf/CurrentTime.h>
diff --git a/Source/WebCore/html/shadow/ContentSelectorQuery.cpp b/Source/WebCore/html/shadow/ContentSelectorQuery.cpp
index dbe5a8e95..0a6ec32ee 100644
--- a/Source/WebCore/html/shadow/ContentSelectorQuery.cpp
+++ b/Source/WebCore/html/shadow/ContentSelectorQuery.cpp
@@ -27,6 +27,7 @@
#include "config.h"
#include "ContentSelectorQuery.h"
+#include "CSSParser.h"
#include "CSSSelectorList.h"
#include "InsertionPoint.h"
#include "SelectorChecker.h"
@@ -64,12 +65,26 @@ bool ContentSelectorDataList::matches(const ContentSelectorChecker& selectorChec
return false;
}
-ContentSelectorQuery::ContentSelectorQuery(InsertionPoint* insertionPoint)
+ContentSelectorQuery::ContentSelectorQuery(const InsertionPoint* insertionPoint)
: m_insertionPoint(insertionPoint)
, m_selectorChecker(insertionPoint->document(), !insertionPoint->document()->inQuirksMode())
{
- if (insertionPoint->isSelectValid())
- m_selectors.initialize(insertionPoint->selectorList());
+ if (insertionPoint->select().isNull() || insertionPoint->select().isEmpty()) {
+ m_isValidSelector = true;
+ return;
+ }
+
+ CSSParser parser(insertionPoint->document());
+ parser.parseSelector(insertionPoint->select(), m_selectorList);
+
+ m_isValidSelector = ContentSelectorQuery::validateSelectorList();
+ if (m_isValidSelector)
+ m_selectors.initialize(m_selectorList);
+}
+
+bool ContentSelectorQuery::isValidSelector() const
+{
+ return m_isValidSelector;
}
bool ContentSelectorQuery::matches(const Vector<RefPtr<Node> >& siblings, int nth) const
@@ -80,7 +95,7 @@ bool ContentSelectorQuery::matches(const Vector<RefPtr<Node> >& siblings, int nt
if (m_insertionPoint->select().isNull() || m_insertionPoint->select().isEmpty())
return true;
- if (!m_insertionPoint->isSelectValid())
+ if (!m_isValidSelector)
return false;
if (!node->isElementNode())
@@ -89,4 +104,85 @@ bool ContentSelectorQuery::matches(const Vector<RefPtr<Node> >& siblings, int nt
return m_selectors.matches(m_selectorChecker, siblings, nth);
}
+static bool validateSubSelector(CSSSelector* selector)
+{
+ switch (selector->m_match) {
+ case CSSSelector::None:
+ case CSSSelector::Id:
+ case CSSSelector::Class:
+ case CSSSelector::Exact:
+ case CSSSelector::Set:
+ case CSSSelector::List:
+ case CSSSelector::Hyphen:
+ case CSSSelector::Contain:
+ case CSSSelector::Begin:
+ case CSSSelector::End:
+ return true;
+ case CSSSelector::PseudoElement:
+ return false;
+ case CSSSelector::PagePseudoClass:
+ case CSSSelector::PseudoClass:
+ break;
+ }
+
+ switch (selector->pseudoType()) {
+ case CSSSelector::PseudoEmpty:
+ case CSSSelector::PseudoLink:
+ case CSSSelector::PseudoVisited:
+ case CSSSelector::PseudoTarget:
+ case CSSSelector::PseudoEnabled:
+ case CSSSelector::PseudoDisabled:
+ case CSSSelector::PseudoChecked:
+ case CSSSelector::PseudoIndeterminate:
+ case CSSSelector::PseudoNthChild:
+ case CSSSelector::PseudoNthLastChild:
+ case CSSSelector::PseudoNthOfType:
+ case CSSSelector::PseudoNthLastOfType:
+ case CSSSelector::PseudoFirstChild:
+ case CSSSelector::PseudoLastChild:
+ case CSSSelector::PseudoFirstOfType:
+ case CSSSelector::PseudoLastOfType:
+ case CSSSelector::PseudoOnlyOfType:
+ return true;
+ default:
+ return false;
+ }
+}
+
+static bool validateSelector(CSSSelector* selector)
+{
+ ASSERT(selector);
+
+ if (!validateSubSelector(selector))
+ return false;
+
+ CSSSelector* prevSubSelector = selector;
+ CSSSelector* subSelector = selector->tagHistory();
+
+ while (subSelector) {
+ if (prevSubSelector->relation() != CSSSelector::SubSelector)
+ return false;
+ if (!validateSubSelector(subSelector))
+ return false;
+
+ prevSubSelector = subSelector;
+ subSelector = subSelector->tagHistory();
+ }
+
+ return true;
+}
+
+bool ContentSelectorQuery::validateSelectorList()
+{
+ if (!m_selectorList.first())
+ return false;
+
+ for (CSSSelector* selector = m_selectorList.first(); selector; selector = m_selectorList.next(selector)) {
+ if (!validateSelector(selector))
+ return false;
+ }
+
+ return true;
+}
+
}
diff --git a/Source/WebCore/html/shadow/ContentSelectorQuery.h b/Source/WebCore/html/shadow/ContentSelectorQuery.h
index 78a082454..2c710a585 100644
--- a/Source/WebCore/html/shadow/ContentSelectorQuery.h
+++ b/Source/WebCore/html/shadow/ContentSelectorQuery.h
@@ -64,14 +64,18 @@ private:
class ContentSelectorQuery {
WTF_MAKE_NONCOPYABLE(ContentSelectorQuery);
public:
- explicit ContentSelectorQuery(InsertionPoint*);
+ explicit ContentSelectorQuery(const InsertionPoint*);
+ bool isValidSelector() const;
bool matches(const Vector<RefPtr<Node> >& siblings, int nthNode) const;
private:
+ bool validateSelectorList();
- InsertionPoint* m_insertionPoint;
+ const InsertionPoint* m_insertionPoint;
ContentSelectorDataList m_selectors;
+ CSSSelectorList m_selectorList;
ContentSelectorChecker m_selectorChecker;
+ bool m_isValidSelector;
};
}
diff --git a/Source/WebCore/html/shadow/DateTimeFieldElements.cpp b/Source/WebCore/html/shadow/DateTimeFieldElements.cpp
index 84dc52da3..b5c9ef1e6 100644
--- a/Source/WebCore/html/shadow/DateTimeFieldElements.cpp
+++ b/Source/WebCore/html/shadow/DateTimeFieldElements.cpp
@@ -42,7 +42,7 @@ DateTimeAMPMFieldElement::DateTimeAMPMFieldElement(Document* document, FieldOwne
PassRefPtr<DateTimeAMPMFieldElement> DateTimeAMPMFieldElement::create(Document* document, FieldOwner& fieldOwner, const Vector<String>& ampmLabels)
{
- DEFINE_STATIC_LOCAL(AtomicString, ampmPsuedoId, ("-webkit-datetime-edit-ampm-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, ampmPsuedoId, ("-webkit-datetime-edit-ampm-field"));
RefPtr<DateTimeAMPMFieldElement> field = adoptRef(new DateTimeAMPMFieldElement(document, fieldOwner, ampmLabels));
field->initialize(ampmPsuedoId, AXAMPMFieldText());
return field.release();
@@ -78,7 +78,7 @@ DateTimeDayFieldElement::DateTimeDayFieldElement(Document* document, FieldOwner&
PassRefPtr<DateTimeDayFieldElement> DateTimeDayFieldElement::create(Document* document, FieldOwner& fieldOwner, const String& placeholder)
{
- DEFINE_STATIC_LOCAL(AtomicString, dayPsuedoId, ("-webkit-datetime-edit-day-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, dayPsuedoId, ("-webkit-datetime-edit-day-field"));
RefPtr<DateTimeDayFieldElement> field = adoptRef(new DateTimeDayFieldElement(document, fieldOwner, placeholder.isEmpty() ? ASCIILiteral("--") : placeholder));
field->initialize(dayPsuedoId, AXDayOfMonthFieldText());
return field.release();
@@ -121,7 +121,7 @@ DateTimeHourFieldElement::DateTimeHourFieldElement(Document* document, FieldOwne
PassRefPtr<DateTimeHourFieldElement> DateTimeHourFieldElement::create(Document* document, FieldOwner& fieldOwner, int minimum, int maximum)
{
- DEFINE_STATIC_LOCAL(AtomicString, hourPsuedoId, ("-webkit-datetime-edit-hour-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, hourPsuedoId, ("-webkit-datetime-edit-hour-field"));
RefPtr<DateTimeHourFieldElement> field = adoptRef(new DateTimeHourFieldElement(document, fieldOwner, minimum, maximum));
field->initialize(hourPsuedoId, AXHourFieldText());
return field.release();
@@ -224,7 +224,7 @@ DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement(Document* docum
PassRefPtr<DateTimeMillisecondFieldElement> DateTimeMillisecondFieldElement::create(Document* document, FieldOwner& fieldOwner)
{
- DEFINE_STATIC_LOCAL(AtomicString, millisecondPsuedoId, ("-webkit-datetime-edit-millisecond-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, millisecondPsuedoId, ("-webkit-datetime-edit-millisecond-field"));
RefPtr<DateTimeMillisecondFieldElement> field = adoptRef(new DateTimeMillisecondFieldElement(document, fieldOwner));
field->initialize(millisecondPsuedoId, AXMillisecondFieldText());
return field.release();
@@ -265,7 +265,7 @@ DateTimeMinuteFieldElement::DateTimeMinuteFieldElement(Document* document, Field
PassRefPtr<DateTimeMinuteFieldElement> DateTimeMinuteFieldElement::create(Document* document, FieldOwner& fieldOwner)
{
- DEFINE_STATIC_LOCAL(AtomicString, minutePsuedoId, ("-webkit-datetime-edit-minute-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, minutePsuedoId, ("-webkit-datetime-edit-minute-field"));
RefPtr<DateTimeMinuteFieldElement> field = adoptRef(new DateTimeMinuteFieldElement(document, fieldOwner));
field->initialize(minutePsuedoId, AXMinuteFieldText());
return field.release();
@@ -306,7 +306,7 @@ DateTimeMonthFieldElement::DateTimeMonthFieldElement(Document* document, FieldOw
PassRefPtr<DateTimeMonthFieldElement> DateTimeMonthFieldElement::create(Document* document, FieldOwner& fieldOwner, const String& placeholder)
{
- DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-month-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-month-field"));
RefPtr<DateTimeMonthFieldElement> field = adoptRef(new DateTimeMonthFieldElement(document, fieldOwner, placeholder.isEmpty() ? ASCIILiteral("--") : placeholder));
field->initialize(monthPsuedoId, AXMonthFieldText());
return field.release();
@@ -347,7 +347,7 @@ DateTimeSecondFieldElement::DateTimeSecondFieldElement(Document* document, Field
PassRefPtr<DateTimeSecondFieldElement> DateTimeSecondFieldElement::create(Document* document, FieldOwner& fieldOwner)
{
- DEFINE_STATIC_LOCAL(AtomicString, secondPsuedoId, ("-webkit-datetime-edit-second-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, secondPsuedoId, ("-webkit-datetime-edit-second-field"));
RefPtr<DateTimeSecondFieldElement> field = adoptRef(new DateTimeSecondFieldElement(document, fieldOwner));
field->initialize(secondPsuedoId, AXSecondFieldText());
return field.release();
@@ -388,7 +388,7 @@ DateTimeSymbolicMonthFieldElement::DateTimeSymbolicMonthFieldElement(Document* d
PassRefPtr<DateTimeSymbolicMonthFieldElement> DateTimeSymbolicMonthFieldElement::create(Document* document, FieldOwner& fieldOwner, const Vector<String>& labels)
{
- DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-month-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-month-field"));
RefPtr<DateTimeSymbolicMonthFieldElement> field = adoptRef(new DateTimeSymbolicMonthFieldElement(document, fieldOwner, labels));
field->initialize(monthPsuedoId, AXMonthFieldText());
return field.release();
@@ -432,7 +432,7 @@ DateTimeWeekFieldElement::DateTimeWeekFieldElement(Document* document, FieldOwne
PassRefPtr<DateTimeWeekFieldElement> DateTimeWeekFieldElement::create(Document* document, FieldOwner& fieldOwner)
{
- DEFINE_STATIC_LOCAL(AtomicString, weekPsuedoId, ("-webkit-datetime-edit-week-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, weekPsuedoId, ("-webkit-datetime-edit-week-field"));
RefPtr<DateTimeWeekFieldElement> field = adoptRef(new DateTimeWeekFieldElement(document, fieldOwner));
field->initialize(weekPsuedoId, AXWeekOfYearFieldText());
return field.release();
@@ -477,7 +477,7 @@ DateTimeYearFieldElement::DateTimeYearFieldElement(Document* document, FieldOwne
PassRefPtr<DateTimeYearFieldElement> DateTimeYearFieldElement::create(Document* document, FieldOwner& fieldOwner, const DateTimeYearFieldElement::Parameters& parameters)
{
- DEFINE_STATIC_LOCAL(AtomicString, yearPsuedoId, ("-webkit-datetime-edit-year-field", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, yearPsuedoId, ("-webkit-datetime-edit-year-field"));
RefPtr<DateTimeYearFieldElement> field = adoptRef(new DateTimeYearFieldElement(document, fieldOwner, parameters));
field->initialize(yearPsuedoId, AXYearFieldText());
return field.release();
diff --git a/Source/WebCore/html/shadow/DetailsMarkerControl.cpp b/Source/WebCore/html/shadow/DetailsMarkerControl.cpp
index 7b83b7ba8..b109ef8eb 100644
--- a/Source/WebCore/html/shadow/DetailsMarkerControl.cpp
+++ b/Source/WebCore/html/shadow/DetailsMarkerControl.cpp
@@ -57,7 +57,7 @@ bool DetailsMarkerControl::rendererIsNeeded(const NodeRenderingContext& context)
const AtomicString& DetailsMarkerControl::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-details-marker", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-details-marker"));
return pseudId;
}
diff --git a/Source/WebCore/html/shadow/HTMLContentElement.cpp b/Source/WebCore/html/shadow/HTMLContentElement.cpp
index 71489f9f3..c0b9bba80 100644
--- a/Source/WebCore/html/shadow/HTMLContentElement.cpp
+++ b/Source/WebCore/html/shadow/HTMLContentElement.cpp
@@ -27,7 +27,6 @@
#include "config.h"
#include "HTMLContentElement.h"
-#include "CSSParser.h"
#include "ContentDistributor.h"
#include "ContentSelectorQuery.h"
#include "ElementShadow.h"
@@ -65,8 +64,6 @@ PassRefPtr<HTMLContentElement> HTMLContentElement::create(const QualifiedName& t
HTMLContentElement::HTMLContentElement(const QualifiedName& name, Document* document)
: InsertionPoint(name, document)
, m_registeredWithShadowRoot(false)
- , m_shouldParseSelectorList(false)
- , m_isValidSelector(true)
{
}
@@ -79,23 +76,15 @@ const AtomicString& HTMLContentElement::select() const
return getAttribute(selectAttr);
}
-bool HTMLContentElement::isSelectValid()
+bool HTMLContentElement::isSelectValid() const
{
- ensureSelectParsed();
- return m_isValidSelector;
+ ContentSelectorQuery query(this);
+ return query.isValidSelector();
}
-void HTMLContentElement::ensureSelectParsed()
+void HTMLContentElement::setSelect(const AtomicString& selectValue)
{
- if (!m_shouldParseSelectorList)
- return;
-
- CSSParser parser(document());
- parser.parseSelector(select(), m_selectorList);
- m_shouldParseSelectorList = false;
- m_isValidSelector = validateSelect();
- if (!m_isValidSelector)
- m_selectorList = CSSSelectorList();
+ setAttribute(selectAttr, selectValue);
}
void HTMLContentElement::parseAttribute(const Attribute& attribute)
@@ -103,7 +92,6 @@ void HTMLContentElement::parseAttribute(const Attribute& attribute)
if (attribute.name() == selectAttr) {
if (ShadowRoot* root = shadowRoot())
root->owner()->invalidateDistribution();
- m_shouldParseSelectorList = true;
} else
InsertionPoint::parseAttribute(attribute);
}
@@ -133,91 +121,4 @@ void HTMLContentElement::removedFrom(ContainerNode* insertionPoint)
InsertionPoint::removedFrom(insertionPoint);
}
-static bool validateSubSelector(CSSSelector* selector)
-{
- switch (selector->m_match) {
- case CSSSelector::None:
- case CSSSelector::Id:
- case CSSSelector::Class:
- case CSSSelector::Exact:
- case CSSSelector::Set:
- case CSSSelector::List:
- case CSSSelector::Hyphen:
- case CSSSelector::Contain:
- case CSSSelector::Begin:
- case CSSSelector::End:
- return true;
- case CSSSelector::PseudoElement:
- return false;
- case CSSSelector::PagePseudoClass:
- case CSSSelector::PseudoClass:
- break;
- }
-
- switch (selector->pseudoType()) {
- case CSSSelector::PseudoEmpty:
- case CSSSelector::PseudoLink:
- case CSSSelector::PseudoVisited:
- case CSSSelector::PseudoTarget:
- case CSSSelector::PseudoEnabled:
- case CSSSelector::PseudoDisabled:
- case CSSSelector::PseudoChecked:
- case CSSSelector::PseudoIndeterminate:
- case CSSSelector::PseudoNthChild:
- case CSSSelector::PseudoNthLastChild:
- case CSSSelector::PseudoNthOfType:
- case CSSSelector::PseudoNthLastOfType:
- case CSSSelector::PseudoFirstChild:
- case CSSSelector::PseudoLastChild:
- case CSSSelector::PseudoFirstOfType:
- case CSSSelector::PseudoLastOfType:
- case CSSSelector::PseudoOnlyOfType:
- return true;
- default:
- return false;
- }
-}
-
-static bool validateSelector(CSSSelector* selector)
-{
- ASSERT(selector);
-
- if (!validateSubSelector(selector))
- return false;
-
- CSSSelector* prevSubSelector = selector;
- CSSSelector* subSelector = selector->tagHistory();
-
- while (subSelector) {
- if (prevSubSelector->relation() != CSSSelector::SubSelector)
- return false;
- if (!validateSubSelector(subSelector))
- return false;
-
- prevSubSelector = subSelector;
- subSelector = subSelector->tagHistory();
- }
-
- return true;
-}
-
-bool HTMLContentElement::validateSelect() const
-{
- ASSERT(!m_shouldParseSelectorList);
-
- if (select().isNull() || select().isEmpty())
- return true;
-
- if (!m_selectorList.first())
- return false;
-
- for (CSSSelector* selector = m_selectorList.first(); selector; selector = m_selectorList.next(selector)) {
- if (!validateSelector(selector))
- return false;
- }
-
- return true;
-}
-
-
}
diff --git a/Source/WebCore/html/shadow/HTMLContentElement.h b/Source/WebCore/html/shadow/HTMLContentElement.h
index 04254e12b..2a3a32cea 100644
--- a/Source/WebCore/html/shadow/HTMLContentElement.h
+++ b/Source/WebCore/html/shadow/HTMLContentElement.h
@@ -31,7 +31,6 @@
#ifndef HTMLContentElement_h
#define HTMLContentElement_h
-#include "CSSSelectorList.h"
#include "InsertionPoint.h"
#include <wtf/Forward.h>
@@ -45,10 +44,9 @@ public:
virtual ~HTMLContentElement();
+ const AtomicString& select() const;
void setSelect(const AtomicString&);
- virtual const AtomicString& select() const;
- virtual bool isSelectValid();
- virtual const CSSSelectorList& selectorList();
+ virtual bool isSelectValid() const;
protected:
HTMLContentElement(const QualifiedName&, Document*);
@@ -58,28 +56,10 @@ protected:
private:
virtual void parseAttribute(const Attribute&) OVERRIDE;
- void ensureSelectParsed();
- bool validateSelect() const;
bool m_registeredWithShadowRoot;
-
- bool m_shouldParseSelectorList;
- bool m_isValidSelector;
- CSSSelectorList m_selectorList;
};
-inline void HTMLContentElement::setSelect(const AtomicString& selectValue)
-{
- setAttribute(HTMLNames::selectAttr, selectValue);
- m_shouldParseSelectorList = true;
-}
-
-inline const CSSSelectorList& HTMLContentElement::selectorList()
-{
- ensureSelectParsed();
- return m_selectorList;
-}
-
inline bool isHTMLContentElement(const Node* node)
{
ASSERT(node);
diff --git a/Source/WebCore/html/shadow/HTMLShadowElement.cpp b/Source/WebCore/html/shadow/HTMLShadowElement.cpp
index da18ba8ea..7d7e41529 100644
--- a/Source/WebCore/html/shadow/HTMLShadowElement.cpp
+++ b/Source/WebCore/html/shadow/HTMLShadowElement.cpp
@@ -87,10 +87,4 @@ void HTMLShadowElement::removedFrom(ContainerNode* insertionPoint)
InsertionPoint::removedFrom(insertionPoint);
}
-const CSSSelectorList& HTMLShadowElement::emptySelectorList()
-{
- DEFINE_STATIC_LOCAL(CSSSelectorList, selectorList, (CSSSelectorList()));
- return selectorList;
-}
-
} // namespace WebCore
diff --git a/Source/WebCore/html/shadow/HTMLShadowElement.h b/Source/WebCore/html/shadow/HTMLShadowElement.h
index 87059896f..bac2b92b5 100644
--- a/Source/WebCore/html/shadow/HTMLShadowElement.h
+++ b/Source/WebCore/html/shadow/HTMLShadowElement.h
@@ -42,9 +42,8 @@ public:
virtual ~HTMLShadowElement();
- virtual const AtomicString& select() const;
- virtual bool isSelectValid() OVERRIDE { return true; }
- virtual const CSSSelectorList& selectorList() { return emptySelectorList(); }
+ const AtomicString& select() const;
+ bool isSelectValid() const OVERRIDE { return true; }
protected:
virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
@@ -53,8 +52,6 @@ protected:
private:
HTMLShadowElement(const QualifiedName&, Document*);
- static const CSSSelectorList& emptySelectorList();
-
bool m_registeredWithShadowRoot;
};
diff --git a/Source/WebCore/html/shadow/ImageInnerElement.cpp b/Source/WebCore/html/shadow/ImageInnerElement.cpp
index 839cc9203..b23d6b1a5 100644
--- a/Source/WebCore/html/shadow/ImageInnerElement.cpp
+++ b/Source/WebCore/html/shadow/ImageInnerElement.cpp
@@ -70,7 +70,7 @@ RenderObject* ImageInnerElement::createRenderer(RenderArena* arena, RenderStyle*
const AtomicString& ImageInnerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-image-inner-element", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-image-inner-element"));
return pseudoId;
}
diff --git a/Source/WebCore/html/shadow/InsertionPoint.h b/Source/WebCore/html/shadow/InsertionPoint.h
index 23dad8dca..243a08c18 100644
--- a/Source/WebCore/html/shadow/InsertionPoint.h
+++ b/Source/WebCore/html/shadow/InsertionPoint.h
@@ -31,7 +31,6 @@
#ifndef InsertionPoint_h
#define InsertionPoint_h
-#include "CSSSelectorList.h"
#include "ContentDistributor.h"
#include "ElementShadow.h"
#include "HTMLElement.h"
@@ -54,8 +53,7 @@ public:
PassRefPtr<NodeList> getDistributedNodes() const;
virtual const AtomicString& select() const = 0;
- virtual bool isSelectValid() = 0;
- virtual const CSSSelectorList& selectorList() = 0;
+ virtual bool isSelectValid() const = 0;
bool resetStyleInheritance() const;
void setResetStyleInheritance(bool);
diff --git a/Source/WebCore/html/shadow/MediaControlElements.cpp b/Source/WebCore/html/shadow/MediaControlElements.cpp
index 0bbf763a8..906466013 100644
--- a/Source/WebCore/html/shadow/MediaControlElements.cpp
+++ b/Source/WebCore/html/shadow/MediaControlElements.cpp
@@ -138,7 +138,7 @@ MediaControlElementType MediaControlPanelElement::displayType() const
const AtomicString& MediaControlPanelElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-panel", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-panel"));
return id;
}
@@ -334,7 +334,7 @@ MediaControlElementType MediaControlTimelineContainerElement::displayType() cons
const AtomicString& MediaControlTimelineContainerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-timeline-container", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-timeline-container"));
return id;
}
@@ -410,7 +410,7 @@ MediaControlElementType MediaControlVolumeSliderContainerElement::displayType()
const AtomicString& MediaControlVolumeSliderContainerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider-container", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider-container"));
return id;
}
@@ -471,7 +471,7 @@ MediaControlElementType MediaControlStatusDisplayElement::displayType() const
const AtomicString& MediaControlStatusDisplayElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-status-display", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-status-display"));
return id;
}
@@ -560,7 +560,7 @@ void MediaControlPanelMuteButtonElement::defaultEventHandler(Event* event)
const AtomicString& MediaControlPanelMuteButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-mute-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-mute-button"));
return id;
}
@@ -581,7 +581,7 @@ PassRefPtr<MediaControlVolumeSliderMuteButtonElement> MediaControlVolumeSliderMu
const AtomicString& MediaControlVolumeSliderMuteButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider-mute-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider-mute-button"));
return id;
}
@@ -620,7 +620,7 @@ void MediaControlPlayButtonElement::updateDisplayType()
const AtomicString& MediaControlPlayButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-play-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-play-button"));
return id;
}
@@ -660,7 +660,7 @@ void MediaControlOverlayPlayButtonElement::updateDisplayType()
const AtomicString& MediaControlOverlayPlayButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-overlay-play-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-overlay-play-button"));
return id;
}
@@ -762,7 +762,7 @@ PassRefPtr<MediaControlSeekForwardButtonElement> MediaControlSeekForwardButtonEl
const AtomicString& MediaControlSeekForwardButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-seek-forward-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-seek-forward-button"));
return id;
}
@@ -783,7 +783,7 @@ PassRefPtr<MediaControlSeekBackButtonElement> MediaControlSeekBackButtonElement:
const AtomicString& MediaControlSeekBackButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-seek-back-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-seek-back-button"));
return id;
}
@@ -814,7 +814,7 @@ void MediaControlRewindButtonElement::defaultEventHandler(Event* event)
const AtomicString& MediaControlRewindButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-rewind-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-rewind-button"));
return id;
}
@@ -845,7 +845,7 @@ void MediaControlReturnToRealtimeButtonElement::defaultEventHandler(Event* event
const AtomicString& MediaControlReturnToRealtimeButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-return-to-realtime-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-return-to-realtime-button"));
return id;
}
@@ -884,7 +884,7 @@ void MediaControlToggleClosedCaptionsButtonElement::updateDisplayType()
const AtomicString& MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-toggle-closed-captions-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-toggle-closed-captions-button"));
return id;
}
@@ -959,7 +959,7 @@ void MediaControlTimelineElement::setDuration(float duration)
const AtomicString& MediaControlTimelineElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-timeline", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-timeline"));
return id;
}
@@ -1034,7 +1034,7 @@ void MediaControlVolumeSliderElement::setClearMutedOnUserInteraction(bool clearM
const AtomicString& MediaControlVolumeSliderElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-volume-slider"));
return id;
}
@@ -1057,7 +1057,7 @@ PassRefPtr<MediaControlFullscreenVolumeSliderElement> MediaControlFullscreenVolu
const AtomicString& MediaControlFullscreenVolumeSliderElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-slider", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-slider"));
return id;
}
@@ -1103,7 +1103,7 @@ void MediaControlFullscreenButtonElement::defaultEventHandler(Event* event)
const AtomicString& MediaControlFullscreenButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-button"));
return id;
}
@@ -1139,7 +1139,7 @@ void MediaControlFullscreenVolumeMinButtonElement::defaultEventHandler(Event* ev
const AtomicString& MediaControlFullscreenVolumeMinButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-min-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-min-button"));
return id;
}
@@ -1170,7 +1170,7 @@ void MediaControlFullscreenVolumeMaxButtonElement::defaultEventHandler(Event* ev
const AtomicString& MediaControlFullscreenVolumeMaxButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-max-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-fullscreen-volume-max-button"));
return id;
}
@@ -1239,7 +1239,7 @@ MediaControlElementType MediaControlTimeRemainingDisplayElement::displayType() c
const AtomicString& MediaControlTimeRemainingDisplayElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-time-remaining-display", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-time-remaining-display"));
return id;
}
@@ -1262,7 +1262,7 @@ MediaControlElementType MediaControlCurrentTimeDisplayElement::displayType() con
const AtomicString& MediaControlCurrentTimeDisplayElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-current-time-display", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-current-time-display"));
return id;
}
@@ -1315,7 +1315,7 @@ RenderObject* MediaControlTextTrackContainerElement::createRenderer(RenderArena*
const AtomicString& MediaControlTextTrackContainerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-text-track-container", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-text-track-container"));
return id;
}
diff --git a/Source/WebCore/html/shadow/MediaControlRootElement.cpp b/Source/WebCore/html/shadow/MediaControlRootElement.cpp
index 22a018fd9..ef541baa3 100644
--- a/Source/WebCore/html/shadow/MediaControlRootElement.cpp
+++ b/Source/WebCore/html/shadow/MediaControlRootElement.cpp
@@ -656,7 +656,7 @@ void MediaControlRootElement::updateTextTrackDisplay()
const AtomicString& MediaControlRootElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls"));
return id;
}
diff --git a/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp b/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp
index 82d8f9260..6b3913bb6 100644
--- a/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp
+++ b/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp
@@ -71,7 +71,7 @@ PassRefPtr<MediaControlPanelEnclosureElement> MediaControlPanelEnclosureElement:
const AtomicString& MediaControlPanelEnclosureElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-enclosure", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-enclosure"));
return id;
}
@@ -519,7 +519,7 @@ void MediaControlRootElementChromium::updateTextTrackDisplay()
const AtomicString& MediaControlRootElementChromium::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls"));
return id;
}
diff --git a/Source/WebCore/html/shadow/MediaControlRootElementChromiumAndroid.cpp b/Source/WebCore/html/shadow/MediaControlRootElementChromiumAndroid.cpp
index dfe848dc8..45634a847 100644
--- a/Source/WebCore/html/shadow/MediaControlRootElementChromiumAndroid.cpp
+++ b/Source/WebCore/html/shadow/MediaControlRootElementChromiumAndroid.cpp
@@ -44,7 +44,7 @@ PassRefPtr<MediaControlOverlayEnclosureElement> MediaControlOverlayEnclosureElem
const AtomicString& MediaControlOverlayEnclosureElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-overlay-enclosure", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-overlay-enclosure"));
return id;
}
diff --git a/Source/WebCore/html/shadow/MeterShadowElement.cpp b/Source/WebCore/html/shadow/MeterShadowElement.cpp
index 3c48b5f2b..441f01397 100644
--- a/Source/WebCore/html/shadow/MeterShadowElement.cpp
+++ b/Source/WebCore/html/shadow/MeterShadowElement.cpp
@@ -81,21 +81,21 @@ RenderObject* MeterInnerElement::createRenderer(RenderArena* arena, RenderStyle*
const AtomicString& MeterInnerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-meter-inner-element", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-meter-inner-element"));
return pseudId;
}
const AtomicString& MeterBarElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-meter-bar", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-meter-bar"));
return pseudId;
}
const AtomicString& MeterValueElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, optimumPseudId, ("-webkit-meter-optimum-value", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(AtomicString, suboptimumPseudId, ("-webkit-meter-suboptimum-value", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(AtomicString, evenLessGoodPseudId, ("-webkit-meter-even-less-good-value", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, optimumPseudId, ("-webkit-meter-optimum-value"));
+ DEFINE_STATIC_LOCAL(AtomicString, suboptimumPseudId, ("-webkit-meter-suboptimum-value"));
+ DEFINE_STATIC_LOCAL(AtomicString, evenLessGoodPseudId, ("-webkit-meter-even-less-good-value"));
HTMLMeterElement* meter = meterElement();
if (!meter)
diff --git a/Source/WebCore/html/shadow/ProgressShadowElement.cpp b/Source/WebCore/html/shadow/ProgressShadowElement.cpp
index fdfae05f0..465d5ba8f 100644
--- a/Source/WebCore/html/shadow/ProgressShadowElement.cpp
+++ b/Source/WebCore/html/shadow/ProgressShadowElement.cpp
@@ -68,7 +68,7 @@ PassRefPtr<ProgressInnerElement> ProgressInnerElement::create(Document* document
const AtomicString& ProgressInnerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-inner-element", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-inner-element"));
return pseudId;
}
@@ -88,14 +88,14 @@ bool ProgressInnerElement::rendererIsNeeded(const NodeRenderingContext& context)
const AtomicString& ProgressBarElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-bar", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-bar"));
return pseudId;
}
const AtomicString& ProgressValueElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-value", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudId, ("-webkit-progress-value"));
return pseudId;
}
diff --git a/Source/WebCore/html/shadow/SliderThumbElement.cpp b/Source/WebCore/html/shadow/SliderThumbElement.cpp
index 8dc0fd2eb..5e53eced1 100644
--- a/Source/WebCore/html/shadow/SliderThumbElement.cpp
+++ b/Source/WebCore/html/shadow/SliderThumbElement.cpp
@@ -400,13 +400,13 @@ HTMLInputElement* SliderThumbElement::hostInput() const
static const AtomicString& sliderThumbShadowPseudoId()
{
- DEFINE_STATIC_LOCAL(const AtomicString, sliderThumb, ("-webkit-slider-thumb", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, sliderThumb, ("-webkit-slider-thumb"));
return sliderThumb;
}
static const AtomicString& mediaSliderThumbShadowPseudoId()
{
- DEFINE_STATIC_LOCAL(const AtomicString, mediaSliderThumb, ("-webkit-media-slider-thumb", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, mediaSliderThumb, ("-webkit-media-slider-thumb"));
return mediaSliderThumb;
}
@@ -501,8 +501,8 @@ RenderObject* SliderContainerElement::createRenderer(RenderArena* arena, RenderS
const AtomicString& SliderContainerElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(const AtomicString, mediaSliderContainer, ("-webkit-media-slider-container", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(const AtomicString, sliderContainer, ("-webkit-slider-container", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, mediaSliderContainer, ("-webkit-media-slider-container"));
+ DEFINE_STATIC_LOCAL(const AtomicString, sliderContainer, ("-webkit-slider-container"));
HTMLInputElement* input = shadowHost()->toInputElement();
if (!input)
diff --git a/Source/WebCore/html/shadow/SpinButtonElement.cpp b/Source/WebCore/html/shadow/SpinButtonElement.cpp
index e9b0eec66..99dd71947 100644
--- a/Source/WebCore/html/shadow/SpinButtonElement.cpp
+++ b/Source/WebCore/html/shadow/SpinButtonElement.cpp
@@ -57,7 +57,7 @@ PassRefPtr<SpinButtonElement> SpinButtonElement::create(Document* document, Spin
const AtomicString& SpinButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, innerPseudoId, ("-webkit-inner-spin-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, innerPseudoId, ("-webkit-inner-spin-button"));
return innerPseudoId;
}
diff --git a/Source/WebCore/html/shadow/TextControlInnerElements.cpp b/Source/WebCore/html/shadow/TextControlInnerElements.cpp
index c79c5b881..6a565b300 100644
--- a/Source/WebCore/html/shadow/TextControlInnerElements.cpp
+++ b/Source/WebCore/html/shadow/TextControlInnerElements.cpp
@@ -124,9 +124,9 @@ PassRefPtr<SearchFieldResultsButtonElement> SearchFieldResultsButtonElement::cre
const AtomicString& SearchFieldResultsButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, resultsId, ("-webkit-search-results-button", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(AtomicString, resultsDecorationId, ("-webkit-search-results-decoration", AtomicString::ConstructFromLiteral));
- DEFINE_STATIC_LOCAL(AtomicString, decorationId, ("-webkit-search-decoration", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, resultsId, ("-webkit-search-results-button"));
+ DEFINE_STATIC_LOCAL(AtomicString, resultsDecorationId, ("-webkit-search-results-decoration"));
+ DEFINE_STATIC_LOCAL(AtomicString, decorationId, ("-webkit-search-decoration"));
Element* host = shadowHost();
if (!host)
return resultsId;
@@ -179,7 +179,7 @@ PassRefPtr<SearchFieldCancelButtonElement> SearchFieldCancelButtonElement::creat
const AtomicString& SearchFieldCancelButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-search-cancel-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-search-cancel-button"));
return pseudoId;
}
@@ -438,7 +438,7 @@ void InputFieldSpeechButtonElement::stopSpeechInput()
const AtomicString& InputFieldSpeechButtonElement::shadowPseudoId() const
{
- DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-input-speech-button", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-input-speech-button"));
return pseudoId;
}
diff --git a/Source/WebCore/html/track/TextTrackCue.cpp b/Source/WebCore/html/track/TextTrackCue.cpp
index 39d02e52f..29a393ff7 100644
--- a/Source/WebCore/html/track/TextTrackCue.cpp
+++ b/Source/WebCore/html/track/TextTrackCue.cpp
@@ -95,7 +95,6 @@ TextTrackCueBox::TextTrackCueBox(Document* document, TextTrackCue* cue)
: HTMLElement(divTag, document)
, m_cue(cue)
{
- setPseudo(textTrackCueBoxShadowPseudoId());
}
TextTrackCue* TextTrackCueBox::getCue() const
@@ -170,10 +169,15 @@ void TextTrackCueBox::applyCSSProperties()
const AtomicString& TextTrackCueBox::textTrackCueBoxShadowPseudoId()
{
- DEFINE_STATIC_LOCAL(const AtomicString, trackDisplayBoxShadowPseudoId, ("-webkit-media-text-track-display", AtomicString::ConstructFromLiteral));
+ DEFINE_STATIC_LOCAL(const AtomicString, trackDisplayBoxShadowPseudoId, ("-webkit-media-text-track-display"));
return trackDisplayBoxShadowPseudoId;
}
+const AtomicString& TextTrackCueBox::shadowPseudoId() const
+{
+ return textTrackCueBoxShadowPseudoId();
+}
+
RenderObject* TextTrackCueBox::createRenderer(RenderArena* arena, RenderStyle*)
{
return new (arena) RenderTextTrackCue(this);
diff --git a/Source/WebCore/html/track/TextTrackCue.h b/Source/WebCore/html/track/TextTrackCue.h
index 5b8e3f131..01a0e6603 100644
--- a/Source/WebCore/html/track/TextTrackCue.h
+++ b/Source/WebCore/html/track/TextTrackCue.h
@@ -59,6 +59,7 @@ public:
TextTrackCue* getCue() const;
void applyCSSProperties();
+ virtual const AtomicString& shadowPseudoId() const OVERRIDE;
static const AtomicString& textTrackCueBoxShadowPseudoId();
private:
diff --git a/Source/WebCore/html/track/WebVTTTokenizer.cpp b/Source/WebCore/html/track/WebVTTTokenizer.cpp
index 3b3f38ace..4d2d8b300 100644
--- a/Source/WebCore/html/track/WebVTTTokenizer.cpp
+++ b/Source/WebCore/html/track/WebVTTTokenizer.cpp
@@ -34,7 +34,7 @@
#include "WebVTTTokenizer.h"
-#include "MarkupTokenizerInlines.h"
+#include "MarkupTokenizerInlineMethods.h"
namespace WebCore {