Modernize and streamline HTMLStackItem
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2015-01-05  Darin Adler  <darin@apple.com>
2
3         Modernize and streamline HTMLStackItem
4         https://bugs.webkit.org/show_bug.cgi?id=140056
5
6         Reviewed by Anders Carlsson.
7
8         * html/HTMLHtmlElement.cpp:
9         (WebCore::HTMLHtmlElement::create): Changed to return Ref.
10         * html/HTMLHtmlElement.h: Ditto.
11
12         * html/parser/HTMLConstructionSite.cpp:
13         (WebCore::hasImpliedEndTag): Update to use reference instead of pointer.
14         (WebCore::causesFosterParenting): Moved here from HTMLStackItem.h.
15         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML): Update
16         for references instead of pointers.
17         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody): Ditto.
18         (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody): Ditto.
19         (WebCore::HTMLConstructionSite::insertComment): Ditto.
20         (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement): Ditto.
21         (WebCore::HTMLConstructionSite::insertHTMLHeadElement): Ditto.
22         (WebCore::HTMLConstructionSite::insertHTMLBodyElement): Ditto.
23         (WebCore::HTMLConstructionSite::insertHTMLFormElement): Ditto.
24         (WebCore::HTMLConstructionSite::insertHTMLElement): Ditto.
25         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): Ditto.
26         (WebCore::HTMLConstructionSite::insertFormattingElement): Ditto.
27         (WebCore::HTMLConstructionSite::insertScriptElement): Ditto.
28         (WebCore::HTMLConstructionSite::insertForeignElement): Ditto.
29         (WebCore::HTMLConstructionSite::insertTextNode): Ditto.
30         (WebCore::HTMLConstructionSite::reparent): Ditto.
31         (WebCore::HTMLConstructionSite::insertAlreadyParsedChild): Ditto.
32         (WebCore::HTMLConstructionSite::takeAllChildren): Ditto.
33         (WebCore::HTMLConstructionSite::ownerDocumentForCurrentNode): Ditto.
34         (WebCore::HTMLConstructionSite::createElementFromSavedToken): Ditto.
35         (WebCore::HTMLConstructionSite::indexOfFirstUnopenFormattingElement): Ditto.
36         (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements): Ditto.
37         (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion): Ditto.
38         (WebCore::HTMLConstructionSite::findFosterSite): Ditto.
39         (WebCore::HTMLConstructionSite::shouldFosterParent): Removed unneeded
40         isElementNode check, since causesFosterParenting will return false for a
41         document fragment node.
42
43         * html/parser/HTMLConstructionSite.h: Updated to use references instead of
44         pointers. Also removed the unneeded currentElementRecord function.
45
46         * html/parser/HTMLElementStack.cpp:
47         (WebCore::HTMLNames::isRootNode): Updated to use references instead of pointers.
48         (WebCore::HTMLNames::isScopeMarker): Ditto.
49         (WebCore::HTMLNames::isListItemScopeMarker): Ditto.
50         (WebCore::HTMLNames::isTableScopeMarker): Ditto.
51         (WebCore::HTMLNames::isTableBodyScopeMarker): Ditto.
52         (WebCore::HTMLNames::isTableRowScopeMarker): Ditto.
53         (WebCore::HTMLNames::isForeignContentScopeMarker): Ditto.
54         (WebCore::HTMLNames::isButtonScopeMarker): Ditto.
55         (WebCore::HTMLNames::isSelectScopeMarker): Ditto.
56         (WebCore::HTMLElementStack::ElementRecord::replaceElement): Ditto.
57         (WebCore::HTMLElementStack::hasOnlyOneElement): Ditto.
58         (WebCore::HTMLElementStack::popHTMLHeadElement): Ditto.
59         (WebCore::HTMLElementStack::popHTMLBodyElement): Ditto.
60         (WebCore::HTMLElementStack::popAll): Ditto.
61         (WebCore::HTMLElementStack::pop): Ditto.
62         (WebCore::HTMLElementStack::popUntil): Ditto.
63         (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped): Ditto.
64         (WebCore::HTMLElementStack::isMathMLTextIntegrationPoint): Ditto. Also removed
65         unneeded isElementNode check.
66         (WebCore::HTMLElementStack::isHTMLIntegrationPoint): Ditto.
67         (WebCore::HTMLElementStack::pushRootNode): Ditto.
68         (WebCore::HTMLElementStack::pushRootNodeCommon): Ditto.
69         (WebCore::HTMLElementStack::pushHTMLHeadElement): Ditto.
70         (WebCore::HTMLElementStack::pushHTMLBodyElement): Ditto.
71         (WebCore::HTMLElementStack::insertAbove): Ditto.
72         (WebCore::HTMLElementStack::topRecord): Ditto.
73         (WebCore::HTMLElementStack::oneBelowTop): Ditto.
74         (WebCore::HTMLElementStack::removeHTMLHeadElement): Ditto.
75         (WebCore::HTMLElementStack::remove): Ditto.
76         (WebCore::HTMLElementStack::find): Ditto.
77         (WebCore::HTMLElementStack::topmost): Ditto.
78         (WebCore::inScopeCommon): Ditto.
79         (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope): Ditto.
80         (WebCore::HTMLElementStack::inScope): Ditto.
81         (WebCore::HTMLElementStack::htmlElement): Ditto.
82         (WebCore::HTMLElementStack::headElement): Ditto.
83         (WebCore::HTMLElementStack::bodyElement): Ditto.
84         (WebCore::HTMLElementStack::rootNode): Ditto.
85         (WebCore::HTMLElementStack::popCommon): Ditto.
86         (WebCore::HTMLElementStack::removeNonTopCommon): Ditto.
87         (WebCore::HTMLElementStack::furthestBlockForFormattingElement): Ditto.
88         (WebCore::HTMLElementStack::show): Ditto.
89
90         * html/parser/HTMLElementStack.h: Use reference instead of pointer.
91
92         * html/parser/HTMLFormattingElementList.cpp:
93         (WebCore::HTMLFormattingElementList::closestElementInScopeWithName): Update
94         to use references instead of pointer.
95         (WebCore::HTMLFormattingElementList::swapTo): Ditto.
96         (WebCore::HTMLFormattingElementList::tryToEnsureNoahsArkConditionQuickly): Ditto.
97         (WebCore::HTMLFormattingElementList::ensureNoahsArkCondition): Ditto.
98         (WebCore::HTMLFormattingElementList::show): Ditto.
99
100         * html/parser/HTMLFormattingElementList.h: Use reference instead of pointer
101         and a raw pointer instead of a RefPtr.
102
103         * html/parser/HTMLStackItem.h: Removed unneeded includes. Got rid of "type"
104         concept and simply overload the create functions and constructors for both
105         Element and DOcumentFragment. Renamed isElementNode and isDocumentFragmentNode
106         to remove the "Node" suffix. Removed unused getAttributeItem, hasLocalName, and
107         one of the overloads of matchesHTMLTag. Moved all the policy functions such as
108         causesFosterParenting out of this class into free functions or into other
109         source files. Got rid of m_isDocumentFragmentNode boolean. Moved function
110         bodies out of the class definition. Marked all data members const since they
111         are all initialized in the constructor and never touched again. Restructured
112         the isSpecialNode function to avoid the repeated checks of the namespace.
113
114         * html/parser/HTMLTreeBuilder.cpp:
115         (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Use reference instead of
116         pointer and free functions instead of member functions.
117         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): Ditto.
118         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): Ditto.
119         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): Ditto.
120         (WebCore::HTMLTreeBuilder::constructTree): Ditto.
121         (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope): Ditto.
122         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): Ditto.
123         (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
124         (WebCore::HTMLTreeBuilder::processTemplateStartTag): Ditto.
125         (WebCore::HTMLTreeBuilder::processTemplateEndTag): Ditto.
126         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): Ditto.
127         (WebCore::HTMLTreeBuilder::closeTheCell): Ditto.
128         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
129         (WebCore::HTMLTreeBuilder::processStartTag): Ditto.
130         (WebCore::HTMLTreeBuilder::processHtmlStartTagForInBody): Ditto.
131         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): Ditto.
132         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): Ditto.
133         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): Ditto.
134         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Ditto.
135         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): Ditto.
136         (WebCore::HTMLTreeBuilder::processEndTagForInRow): Ditto.
137         (WebCore::HTMLTreeBuilder::processEndTagForInCell): Ditto.
138         (WebCore::HTMLTreeBuilder::processEndTagForInBody): Ditto.
139         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): Ditto.
140         (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): Ditto.
141         (WebCore::HTMLTreeBuilder::processTableEndTagForInTable): Ditto.
142         (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
143         (WebCore::HTMLTreeBuilder::processCharacterBuffer): Ditto.
144         (WebCore::HTMLTreeBuilder::processEndOfFile): Ditto.
145         (WebCore::HTMLTreeBuilder::adjustedCurrentStackItem): Ditto.
146         (WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent): Ditto.
147         (WebCore::HTMLTreeBuilder::processTokenInForeignContent): Ditto.
148
149 2015-01-05  peavo@outlook.com  <peavo@outlook.com>
150
151         [WinCairo] Crash when font data pointer is null.
152         https://bugs.webkit.org/show_bug.cgi?id=139969
153
154         Reviewed by Darin Adler.
155
156         Added null pointer check.
157
158         Test: fonts/unicode-character-font-crash.html
159
160         * platform/graphics/win/UniscribeController.cpp:
161         (WebCore::UniscribeController::advance):
162         (WebCore::UniscribeController::shape):
163
164 2015-01-05  Michael Catanzaro  <mcatanzaro@igalia.com>
165
166         [GStreamer] Disable gst-plugin-scanner if seccomp filters are enabled
167         https://bugs.webkit.org/show_bug.cgi?id=140069
168
169         Reviewed by Philippe Normand.
170
171         If seccomp filters are enabled, any child processes we create are doomed
172         if they try to use a trapped syscall: the child will receive SIGSYS and
173         dump core. There appears to be no way around this.
174
175         Fortunately, the gstreamer developers had mad prescience and provided
176         us with a way to move plugin scanning in-process, so we don't need the
177         helper binary at all.
178
179         No new tests because this is covered by existing tests when seccomp
180         filters are enabled.
181
182         * platform/graphics/gstreamer/GStreamerUtilities.cpp:
183         (WebCore::initializeGStreamer):
184
185 2015-01-04  Darin Adler  <darin@apple.com>
186
187         * dom/DocumentFragment.cpp:
188         (WebCore::DocumentFragment::parseXML):
189         Removed an incorrect assertion my last check-in added.
190
191 2015-01-04  Darin Adler  <darin@apple.com>
192
193         Modernize and tighten up HTMLDocumentParser
194         https://bugs.webkit.org/show_bug.cgi?id=140041
195
196         Reviewed by Sam Weinig.
197
198         * dom/DocumentFragment.cpp:
199         (WebCore::DocumentFragment::parseHTML): Pass a reference instead of
200         a pointer for the context element.
201
202         * html/FTPDirectoryDocument.cpp: Removed unneeded includes, made more
203         things in FTPDirectoryDocumentParser private. Use Ref instead of RefPtr
204         in a could places. Initialize in class instead of in constructor.
205         (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
206         Less initialization here.
207         (WebCore::FTPDirectoryDocumentParser::createTDForFilename): More Ref here.
208         (WebCore::createTemplateDocumentData): Removed unneeded initialization
209         of RefPtr, which is initialized without explicitly asking for it.
210         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): Reworded
211         comment slightly.
212
213         * html/parser/HTMLDocumentParser.cpp: Cut down on includes.
214         (WebCore::tokenizerStateForContextElement): Fixed URL. Changed argument
215         to be a reference rather than a pointer.
216         (WebCore::HTMLDocumentParser::inPumpSession):
217         (WebCore::HTMLDocumentParser::shouldDelayEnd):
218         (WebCore::HTMLDocumentParser::HTMLDocumentParser): Marked constructors
219         inline. Updated for data members that are now objects instead of pointers.
220         Removed explicit initialization for scalars that are now initialized in
221         the class definition.
222         (WebCore::HTMLDocumentParser::create): Moved the private creation
223         functions in here, out of the header file.
224         (WebCore::HTMLDocumentParser::~HTMLDocumentParser): Removed unused
225         m_haveBackgroundParser.
226         (WebCore::HTMLDocumentParser::prepareToStopParsing): Updated URL and
227         removed m_haveBackgroundParser reference.
228         (WebCore::HTMLDocumentParser::processingData): Removed a check of
229         m_haveBackgroundParser.
230         (WebCore::HTMLDocumentParser::resumeParsingAfterYield): Tweak comment.
231         (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): Added
232         a null check of the result of takeScriptToProcess, since there really
233         is no guarantee it's non-null.
234         (WebCore::HTMLDocumentParser::canTakeNextToken): Removed assertion
235         that was for m_haveBackgroundParser cases only. Rewrapped comment.
236         (WebCore::HTMLDocumentParser::contextForParsingSession): Use nullptr.
237         (WebCore::HTMLDocumentParser::pumpTokenizer): Rework comments,
238         remove assertions that no longer make sense, use auto instead of
239         repeating a long type name, update to use m_token and m_tokenizer.
240         (WebCore::HTMLDocumentParser::hasInsertionPoint): Rewrapped comment.
241         (WebCore::HTMLDocumentParser::insert): Got rid of braces around a
242         single-line if body.
243         (WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd):
244         Removed comment about incorrect m_haveBackgroundParser assertion.
245         (WebCore::HTMLDocumentParser::isExecutingScript): Use && style instead
246         of early exit for a null check.
247         (WebCore::HTMLDocumentParser::textPosition): Tightened up code a little.
248         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution): Added
249         a Ref to protect the parser, as is already done in every other function
250         that calls pumpTokenizerIfPossible.
251         (WebCore::HTMLDocumentParser::parseDocumentFragment): Take a reference
252         instead of a pointer. Also use auto so we get a Ref instead of a RefPtr.
253
254         * html/parser/HTMLDocumentParser.h: Removed unneeded includes.
255         Made private inheritance explicit instead of just omitting public.
256         Moved function bodies out of the class, and in some cases, out of the
257         header entirely. Return a reference from tokenizer(). Marked most
258         virtual functions final. Made DocumentFragment version of the
259         constructor private rather than protected. Made the functions
260         suspendScheduledTasks() and resumeScheduledTasks() private, since
261         they are always called through a base class. Removed the private
262         token function since it is better to get at m_token directly.
263         Removed m_haveBackgroundParser, since we don't have that any more
264         and it's always false. Also removed forcePlaintextForTextDocument
265         since the tokenizer is exposed and can be used directly to do that.
266
267         * html/parser/HTMLTreeBuilder.cpp:
268         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): Made the parser non-const.
269         It could only be const before because HTMLDocumentParser::tokenizer
270         took a const parser and returned a non-const tokenizer, but that doesn't
271         really make sense.
272         (WebCore::HTMLTreeBuilder::constructTree): Removed null check for
273         tokenizer, which was never null. Updated since tokenizer is a reference.
274         (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
275         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
276         (WebCore::HTMLTreeBuilder::processEndTag): Ditto. Also fixed and removed
277         some assertions like the ones I did recently in the rest of this file.
278         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag): Ditto.
279         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag): Ditto.
280         (WebCore::HTMLTreeBuilder::processScriptStartTag): Ditto.
281
282         * html/parser/HTMLTreeBuilder.h: Made HTMLDocumentParser& non-const.
283
284         * html/parser/TextDocumentParser.cpp: Removed unneeded include and
285         unneeded explicit destructor.
286         (WebCore::TextDocumentParser::TextDocumentParser): Updated since
287         treeBuilder() returns a reference now, and set the tokenizer state
288         directly since tokenizer() is exposed.
289
290         * html/parser/TextDocumentParser.h: Moved initialization of the
291         data member here instead of the constructor. Also removed unneeded
292         explicitly defined destructor.
293
294 2015-01-04  Antti Koivisto  <antti@apple.com>
295
296         Remove GlyphPageTree
297         https://bugs.webkit.org/show_bug.cgi?id=140015
298
299         Follow-up to follow-up, fonts/font-fallback-prefers-pictographs.html is now failing.
300
301         * platform/graphics/FontGlyphs.cpp:
302         (WebCore::FontGlyphs::glyphDataForVariant):
303         (WebCore::FontGlyphs::glyphDataForNormalVariant):
304
305             Make the loop again go one past the last fallback index, the pictograph special case depends on it.
306
307 2015-01-04  Antti Koivisto  <antti@apple.com>
308
309         Remove GlyphPageTree
310         https://bugs.webkit.org/show_bug.cgi?id=140015
311
312         Follow-up to r177876 to fix mathml/opentype/munderover-layout-resize.html which is asserting.
313
314         * platform/graphics/FontGlyphs.cpp:
315         (WebCore::FontGlyphs::glyphDataForVariant):
316         (WebCore::FontGlyphs::glyphDataForNormalVariant):
317
318         Always return system fallback if no glyph is found.
319
320 2015-01-04  Dan Bernstein  <mitz@apple.com>
321
322         iOS build fix.
323
324         * platform/graphics/SimpleFontData.cpp:
325         (WebCore::createAndFillGlyphPage):
326
327 2015-01-02  Antti Koivisto  <antti@apple.com>
328
329         Remove GlyphPageTree
330         https://bugs.webkit.org/show_bug.cgi?id=140015
331
332         Reviewed by Darin Adler.
333
334         GlyphPageTree is a global cache consisting of a tree of nodes that match SimpleFontData instances.
335         The tree levels correspond to font fallback lists so that higher levels fill holes (missing glyphs)
336         in the lower levels. This patch replaces it with a simpler and easier to understand caching scheme.
337         In particular the goal is to have clearer ownership relations and better control over mutability.
338
339         The new scheme looks like this:
340
341         SimpleFontData instances cache GlyphPages for themselves. These pages are immutable after construction
342         and may contain holes. This is a global cache (since SimpleFontDatas are cached globally) with the same
343         lifetime as the GlyphPageTree used to have.
344
345         FontGlyphs instances cache resolved GlyphPages for the normal font variant. These are build by traversing
346         the fallback list as necessary and collecting glyphs from SimpleFontDatas. As a common case case optimization
347         the page from the primary font is cached directly as long as it has the requested glyphs.
348         FontGlyphs are shared between sufficiently similar Font instances so this is a shared cache as well.
349
350         * CMakeLists.txt:
351         * WebCore.exp.in:
352         * WebCore.vcxproj/WebCore.vcxproj:
353         * WebCore.xcodeproj/project.pbxproj:
354         * platform/graphics/FontCache.h:
355         (WebCore::FontDescriptionFontDataCacheKey::makeFlagKey):
356
357             nonCJKGlyphOrientation matters for glyph selection too and needs to be part of the FontDescription cache key.
358
359         * platform/graphics/FontData.h:
360         (WebCore::FontData::FontData):
361         (WebCore::FontData::setMaxGlyphPageTreeLevel): Deleted.
362         (WebCore::FontData::maxGlyphPageTreeLevel): Deleted.
363         * platform/graphics/FontFastPath.cpp:
364         (WebCore::Font::primaryFontHasGlyphForCharacter):
365         * platform/graphics/FontGlyphs.cpp:
366         (WebCore::FontGlyphs::FontGlyphs):
367         (WebCore::glyphDataForCJKCharacterWithoutSyntheticItalic):
368         (WebCore::glyphDataForNonCJKCharacterWithGlyphOrientation):
369         (WebCore::FontGlyphs::glyphDataForSystemFallback):
370         (WebCore::FontGlyphs::glyphDataForVariant):
371         (WebCore::FontGlyphs::glyphDataForNormalCharacter):
372
373             Traverse the fallback list by using simple index instead of indirectly via GlyphPageTreeNode traversal.
374
375         (WebCore::pageFromFontData):
376
377             Fetch a page from the primary font and see if we can use it as-is.
378             Vertical fonts have special glyph selection and can't use this path.
379
380         (WebCore::FontGlyphs::createFlattenedGlyphPage):
381
382             Build a hole-free glyph page by pulling characters from the fallback list.
383
384         (WebCore::FontGlyphs::glyphDataForCharacter):
385         * platform/graphics/FontGlyphs.h:
386         (WebCore::FontGlyphs::primarySimpleFontData):
387         * platform/graphics/GlyphPage.h:
388         (WebCore::GlyphPage::createForMixedFontData):
389         (WebCore::GlyphPage::createCopyForMixedFontData):
390
391             Add copy version.
392
393         (WebCore::GlyphPage::createForSingleFontData):
394
395             Remove owner node field.
396
397         (WebCore::GlyphPage::~GlyphPage):
398         (WebCore::GlyphPage::count):
399         (WebCore::GlyphPage::GlyphPage):
400         (WebCore::GlyphPage::createCopiedSystemFallbackPage): Deleted.
401         (WebCore::GlyphPage::owner): Deleted.
402         * platform/graphics/GlyphPageTreeNode.cpp: Removed.
403         * platform/graphics/GlyphPageTreeNode.h: Removed.
404         * platform/graphics/SegmentedFontData.cpp:
405         (WebCore::SegmentedFontData::SegmentedFontData):
406         (WebCore::SegmentedFontData::~SegmentedFontData):
407         (WebCore::SegmentedFontData::simpleFontDataForCharacter):
408
409             Return null when there is no usable range so the client can tell the difference.
410             Rename for clarity.
411
412         (WebCore::SegmentedFontData::simpleFontDataForFirstRange):
413
414             Add a way to get the fallback font separately. This is always available.
415
416         (WebCore::SegmentedFontData::isLoading):
417         (WebCore::SegmentedFontData::fontDataForCharacter): Deleted.
418         * platform/graphics/SegmentedFontData.h:
419         (WebCore::SegmentedFontData::SegmentedFontData): Deleted.
420         * platform/graphics/SimpleFontData.cpp:
421         (WebCore::SimpleFontData::initCharWidths):
422         (WebCore::SimpleFontData::platformGlyphInit):
423         (WebCore::SimpleFontData::~SimpleFontData):
424         (WebCore::SimpleFontData::simpleFontDataForCharacter):
425         (WebCore::fillGlyphPage):
426         (WebCore::createAndFillGlyphPage):
427
428             Move code for initializing glyph pages here. The code is from GlyphPageTreeNode.
429
430         (WebCore::SimpleFontData::glyphPage):
431
432             Cache glyphs for this font. These pages may have holes.
433
434         (WebCore::SimpleFontData::glyphForCharacter):
435         (WebCore::SimpleFontData::glyphDataForCharacter):
436         (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):
437
438             Since the cache is now owned by the SimpleFontData all the custom pruning can go away.
439             The glyph page cache dies along with it owner.
440
441         (WebCore::SimpleFontData::fontDataForCharacter): Deleted.
442         * platform/graphics/SimpleFontData.h:
443         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
444         (-[WebCascadeList objectAtIndex:]):
445         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
446         * platform/graphics/mac/FontComplexTextMac.cpp:
447         (WebCore::Font::fontDataForCombiningCharacterSequence):
448         * platform/graphics/mac/GlyphPageMac.cpp: Copied from Source/WebCore/platform/graphics/mac/GlyphPageTreeNodeMac.cpp.
449
450             This was already misnamed.
451
452         (WebCore::GlyphPage::fill):
453         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: Removed.
454         * platform/graphics/mac/SimpleFontDataMac.mm:
455         (WebCore::SimpleFontData::platformInit):
456         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
457         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
458         * platform/graphics/win/SimpleFontDataCGWin.cpp:
459         (WebCore::SimpleFontData::platformInit):
460         * platform/mac/DragImageMac.mm:
461
462             Add missing FontCachePurgePreventer.
463
464         (WebCore::createDragImageForLink):
465         * svg/SVGFontData.cpp:
466         (WebCore::SVGFontData::initializeFontData):
467         * svg/SVGFontElement.cpp:
468
469 2015-01-04  Anders Carlsson  <andersca@apple.com>
470
471         Remove an unused function
472         https://bugs.webkit.org/show_bug.cgi?id=140055
473
474         Reviewed by Sam Weinig.
475
476         * Modules/webdatabase/DatabaseAuthorizer.cpp:
477         (WebCore::DatabaseAuthorizer::setReadOnly): Deleted.
478         * Modules/webdatabase/DatabaseAuthorizer.h:
479         * Modules/webdatabase/DatabaseBackendBase.cpp:
480         (WebCore::DatabaseBackendBase::setAuthorizerReadOnly): Deleted.
481         * Modules/webdatabase/DatabaseBackendBase.h:
482
483 2015-01-04  Anders Carlsson  <andersca@apple.com>
484
485         Modernize parts of the database code
486         https://bugs.webkit.org/show_bug.cgi?id=140054
487
488         Reviewed by Antti Koivisto.
489
490         * Modules/webdatabase/Database.cpp:
491         (WebCore::Database::runTransaction):
492         * Modules/webdatabase/Database.h:
493         * Modules/webdatabase/SQLStatement.cpp:
494         (WebCore::SQLStatement::SQLStatement):
495         * Modules/webdatabase/SQLStatement.h:
496         * Modules/webdatabase/SQLTransaction.cpp:
497         (WebCore::SQLTransaction::create):
498         (WebCore::SQLTransaction::SQLTransaction):
499         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
500         (WebCore::SQLTransaction::executeSQL):
501         * Modules/webdatabase/SQLTransaction.h:
502         (WebCore::SQLTransaction::database):
503
504 2015-01-03  Chris Dumez  <cdumez@apple.com>
505
506         Move the CSS Grid properties to the new StyleBuilder
507         https://bugs.webkit.org/show_bug.cgi?id=140051
508
509         Reviewed by Sam Weinig.
510
511         Move the CSS Grid properties from StyleResolver to the new
512         StyleBuilder.
513
514         This patch adds support for "ConditionalConverter" parameter in
515         CSSPropertyNames.in to support cases where we only want to call the
516         property setter conditionally. The converter function is then expected
517         to return a boolean to indicate if the setter should be called by the
518         StyleBuilder or not.
519
520 2015-01-02  Chris Dumez  <cdumez@apple.com>
521
522         Kill the DeprecatedStyleBuilder
523         https://bugs.webkit.org/show_bug.cgi?id=140034
524
525         Reviewed by Darin Adler.
526
527         Move FillLayer properties to the new StyleBuilder and get rid of the
528         DeprecatedStyleBuilder now that all its CSS properties have been ported
529         to the new StyleBuilder.
530
531 2015-01-02  Chris Dumez  <cdumez@apple.com>
532
533         Move 'font-size' CSS property to the new StyleBuilder
534         https://bugs.webkit.org/show_bug.cgi?id=140010
535
536         Reviewed by Darin Adler.
537
538         Move 'font-size' CSS property to the new StyleBuilder by using custom
539         code.
540
541 2015-01-02  Darin Adler  <darin@apple.com>
542
543         Pass Document instead of ScriptExecutionContext to non-worker constructors
544         https://bugs.webkit.org/show_bug.cgi?id=140040
545
546         Reviewed by Sam Weinig.
547
548         * bindings/scripts/CodeGeneratorJS.pm:
549         (GenerateConstructorDefinition):
550         Generate code passing the document when ConstructorCallWith=Document is used.
551         Later, we could base this on whether the constructor is exposed to workers
552         or not, instead, but for now this seems a clean way to do it.
553
554         * bindings/scripts/IDLAttributes.txt: Allow ConstructorCallWith=Document.
555
556         * Modules/notifications/Notification.cpp:
557         (WebCore::Notification::create):
558         * Modules/notifications/Notification.h:
559         * Modules/notifications/Notification.idl:
560         * dom/Comment.cpp:
561         * dom/Comment.h:
562         * dom/Comment.idl:
563         * dom/DocumentFragment.cpp:
564         (WebCore::DocumentFragment::nodeName): Use ASCIILiteral (just something
565         I noticed in passing).
566         * dom/DocumentFragment.h:
567         * dom/DocumentFragment.idl:
568         * dom/Range.cpp:
569         * dom/Range.h:
570         * dom/Range.idl:
571         * dom/Text.cpp:
572         * dom/Text.h:
573         * dom/Text.idl:
574         Change from ScriptExecutionContext to Document, and remove unneeded
575         overloads that were just casting. It's better to have the bindings
576         layer, which knows these are not ScriptExecutionContext, do the cast
577         than to have create functions that cast that are not in any position
578         to know the cast is safe.
579
580 2015-01-02  Darin Adler  <darin@apple.com>
581
582         Re-land the HTMLTreeBuilder change with the assertion fixed.
583         https://bugs.webkit.org/show_bug.cgi?id=140032
584
585         Reviewed by Andreas Kling.
586
587 2015-01-02  Commit Queue  <commit-queue@webkit.org>
588
589         Unreviewed, rolling out r177859 and r177861.
590         https://bugs.webkit.org/show_bug.cgi?id=140042
591
592         Caused many assertion failures (Requested by ap on #webkit).
593
594         Reverted changesets:
595
596         "Modernize coding style of HTMLTreeBuilder"
597         https://bugs.webkit.org/show_bug.cgi?id=140032
598         http://trac.webkit.org/changeset/177859
599
600         "Tried to fix the iOS build."
601         http://trac.webkit.org/changeset/177861
602
603 2015-01-02  Dan Bernstein  <mitz@apple.com>
604
605         Tried to fix the iOS build.
606
607         * html/parser/HTMLTreeBuilder.cpp:
608
609 2015-01-01  Darin Adler  <darin@apple.com>
610
611         Rework code that hides characters in password fields to streamline a little
612         https://bugs.webkit.org/show_bug.cgi?id=140035
613
614         Reviewed by Sam Weinig.
615
616         * editing/InsertIntoTextNodeCommand.cpp:
617         (WebCore::InsertIntoTextNodeCommand::doApply): Pass the offset after the character
618         we want to reveal instead of the offset before. This is more future proof if we
619         ever want to handling surrogate pairs or combining marks, rather than hard
620         coding the likely incorrect rule of "go back by one code unit". Also got rid of
621         the isSecure check here, since RenderText can do that check inside the
622         momentarilyRevealLastTypedCharacter instead.
623
624         * rendering/RenderText.cpp: Tweaked the SecureTextTimer class: Marked it final
625         and made it derive from TimerBase privately. Made the constructor explicit and
626         made it take a reference rather than a pointer. Use initialization in the class
627         to set up the variable, and use 0 as the special value instead of -1 since we
628         now store the offset *after* the character to be revealed.
629         (WebCore::secureTextTimers): Use this function and NeverDestroyed rather than
630         a global variable gSecureTextTimers. Also use unique_ptr for the map so we
631         don't have to delete explicitly any more.
632         (WebCore::SecureTextTimer::SecureTextTimer): Moved out of the class definition
633         so the class ia a little easier to read.
634         (WebCore::SecureTextTimer::restart): Renamed since the function name doesn't
635         have to describe its argument; the function is only called in one place.
636         (WebCore::SecureTextTimer::takeOffsetAfterLastTypedCharacter): Changed name
637         and made this a one-shot that always zeroes the offset.
638         (WebCore::SecureTextTimer::fired): Moved out of line and tweaked as above.
639         (WebCore::RenderText::willBeDestroyed): Simplified now that the function
640         secureTextTimers() always returns a map and we can just remove since the
641         values in the map are unique_ptr, so take care of deletion.
642         (WebCore::RenderText::setRenderedText): Tweaked the code that calls secureText
643         to make the iOS case clearer.
644         (WebCore::RenderText::secureText): Rewrote the function. New version no
645         longer relies on a special String::fill function; it's kind of strange that
646         String had a built in concept of replacing a string with one that has the
647         same length but all with a masking character. This new approach is cleaner.
648         I had written a version that handles surrogate pairs and combining marks,
649         but then instead wrote a comment explaining why that's not needed/helpful.
650         (WebCore::RenderText::momentarilyRevealLastTypedCharacter): Added a check so
651         this does nothing if we are not securing the text. Also updated logic so that
652         this doesn't double hash any more and updated for other changes like using
653         a reference instead of a pointer.
654
655         * rendering/RenderText.h: Removed the unneeded isSecure function and updated
656         the argument name in momentarilyRevealLastTypedCharacter since it's now the
657         offset after the character, not before the character.
658
659 2015-01-01  Darin Adler  <darin@apple.com>
660
661         Modernize coding style of HTMLTreeBuilder
662         https://bugs.webkit.org/show_bug.cgi?id=140032
663
664         Reviewed by Andreas Kling.
665
666         Changes include:
667         - Use references rather than pointers.
668         - Mark data members const that are fully set up in the constructor.
669         - Remove many unneeded includes and forward declarations.
670         - Fix conditionals to be consistent and correct.
671         - Merge some multi-line constructs into a single line.
672         - Update whatwg.org URLs; not sure we should keep these, though.
673         - Cut down on use of WTF_MAKE_NONCOPYABLE since for many classes it's
674           impossible to copy anyway due to references, or harmless to copy.
675         - Made more things private.
676         - Initialize scalars in the class definition rather than each constructor.
677         - Use Ref/RefPtr instead of PassRefPtr.
678
679         * html/parser/HTMLDocumentParser.cpp:
680         (WebCore::HTMLDocumentParser::HTMLDocumentParser): Pass reference rather than pointer to
681         the context element.
682         (WebCore::HTMLDocumentParser::detach): Removed call to HTMLTreeBuilder::detach. This work
683         is instead done when the tree builder is destroyed.
684         (WebCore::HTMLDocumentParser::constructTreeFromHTMLToken): Pass reference rather than pointer.
685
686         * html/parser/HTMLTreeBuilder.cpp:
687         (WebCore::uninitializedPositionValue1): Marked this inline because it's trivial. It was
688         probably getting inlined already.
689         (WebCore::isCaptionColOrColgroupTag): Format on a single line.
690         (WebCore::isTableBodyContextTag): Ditto.
691         (WebCore::isNonAnchorFormattingTag): Ditto.
692         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer):
693         Take reference instead of pointer.
694         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemaining): Use makeString helper.
695         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeading): Tweak formatting.
696         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeading): Both of the above.
697         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::makeString): Added.
698         (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Moved the body of this function here,
699         since it's only used inside the class.
700         (WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Ditto.
701         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): Get rid of dead code that handles a null context
702         element. The FIXME mentions a bug that is obsolete. Also reorder the data members to be a bit
703         more logical and set the new m_destructionProhibited to false at the end of the constructor,
704         to check if we accidentally destroy the tree builder while constructing it.
705         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): Updated to take
706         a reference and to let m_fragment get initialized in the class definition.
707         (WebCore::HTMLTreeBuilder::FragmentParsingContext::fragment): Moved this here since it's only
708         used inside the class.
709         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): Ditto.
710         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElementStackItem): Ditto.
711         (WebCore::HTMLTreeBuilder::takeScriptToProcess): Changed return type to RefPtr instead of
712         PassRefPtr. Added code to handle m_scriptToProcess of null, since reading the code at the
713         single call site makes it clear that it's not guaranteed to be non-null! Added destruction-
714         related assertions since this is a public function.
715         (WebCore::HTMLTreeBuilder::constructTree): Updated for reference rather than pointer. Also
716         added destruction-related assertions since this is a public function.
717         (WebCore::HTMLTreeBuilder::processToken): Updated to take a reference.
718         (WebCore::HTMLTreeBuilder::processDoctypeToken): Ditto.
719         (WebCore::HTMLTreeBuilder::processFakeStartTag): Ditto. Also take an rvalue reference for
720         the vector of attributes that we will put into the token.
721         (WebCore::HTMLTreeBuilder::processFakeEndTag): Ditto.
722         (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope): Ditto.
723         (WebCore::HTMLTreeBuilder::attributesForIsindexInput): Ditto.
724         (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ditto.
725         (WebCore::isLi): Ditto.
726         (WebCore::isDdOrDt): Ditto.
727         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): Changed loop to use reference
728         rather than pointer for never-null stackItem. Also use auto and a for loop to make the
729         loop easier to read.
730         (WebCore::createCaseMap): Tweaked formatting.
731         (WebCore::adjustAttributes): Ditto.
732         (WebCore::HTMLTreeBuilder::processStartTagForInBody): Use reference instead of pointer.
733         Set insertion mode directly instead of using a setInsertionMode function.
734         (WebCore::HTMLTreeBuilder::processTemplateStartTag): Ditto.
735         (WebCore::HTMLTreeBuilder::processTemplateEndTag): Ditto.
736         (WebCore::HTMLTreeBuilder::processEndOfFileForInTemplateContents): Ditto.
737         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): Ditto.
738         (WebCore::HTMLTreeBuilder::closeTheCell): Ditto.
739         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
740         (WebCore::HTMLTreeBuilder::processStartTag): Ditto. Tweaked assertions, so that we
741         assert what state we are in before we fall through to each case, rather than asserting
742         inside each case. The per-case assertions were sort of excessive and repetitive and
743         even a bit hard to understand.
744         (WebCore::HTMLTreeBuilder::processHtmlStartTagForInBody): Ditto.
745         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): Ditto.
746         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): Ditto.
747         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): Ditto.
748         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Ditto.
749         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): Ditto.
750         (WebCore::HTMLTreeBuilder::processEndTagForInRow): Ditto.
751         (WebCore::HTMLTreeBuilder::processEndTagForInCell): Ditto.
752         (WebCore::HTMLTreeBuilder::processEndTagForInBody): Ditto.
753         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): Ditto.
754         (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): Ditto.
755         (WebCore::HTMLTreeBuilder::processTableEndTagForInTable): Ditto.
756         (WebCore::HTMLTreeBuilder::processEndTagForInTable): Ditto.
757         (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
758         (WebCore::HTMLTreeBuilder::processComment): Ditto.
759         (WebCore::HTMLTreeBuilder::processCharacter): Ditto.
760         (WebCore::HTMLTreeBuilder::insertPhoneNumberLink): Ditto.
761         (WebCore::HTMLTreeBuilder::processCharacterBuffer): Ditto.
762         (WebCore::HTMLTreeBuilder::processCharacterBufferForInBody): Ditto.
763         (WebCore::HTMLTreeBuilder::processEndOfFile): Ditto.
764         (WebCore::HTMLTreeBuilder::defaultForInitial): Ditto.
765         (WebCore::HTMLTreeBuilder::defaultForBeforeHTML): Ditto.
766         (WebCore::HTMLTreeBuilder::defaultForBeforeHead): Ditto.
767         (WebCore::HTMLTreeBuilder::defaultForInHead): Ditto.
768         (WebCore::HTMLTreeBuilder::defaultForInHeadNoscript): Ditto.
769         (WebCore::HTMLTreeBuilder::defaultForAfterHead): Ditto.
770         (WebCore::HTMLTreeBuilder::defaultForInTableText): Ditto.
771         (WebCore::HTMLTreeBuilder::processStartTagForInHead): Ditto.
772         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag): Ditto.
773         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag): Ditto.
774         (WebCore::HTMLTreeBuilder::processScriptStartTag): Ditto.
775         (WebCore::HTMLTreeBuilder::adjustedCurrentStackItem): Made this return a reference.
776         (WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent): More of the same.
777         (WebCore::HTMLTreeBuilder::processTokenInForeignContent): Ditto.
778         (WebCore::HTMLTreeBuilder::finished): Changed m_isAttached assertion to !m_destroyed.
779         Also updated the comment.
780         (WebCore::HTMLTreeBuilder::parseError): Marked this empty function inline.
781
782         * html/parser/HTMLTreeBuilder.h: Removed most includes and forward declarations.
783         Changed the phone number functions conditional to be correct. Removed a non-helpful
784         FIXME about assertions we really don't need. Removed unneeded use of the inline keyword,
785         changed types to references rather than pointer. Removed unneeded public insertionMode
786         and setInsertionMode functions. Both are things that are only done inside this class and
787         m_insertionMode can be accessed directly instead. Added a destructor that implements
788         the destruction assertions. Asserted !m_destroyed at the start of all the public functions.
789
790         * html/parser/TextDocumentParser.cpp:
791         (WebCore::TextDocumentParser::insertFakePreElement): Use reference rather than pointer.
792
793 2015-01-02  Manuel Rego Casasnovas  <rego@igalia.com>
794
795         [CSS Grid Layout] Remove stack from grid-auto-flow syntax
796         https://bugs.webkit.org/show_bug.cgi?id=134842
797
798         Reviewed by Sergio Villar Senin.
799
800         "stack" mode for grid-auto-flow property has been removed from the grid
801         layout spec. New syntax is:
802           [ row | column ] || dense
803
804         Modified parsing in order to adapt it to the new syntax.
805
806         Also the current behavior relying on "stack" has been updated following
807         the spec. Now it won't be possible to mimic the old "none" (or "stack")
808         unless you specify manually the grid-placement properties.
809
810         No new tests needed, updated current tests to adapt them to the new
811         behavior.
812
813         * css/CSSComputedStyleDeclaration.cpp:
814         (WebCore::ComputedStyleExtractor::propertyValue): Adapt to new syntax.
815         * css/CSSParser.cpp:
816         (WebCore::isValidGridAutoFlowId): Remove "stack" from valid ids.
817         (WebCore::CSSParser::parseGridAutoFlow): Adapt to new syntax.
818         * css/CSSValueKeywords.in: Remove "stack".
819         * css/StyleResolver.cpp:
820         (WebCore::StyleResolver::applyProperty): Adapt to new syntax.
821         * rendering/RenderGrid.cpp:
822         (WebCore::RenderGrid::placeItemsOnGrid): Remove old "stack" code.
823         * rendering/style/GridResolvedPosition.cpp:
824         (WebCore::GridResolvedPosition::resolveGridPositionsFromStyle): If we
825         cannot resolve positions, we have to run the auto-placement algorithm.
826         * rendering/style/RenderStyle.h: Remove "stack".
827         * rendering/style/RenderStyleConstants.h: Ditto.
828
829 2015-01-01  Sam Weinig  <sam@webkit.org>
830
831         Remove GroupSettings
832         https://bugs.webkit.org/show_bug.cgi?id=140037
833
834         Reviewed by Dan Bernstein.
835
836         Nothing sets the values in GroupSettings and nothing uses them.
837         - The indexedDBDatabasePath is accessed and sent to the IndexedDB backend,
838           but the backend then proceeds to not use it.
839
840         * CMakeLists.txt:
841         * Modules/indexeddb/IDBFactory.cpp:
842         (WebCore::IDBFactory::getDatabaseNames):
843         (WebCore::IDBFactory::deleteDatabase):
844         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
845         (WebCore::IDBFactoryBackendInterface::create):
846         * Modules/indexeddb/IDBFactoryBackendInterface.h:
847         * Modules/indexeddb/PageGroupIndexedDatabase.cpp:
848         (WebCore::PageGroupIndexedDatabase::PageGroupIndexedDatabase):
849         (WebCore::PageGroupIndexedDatabase::from):
850         (WebCore::PageGroupIndexedDatabase::factoryBackend):
851         * Modules/indexeddb/PageGroupIndexedDatabase.h:
852         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
853         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
854         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
855         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
856         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
857         * WebCore.exp.in:
858         * WebCore.vcxproj/WebCore.vcxproj:
859         * WebCore.vcxproj/WebCore.vcxproj.filters:
860         * WebCore.xcodeproj/project.pbxproj:
861         * dom/DocumentStyleSheetCollection.cpp:
862         * page/CaptionUserPreferences.cpp:
863         * page/Frame.cpp:
864         * page/GroupSettings.cpp: Removed.
865         * page/GroupSettings.h: Removed.
866         * page/PageGroup.cpp:
867         (WebCore::PageGroup::PageGroup):
868         * page/PageGroup.h:
869         (WebCore::PageGroup::groupSettings): Deleted.
870         * platform/DatabaseStrategy.cpp:
871         (WebCore::DatabaseStrategy::createIDBFactoryBackend):
872         * platform/DatabaseStrategy.h:
873         * workers/DedicatedWorkerGlobalScope.cpp:
874         (WebCore::DedicatedWorkerGlobalScope::create):
875         (WebCore::DedicatedWorkerGlobalScope::DedicatedWorkerGlobalScope):
876         * workers/DedicatedWorkerGlobalScope.h:
877         * workers/DedicatedWorkerThread.cpp:
878         (WebCore::DedicatedWorkerThread::create):
879         (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
880         (WebCore::DedicatedWorkerThread::createWorkerGlobalScope):
881         * workers/DedicatedWorkerThread.h:
882         * workers/DefaultSharedWorkerRepository.cpp:
883         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
884         (WebCore::SharedWorkerProxy::groupSettings): Deleted.
885         * workers/SharedWorkerGlobalScope.cpp:
886         (WebCore::SharedWorkerGlobalScope::create):
887         (WebCore::SharedWorkerGlobalScope::SharedWorkerGlobalScope):
888         * workers/SharedWorkerGlobalScope.h:
889         * workers/SharedWorkerThread.cpp:
890         (WebCore::SharedWorkerThread::create):
891         (WebCore::SharedWorkerThread::SharedWorkerThread):
892         (WebCore::SharedWorkerThread::createWorkerGlobalScope):
893         * workers/SharedWorkerThread.h:
894         * workers/WorkerGlobalScope.cpp:
895         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
896         * workers/WorkerGlobalScope.h:
897         (WebCore::WorkerGlobalScope::groupSettings): Deleted.
898         * workers/WorkerMessagingProxy.cpp:
899         (WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
900         * workers/WorkerThread.cpp:
901         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
902         (WebCore::WorkerThread::WorkerThread):
903         (WebCore::WorkerThread::workerThread):
904         * workers/WorkerThread.h:
905
906 2015-01-01  Dan Bernstein  <mitz@apple.com>
907
908         Tried to fix the iOS build.
909
910         * page/scrolling/ios/ScrollingTreeIOS.cpp:
911         (WebCore::ScrollingTreeIOS::scrollingTreeNodeDidScroll):
912
913 2015-01-01  Darin Adler  <darin@apple.com>
914
915         Fix itearator typo
916         https://bugs.webkit.org/show_bug.cgi?id=140027
917
918         Reviewed by Csaba Osztrogonác.
919
920         * rendering/SimpleLineLayoutFlowContents.cpp:
921         (WebCore::SimpleLineLayout::nextBreakablePosition): Spelling mistake.
922
923 2015-01-01  Alexey Proskuryakov  <ap@apple.com>
924
925         Don't dereference end() in SimpleLineLayout::RunResolver::rangeForRenderer
926         https://bugs.webkit.org/show_bug.cgi?id=139951
927         rdar://problem/19339881
928
929         Reviewed by Darin Adler.
930
931         * rendering/SimpleLineLayoutResolver.cpp:
932         (WebCore::SimpleLineLayout::RunResolver::rangeForRenderer):
933
934 2015-01-01  Chris Dumez  <cdumez@apple.com>
935
936         ASSERT that a null key is never used with FeatureCounter
937         https://bugs.webkit.org/show_bug.cgi?id=140030
938
939         Reviewed by Darin Adler.
940
941         * platform/FeatureCounter.cpp:
942         (WebCore::FeatureCounter::incrementKey):
943         (WebCore::FeatureCounter::setKey):
944         * platform/ios/FeatureCounter.mm:
945         (WebCore::FeatureCounter::incrementKey):
946         (WebCore::FeatureCounter::setKey):
947
948 2015-01-01  Chris Dumez  <cdumez@apple.com>
949
950         [iOS] Fix memory leak in FeatureCounter
951         https://bugs.webkit.org/show_bug.cgi?id=140029
952         <rdar://problem/19255690>
953
954         Reviewed by Darin Adler.
955
956         Fix memory leak in FeatureCounter. The NSString for the counter key
957         was allocated but never released. The patch switches to using a
958         RetainPtr instead of a raw pointer to avoid the issue.
959
960         * platform/ios/FeatureCounter.mm:
961         (WebCore::FeatureCounter::incrementKey):
962         (WebCore::FeatureCounter::setKey):
963
964 2015-01-01  Jeff Miller  <jeffm@apple.com>
965
966         Update user-visible copyright strings to include 2015
967         https://bugs.webkit.org/show_bug.cgi?id=139880
968
969         Reviewed by Darin Adler.
970
971         * Info.plist:
972
973 2014-12-31  Sam Weinig  <sam@webkit.org>
974
975         Move scrolling code off of WTF::bind
976         https://bugs.webkit.org/show_bug.cgi?id=140019
977
978         Reviewed by Darin Adler.
979
980         * page/scrolling/ThreadedScrollingTree.cpp:
981         (WebCore::ThreadedScrollingTree::tryToHandleWheelEvent):
982         (WebCore::ThreadedScrollingTree::invalidate):
983         (WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):
984         (WebCore::ThreadedScrollingTree::handleWheelEventPhase):
985         (WebCore::derefScrollingCoordinator): Deleted.
986         * page/scrolling/ios/ScrollingTreeIOS.cpp:
987         (WebCore::ScrollingTreeIOS::invalidate):
988         (WebCore::ScrollingTreeIOS::scrollingTreeNodeDidScroll):
989         (WebCore::derefScrollingCoordinator): Deleted.
990         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
991         (WebCore::ScrollingCoordinatorMac::pageDestroyed):
992         (WebCore::ScrollingCoordinatorMac::handleWheelEvent):
993         * platform/MemoryPressureHandler.cpp:
994         (WebCore::MemoryPressureHandler::releaseMemory):
995         * workers/WorkerThread.cpp:
996         (WebCore::WorkerThread::releaseFastMallocFreeMemoryInAllThreads):
997
998 2015-01-01  Antti Koivisto  <antti@apple.com>
999
1000         Remove FontData::containsCharacters
1001         https://bugs.webkit.org/show_bug.cgi?id=140026
1002
1003         Reviewed by Dan Bernstein.
1004
1005         This virtual function has no clients.
1006
1007         * platform/graphics/FontData.h:
1008         * platform/graphics/SegmentedFontData.cpp:
1009         (WebCore::SegmentedFontData::containsCharacter): Deleted.
1010         (WebCore::SegmentedFontData::containsCharacters): Deleted.
1011         * platform/graphics/SegmentedFontData.h:
1012         * platform/graphics/SimpleFontData.h:
1013         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
1014         (WebCore::SimpleFontData::containsCharacters): Deleted.
1015         * platform/graphics/ios/SimpleFontDataIOS.mm:
1016         (WebCore::SimpleFontData::containsCharacters): Deleted.
1017         * platform/graphics/mac/SimpleFontDataMac.mm:
1018         (WebCore::SimpleFontData::containsCharacters): Deleted.
1019         * platform/graphics/win/SimpleFontDataWin.cpp:
1020         (WebCore::SimpleFontData::containsCharacters): Deleted.
1021
1022 2015-01-01  Darin Adler  <darin@apple.com>
1023
1024         We often misspell identifier as "identifer"
1025         https://bugs.webkit.org/show_bug.cgi?id=140025
1026
1027         Reviewed by Michael Saboff.
1028
1029         * html/MediaFragmentURIParser.cpp:
1030         (WebCore::MediaFragmentURIParser::parseNPTFragment):
1031         * html/parser/AtomicHTMLToken.h:
1032         * html/parser/HTMLToken.h:
1033         * html/shadow/SliderThumbElement.h:
1034         * platform/graphics/ISOVTTCue.cpp:
1035         (WebCore::ISOWebVTTCue::ISOWebVTTCue):
1036         * platform/graphics/ISOVTTCue.h:
1037         (WebCore::ISOWebVTTCue::id):
1038         Fix mispellings.
1039
1040 2015-01-01  Zalan Bujtas  <zalan@apple.com>
1041
1042         Saturated arithmetics: Incorrect float/double clamping.
1043         https://bugs.webkit.org/show_bug.cgi?id=139888
1044         rdar://problem/19330885
1045
1046         Reviewed by Simon Fraser.
1047
1048         Clamp float and double values correctly when applying saturated arithmetics.
1049
1050         Test: LayoutUnit test for float overflow.
1051
1052         * platform/LayoutUnit.h:
1053         (WebCore::LayoutUnit::LayoutUnit):
1054
1055 2014-12-31  Dan Bernstein  <mitz@apple.com>
1056
1057         Fixed the iOS build.
1058
1059         * page/scrolling/ios/ScrollingCoordinatorIOS.mm:
1060         (WebCore::ScrollingCoordinatorIOS::commitTreeState):
1061
1062 2014-12-31  Csaba Osztrogonác  <ossy@webkit.org>
1063
1064         URTBF after r177835.
1065
1066         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
1067         (WebCore::ScrollingCoordinatorCoordinatedGraphics::ScrollingCoordinatorCoordinatedGraphics):
1068         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
1069
1070 2014-12-31  Commit Queue  <commit-queue@webkit.org>
1071
1072         Unreviewed, rolling out r176476.
1073         https://bugs.webkit.org/show_bug.cgi?id=140021
1074
1075         Sadly, this didn't reduce media test crashiness (Requested by
1076         ap on #webkit).
1077
1078         Reverted changeset:
1079
1080         "[Mac] Random crashes inside media libraries when creating
1081         then destroying media quickly."
1082         https://bugs.webkit.org/show_bug.cgi?id=138980
1083         http://trac.webkit.org/changeset/176476
1084
1085 2014-12-31  Sam Weinig  <sam@webkit.org>
1086
1087         Remove the remaining uses of OwnPtr from WebKit2
1088         https://bugs.webkit.org/show_bug.cgi?id=140017
1089
1090         Reviewed by Dan Bernstein.
1091
1092         * WebCore.exp.in:
1093         * page/scrolling/AsyncScrollingCoordinator.cpp:
1094         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
1095         * page/scrolling/AsyncScrollingCoordinator.h:
1096         * page/scrolling/ScrollingStateTree.cpp:
1097         (WebCore::ScrollingStateTree::commit):
1098         (WebCore::ScrollingStateTree::create): Deleted.
1099         * page/scrolling/ScrollingStateTree.h:
1100         * page/scrolling/ScrollingTree.cpp:
1101         (WebCore::ScrollingTree::commitNewTreeState):
1102         * page/scrolling/ScrollingTree.h:
1103         * page/scrolling/ThreadedScrollingTree.cpp:
1104         (WebCore::ThreadedScrollingTree::commitNewTreeState):
1105         * page/scrolling/ThreadedScrollingTree.h:
1106         * page/scrolling/ios/ScrollingTreeIOS.cpp:
1107         (WebCore::ScrollingTreeIOS::commitNewTreeState):
1108         * page/scrolling/ios/ScrollingTreeIOS.h:
1109         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1110         (WebCore::ScrollingCoordinatorMac::commitTreeState):
1111
1112 2014-12-31  Dan Bernstein  <mitz@apple.com>
1113
1114         Don’t use AccessibilityAllInOne when building with Xcode
1115         https://bugs.webkit.org/show_bug.cgi?id=139974
1116
1117         Reviewed by Darin Adler.
1118
1119         * WebCore.xcodeproj/project.pbxproj: Added all files included by AccessibilityAllInOne.cpp
1120         to the WebCore target, and removed AccessibilityAllInOne.cpp from the project.
1121
1122 2014-12-30  Chris Dumez  <cdumez@apple.com>
1123
1124         Move font-related CSS properties to the new StyleBuilder
1125         https://bugs.webkit.org/show_bug.cgi?id=140008
1126
1127         Reviewed by Darin Adler.
1128
1129         Move font-related CSS properties to the new StyleBuilder
1130         by teaching makeprop.pl how to generate them.
1131
1132         * css/CSSPropertyNames.in:
1133         * css/DeprecatedStyleBuilder.cpp:
1134         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1135         (WebCore::ApplyPropertyFont::applyInheritValue): Deleted.
1136         (WebCore::ApplyPropertyFont::applyInitialValue): Deleted.
1137         (WebCore::ApplyPropertyFont::applyValue): Deleted.
1138         (WebCore::ApplyPropertyFont::createHandler): Deleted.
1139         * css/makeprop.pl:
1140         (generateInitialValueSetter):
1141         (generateInheritValueSetter):
1142         (generateValueSetter):
1143         * platform/graphics/FontDescription.h:
1144         (WebCore::FontDescription::initialItalic):
1145         (WebCore::FontDescription::initialSmallCaps):
1146         (WebCore::FontDescription::initialKerning):
1147         (WebCore::FontDescription::initialFontSmoothing):
1148         (WebCore::FontDescription::initialTextRenderingMode):
1149
1150 2014-12-30  Chris Dumez  <cdumez@apple.com>
1151
1152         Move '-webkit-font-variant-ligature' CSS property to the new StyleBuilder
1153         https://bugs.webkit.org/show_bug.cgi?id=140007
1154
1155         Reviewed by Darin Adler.
1156
1157         Move '-webkit-font-variant-ligature' CSS property to the new StyleBuilder
1158         by using custom code.
1159
1160         * css/CSSPropertyNames.in:
1161         * css/DeprecatedStyleBuilder.cpp:
1162         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1163         (WebCore::ApplyPropertyFontVariantLigatures::applyInheritValue): Deleted.
1164         (WebCore::ApplyPropertyFontVariantLigatures::applyInitialValue): Deleted.
1165         (WebCore::ApplyPropertyFontVariantLigatures::applyValue): Deleted.
1166         (WebCore::ApplyPropertyFontVariantLigatures::createHandler): Deleted.
1167         * css/StyleBuilderCustom.h:
1168         (WebCore::StyleBuilderCustom::applyInitialWebkitFontVariantLigatures):
1169         (WebCore::StyleBuilderCustom::applyInheritWebkitFontVariantLigatures):
1170         (WebCore::StyleBuilderCustom::applyValueWebkitFontVariantLigatures):
1171
1172 2014-12-29  Chris Dumez  <cdumez@apple.com>
1173
1174         Move animation / transition CSS properties to the new StyleBuilder
1175         https://bugs.webkit.org/show_bug.cgi?id=139999
1176
1177         Reviewed by Darin Adler.
1178
1179         Move animation / transition CSS properties to the new StyleBuilder by
1180         teaching makeprop.pl how to generate them.
1181
1182 2014-12-29  Anders Carlsson  <andersca@apple.com>
1183
1184         Remove more dead code
1185         https://bugs.webkit.org/show_bug.cgi?id=139998
1186
1187         Reviewed by Oliver Hunt.
1188
1189         * page/PageGroup.cpp:
1190         (WebCore::PageGroup::localStorage): Deleted.
1191         (WebCore::PageGroup::transientLocalStorage): Deleted.
1192         * page/PageGroup.h:
1193         (WebCore::PageGroup::hasLocalStorage): Deleted.
1194
1195 2014-12-29  Anders Carlsson  <andersca@apple.com>
1196
1197         Remove unneeded StorageNamespace functions
1198         https://bugs.webkit.org/show_bug.cgi?id=139997
1199
1200         Reviewed by Sam Weinig.
1201
1202         * loader/EmptyClients.cpp:
1203         * storage/StorageNamespace.h:
1204         (WebCore::StorageNamespace::closeIdleLocalStorageDatabases): Deleted.
1205
1206 2014-12-29  Anders Carlsson  <andersca@apple.com>
1207
1208         Get rid of some PageGroup storage functions
1209         https://bugs.webkit.org/show_bug.cgi?id=139996
1210
1211         Reviewed by Sam Weinig.
1212
1213         * WebCore.exp.in:
1214         * page/PageGroup.cpp:
1215         (WebCore::PageGroup::closeLocalStorage): Deleted.
1216         (WebCore::PageGroup::clearLocalStorageForAllOrigins): Deleted.
1217         (WebCore::PageGroup::clearLocalStorageForOrigin): Deleted.
1218         (WebCore::PageGroup::closeIdleLocalStorageDatabases): Deleted.
1219         (WebCore::PageGroup::syncLocalStorage): Deleted.
1220         * page/PageGroup.h:
1221
1222 2014-12-29  Anders Carlsson  <andersca@apple.com>
1223
1224         Move storage code from WebCore to WebKit
1225         https://bugs.webkit.org/show_bug.cgi?id=139558
1226
1227         Reviewed by Darin Adler.
1228
1229         * WebCore.exp.in:
1230         * WebCore.vcxproj/WebCore.vcxproj:
1231         * WebCore.vcxproj/WebCore.vcxproj.filters:
1232         * WebCore.xcodeproj/project.pbxproj:
1233         * platform/MemoryPressureHandler.cpp:
1234
1235 2014-12-29  Sebastian Dröge  <sebastian@centricular.com>
1236
1237         [GStreamer] Rewrite MediaSource implementation
1238         https://bugs.webkit.org/show_bug.cgi?id=139441
1239
1240         Reviewed by Philippe Normand.
1241
1242         This now is a clean reimplementation around appsrc that works good
1243         enough for YouTube (except for seeking), but it still does not
1244         implement the complete API correctly. Further work is required on
1245         top of this and the Bugzilla ticket linked above contains some
1246         further work in the right direction.
1247
1248         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1249         (WebCore::MediaPlayerPrivateGStreamer::doSeek):
1250         (WebCore::MediaPlayerPrivateGStreamer::didLoadingProgress):
1251         (WebCore::MediaPlayerPrivateGStreamer::sourceChanged):
1252         (WebCore::MediaPlayerPrivateGStreamer::canSaveMediaData):
1253         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1254         (WebCore::MediaPlayerPrivateGStreamer::totalVideoFrames):
1255         (WebCore::MediaPlayerPrivateGStreamer::droppedVideoFrames):
1256         (WebCore::MediaPlayerPrivateGStreamer::corruptedVideoFrames):
1257         (WebCore::MediaPlayerPrivateGStreamer::totalFrameDelay):
1258         (WebCore::MediaPlayerPrivateGStreamer::isMediaSource):
1259         * platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
1260         (WebCore::MediaSourceGStreamer::MediaSourceGStreamer):
1261         (WebCore::MediaSourceGStreamer::addSourceBuffer):
1262         (WebCore::MediaSourceGStreamer::durationChanged):
1263         (WebCore::MediaSourceGStreamer::markEndOfStream):
1264         (WebCore::MediaSourceGStreamer::unmarkEndOfStream):
1265         (WebCore::MediaSourceGStreamer::readyState):
1266         (WebCore::MediaSourceGStreamer::setReadyState):
1267         (WebCore::MediaSourceGStreamer::waitForSeekCompleted):
1268         (WebCore::MediaSourceGStreamer::seekCompleted):
1269         * platform/graphics/gstreamer/MediaSourceGStreamer.h:
1270         * platform/graphics/gstreamer/SourceBufferPrivateGStreamer.cpp:
1271         (WebCore::SourceBufferPrivateGStreamer::SourceBufferPrivateGStreamer):
1272         (WebCore::SourceBufferPrivateGStreamer::~SourceBufferPrivateGStreamer):
1273         (WebCore::SourceBufferPrivateGStreamer::setClient):
1274         (WebCore::SourceBufferPrivateGStreamer::append):
1275         (WebCore::SourceBufferPrivateGStreamer::removedFromMediaSource):
1276         (WebCore::SourceBufferPrivateGStreamer::readyState):
1277         (WebCore::SourceBufferPrivateGStreamer::setReadyState):
1278         (WebCore::SourceBufferPrivateGStreamer::flushAndEnqueueNonDisplayingSamples):
1279         (WebCore::SourceBufferPrivateGStreamer::enqueueSample):
1280         (WebCore::SourceBufferPrivateGStreamer::isReadyForMoreSamples):
1281         (WebCore::SourceBufferPrivateGStreamer::setActive):
1282         (WebCore::SourceBufferPrivateGStreamer::stopAskingForMoreSamples):
1283         (WebCore::SourceBufferPrivateGStreamer::notifyClientWhenReadyForMoreSamples):
1284         * platform/graphics/gstreamer/SourceBufferPrivateGStreamer.h:
1285         * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
1286         (webkit_media_src_class_init):
1287         (webkit_media_src_init):
1288         (webKitMediaSrcFinalize):
1289         (webKitMediaSrcSetProperty):
1290         (webKitMediaSrcGetProperty):
1291         (webKitMediaSrcDoAsyncStart):
1292         (webKitMediaSrcDoAsyncDone):
1293         (webKitMediaSrcChangeState):
1294         (webKitMediaSrcQueryWithParent):
1295         (webKitMediaSrcGetUri):
1296         (webKitMediaSrcSetUri):
1297         (WebCore::MediaSourceClientGStreamer::MediaSourceClientGStreamer):
1298         (WebCore::MediaSourceClientGStreamer::~MediaSourceClientGStreamer):
1299         (WebCore::MediaSourceClientGStreamer::addSourceBuffer):
1300         (WebCore::MediaSourceClientGStreamer::durationChanged):
1301         (WebCore::MediaSourceClientGStreamer::append):
1302         (WebCore::MediaSourceClientGStreamer::markEndOfStream):
1303         (WebCore::MediaSourceClientGStreamer::removedFromMediaSource):
1304         (WTF::adoptGRef):
1305         (WTF::refGPtr<WebKitMediaSrc>):
1306         (WTF::derefGPtr<WebKitMediaSrc>):
1307         (webKitMediaSrcAddSrc): Deleted.
1308         (webKitMediaVideoSrcStop): Deleted.
1309         (webKitMediaAudioSrcStop): Deleted.
1310         (webKitMediaVideoSrcStart): Deleted.
1311         (webKitMediaAudioSrcStart): Deleted.
1312         (webKitMediaVideoSrcNeedDataMainCb): Deleted.
1313         (webKitMediaAudioSrcNeedDataMainCb): Deleted.
1314         (webKitMediaVideoSrcNeedDataCb): Deleted.
1315         (webKitMediaAudioSrcNeedDataCb): Deleted.
1316         (webKitMediaVideoSrcEnoughDataMainCb): Deleted.
1317         (webKitMediaAudioSrcEnoughDataMainCb): Deleted.
1318         (webKitMediaVideoSrcEnoughDataCb): Deleted.
1319         (webKitMediaAudioSrcEnoughDataCb): Deleted.
1320         (webKitMediaVideoSrcSeekMainCb): Deleted.
1321         (webKitMediaAudioSrcSeekMainCb): Deleted.
1322         (webKitMediaVideoSrcSeekDataCb): Deleted.
1323         (webKitMediaAudioSrcSeekDataCb): Deleted.
1324         (webKitMediaSrcSetMediaPlayer): Deleted.
1325         (webKitMediaSrcSetPlayBin): Deleted.
1326         (MediaSourceClientGstreamer::MediaSourceClientGstreamer): Deleted.
1327         (MediaSourceClientGstreamer::~MediaSourceClientGstreamer): Deleted.
1328         (MediaSourceClientGstreamer::didReceiveDuration): Deleted.
1329         (MediaSourceClientGstreamer::didReceiveData): Deleted.
1330         (MediaSourceClientGstreamer::didFinishLoading): Deleted.
1331         (MediaSourceClientGstreamer::didFail): Deleted.
1332         * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.h:
1333         Rewrite MediaSource implementation for GStreamer. The old code was
1334         overly complicated and did not work at all for anything I've tested
1335         it with.
1336
1337 2014-12-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1338
1339         Unreviewed, additional build fix on win port since r177786.
1340
1341         * platform/graphics/opengl/Extensions3DOpenGLES.h: Change a constructor from *protected* to *public*.
1342
1343 2014-12-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1344
1345         Unreviewed, speculative build fix on win port since r177786.
1346
1347         Apply std::unique_ptr<> and std::make_unique<> to win files as well.
1348
1349         * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
1350         (WebCore::GraphicsContext3D::getExtensions):
1351         * platform/graphics/win/GraphicsContextWin.cpp:
1352         (WebCore::GraphicsContext::createWindowsBitmap):
1353
1354 2014-12-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1355
1356         Convert OwnPtr to std::unique_ptr in WebCore/graphics/
1357         https://bugs.webkit.org/show_bug.cgi?id=139971
1358
1359         Reviewed by Darin Adler.
1360
1361         Use std::unique_ptr<> and std::make_unique<> instead of OwnPtr.
1362
1363         * platform/graphics/GlyphMetricsMap.h:
1364         (WebCore::GlyphMetricsMap<T>::locatePageSlowCase):
1365         * platform/graphics/GlyphPageTreeNode.cpp:
1366         (WebCore::GlyphPageTreeNode::getChild):
1367         (WebCore::GlyphPageTreeNode::pruneCustomFontData):
1368         (WebCore::GlyphPageTreeNode::pruneFontData):
1369         * platform/graphics/GlyphPageTreeNode.h:
1370         * platform/graphics/GraphicsContext.h:
1371         * platform/graphics/GraphicsContext3D.h:
1372         * platform/graphics/GraphicsContext3DPrivate.h:
1373         * platform/graphics/GraphicsLayer.h:
1374         * platform/graphics/MaskImageOperation.h:
1375         * platform/graphics/ca/LayerPool.h:
1376         * platform/graphics/ca/TileController.h:
1377         * platform/graphics/ca/TileCoverageMap.h:
1378         * platform/graphics/ca/mac/WebTiledBackingLayer.h:
1379         * platform/graphics/gpu/DrawingBuffer.h:
1380         * platform/graphics/gpu/Texture.cpp:
1381         (WebCore::Texture::Texture):
1382         (WebCore::Texture::create):
1383         * platform/graphics/gpu/Texture.h:
1384         * platform/graphics/opengl/Extensions3DOpenGL.h:
1385         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1386         (WebCore::GraphicsContext3D::getExtensions):
1387         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
1388         (WebCore::GraphicsContext3D::compileShader):
1389         (WebCore::GraphicsContext3D::mappedSymbolName):
1390         * platform/graphics/wayland/WaylandDisplay.cpp:
1391         (WebCore::WaylandDisplay::createSharingGLContext):
1392         * platform/graphics/wayland/WaylandDisplay.h:
1393         * platform/graphics/wayland/WaylandSurface.cpp:
1394         (WebCore::WaylandSurface::createGLContext):
1395         * platform/graphics/wayland/WaylandSurface.h:
1396
1397 2014-12-28  Dan Bernstein  <mitz@apple.com>
1398
1399         iOS build fix.
1400
1401         Reverted r177781, because it appears to trigger <http://webkit.org/b/139609> on iOS.
1402
1403         * WebCore.xcodeproj/project.pbxproj:
1404
1405 2014-12-28  Roland Takacs  <rtakacs.u-szeged@partner.samsung.com>
1406
1407         Set relayoutChildren to 'true' only if size change happens in Table
1408         https://bugs.webkit.org/show_bug.cgi?id=139676
1409
1410         Reviewed by Darin Adler.
1411
1412         Pass 'true' value for layoutPositionedObjects() in case of size change.
1413         It helps to avoid unneccessary setChildNeedsLayout() and
1414         setPreferredLogicalWidthsDirty() calls.
1415
1416         This is a backport of my fix in Blink: https://codereview.chromium.org/714933002/
1417
1418         * rendering/RenderTable.cpp:
1419         (WebCore::RenderTable::layout):
1420
1421 2014-12-28  Dan Bernstein  <mitz@apple.com>
1422
1423         Don’t use AccessibilityAllInOne when building with Xcode
1424         https://bugs.webkit.org/show_bug.cgi?id=139974
1425
1426         Reviewed by Darin Adler.
1427
1428         * WebCore.xcodeproj/project.pbxproj: Added all files included by AccessibilityAllInOne.cpp
1429         to the WebCore target, and removed AccessibilityAllInOne.cpp from the project.
1430
1431 2014-12-26  Andreas Kling  <akling@apple.com>
1432
1433         Purge PassRefPtr from Element and ElementRareData.
1434         <https://webkit.org/b/139949>
1435
1436         Reviewed by Anders Carlsson.
1437
1438         Make functions that used to take PassRefPtr now take Ref&& or RefPtr&&
1439         instead depending on possible nullity of incoming values.
1440
1441         * dom/Element.cpp:
1442         (WebCore::Element::addShadowRoot):
1443         (WebCore::Element::setBeforePseudoElement):
1444         (WebCore::Element::setAfterPseudoElement):
1445         * dom/Element.h:
1446         * dom/ElementRareData.h:
1447         (WebCore::ElementRareData::setShadowRoot):
1448         (WebCore::ElementRareData::setBeforePseudoElement):
1449         (WebCore::ElementRareData::setAfterPseudoElement):
1450         * dom/PseudoElement.h:
1451         * dom/ShadowRoot.h:
1452         * style/StyleResolveTree.cpp:
1453         (WebCore::Style::setBeforeOrAfterPseudoElement):
1454         (WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
1455
1456 2014-12-26  Dan Bernstein  <mitz@apple.com>
1457
1458         <rdar://problem/19348208> REGRESSION (r177027): iOS builds use the wrong toolchain
1459         https://bugs.webkit.org/show_bug.cgi?id=139950
1460
1461         Reviewed by David Kilzer.
1462
1463         * Configurations/Base.xcconfig: Only define TOOLCHAINS when building for OS X, doing so
1464         in a manner that works with Xcode 5.1.1.
1465
1466 2014-12-25  Dhi Aurrahman  <diorahman@rockybars.com>
1467
1468         Allow strings as argument to :lang()
1469         https://bugs.webkit.org/show_bug.cgi?id=139678
1470
1471         Reviewed by Benjamin Poulain.
1472
1473         Allow strings as argument to :lang()[1]. The selector with empty string argument (e.g. :lang(""))
1474         is handled as never matching.
1475
1476         [1] http://www.w3.org/blog/CSS/2014/12/11/minutes-telecon-231/
1477
1478         Test: fast/css/css-lang-selector-with-string-arguments-text.html
1479               fast/selectors/lang-extended-filtering-with-string-arguments.html
1480
1481         * css/CSSGrammar.y.in:
1482         * css/SelectorCheckerTestFunctions.h:
1483         (WebCore::matchesLangPseudoClass):
1484
1485 2014-12-25  Andreas Kling  <akling@apple.com>
1486
1487         DOM exception creator functions should return Ref.
1488         <https://webkit.org/b/139947>
1489
1490         Reviewed by Chris Dumez.
1491
1492         Tweak all the FooException::create() to return Ref instead of
1493         PassRefPtr since construction always succeeds.
1494
1495         Also add a toJS() overload for ImplType& to keep bindings building.
1496
1497         * Modules/indexeddb/IDBDatabaseException.h:
1498         (WebCore::IDBDatabaseException::create):
1499         * Modules/webdatabase/SQLException.h:
1500         (WebCore::SQLException::create):
1501         * bindings/scripts/CodeGeneratorJS.pm:
1502         (GenerateHeader):
1503         * dom/DOMCoreException.h:
1504         (WebCore::DOMCoreException::create):
1505         * dom/EventException.h:
1506         (WebCore::EventException::create):
1507         * dom/RangeException.h:
1508         (WebCore::RangeException::create):
1509         * fileapi/FileException.h:
1510         (WebCore::FileException::create):
1511         * svg/SVGException.h:
1512         (WebCore::SVGException::create):
1513         * xml/XMLHttpRequestException.h:
1514         (WebCore::XMLHttpRequestException::create):
1515         * xml/XPathException.h:
1516         (WebCore::XPathException::create):
1517
1518 2014-12-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1519
1520         Unreviewed, fix build break on win debug build since r177737.
1521
1522         Partial revert some code in r177737 because it causes build error on win debug buildbot.
1523
1524         * dom/ElementIteratorAssertions.h:
1525         (WebCore::ElementIteratorAssertions::ElementIteratorAssertions):
1526
1527 2014-12-25  Dan Bernstein  <mitz@apple.com>
1528
1529         Give extract-localizable-strings an option to treat warnings as errors
1530         https://bugs.webkit.org/show_bug.cgi?id=139943
1531
1532         Reviewed by Darin Adler.
1533
1534         Add a --treat-warnings-as-errors option, which makes the script emit its warnings as errors
1535         and exit with a non-0 return code if it emitted any warnings.
1536
1537         * extract-localizable-strings.pl:
1538         Added $treatWarningsAsErrors variable, set to true if the option is passed in.
1539
1540         (emitWarning): Added. If $treatWarningsAsErrors is true, omits the "warning: " token from
1541         the message, which makes it appear as an error in Xcode, and sets $sawError to 1.
1542
1543         Replaced all print statements that printed warnings with calls to emitWarning.
1544
1545 2014-12-25  Dan Bernstein  <mitz@apple.com>
1546
1547         Bring the state of WEBCORE_EXPORT annotations closer to what the exports file specifies.
1548         https://bugs.webkit.org/show_bug.cgi?id=136172
1549
1550         Reviewed by Darin Adler.
1551
1552         * bridge/NP_jsobject.cpp: Give functions from npruntime_impl.h defined in this file default
1553         using a compiler pragma, in lieu of introducing WebCore-specific macros into that header.
1554         * bridge/npruntime.cpp: Ditto.
1555
1556         * platform/mac/WebCoreSystemInterface.mm: Similarly for WebCoreSystemInterface.h.
1557
1558         Added or removed WEBCORE_EXPORT in these files as necessary to match what is currently in
1559         the exports file:
1560
1561         * Modules/mediasource/SourceBuffer.h:
1562         * bindings/js/JSDOMBinding.h:
1563         * css/CSSComputedStyleDeclaration.h:
1564         * dom/ContainerNode.h:
1565         * dom/Document.h:
1566         * dom/MouseEvent.h:
1567         * dom/Range.h:
1568         * dom/SecurityContext.h:
1569         * editing/Editor.h:
1570         * editing/mac/DictionaryLookup.h:
1571         * loader/FrameLoaderClient.h:
1572         * loader/LoaderStrategy.h:
1573         * loader/icon/IconDatabaseBase.h:
1574         * page/ChromeClient.h:
1575         * page/EventHandler.h:
1576         * page/FrameSnapshotting.h:
1577         * page/Page.h:
1578         * page/PageOverlay.h:
1579         * page/PageOverlayController.h:
1580         * page/TextIndicator.h:
1581         * page/UserContentController.h:
1582         * page/WheelEventDeltaTracker.h:
1583         * page/mac/TextIndicatorWindow.h:
1584         * platform/DatabaseStrategy.h:
1585         * platform/ScrollableArea.h:
1586         * platform/SuddenTermination.h:
1587         * platform/URL.h:
1588         * platform/animation/Animation.h:
1589         * platform/cocoa/MachSendRight.h:
1590         * platform/graphics/FloatRoundedRect.h:
1591         * platform/graphics/GraphicsContext.h:
1592         * platform/graphics/GraphicsLayer.h:
1593         * platform/graphics/Path.h:
1594         * platform/graphics/TextRun.h:
1595         * platform/graphics/ca/TileController.h:
1596         * platform/graphics/cocoa/IOSurface.h:
1597         * platform/graphics/mac/ColorMac.h:
1598         * platform/mac/SoftLinking.h:
1599         * platform/mac/WebCoreNSStringExtras.h:
1600         * platform/mock/mediasource/MockMediaPlayerMediaSource.h:
1601         * platform/network/BlobRegistry.h:
1602         * platform/network/ResourceRequestBase.h:
1603         * platform/network/ResourceResponseBase.h:
1604         * rendering/HitTestResult.h:
1605         * rendering/RenderInline.h:
1606         * rendering/RenderLayerBacking.h:
1607         * rendering/RenderLayerCompositor.cpp:
1608         * rendering/RenderView.h:
1609         * storage/StorageNamespaceImpl.h:
1610         * storage/StorageNamespaceProvider.h:
1611         * testing/Internals.h:
1612
1613 2014-12-25  Chris Dumez  <cdumez@apple.com>
1614
1615         [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources
1616         https://bugs.webkit.org/show_bug.cgi?id=139921
1617
1618         Reviewed by Gavin Barraclough and Alexey Proskuryakov.
1619
1620         Log better using FeatureCounter why PageCache is failing due to pruned
1621         resources. In particular, we now distinguish if the resource was pruned
1622         due to:
1623         - Memory pressure
1624         - Page cache capacity reached
1625         - WebProcess suspended (WK2)
1626
1627         * WebCore.exp.in:
1628         * history/HistoryItem.cpp:
1629         (WebCore::HistoryItem::HistoryItem):
1630         * history/HistoryItem.h:
1631         * history/PageCache.cpp:
1632         (WebCore::PageCache::pruneToCapacityNow):
1633         (WebCore::PageCache::setCapacity):
1634         (WebCore::pruningReasonToFeatureCounterKey):
1635         (WebCore::PageCache::add):
1636         (WebCore::PageCache::take):
1637         (WebCore::PageCache::get):
1638         (WebCore::PageCache::prune):
1639         * history/PageCache.h:
1640         * loader/FrameLoader.cpp:
1641         (WebCore::FrameLoader::commitProvisionalLoad):
1642         * platform/FeatureCounterKeys.h:
1643         * platform/MemoryPressureHandler.cpp:
1644         (WebCore::MemoryPressureHandler::releaseCriticalMemory):
1645
1646 2014-12-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1647
1648         Use std::unique_ptr<> in WebCore/dom, plugin, and graphics
1649         https://bugs.webkit.org/show_bug.cgi?id=139938
1650         
1651         Reviewed by Darin Adler.
1652
1653         Replace OwnPtr with std::unique_ptr<> and std::make_unique<>.
1654
1655         * dom/ElementIteratorAssertions.h:
1656         (WebCore::ElementIteratorAssertions::ElementIteratorAssertions):
1657         * dom/MutationObserverRegistration.cpp:
1658         (WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
1659         (WebCore::MutationObserverRegistration::clearTransientRegistrations):
1660         * dom/MutationObserverRegistration.h:
1661         * dom/StyledElement.cpp:
1662         (WebCore::StyledElement::rebuildPresentationAttributeStyle):
1663         * platform/graphics/SimpleFontData.h:
1664         (WebCore::SimpleFontData::boundsForGlyph):
1665         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
1666         (WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
1667         * platform/graphics/mac/SimpleFontDataMac.mm:
1668         (WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
1669         * plugins/PluginStream.cpp:
1670         (WebCore::PluginStream::didReceiveData):
1671         * plugins/PluginStream.h:
1672
1673 2014-12-25  Commit Queue  <commit-queue@webkit.org>
1674
1675         Unreviewed, rolling out r177712 and r177717.
1676         https://bugs.webkit.org/show_bug.cgi?id=139944
1677
1678         Caused flaky assertion failures (Requested by ap on #webkit).
1679
1680         Reverted changesets:
1681
1682         "[iOS] Log better using FeatureCounter why PageCache is
1683         failing due to pruned resources"
1684         https://bugs.webkit.org/show_bug.cgi?id=139921
1685         http://trac.webkit.org/changeset/177712
1686
1687         "Unreviewed, fix build warning after r177712"
1688         http://trac.webkit.org/changeset/177717
1689
1690 2014-12-25  Andreas Kling  <akling@apple.com>
1691
1692         Rebaseline bindings tests after r177733.
1693
1694         * bindings/scripts/test/JS/JSTestCallback.h:
1695         (WebCore::JSTestCallback::create):
1696
1697 2014-12-24  Andreas Kling  <akling@apple.com>
1698
1699         Convert more creator functions to return Ref instead of PassRefPtr.
1700         <https://webkit.org/b/139939>
1701
1702         Reviewed by Darin Adler.
1703
1704         Convert a slew of functions to return Ref<T> instead of PassRefPtr<T>
1705         where the result is guaranteed to never be null.
1706
1707         * Modules/geolocation/Coordinates.h:
1708         (WebCore::Coordinates::create):
1709         (WebCore::Coordinates::isolatedCopy):
1710         * Modules/plugins/QuickTimePluginReplacement.mm:
1711         (WebCore::QuickTimePluginReplacement::isolatedWorld):
1712         * Modules/webaudio/AnalyserNode.h:
1713         (WebCore::AnalyserNode::create):
1714         * Modules/webaudio/AudioBuffer.cpp:
1715         (WebCore::AudioBuffer::create):
1716         (WebCore::AudioBuffer::createFromAudioFileData):
1717         * Modules/webaudio/AudioBuffer.h:
1718         * Modules/webaudio/AudioBufferSourceNode.cpp:
1719         (WebCore::AudioBufferSourceNode::create):
1720         * Modules/webaudio/AudioBufferSourceNode.h:
1721         * Modules/webaudio/AudioContext.cpp:
1722         (WebCore::AudioContext::create):
1723         * Modules/webaudio/AudioContext.h:
1724         * Modules/webaudio/AudioListener.h:
1725         (WebCore::AudioListener::create):
1726         * Modules/webaudio/AudioParam.h:
1727         (WebCore::AudioParam::create):
1728         * Modules/webaudio/BiquadFilterNode.h:
1729         (WebCore::BiquadFilterNode::create):
1730         * Modules/webaudio/ConvolverNode.h:
1731         (WebCore::ConvolverNode::create):
1732         * Modules/webaudio/DelayNode.h:
1733         (WebCore::DelayNode::create):
1734         * Modules/webaudio/DynamicsCompressorNode.h:
1735         (WebCore::DynamicsCompressorNode::create):
1736         * Modules/webdatabase/ChangeVersionWrapper.h:
1737         (WebCore::ChangeVersionWrapper::create):
1738         * Modules/webdatabase/DatabaseAuthorizer.cpp:
1739         (WebCore::DatabaseAuthorizer::create):
1740         * Modules/webdatabase/DatabaseAuthorizer.h:
1741         * Modules/webdatabase/DatabaseThread.h:
1742         (WebCore::DatabaseThread::create):
1743         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
1744         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
1745         * accessibility/AXObjectCache.cpp:
1746         (WebCore::createFromRenderer):
1747         (WebCore::createFromNode):
1748         * accessibility/AccessibilityARIAGrid.cpp:
1749         (WebCore::AccessibilityARIAGrid::create):
1750         * accessibility/AccessibilityARIAGrid.h:
1751         * accessibility/AccessibilityARIAGridCell.cpp:
1752         (WebCore::AccessibilityARIAGridCell::create):
1753         * accessibility/AccessibilityARIAGridCell.h:
1754         * accessibility/AccessibilityARIAGridRow.cpp:
1755         (WebCore::AccessibilityARIAGridRow::create):
1756         * accessibility/AccessibilityARIAGridRow.h:
1757         * accessibility/AccessibilityImageMapLink.cpp:
1758         (WebCore::AccessibilityImageMapLink::create):
1759         * accessibility/AccessibilityImageMapLink.h:
1760         * accessibility/AccessibilityList.cpp:
1761         (WebCore::AccessibilityList::create):
1762         * accessibility/AccessibilityList.h:
1763         * accessibility/AccessibilityListBox.cpp:
1764         (WebCore::AccessibilityListBox::create):
1765         * accessibility/AccessibilityListBox.h:
1766         * accessibility/AccessibilityListBoxOption.cpp:
1767         (WebCore::AccessibilityListBoxOption::create):
1768         * accessibility/AccessibilityListBoxOption.h:
1769         * accessibility/AccessibilityMediaControls.cpp:
1770         (WebCore::AccessibilityMediaControl::create):
1771         (WebCore::AccessibilityMediaControlsContainer::create):
1772         (WebCore::AccessibilityMediaTimeline::create):
1773         (WebCore::AccessibilityMediaTimeDisplay::create):
1774         * accessibility/AccessibilityMediaControls.h:
1775         * accessibility/AccessibilityMenuList.cpp:
1776         (WebCore::AccessibilityMenuList::create):
1777         * accessibility/AccessibilityMenuList.h:
1778         * accessibility/AccessibilityMenuListOption.h:
1779         * accessibility/AccessibilityMenuListPopup.h:
1780         * accessibility/AccessibilityNodeObject.cpp:
1781         (WebCore::AccessibilityNodeObject::create):
1782         * accessibility/AccessibilityNodeObject.h:
1783         * accessibility/AccessibilityProgressIndicator.cpp:
1784         (WebCore::AccessibilityProgressIndicator::create):
1785         * accessibility/AccessibilityProgressIndicator.h:
1786         * accessibility/AccessibilityRenderObject.cpp:
1787         (WebCore::AccessibilityRenderObject::create):
1788         * accessibility/AccessibilityRenderObject.h:
1789         * accessibility/AccessibilitySVGRoot.cpp:
1790         (WebCore::AccessibilitySVGRoot::create):
1791         * accessibility/AccessibilitySVGRoot.h:
1792         * accessibility/AccessibilityScrollView.cpp:
1793         (WebCore::AccessibilityScrollView::create):
1794         * accessibility/AccessibilityScrollView.h:
1795         * accessibility/AccessibilityScrollbar.cpp:
1796         (WebCore::AccessibilityScrollbar::create):
1797         * accessibility/AccessibilityScrollbar.h:
1798         * accessibility/AccessibilitySearchFieldButtons.cpp:
1799         (WebCore::AccessibilitySearchFieldCancelButton::create):
1800         * accessibility/AccessibilitySearchFieldButtons.h:
1801         * accessibility/AccessibilitySlider.cpp:
1802         (WebCore::AccessibilitySlider::create):
1803         (WebCore::AccessibilitySliderThumb::create):
1804         * accessibility/AccessibilitySlider.h:
1805         * accessibility/AccessibilitySpinButton.cpp:
1806         (WebCore::AccessibilitySpinButton::create):
1807         (WebCore::AccessibilitySpinButtonPart::create):
1808         * accessibility/AccessibilitySpinButton.h:
1809         * accessibility/AccessibilityTable.cpp:
1810         (WebCore::AccessibilityTable::create):
1811         * accessibility/AccessibilityTable.h:
1812         * accessibility/AccessibilityTableCell.cpp:
1813         (WebCore::AccessibilityTableCell::create):
1814         * accessibility/AccessibilityTableCell.h:
1815         * accessibility/AccessibilityTableColumn.cpp:
1816         (WebCore::AccessibilityTableColumn::create):
1817         * accessibility/AccessibilityTableColumn.h:
1818         * accessibility/AccessibilityTableHeaderContainer.cpp:
1819         (WebCore::AccessibilityTableHeaderContainer::create):
1820         * accessibility/AccessibilityTableHeaderContainer.h:
1821         * accessibility/AccessibilityTableRow.cpp:
1822         (WebCore::AccessibilityTableRow::create):
1823         * accessibility/AccessibilityTableRow.h:
1824         * bindings/js/CachedScriptSourceProvider.h:
1825         (WebCore::CachedScriptSourceProvider::create):
1826         * bindings/js/DOMWrapperWorld.h:
1827         (WebCore::DOMWrapperWorld::create):
1828         * bindings/js/SerializedScriptValue.cpp:
1829         (WebCore::CloneDeserializer::getJSValue):
1830         * bindings/objc/DOMCustomXPathNSResolver.h:
1831         (WebCore::DOMCustomXPathNSResolver::create):
1832         * bindings/scripts/CodeGeneratorJS.pm:
1833         (GenerateCallbackHeader):
1834         * bridge/c/c_instance.h:
1835         (JSC::Bindings::CInstance::create):
1836         * crypto/CryptoKeyPair.h:
1837         (WebCore::CryptoKeyPair::create):
1838         * crypto/keys/CryptoKeyAES.h:
1839         * crypto/keys/CryptoKeyHMAC.h:
1840         * crypto/keys/CryptoKeyRSA.h:
1841         * crypto/mac/CryptoKeyRSAMac.cpp:
1842         (WebCore::CryptoKeyRSA::generatePair):
1843         * css/DOMWindowCSS.cpp:
1844         (WebCore::DOMWindowCSS::create):
1845         * css/DOMWindowCSS.h:
1846         * css/DashboardRegion.h:
1847         (WebCore::DashboardRegion::create):
1848         * css/FontLoader.h:
1849         * dom/DOMError.h:
1850         (WebCore::DOMError::create):
1851         * dom/DOMStringList.h:
1852         (WebCore::DOMStringList::create):
1853         * dom/DataTransfer.cpp:
1854         (WebCore::DataTransfer::createForCopyAndPaste):
1855         (WebCore::DataTransfer::createForDragAndDrop):
1856         * dom/DataTransfer.h:
1857         * dom/DeviceMotionData.cpp:
1858         (WebCore::DeviceMotionData::Acceleration::create):
1859         (WebCore::DeviceMotionData::RotationRate::create):
1860         (WebCore::DeviceMotionData::create):
1861         * dom/DeviceMotionData.h:
1862         * dom/DeviceOrientationData.cpp:
1863         (WebCore::DeviceOrientationData::create):
1864         * dom/DeviceOrientationData.h:
1865         * dom/DocumentMarker.cpp:
1866         (WebCore::DocumentMarkerDescription::create):
1867         * editing/AlternativeTextController.cpp:
1868         (WebCore::AutocorrectionAlternativeDetails::create):
1869         (WebCore::DictationAlternativeDetails::create):
1870         * editing/AlternativeTextController.h:
1871         (WebCore::DictationMarkerDetails::create):
1872         * editing/AppendNodeCommand.h:
1873         (WebCore::AppendNodeCommand::create):
1874         * editing/ApplyStyleCommand.h:
1875         (WebCore::ApplyStyleCommand::create):
1876         * editing/BreakBlockquoteCommand.h:
1877         (WebCore::BreakBlockquoteCommand::create):
1878         * editing/CompositeEditCommand.cpp:
1879         (WebCore::EditCommandComposition::create):
1880         * editing/CompositeEditCommand.h:
1881         * editing/CreateLinkCommand.h:
1882         (WebCore::CreateLinkCommand::create):
1883         * editing/DeleteFromTextNodeCommand.h:
1884         (WebCore::DeleteFromTextNodeCommand::create):
1885         * editing/DeleteSelectionCommand.h:
1886         (WebCore::DeleteSelectionCommand::create):
1887         * editing/DictationCommand.cpp:
1888         (WebCore::DictationMarkerSupplier::create):
1889         * editing/DictationCommand.h:
1890         (WebCore::DictationCommand::create):
1891         * editing/EditingStyle.h:
1892         (WebCore::EditingStyle::create):
1893         * editing/Editor.cpp:
1894         (WebCore::Editor::applyStyle):
1895         (WebCore::Editor::applyParagraphStyle):
1896         * editing/FormatBlockCommand.h:
1897         (WebCore::FormatBlockCommand::create):
1898         * editing/IndentOutdentCommand.h:
1899         (WebCore::IndentOutdentCommand::create):
1900         * editing/InsertIntoTextNodeCommand.h:
1901         (WebCore::InsertIntoTextNodeCommand::create):
1902         * editing/InsertLineBreakCommand.h:
1903         (WebCore::InsertLineBreakCommand::create):
1904         * editing/InsertNodeBeforeCommand.h:
1905         (WebCore::InsertNodeBeforeCommand::create):
1906         * editing/InsertParagraphSeparatorCommand.h:
1907         (WebCore::InsertParagraphSeparatorCommand::create):
1908         * editing/InsertTextCommand.h:
1909         (WebCore::InsertTextCommand::create):
1910         (WebCore::InsertTextCommand::createWithMarkerSupplier):
1911         * editing/MergeIdenticalElementsCommand.h:
1912         (WebCore::MergeIdenticalElementsCommand::create):
1913         * editing/ModifySelectionListLevel.h:
1914         (WebCore::IncreaseSelectionListLevelCommand::create):
1915         (WebCore::DecreaseSelectionListLevelCommand::create):
1916         * editing/MoveSelectionCommand.h:
1917         (WebCore::MoveSelectionCommand::create):
1918         * editing/RemoveCSSPropertyCommand.h:
1919         (WebCore::RemoveCSSPropertyCommand::create):
1920         * editing/RemoveFormatCommand.h:
1921         (WebCore::RemoveFormatCommand::create):
1922         * editing/RemoveNodeCommand.h:
1923         (WebCore::RemoveNodeCommand::create):
1924         * editing/RemoveNodePreservingChildrenCommand.h:
1925         (WebCore::RemoveNodePreservingChildrenCommand::create):
1926         * editing/ReplaceNodeWithSpanCommand.h:
1927         (WebCore::ReplaceNodeWithSpanCommand::create):
1928         * editing/ReplaceSelectionCommand.h:
1929         (WebCore::ReplaceSelectionCommand::create):
1930         * editing/SetNodeAttributeCommand.h:
1931         (WebCore::SetNodeAttributeCommand::create):
1932         * editing/SetSelectionCommand.h:
1933         (WebCore::SetSelectionCommand::create):
1934         * editing/SimplifyMarkupCommand.h:
1935         (WebCore::SimplifyMarkupCommand::create):
1936         * editing/SpellChecker.cpp:
1937         (WebCore::SpellCheckRequest::create):
1938         * editing/SpellChecker.h:
1939         * editing/SpellingCorrectionCommand.cpp:
1940         (WebCore::SpellingCorrectionRecordUndoCommand::create):
1941         * editing/SpellingCorrectionCommand.h:
1942         (WebCore::SpellingCorrectionCommand::create):
1943         * editing/SplitElementCommand.h:
1944         (WebCore::SplitElementCommand::create):
1945         * editing/SplitTextNodeCommand.h:
1946         (WebCore::SplitTextNodeCommand::create):
1947         * editing/SplitTextNodeContainingElementCommand.h:
1948         (WebCore::SplitTextNodeContainingElementCommand::create):
1949         * editing/TypingCommand.h:
1950         (WebCore::TypingCommand::create):
1951         * editing/UnlinkCommand.h:
1952         (WebCore::UnlinkCommand::create):
1953         * editing/WrapContentsInDummySpanCommand.h:
1954         (WebCore::WrapContentsInDummySpanCommand::create):
1955         * editing/ios/DictationCommandIOS.h:
1956         (WebCore::DictationCommandIOS::create):
1957         * fileapi/Blob.h:
1958         (WebCore::Blob::create):
1959         (WebCore::Blob::deserialize):
1960         (WebCore::Blob::slice):
1961         * fileapi/File.h:
1962         * fileapi/FileList.h:
1963         (WebCore::FileList::create):
1964         * fileapi/FileReader.cpp:
1965         (WebCore::FileReader::create):
1966         * fileapi/FileReader.h:
1967         * fileapi/FileReaderSync.h:
1968         (WebCore::FileReaderSync::create):
1969         * history/BackForwardList.h:
1970         (WebCore::BackForwardList::create):
1971         * history/HistoryItem.h:
1972         (WebCore::HistoryItem::create):
1973         * html/DOMURL.cpp:
1974         (WebCore::DOMURL::create):
1975         * html/DOMURL.h:
1976         * html/HTMLPlugInImageElement.cpp:
1977         (WebCore::plugInImageElementIsolatedWorld):
1978         * html/canvas/CanvasGradient.h:
1979         (WebCore::CanvasGradient::create):
1980         * html/canvas/CanvasPattern.cpp:
1981         (WebCore::CanvasPattern::create):
1982         * html/canvas/CanvasPattern.h:
1983         * html/canvas/DOMPath.h:
1984         * html/shadow/DetailsMarkerControl.cpp:
1985         (WebCore::DetailsMarkerControl::create):
1986         * html/shadow/DetailsMarkerControl.h:
1987         * html/track/AudioTrack.h:
1988         * html/track/AudioTrackList.h:
1989         * html/track/DataCue.h:
1990         * inspector/CommandLineAPIHost.cpp:
1991         (WebCore::CommandLineAPIHost::create):
1992         * inspector/CommandLineAPIHost.h:
1993         * loader/DocumentLoader.h:
1994         (WebCore::DocumentLoader::create):
1995         * loader/FormState.cpp:
1996         (WebCore::FormState::create):
1997         * loader/FormState.h:
1998         * loader/FormSubmission.cpp:
1999         (WebCore::FormSubmission::create):
2000         * loader/FormSubmission.h:
2001         * loader/TextResourceDecoder.h:
2002         (WebCore::TextResourceDecoder::create):
2003         * loader/ThreadableLoaderClientWrapper.h:
2004         (WebCore::ThreadableLoaderClientWrapper::create):
2005         * loader/WorkerThreadableLoader.h:
2006         (WebCore::WorkerThreadableLoader::create):
2007         * loader/appcache/ApplicationCache.h:
2008         (WebCore::ApplicationCache::create):
2009         * loader/appcache/ApplicationCacheResource.h:
2010         (WebCore::ApplicationCacheResource::create):
2011         * loader/appcache/DOMApplicationCache.h:
2012         * loader/archive/ArchiveResource.cpp:
2013         (WebCore::ArchiveResource::create):
2014         * loader/archive/ArchiveResource.h:
2015         * loader/icon/IconDatabaseBase.h:
2016         (WebCore::EnumCallback::create):
2017         (WebCore::ObjectCallback::create):
2018         * loader/icon/IconRecord.h:
2019         (WebCore::IconRecord::create):
2020         * mathml/MathMLInlineContainerElement.cpp:
2021         (WebCore::MathMLInlineContainerElement::create):
2022         * mathml/MathMLInlineContainerElement.h:
2023         * mathml/MathMLMathElement.cpp:
2024         (WebCore::MathMLMathElement::create):
2025         * mathml/MathMLMathElement.h:
2026         * mathml/MathMLMencloseElement.cpp:
2027         (WebCore::MathMLMencloseElement::create):
2028         * mathml/MathMLMencloseElement.h:
2029         * mathml/MathMLSelectElement.cpp:
2030         (WebCore::MathMLSelectElement::create):
2031         * mathml/MathMLSelectElement.h:
2032         * mathml/MathMLTextElement.cpp:
2033         (WebCore::MathMLTextElement::create):
2034         * mathml/MathMLTextElement.h:
2035         * page/BarProp.h:
2036         (WebCore::BarProp::create):
2037         * page/Crypto.h:
2038         (WebCore::Crypto::create):
2039         * page/DOMSecurityPolicy.h:
2040         (WebCore::DOMSecurityPolicy::create):
2041         * page/DOMSelection.h:
2042         (WebCore::DOMSelection::create):
2043         * page/DOMWindow.h:
2044         * page/DOMWindowExtension.h:
2045         (WebCore::DOMWindowExtension::create):
2046         * page/FrameView.cpp:
2047         (WebCore::FrameView::create):
2048         * page/FrameView.h:
2049         * page/animation/CompositeAnimation.h:
2050         (WebCore::CompositeAnimation::create):
2051         * page/scrolling/AsyncScrollingCoordinator.h:
2052         * platform/Cursor.h:
2053         (WebCore::SharedCursor::create):
2054         * platform/FileChooser.cpp:
2055         (WebCore::FileChooser::create):
2056         * platform/FileChooser.h:
2057         * platform/animation/Animation.h:
2058         (WebCore::Animation::create):
2059         * platform/audio/AudioBus.cpp:
2060         (WebCore::AudioBus::create):
2061         (WebCore::AudioBus::createBufferFromRange):
2062         (WebCore::AudioBus::createBySampleRateConverting):
2063         (WebCore::AudioBus::createByMixingToMono):
2064         * platform/audio/AudioBus.h:
2065         * platform/audio/AudioHardwareListener.cpp:
2066         (WebCore::AudioHardwareListener::create):
2067         * platform/audio/AudioHardwareListener.h:
2068         * platform/audio/mac/AudioHardwareListenerMac.cpp:
2069         (WebCore::AudioHardwareListener::create):
2070         (WebCore::AudioHardwareListenerMac::create):
2071         * platform/audio/mac/AudioHardwareListenerMac.h:
2072         * platform/graphics/AudioTrackPrivate.h:
2073         (WebCore::AudioTrackPrivate::create):
2074         * platform/graphics/BitmapImage.h:
2075         * platform/graphics/CrossfadeGeneratedImage.h:
2076         * platform/graphics/FontFeatureSettings.h:
2077         (WebCore::FontFeatureSettings::create):
2078         * platform/graphics/Image.cpp:
2079         (WebCore::Image::nullImage):
2080         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.h:
2081         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
2082         (WebCore::AudioSourceProviderAVFObjC::create):
2083         * platform/graphics/filters/DistantLightSource.h:
2084         (WebCore::DistantLightSource::create):
2085         * platform/graphics/filters/FEBlend.cpp:
2086         (WebCore::FEBlend::create):
2087         * platform/graphics/filters/FEBlend.h:
2088         * platform/graphics/filters/FEColorMatrix.cpp:
2089         (WebCore::FEColorMatrix::create):
2090         * platform/graphics/filters/FEColorMatrix.h:
2091         * platform/graphics/filters/FEComponentTransfer.cpp:
2092         (WebCore::FEComponentTransfer::create):
2093         * platform/graphics/filters/FEComponentTransfer.h:
2094         * platform/graphics/filters/FEComposite.cpp:
2095         (WebCore::FEComposite::create):
2096         * platform/graphics/filters/FEComposite.h:
2097         * platform/graphics/filters/FEConvolveMatrix.cpp:
2098         (WebCore::FEConvolveMatrix::create):
2099         * platform/graphics/filters/FEConvolveMatrix.h:
2100         * platform/graphics/filters/FEDiffuseLighting.cpp:
2101         (WebCore::FEDiffuseLighting::create):
2102         * platform/graphics/filters/FEDiffuseLighting.h:
2103         * platform/graphics/filters/FEDisplacementMap.cpp:
2104         (WebCore::FEDisplacementMap::create):
2105         * platform/graphics/filters/FEDisplacementMap.h:
2106         * platform/graphics/filters/FEDropShadow.cpp:
2107         (WebCore::FEDropShadow::create):
2108         * platform/graphics/filters/FEDropShadow.h:
2109         * platform/graphics/filters/FEFlood.cpp:
2110         (WebCore::FEFlood::create):
2111         * platform/graphics/filters/FEFlood.h:
2112         * platform/graphics/filters/FEGaussianBlur.cpp:
2113         (WebCore::FEGaussianBlur::create):
2114         * platform/graphics/filters/FEGaussianBlur.h:
2115         * platform/graphics/filters/FEMerge.cpp:
2116         (WebCore::FEMerge::create):
2117         * platform/graphics/filters/FEMerge.h:
2118         * platform/graphics/filters/FEMorphology.cpp:
2119         (WebCore::FEMorphology::create):
2120         * platform/graphics/filters/FEMorphology.h:
2121         * platform/graphics/filters/FEOffset.cpp:
2122         (WebCore::FEOffset::create):
2123         * platform/graphics/filters/FEOffset.h:
2124         * platform/graphics/filters/FESpecularLighting.cpp:
2125         (WebCore::FESpecularLighting::create):
2126         * platform/graphics/filters/FESpecularLighting.h:
2127         * platform/graphics/filters/FETile.cpp:
2128         (WebCore::FETile::create):
2129         * platform/graphics/filters/FETile.h:
2130         * platform/graphics/filters/FETurbulence.cpp:
2131         (WebCore::FETurbulence::create):
2132         * platform/graphics/filters/FETurbulence.h:
2133         * platform/graphics/ios/DisplayRefreshMonitorIOS.h:
2134         (WebCore::DisplayRefreshMonitorIOS::create):
2135         * platform/graphics/mac/ComplexTextController.h:
2136         (WebCore::ComplexTextController::ComplexTextRun::create):
2137         * platform/network/BlobData.h:
2138         (WebCore::RawData::create):
2139         (WebCore::BlobData::create):
2140         * platform/network/BlobDataFileReference.h:
2141         (WebCore::BlobDataFileReference::create):
2142         * platform/network/cf/FormDataStreamCFNet.cpp:
2143         * platform/text/BidiContext.cpp:
2144         (WebCore::BidiContext::createUncached):
2145         (WebCore::BidiContext::create):
2146         * platform/text/BidiContext.h:
2147         * plugins/DOMMimeType.h:
2148         (WebCore::DOMMimeType::create):
2149         * plugins/DOMMimeTypeArray.cpp:
2150         (WebCore::DOMMimeTypeArray::item):
2151         (WebCore::DOMMimeTypeArray::namedItem):
2152         * plugins/DOMMimeTypeArray.h:
2153         (WebCore::DOMMimeTypeArray::create):
2154         * plugins/DOMPlugin.cpp:
2155         (WebCore::DOMPlugin::item):
2156         (WebCore::DOMPlugin::namedItem):
2157         * plugins/DOMPlugin.h:
2158         (WebCore::DOMPlugin::create):
2159         * plugins/DOMPluginArray.cpp:
2160         (WebCore::DOMPluginArray::item):
2161         (WebCore::DOMPluginArray::namedItem):
2162         * plugins/DOMPluginArray.h:
2163         (WebCore::DOMPluginArray::create):
2164         * plugins/PluginData.h:
2165         (WebCore::PluginData::create):
2166         * rendering/ClipPathOperation.h:
2167         * rendering/CounterNode.cpp:
2168         (WebCore::CounterNode::create):
2169         * rendering/CounterNode.h:
2170         * rendering/style/BasicShapes.h:
2171         * rendering/style/CursorList.h:
2172         (WebCore::CursorList::create):
2173         * replay/CapturingInputCursor.cpp:
2174         (WebCore::CapturingInputCursor::create):
2175         * replay/CapturingInputCursor.h:
2176         * storage/Storage.cpp:
2177         (WebCore::Storage::create):
2178         * storage/Storage.h:
2179         * storage/StorageAreaImpl.cpp:
2180         (WebCore::StorageAreaImpl::create):
2181         * storage/StorageAreaImpl.h:
2182         * storage/StorageAreaSync.cpp:
2183         (WebCore::StorageAreaSync::create):
2184         * storage/StorageAreaSync.h:
2185         * storage/StorageMap.cpp:
2186         (WebCore::StorageMap::create):
2187         * storage/StorageMap.h:
2188         * storage/StorageSyncManager.cpp:
2189         (WebCore::StorageSyncManager::create):
2190         * storage/StorageSyncManager.h:
2191         * workers/DedicatedWorkerGlobalScope.cpp:
2192         (WebCore::DedicatedWorkerGlobalScope::create):
2193         * workers/DedicatedWorkerGlobalScope.h:
2194         * workers/DedicatedWorkerThread.cpp:
2195         (WebCore::DedicatedWorkerThread::create):
2196         (WebCore::DedicatedWorkerThread::createWorkerGlobalScope):
2197         * workers/DedicatedWorkerThread.h:
2198         * workers/DefaultSharedWorkerRepository.cpp:
2199         * workers/SharedWorkerGlobalScope.cpp:
2200         (WebCore::SharedWorkerGlobalScope::create):
2201         * workers/SharedWorkerGlobalScope.h:
2202         * workers/SharedWorkerThread.cpp:
2203         (WebCore::SharedWorkerThread::create):
2204         (WebCore::SharedWorkerThread::createWorkerGlobalScope):
2205         * workers/SharedWorkerThread.h:
2206         * workers/WorkerGlobalScope.cpp:
2207         (WebCore::WorkerGlobalScope::importScripts):
2208         * workers/WorkerLocation.h:
2209         (WebCore::WorkerLocation::create):
2210         * workers/WorkerScriptLoader.h:
2211         (WebCore::WorkerScriptLoader::create):
2212         * workers/WorkerThread.h:
2213         * xml/DOMParser.h:
2214         (WebCore::DOMParser::create):
2215         * xml/NativeXPathNSResolver.h:
2216         (WebCore::NativeXPathNSResolver::create):
2217         * xml/XMLHttpRequest.cpp:
2218         (WebCore::XMLHttpRequest::create):
2219         * xml/XMLHttpRequest.h:
2220         * xml/XMLHttpRequestProgressEventThrottle.cpp:
2221         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
2222         * xml/XMLSerializer.h:
2223         (WebCore::XMLSerializer::create):
2224         * xml/XPathEvaluator.h:
2225         (WebCore::XPathEvaluator::create):
2226         * xml/XPathResult.h:
2227         (WebCore::XPathResult::create):
2228         * xml/XSLStyleSheet.h:
2229         * xml/XSLTProcessor.h:
2230         (WebCore::XSLTProcessor::create):
2231
2232 2014-12-24  Benjamin Poulain  <bpoulain@apple.com>
2233
2234         Small cleanup of RenderBlock::paint()
2235         https://bugs.webkit.org/show_bug.cgi?id=139849
2236
2237         Reviewed by Daniel Bates.
2238
2239         Remove a couple of instructions by putting variable in the right scope.
2240
2241         * rendering/RenderBlock.cpp:
2242         (WebCore::RenderBlock::paint):
2243
2244 2014-12-24  Dan Bernstein  <mitz@apple.com>
2245
2246         [Cocoa] WebCoreSystemInterface.h declares two unused symbols
2247         https://bugs.webkit.org/show_bug.cgi?id=139937
2248
2249         Reviewed by Tim Horton.
2250
2251         * platform/graphics/FontPlatformData.h: Removed unused typedefs.
2252
2253         * platform/graphics/mac/FontCustomPlatformData.cpp:
2254         (WebCore::createFontCustomPlatformData): Stop passing always-zero containerRef parameter to
2255         FontCustomPlatformData constructor.
2256
2257         * platform/graphics/mac/FontCustomPlatformData.h: Removed unused typedefs.
2258         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Removed unused container
2259         parameter and m_atsContainer member variable.
2260
2261         * platform/mac/WebCoreSystemInterface.h: Removed unused typedefs and symbols.
2262
2263 2014-12-23  Chris Dumez  <cdumez@apple.com>
2264
2265         Simplify RenderStyle::invalidColor() function
2266         https://bugs.webkit.org/show_bug.cgi?id=139898
2267
2268         Reviewed by Andreas Kling.
2269
2270         Simplify RenderStyle::invalidColor() function by getting rid of the
2271         static variable. The default constructor for Color is very cheap
2272         anyway.
2273
2274         * rendering/style/RenderStyle.h:
2275
2276 2014-12-23  Jaehun Lim  <ljaehun.lim@samsung.com>
2277
2278         Unreviewed, fix build warning after r177712
2279
2280         ../../Source/WebCore/history/PageCache.cpp: In function ‘const char* WebCore::pruningReasonToFeatureCounterKey(WebCore::PruningReason)’:
2281         ../../Source/WebCore/history/PageCache.cpp:449:1: error: control reaches end of non-void function [-Werror=return-type]
2282
2283         No new tests, no behavior changes.
2284
2285         * history/PageCache.cpp:
2286         (WebCore::pruningReasonToFeatureCounterKey):
2287
2288 2014-12-23  Chris Dumez  <cdumez@apple.com>
2289
2290         [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources
2291         https://bugs.webkit.org/show_bug.cgi?id=139921
2292         <rdar://problem/19255690>
2293
2294         Reviewed by Gavin Barraclough.
2295
2296         Log better using FeatureCounter why PageCache is failing due to pruned
2297         resources. In particular, we now distinguish if the resource was pruned
2298         due to:
2299         - Memory pressure
2300         - Page cache capacity reached
2301         - WebProcess suspended (WK2)
2302
2303         * WebCore.exp.in:
2304         * history/HistoryItem.cpp:
2305         (WebCore::HistoryItem::HistoryItem):
2306         * history/HistoryItem.h:
2307         * history/PageCache.cpp:
2308         (WebCore::PageCache::pruneToCapacityNow):
2309         (WebCore::PageCache::setCapacity):
2310         (WebCore::pruningReasonToFeatureCounterKey):
2311         (WebCore::PageCache::add):
2312         (WebCore::PageCache::take):
2313         (WebCore::PageCache::get):
2314         (WebCore::PageCache::prune):
2315         * history/PageCache.h:
2316         * loader/FrameLoader.cpp:
2317         (WebCore::FrameLoader::commitProvisionalLoad):
2318         * platform/FeatureCounterKeys.h:
2319         * platform/MemoryPressureHandler.cpp:
2320         (WebCore::MemoryPressureHandler::releaseCriticalMemory):
2321
2322 2014-12-23  Andreas Kling  <akling@apple.com>
2323
2324         [Mac] Fix nullptr dereference in EventHandler::platformPrepareForWheelEvents().
2325         <https://webkit.org/b/139923>
2326         <rdar://problem/19182531>
2327
2328         Reviewed by Chris Dumez.
2329
2330         Don't dereference 'wheelEventTarget' until we know it's non-null.
2331         This manifested as a crash in Node::renderBox() with some versions of LLVM.
2332
2333         The compiler was free to assume that the ContainerNode* 'candidate' in
2334         findEnclosingScrollableContainer() would always be non-null on the first
2335         iteration of the loop.
2336
2337         I suspect that we can get here with a null 'wheelEventTarget' during the
2338         rubberbanding phase of a wheel scroll; if the cursor is sitting over the
2339         exposed "gutter" area.
2340
2341         * page/mac/EventHandlerMac.mm:
2342         (WebCore::findEnclosingScrollableContainer):
2343         (WebCore::EventHandler::platformPrepareForWheelEvents):
2344
2345 2014-12-23  Timothy Horton  <timothy_horton@apple.com>
2346
2347         Install a TextIndicator for link immediate actions
2348         https://bugs.webkit.org/show_bug.cgi?id=139897
2349         <rdar://problem/19333076>
2350
2351         Reviewed by Anders Carlsson.
2352
2353         * platform/spi/mac/QuickLookMacSPI.h:
2354         Add a new piece of SPI.
2355
2356 2014-12-23  Sam Weinig  <sam@webkit.org>
2357
2358         Rename WebContext to WebProcessPool
2359         https://bugs.webkit.org/show_bug.cgi?id=139909
2360
2361         Rubber-stamped by Anders Carlsson.
2362
2363         Merge SessionID and SessionIDHash into one file to make auto-generation of
2364         HashMaps with SessionIDs easier.
2365
2366         * WebCore.xcodeproj/project.pbxproj:
2367         * loader/cache/MemoryCache.h:
2368         * page/SessionID.h:
2369         (WTF::SessionIDHash::hash):
2370         (WTF::SessionIDHash::equal):
2371         (WTF::HashTraits<WebCore::SessionID>::emptyValue):
2372         (WTF::HashTraits<WebCore::SessionID>::constructDeletedValue):
2373         (WTF::HashTraits<WebCore::SessionID>::isDeletedValue):
2374         * page/SessionIDHash.h: Removed.
2375
2376 2014-12-23  Myles C. Maxfield  <mmaxfield@apple.com>
2377
2378         platform/mac/editing/input/devanagari-ligature.html is flaky on Yosemite, ligature fails to form
2379         https://bugs.webkit.org/show_bug.cgi?id=138683
2380
2381         Reviewed by Darin Adler.
2382
2383         This patch changes how we check fonts for equality. In particular, this patch adds a
2384         objectForEqualityCheck() to Cocoa's FontPlatformData, and callers should pass this object
2385         to CFEqual() to determine if two platform fonts are equal. This patch also migrates all
2386         call sites to using this function.
2387
2388         I don't want to implement operator==() because there are many cases where the same font
2389         is compared against many others, and this solution is cleaner than caching a comparison
2390         object inside the font object itself.
2391
2392         No new tests because this is covered by platform/mac/editing/input/devanagari-ligature.html.
2393
2394         * platform/graphics/FontPlatformData.h:
2395         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2396         (WebCore::FontPlatformData::objectForEqualityCheck):
2397         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
2398         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
2399         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2400         (WebCore::GlyphPage::fill):
2401         * platform/graphics/mac/SimpleFontDataMac.mm:
2402         (WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
2403         * platform/spi/cocoa/CoreTextSPI.h:
2404
2405 2014-12-23  Myles C. Maxfield  <mmaxfield@apple.com>
2406
2407         [SVG -> OTF Converter] Make Placeholder a move-only type
2408         https://bugs.webkit.org/show_bug.cgi?id=139870
2409
2410         Reviewed by Anders Carlsson.
2411
2412         No new tests because there is no behavior change.
2413
2414         * svg/SVGToOTFFontConversion.cpp:
2415         (WebCore::SVGToOTFFontConverter::Placeholder::Placeholder):
2416         (WebCore::SVGToOTFFontConverter::Placeholder::populate):
2417         (WebCore::SVGToOTFFontConverter::Placeholder::~Placeholder):
2418
2419 2014-12-23  Chris Dumez  <cdumez@apple.com>
2420
2421         Move color CSS properties to the new StyleBuilder
2422         https://bugs.webkit.org/show_bug.cgi?id=139898
2423
2424         Reviewed by Antti Koivisto.
2425
2426         Move color CSS properties to the new StyleBuilder by teaching the
2427         StyleBuilder generator how to handle them.
2428
2429         * css/CSSPropertyNames.in:
2430         - Move color properties to the new StyleBuilder.
2431
2432         * css/DeprecatedStyleBuilder.cpp:
2433         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2434         (WebCore::defaultInitialColor): Deleted.
2435         (WebCore::ApplyPropertyColor::applyInheritValue): Deleted.
2436         (WebCore::ApplyPropertyColor::applyInitialValue): Deleted.
2437         (WebCore::ApplyPropertyColor::applyValue): Deleted.
2438         (WebCore::ApplyPropertyColor::applyColorValue): Deleted.
2439         (WebCore::ApplyPropertyColor::createHandler): Deleted.
2440         - Drop color properties support from the DeprecatedStyleBuilder.
2441
2442         * css/makeprop.pl:
2443         - Teach the StyleBuilder generator how to handle color properties.
2444         - Use a class for StyleBuilderFunctions instead of a namespace so
2445           that it can be made a friend of RenderStyle class.
2446
2447         * rendering/style/RenderStyle.h:
2448         - Mark StyleBuilderFunctions class as friend as its functions
2449           can set RenderStyle members directly. This is similar to what
2450           is already done for StyleBuilderCustom class. The new color
2451           properties handling calls private methods on RenderStyle.
2452         - Mark invalidColor() method as static as it does not require
2453           an instance.
2454
2455 2014-12-23  Zalan Bujtas  <zalan@apple.com>
2456
2457         Incorrect dashed and dotted border painting.
2458         https://bugs.webkit.org/show_bug.cgi?id=139872
2459         rdar://problem/18024205
2460
2461         Reviewed by Simon Fraser.
2462
2463         This patch makes dashed/dotted border painting symmetric and consistent.
2464         It also works with subpixel positioning.
2465
2466         Tests: fast/borders/border-painting-correctness-dashed.html
2467                fast/borders/border-painting-correctness-dotted.html
2468
2469         * platform/graphics/cg/GraphicsContextCG.cpp:
2470         (WebCore::GraphicsContext::drawLine):
2471         * rendering/RenderObject.cpp:
2472         (WebCore::RenderObject::drawLineForBoxSide):
2473
2474 2014-12-22  Chris Dumez  <cdumez@apple.com>
2475
2476         [iOS] Log which type of resources are commonly loaded using FeatureCounter
2477         https://bugs.webkit.org/show_bug.cgi?id=139890
2478
2479         Reviewed by Darin Adler.
2480
2481         Log which type of resources are commonly loaded using FeatureCounter
2482         (e.g. stylesheets, scripts, fonts, images, ...).
2483
2484         * loader/SubresourceLoader.cpp:
2485         (WebCore::logResourceLoadedUsingFeatureCounter):
2486         (WebCore::SubresourceLoader::didFinishLoading):
2487         * platform/FeatureCounterKeys.h:
2488
2489 2014-12-22  Chris Dumez  <cdumez@apple.com>
2490
2491         [iOS] Log using FeatureCounter when a PacheCache fails due to memory pressure
2492         https://bugs.webkit.org/show_bug.cgi?id=139874
2493         <rdar://problem/19255690>
2494
2495         Reviewed by Darin Adler.
2496
2497         Log using FeatureCounter when a PacheCache fails due to memory
2498         pressure. To detect this, a flag is added to HistoryItem to mark
2499         items that are no longer in the page becaused they were pruned
2500         (either because of a low memory handling or because the page cache
2501         reached its maximum capacity).
2502
2503         * history/HistoryItem.cpp:
2504         (WebCore::HistoryItem::HistoryItem):
2505         * history/HistoryItem.h:
2506         * history/PageCache.cpp:
2507         (WebCore::PageCache::add):
2508         (WebCore::PageCache::take):
2509         (WebCore::PageCache::get):
2510         (WebCore::PageCache::prune):
2511         * platform/FeatureCounterKeys.h:
2512
2513 2014-12-22  Commit Queue  <commit-queue@webkit.org>
2514
2515         Unreviewed, rolling out r177658.
2516         https://bugs.webkit.org/show_bug.cgi?id=139900
2517
2518         Caused many assertion failures (Requested by ap on #webkit).
2519
2520         Reverted changeset:
2521
2522         "Incorrect dashed and dotted border painting."
2523         https://bugs.webkit.org/show_bug.cgi?id=139872
2524         http://trac.webkit.org/changeset/177658
2525
2526 2014-12-22  Jaehun Lim  <ljaehun.lim@samsung.com>
2527
2528         Unreviewed build fix after r177661 and r177662
2529
2530         * dom/SecurityOriginPolicy.cpp: Modify #include path.
2531
2532 2014-12-22  Mark Rowe  <mrowe@apple.com>
2533
2534         [Mac] Engineering builds of WebCore on OS X 10.8 and 10.9 shouldn't build with -gline-tables-only
2535         <https://webkit.org/b/139883> / <rdar://problem/19297261>
2536
2537         Reviewed by Alexey Proskuryakov.
2538
2539         * Configurations/DebugRelease.xcconfig: Override the setting using conditional settings
2540         so that they take precedence over the conditional settings in Base.xcconfig.
2541
2542 2014-12-22  Alexey Proskuryakov  <ap@apple.com>
2543
2544         Unreviewed build fix.
2545
2546         * WebCore.exp.in: Move SQLiteDatabaseTracker::setClient export out of PLATFORM(IOS) section.
2547
2548 2014-12-22  Anders Carlsson  <andersca@apple.com>
2549
2550         Remove two functions from SecurityOrigin
2551         https://bugs.webkit.org/show_bug.cgi?id=139885
2552
2553         Reviewed by Andreas Kling.
2554
2555         * page/SecurityOrigin.h:
2556         (WebCore::SecurityOrigin::canAccessPasswordManager): Deleted.
2557         (WebCore::SecurityOrigin::canAccessFileSystem): Deleted.
2558
2559 2014-12-22  Chris Dumez  <cdumez@apple.com>
2560
2561         [iOS] Log using FeatureCounter user-triggered zooming
2562         https://bugs.webkit.org/show_bug.cgi?id=139879
2563         <rdar://problem/19329130>
2564
2565         Reviewed by Benjamin Poulain.
2566
2567         Log using FeatureCounter user-triggered zooming on iOS.
2568
2569         * WebCore.exp.in:
2570         * WebCore.xcodeproj/project.pbxproj:
2571         * platform/FeatureCounter.h:
2572         * platform/FeatureCounterKeys.h:
2573
2574 2014-12-22  Benjamin Poulain  <bpoulain@apple.com>
2575
2576         Form elements should match :valid and :invalid based on their associated elements
2577         https://bugs.webkit.org/show_bug.cgi?id=139850
2578
2579         Reviewed by Darin Adler.
2580
2581         In the latest HTML spec, form elements can match :valid or :invalid based
2582         on their associated element.
2583
2584         The tricky part is that object lifetime is a mess. When elements are associated
2585         with forms by the parser, the form is set by the constructor of HTMLFormControlElement.
2586         At that point, the real object has not been initialized yet which
2587         makes it impossible to find its validity.
2588
2589         To work around the lifetime problem, the code of HTMLFormControlElement::didChangeForm()
2590         uses m_willValidateInitialized and m_willValidate direclty instead
2591         of invoking willValidate(). That way we don't try to validate an incomplete object.
2592
2593         When the object really validates, HTMLFormControlElement::setNeedsWillValidateCheck()
2594         takes care of updating the form.
2595
2596         Tests: fast/css/pseudo-invalid-form-and-fieldset-basics.html
2597                fast/css/pseudo-invalid-form-basics.html
2598                fast/css/pseudo-invalid-form-dynamically-created-basics.html
2599                fast/css/pseudo-invalid-form-invalidation-optimization.html
2600                fast/css/pseudo-valid-form-and-fieldset-basics.html
2601                fast/css/pseudo-valid-form-basics.html
2602                fast/css/pseudo-valid-form-dynamically-created-basics.html
2603                fast/css/pseudo-valid-form-invalidation-optimization.html
2604                fast/selectors/invalid-form-style-update-1.html
2605                fast/selectors/invalid-form-style-update-2.html
2606                fast/selectors/invalid-form-style-update-3.html
2607                fast/selectors/valid-form-style-update-1.html
2608                fast/selectors/valid-form-style-update-2.html
2609                fast/selectors/valid-form-style-update-3.html
2610
2611         * css/StyleResolver.cpp:
2612         (WebCore::StyleResolver::canShareStyleWithControl):
2613         (WebCore::StyleResolver::canShareStyleWithElement):
2614         HTMLFormElement is not a FormControl, we have to generalize the test
2615         for :valid/:invalid with style sharing.
2616
2617         * html/HTMLFormControlElement.cpp:
2618         (WebCore::HTMLFormControlElement::~HTMLFormControlElement):
2619         Since we now have willChangeForm(), didChangeForm(), we have to null
2620         the form ourself, as documented by FormAssociatedElement.
2621
2622         (WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):
2623         (WebCore::HTMLFormControlElement::willChangeForm):
2624         (WebCore::HTMLFormControlElement::didChangeForm):
2625         (WebCore::HTMLFormControlElement::updateValidity):
2626         Update the owner form when any of the associated form element changes
2627         to invalid.
2628
2629         * html/HTMLFormControlElement.h:
2630         * html/HTMLFormElement.cpp:
2631         (WebCore::HTMLFormElement::registerInvalidAssociatedFormControl):
2632         (WebCore::HTMLFormElement::removeInvalidAssociatedFormControlIfNeeded):
2633         (WebCore::HTMLFormElement::matchesValidPseudoClass):
2634         (WebCore::HTMLFormElement::matchesInvalidPseudoClass):
2635         This is very similar to the code of fieldset, but we have much weaker
2636         invariants due to the insane way FormAssociatedElement initializes.
2637
2638         * html/HTMLFormElement.h:
2639         * html/HTMLInputElement.cpp:
2640         (WebCore::HTMLInputElement::initializeInputType):
2641         For completeness, we should always validate when changing the type.
2642         The code was only doing that when the element was inserted into the tree,
2643         that was too fragile.
2644
2645 2014-12-22  Anders Carlsson  <andersca@apple.com>
2646
2647         Try to fix the Windows build.
2648
2649         * dom/DOMAllInOne.cpp:
2650
2651 2014-12-22  Anders Carlsson  <andersca@apple.com>
2652
2653         Add a SecurityOriginPolicy class
2654         https://bugs.webkit.org/show_bug.cgi?id=139875
2655
2656         Reviewed by Sam Weinig.
2657
2658         This is the first step towards making SecurityOrigin immutable. SecurityOriginPolicy will hold a
2659         SecurityOrigin and will handle things that would otherwise mutate SecurityOrigin.
2660
2661         * CMakeLists.txt:
2662         * WebCore.exp.in:
2663         * WebCore.vcxproj/WebCore.vcxproj:
2664         * WebCore.vcxproj/WebCore.vcxproj.filters:
2665         * WebCore.xcodeproj/project.pbxproj:
2666         * dom/DOMImplementation.cpp:
2667         (WebCore::DOMImplementation::createDocument):
2668         (WebCore::DOMImplementation::createHTMLDocument):
2669         * dom/Document.cpp:
2670         (WebCore::Document::create):
2671         (WebCore::Document::open):
2672         (WebCore::Document::cloneDataFromDocument):
2673         (WebCore::Document::initSecurityContext):
2674         * dom/ScriptExecutionContext.h:
2675         * dom/SecurityContext.cpp:
2676         (WebCore::SecurityContext::setSecurityOriginPolicy):
2677         (WebCore::SecurityContext::securityOrigin):
2678         (WebCore::SecurityContext::isSecureTransitionTo):
2679         (WebCore::SecurityContext::enforceSandboxFlags):
2680         (WebCore::SecurityContext::setSecurityOrigin): Deleted.
2681         * dom/SecurityContext.h:
2682         (WebCore::SecurityContext::securityOriginPolicy):
2683         (WebCore::SecurityContext::securityOrigin): Deleted.
2684         * dom/SecurityOriginPolicy.cpp: Added.
2685         (WebCore::SecurityOriginPolicy::create):
2686         (WebCore::SecurityOriginPolicy::SecurityOriginPolicy):
2687         (WebCore::SecurityOriginPolicy::~SecurityOriginPolicy):
2688         * dom/SecurityOriginPolicy.h: Added.
2689         (WebCore::SecurityOriginPolicy::origin):
2690         * loader/DocumentWriter.cpp:
2691         (WebCore::DocumentWriter::begin):
2692         * workers/WorkerGlobalScope.cpp:
2693         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
2694         * xml/XMLHttpRequest.cpp:
2695         (WebCore::XMLHttpRequest::responseXML):
2696         * xml/XMLTreeViewer.cpp:
2697         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
2698         * xml/XSLTProcessor.cpp:
2699         (WebCore::XSLTProcessor::createDocumentFromSource):
2700
2701 2014-12-22  Zalan Bujtas  <zalan@apple.com>
2702
2703         Incorrect dashed and dotted border painting.
2704         https://bugs.webkit.org/show_bug.cgi?id=139872
2705         rdar://problem/18024205
2706
2707         Reviewed by Simon Fraser.
2708
2709         This patch makes dashed/dotted border painting symmetric and consistent.
2710         It also works with subpixel positioning.
2711
2712         Tests: fast/borders/border-painting-correctness-dashed.html
2713                fast/borders/border-painting-correctness-dotted.html
2714
2715         * platform/graphics/cg/GraphicsContextCG.cpp:
2716         (WebCore::GraphicsContext::drawLine):
2717         * rendering/RenderObject.cpp:
2718         (WebCore::RenderObject::drawLineForBoxSide):
2719
2720 2014-12-22  Timothy Horton  <timothy_horton@apple.com>
2721
2722         TextIndicatorWindow is larger than it needs to be, especially when not bouncing
2723         https://bugs.webkit.org/show_bug.cgi?id=139876
2724         <rdar://problem/19311017>
2725
2726         Reviewed by Sam Weinig.
2727
2728         * page/TextIndicator.cpp:
2729         (WebCore::TextIndicator::wantsBounce):
2730         (WebCore::TextIndicator::wantsContentCrossfade):
2731         (WebCore::TextIndicator::wantsFadeIn):
2732         * page/TextIndicator.h:
2733         * page/mac/TextIndicatorWindow.mm:
2734         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
2735         (-[WebTextIndicatorView _animationDuration]):
2736         (-[WebTextIndicatorView present]):
2737         (WebCore::TextIndicatorWindow::setTextIndicator):
2738         (-[WebTextIndicatorView _textIndicatorWantsBounce]): Deleted.
2739         (-[WebTextIndicatorView _textIndicatorWantsContentCrossfade]): Deleted.
2740         (-[WebTextIndicatorView _textIndicatorWantsFadeIn]): Deleted.
2741         Move the various switches over TextIndicatorPresentationTransition into TextIndicator.
2742         Adjust the margin; only inflate by the shadow if we're not bouncing.
2743         If we are bouncing, fix the math to more tightly fit the bounce.
2744         Previously we were inflating by way too much, and even when we didn't need to.
2745
2746 2014-12-22  Chris Dumez  <cdumez@apple.com>
2747
2748         [iOS] Log using FeatureCounter when a PacheCache entry is not reused because it expired
2749         https://bugs.webkit.org/show_bug.cgi?id=139869
2750         <rdar://problem/19255690>
2751
2752         Reviewed by Darin Adler.
2753
2754         Log using FeatureCounter when a PacheCache entry is not reused because
2755         it expired.
2756
2757         * history/PageCache.cpp:
2758         (WebCore::PageCache::take):
2759         (WebCore::PageCache::get):
2760         * history/PageCache.h:
2761         * loader/FrameLoader.cpp:
2762         (WebCore::FrameLoader::commitProvisionalLoad):
2763         (WebCore::FrameLoader::loadDifferentDocumentItem):
2764         * loader/HistoryController.cpp:
2765         (WebCore::HistoryController::invalidateCurrentItemCachedPage):
2766         * platform/FeatureCounterKeys.h:
2767
2768 2014-12-22  Antti Koivisto  <antti@apple.com>
2769
2770         Try to fix the windows build.
2771
2772         * platform/graphics/win/SimpleFontDataCGWin.cpp:
2773
2774 2014-12-22  Timothy Horton  <timothy_horton@apple.com>
2775
2776         Adjust TextIndicator shadow parameters
2777         https://bugs.webkit.org/show_bug.cgi?id=139871
2778         <rdar://problem/19283300>
2779
2780         Reviewed by Sam Weinig.
2781
2782         * page/mac/TextIndicatorWindow.mm:
2783         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
2784         Slightly adjust the shadow and bounce size.
2785
2786 2014-12-22  Chris Dumez  <cdumez@apple.com>
2787
2788         Consistently use "FeatureCounter*Key" naming for FeatureCounter keys
2789         https://bugs.webkit.org/show_bug.cgi?id=139867
2790
2791         Reviewed by Darin Adler.
2792
2793         Consistently use "FeatureCounter*Key" naming for FeatureCounter keys.
2794
2795         * loader/FrameLoader.cpp:
2796         (WebCore::logNavigationWithFeatureCounter):
2797         * platform/FeatureCounterKeys.h:
2798
2799 2014-12-22  Antti Koivisto  <antti@apple.com>
2800
2801         Generic font code should not know about SVG font missing glyph
2802         https://bugs.webkit.org/show_bug.cgi?id=139864
2803
2804         Reviewed by Andreas Kling and Myles Maxfield.
2805
2806         The defined missing glyph is an SVG font concept and should be handled in SVG code.
2807
2808         * platform/graphics/FontGlyphs.cpp:
2809         (WebCore::FontGlyphs::glyphDataForSystemFallback):
2810         (WebCore::FontGlyphs::glyphDataForVariant):
2811
2812             Return null glyph instead of the missing glyph (the missing glyph was already a null glyph in all non-svg-font cases).
2813             Use early return style.
2814
2815         * platform/graphics/FontGlyphs.h:
2816         * platform/graphics/SegmentedFontData.cpp:
2817         * platform/graphics/SimpleFontData.cpp:
2818         (WebCore::SimpleFontData::platformGlyphInit):
2819         * platform/graphics/SimpleFontData.h:
2820
2821             Remove the missingGlyph member.
2822
2823         * platform/graphics/WidthIterator.cpp:
2824         (WebCore::WidthIterator::advanceInternal):
2825
2826             Explicitly skip over null glyphs. Before they had non-null fontData and would get skipped implicitly.
2827
2828         * platform/graphics/mac/SimpleFontDataMac.mm:
2829         * rendering/svg/SVGTextRunRenderingContext.cpp:
2830         (WebCore::missingGlyphForFont):
2831
2832             Get the missing glyph from the SVG font element.
2833
2834         (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):
2835
2836             Return the missing glyph if the normal lookup didn't produce results.
2837
2838         * svg/SVGFontData.cpp:
2839         (WebCore::SVGFontData::initializeFontData):
2840
2841 2014-12-22  Chris Dumez  <cdumez@apple.com>
2842
2843         Move "Auto" CSS properties to the new StyleBuilder
2844         https://bugs.webkit.org/show_bug.cgi?id=139858
2845
2846         Reviewed by Antti Koivisto.
2847
2848         Move "Auto" CSS properties from DeprecatedStyleBuilder to the new
2849         StyleBuilder, by adding support in the generator for using hasAutoXXX()
2850         / setHasAutoXXX() methods on RenderStyle.
2851
2852         No new tests, no web-exposed behavior change.
2853
2854         * css/CSSPropertyNames.in:
2855         * css/DeprecatedStyleBuilder.cpp:
2856         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2857         (WebCore::ApplyPropertyAuto::setValue): Deleted.
2858         (WebCore::ApplyPropertyAuto::value): Deleted.
2859         (WebCore::ApplyPropertyAuto::hasAuto): Deleted.
2860         (WebCore::ApplyPropertyAuto::setAuto): Deleted.
2861         (WebCore::ApplyPropertyAuto::applyInheritValue): Deleted.
2862         (WebCore::ApplyPropertyAuto::applyInitialValue): Deleted.
2863         (WebCore::ApplyPropertyAuto::applyValue): Deleted.
2864         (WebCore::ApplyPropertyAuto::createHandler): Deleted.
2865         * css/StyleBuilderCustom.h:
2866         (WebCore::StyleBuilderCustom::applyInitialColumnGap):
2867         (WebCore::StyleBuilderCustom::applyInheritColumnGap):
2868         (WebCore::StyleBuilderCustom::applyValueColumnGap):
2869         * css/makeprop.pl:
2870         (getNameForMethods):
2871         (getAutoGetter):
2872         (getAutoSetter):
2873         (generateInitialValueSetter):
2874         (generateInheritValueSetter):
2875         (generateValueSetter):
2876
2877 2014-12-21  Shivakumar JM  <shiva.jm@samsung.com>
2878
2879         HTMLSelectElement add() should support adding group of options element (HTMLOptGroupElement).
2880         https://bugs.webkit.org/show_bug.cgi?id=139806
2881
2882         Reviewed by Darin Adler.
2883
2884         HTMLSelectElement add() should support adding group of options (optgroup) element.
2885
2886         Test: fast/dom/HTMLSelectElement/select-add-optgroup.html
2887
2888         * html/HTMLSelectElement.cpp:
2889         (WebCore::HTMLSelectElement::add):
2890
2891 2014-12-21  Chris Dumez  <cdumez@apple.com>
2892
2893         Fix missing assertion in r177623.
2894         https://bugs.webkit.org/show_bug.cgi?id=139334
2895
2896         Reviewed by Darin Adler.
2897
2898         ValueWithCalculation::setCalculation() was meant to include an
2899         "isCalculation()" assertion but I inadvertently omitted the
2900         ASSERT() around the statement.
2901
2902         * css/CSSParser.h:
2903         (WebCore::CSSParser::ValueWithCalculation::setCalculation):
2904
2905 2014-12-21  Gabor Rapcsanyi  <rgabor@webkit.org>
2906
2907         AX: Hidden aria table crash
2908         https://bugs.webkit.org/show_bug.cgi?id=139856
2909
2910         Reviewed by Chris Fleizach.
2911
2912         Change axCaption to pointer and check it's value because
2913         AXObjectCache::getOrCreate() can return with nullptr.
2914
2915         Test: accessibility/aria-hidden-crash.html
2916
2917         * accessibility/AccessibilityTable.cpp:
2918         (WebCore::AccessibilityTable::addChildren):
2919
2920 2014-12-20  Chris Dumez  <cdumez@apple.com>
2921
2922         Get rid of error-prone ReleaseParsedCalcValueCondition argument in CSSParser
2923         https://bugs.webkit.org/show_bug.cgi?id=139334
2924
2925         Reviewed by Darin Adler.
2926
2927         Get rid of error-prone ReleaseParsedCalcValueCondition argument in
2928         CSSParser that determines the the m_parsedCalculation member should
2929         be released.
2930
2931         Instead, introduce a new ValueWithCalculation type which wraps a
2932         CSSParserValue and an optional parsed calculation value. This way,
2933         the parsed calculation value is now associated with its CSSParserValue.
2934         This makes it very difficult to use a parsed calculation value for the
2935         wrong CSSParserValue. The API is also easier to use as developers no
2936         longer need to explicitly indicate if the calculation value should be
2937         released or not.
2938
2939         No new tests, no web-behavior change.
2940
2941 2014-12-20  Eric Carlson  <eric.carlson@apple.com>
2942
2943         [iOS] add optimized fullscreen API
2944         https://bugs.webkit.org/show_bug.cgi?id=139833
2945         <rdar://problem/18844486>
2946
2947         Reviewed by Simon Fraser.
2948
2949         * Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
2950
2951         * Modules/mediacontrols/MediaControlsHost.cpp:
2952         (WebCore::MediaControlsHost::optimizedFullscreenSupported): Deleted.
2953         (WebCore::MediaControlsHost::fullscreenMode): Deleted.
2954         * Modules/mediacontrols/MediaControlsHost.h:
2955         * Modules/mediacontrols/MediaControlsHost.idl:
2956
2957         * Modules/mediacontrols/mediaControlsiOS.js:
2958         (ControllerIOS.prototype.addVideoListeners): Listen for 'webkitpresentationmodechanged'.
2959         (ControllerIOS.prototype.removeVideoListeners): Stop listening for 'webkitpresentationmodechanged'.
2960         (ControllerIOS.prototype.configureInlineControls): Call video element instead of using the now 
2961             removed host property.
2962         (ControllerIOS.prototype.updateControls): Ditto.
2963         (ControllerIOS.prototype.presentationMode): New, return webkitPresentationMode when possible.
2964         (ControllerIOS.prototype.handleFullscreenButtonClicked): Use webkitSetPresentationMode when possible.
2965         (ControllerIOS.prototype.handleOptimizedFullscreenButtonClicked): Use video element instead of 
2966             using the now removed host method.
2967         (ControllerIOS.prototype.handlePresentationModeChange): New, react to presentation mode changes.
2968         (ControllerIOS.prototype.handleFullscreenChange): Call handlePresentationModeChange.
2969
2970         * dom/EventNames.h: Add webkitpresentationmodechanged.
2971
2972         * html/HTMLAttributeNames.in: Add onwebkitpresentationmodechanged.
2973
2974         * html/HTMLMediaElement.cpp:
2975         (WebCore::HTMLMediaElement::enterFullscreen): Early return when asked to change to the current 
2976             mode. Call fullscreenModeChanged() instead of whacking the instance variable directly.
2977         (WebCore::HTMLMediaElement::exitFullscreen): Ditto.
2978         * html/HTMLMediaElement.h:
2979         (WebCore::HTMLMediaElement::fullscreenModeChanged): Make virtual.
2980
2981         * html/HTMLVideoElement.cpp:
2982         (WebCore::HTMLVideoElement::parseAttribute): Deal with onwebkitpresentationmodechange.
2983         (WebCore::presentationModeFullscreen): New.
2984         (WebCore::presentationModeOptimized): Ditto.
2985         (WebCore::presentationModeInline): Ditto.
2986         (WebCore::HTMLVideoElement::webkitSupportsPresentationMode): Ditto.
2987         (WebCore::HTMLVideoElement::webkitSetPresentationMode): Ditto.
2988         (WebCore::HTMLVideoElement::webkitPresentationMode): Ditto.
2989         (WebCore::HTMLVideoElement::fullscreenModeChanged): Ditto.
2990         * html/HTMLVideoElement.h:
2991         * html/HTMLVideoElement.idl:
2992
2993         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
2994         (WebVideoFullscreenInterfaceAVKit::setIsOptimized): Simplify the logic a bit. Don't report
2995             a mode change when 
2996
2997 2014-12-20  David Kilzer  <ddkilzer@apple.com>
2998
2999         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
3000         <http://webkit.org/b/139463>
3001
3002         Reviewed by Mark Rowe.
3003
3004         Also remove all uses of SQLITE3_HEADER_SEARCH_PATHS and
3005         WEBCORE_SQLITE3_HEADER_SEARCH_PATHS which were phased out in
3006         r132859 and needed for Leopard.
3007
3008         * Configurations/Base.xcconfig:
3009         - Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
3010           on OS X.
3011         - Set GCC_OPTIMIZATION_LEVEL_normal based on SDK.
3012         - Simplify SQLITE3_HEADER_SEARCH_PATHS.
3013         * Configurations/DebugRelease.xcconfig:
3014         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
3015         * Configurations/Version.xcconfig:
3016         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
3017         * Configurations/WebCore.xcconfig:
3018         - Set EXPORTED_SYMBOLS_FILE_i386, EXPORTED_SYMBOLS_FILE_x86_64,
3019           FRAMEWORK_SEARCH_PATHS, INSTALL_PATH, DYLIB_INSTALL_NAME_BASE,
3020           OTHER_LDFLAGS, SECTORDER_FLAGS, NORMAL_WEBCORE_FRAMEWORKS_DIR,
3021           WEBCORE_FRAMEWORKS_DIR, NORMAL_PRODUCTION_FRAMEWORKS_DIR,
3022           PRODUCTION_FRAMEWORKS_DIR,
3023           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production and
3024           EXCLUDED_SOURCE_FILE_NAMES based on SDK.
3025         - Make sure DYLIB_INSTALL_NAME_BASE and OTHER_LDFLAGS are
3026           overrideable by WebCoreTestSupport.xcconfig.
3027         * Configurations/WebCoreTestSupport.xcconfig:
3028         - Set PRIVATE_HEADERS_FOLDER_PATH_Production and
3029           INSTALL_PATH_Production based on SDK.
3030         - Override SECT_ORDER_FLAGS from WebCore.xcconfig.
3031
3032 2014-12-19  Myles C. Maxfield  <mmaxfield@apple.com>
3033
3034         [SVG -> OTF Converter] Make placeholders more robust
3035         https://bugs.webkit.org/show_bug.cgi?id=139836
3036
3037         Reviewed by Dan Bernstein.
3038
3039         This patch creates a Placeholder object which hides the complexity of
3040         populating offsets to subtables.
3041
3042         No new tests because there is no behavior change.
3043
3044         * svg/SVGToOTFFontConversion.cpp:
3045         (WebCore::SVGToOTFFontConverter::Placeholder::Placeholder):
3046         (WebCore::SVGToOTFFontConverter::Placeholder::populate):
3047         (WebCore::SVGToOTFFontConverter::Placeholder::~Placeholder):
3048         (WebCore::SVGToOTFFontConverter::appendArabicReplacementSubtable):
3049         (WebCore::SVGToOTFFontConverter::appendGSUBTable):
3050
3051 2014-12-19  Chris Dumez  <cdumez@apple.com>
3052
3053         Fix initial / inherit support for '-webkit-perspective-origin' CSS property
3054         https://bugs.webkit.org/show_bug.cgi?id=139843
3055
3056         Reviewed by Simon Fraser.
3057
3058         Fix initial / inherit support for '-webkit-perspective-origin' CSS
3059         property. These previously had no effect.
3060
3061         This patch updates the code to be consistent with
3062         '-webkit-transform-origin' and gets rid of the code in
3063         DeprecatedStyleBuilder as it isn't used.
3064
3065         Test: fast/css/perspective-origin-initial-inherit.html
3066
3067         * css/DeprecatedStyleBuilder.cpp:
3068         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
3069         (WebCore::ApplyPropertyPerspectiveOrigin::applyInheritValue): Deleted.
3070         (WebCore::ApplyPropertyPerspectiveOrigin::applyInitialValue): Deleted.
3071         (WebCore::ApplyPropertyPerspectiveOrigin::applyValue): Deleted.
3072         (WebCore::ApplyPropertyPerspectiveOrigin::createHandler): Deleted.
3073         * css/StyleProperties.cpp:
3074         (WebCore::StyleProperties::getPropertyValue):
3075         (WebCore::StyleProperties::asText):
3076         * css/StylePropertyShorthand.cpp:
3077         (WebCore::webkitPerspectiveOriginShorthand):
3078         (WebCore::shorthandForProperty):
3079         (WebCore::matchingShorthandsForLonghand):
3080         * css/StylePropertyShorthand.h:
3081         * css/StyleResolver.cpp:
3082         (WebCore::StyleResolver::applyProperty):
3083
3084 2014-12-19  Commit Queue  <commit-queue@webkit.org>
3085
3086         Unreviewed, rolling out r177599.
3087         https://bugs.webkit.org/show_bug.cgi?id=139846
3088
3089         this breaks so many things (Requested by thorton_ on #webkit).
3090
3091         Reverted changeset:
3092
3093         "TextIndicator's window can be pushed down if it intersects
3094         the menu bar"
3095         https://bugs.webkit.org/show_bug.cgi?id=139841
3096         http://trac.webkit.org/changeset/177599
3097
3098 2014-12-19  Timothy Horton  <timothy_horton@apple.com>
3099
3100         TextIndicator's window can be pushed down if it intersects the menu bar
3101         https://bugs.webkit.org/show_bug.cgi?id=139841
3102         <rdar://problem/19311017>
3103
3104         Reviewed by Anders Carlsson.
3105
3106         * page/mac/TextIndicatorWindow.mm:
3107         (WebCore::TextIndicatorWindow::setTextIndicator):
3108         Ensure that the textIndicatorWindow sits above the menubar, and re-set
3109         its frame so that it moves under the menubar if required.
3110
3111 2014-12-19  Anders Carlsson  <andersca@apple.com>
3112
3113         Use WebCore::MachSendRights for the compositing render server port
3114         https://bugs.webkit.org/show_bug.cgi?id=139834
3115
3116         Reviewed by Tim Horton.
3117
3118         * WebCore.exp.in:
3119
3120 2014-12-19  Chris Dumez  <cdumez@apple.com>
3121
3122         [iOS] Log how often media element playback happens using FeatureCounter
3123         https://bugs.webkit.org/show_bug.cgi?id=139819
3124         <rdar://problem/19309988>
3125
3126         Reviewed by Eric Carlson.
3127
3128         Log using FeatureCounter how often we start loading for audio / video
3129         elements, and how often they end up being played.
3130
3131         * html/HTMLMediaElement.cpp:
3132         (WebCore::HTMLMediaElement::HTMLMediaElement):
3133         Add flag to identify when a media element starts playing for the first
3134         time.
3135
3136         (WebCore::HTMLMediaElement::loadResource):
3137         Log when a media element starts loading.
3138
3139         (WebCore::HTMLMediaElement::updatePlayState):
3140         Log when a media element starts playing for the first time.
3141
3142         * html/HTMLMediaElement.h:
3143         Add flag to identify when a media element starts playing for the first
3144         time.
3145
3146         * platform/FeatureCounterKeys.h:
3147         Add FeatureCounter keys for HTMLMediaElement loading / playback.
3148
3149 2014-12-19  Andreas Kling  <akling@apple.com>
3150
3151         Ref-ify TextIterator API.
3152         <https://webkit.org/b/139823>
3153
3154         Reviewed by Antti Koivisto.
3155
3156         Change TextIterator functions that always return Range objects to return
3157         Ref<Range> instead of PassRefPtr<Range>.
3158
3159         One API (rangeFromLocationAndLength) may return nullptr, so its return type
3160         is now RefPtr<Range>.
3161
3162         * editing/TextIterator.cpp:
3163         (WebCore::TextIterator::range):
3164         (WebCore::TextIterator::node):
3165         (WebCore::SimplifiedBackwardsTextIterator::range):
3166         (WebCore::CharacterIterator::range):
3167         (WebCore::characterSubrange):
3168         (WebCore::BackwardsCharacterIterator::range):
3169         (WebCore::TextIterator::subrange):
3170         (WebCore::TextIterator::rangeFromLocationAndLength):
3171         (WebCore::TextIterator::getLocationAndLengthFromRange):
3172         (WebCore::collapsedToBoundary):
3173         (WebCore::findPlainText):
3174         * editing/TextIterator.h:
3175
3176 2014-12-19  Joseph Pecoraro  <pecoraro@apple.com>
3177
3178         Web Inspector: CRASH in inspector-protocol/debugger/terminate-dedicated-worker-while-paused.html
3179         https://bugs.webkit.org/show_bug.cgi?id=139792
3180
3181         Reviewed by Timothy Hatcher.
3182
3183         * bindings/js/WorkerScriptDebugServer.cpp:
3184         (WebCore::WorkerScriptDebugServer::removeListener):
3185         When removing listeners, we could be during WorkerGlobalObject shutdown
3186         and WorkerGlobalObject::script may be null.
3187
3188         * workers/WorkerMessagingProxy.cpp:
3189         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
3190         (WebCore::WorkerMessagingProxy::postMessageToPageInspector):
3191         This postTask may happen after m_pageInspector has been cleared, so
3192         only execute it if m_pageInspector is still valid.
3193
3194 2014-12-19  Chris Dumez  <cdumez@apple.com>
3195
3196         Drop useless HTMLMediaElement::m_previousProgress member
3197         https://bugs.webkit.org/show_bug.cgi?id=139822
3198
3199         Reviewed by Eric Carlson.
3200
3201         Drop HTMLMediaElement::m_previousProgress member and it is not used or
3202         even initialized.
3203
3204         * html/HTMLMediaElement.h:
3205
3206 2014-12-19  Chris Dumez  <cdumez@apple.com>
3207
3208         [iOS] Log how successful the memory cache is using FeatureCounter
3209         https://bugs.webkit.org/show_bug.cgi?id=139802
3210
3211         Reviewed by Andreas Kling.
3212
3213         Log how successful the memory cache is using FeatureCounter and why we
3214         choose not to use the resource in the memory cache when it is present.
3215
3216         * loader/cache/CachedResourceLoader.cpp:
3217         (WebCore::CachedResourceLoader::requestResource):
3218         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
3219         * platform/FeatureCounterKeys.h:
3220
3221 2014-12-19  Commit Queue  <commit-queue@webkit.org>
3222
3223         Unreviewed, rolling out r177574.
3224         https://bugs.webkit.org/show_bug.cgi?id=139821
3225
3226         "Broke Production builds by installing
3227         libWebCoreTestSupport.dylib in the wrong directory" (Requested
3228         by ddkilzer on #webkit).
3229
3230         Reverted changeset:
3231
3232         "Switch from using PLATFORM_NAME to SDK selectors in WebCore,
3233         WebInspectorUI, WebKit, WebKit2"
3234         https://bugs.webkit.org/show_bug.cgi?id=139463
3235         http://trac.webkit.org/changeset/177574
3236
3237 2014-12-19  Said Abou-Hallawa  <sabouhallawa@apple.com>
3238
3239         Only when the SVG is inline and only when a shape is referenced before it is defined, this shape will not be drawn.
3240         https://bugs.webkit.org/show_bug.cgi?id=139451.
3241
3242         Reviewed by Antti Koivisto.
3243
3244         Tests: svg/in-html/defs-after-use.html.
3245
3246         When parsing the children of an SVG element is finished, we need to notify the
3247         other SVG elements which have incomplete shadow trees because of early referencing
3248         to this element. The referencing elements need to rebuild their shadow trees and
3249         make new copies of the this element and its sub-tree.
3250         
3251         This is the case where a <use> tag references target elements before these target
3252         elements are defined. Updating the shadow DOM tree of a <use> element should update
3253         the corresponding shadow render tree as well.
3254
3255         * svg/SVGElement.cpp:
3256         (WebCore::SVGElement::finishParsingChildren):
3257         Invalidate all the referencing elements of a target element whose sub-tree has
3258         just finished parsing.
3259
3260 2014-12-19  David Kilzer  <ddkilzer@apple.com>
3261
3262         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
3263         <http://webkit.org/b/139463>
3264
3265         Reviewed by Mark Rowe.
3266
3267         Also remove all uses of SQLITE3_HEADER_SEARCH_PATHS and
3268         WEBCORE_SQLITE3_HEADER_SEARCH_PATHS which were phased out in
3269         r132859 and needed for Leopard.
3270
3271         * Configurations/Base.xcconfig:
3272         - Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
3273           on OS X.
3274         - Set GCC_OPTIMIZATION_LEVEL_normal based on SDK.
3275         - Simplify SQLITE3_HEADER_SEARCH_PATHS.
3276         * Configurations/DebugRelease.xcconfig:
3277         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
3278         * Configurations/Version.xcconfig:
3279         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
3280         * Configurations/WebCore.xcconfig:
3281         - Set EXPORTED_SYMBOLS_FILE_i386, EXPORTED_SYMBOLS_FILE_x86_64,
3282           FRAMEWORK_SEARCH_PATHS, INSTALL_PATH, DYLIB_INSTALL_NAME_BASE,
3283           OTHER_LDFLAGS, SECTORDER_FLAGS, NORMAL_WEBCORE_FRAMEWORKS_DIR,
3284           WEBCORE_FRAMEWORKS_DIR, NORMAL_PRODUCTION_FRAMEWORKS_DIR,
3285           PRODUCTION_FRAMEWORKS_DIR,
3286           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production and
3287           EXCLUDED_SOURCE_FILE_NAMES based on SDK.
3288         - Make sure DYLIB_INSTALL_NAME_BASE and OTHER_LDFLAGS are
3289           overrideable by WebCoreTestSupport.xcconfig.
3290         * Configurations/WebCoreTestSupport.xcconfig:
3291         - Set PRIVATE_HEADERS_FOLDER_PATH_Production and
3292           INSTALL_PATH_Production based on SDK.
3293         - Override SECT_ORDER_FLAGS from WebCore.xcconfig.
3294
3295 2014-12-19  Chris Dumez  <cdumez@apple.com>
3296
3297         Clean up StyleBuilderCustom and DeprecatedStyleBuilder
3298         https://bugs.webkit.org/show_bug.cgi?id=139807
3299
3300         Reviewed by Antti Koivisto.
3301
3302         Clean up StyleBuilderCustom and DeprecatedStyleBuilder.
3303
3304         * css/DeprecatedStyleBuilder.cpp:
3305
3306         - Remove unnecessary header includes.
3307
3308         (WebCore::ApplyPropertyPerspectiveOrigin::applyInheritValue):
3309         (WebCore::ApplyPropertyPerspectiveOrigin::applyInitialValue):
3310         (WebCore::ApplyPropertyPerspectiveOrigin::applyValue):
3311         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
3312         (WebCore::ApplyPropertyExpanding::applyInheritValue): Deleted.
3313         (WebCore::ApplyPropertyExpanding::applyInitialValue): Deleted.
3314         (WebCore::ApplyPropertyExpanding::applyValue): Deleted.
3315         (WebCore::ApplyPropertyExpanding::createHandler): Deleted.
3316
3317         - Rename ApplyPropertyExpanding to ApplyPropertyPerspectiveOrigin as
3318           PerspectiveOrigin is the only remaining user of this class. This also
3319           allows us to simplify the implementation a lot.
3320
3321         (WebCore::ApplyPropertyDefaultBase::setValue): Deleted.
3322         (WebCore::ApplyPropertyDefaultBase::value): Deleted.
3323         (WebCore::ApplyPropertyDefaultBase::initial): Deleted.
3324         (WebCore::ApplyPropertyDefaultBase::applyInheritValue): Deleted.
3325         (WebCore::ApplyPropertyDefaultBase::applyInitialValue): Deleted.
3326         (WebCore::ApplyPropertyDefaultBase::applyValue): Deleted.
3327
3328         - There is no longer any user of this templated class.
3329
3330         * css/StyleBuilderCustom.h:
3331
3332         - Introduce a macro that declares all 3 handlers (inherit, initial and
3333           value) in the StyleBuilderCustom class. This greatly reduces the
3334           number of lines in this class.
3335         - Also alphabetize the handlers.
3336
3337 2014-12-18  Jeremy Jones  <jeremyj@apple.com>
3338
3339         dispatch to main thread before accessing playerController() in WebVideoFullscreenInterfaceAVKit::setCanPlayFastReverse
3340         https://bugs.webkit.org/show_bug.cgi?id=139809
3341
3342         Reviewed by Dan Bernstein.
3343
3344         This prevents a race in playerController().
3345
3346         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
3347         (WebVideoFullscreenInterfaceAVKit::setCanPlayFastReverse):
3348
3349 2014-12-18  Jessie Berlin  <jberlin@webkit.org>
3350
3351         More speculative build fixing.
3352
3353         * WebCore.exp.in:
3354
3355 2014-12-18  Andreas Kling  <akling@apple.com>
3356
3357         Ref-ify various Document-related things.
3358         <https://webkit.org/b/139796>
3359
3360         Reviewed by Anders Carlsson.
3361
3362         * bindings/objc/DOMHTML.mm:
3363         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
3364         * dom/CDATASection.cpp:
3365         (WebCore::CDATASection::create):
3366         (WebCore::CDATASection::virtualCreate):
3367         * dom/CDATASection.h:
3368         * dom/Comment.cpp:
3369         (WebCore::Comment::create):
3370         * dom/Comment.h:
3371         * dom/Document.cpp:
3372         (WebCore::Document::create):
3373         (WebCore::Document::createDocumentFragment):
3374         (WebCore::Document::createTextNode):
3375         (WebCore::Document::createComment):
3376         (WebCore::Document::createEditingTextNode):
3377         (WebCore::Document::createCSSStyleDeclaration):
3378         (WebCore::Document::createElement):
3379         (WebCore::Document::createRange):
3380         (WebCore::Document::createParser):
3381         (WebCore::Document::cloneNodeInternal):
3382         (WebCore::Document::cloneDocumentWithoutChildren):
3383         * dom/Document.h:
3384         (WebCore::Document::create):
3385         (WebCore::Document::createXHTML):
3386         (WebCore::Document::createNonRenderedPlaceholder):
3387         * dom/DocumentFragment.cpp:
3388         (WebCore::DocumentFragment::create):
3389         * dom/DocumentFragment.h:
3390         * dom/DocumentType.h:
3391         * dom/EntityReference.cpp:
3392         (WebCore::EntityReference::create):
3393         * dom/EntityReference.h:
3394         * dom/Text.cpp:
3395         (WebCore::Text::create):
3396         (WebCore::Text::createEditingText):
3397         (WebCore::Text::splitText):
3398         (WebCore::Text::virtualCreate):
3399         (WebCore::Text::createWithLengthLimit):
3400         * dom/Text.h:
3401         * editing/markup.cpp:
3402         (WebCore::replaceChildrenWithText):
3403         * html/FTPDirectoryDocument.cpp:
3404         (WebCore::FTPDirectoryDocument::createParser):
3405         * html/FTPDirectoryDocument.h:
3406         * html/HTMLDocument.cpp:
3407         (WebCore::HTMLDocument::createParser):
3408         (WebCore::HTMLDocument::cloneDocumentWithoutChildren):
3409         * html/HTMLDocument.h:
3410         (WebCore::HTMLDocument::create):
3411         (WebCore::HTMLDocument::createSynthesizedDocument):
3412         * html/ImageDocument.cpp:
3413         (WebCore::ImageDocument::createParser):
3414         * html/ImageDocument.h:
3415         * html/MediaDocument.cpp:
3416         (WebCore::MediaDocument::createParser):
3417         * html/MediaDocument.h:
3418         * html/PluginDocument.cpp:
3419         (WebCore::PluginDocument::createParser):
3420         * html/PluginDocument.h:
3421         * html/TextDocument.cpp:
3422         (WebCore::TextDocument::createParser):
3423         * html/TextDocument.h:
3424         * html/parser/HTMLConstructionSite.cpp:
3425         (WebCore::HTMLConstructionSite::insertTextNode):
3426         * html/parser/HTMLDocumentParser.h:
3427         (WebCore::HTMLDocumentParser::create):
3428         * loader/SinkDocument.cpp:
3429         (WebCore::SinkDocument::createParser):
3430         * loader/SinkDocument.h:
3431         * svg/SVGDocument.cpp:
3432         (WebCore::SVGDocument::cloneDocumentWithoutChildren):
3433         * svg/SVGDocument.h:
3434         * xml/parser/XMLDocumentParser.h:
3435         (WebCore::XMLDocumentParser::create):
3436         * xml/parser/XMLDocumentParserLibxml2.cpp:
3437         (WebCore::XMLParserContext::createStringParser):
3438         (WebCore::XMLParserContext::createMemoryParser):
3439
3440 2014-12-18  Anders Carlsson  <andersca@apple.com>
3441
3442         Use MachSendRight in WebKit2
3443         https://bugs.webkit.org/show_bug.cgi?id=139800
3444
3445         Reviewed by Tim Horton.
3446
3447         * WebCore.exp.in:
3448         * platform/cocoa/MachSendRight.h:
3449         (WebCore::MachSendRight::MachSendRight):
3450         (WebCore::MachSendRight::sendRight):
3451         * platform/graphics/cocoa/IOSurface.h:
3452         * platform/graphics/cocoa/IOSurface.mm:
3453         (IOSurface::createFromSendRight):
3454         (IOSurface::createFromMachPort): Deleted.
3455
3456 2014-12-18  Gavin Barraclough  <barraclough@apple.com>
3457
3458         Add strong typing to RefCounter interface, return value as a bool.
3459         https://bugs.webkit.org/show_bug.cgi?id=139776