dd8d2212cb3895f54f6b5a3b564966b434481245
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-12-19  Chris Dumez  <cdumez@apple.com>
2
3         Fix initial / inherit support for '-webkit-perspective-origin' CSS property
4         https://bugs.webkit.org/show_bug.cgi?id=139843
5
6         Reviewed by Simon Fraser.
7
8         Fix initial / inherit support for '-webkit-perspective-origin' CSS
9         property. These previously had no effect.
10
11         This patch updates the code to be consistent with
12         '-webkit-transform-origin' and gets rid of the code in
13         DeprecatedStyleBuilder as it isn't used.
14
15         Test: fast/css/perspective-origin-initial-inherit.html
16
17         * css/DeprecatedStyleBuilder.cpp:
18         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
19         (WebCore::ApplyPropertyPerspectiveOrigin::applyInheritValue): Deleted.
20         (WebCore::ApplyPropertyPerspectiveOrigin::applyInitialValue): Deleted.
21         (WebCore::ApplyPropertyPerspectiveOrigin::applyValue): Deleted.
22         (WebCore::ApplyPropertyPerspectiveOrigin::createHandler): Deleted.
23         * css/StyleProperties.cpp:
24         (WebCore::StyleProperties::getPropertyValue):
25         (WebCore::StyleProperties::asText):
26         * css/StylePropertyShorthand.cpp:
27         (WebCore::webkitPerspectiveOriginShorthand):
28         (WebCore::shorthandForProperty):
29         (WebCore::matchingShorthandsForLonghand):
30         * css/StylePropertyShorthand.h:
31         * css/StyleResolver.cpp:
32         (WebCore::StyleResolver::applyProperty):
33
34 2014-12-19  Commit Queue  <commit-queue@webkit.org>
35
36         Unreviewed, rolling out r177599.
37         https://bugs.webkit.org/show_bug.cgi?id=139846
38
39         this breaks so many things (Requested by thorton_ on #webkit).
40
41         Reverted changeset:
42
43         "TextIndicator's window can be pushed down if it intersects
44         the menu bar"
45         https://bugs.webkit.org/show_bug.cgi?id=139841
46         http://trac.webkit.org/changeset/177599
47
48 2014-12-19  Timothy Horton  <timothy_horton@apple.com>
49
50         TextIndicator's window can be pushed down if it intersects the menu bar
51         https://bugs.webkit.org/show_bug.cgi?id=139841
52         <rdar://problem/19311017>
53
54         Reviewed by Anders Carlsson.
55
56         * page/mac/TextIndicatorWindow.mm:
57         (WebCore::TextIndicatorWindow::setTextIndicator):
58         Ensure that the textIndicatorWindow sits above the menubar, and re-set
59         its frame so that it moves under the menubar if required.
60
61 2014-12-19  Anders Carlsson  <andersca@apple.com>
62
63         Use WebCore::MachSendRights for the compositing render server port
64         https://bugs.webkit.org/show_bug.cgi?id=139834
65
66         Reviewed by Tim Horton.
67
68         * WebCore.exp.in:
69
70 2014-12-19  Chris Dumez  <cdumez@apple.com>
71
72         [iOS] Log how often media element playback happens using FeatureCounter
73         https://bugs.webkit.org/show_bug.cgi?id=139819
74         <rdar://problem/19309988>
75
76         Reviewed by Eric Carlson.
77
78         Log using FeatureCounter how often we start loading for audio / video
79         elements, and how often they end up being played.
80
81         * html/HTMLMediaElement.cpp:
82         (WebCore::HTMLMediaElement::HTMLMediaElement):
83         Add flag to identify when a media element starts playing for the first
84         time.
85
86         (WebCore::HTMLMediaElement::loadResource):
87         Log when a media element starts loading.
88
89         (WebCore::HTMLMediaElement::updatePlayState):
90         Log when a media element starts playing for the first time.
91
92         * html/HTMLMediaElement.h:
93         Add flag to identify when a media element starts playing for the first
94         time.
95
96         * platform/FeatureCounterKeys.h:
97         Add FeatureCounter keys for HTMLMediaElement loading / playback.
98
99 2014-12-19  Andreas Kling  <akling@apple.com>
100
101         Ref-ify TextIterator API.
102         <https://webkit.org/b/139823>
103
104         Reviewed by Antti Koivisto.
105
106         Change TextIterator functions that always return Range objects to return
107         Ref<Range> instead of PassRefPtr<Range>.
108
109         One API (rangeFromLocationAndLength) may return nullptr, so its return type
110         is now RefPtr<Range>.
111
112         * editing/TextIterator.cpp:
113         (WebCore::TextIterator::range):
114         (WebCore::TextIterator::node):
115         (WebCore::SimplifiedBackwardsTextIterator::range):
116         (WebCore::CharacterIterator::range):
117         (WebCore::characterSubrange):
118         (WebCore::BackwardsCharacterIterator::range):
119         (WebCore::TextIterator::subrange):
120         (WebCore::TextIterator::rangeFromLocationAndLength):
121         (WebCore::TextIterator::getLocationAndLengthFromRange):
122         (WebCore::collapsedToBoundary):
123         (WebCore::findPlainText):
124         * editing/TextIterator.h:
125
126 2014-12-19  Joseph Pecoraro  <pecoraro@apple.com>
127
128         Web Inspector: CRASH in inspector-protocol/debugger/terminate-dedicated-worker-while-paused.html
129         https://bugs.webkit.org/show_bug.cgi?id=139792
130
131         Reviewed by Timothy Hatcher.
132
133         * bindings/js/WorkerScriptDebugServer.cpp:
134         (WebCore::WorkerScriptDebugServer::removeListener):
135         When removing listeners, we could be during WorkerGlobalObject shutdown
136         and WorkerGlobalObject::script may be null.
137
138         * workers/WorkerMessagingProxy.cpp:
139         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
140         (WebCore::WorkerMessagingProxy::postMessageToPageInspector):
141         This postTask may happen after m_pageInspector has been cleared, so
142         only execute it if m_pageInspector is still valid.
143
144 2014-12-19  Chris Dumez  <cdumez@apple.com>
145
146         Drop useless HTMLMediaElement::m_previousProgress member
147         https://bugs.webkit.org/show_bug.cgi?id=139822
148
149         Reviewed by Eric Carlson.
150
151         Drop HTMLMediaElement::m_previousProgress member and it is not used or
152         even initialized.
153
154         * html/HTMLMediaElement.h:
155
156 2014-12-19  Chris Dumez  <cdumez@apple.com>
157
158         [iOS] Log how successful the memory cache is using FeatureCounter
159         https://bugs.webkit.org/show_bug.cgi?id=139802
160
161         Reviewed by Andreas Kling.
162
163         Log how successful the memory cache is using FeatureCounter and why we
164         choose not to use the resource in the memory cache when it is present.
165
166         * loader/cache/CachedResourceLoader.cpp:
167         (WebCore::CachedResourceLoader::requestResource):
168         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
169         * platform/FeatureCounterKeys.h:
170
171 2014-12-19  Commit Queue  <commit-queue@webkit.org>
172
173         Unreviewed, rolling out r177574.
174         https://bugs.webkit.org/show_bug.cgi?id=139821
175
176         "Broke Production builds by installing
177         libWebCoreTestSupport.dylib in the wrong directory" (Requested
178         by ddkilzer on #webkit).
179
180         Reverted changeset:
181
182         "Switch from using PLATFORM_NAME to SDK selectors in WebCore,
183         WebInspectorUI, WebKit, WebKit2"
184         https://bugs.webkit.org/show_bug.cgi?id=139463
185         http://trac.webkit.org/changeset/177574
186
187 2014-12-19  Said Abou-Hallawa  <sabouhallawa@apple.com>
188
189         Only when the SVG is inline and only when a shape is referenced before it is defined, this shape will not be drawn.
190         https://bugs.webkit.org/show_bug.cgi?id=139451.
191
192         Reviewed by Antti Koivisto.
193
194         Tests: svg/in-html/defs-after-use.html.
195
196         When parsing the children of an SVG element is finished, we need to notify the
197         other SVG elements which have incomplete shadow trees because of early referencing
198         to this element. The referencing elements need to rebuild their shadow trees and
199         make new copies of the this element and its sub-tree.
200         
201         This is the case where a <use> tag references target elements before these target
202         elements are defined. Updating the shadow DOM tree of a <use> element should update
203         the corresponding shadow render tree as well.
204
205         * svg/SVGElement.cpp:
206         (WebCore::SVGElement::finishParsingChildren):
207         Invalidate all the referencing elements of a target element whose sub-tree has
208         just finished parsing.
209
210 2014-12-19  David Kilzer  <ddkilzer@apple.com>
211
212         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
213         <http://webkit.org/b/139463>
214
215         Reviewed by Mark Rowe.
216
217         Also remove all uses of SQLITE3_HEADER_SEARCH_PATHS and
218         WEBCORE_SQLITE3_HEADER_SEARCH_PATHS which were phased out in
219         r132859 and needed for Leopard.
220
221         * Configurations/Base.xcconfig:
222         - Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
223           on OS X.
224         - Set GCC_OPTIMIZATION_LEVEL_normal based on SDK.
225         - Simplify SQLITE3_HEADER_SEARCH_PATHS.
226         * Configurations/DebugRelease.xcconfig:
227         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
228         * Configurations/Version.xcconfig:
229         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
230         * Configurations/WebCore.xcconfig:
231         - Set EXPORTED_SYMBOLS_FILE_i386, EXPORTED_SYMBOLS_FILE_x86_64,
232           FRAMEWORK_SEARCH_PATHS, INSTALL_PATH, DYLIB_INSTALL_NAME_BASE,
233           OTHER_LDFLAGS, SECTORDER_FLAGS, NORMAL_WEBCORE_FRAMEWORKS_DIR,
234           WEBCORE_FRAMEWORKS_DIR, NORMAL_PRODUCTION_FRAMEWORKS_DIR,
235           PRODUCTION_FRAMEWORKS_DIR,
236           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production and
237           EXCLUDED_SOURCE_FILE_NAMES based on SDK.
238         - Make sure DYLIB_INSTALL_NAME_BASE and OTHER_LDFLAGS are
239           overrideable by WebCoreTestSupport.xcconfig.
240         * Configurations/WebCoreTestSupport.xcconfig:
241         - Set PRIVATE_HEADERS_FOLDER_PATH_Production and
242           INSTALL_PATH_Production based on SDK.
243         - Override SECT_ORDER_FLAGS from WebCore.xcconfig.
244
245 2014-12-19  Chris Dumez  <cdumez@apple.com>
246
247         Clean up StyleBuilderCustom and DeprecatedStyleBuilder
248         https://bugs.webkit.org/show_bug.cgi?id=139807
249
250         Reviewed by Antti Koivisto.
251
252         Clean up StyleBuilderCustom and DeprecatedStyleBuilder.
253
254         * css/DeprecatedStyleBuilder.cpp:
255
256         - Remove unnecessary header includes.
257
258         (WebCore::ApplyPropertyPerspectiveOrigin::applyInheritValue):
259         (WebCore::ApplyPropertyPerspectiveOrigin::applyInitialValue):
260         (WebCore::ApplyPropertyPerspectiveOrigin::applyValue):
261         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
262         (WebCore::ApplyPropertyExpanding::applyInheritValue): Deleted.
263         (WebCore::ApplyPropertyExpanding::applyInitialValue): Deleted.
264         (WebCore::ApplyPropertyExpanding::applyValue): Deleted.
265         (WebCore::ApplyPropertyExpanding::createHandler): Deleted.
266
267         - Rename ApplyPropertyExpanding to ApplyPropertyPerspectiveOrigin as
268           PerspectiveOrigin is the only remaining user of this class. This also
269           allows us to simplify the implementation a lot.
270
271         (WebCore::ApplyPropertyDefaultBase::setValue): Deleted.
272         (WebCore::ApplyPropertyDefaultBase::value): Deleted.
273         (WebCore::ApplyPropertyDefaultBase::initial): Deleted.
274         (WebCore::ApplyPropertyDefaultBase::applyInheritValue): Deleted.
275         (WebCore::ApplyPropertyDefaultBase::applyInitialValue): Deleted.
276         (WebCore::ApplyPropertyDefaultBase::applyValue): Deleted.
277
278         - There is no longer any user of this templated class.
279
280         * css/StyleBuilderCustom.h:
281
282         - Introduce a macro that declares all 3 handlers (inherit, initial and
283           value) in the StyleBuilderCustom class. This greatly reduces the
284           number of lines in this class.
285         - Also alphabetize the handlers.
286
287 2014-12-18  Jeremy Jones  <jeremyj@apple.com>
288
289         dispatch to main thread before accessing playerController() in WebVideoFullscreenInterfaceAVKit::setCanPlayFastReverse
290         https://bugs.webkit.org/show_bug.cgi?id=139809
291
292         Reviewed by Dan Bernstein.
293
294         This prevents a race in playerController().
295
296         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
297         (WebVideoFullscreenInterfaceAVKit::setCanPlayFastReverse):
298
299 2014-12-18  Jessie Berlin  <jberlin@webkit.org>
300
301         More speculative build fixing.
302
303         * WebCore.exp.in:
304
305 2014-12-18  Andreas Kling  <akling@apple.com>
306
307         Ref-ify various Document-related things.
308         <https://webkit.org/b/139796>
309
310         Reviewed by Anders Carlsson.
311
312         * bindings/objc/DOMHTML.mm:
313         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
314         * dom/CDATASection.cpp:
315         (WebCore::CDATASection::create):
316         (WebCore::CDATASection::virtualCreate):
317         * dom/CDATASection.h:
318         * dom/Comment.cpp:
319         (WebCore::Comment::create):
320         * dom/Comment.h:
321         * dom/Document.cpp:
322         (WebCore::Document::create):
323         (WebCore::Document::createDocumentFragment):
324         (WebCore::Document::createTextNode):
325         (WebCore::Document::createComment):
326         (WebCore::Document::createEditingTextNode):
327         (WebCore::Document::createCSSStyleDeclaration):
328         (WebCore::Document::createElement):
329         (WebCore::Document::createRange):
330         (WebCore::Document::createParser):
331         (WebCore::Document::cloneNodeInternal):
332         (WebCore::Document::cloneDocumentWithoutChildren):
333         * dom/Document.h:
334         (WebCore::Document::create):
335         (WebCore::Document::createXHTML):
336         (WebCore::Document::createNonRenderedPlaceholder):
337         * dom/DocumentFragment.cpp:
338         (WebCore::DocumentFragment::create):
339         * dom/DocumentFragment.h:
340         * dom/DocumentType.h:
341         * dom/EntityReference.cpp:
342         (WebCore::EntityReference::create):
343         * dom/EntityReference.h:
344         * dom/Text.cpp:
345         (WebCore::Text::create):
346         (WebCore::Text::createEditingText):
347         (WebCore::Text::splitText):
348         (WebCore::Text::virtualCreate):
349         (WebCore::Text::createWithLengthLimit):
350         * dom/Text.h:
351         * editing/markup.cpp:
352         (WebCore::replaceChildrenWithText):
353         * html/FTPDirectoryDocument.cpp:
354         (WebCore::FTPDirectoryDocument::createParser):
355         * html/FTPDirectoryDocument.h:
356         * html/HTMLDocument.cpp:
357         (WebCore::HTMLDocument::createParser):
358         (WebCore::HTMLDocument::cloneDocumentWithoutChildren):
359         * html/HTMLDocument.h:
360         (WebCore::HTMLDocument::create):
361         (WebCore::HTMLDocument::createSynthesizedDocument):
362         * html/ImageDocument.cpp:
363         (WebCore::ImageDocument::createParser):
364         * html/ImageDocument.h:
365         * html/MediaDocument.cpp:
366         (WebCore::MediaDocument::createParser):
367         * html/MediaDocument.h:
368         * html/PluginDocument.cpp:
369         (WebCore::PluginDocument::createParser):
370         * html/PluginDocument.h:
371         * html/TextDocument.cpp:
372         (WebCore::TextDocument::createParser):
373         * html/TextDocument.h:
374         * html/parser/HTMLConstructionSite.cpp:
375         (WebCore::HTMLConstructionSite::insertTextNode):
376         * html/parser/HTMLDocumentParser.h:
377         (WebCore::HTMLDocumentParser::create):
378         * loader/SinkDocument.cpp:
379         (WebCore::SinkDocument::createParser):
380         * loader/SinkDocument.h:
381         * svg/SVGDocument.cpp:
382         (WebCore::SVGDocument::cloneDocumentWithoutChildren):
383         * svg/SVGDocument.h:
384         * xml/parser/XMLDocumentParser.h:
385         (WebCore::XMLDocumentParser::create):
386         * xml/parser/XMLDocumentParserLibxml2.cpp:
387         (WebCore::XMLParserContext::createStringParser):
388         (WebCore::XMLParserContext::createMemoryParser):
389
390 2014-12-18  Anders Carlsson  <andersca@apple.com>
391
392         Use MachSendRight in WebKit2
393         https://bugs.webkit.org/show_bug.cgi?id=139800
394
395         Reviewed by Tim Horton.
396
397         * WebCore.exp.in:
398         * platform/cocoa/MachSendRight.h:
399         (WebCore::MachSendRight::MachSendRight):
400         (WebCore::MachSendRight::sendRight):
401         * platform/graphics/cocoa/IOSurface.h:
402         * platform/graphics/cocoa/IOSurface.mm:
403         (IOSurface::createFromSendRight):
404         (IOSurface::createFromMachPort): Deleted.
405
406 2014-12-18  Gavin Barraclough  <barraclough@apple.com>
407
408         Add strong typing to RefCounter interface, return value as a bool.
409         https://bugs.webkit.org/show_bug.cgi?id=139776
410
411         Reviewed by Geoff Garen.
412
413         Currently all token vended by a RefCounter have the same type - Ref<RefCounter::Count>.
414         This means there is no compile time type checking to prevent mistakes. Update the count()
415         method to token<>(), templated on type used to identify the token being returned.
416         Calls to token<T>() will return a result of type RefCounter::Token<T>.
417
418         There are a few problems with the fact the counter will return you an exact count of the
419         number of outstanding tokens:
420           - It is desirable to only fire the callback on zero-edge changes; it is more consistent
421             to do so if the value is only readable as a boolean.
422           - It is desirable to provide the value as an argument to the callback, however to make
423             this useful for integer values it is also necessary to indicate the direction of change
424             (0->1 is often interesting where 2->1 is not).
425           - There is a mismatch between the precision of returning a count, and the inherent
426             imprecision of a token based mechanism, where it may be difficult to guarantee
427             absolutely no unnecessary refcount churn, and thus unintentional counter values.
428
429         * page/PageThrottler.cpp:
430         (WebCore::m_mediaActivityCounter):
431         (WebCore::m_pageLoadActivityCounter):
432             - lambdas now passed the value.
433         (WebCore::PageThrottler::mediaActivityToken):
434         (WebCore::PageThrottler::pageLoadActivityToken):
435             - count() -> token<>().
436         * page/PageThrottler.h:
437             - specify tpoken type for PageActivityAssertionToken.
438
439 2014-12-18  Benjamin Poulain  <bpoulain@apple.com>
440
441         HTMLFormControlElement and HTMLObjectElement need not to look for an ancestor on construction
442         https://bugs.webkit.org/show_bug.cgi?id=139791
443
444         Reviewed by Alexey Proskuryakov.
445
446         The objects are being constructed, they have not been inserted into the tree yet.
447         There is not chance of finding the owner form at this point,
448         that is done when inserting the node into the tree.
449
450         * html/HTMLFormControlElement.cpp:
451         (WebCore::HTMLFormControlElement::HTMLFormControlElement):
452         * html/HTMLObjectElement.cpp:
453         (WebCore::HTMLObjectElement::HTMLObjectElement):
454
455 2014-12-18  Chris Fleizach  <cfleizach@apple.com>
456
457         AX: Recursive crash at WebCore::accessibleNameForNode
458         https://bugs.webkit.org/show_bug.cgi?id=139616
459
460         Reviewed by Mario Sanchez Prada.
461
462         An image that uses aria-labelledby to reference its own parent can lead to a recursion crash.
463         There needs to be some information we can pass through these methods to ensure we don't hit this case.
464
465         Test: accessibility/accessibility-description-crash.html
466
467         * accessibility/AccessibilityNodeObject.cpp:
468         (WebCore::AccessibilityNodeObject::alternativeText):
469         (WebCore::AccessibilityNodeObject::textUnderElement):
470         (WebCore::accessibleNameForNode):
471         (WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
472         * accessibility/AccessibilityObject.h:
473         (WebCore::AccessibilityTextUnderElementMode::AccessibilityTextUnderElementMode):
474
475 2014-12-18  Chris Fleizach  <cfleizach@apple.com>
476
477         AX: Heuristic: Avoid exposing an element as clickable if mouse event delegation is handled on an element with any explicit ARIA role, including presentation.
478         https://bugs.webkit.org/show_bug.cgi?id=133613
479
480         Reviewed by Mario Sanchez Prada.
481
482         This adds a heuristic to avoid a problem we have where too many objects that say they respond to press actions for accessibility.
483         It results from people installing click handlers on container nodes and then lots of static text objects are "clickable" in the eyes of VoiceOver.
484
485         What we can do is avoid this determination if the element is presentational.
486
487         Test: platform/mac/accessibility/press-action-for-presentational-descendants.html
488
489         * accessibility/AccessibilityObject.cpp:
490         (WebCore::nodeHasPresentationRole):
491         (WebCore::AccessibilityObject::supportsPressAction):
492         * accessibility/AccessibilityObject.h:
493         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
494         (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
495
496 2014-12-18  Chris Fleizach  <cfleizach@apple.com>
497
498         AX: event.target should sometimes be a descendant element on AXPress-triggered mouse clicks
499         https://bugs.webkit.org/show_bug.cgi?id=135689
500
501         Reviewed by Mario Sanchez Prada.
502
503         When trying to find the right sub-node to target, we need to go back up the parent chain to find 
504         an Element, in case we land on a Text node for example.
505
506         Test: accessibility/press-target-uses-text-descendant-node.html
507
508         * accessibility/AccessibilityObject.cpp:
509         (WebCore::AccessibilityObject::press):
510
511 2014-12-16  Sam Weinig  <sam@webkit.org>
512
513         Unify the Mac and iOS implementations of FontPlatformData a bit
514         https://bugs.webkit.org/show_bug.cgi?id=139721
515
516         Reviewed by Anders Carlsson.
517
518         This is a first pass of unifying the Mac and iOS implementations of FontPlatformData.
519         Notable changes:
520         - Change the storage of the platform font to be CTFontRef across the board. Adds NSFont
521           setter/getter/constructor as a temporary measures during the transition away from NSFont.
522         - Removes duplicate code that only differed by whether the type was NSFont or CTFontRef.
523         - Reduces the number of #ifdefs.
524
525         * platform/graphics/FontPlatformData.cpp:
526         (WebCore::FontPlatformData::FontPlatformData):
527         (WebCore::FontPlatformData::operator=):
528         (WebCore::FontPlatformData::openTypeTable): Deleted.
529         * platform/graphics/FontPlatformData.h:
530         (WebCore::FontPlatformData::nsFont):
531         (WebCore::FontPlatformData::setNSFont):
532         (WebCore::FontPlatformData::hash):
533         (WebCore::FontPlatformData::operator==):
534         (WebCore::FontPlatformData::isHashTableDeletedValue):
535         (WebCore::toCTFontRef): Deleted.
536         (WebCore::FontPlatformData::font): Deleted.
537         (WebCore::FontPlatformData::roundsGlyphAdvances): Deleted.
538         (WebCore::FontPlatformData::cgFont): Deleted.
539         (WebCore::FontPlatformData::hashTableDeletedFontValue): Deleted.
540         * platform/graphics/SimpleFontData.h:
541         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
542         (WebCore::FontPlatformData::FontPlatformData):
543         (WebCore::FontPlatformData::~FontPlatformData):
544         (WebCore::FontPlatformData::platformDataInit):
545         (WebCore::FontPlatformData::platformDataAssign):
546         (WebCore::FontPlatformData::setFont):
547         (WebCore::FontPlatformData::roundsGlyphAdvances):
548         (WebCore::FontPlatformData::allowsLigatures):
549         (WebCore::FontPlatformData::ctFont):
550         (WebCore::FontPlatformData::openTypeTable):
551         (WebCore::FontPlatformData::loadFont): Deleted.
552         * platform/graphics/mac/FontCacheMac.mm:
553         (WebCore::FontCache::systemFallbackForCharacters):
554         * platform/graphics/mac/FontMac.mm:
555         (WebCore::Font::drawGlyphs):
556         * platform/graphics/mac/SimpleFontDataMac.mm:
557         (WebCore::SimpleFontData::getCompositeFontReferenceFontData):
558         (WebCore::SimpleFontData::platformInit):
559         (WebCore::SimpleFontData::platformCreateScaledFontData):
560         (WebCore::SimpleFontData::containsCharacters):
561         (WebCore::SimpleFontData::determinePitch):
562         (WebCore::SimpleFontData::renderingStyle):
563         (WebCore::SimpleFontData::advanceForColorBitmapFont):
564
565 2014-12-18  Anders Carlsson  <andersca@apple.com>
566
567         Build fix.
568
569         * platform/cocoa/MachSendRight.cpp:
570
571 2014-12-18  Timothy Horton  <timothy_horton@apple.com>
572
573         Change page preview loading order, and add a TextIndicator
574         https://bugs.webkit.org/show_bug.cgi?id=139793
575         <rdar://problem/19288547>
576
577         Reviewed by Beth Dakin.
578
579         * WebCore.exp.in:
580         * platform/spi/mac/NSPopoverSPI.h:
581         Add an export and some SPI.
582
583 2014-12-18  Anders Carlsson  <andersca@apple.com>
584
585         Clean up MachSendRight and add a copySendRight member function
586         https://bugs.webkit.org/show_bug.cgi?id=139788
587
588         Reviewed by Tim Horton.
589
590         * platform/cocoa/MachSendRight.cpp:
591         (WebCore::retainSendRight):
592         (WebCore::releaseSendRight):
593         Use mach_error_string.
594
595         (WebCore::MachSendRight::copySendRight):
596         Create a new send right with the given mach port.
597
598         (WebCore::MachSendRight::leakSendRight):
599         Use std::exchange.
600
601         * platform/cocoa/MachSendRight.h:
602
603 2014-12-18  Joseph Pecoraro  <pecoraro@apple.com>
604
605         Web Inspector: ASSERT seen closing/opening multiple inspectors
606         https://bugs.webkit.org/show_bug.cgi?id=139783
607
608         Reviewed by Timothy Hatcher.
609
610         * inspector/InspectorDOMAgent.cpp:
611         (WebCore::InspectorDOMAgent::nodeForObjectId):
612
613 2014-12-18  Anders Carlsson  <andersca@apple.com>
614
615         Add a MachSendRight class to WebCore and use it in IOSurface
616         https://bugs.webkit.org/show_bug.cgi?id=139787
617
618         Reviewed by Tim Horton.
619
620         * WebCore.exp.in:
621         * WebCore.xcodeproj/project.pbxproj:
622         * platform/cocoa/MachSendRight.cpp: Added.
623         (WebCore::retainSendRight):
624         (WebCore::releaseSendRight):
625         (WebCore::MachSendRight::adopt):
626         (WebCore::MachSendRight::create):
627         (WebCore::MachSendRight::MachSendRight):
628         (WebCore::MachSendRight::~MachSendRight):
629         (WebCore::MachSendRight::operator=):
630         (WebCore::MachSendRight::leakSendRight):
631         * platform/cocoa/MachSendRight.h: Added.
632         * platform/graphics/cocoa/IOSurface.h:
633         * platform/graphics/cocoa/IOSurface.mm:
634         (IOSurface::createSendRight):
635         (IOSurface::createMachPort): Deleted.
636
637 2014-12-18  Andreas Kling  <akling@apple.com>
638
639         Ref-ify DOMSettableTokenList.
640         <https://webkit.org/b/139785>
641
642         Reviewed by Chris Dumez.
643
644         Make DOMSettableTokenList::create() return a Ref, and have its two client
645         elements store it in a Ref instead of a RefPtr (and fix their getter API
646         to return references.)
647
648         * html/DOMSettableTokenList.cpp:
649         (WebCore::DOMSettableTokenList::create): Deleted.
650         * html/DOMSettableTokenList.h:
651         * html/HTMLLinkElement.cpp:
652         (WebCore::HTMLLinkElement::sizes): Deleted.
653         * html/HTMLLinkElement.h:
654         * html/HTMLOutputElement.cpp:
655         (WebCore::HTMLOutputElement::htmlFor): Deleted.
656         * html/HTMLOutputElement.h:
657
658 2014-12-18  Andreas Kling  <akling@apple.com>
659
660         Ref-ify ClientRectList.
661         <https://webkit.org/b/139780>
662
663         Reviewed by Anders Carlsson.
664
665         Make the ClientRectList::create() helpers return Ref, along with a bunch
666         of other functions that always return non-null ClientRectLists.
667
668         Also make ClientRectList store a Vector<Ref<ClientRect>> internally since
669         entries in the Vector are never null.
670
671         * dom/ClientRectList.cpp:
672         (WebCore::ClientRectList::item):
673         * dom/ClientRectList.h:
674         (WebCore::ClientRectList::create):
675         * dom/Element.cpp:
676         (WebCore::Element::getClientRects):
677         * dom/Element.h:
678         * dom/Range.cpp:
679         (WebCore::Range::getClientRects):
680         * dom/Range.h:
681         * page/Page.cpp:
682         (WebCore::Page::nonFastScrollableRects):
683         * page/Page.h:
684         * testing/Internals.cpp:
685         (WebCore::Internals::inspectorHighlightRects):
686         (WebCore::Internals::nonFastScrollableRects):
687         * testing/Internals.h:
688
689 2014-12-18  Andreas Kling  <akling@apple.com>
690
691         Ref-ify ClientRect.
692         <https://webkit.org/b/139777>
693
694         Reviewed by Anders Carlsson.
695
696         Make the ClientRect::create() helpers return Ref, along with a bunch
697         of other functions that always return non-null ClientRects.
698
699         * dom/ClientRect.h:
700         (WebCore::ClientRect::create):
701         * dom/Element.cpp:
702         (WebCore::Element::getBoundingClientRect):
703         * dom/Element.h:
704         * dom/Range.cpp:
705         (WebCore::Range::getBoundingClientRect):
706         * dom/Range.h:
707         * html/track/VTTRegion.cpp:
708         (WebCore::VTTRegion::displayLastTextTrackCueBox):
709         * testing/Internals.cpp:
710         (WebCore::Internals::absoluteCaretBounds):
711         (WebCore::Internals::boundingBox):
712         (WebCore::Internals::selectionBounds):
713         * testing/Internals.h:
714
715 2014-12-18  Chris Dumez  <cdumez@apple.com>
716
717         [iOS] Log navigation types using FeatureCounter API
718         https://bugs.webkit.org/show_bug.cgi?id=139753
719
720         Reviewed by Darin Adler.
721
722         Log navigation types using FeatureCounter API.
723
724         No new tests, no behavior change other than additional feature
725         counting.
726
727         * loader/FrameLoader.cpp:
728         (WebCore::logNavigationWithFeatureCounter):
729         (WebCore::FrameLoader::loadWithDocumentLoader):
730         * platform/FeatureCounterKeys.h:
731
732 2014-12-18  Chris Dumez  <cdumez@apple.com>
733
734         Move 'font-weight' CSS property to the new StyleBuilder
735         https://bugs.webkit.org/show_bug.cgi?id=139765
736
737         Reviewed by Antti Koivisto.
738
739         Move 'font-weight' CSS property to the new StyleBuilder by using
740         custom code.
741
742         No new tests, no behavior change.
743
744         * css/CSSPropertyNames.in:
745         * css/DeprecatedStyleBuilder.cpp:
746         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
747         (WebCore::ApplyPropertyFontWeight::applyValue): Deleted.
748         (WebCore::ApplyPropertyFontWeight::createHandler): Deleted.
749         * css/StyleBuilderCustom.h:
750         (WebCore::StyleBuilderCustom::applyInitialFontWeight):
751         (WebCore::StyleBuilderCustom::applyInheritFontWeight):
752         (WebCore::StyleBuilderCustom::applyValueFontWeight):
753
754 2014-12-18  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
755
756         Internals methods return 0 instead of false when they fail
757         https://bugs.webkit.org/show_bug.cgi?id=139766
758
759         Reviewed by Darin Adler.
760
761         Some Internals method explicitly return 0 although
762         they expect boolean value.
763
764         No new tests, no behavior change.
765
766         * testing/Internals.cpp:
767         (WebCore::Internals::hasSpellingMarker):
768         (WebCore::Internals::hasAutocorrectedMarker):
769         (WebCore::Internals::isOverwriteModeEnabled):
770         (WebCore::Internals::hasGrammarMarker):
771         Return false instead of 0.
772
773 2014-12-18  Chris Dumez  <cdumez@apple.com>
774
775         [iOS] Log why cached resources are being revalidated using FeatureCounter API
776         https://bugs.webkit.org/show_bug.cgi?id=139759
777         <rdar://problem/19288177>
778
779         Reviewed by Antti Koivisto.
780
781         Log why cached resources are being revalidated using FeatureCounter API.
782         Also log if revalidation is successful or not.
783
784         No new tests, no behavior change.
785
786         * loader/SubresourceLoader.cpp:
787         (WebCore::SubresourceLoader::willSendRequest):
788         (WebCore::SubresourceLoader::didReceiveResponse):
789         * loader/cache/CachedImage.cpp:
790         (WebCore::CachedImage::mustRevalidateDueToCacheHeaders):
791         * loader/cache/CachedImage.h:
792         * loader/cache/CachedResource.cpp:
793         (WebCore::CachedResource::failBeforeStarting):
794         (WebCore::CachedResource::mustRevalidateDueToCacheHeaders):
795         * loader/cache/CachedResource.h:
796         (WebCore::CachedResource::loader):
797         * loader/cache/CachedResourceLoader.cpp:
798         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
799         * platform/FeatureCounterKeys.h:
800
801 2014-12-18  Antti Koivisto  <antti@apple.com>
802
803         Remove alwaysUseBaselineOfPrimaryFont setting
804         https://bugs.webkit.org/show_bug.cgi?id=139770
805
806         Reviewed by Anders Carlsson.
807
808         "FIXME: This is unneeded and should be removed."
809
810         This iOS-only setting has no clients anymore.
811
812         * page/Settings.in:
813         * rendering/RootInlineBox.cpp:
814         (WebCore::RootInlineBox::ascentAndDescentForBox):
815
816 2014-12-18  Radu Stavila  <stavila@adobe.com>
817
818         [SVG Masking] Enable the use of <mask> elements for -webkit-mask-image
819         https://bugs.webkit.org/show_bug.cgi?id=139294
820
821         Reviewed by Simon Fraser.
822
823         This patch links together all parts required for the functionality which improves 
824         the -webkit-mask-image property by allowing it to reference a <mask> element defined 
825         in an inline or external SVG document.
826         Support for this new functionality has been added in a previous patch, under issue
827         https://bugs.webkit.org/show_bug.cgi?id=139092. A more detailed description of how
828         the new functionality works can be found in the ChangeLog for that commit.
829         The containsSVGDocument in ScrollView has been removed because it was added in the
830         previous patch but is no longer required.
831
832         Tests: css3/masking/mask-base64.html
833                css3/masking/mask-multiple-values.html
834                css3/masking/mask-svg-clipped-fragmentId.html
835                css3/masking/mask-svg-fragmentId.html
836                css3/masking/mask-svg-inline-fragmentId.html
837                css3/masking/mask-svg-inline-invalid-fragmentId.html
838                css3/masking/mask-svg-invalid-fragmentId.html
839                css3/masking/mask-svg-no-fragmentId-tiled.html
840                css3/masking/mask-svg-no-fragmentId.html
841                css3/masking/mask-svg-script-entire-svg-to-mask.html
842                css3/masking/mask-svg-script-mask-to-entire-svg.html
843                css3/masking/mask-svg-script-mask-to-none.html
844                css3/masking/mask-svg-script-mask-to-png.html
845                css3/masking/mask-svg-script-none-to-mask.html
846                css3/masking/mask-svg-script-none-to-png.html
847                css3/masking/mask-svg-script-png-to-mask.html
848                css3/masking/mask-svg-script-png-to-none.html
849
850         * css/CSSComputedStyleDeclaration.cpp:
851         (WebCore::ComputedStyleExtractor::propertyValue):
852         * css/CSSParser.cpp:
853         (WebCore::CSSParser::parseFillShorthand):
854         (WebCore::CSSParser::parseFillProperty):
855         (WebCore::CSSParser::parseMaskImage):
856         * css/CSSParser.h:
857         * css/CSSValue.h:
858         * css/DeprecatedStyleBuilder.cpp:
859         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
860         * css/StyleResolver.cpp:
861         (WebCore::StyleResolver::adjustStyleForMaskImages):
862         (WebCore::StyleResolver::applyMatchedProperties):
863         (WebCore::StyleResolver::applyProperty):
864         (WebCore::StyleResolver::loadPendingSVGDocuments):
865         (WebCore::StyleResolver::createMaskImageOperations):
866         (WebCore::StyleResolver::loadPendingImages):
867         * css/StyleResolver.h:
868         * page/FrameView.cpp:
869         (WebCore::FrameView::containsSVGDocument): Deleted.
870         * page/FrameView.h:
871         * page/animation/CSSPropertyAnimation.cpp:
872         (WebCore::blendFunc):
873         (WebCore::MaskImagePropertyWrapper::MaskImagePropertyWrapper):
874         (WebCore::MaskImagePropertyWrapper::equals):
875         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
876         * platform/ScrollView.h:
877         (WebCore::ScrollView::containsSVGDocument): Deleted.
878         * platform/graphics/MaskImageOperation.cpp:
879         (WebCore::MaskImageOperation::~MaskImageOperation):
880         (WebCore::MaskImageOperation::operator==):
881         * platform/graphics/MaskImageOperation.h:
882         * rendering/RenderBox.cpp:
883         (WebCore::RenderBox::maskClipRect):
884         * rendering/RenderBox.h:
885         * rendering/RenderBoxModelObject.cpp:
886         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
887         (WebCore::RenderBoxModelObject::calculateFillTileSize):
888         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
889         * rendering/RenderElement.cpp:
890         (WebCore::RenderElement::~RenderElement):
891         (WebCore::RenderElement::updateFillImages):
892         * rendering/RenderLayer.cpp:
893         (WebCore::RenderLayer::calculateClipRects):
894         * rendering/RenderLayer.h:
895         * rendering/RenderLayerMaskImageInfo.cpp:
896         (WebCore::RenderLayer::MaskImageInfo::~MaskImageInfo):
897         (WebCore::RenderLayer::MaskImageInfo::updateMaskImageClients):
898         (WebCore::RenderLayer::MaskImageInfo::removeMaskImageClients):
899         * rendering/RenderLayerMaskImageInfo.h:
900         * rendering/style/FillLayer.cpp:
901         (WebCore::FillLayer::hasImage):
902         * rendering/style/FillLayer.h:
903         (WebCore::FillLayer::image):
904         (WebCore::FillLayer::imageOrMaskImage): Deleted.
905         * rendering/style/RenderStyle.cpp:
906         (WebCore::RenderStyle::setMaskImage):
907         * rendering/style/RenderStyle.h:
908
909 2014-12-18  Antti Koivisto  <antti@apple.com>
910
911         Stop returning GlyphPage from various Font functions
912         https://bugs.webkit.org/show_bug.cgi?id=139627
913
914         Reviewed by Darin Adler.
915
916         Make all
917
918             std::pair<GlyphData, GlyphPage*> glyphDataAndPage*(...)
919
920         style functions to just return GlyphData only. The GlyphPage value was only used for an obscure SVG fallback case.
921
922         * platform/graphics/Font.h:
923         (WebCore::Font::glyphDataForCharacter):
924         (WebCore::Font::glyphDataAndPageForCharacter): Deleted.
925         * platform/graphics/FontGlyphs.cpp:
926         (WebCore::glyphDataForCJKCharacterWithoutSyntheticItalic):
927         (WebCore::glyphDataForNonCJKCharacterWithGlyphOrientation):
928         (WebCore::FontGlyphs::glyphDataForSystemFallback):
929         (WebCore::FontGlyphs::glyphDataForVariant):
930         (WebCore::FontGlyphs::glyphDataForCharacter):
931         (WebCore::glyphDataAndPageForCJKCharacterWithoutSyntheticItalic): Deleted.
932         (WebCore::glyphDataAndPageForNonCJKCharacterWithGlyphOrientation): Deleted.
933         (WebCore::FontGlyphs::glyphDataAndPageForSystemFallback): Deleted.
934         (WebCore::FontGlyphs::glyphDataAndPageForVariant): Deleted.
935         (WebCore::FontGlyphs::glyphDataAndPageForCharacter): Deleted.
936         * platform/graphics/FontGlyphs.h:
937         (WebCore::FontGlyphs::GlyphPagesStateSaver::GlyphPagesStateSaver): Deleted.
938         (WebCore::FontGlyphs::GlyphPagesStateSaver::~GlyphPagesStateSaver): Deleted.
939
940             No longer needed.
941
942         * rendering/svg/SVGTextRunRenderingContext.cpp:
943         (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):
944
945             Simplify by not trying to resolve fallbacks in case context sensitive (based on lang attribute etc)
946             glyph selection fails. Instead just fall back to a default font. This behavior is not specified
947             anywhere as far as I can see. (normal non-context sensitive fallbacks will still work fine).
948             This removes the need to hackishly mutate glyph pages.
949
950             Also fix a bug where we didn't use the specified missing glyph when context sensitive selection failed.
951
952 2014-12-18  Chris Dumez  <cdumez@apple.com>
953
954         Move 'list-style-image' CSS property to the new StyleBuilder
955         https://bugs.webkit.org/show_bug.cgi?id=139763
956
957         Reviewed by Antti Koivisto.
958
959         Move 'list-style-image' CSS property to the new StyleBuilder
960         by reusing an existing Converter helper and renaming it for
961         clarity.
962
963         No new tests, no behavior change.
964
965         * css/CSSPropertyNames.in:
966         * css/DeprecatedStyleBuilder.cpp:
967         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
968         (WebCore::ApplyPropertyStyleImage::applyValue): Deleted.
969         (WebCore::ApplyPropertyStyleImage::createHandler): Deleted.
970         * css/StyleBuilderConverter.h:
971         (WebCore::StyleBuilderConverter::convertStyleImage):
972         (WebCore::StyleBuilderConverter::convertBorderImageSource): Deleted.
973
974 2014-12-17  Csaba Osztrogonác  <ossy@webkit.org>
975
976         URTBF after r177452.
977         https://bugs.webkit.org/show_bug.cgi?id=139752
978
979         * CMakeLists.txt:
980
981 2014-12-17  Andreas Kling  <akling@apple.com>
982
983         Ref-ify Range::create().
984         <https://webkit.org/b/139755>
985
986         Reviewed by Anders Carlsson.
987
988         * dom/Document.cpp:
989         (WebCore::acceptsEditingFocus):
990         * dom/Element.cpp:
991         (WebCore::Element::innerText):
992         * dom/Range.cpp:
993         (WebCore::Range::create):
994         (WebCore::Range::cloneRange):
995         (WebCore::rangeOfContents):
996         * dom/Range.h:
997         * editing/AlternativeTextController.cpp:
998         (WebCore::AlternativeTextController::applyAlternativeTextToRange):
999         * editing/CompositeEditCommand.cpp:
1000         (WebCore::CompositeEditCommand::replaceTextInNodePreservingMarkers):
1001         * editing/VisibleUnits.cpp:
1002         (WebCore::charactersAroundPosition):
1003         * editing/markup.cpp:
1004         (WebCore::StyledMarkupAccumulator::renderedText):
1005         * page/FocusController.cpp:
1006         (WebCore::relinquishesEditingFocus):
1007
1008 2014-12-17  Dan Bernstein  <mitz@apple.com>
1009
1010         <rdar://problem/19282508> WebKitLegacy is unusable due to bad dylib identifier
1011         https://bugs.webkit.org/show_bug.cgi?id=139760
1012
1013         Reviewed by Anders Carlsson.
1014
1015         * Configurations/WebCore.xcconfig:
1016
1017 2014-12-17  Anders Carlsson  <andersca@apple.com>
1018
1019         Get rid of FrameLoader::defaultObjectContentType
1020         https://bugs.webkit.org/show_bug.cgi?id=139758
1021
1022         Reviewed by Geoffrey Garen.
1023
1024         Move the FrameLoader::defaultObjectContentType implementation to its only caller in WebKit/win.
1025
1026         * loader/FrameLoader.cpp:
1027         (WebCore::FrameLoader::defaultObjectContentType): Deleted.
1028         * loader/FrameLoader.h:
1029
1030 2014-12-17  peavo@outlook.com  <peavo@outlook.com>
1031
1032         [Curl] Compile error, setWasCached method has been removed.
1033         https://bugs.webkit.org/show_bug.cgi?id=139737
1034
1035         Reviewed by Alex Christensen.
1036
1037         The ResourceResponseBase::setWasCached() method has been replaced
1038         with ResourceResponseBase::setSource().
1039
1040         * platform/network/curl/CurlCacheEntry.cpp:
1041         (WebCore::CurlCacheEntry::setResponseFromCachedHeaders):
1042
1043 2014-12-17  Chris Dumez  <cdumez@apple.com>
1044
1045         [iOS] Make it possible to toggle FeatureCounter support at runtime
1046         https://bugs.webkit.org/show_bug.cgi?id=139688
1047         <rdar://problem/19266254>
1048
1049         Reviewed by Andreas Kling.
1050
1051         Make it possible to toggle FeatureCounter support at runtime by adding
1052         a setting (disabled by default) and moving the API to a new
1053         FeatureCounter class under WebCore/plattorm which only logs if the
1054         setting is enabled. For privacy reasons, FeatureCounter logging is also
1055         disabled for private / ephemeral sessions.
1056
1057         No new tests, no behavior change.
1058
1059         * CMakeLists.txt:
1060         * Configurations/WebCore.xcconfig:
1061         * WebCore.vcxproj/WebCore.vcxproj:
1062         * WebCore.vcxproj/WebCore.vcxproj.filters:
1063         * WebCore.xcodeproj/project.pbxproj:
1064         * history/PageCache.cpp:
1065         (WebCore::logCanCacheFrameDecision):
1066         (WebCore::logCanCachePageDecision):
1067         * page/Settings.in:
1068         * platform/FeatureCounter.cpp: Renamed from Source/WTF/wtf/FeatureCounter.cpp.
1069         (WebCore::FeatureCounter::shouldUseForPage):
1070         (WebCore::FeatureCounter::incrementKey):
1071         (WebCore::FeatureCounter::setKey):
1072         * platform/FeatureCounter.h: Renamed from Source/WTF/wtf/FeatureCounter.h.
1073         * platform/FeatureCounterKeys.h:
1074         * platform/ios/FeatureCounter.mm: Renamed from Source/WTF/wtf/ios/FeatureCounter.mm.
1075         (WebCore::FeatureCounter::incrementKey):
1076         (WebCore::FeatureCounter::setKey):
1077
1078 2014-12-17  Anders Carlsson  <andersca@apple.com>
1079
1080         Get rid of PluginPackageNone.cpp
1081         https://bugs.webkit.org/show_bug.cgi?id=139735
1082
1083         Reviewed by Andreas Kling.
1084
1085         * CMakeLists.txt:
1086         * PlatformEfl.cmake:
1087         * PlatformGTK.cmake:
1088         * PlatformWin.cmake:
1089         * plugins/PluginPackageNone.cpp: Removed.
1090
1091 2014-12-17  Andreas Kling  <akling@apple.com>
1092
1093         Purge PassRefPtr from Frame.
1094         <https://webkit.org/b/139731>
1095
1096         Reviewed by Anders Carlsson.
1097
1098         Remove all use of PassRefPtr from the Frame class, instead using
1099         Ref or RefPtr as appropriate.
1100
1101         * WebCore.exp.in:
1102         * loader/DocumentWriter.cpp:
1103         (WebCore::DocumentWriter::begin):
1104         * page/Frame.cpp:
1105         (WebCore::Frame::create):
1106         (WebCore::Frame::setView):
1107         (WebCore::Frame::setDocument):
1108         (WebCore::Frame::rangeForPoint):
1109         (WebCore::Frame::createView):
1110         * page/Frame.h:
1111         * xml/XSLTProcessor.cpp:
1112         (WebCore::XSLTProcessor::createDocumentFromSource):
1113
1114 2014-12-17  Myles C. Maxfield  <mmaxfield@apple.com>
1115
1116         Test fix after r177444.
1117
1118         Unreviewed.
1119
1120         * accessibility/AccessibilitySlider.cpp:
1121         (WebCore::AccessibilitySliderThumb::elementRect):
1122
1123 2014-12-16  Myles C. Maxfield  <mmaxfield@apple.com>
1124
1125         Addressing more post-review comments in r177035
1126
1127         * accessibility/AccessibilitySlider.cpp:
1128         (WebCore::AccessibilitySliderThumb::elementRect):
1129         * html/HTMLInputElement.cpp:
1130         (WebCore::HTMLInputElement::setupDateTimeChooserParameters):
1131
1132 2014-12-17  Zan Dobersek  <zdobersek@igalia.com>
1133
1134         [TexMap] Sprinkle range-based for-loops where still possible
1135         https://bugs.webkit.org/show_bug.cgi?id=138752
1136
1137         Reviewed by Chris Dumez.
1138
1139         Apply range-based for-loops where possible in the TextureMapper,
1140         TextureMapperGL and TextureMapperTiledBackingStore classes.
1141
1142         Also prettify the loop in SharedGLData destructor and return
1143         nullptr instead of explicitly constructing the empty PassRefPtr
1144         object in TextureMapperTiledBackingStore::texture().
1145
1146         * platform/graphics/texmap/TextureMapper.cpp:
1147         (WebCore::BitmapTexturePool::acquireTexture):
1148         * platform/graphics/texmap/TextureMapperGL.cpp:
1149         (WebCore::TextureMapperGLData::SharedGLData::~SharedGLData):
1150         (WebCore::TextureMapperGLData::~TextureMapperGLData):
1151         * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
1152         (WebCore::TextureMapperTiledBackingStore::paintToTextureMapper):
1153         (WebCore::TextureMapperTiledBackingStore::drawBorder):
1154         (WebCore::TextureMapperTiledBackingStore::drawRepaintCounter):
1155         (WebCore::TextureMapperTiledBackingStore::createOrDestroyTilesIfNeeded):
1156         (WebCore::TextureMapperTiledBackingStore::updateContents):
1157         (WebCore::TextureMapperTiledBackingStore::texture):
1158
1159 2014-12-17  Radu Stavila  <stavila@adobe.com>
1160
1161         The SVGDocument of an SVGImage should not perform any additional actions when the SVGImage is being destroyed
1162         https://bugs.webkit.org/show_bug.cgi?id=139644
1163
1164         Reviewed by Antti Koivisto.
1165
1166         When an SVGImage is destroyed, having its SVGDocument perform style recalc and dispatching events is not only
1167         useless but can also cause problems, such as re-entrancy in StyleResolver::loadPendingResources.
1168
1169         No new tests required, existing tests cover this change.
1170
1171         * dom/Document.cpp:
1172         (WebCore::Document::Document):
1173         * dom/Document.h:
1174         (WebCore::Document::isBeingDestroyed):
1175         (WebCore::Document::setIsBeingDestroyed):
1176         * loader/FrameLoader.cpp:
1177         (WebCore::FrameLoader::closeURL):
1178         * svg/graphics/SVGImage.cpp:
1179         (WebCore::SVGImage::~SVGImage):
1180
1181 2014-12-17  Chris Dumez  <cdumez@apple.com>
1182
1183         Drop useless 'clipToContents' argument for windowClipRect()
1184         https://bugs.webkit.org/show_bug.cgi?id=139722
1185
1186         Reviewed by Darin Adler.
1187
1188         Drop useless 'clipToContents' argument for windowClipRect(). This
1189         argument is never used.
1190
1191         No new tests, no behavior change.
1192
1193         * page/FrameView.cpp:
1194         (WebCore::FrameView::windowClipRect):
1195         * page/FrameView.h:
1196         * platform/ScrollView.h:
1197
1198 2014-12-16  Shivakumar JM  <shiva.jm@samsung.com>
1199
1200         text node should not be created, On setting document.title to the empty string.
1201         https://bugs.webkit.org/show_bug.cgi?id=139121
1202
1203         Reviewed by Darin Adler.
1204
1205         Do not create text node, On setting document.title to the empty string as in spec.
1206         I have confirmed this matches the behavior of Firefox and Chrome.
1207
1208         Test: fast/dom/Document/document-set-title-no-child.html
1209
1210         * html/HTMLTitleElement.cpp:
1211         (WebCore::HTMLTitleElement::setText):
1212
1213 2014-12-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1214
1215         Move WebCore/platform/graphics/surfaces to std::unique_ptr
1216         https://bugs.webkit.org/show_bug.cgi?id=139641
1217
1218         Reviewed by Andreas Kling.
1219
1220         Replace OwnPtr|PassOwnPtr with std::make_unique<>|std::unique_ptr<>.
1221
1222         * platform/graphics/GLContext.cpp:
1223         (WebCore::GLContext::sharingContext):
1224         (WebCore::GLContext::createContextForWindow):
1225         (WebCore::GLContext::createOffscreenContext):
1226         * platform/graphics/GLContext.h:
1227         * platform/graphics/GraphicsContext3DPrivate.cpp:
1228         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
1229         * platform/graphics/GraphicsContext3DPrivate.h:
1230         * platform/graphics/egl/GLContextEGL.cpp:
1231         (WebCore::GLContextEGL::createWindowContext):
1232         (WebCore::GLContextEGL::createPbufferContext):
1233         (WebCore::GLContextEGL::createPixmapContext):
1234         (WebCore::GLContextEGL::createContext):
1235         * platform/graphics/egl/GLContextEGL.h:
1236         * platform/graphics/glx/GLContextGLX.cpp:
1237         (WebCore::GLContextGLX::createWindowContext):
1238         (WebCore::GLContextGLX::createPbufferContext):
1239         (WebCore::GLContextGLX::createPixmapContext):
1240         (WebCore::GLContextGLX::createContext):
1241         * platform/graphics/glx/GLContextGLX.h:
1242         * platform/graphics/surfaces/GLTransportSurface.cpp:
1243         (WebCore::GLTransportSurface::createTransportSurface):
1244         (WebCore::GLTransportSurfaceClient::createTransportSurfaceClient):
1245         * platform/graphics/surfaces/GLTransportSurface.h:
1246         * platform/graphics/surfaces/GraphicsSurface.h:
1247         * platform/graphics/surfaces/GraphicsSurfaceToken.h:
1248         * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
1249         * platform/graphics/surfaces/egl/EGLSurface.cpp:
1250         (WebCore::EGLTransportSurface::createTransportSurface):
1251         (WebCore::EGLTransportSurface::createTransportSurfaceClient):
1252         (WebCore::EGLTransportSurface::EGLTransportSurface):
1253         * platform/graphics/surfaces/egl/EGLSurface.h:
1254         * platform/graphics/surfaces/egl/EGLXSurface.cpp:
1255         (WebCore::EGLXTransportSurfaceClient::EGLXTransportSurfaceClient):
1256         * platform/graphics/surfaces/egl/EGLXSurface.h:
1257         * platform/graphics/surfaces/glx/GLXSurface.cpp:
1258         (WebCore::GLXTransportSurface::GLXTransportSurface):
1259         (WebCore::GLXOffScreenSurface::initialize):
1260         * platform/graphics/surfaces/glx/GLXSurface.h:
1261
1262 2014-12-16  Timothy Horton  <timothy_horton@apple.com>
1263
1264         Implement and adopt two new TextIndicator presentation animations
1265         https://bugs.webkit.org/show_bug.cgi?id=139715
1266         <rdar://problem/19237945>
1267
1268         Reviewed by Anders Carlsson.
1269
1270         * WebCore.exp.in:
1271         Adjust one symbol and export another.
1272
1273         * page/TextIndicator.cpp:
1274         (WebCore::TextIndicator::createWithSelectionInFrame):
1275         Take a blue-highlight snapshot if we're doing a crossfade without a bounce.
1276
1277         * page/TextIndicator.h:
1278         (WebCore::TextIndicator::presentationTransition):
1279         Add FadeIn and Crossfade transition types.
1280
1281         * page/mac/TextIndicatorWindow.h:
1282         * page/mac/TextIndicatorWindow.mm:
1283         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
1284         (createBounceAnimation):
1285         (createContentCrossfadeAnimation):
1286         (createShadowFadeAnimation):
1287         (createFadeInAnimation):
1288         (-[WebTextIndicatorView _textIndicatorWantsBounce]):
1289         (-[WebTextIndicatorView _textIndicatorWantsContentCrossfade]):
1290         (-[WebTextIndicatorView _textIndicatorWantsFadeIn]):
1291         Factor out the animation construction.
1292
1293         (-[WebTextIndicatorView _animationDuration]):
1294         Factor out the duration computation.
1295
1296         (-[WebTextIndicatorView present]):
1297         (-[WebTextIndicatorView setAnimationProgress:]):
1298         Implement FadeIn and Crossfade transitions.
1299         They can be driven externally and then continue from where they
1300         left off when the progress reaches 100%.
1301         FadeIn changes the opacity of the whole bubble, Crossfade
1302         crossfades the content (from blue to yellow).
1303
1304         (WebCore::TextIndicatorWindow::TextIndicatorWindow):
1305         (WebCore::TextIndicatorWindow::~TextIndicatorWindow):
1306         Don't immediately destroy the window if it is crossfades or fades in.
1307         Fade it out, instead.
1308
1309         (WebCore::TextIndicatorWindow::setAnimationProgress):
1310         Drive the paused animation manually. If progress hits 100%,
1311         start running it automatically from where it last left off.
1312
1313         (WebCore::TextIndicatorWindow::setTextIndicator):
1314         (WebCore::TextIndicatorWindow::startFadeOut):
1315         (-[WebTextIndicatorView presentWithCompletionHandler:]): Deleted.
1316         (WebCore::TextIndicatorWindow::startFadeOutTimerFired): Deleted.
1317         Remove the completion block from -present.
1318
1319         * platform/spi/mac/NSImmediateActionGestureRecognizerSPI.h:
1320         Add some SPI.
1321
1322 2014-12-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1323
1324         Move WebCore/platform/image-decoders to std::unique_ptr<>
1325         https://bugs.webkit.org/show_bug.cgi?id=139668
1326
1327         Reviewed by Andreas Kling.
1328
1329         As a step to use std::unique_ptr<>, this patch replaces OwnPtr|PassOwnPtr with
1330         std::unique_ptr<> | std::make_unique<>.
1331
1332         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1333         (WebCore::BMPImageDecoder::setFailed):
1334         (WebCore::BMPImageDecoder::decode):
1335         (WebCore::BMPImageDecoder::decodeHelper):
1336         * platform/image-decoders/bmp/BMPImageDecoder.h:
1337         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1338         (WebCore::GIFImageDecoder::setFailed):
1339         (WebCore::GIFImageDecoder::gifComplete):
1340         (WebCore::GIFImageDecoder::decode):
1341         * platform/image-decoders/gif/GIFImageDecoder.h:
1342         * platform/image-decoders/gif/GIFImageReader.cpp:
1343         (GIFFrameContext::decode):
1344         (GIFImageReader::addFrameIfNecessary):
1345         * platform/image-decoders/gif/GIFImageReader.h:
1346         * platform/image-decoders/ico/ICOImageDecoder.cpp:
1347         (WebCore::ICOImageDecoder::decode):
1348         (WebCore::ICOImageDecoder::decodeAtIndex):
1349         * platform/image-decoders/ico/ICOImageDecoder.h:
1350         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1351         (WebCore::JPEGImageDecoder::setFailed):
1352         (WebCore::JPEGImageDecoder::decode):
1353         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1354         * platform/image-decoders/png/PNGImageDecoder.cpp:
1355         (WebCore::PNGImageDecoder::setFailed):
1356         (WebCore::PNGImageDecoder::decode):
1357         * platform/image-decoders/png/PNGImageDecoder.h:
1358
1359 2014-12-16  Andreas Kling  <akling@apple.com>
1360
1361         Use Ref for SecurityOrigin.
1362         <https://webkit.org/b/139710>
1363
1364         Reviewed by Anders Carlsson.
1365
1366         Make SecurityOrigin::create*() return Ref<SecurityOrigin>.
1367
1368         * html/HTMLAnchorElement.cpp:
1369         (WebCore::HTMLAnchorElement::origin):
1370         * loader/DocumentLoadTiming.cpp:
1371         (WebCore::DocumentLoadTiming::addRedirect):
1372         * loader/DocumentLoader.cpp:
1373         (WebCore::DocumentLoader::willSendRequest):
1374         * loader/FrameLoader.cpp:
1375         (WebCore::FrameLoader::commitProvisionalLoad):
1376         * loader/PingLoader.cpp:
1377         (WebCore::PingLoader::sendPing):
1378         * loader/appcache/ApplicationCacheHost.cpp:
1379         (WebCore::ApplicationCacheHost::isApplicationCacheBlockedForRequest):
1380         * loader/appcache/ApplicationCacheStorage.cpp:
1381         (WebCore::ApplicationCacheStorage::getOriginsWithCache):
1382         * page/ContentSecurityPolicy.cpp:
1383         (WebCore::stripURLForUseInReport):
1384         * page/DOMWindow.cpp:
1385         (WebCore::DOMWindow::crossDomainAccessErrorMessage):
1386         * page/SecurityOrigin.cpp:
1387         (WebCore::getCachedOrigin):
1388         (WebCore::SecurityOrigin::create):
1389         (WebCore::SecurityOrigin::createUnique):
1390         (WebCore::SecurityOrigin::isolatedCopy):
1391         (WebCore::SecurityOrigin::canRequest):
1392         (WebCore::SecurityOrigin::createFromString):
1393         (WebCore::SecurityOrigin::maybeCreateFromDatabaseIdentifier):
1394         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
1395         * page/SecurityOrigin.h:
1396         * page/SecurityPolicy.cpp:
1397         (WebCore::SecurityPolicy::isAccessToURLWhiteListed):
1398         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1399         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasSingleSecurityOrigin):
1400         * storage/StorageTracker.cpp:
1401         (WebCore::StorageTracker::deleteOriginWithIdentifier):
1402         * workers/DefaultSharedWorkerRepository.cpp:
1403         (WebCore::DefaultSharedWorkerRepository::connectToWorker):
1404         * workers/WorkerThread.cpp:
1405         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
1406
1407 2014-12-16  Chris Dumez  <cdumez@apple.com>
1408
1409         Move 'cursor' CSS property to the new StyleBuilder
1410         https://bugs.webkit.org/show_bug.cgi?id=139660
1411
1412         Reviewed by Benjamin Poulain.
1413
1414         Move 'cursor' CSS property to the new StyleBuilder by using
1415         custom code.
1416
1417         No new tests, no behavior change.
1418
1419         * css/CSSPropertyNames.in:
1420         * css/DeprecatedStyleBuilder.cpp:
1421         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1422         (WebCore::ApplyPropertyCursor::applyInheritValue): Deleted.
1423         (WebCore::ApplyPropertyCursor::applyInitialValue): Deleted.
1424         (WebCore::ApplyPropertyCursor::applyValue): Deleted.
1425         (WebCore::ApplyPropertyCursor::createHandler): Deleted.
1426         * css/StyleBuilderCustom.h:
1427         (WebCore::StyleBuilderCustom::applyInitialCursor):
1428         (WebCore::StyleBuilderCustom::applyInheritCursor):
1429         (WebCore::StyleBuilderCustom::applyValueCursor):
1430
1431 2014-12-16  Zalan Bujtas  <zalan@apple.com>
1432
1433         Subpixel rendering: Animating HTML elements leaves trails when embedded to a subpxiel positioned iframe.
1434         https://bugs.webkit.org/show_bug.cgi?id=139691
1435         rdar://problem/19078958
1436
1437         Reviewed by Simon Fraser.
1438
1439         This patch ensures that repaint rect and actual paint coordinate calculations are in sync.
1440
1441         RenderWidget painting still snaps final coordinates to integral positions. We need to
1442         mimic the same snapping behaviour when the repaint rects are being calculated so that
1443         they are in sync with the final repaint rects. This is a workaround until after
1444         widgets get pushed to device pixel positions.
1445
1446         Test: fast/repaint/hidpi-content-inside-iframe-leaves-trails.html
1447
1448         * rendering/RenderBox.cpp:
1449         (WebCore::RenderBox::computeRectForRepaint):
1450         * rendering/RenderView.cpp:
1451         (WebCore::RenderView::repaintViewRectangle):
1452         * rendering/RenderWidget.cpp:
1453         (WebCore::RenderWidget::paintContents):
1454
1455 2014-12-16  Beth Dakin  <bdakin@apple.com>
1456
1457         REGRESSION: Preview popovers obscure the link, look wrong
1458         https://bugs.webkit.org/show_bug.cgi?id=139711
1459         -and corresponding-
1460         rdar://problem/19271854
1461
1462         Reviewed by Tim Horton.
1463
1464         New SPI.
1465         * WebCore.xcodeproj/project.pbxproj:
1466         * platform/spi/mac/NSPopoverSPI.h: Added.
1467
1468 2014-12-16  Myles C. Maxfield  <mmaxfield@apple.com>
1469
1470         [iOS] Cherokee language is drawn as boxes
1471         https://bugs.webkit.org/show_bug.cgi?id=139706
1472
1473         Reviewed by Simon Fraser.
1474
1475         Test: platform/ios-simulator/fast/text/cherokee.html
1476
1477         * platform/graphics/ios/FontCacheIOS.mm:
1478         (WebCore::languageSpecificFallbackFont):
1479
1480 2014-12-16  Enrica Casucci  <enrica@apple.com>
1481
1482         Fix iOS builders for 8.0
1483         https://bugs.webkit.org/show_bug.cgi?id=139495
1484
1485         Reviewed by Jer Noble
1486
1487         * WebCore.exp.in:
1488         * platform/ios/WebVideoFullscreenControllerAVKit.mm:
1489         (-[WebVideoFullscreenController enterFullscreen:mode:]):
1490         (-[WebVideoFullscreenController requestHideAndExitFullscreen]):
1491         (-[WebVideoFullscreenController enterFullscreen:]): Deleted.
1492         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1493
1494 2014-12-16  Myles C. Maxfield  <mmaxfield@apple.com>
1495
1496         Ruby overhang uses ints instead of floats
1497         https://bugs.webkit.org/show_bug.cgi?id=139624
1498
1499         Reviewed by Dave Hyatt.
1500
1501         Simply change the type.
1502
1503         Updated existing tests.
1504
1505         * rendering/RenderBlockLineLayout.cpp:
1506         (WebCore::RenderBlockFlow::setMarginsForRubyRun):
1507         * rendering/RenderRubyRun.cpp:
1508         (WebCore::RenderRubyRun::getOverhang):
1509         * rendering/RenderRubyRun.h:
1510         * rendering/line/LineWidth.cpp:
1511         (WebCore::LineWidth::applyOverhang):
1512
1513 2014-12-16  Gavin Barraclough  <barraclough@apple.com>
1514
1515         Move Mac process suppression from WebCore to WebKit2
1516         https://bugs.webkit.org/show_bug.cgi?id=139705
1517
1518         Reviewed by Geoff Garen.
1519
1520         Currently PageThrottler constructs the PageActivityState, holds a copy of the ViewState,
1521         and an optional UserActivity.
1522
1523         Instead, still construct the PageActivityState but just pass this out via the Page to WebPage.
1524         Logic From PageThrottler::updateUserActivity merged into WebPage::updateUserActivity.
1525
1526         * WebCore.exp.in:
1527             - removed createUserActivity.
1528         * page/ChromeClient.h:
1529         (WebCore::ChromeClient::setPageActivityState):
1530             - added to propagate PageActivityState to WebPage.
1531         * page/Page.cpp:
1532         (WebCore::Page::Page):
1533             - PageThrottler constructor now takes a Page&.
1534         (WebCore::Page::setViewState):
1535             - no longer necessary to pass this to PageThrottler.
1536         (WebCore::Page::setPageActivityState):
1537             - added to propagate PageActivityState to WebPage.
1538         (WebCore::Page::enablePageThrottler): Deleted.
1539             - PageThrottler no longer has a UserActivity.
1540         * page/Page.h:
1541         (WebCore::Page::pageThrottler):
1542             - added setPageActivityState, removed enablePageThrottler.
1543         * page/PageThrottler.cpp:
1544         (WebCore::PageThrottler::PageThrottler):
1545             - removed m_viewState, added m_page.
1546         (WebCore::PageThrottler::setActivityFlag):
1547             - propagate PageActivityState via Page to WebPage.
1548         (WebCore::PageThrottler::createUserActivity): Deleted.
1549         (WebCore::PageThrottler::updateUserActivity): Deleted.
1550         (WebCore::PageThrottler::setViewState): Deleted.
1551             - removed; PageThrottler no longer has a PageThrottler or UserActivity.
1552         * page/PageThrottler.h:
1553             - removed createUserActivity, setViewState, m_viewState, m_activity; added m_page.
1554
1555 2014-12-16  Jer Noble  <jer.noble@apple.com>
1556
1557         Unreviewed build fix after r177375; explicitly cast to NSUInteger.
1558
1559         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1560         (WebVideoFullscreenInterfaceAVKit::setAudioMediaSelectionOptions):
1561         (WebVideoFullscreenInterfaceAVKit::setLegibleMediaSelectionOptions):
1562
1563 2014-12-16  peavo@outlook.com  <peavo@outlook.com>
1564
1565         [Win] Compiling WebCore fails because of invalid project file.
1566         https://bugs.webkit.org/show_bug.cgi?id=139686
1567
1568         Reviewed by Alex Christensen.
1569
1570         A WebCore project file contains illegal characters.
1571
1572         * WebCore.vcxproj/WebCore.vcxproj.filters:
1573
1574 2014-12-16  Gavin Barraclough  <barraclough@apple.com>
1575
1576         Introduce PageActivityState
1577         https://bugs.webkit.org/show_bug.cgi?id=139687
1578
1579         Reviewed by Anders Carlsson.
1580
1581         Add a bitfield to track each of the activities on the page separately.
1582         Split the hysteresis & counters so we can track these separately.
1583
1584         * page/PageThrottler.cpp:
1585         (WebCore::PageThrottler::PageThrottler):
1586             - initialze new hysteresis, counters; closures call setActivityFlag.
1587         (WebCore::PageThrottler::mediaActivityToken):
1588         (WebCore::PageThrottler::pageLoadActivityToken):
1589             - split m_pageActivityCounter -> m_mediaActivityCounter, m_pageLoadActivityCounter.
1590         (WebCore::PageThrottler::updateUserActivity):
1591             - use m_activityState to check for activity.
1592         (WebCore::PageThrottler::setActivityFlag):
1593             - helper to clear/set a bit in m_activityState, and call updateUserActivity as necessary.
1594         * page/PageThrottler.h:
1595         (WebCore::PageThrottler::didReceiveUserInput):
1596         (WebCore::PageThrottler::pluginDidEvaluateWhileAudioIsPlaying):
1597             - split m_hysteresis -> m_userInputHysteresis, m_audiblePluginHysteresis
1598
1599 2014-12-16  Myles C. Maxfield  <litherum@gmail.com>
1600
1601         Ruby does not preserve expansion opportunities from enclosing context
1602         https://bugs.webkit.org/show_bug.cgi?id=139618
1603
1604         Reviewed by David Hyatt.
1605
1606         There is currently no sharing of expansion opportunity information between
1607         ruby bases and the text surrounding the ruby. This patch adds a bit on
1608         RenderText, m_contentIsKnownToFollow, which affects how expansion
1609         opportunities are handled at paint-time, as well as a bit on RenderRubyBase,
1610         m_isAfterExpansion, which affects how expansions are calculated when laying
1611         out a line. This patch also adds a field to RenderRubyBase which represents
1612         the base's starting position within a ruby. This field is necessary because
1613         an expansion from a line might occur at the very beginning of a ruby base,
1614         so we have to remember some state from expansion time to RenderRubyBase
1615         layout time.
1616
1617         Added more tests to fast/ruby/ruby-justification.html.
1618
1619         * rendering/InlineBox.h:
1620         (WebCore::InlineBox::setExpansionWithoutGrowing):
1621         (WebCore::InlineBox::expansion):
1622         * rendering/InlineFlowBox.cpp:
1623         (WebCore::InlineFlowBox::removeChild): Keep the bit on InlineTextBox up to
1624         date.
1625         (WebCore::InlineFlowBox::placeBoxRangeInInlineDirection): Set expansion
1626         information in InlineFlowBoxes so the total expansion for a whole line
1627         is held in the RootInlineBox's expansion.
1628         * rendering/InlineTextBox.h:
1629         (WebCore::InlineTextBox::expansionBehavior):
1630         * rendering/RenderBlockFlow.h:
1631         * rendering/RenderBlockLineLayout.cpp:
1632         (WebCore::RenderBlockFlow::updateRubyForJustifiedText):
1633         updateRubyForJustifiedText() had a bunch of problems with it. First of all,
1634         it didn't actually set the InlineBoxes as dirty, so the second layout pass
1635         sometimes wouldn't perform any updates. Secondarily, it didn't take
1636         overhangs into account. Thirdly, it didn't mark the ruby base and text as
1637         needing layout so that subsequent layouts would actually traverse into them.
1638         (WebCore::RenderBlockFlow::computeExpansionForJustifiedText):
1639         (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
1640         This nested if triangle is super nasty, but I'm not sure of a better way to
1641         write it.
1642         (WebCore::updateRubyForJustifiedText): Deleted.
1643         (WebCore::computeExpansionForJustifiedText): Deleted.
1644         * rendering/RenderRubyBase.cpp:
1645         (WebCore::RenderRubyBase::RenderRubyBase):
1646         (WebCore::RenderRubyBase::adjustInlineDirectionLineBounds):
1647         * rendering/RenderRubyBase.h:
1648         * rendering/RenderRubyRun.cpp:
1649         (WebCore::RenderRubyRun::layout):
1650         * rendering/RenderText.cpp:
1651         (WebCore::RenderText::RenderText):
1652         * rendering/RenderText.h:
1653         (WebCore::RenderText::contentIsKnownToFollow):
1654         (WebCore::RenderText::setContentIsKnownToFollow):
1655
1656 2014-12-16  Jer Noble  <jer.noble@apple.com>
1657
1658         [iOS] Crash in WebKit::WebPageProxy::dispatchViewStateChange() tapping a link from another app while playing a video
1659         https://bugs.webkit.org/show_bug.cgi?id=139550
1660
1661         Reviewed by Anders Carlsson.
1662
1663         The existing "dispatch to WebThread, then release" model is insufficient and still
1664         can result in RefPtr race conditions between the main thread and the web thread.
1665         Make WebVideoFullscreenInterfaceAVKit a thread-safe ref-counted class, which
1666         eliminates the necessity of disptaching back to the web thread before releasing.
1667
1668         * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
1669         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1670         (WebVideoFullscreenInterfaceAVKit::setDuration): Use a strongThis model.
1671         (WebVideoFullscreenInterfaceAVKit::setCurrentTime): Ditto.
1672         (WebVideoFullscreenInterfaceAVKit::setRate): Ditto.
1673         (WebVideoFullscreenInterfaceAVKit::setVideoDimensions): Ditto.
1674         (WebVideoFullscreenInterfaceAVKit::setSeekableRanges): Ditto.
1675         (mediaSelectionOptions): Return a RetainPtr object.
1676         (WebVideoFullscreenInterfaceAVKit::setAudioMediaSelectionOptions): Use a strongThis model.
1677         (WebVideoFullscreenInterfaceAVKit::setLegibleMediaSelectionOptions): Ditto.
1678         (WebVideoFullscreenInterfaceAVKit::setExternalPlayback): Ditto.
1679         (WebVideoFullscreenInterfaceAVKit::setupFullscreen): Ditto.
1680         (WebVideoFullscreenInterfaceAVKit::enterFullscreen): Ditto.
1681         (WebVideoFullscreenInterfaceAVKit::exitFullscreen): Ditto.
1682         (WebVideoFullscreenInterfaceAVKit::cleanupFullscreen): Ditto.
1683         (WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal): Added utility
1684             function. Lets us use the implied this pointer rather than an explicit
1685             strongThis.
1686         (WebVideoFullscreenInterfaceAVKit::enterFullscreenOptimized): Ditto.
1687         (WebVideoFullscreenInterfaceAVKit::enterFullscreenStandard): Ditto.
1688         (WebVideoFullscreenInterfaceAVKit::exitFullscreenInternal): Ditto.
1689         (WebVideoFullscreenInterfaceAVKit::cleanupFullscreenInternal): Ditto.
1690         (WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): Use a strongThis model.
1691
1692 2014-12-16  Ryosuke Niwa  <rniwa@webkit.org>
1693
1694         Nested template contents are not cloned by document.importNode
1695         https://bugs.webkit.org/show_bug.cgi?id=137619
1696
1697         Reviewed by Andreas Kling.
1698
1699         The bug was caused by Document.importNode not cloning HTMLTemplateElement's content.
1700
1701         Fixed the bug by sharing code between Document::importNode and Node::cloneNode by
1702         generalizing Node::cloneNodeInternal, added in r177314, by taking the owner document
1703         as an argument. The most of code changes are the result of adding this argument.
1704
1705         Document::importNode is the only function in which the actual logic changes.
1706         Note that the code to import TEXT_NODE, CDATA_SECTION_NODE, ENTITY_REFERENCE_NODE,
1707         PROCESSING_INSTRUCTION_NODE and COMMENT_NODE nodes are identical to that of cloneNode.
1708
1709         This patch removes the call to hasValidNamespaceForElements in ELEMENT_NODE but this
1710         should not introduce an observable behavior change since all instantiated elements
1711         should have a valid namespace in the first place.
1712
1713         Because DOCUMENT_NODE and DOCUMENT_TYPE_NODE cannot be imported and DOCUMENT_TYPE_NODE
1714         can only appear as a direct child of DOCUMENT_NODE, neither nodes nor unimplemented
1715         XPATH_NAMESPACE_NODE and XPATH_NAMESPACE_NODE can appear inside the recursive calls
1716         for ELEMENT_NODE and DOCUMENT_FRAGMENT_NODE nodes.
1717
1718         While importNode behaves differently from cloneNode for ATTRIBUTE_NODE, namely that
1719         it merges all of its child nodes, this behavior isn't present when recursing inside
1720         ELEMENT_NODE and DOCUMENT_FRAGMENT_NODE since we are using cloneDataFromElement.
1721
1722         Thus there should be no observable behavior changes for DOCUMENT_FRAGMENT_NODE and
1723         ELEMENT_NODE nodes either.
1724
1725         Test: fast/dom/HTMLTemplateElement/importNode-nested-templates.html
1726
1727         * dom/Attr.cpp:
1728         (WebCore::Attr::cloneNodeInternal):
1729         * dom/Attr.h:
1730         * dom/CDATASection.cpp:
1731         (WebCore::CDATASection::cloneNodeInternal):
1732         * dom/CDATASection.h:
1733         * dom/Comment.cpp:
1734         (WebCore::Comment::cloneNodeInternal):
1735         * dom/Comment.h:
1736         * dom/ContainerNode.cpp:
1737         (WebCore::ContainerNode::cloneChildNodes):
1738         * dom/Document.cpp:
1739         (WebCore::Document::importNode):
1740         (WebCore::Document::cloneNodeInternal):
1741         * dom/Document.h:
1742         * dom/DocumentFragment.cpp:
1743         (WebCore::DocumentFragment::cloneNodeInternal):
1744         * dom/DocumentFragment.h:
1745         * dom/DocumentType.cpp:
1746         (WebCore::DocumentType::cloneNodeInternal):
1747         * dom/DocumentType.h:
1748         * dom/Element.cpp:
1749         (WebCore::Element::cloneNodeInternal):
1750         (WebCore::Element::cloneElementWithChildren):
1751         (WebCore::Element::cloneElementWithoutChildren):
1752         (WebCore::Element::cloneElementWithoutAttributesAndChildren):
1753         * dom/Element.h:
1754         * dom/EntityReference.cpp:
1755         (WebCore::EntityReference::cloneNodeInternal):
1756         * dom/EntityReference.h:
1757         * dom/Node.h:
1758         (WebCore::Node::cloneNode):
1759         * dom/ProcessingInstruction.cpp:
1760         (WebCore::ProcessingInstruction::cloneNodeInternal):
1761         * dom/ProcessingInstruction.h:
1762         * dom/ShadowRoot.cpp:
1763         (WebCore::ShadowRoot::cloneNodeInternal):
1764         * dom/ShadowRoot.h:
1765         * dom/Text.cpp:
1766         (WebCore::Text::cloneNodeInternal):
1767         * dom/Text.h:
1768         * editing/ApplyStyleCommand.cpp:
1769         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
1770         (WebCore::ApplyStyleCommand::applyInlineStyleChange):
1771         * editing/BreakBlockquoteCommand.cpp:
1772         (WebCore::BreakBlockquoteCommand::doApply):
1773         * editing/InsertParagraphSeparatorCommand.cpp:
1774         (WebCore::InsertParagraphSeparatorCommand::cloneHierarchyUnderNewBlock):
1775         (WebCore::InsertParagraphSeparatorCommand::doApply):
1776         * editing/ModifySelectionListLevel.cpp:
1777         (WebCore::IncreaseSelectionListLevelCommand::doApply):
1778         * editing/SplitElementCommand.cpp:
1779         (WebCore::SplitElementCommand::doApply):
1780         * editing/markup.cpp:
1781         (WebCore::createFragmentFromText):
1782         * html/HTMLKeygenElement.cpp:
1783         * html/HTMLScriptElement.cpp:
1784         (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren):
1785         * html/HTMLScriptElement.h:
1786         * html/HTMLTemplateElement.cpp:
1787         (WebCore::HTMLTemplateElement::cloneNodeInternal):
1788         * html/HTMLTemplateElement.h:
1789         * html/shadow/SliderThumbElement.cpp:
1790         (WebCore::SliderThumbElement::cloneElementWithoutAttributesAndChildren):
1791         * html/shadow/SliderThumbElement.h:
1792         * html/track/WebVTTElement.cpp:
1793         (WebCore::WebVTTElement::cloneElementWithoutAttributesAndChildren):
1794         * html/track/WebVTTElement.h:
1795         * svg/SVGScriptElement.cpp:
1796         (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren):
1797         * svg/SVGScriptElement.h:
1798         * svg/SVGUseElement.cpp:
1799         (WebCore::SVGUseElement::buildShadowTree):
1800         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
1801
1802 2014-12-16  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
1803
1804         Document.contentType implementation
1805         https://bugs.webkit.org/show_bug.cgi?id=132269
1806
1807         Reviewed by Darin Adler.
1808
1809         Chromium merge from https://codereview.chromium.org/151653004
1810
1811         Tests: fast/dom/document-contentType-DOMParser.html
1812                fast/dom/document-contentType-createDocument.html
1813                fast/dom/document-contentType-data-uri.html
1814                fast/xsl/xslt-contentType.html
1815                http/tests/dom/document-contentType-meta.html
1816                http/tests/dom/document-contentType-xhr.html
1817                http/tests/dom/document-contentType.html
1818
1819         * dom/Document.cpp:
1820         (WebCore::Document::overrideMIMEType):
1821         (WebCore::Document::contentType):
1822         (WebCore::Document::cloneDataFromDocument):
1823         * dom/Document.h:
1824         * dom/Document.idl:
1825         * loader/DocumentLoader.cpp:
1826         (WebCore::DocumentLoader::currentContentType):
1827         * loader/DocumentLoader.h:
1828         * xml/XMLHttpRequest.cpp:
1829         (WebCore::XMLHttpRequest::responseXML):
1830         * xml/XSLTProcessor.cpp:
1831         (WebCore::XSLTProcessor::createDocumentFromSource):
1832
1833 2014-12-16  Anders Carlsson  <andersca@apple.com>
1834
1835         Put some common code in StorageNamespaceProvider
1836         https://bugs.webkit.org/show_bug.cgi?id=139682
1837
1838         Reviewed by Tim Horton.
1839
1840         We have code in two places that gets the local storage area from a given document,
1841         choosing either the local storage namespace or the transient local storage namespace.
1842         Move it to StorageNamespaceProvider::localStorageArea.
1843
1844         * bindings/js/ScriptController.cpp:
1845         * inspector/InspectorDOMStorageAgent.cpp:
1846         (WebCore::InspectorDOMStorageAgent::findStorageArea):
1847         * page/DOMWindow.cpp:
1848         (WebCore::DOMWindow::localStorage):
1849         * page/Navigator.cpp:
1850         * storage/StorageNamespaceProvider.cpp:
1851         (WebCore::StorageNamespaceProvider::localStorageArea):
1852         (WebCore::StorageNamespaceProvider::localStorageNamespace):
1853         * storage/StorageNamespaceProvider.h:
1854
1855 2014-12-16  Anders Carlsson  <andersca@apple.com>
1856
1857         Add FeatureCounterKeys.h to the Xcode project.
1858
1859         * WebCore.xcodeproj/project.pbxproj:
1860
1861 2014-12-16  Chris Dumez  <cdumez@apple.com>
1862
1863         REGRESSION (r163928): Animated GIFs are not resumed when translated into view using -webkit-transform
1864         https://bugs.webkit.org/show_bug.cgi?id=139672
1865         <rdar://problem/19260797>
1866
1867         Reviewed by Antti Koivisto.
1868
1869         After r163928, animated GIFs were not resumed when translated into view
1870         using '-webkit-transform' CSS property.
1871
1872         This broke animated gifs on the mobile version of weibo.com (which is
1873         one of the most popular blogging sites in China) on iPhone. e.g.
1874         http://m.weibo.cn/page/tpl?containerid=1005052150182731_-_WEIBO_SECOND_PROFILE_WEIBO&itemid=&title=全部微博
1875
1876         This patch calls FrameView::resumeVisibleImageAnimationsIncludingSubframes()
1877         after style recalc so that we resume animated images if they become visible
1878         after the style has changed. Doing so after layout wouldn't work because
1879         no layout happens in this case.
1880
1881         Test: fast/images/animated-gif-webkit-transform.html
1882
1883         * dom/Document.cpp:
1884         (WebCore::Document::recalcStyle):
1885
1886 2014-12-16  Sebastian Dröge  <sebastian@centricular.com>
1887
1888         [GStreamer] Fix deadlock when shutting down AudioDestination
1889         https://bugs.webkit.org/show_bug.cgi?id=139496
1890
1891         Reviewed by Philippe Normand.
1892
1893         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
1894         (webKitWebAudioSrcLoop):
1895         (webKitWebAudioSrcChangeState):
1896         Sometimes we would wait forever for the task to shut down. This
1897         was happening because of a bug in GStreamer that caused joining
1898         a paused task to deadlock.
1899
1900 2014-12-15  Dhi Aurrahman  <diorahman@rockybars.com>
1901
1902         Extend :lang()'s selector checker to handle ranges with '*' properly and perform matching within the ASCII range
1903         https://bugs.webkit.org/show_bug.cgi?id=139340
1904
1905         Reviewed by Benjamin Poulain.
1906
1907         Asterisk is considered as a valid subtag of a language range to express wildcard matching 
1908         in :lang()'s extended filtering procedure. The matching rules introduced by language 
1909         range with '*' is outlined in [1].
1910
1911         The matching of subtags is performed case-insensitively within the ASCII range[2].
1912
1913         [1] www.ietf.org/rfc/rfc4647.txt
1914         [2] http://dev.w3.org/csswg/selectors4/#the-lang-pseudo
1915
1916         Test: fast/selectors/lang-equal-ignoring-case.html
1917               fast/selectors/lang-valid-extended-filtering.html
1918
1919         * css/SelectorCheckerTestFunctions.h:
1920         (WebCore::equalIgnoringCaseWithinASCIIRange): Handle matching case-insensitively within the ASCII range.
1921         (WebCore::containslanguageSubtagMatchingRange):
1922         (WebCore::matchesLangPseudoClass):
1923
1924 2014-12-15  Chris Dumez  <cdumez@apple.com>
1925
1926         [iOS] Add feature counting support
1927         https://bugs.webkit.org/show_bug.cgi?id=139652
1928         <rdar://problem/19255690>
1929
1930         Reviewed by Gavin Barraclough.
1931
1932         Use FeatureCounter API to log PageCache failure reasons
1933         as well as its success rate.
1934
1935         No new tests, no behavior change.
1936
1937         * history/PageCache.cpp:
1938         (WebCore::logCanCacheFrameDecision):
1939         (WebCore::logCanCachePageDecision):
1940         (WebCore::PageCache::canCache):
1941         * platform/FeatureCounterKeys.h: Added.
1942
1943 2014-12-15  Beth Dakin  <bdakin@apple.com>
1944
1945         Speculative build fix.
1946
1947         * platform/spi/mac/LookupSPI.h:
1948
1949 2014-12-15  Beth Dakin  <bdakin@apple.com>
1950
1951         Speculative build fix.
1952
1953         * platform/spi/mac/LookupSPI.h:
1954
1955 2014-12-15  Jer Noble  <jer.noble@apple.com>
1956
1957         Switching src of <video> with clipping layer results in empty black square.
1958         https://bugs.webkit.org/show_bug.cgi?id=139650
1959
1960         Reviewed by Simon Fraser.
1961
1962         Test: compositing/video-clip-change-src.html
1963
1964         When the contentsLayer changes after a contentsClippingLayer has already been created, make sure to parent the
1965         new contentsLayer, as updateRects() will only reparent when first creating a contentsClippingLayer.
1966
1967         * platform/graphics/ca/GraphicsLayerCA.cpp:
1968         (WebCore::GraphicsLayerCA::setContentsToPlatformLayer):
1969
1970 2014-12-15  Beth Dakin  <bdakin@apple.com>
1971
1972         Make lookup an immediate action instead of an action menu item
1973         https://bugs.webkit.org/show_bug.cgi?id=139661
1974         -and corresponding-
1975         rdar://problem/19198414
1976
1977         Reviewed by Tim Horton.
1978
1979         New SPI.
1980         * platform/spi/mac/LookupSPI.h:
1981
1982 2014-12-12  Anders Carlsson  <andersca@apple.com>
1983
1984         Get rid of the DONT_FINALIZE_ON_MAIN_THREAD #define
1985         https://bugs.webkit.org/show_bug.cgi?id=139613
1986
1987         Reviewed by Sam Weinig.
1988
1989         * WebCore.exp.in:
1990         Update symbols.
1991
1992         * WebCore.xcodeproj/project.pbxproj:
1993         Remove -Wno-deprecated-declarations from the WebCoreObjCExtras.mm build flags.
1994
1995         * platform/mac/WebCoreObjCExtras.h:
1996         If OBJC_NO_GC is defined to 1, just make WebCoreObjCFinalizeOnMainThread a no-op inline function.
1997
1998         * platform/mac/WebCoreObjCExtras.mm:
1999         (WebCoreObjCFinalizeOnMainThread):
2000         Move this to the .h file for easier inlining.
2001
2002         (WebCoreObjCScheduleDeallocateOnMainThread):
2003         Use a lambda.
2004
2005 2014-12-15  Gavin Barraclough  <barraclough@apple.com>
2006
2007         Separate counted and hysteresis activities in PageThrottler
2008         https://bugs.webkit.org/show_bug.cgi?id=139657
2009
2010         Reviewed by Sam Weinig.
2011
2012         Currently all activities funnel into a common hysteresis mechanism, the result of
2013         which is combined with the visually idle state, the result of which in turn drives
2014         a UserActivity::Impl.
2015
2016         This is a first refactoring towards moving the UserActivity out to WebKit2. Use
2017         m_hysteresis only of the impulse activities (plugin evaluation, user input), and
2018         flatten the three types of activities (impulse, counted, ViewState) to all directly
2019         control a UserActivity. Switch from a UserActivity::Impl to a UserActivity since
2020         this will provide hysteresis for media activity.
2021
2022         * page/PageThrottler.cpp:
2023         (WebCore::m_pageActivityCounter):
2024             - when the RefCounter changes just call updateUserActivity directly, removeed redundant call to updateUserActivity.
2025         (WebCore::PageThrottler::createUserActivity):
2026             - m_activity is now a UserActivity.
2027         (WebCore::PageThrottler::updateUserActivity):
2028             - previously just checked m_hysteresis for activity; now check m_pageActivityCounter too.
2029         (WebCore::PageThrottler::pageActivityCounterValueDidChange): Deleted.
2030             - no longer needed; when the RefCounter changes just call updateUserActivity directly.
2031         * page/PageThrottler.h:
2032             - removed pageActivityCounterValueDidChange, m_activity is now a UserActivity.
2033
2034 2014-12-15  Commit Queue  <commit-queue@webkit.org>
2035
2036         Unreviewed, rolling out r177284.
2037         https://bugs.webkit.org/show_bug.cgi?id=139658
2038
2039         "Breaks API tests and LayoutTests on Yosemite Debug"
2040         (Requested by msaboff on #webkit).
2041
2042         Reverted changeset:
2043
2044         "Make sure range based iteration of Vector<> still receives
2045         bounds checking"
2046         https://bugs.webkit.org/show_bug.cgi?id=138821
2047         http://trac.webkit.org/changeset/177284
2048
2049 2014-12-15  Ryosuke Niwa  <rniwa@webkit.org>
2050
2051         cloneNode(true) does not clone nested template elements' contents
2052         https://bugs.webkit.org/show_bug.cgi?id=137755
2053
2054         Reviewed by Darin Adler.
2055
2056         The bug was caused by cloneChildNodes not copying template element's content.
2057
2058         Fixed the bug by adding the third behavior (CloneContent) to the polymorphic
2059         cloneNodeInternal, which copies template element's content but not its children,
2060         in addition to the existing CloneSelf (deep=false) and CloneChildren (deep=true).
2061
2062         Test: fast/dom/HTMLTemplateElement/cloneNode-nested-templates.html
2063
2064         * dom/Attr.cpp:
2065         (WebCore::Attr::cloneNodeInternal): Renamed from cloneNode.
2066         * dom/Attr.h:
2067         * dom/CDATASection.cpp:
2068         (WebCore::CDATASection::cloneNodeInternal): Renamed from cloneNode.
2069         * dom/CDATASection.h:
2070         * dom/Comment.cpp:
2071         (WebCore::Comment::cloneNodeInternal): Renamed from cloneNode.
2072         * dom/Comment.h:
2073         * dom/ContainerNode.cpp:
2074         (WebCore::ContainerNode::cloneChildNodes): Calls cloneNode with CloneContent.
2075         * dom/Document.cpp:
2076         (WebCore::Document::cloneNodeInternal): Renamed from cloneNode.
2077         * dom/Document.h:
2078         * dom/DocumentFragment.cpp:
2079         (WebCore::DocumentFragment::cloneNodeInternal): Renamed from cloneNode.
2080         * dom/DocumentFragment.h:
2081         * dom/DocumentType.cpp:
2082         (WebCore::DocumentType::cloneNodeInternal): Renamed from cloneNode.
2083         * dom/DocumentType.h:
2084         * dom/Element.cpp:
2085         (WebCore::Element::cloneNodeInternal): Renamed from cloneNode.
2086         * dom/Element.h:
2087         * dom/EntityReference.cpp:
2088         (WebCore::EntityReference::cloneNodeInternal): Renamed from cloneNode.
2089         * dom/EntityReference.h:
2090         * dom/Node.h:
2091         (WebCore::Node::cloneNode): Added. It calls cloneNodeInternal with CloneSelf or CloneChildren.
2092         * dom/ProcessingInstruction.cpp:
2093         (WebCore::ProcessingInstruction::cloneNodeInternal): Renamed from cloneNode.
2094         * dom/ProcessingInstruction.h:
2095         * dom/ShadowRoot.cpp:
2096         (WebCore::ShadowRoot::cloneNodeInternal): Renamed from cloneNode. Also moved from ShadowRoot.h.
2097         * dom/ShadowRoot.h:
2098         * dom/Text.cpp:
2099         (WebCore::Text::cloneNodeInternal): Renamed from cloneNode.
2100         * dom/Text.h:
2101         * html/HTMLTemplateElement.cpp:
2102         (WebCore::HTMLTemplateElement::cloneNodeInternal): Renamed from cloneNode. This is the only
2103         function in which CloneContent results in a different behavior from CloneSelf.
2104         * html/HTMLTemplateElement.h:
2105
2106 2014-12-15  Benjamin Poulain  <bpoulain@apple.com>
2107
2108         Unify the various serialization of selector list
2109         https://bugs.webkit.org/show_bug.cgi?id=139606
2110
2111         Reviewed by Andreas Kling.
2112
2113         There were code in various place to build a string from the selectors contained
2114         in a selecor list.
2115
2116         This patch adds a single function to do that: buildSelectorsText(). All the call sites
2117         were modified to use it.
2118
2119         The serialization of :-webkit-any() gets fixed as a result.
2120
2121         * css/CSSSelector.cpp:
2122         (WebCore::CSSSelector::selectorText):
2123         (WebCore::appendSelectorList): Deleted.
2124         * css/CSSSelectorList.cpp:
2125         (WebCore::CSSSelectorList::selectorsText):
2126         (WebCore::CSSSelectorList::buildSelectorsText):
2127         * css/CSSSelectorList.h:
2128         * css/CSSStyleRule.cpp:
2129         (WebCore::CSSStyleRule::generateSelectorText):
2130         * css/WebKitCSSRegionRule.cpp:
2131         (WebCore::WebKitCSSRegionRule::cssText):
2132
2133 2014-12-15  Antti Koivisto  <antti@apple.com>
2134
2135         Try to fix iOS build.
2136
2137         * WebCore.exp.in:
2138
2139 2014-12-15  Javier Fernandez  <jfernandez@igalia.com>
2140
2141         Floats Don't Overhang Their Block Formatting Contex
2142         https://bugs.webkit.org/show_bug.cgi?id=139476
2143
2144         Reviewed by David Hyatt.
2145
2146         From Blink r172530 by <robhogan@gmail.com>
2147
2148         Floats Don't Overhang Their Block Formatting Context Per
2149         http://www.w3.org/TR/CSS2/visuren.html#float-position: "References
2150         to [the elements] in the [rules that govern the behaviour of
2151         floats] refer only to other elements in the same block formatting
2152         context as the float."
2153
2154         This means we don't need to look for intruding or overhanging
2155         floats in boxes that establish a new block formatting
2156         context. Even that we don't have a test breaking this rule it
2157         seems we are doing unnecessary work in
2158         rebuildFloatsFromIntruding() so make sure we avoid adding floats
2159         from different block formatting contexts.
2160
2161         Test:
2162         fast/block/float/floats-do-not-overhang-from-block-formatting-context.html
2163
2164         * rendering/RenderBlockFlow.cpp:
2165         (WebCore::RenderBlockFlow::addIntrudingFloats):
2166
2167 2014-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
2168
2169         Unreviewed build fix after r177301
2170
2171         * html/ColorInputType.cpp:
2172         (WebCore::ColorInputType::elementRectRelativeToRootView):
2173
2174 2014-12-15  Timothy Horton  <timothy_horton@apple.com>
2175
2176         Implement Data Detectors immediate actions for WebKit2
2177         https://bugs.webkit.org/show_bug.cgi?id=139617
2178         <rdar://problem/19198539>
2179
2180         Reviewed by Beth Dakin.
2181
2182         * platform/spi/mac/DataDetectorsSPI.h:
2183         Add some new SPI.
2184
2185 2014-12-12  Simon Fraser  <simon.fraser@apple.com>
2186
2187         REGRESSION (r168217): Images are cropped out during animation at jetblue.com
2188         https://bugs.webkit.org/show_bug.cgi?id=136410
2189         rdar://problem/18188533
2190
2191         Reviewed by Dean Jackson.
2192         
2193         During GraphicsLayer flushing, for tiled layers we can compute a visible rect using
2194         the current state of an animation, which is obtained via the AnimationController.
2195         If that animation was running in a subframe, AnimationController could use a stale
2196         beginAnimationUpdateTime since no-one called its beginAnimationUpdate(). That
2197         resulted in an incorrect computation of the visible rect, resulting in missing tiles.
2198         
2199         There are two parts to this fix. First, add an assertion that beginAnimationUpdateTime()
2200         is being called inside an animation update block. This required moving m_beginAnimationUpdateCount
2201         into AnimationControllerPrivate, and changes to endAnimationUpdate().
2202         
2203         The second is adding a AnimationUpdateBlock to getAnimatedStyleForRenderer(), which
2204         can be called outside of style resolution. We also need some in other API functions.
2205         
2206         Testing revealed that layout can call via layoutOverflowRectForPropagation(), suggesting
2207         that we should have an animation batch inside FrameView::layout(). In addition, a single
2208         resolveStyle/layout should use the same animationBeginTime, so we add a batch to 
2209         updateLayoutAndStyleIfNeededRecursive().
2210         
2211         Identical to the patch that was rolled out in r177269 with the addition of a 
2212         Ref<Frame> protector(m_frame) in AnimationControllerPrivate::animationTimerFired()
2213         that ensures that the AnimationControllerPrivate is kept alive for the scope of
2214         the AnimationPrivateUpdateBlock, when a transitionEnd event destroys an iframe.
2215         
2216         No test because it's timing-dependent. Existing tests exercise the new assertion.
2217
2218         * css/CSSComputedStyleDeclaration.cpp:
2219         (WebCore::computeRenderStyleForProperty):
2220         * page/FrameView.cpp:
2221         (WebCore::FrameView::layout):
2222         (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
2223         * page/animation/AnimationController.cpp:
2224         (WebCore::AnimationPrivateUpdateBlock::AnimationPrivateUpdateBlock):
2225         (WebCore::AnimationPrivateUpdateBlock::~AnimationPrivateUpdateBlock):
2226         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
2227         (WebCore::AnimationControllerPrivate::animationTimerFired):
2228         (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument):
2229         (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument):
2230         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
2231         (WebCore::AnimationControllerPrivate::beginAnimationUpdate):
2232         (WebCore::AnimationControllerPrivate::endAnimationUpdate):
2233         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
2234         (WebCore::AnimationController::AnimationController):
2235         (WebCore::AnimationController::notifyAnimationStarted):
2236         (WebCore::AnimationController::pauseAnimationAtTime):
2237         (WebCore::AnimationController::pauseTransitionAtTime):
2238         (WebCore::AnimationController::resumeAnimationsForDocument):
2239         (WebCore::AnimationController::startAnimationsIfNotSuspended):
2240         (WebCore::AnimationController::beginAnimationUpdate):
2241         (WebCore::AnimationController::endAnimationUpdate):
2242         * page/animation/AnimationController.h:
2243         * page/animation/AnimationControllerPrivate.h:
2244
2245 2014-12-12  Simon Fraser  <simon.fraser@apple.com>
2246
2247         REGRESSION (r168217): Images are cropped out during animation at jetblue.com
2248         https://bugs.webkit.org/show_bug.cgi?id=136410
2249
2250         Reviewed by Dean Jackson.
2251
2252         We were hitting the new assertion under Page::setPageScaleFactor(), which
2253         calls recalcStyle(), so move the AnimationUpdateBlock from updateStyleIfNeeded()
2254         to recalcStyle().
2255
2256         * dom/Document.cpp:
2257         (WebCore::Document::recalcStyle):
2258         (WebCore::Document::updateStyleIfNeeded):
2259
2260 2014-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
2261
2262         Addressing post-review comments in r177035
2263         https://bugs.webkit.org/show_bug.cgi?id=139557
2264
2265         Reviewed by Darin Adler.
2266
2267         This patch deletes the helper functions rendererBoundingBox() and rendererAnchorRect() and
2268         migrates callers to using renderers directly.
2269
2270         It also improves the comment in RenderElement.h regarding RenderElement::anchorRect().
2271
2272         No new tests because this is simply refactoring.
2273
2274         * WebCore.exp.in: Delete exported symbol for rendererBoundingBox()
2275         * accessibility/AccessibilitySlider.cpp:
2276         (WebCore::AccessibilitySliderThumb::elementRect): Migrate off rendererBoundingBox()
2277         * dom/ContainerNode.cpp:
2278         (WebCore::rendererAnchorRect): Deleted.
2279         * dom/ContainerNode.h:
2280         * dom/Node.cpp:
2281         (WebCore::rendererBoundingBox): Deleted.
2282         * dom/Node.h:
2283         * html/ColorInputType.cpp:
2284         (WebCore::ColorInputType::elementRectRelativeToRootView): Migrate off rendererBoundingBox().
2285         * html/HTMLInputElement.cpp:
2286         (WebCore::HTMLInputElement::setupDateTimeChooserParameters): Ditto.
2287         * html/ValidationMessage.cpp:
2288         (WebCore::ValidationMessage::buildBubbleTree): Ditto.
2289         * page/FrameView.cpp:
2290         (WebCore::FrameView::scrollElementToRect): Migrate off rendererAnchorRect().
2291         (WebCore::FrameView::scrollToAnchor): Ditto.
2292         * page/SpatialNavigation.cpp:
2293         (WebCore::nodeRectInAbsoluteCoordinates): Migrate off rendererBoundingBox().
2294         * rendering/RenderElement.h:
2295
2296 2014-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
2297
2298         Delete Notation because we don't use it
2299         https://bugs.webkit.org/show_bug.cgi?id=139171
2300
2301         Reviewed by Kent Tamura.
2302
2303         No tests because this is un-exposing something that never gets instantiated.
2304
2305         * CMakeLists.txt:
2306         * DerivedSources.cpp:
2307         * DerivedSources.make:
2308         * WebCore.exp.in:
2309         * WebCore.order:
2310         * WebCore.vcxproj/WebCore.vcxproj:
2311         * WebCore.vcxproj/WebCore.vcxproj.filters:
2312         * WebCore.xcodeproj/project.pbxproj:
2313         * bindings/gobject/WebKitDOMNodeFilter.h:
2314         * bindings/gobject/WebKitDOMNodeFilter.symbols:
2315         * bindings/gobject/WebKitDOMPrivate.cpp:
2316         (WebKit::wrap):
2317         * bindings/gobject/webkitdom.symbols:
2318         * bindings/js/JSNodeCustom.cpp:
2319         (WebCore::createWrapperInline):
2320         * bindings/objc/DOM.mm:
2321         (kitClass):
2322         * bindings/objc/DOMCore.h:
2323         * bindings/objc/PublicDOMInterfaces.h:
2324         * dom/DOMAllInOne.cpp:
2325         * dom/Document.cpp:
2326         (WebCore::Document::importNode):
2327         (WebCore::Document::adoptNode):
2328         (WebCore::Document::childTypeAllowed):
2329         (WebCore::Document::canReplaceChild):
2330         * dom/Node.cpp:
2331         (WebCore::Node::dumpStatistics):
2332         (WebCore::Node::isDefaultNamespace):
2333         (WebCore::Node::lookupPrefix):
2334         (WebCore::Node::lookupNamespaceURI):
2335         (WebCore::appendTextContent):
2336         (WebCore::Node::setTextContent):
2337         * dom/Node.h:
2338         * dom/Node.idl:
2339         * dom/NodeFilter.h:
2340         * dom/NodeFilter.idl:
2341         * dom/Notation.cpp: Removed.
2342         * dom/Notation.h: Removed.
2343         * dom/Notation.idl: Removed.
2344         * dom/Range.cpp:
2345         (WebCore::lengthOfContentsInNode):
2346         (WebCore::Range::processContentsBetweenOffsets):
2347         (WebCore::Range::insertNode):
2348         (WebCore::Range::checkNodeWOffset):
2349         (WebCore::Range::checkNodeBA):
2350         (WebCore::Range::selectNode):
2351         (WebCore::Range::selectNodeContents):
2352         (WebCore::Range::surroundContents):
2353         * editing/MarkupAccumulator.cpp:
2354         (WebCore::MarkupAccumulator::appendStartMarkup):
2355         * xml/XPathUtil.cpp:
2356         (WebCore::XPath::isValidContextNode):
2357
2358 2014-12-15  Gavin Barraclough  <barraclough@apple.com>
2359
2360         Change HysteresisActivity to use a lambda
2361         https://bugs.webkit.org/show_bug.cgi?id=139636
2362
2363         Reviewed by Darin Adler.
2364
2365         The current implementation provides notifications via callbacks to a delegate. Using a delegate
2366         with callbacks is limiting a number of ways. The callback names are very ambiguous, the callbacks
2367         must either be on a separate object (more boilerplate), or the callback must be public for
2368         HysteresisActivity to call them, or friends get involved. Without the boilerplate of extra
2369         delegate objects it's hard to scale use of these objects - a single object can't serve as a
2370         delegate for multiple HysteresisActivity members.
2371
2372         Instead, make HysteresisActivity take a lambda to callback on state change. To simplify, changed
2373         HysteresisState to only track Started/Stopped states (removed WillStopPendingTimeout).
2374
2375         * WebCore.exp.in:
2376             - removed exports of deleted functions.
2377         * page/PageThrottler.cpp:
2378         (WebCore::PageThrottler::PageThrottler):
2379             - m_hysteresis lambda calls updateUserActivity.
2380         (WebCore::PageThrottler::pageActivityCounterValueDidChange):
2381             - ASSERT updated due to removal of WillStopPendingTimeout state.
2382         (WebCore::PageThrottler::started): Deleted.
2383         (WebCore::PageThrottler::stopped): Deleted.
2384             - functionality replaced by lambda.
2385         * page/PageThrottler.h:
2386             - HysteresisActivity is no longer templated on delegate type, removed function declarations & friend.
2387         * platform/HysteresisActivity.h:
2388         (WebCore::HysteresisActivity::HysteresisActivity):
2389             - HysteresisActivity takes a lambda, not a delegate.
2390         (WebCore::HysteresisActivity::start):
2391             - delegate call -> callback.
2392         (WebCore::HysteresisActivity::state):
2393             - simplified to remove WillStopPendingTimeout.
2394         (WebCore::HysteresisActivity::hysteresisTimerFired):
2395             - delegate call -> callback.
2396         * platform/UserActivity.cpp:
2397         (WebCore::UserActivity::UserActivity):
2398             - HysteresisActivity lambda calls hysteresisUpdated.
2399         (WebCore::UserActivity::hysteresisUpdated):
2400         (WebCore::UserActivity::started): Deleted.
2401         (WebCore::UserActivity::stopped): Deleted.
2402             - started/stopped -> hysteresisUpdated.
2403         * platform/UserActivity.h:
2404             - started/stopped -> hysteresisUpdated, removed friend.
2405
2406 2014-12-15  Antti Koivisto  <antti@apple.com>
2407
2408         WebKit level persistent caching
2409         https://bugs.webkit.org/show_bug.cgi?id=30322
2410
2411         Reviewed by Sam Weinig.
2412
2413         Test: http/tests/cache/disk-cache-validation.html
2414
2415         * WebCore.exp.in:
2416         * inspector/InspectorResourceAgent.cpp:
2417         (WebCore::buildObjectForResourceResponse):
2418         * platform/network/ResourceResponseBase.cpp:
2419         (WebCore::ResourceResponseBase::ResourceResponseBase):
2420         (WebCore::ResourceResponseBase::source):
2421         (WebCore::ResourceResponseBase::setSource):
2422         (WebCore::ResourceResponseBase::wasCached): Deleted.
2423         (WebCore::ResourceResponseBase::setWasCached): Deleted.
2424
2425             Replace wasCached bit with Source enum.
2426             This is useful for testing.
2427
2428         * platform/network/ResourceResponseBase.h:
2429         (WebCore::ResourceResponseBase::containsCertificateInfo):
2430         (WebCore::ResourceResponseBase::encode):
2431         (WebCore::ResourceResponseBase::decode):
2432         * testing/Internals.cpp:
2433         (WebCore::Internals::xhrResponseSource):
2434         (WebCore::Internals::clearMemoryCache):
2435         * testing/Internals.h:
2436         * testing/Internals.idl:
2437
2438             Testing support.
2439
2440         * xml/XMLHttpRequest.h:
2441
2442 2014-12-15  Andreas Kling  <akling@apple.com>
2443
2444         Purge PassRefPtr from FocusEvent code.
2445         <https://webkit.org/b/139647>
2446
2447         Reviewed by Anders Carlsson.
2448
2449         Convert FocusEvent-related code from using PassRefPtr to using RefPtr&& instead.
2450
2451         * dom/Document.cpp:
2452         (WebCore::Document::setFocusedElement):
2453         * dom/Element.cpp:
2454         (WebCore::Element::dispatchFocusInEvent):
2455         (WebCore::Element::dispatchFocusOutEvent):
2456         (WebCore::Element::dispatchFocusEvent):
2457         (WebCore::Element::dispatchBlurEvent):
2458         * dom/Element.h:
2459         * dom/FocusEvent.cpp:
2460         (WebCore::FocusEvent::FocusEvent):
2461         * dom/FocusEvent.h:
2462         * html/HTMLFormControlElement.cpp:
2463         (WebCore::HTMLFormControlElement::dispatchBlurEvent):
2464         * html/HTMLFormControlElement.h:
2465         * html/HTMLSelectElement.cpp:
2466         (WebCore::HTMLSelectElement::dispatchFocusEvent):
2467         (WebCore::HTMLSelectElement::dispatchBlurEvent):
2468         * html/HTMLSelectElement.h:
2469         * html/HTMLTextFormControlElement.cpp:
2470         (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
2471         (WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
2472         * html/HTMLTextFormControlElement.h:
2473         * page/FocusController.cpp:
2474         (WebCore::dispatchEventsOnWindowAndFocusedElement):
2475
2476 2014-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
2477
2478         [iOS] Codepoints not associated with languages are drawn as boxes
2479         https://bugs.webkit.org/show_bug.cgi?id=138906
2480
2481         Reviewed by Darin Adler.
2482
2483         Use SPI CTFontCreateForCharacters(), but only if we don't already know what to do
2484         with the characters.
2485
2486         Test: platform/ios-simulator/fast/text/non-language-font-fallback.html
2487
2488         * platform/graphics/ios/FontCacheIOS.mm:
2489         (WebCore::FontCache::systemFallbackForCharacters):
2490         * platform/spi/cocoa/CoreTextSPI.h:
2491
2492 2014-12-15  Bem Jones-Bey  <bjonesbe@adobe.com>
2493
2494         [CSS Shapes] Fix StyleBuilder code to use CSSValueNone to match spec and other code
2495         https://bugs.webkit.org/show_bug.cgi?id=139601
2496
2497         Reviewed by Chris Dumez.
2498
2499         Change the code to properly use CSSValueNone instead of CSSValueAuto.
2500         Asserts have been added to catch similar errors in the future.
2501         In doing this change, it became apparent that there is nothing
2502         special about the shape-outside property that requires custom code, so
2503         it was changed to use a standard converter function. 
2504
2505         No change observable via LayoutTests.
2506
2507         * css/CSSPropertyNames.in: Use a converter instead of custom code.
2508         * css/StyleBuilderConverter.h:
2509         (WebCore::isImageShape): Helper function so that isImageSetValue can
2510             be properly guarded.
2511         (WebCore::StyleBuilderConverter::convertShapeValue): Format as a
2512             converter instead of custom code.
2513         * css/StyleBuilderCustom.h:
2514         (WebCore::StyleBuilderCustom::applyValueWebkitShapeOutside): Deleted.
2515
2516 2014-12-15  Oliver Hunt  <oliver@apple.com>
2517
2518         Make sure range based iteration of Vector<> still receives bounds checking
2519         https://bugs.webkit.org/show_bug.cgi?id=138821
2520
2521         Reviewed by Mark Lam.
2522
2523         Update to deal with different iterator type.
2524
2525         * bindings/js/SerializedScriptValue.cpp:
2526         (WebCore::CloneDeserializer::deserializeString):
2527         * editing/TextIterator.cpp:
2528         (WebCore::SearchBuffer::isBadMatch):
2529         * page/mac/ServicesOverlayController.mm:
2530         (WebCore::ServicesOverlayController::buildSelectionHighlight):
2531         * platform/graphics/SegmentedFontData.cpp:
2532         (WebCore::SegmentedFontData::fontDataForCharacter):
2533         (WebCore::SegmentedFontData::containsCharacter):
2534         (WebCore::SegmentedFontData::isLoading):
2535         * platform/graphics/WOFFFileFormat.cpp:
2536         (WebCore::convertWOFFToSfnt):
2537         * platform/graphics/cairo/GradientCairo.cpp:
2538         (WebCore::Gradient::platformGradient):
2539         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2540         (WebCore::GIFImageDecoder::clearFrameBufferCache):
2541         * rendering/RenderBox.cpp:
2542         (WebCore::RenderBox::paintFillLayers):
2543         * rendering/style/GridResolvedPosition.cpp:
2544         (WebCore::firstNamedGridLineBeforePosition):
2545         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
2546         * svg/SVGFontElement.cpp:
2547         (WebCore::kerningForPairOfStringsAndGlyphs):
2548         * svg/SVGPathByteStream.h:
2549         (WebCore::SVGPathByteStream::append):
2550         * xml/XPathNodeSet.h:
2551         (WebCore::XPath::NodeSet::begin):
2552         (WebCore::XPath::NodeSet::end):
2553
2554 2014-12-15  Chris Dumez  <cdumez@apple.com>
2555
2556         Move '-webkit-text-decoration-skip' to the new StyleBuilder
2557         https://bugs.webkit.org/show_bug.cgi?id=139633
2558
2559         Reviewed by Darin Adler.
2560
2561         Move '-webkit-text-decoration-skip' to the new StyleBuilder by
2562         introducing a new TextDecorationSkip converter.
2563
2564         No new tests, no behavior change.
2565
2566         * css/CSSPropertyNames.in:
2567         * css/DeprecatedStyleBuilder.cpp:
2568         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2569         (WebCore::valueToDecorationSkip): Deleted.
2570         (WebCore::ApplyPropertyTextDecorationSkip::applyValue): Deleted.
2571         (WebCore::ApplyPropertyTextDecorationSkip::createHandler): Deleted.
2572         * css/StyleBuilderConverter.h:
2573         (WebCore::StyleBuilderConverter::valueToDecorationSkip):
2574         (WebCore::StyleBuilderConverter::convertTextDecorationSkip):
2575
2576 2014-12-15  Bartlomiej Gajda  <b.gajda@samsung.com>
2577
2578         [MSE] Prevent SourceBuffer monitoring algorithm from triggering a HAVE_NOTHING to HAVE_METADATA transition.
2579         https://bugs.webkit.org/show_bug.cgi?id=139444
2580
2581         Reviewed by Jer Noble.
2582
2583         In case of 2 SourceBuffers, there can be transition to HaveMetadata from monitorSourceBuffers,
2584         even though second SourceBuffer did not receive init segment - we can't query for it's metadata
2585         such as width/height (if second one was video), so we shouldn't fire the event.
2586         W3 Bug reference : https://www.w3.org/Bugs/Public/show_bug.cgi?id=27542
2587
2588         Test: media/media-source/media-source-loadedmetada-with-two-sourcebuffers.html
2589
2590         * Modules/mediasource/MediaSource.cpp:
2591         (WebCore::MediaSource::monitorSourceBuffers):
2592         * Modules/mediasource/SourceBuffer.h:
2593         * platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
2594         (WebCore::mimeTypeCache):
2595
2596 2014-12-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2597
2598         Move WebCore/platform/text to std::unique_ptr 
2599         https://bugs.webkit.org/show_bug.cgi?id=139395
2600
2601         Reviewed by Darin Adler.
2602
2603         As a step to use std::unique_ptr<>, this patch replaces OwnPtr|PassOwnPtr with
2604         std::unique_ptr<> | std::make_unique<>.
2605
2606         * dom/Document.h:
2607         * platform/text/LineBreakIteratorPoolICU.h:
2608         (WebCore::LineBreakIteratorPool::LineBreakIteratorPool):
2609         (WebCore::LineBreakIteratorPool::create): Deleted.
2610         * platform/text/LocaleICU.cpp:
2611         (WebCore::Locale::create):
2612         (WebCore::LocaleICU::createLabelVector):
2613         (WebCore::createFallbackMonthLabels):
2614         (WebCore::createFallbackAMPMLabels):
2615         (WebCore::LocaleICU::initializeDateTimeFormat):
2616         (WebCore::LocaleICU::shortMonthLabels):
2617         (WebCore::LocaleICU::create): Deleted.
2618         (WebCore::LocaleICU::standAloneMonthLabels): Deleted.
2619         (WebCore::LocaleICU::shortStandAloneMonthLabels): Deleted.
2620         * platform/text/LocaleICU.h:
2621         * platform/text/LocaleNone.cpp:
2622         (WebCore::Locale::create):
2623         * platform/text/PlatformLocale.h:
2624         (WebCore::Locale::createDefault):
2625         * platform/text/TextCodecLatin1.cpp:
2626         * platform/text/TextCodecUTF16.cpp:
2627         * platform/text/TextEncoding.cpp:
2628         * platform/text/mac/LocaleMac.h:
2629         * platform/text/mac/LocaleMac.mm:
2630         (WebCore::Locale::create):
2631         (WebCore::LocaleMac::create):
2632         * platform/text/mac/TextCodecMac.cpp:
2633         * platform/text/win/LocaleWin.cpp:
2634         (WebCore::Locale::create):
2635         (WebCore::LocaleWin::create):
2636         * platform/text/win/LocaleWin.h:
2637         * platform/text/win/TextCodecWin.cpp:
2638         (WebCore::newTextCodecWin):
2639
2640 2014-12-15  Xavier Claessens  <xavier.claessens@collabora.com>
2641
2642         [GStreamer] the webkitwebsrc element can stale
2643         https://bugs.webkit.org/show_bug.cgi?id=138425
2644
2645         Reviewed by Philippe Normand.
2646
2647         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2648         (removeTimeoutSources):
2649         (webKitWebSrcStart):
2650         (webKitWebSrcChangeState):
2651
2652 2014-12-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2653
2654         [GTK] Remove GamepadDeviceGtk::create()
2655         https://bugs.webkit.org/show_bug.cgi?id=139637
2656
2657         Reviewed by Carlos Garcia Campos.
2658
2659         std::make_unique<> can replace GamepadDeviceGtk::create() factory function.
2660
2661         * platform/gtk/GamepadsGtk.cpp: Add "explicit" to GamepadsGtk constructor.
2662         (WebCore::GamepadsGtk::registerDevice):
2663         (WebCore::GamepadDeviceGtk::create): Deleted.
2664
2665 2014-12-15  Chris Dumez  <cdumez@apple.com>
2666
2667         Move 'counter-increment' / 'counter-reset' to the new StyleBuilder
2668         https://bugs.webkit.org/show_bug.cgi?id=139635
2669
2670         Reviewed by Antti Koivisto.
2671
2672         Move 'counter-increment' / 'counter-reset' to the new StyleBuilder by
2673         using custom code.
2674
2675         No new tests, no behavior change.
2676
2677         * css/CSSPropertyNames.in:
2678         * css/DeprecatedStyleBuilder.cpp:
2679         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2680         (WebCore::ApplyPropertyCounter::emptyFunction): Deleted.
2681         (WebCore::ApplyPropertyCounter::applyInheritValue): Deleted.
2682         (WebCore::ApplyPropertyCounter::applyValue): Deleted.
2683         (WebCore::ApplyPropertyCounter::createHandler): Deleted.
2684         * css/StyleBuilderCustom.h:
2685         (WebCore::StyleBuilderCustom::applyInitialCounterIncrement):
2686         (WebCore::StyleBuilderCustom::applyInitialCounterReset):
2687         (WebCore::StyleBuilderCustom::applyInheritCounter):
2688         (WebCore::StyleBuilderCustom::applyValueCounter):
2689         (WebCore::StyleBuilderCustom::applyInheritCounterIncrement):
2690         (WebCore::StyleBuilderCustom::applyValueCounterIncrement):
2691         (WebCore::StyleBuilderCustom::applyInheritCounterReset):
2692         (WebCore::StyleBuilderCustom::applyValueCounterReset):
2693
2694 2014-12-14  Commit Queue  <commit-queue@webkit.org>
2695
2696         Unreviewed, rolling out r177238 and r177244.
2697         https://bugs.webkit.org/show_bug.cgi?id=139632
2698
2699         Introduced memory corruption (Requested by ap on #webkit).
2700
2701         Reverted changesets:
2702
2703         "REGRESSION (r168217): Images are cropped out during animation
2704         at jetblue.com"
2705         https://bugs.webkit.org/show_bug.cgi?id=136410
2706         http://trac.webkit.org/changeset/177238
2707
2708         https://bugs.webkit.org/show_bug.cgi?id=139596
2709         http://trac.webkit.org/changeset/177244
2710
2711 2014-12-14  Commit Queue  <commit-queue@webkit.org>
2712
2713         Unreviewed, rolling out r177223 and r177226.
2714         https://bugs.webkit.org/show_bug.cgi?id=139631
2715
2716         Multiple tests are flakily asserting in
2717         StyleResolver::loadPendingResources (Requested by ap_ on
2718         #webkit).
2719
2720         Reverted changesets:
2721
2722         "[SVG Masking] Enable the use of <mask> elements for -webkit-
2723         mask-image"
2724         https://bugs.webkit.org/show_bug.cgi?id=139294
2725         http://trac.webkit.org/changeset/177223
2726
2727         "animations/cross-fade-webkit-mask-image.html is flaky"
2728         https://bugs.webkit.org/show_bug.cgi?id=139590
2729         http://trac.webkit.org/changeset/177226
2730
2731 2014-12-14  Andreas Kling  <akling@apple.com>
2732
2733         Event construction helpers should return Ref instead of PassRefPtr.
2734         <https://webkit.org/b/139625>
2735
2736         Reviewed by Antti Koivisto.
2737
2738         Change all the FooEvent::create() construction helpers to return Ref<FooEvent>
2739         instead of PassRefPtr<FooEvent>.
2740
2741         This allows the compiler to omit null checks at each call site, since we know
2742         that these functions always return valid objects.
2743
2744         * Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.h:
2745         (WebCore::WebKitPlaybackTargetAvailabilityEvent::create):
2746         * Modules/encryptedmedia/MediaKeyMessageEvent.h:
2747         (WebCore::MediaKeyMessageEvent::create):
2748         * Modules/encryptedmedia/MediaKeyNeededEvent.h:
2749         (WebCore::MediaKeyNeededEvent::create):
2750         * Modules/gamepad/GamepadEvent.h:
2751         (WebCore::GamepadEvent::create):
2752         * Modules/indexeddb/IDBVersionChangeEvent.h:
2753         (WebCore::IDBVersionChangeEvent::create):
2754         * Modules/indieui/UIRequestEvent.cpp:
2755         (WebCore::UIRequestEvent::create):
2756         * Modules/indieui/UIRequestEvent.h:
2757         * Modules/mediastream/MediaStreamEvent.cpp:
2758         (WebCore::MediaStreamEvent::create):
2759         * Modules/mediastream/MediaStreamEvent.h:
2760         * Modules/mediastream/MediaStreamTrackEvent.cpp:
2761         (WebCore::MediaStreamTrackEvent::create):
2762         * Modules/mediastream/MediaStreamTrackEvent.h:
2763         * Modules/mediastream/RTCDTMFToneChangeEvent.cpp:
2764         (WebCore::RTCDTMFToneChangeEvent::create):
2765         * Modules/mediastream/RTCDTMFToneChangeEvent.h:
2766         * Modules/mediastream/RTCDataChannelEvent.cpp:
2767         (WebCore::RTCDataChannelEvent::create):
2768         * Modules/mediastream/RTCDataChannelEvent.h:
2769         * Modules/mediastream/RTCIceCandidateEvent.cpp:
2770         (WebCore::RTCIceCandidateEvent::create):
2771         * Modules/mediastream/RTCIceCandidateEvent.h:
2772         * Modules/speech/SpeechSynthesisEvent.cpp:
2773         (WebCore::SpeechSynthesisEvent::create):
2774         * Modules/speech/SpeechSynthesisEvent.h:
2775         * Modules/webaudio/AudioProcessingEvent.cpp:
2776         (WebCore::AudioProcessingEvent::create):
2777         * Modules/webaudio/AudioProcessingEvent.h:
2778         * Modules/webaudio/OfflineAudioCompletionEvent.cpp:
2779         (WebCore::OfflineAudioCompletionEvent::create):
2780         * Modules/webaudio/OfflineAudioCompletionEvent.h:
2781         * Modules/websockets/CloseEvent.h:
2782         (WebCore::CloseEvent::create):
2783         * dom/AnimationEvent.h:
2784         * dom/AutocompleteErrorEvent.h:
2785         * dom/BeforeLoadEvent.h:
2786         * dom/BeforeTextInsertedEvent.h:
2787         * dom/BeforeUnloadEvent.h:
2788         * dom/ClipboardEvent.h:
2789         * dom/CompositionEvent.h:
2790         * dom/CustomEvent.h:
2791         * dom/DeviceMotionEvent.h:
2792         * dom/DeviceOrientationEvent.h:
2793         * dom/ErrorEvent.h:
2794         * dom/Event.h:
2795         (WebCore::Event::create):
2796         * dom/FocusEvent.h:
2797         * dom/HashChangeEvent.h:
2798         * dom/KeyboardEvent.h:
2799         * dom/MessageEvent.h:
2800         * dom/MouseEvent.cpp:
2801         (WebCore::MouseEvent::create):
2802         (WebCore::SimulatedMouseEvent::create):
2803         * dom/MouseEvent.h:
2804         (WebCore::MouseEvent::create):
2805         * dom/MutationEvent.h:
2806         * dom/OverflowEvent.h:
2807         * dom/PageTransitionEvent.h:
2808         * dom/PopStateEvent.cpp:
2809         (WebCore::PopStateEvent::create):
2810         * dom/PopStateEvent.h:
2811         * dom/ProgressEvent.h:
2812         (WebCore::ProgressEvent::create):
2813         * dom/TextEvent.cpp:
2814         (WebCore::TextEvent::create):
2815         (WebCore::TextEvent::createForPlainTextPaste):
2816         (WebCore::TextEvent::createForFragmentPaste):
2817         (WebCore::TextEvent::createForDrop):
2818         (WebCore::TextEvent::createForDictation):
2819         * dom/TextEvent.h:
2820         * dom/TouchEvent.h:
2821         * dom/TransitionEvent.h:
2822         * dom/UIEvent.h:
2823         (WebCore::UIEvent::create):
2824         * dom/WebKitAnimationEvent.h:
2825         * dom/WebKitTransitionEvent.h:
2826         * dom/WheelEvent.h:
2827         * html/MediaKeyEvent.h:
2828         * html/canvas/WebGLContextEvent.h:
2829         * html/track/TrackEvent.h:
2830         * storage/StorageEvent.cpp:
2831         (WebCore::StorageEvent::create):
2832         * storage/StorageEvent.h:
2833         * svg/SVGZoomEvent.h:
2834         (WebCore::SVGZoomEvent::create):
2835         * xml/XMLHttpRequestProgressEvent.h:
2836         (WebCore::XMLHttpRequestProgressEvent::create):
2837
2838 2014-12-14  Ryosuke Niwa  <rniwa@webkit.org>
2839
2840         REGRESSION(r160182): Fragment parser doesn't close a form element with a close tag
2841         https://bugs.webkit.org/show_bug.cgi?id=139561
2842
2843         Reviewed by Darin Adler.
2844
2845         The bug was caused by us not setting the form pointer in insertHTMLFormElement.
2846         Since we already avoid associating a form inside HTMLConstructionSite::createHTMLElement,
2847         we didn't need this code at all.
2848
2849         Fixed the bug by partially reverting r160182.
2850
2851         Test: fast/dom/dom-parse-close-form.html
2852
2853         * html/parser/HTMLConstructionSite.cpp:
2854         (WebCore::HTMLConstructionSite::insertHTMLFormElement):
2855         (WebCore::HTMLConstructionSite::insideTemplateElement): Deleted.
2856         * html/parser/HTMLConstructionSite.h:
2857
2858 2014-12-14  Andreas Kling  <akling@apple.com>
2859
2860         Fix build even more. Not a strong performance here.
2861
2862         * platform/graphics/Font.cpp:
2863         (WebCore::FontGlyphsCacheEntry::FontGlyphsCacheEntry):
2864         (WebCore::retrieveOrAddCachedFontGlyphs):
2865
2866 2014-12-14  Andreas Kling  <akling@apple.com>
2867
2868         Fix build. :-|
2869
2870         * css/CSSFunctionValue.cpp:
2871         (WebCore::CSSFunctionValue::CSSFunctionValue):
2872         * css/CSSFunctionValue.h:
2873
2874 2014-12-14  Andreas Kling  <akling@apple.com>
2875
2876         Minor follow-up tweaks suggested by Darin on bug 139587.
2877
2878         * css/CSSFunctionValue.h:
2879         (WebCore::CSSFunctionValue::create):
2880         * platform/graphics/Font.cpp:
2881         (WebCore::retrieveOrAddCachedFontGlyphs):
2882         (WebCore::FontGlyphsCacheEntry::FontGlyphsCacheEntry): Deleted.
2883         * rendering/RenderScrollbarPart.h:
2884
2885 2014-12-14  Andreas Kling  <akling@apple.com>
2886
2887         Replace PassRef with Ref/Ref&& across the board.
2888         <https://webkit.org/b/139587>
2889
2890         Reviewed by Darin Adler.
2891
2892         * Modules/battery/BatteryManager.cpp:
2893         (WebCore::BatteryManager::create):
2894         * Modules/battery/BatteryManager.h:
2895         * Modules/battery/BatteryStatus.cpp:
2896         (WebCore::BatteryStatus::create):
2897         * Modules/battery/BatteryStatus.h:
2898         * Modules/gamepad/GamepadButton.h:
2899         (WebCore::GamepadButton::create):
2900         * Modules/gamepad/NavigatorGamepad.cpp:
2901         (WebCore::NavigatorGamepad::gamepadFromPlatformGamepad):
2902         * Modules/gamepad/NavigatorGamepad.h:
2903         * Modules/gamepad/deprecated/GamepadList.h:
2904         (WebCore::GamepadList::create):
2905         * Modules/geolocation/Geolocation.cpp:
2906         (WebCore::Geolocation::create):
2907         * Modules/geolocation/Geolocation.h:
2908         (WebCore::Geolocation::GeoNotifier::create):
2909         * Modules/mediasource/MediaSource.cpp:
2910         (WebCore::MediaSource::setPrivateAndOpen):
2911         * Modules/mediasource/MediaSource.h:
2912         * Modules/mediasource/SourceBuffer.cpp:
2913         (WebCore::SourceBuffer::create):
2914         (WebCore::SourceBuffer::SourceBuffer):
2915         * Modules/mediasource/SourceBuffer.h:
2916         * Modules/mediastream/UserMediaClient.h:
2917         * Modules/mediastream/UserMediaController.h:
2918         (WebCore::UserMediaController::requestPermission):
2919         * Modules/notifications/Notification.cpp:
2920         (WebCore::Notification::create):
2921         * Modules/notifications/Notification.h:
2922         * Modules/notifications/NotificationCenter.cpp:
2923         (WebCore::NotificationCenter::create):
2924         * Modules/notifications/NotificationCenter.h:
2925         * Modules/plugins/PluginReplacement.h:
2926         * Modules/plugins/QuickTimePluginReplacement.h:
2927         * Modules/plugins/QuickTimePluginReplacement.mm:
2928         (WebCore::QuickTimePluginReplacement::createElementRenderer):
2929         * Modules/plugins/YouTubePluginReplacement.cpp:
2930         (WebCore::YouTubePluginReplacement::createElementRenderer):
2931         * Modules/plugins/YouTubePluginReplacement.h:
2932         * Modules/proximity/DeviceProximityEvent.h:
2933         (WebCore::DeviceProximityEvent::create):
2934         * WebCore.exp.in:
2935         * css/BasicShapeFunctions.cpp:
2936         (WebCore::valueForBasicShape):
2937         (WebCore::basicShapeForValue):
2938         * css/BasicShapeFunctions.h:
2939         * css/CSSAspectRatioValue.h:
2940         (WebCore::CSSAspectRatioValue::create):
2941         * css/CSSBorderImage.cpp:
2942         (WebCore::createBorderImageValue):
2943         * css/CSSBorderImage.h:
2944         * css/CSSBorderImageSliceValue.h:
2945         (WebCore::CSSBorderImageSliceValue::create):
2946         * css/CSSCalculationValue.cpp:
2947         (WebCore::determineCategory):
2948         * css/CSSCalculationValue.h:
2949         (WebCore::CSSCalcValue::CSSCalcValue):
2950         (WebCore::CSSCalcValue::createCalculationValue):
2951         * css/CSSCanvasValue.h:
2952         (WebCore::CSSCanvasValue::create):
2953         * css/CSSComputedStyleDeclaration.cpp:
2954         (WebCore::valueForImageSliceSide):
2955         (WebCore::valueForNinePieceImageSlice):
2956         (WebCore::valueForNinePieceImageQuad):
2957         (WebCore::valueForNinePieceImageRepeat):
2958         (WebCore::valueForNinePieceImage):
2959         (WebCore::zoomAdjustedPixelValue):
2960         (WebCore::zoomAdjustedNumberValue):
2961         (WebCore::zoomAdjustedPixelValueForLength):
2962         (WebCore::valueForReflection):
2963         (WebCore::createPositionListForLayer):
2964         (WebCore::percentageOrZoomAdjustedValue):
2965         (WebCore::autoOrZoomAdjustedValue):
2966         (WebCore::getBorderRadiusCornerValues):
2967         (WebCore::getBorderRadiusCornerValue):
2968         (WebCore::getBorderRadiusShorthandValue):
2969         (WebCore::matrixTransformValue):
2970         (WebCore::computedTransform):
2971         (WebCore::adjustLengthForZoom):
2972         (WebCore::ComputedStyleExtractor::valueForShadow):
2973         (WebCore::ComputedStyleExtractor::valueForFilter):
2974         (WebCore::specifiedValueForGridTrackBreadth):
2975         (WebCore::specifiedValueForGridTrackSize):
2976         (WebCore::valueForGridTrackList):
2977         (WebCore::valueForGridPosition):
2978         (WebCore::createTransitionPropertyValue):
2979         (WebCore::getTransitionPropertyValue):
2980         (WebCore::scrollSnapDestination):
2981         (WebCore::scrollSnapPoints):
2982         (WebCore::scrollSnapCoordinates):
2983         (WebCore::getDelayValue):
2984         (WebCore::getDurationValue):
2985         (WebCore::createTimingFunctionValue):
2986         (WebCore::getTimingFunctionValue):
2987         (WebCore::createLineBoxContainValue):
2988         (WebCore::valueForFamily):
2989         (WebCore::renderTextDecorationFlagsToCSSValue):
2990         (WebCore::renderTextDecorationStyleFlagsToCSSValue):
2991         (WebCore::renderTextDecorationSkipFlagsToCSSValue):
2992         (WebCore::renderEmphasisPositionFlagsToCSSValue):
2993         (WebCore::fillRepeatToCSSValue):
2994         (WebCore::fillSourceTypeToCSSValue):
2995         (WebCore::fillSizeToCSSValue):
2996         (WebCore::altTextToCSSValue):
2997         (WebCore::contentToCSSValue):
2998         (WebCore::fontFamilyFromStyle):
2999         (WebCore::lineHeightFromStyle):
3000         (WebCore::fontSizeFromStyle):
3001         (WebCore::fontStyleFromStyle):
3002         (WebCore::fontVariantFromStyle):
3003         (WebCore::fontWeightFromStyle):
3004         (WebCore::CSSComputedStyleDeclaration::copyProperties):
3005         (WebCore::shapePropertyValue):
3006         (WebCore::ComputedStyleExtractor::copyProperties):
3007         (WebCore::ComputedStyleExtractor::copyPropertiesInSet):
3008         * css/CSSComputedStyleDeclaration.h:
3009         * css/CSSCrossfadeValue.h:
3010         (WebCore::CSSCrossfadeValue::create):
3011         * css/CSSCursorImageValue.cpp:
3012         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
3013         * css/CSSCursorImageValue.h:
3014         (WebCore::CSSCursorImageValue::create):
3015         * css/CSSFilterImageValue.h:
3016         (WebCore::CSSFilterImageValue::create):
3017         * css/CSSFontFaceSrcValue.h:
3018         (WebCore::CSSFontFaceSrcValue::create):
3019         (WebCore::CSSFontFaceSrcValue::createLocal):
3020         * css/CSSFontFeatureValue.h:
3021         (WebCore::CSSFontFeatureValue::create):
3022         * css/CSSFontValue.h:
3023         (WebCore::CSSFontValue::create):
3024         * css/CSSFunctionValue.h:
3025         (WebCore::CSSFunctionValue::create):
3026         * css/CSSGradientValue.h:
3027         (WebCore::CSSLinearGradientValue::create):
3028         (WebCore::CSSLinearGradientValue::clone):
3029         (WebCore::CSSRadialGradientValue::create):
3030         (WebCore::CSSRadialGradientValue::clone):
3031         * css/CSSGridTemplateAreasValue.h:
3032         (WebCore::CSSGridTemplateAreasValue::create):
3033         * css/CSSImageSetValue.h:
3034         (WebCore::CSSImageSetValue::create):
3035         * css/CSSImageValue.h:
3036         (WebCore::CSSImageValue::create):
3037         * css/CSSInheritedValue.h:
3038         (WebCore::CSSInheritedValue::create):
3039         * css/CSSInitialValue.h:
3040         (WebCore::CSSInitialValue::createExplicit):
3041         (WebCore::CSSInitialValue::createImplicit):
3042         * css/CSSKeyframeRule.cpp:
3043         (WebCore::StyleKeyframe::StyleKeyframe):
3044         * css/CSSKeyframeRule.h:
3045         (WebCore::StyleKeyframe::create):
3046         * css/CSSKeyframesRule.h:
3047         (WebCore::StyleRuleKeyframes::create):
3048         (WebCore::StyleRuleKeyframes::copy):
3049         * css/CSSLineBoxContainValue.h:
3050         (WebCore::CSSLineBoxContainValue::create):
3051         * css/CSSParser.cpp:
3052         (WebCore::createPrimitiveValuePair):
3053         (WebCore::CSSParser::parseInlineStyleDeclaration):
3054         (WebCore::CSSParser::parseDeclaration):
3055         (WebCore::CSSParser::createStyleProperties):
3056         (WebCore::CSSParser::createPrimitiveNumericValue):
3057         (WebCore::CSSParser::createPrimitiveStringValue):
3058         (WebCore::CSSParser::addFillValue):
3059         (WebCore::CSSParser::addAnimationValue):
3060         * css/CSSParser.h:
3061         * css/CSSPrimitiveValue.cpp:
3062         (WebCore::CSSPrimitiveValue::formatNumberValue):
3063         * css/CSSPrimitiveValue.h:
3064         (WebCore::CSSPrimitiveValue::createIdentifier):
3065         (WebCore::CSSPrimitiveValue::createParserOperator):
3066         (WebCore::CSSPrimitiveValue::createColor):
3067         (WebCore::CSSPrimitiveValue::create):
3068         (WebCore::CSSPrimitiveValue::createAllowingMarginQuirk):
3069         * css/CSSReflectValue.h:
3070         (WebCore::CSSReflectValue::create):
3071         * css/CSSShadowValue.h:
3072         (WebCore::CSSShadowValue::create):
3073         * css/CSSStyleDeclaration.h:
3074         * css/CSSStyleSheet.cpp:
3075         (WebCore::CSSStyleSheet::create):
3076         (WebCore::CSSStyleSheet::createInline):
3077         (WebCore::CSSStyleSheet::CSSStyleSheet):
3078         * css/CSSStyleSheet.h:
3079         * css/CSSTimingFunctionValue.h:
3080         (WebCore::CSSCubicBezierTimingFunctionValue::create):
3081         (WebCore::CSSStepsTimingFunctionValue::create):
3082         * css/CSSUnicodeRangeValue.h:
3083         (WebCore::CSSUnicodeRangeValue::create):
3084         * css/CSSValue.cpp:
3085         (WebCore::TextCloneCSSValue::create):
3086         * css/CSSValueList.h:
3087         (WebCore::CSSValueList::createCommaSeparated):
3088         (WebCore::CSSValueList::createSpaceSeparated):
3089         (WebCore::CSSValueList::createSlashSeparated):
3090         (WebCore::CSSValueList::createFromParserValueList):
3091         (WebCore::CSSValueList::append):
3092         (WebCore::CSSValueList::prepend):
3093         * css/CSSValuePool.cpp:
3094         (WebCore::CSSValuePool::createIdentifierValue):
3095         (WebCore::CSSValuePool::createColorValue):
3096         (WebCore::CSSValuePool::createValue):
3097         (WebCore::CSSValuePool::createFontFamilyValue):
3098         * css/CSSValuePool.h:
3099         (WebCore::CSSValuePool::createInheritedValue):
3100         (WebCore::CSSValuePool::createImplicitInitialValue):
3101         (WebCore::CSSValuePool::createExplicitInitialValue):
3102         (WebCore::CSSValuePool::createValue):
3103         * css/PropertySetCSSStyleDeclaration.cpp:
3104         (WebCore::PropertySetCSSStyleDeclaration::copyProperties):
3105         * css/PropertySetCSSStyleDeclaration.h:
3106         * css/StyleProperties.cpp:
3107         (WebCore::ImmutableStyleProperties::create):
3108         (WebCore::StyleProperties::immutableCopyIfNeeded):
3109         (WebCore::StyleProperties::copyBlockProperties):
3110         (WebCore::StyleProperties::mutableCopy):
3111         (WebCore::StyleProperties::copyPropertiesInSet):
3112         (WebCore::MutableStyleProperties::create):
3113         * css/StyleProperties.h:
3114         * css/StyleResolver.cpp:
3115         (WebCore::StyleResolver::State::setStyle):
3116         (WebCore::StyleResolver::styleForElement):
3117         (WebCore::StyleResolver::styleForKeyframe):
3118         (WebCore::StyleResolver::styleForPage):
3119         (WebCore::StyleResolver::defaultStyleForElement):
3120         * css/StyleResolver.h:
3121         (WebCore::StyleResolver::State::takeStyle):
3122         (WebCore::StyleResolver::State::setParentStyle):
3123         * css/StyleRule.cpp:
3124         (WebCore::StyleRuleBase::copy):
3125         (WebCore::StyleRule::StyleRule):
3126         (WebCore::StyleRule::create):
3127         (WebCore::StyleRulePage::StyleRulePage):
3128         (WebCore::StyleRuleFontFace::StyleRuleFontFace):
3129         (WebCore::StyleRuleGroup::wrapperInsertRule):
3130         (WebCore::StyleRuleViewport::StyleRuleViewport):
3131         * css/StyleRule.h:
3132         (WebCore::StyleRule::create):
3133         (WebCore::StyleRule::copy):
3134         (WebCore::StyleRuleFontFace::create):
3135         (WebCore::StyleRuleFontFace::copy):
3136         (WebCore::StyleRulePage::create):
3137         (WebCore::StyleRulePage::copy):
3138         (WebCore::StyleRuleMedia::create):
3139         (WebCore::StyleRuleMedia::copy):
3140         (WebCore::StyleRuleSupports::create):
3141         (WebCore::StyleRuleSupports::copy):
3142         (WebCore::StyleRuleRegion::create):
3143         (WebCore::StyleRuleRegion::copy):
3144         (WebCore::StyleRuleViewport::create):
3145         (WebCore::StyleRuleViewport::copy):
3146         * css/StyleRuleImport.cpp:
3147         (WebCore::StyleRuleImport::create):
3148         * css/StyleRuleImport.h:
3149         * css/StyleSheetContents.h:
3150         (WebCore::StyleSheetContents::create):
3151         (WebCore::StyleSheetContents::copy):
3152         * css/WebKitCSSFilterValue.h:
3153         (WebCore::WebKitCSSFilterValue::create):
3154         * css/WebKitCSSResourceValue.h:
3155         (WebCore::WebKitCSSResourceValue::create):
3156         * css/WebKitCSSTransformValue.h:
3157         (WebCore::WebKitCSSTransformValue::create):
3158         * dom/ChildNodeList.h:
3159         * dom/ClassNodeList.cpp:
3160         (WebCore::ClassNodeList::create):
3161         * dom/ClassNodeList.h:
3162         * dom/Document.cpp:
3163         (WebCore::Document::styleForElementIgnoringPendingStylesheets):
3164         * dom/Document.h:
3165         * dom/DocumentSharedObjectPool.cpp:
3166         (WebCore::DocumentSharedObjectPool::cachedShareableElementDataWithAttributes):
3167         * dom/DocumentSharedObjectPool.h:
3168         * dom/DocumentStyleSheetCollection.cpp:
3169         (WebCore::DocumentStyleSheetCollection::addAuthorSheet):
3170         (WebCore::DocumentStyleSheetCollection::addUserSheet):
3171         * dom/DocumentStyleSheetCollection.h:
3172         * dom/Element.cpp:
3173         (WebCore::Element::createElementRenderer):
3174         * dom/Element.h:
3175         * dom/ElementData.cpp:
3176         (WebCore::ShareableElementData::createWithAttributes):
3177         (WebCore::UniqueElementData::create):
3178         (WebCore::ElementData::makeUniqueCopy):
3179         (WebCore::UniqueElementData::makeShareableCopy):
3180         * dom/ElementData.h:
3181         * dom/ElementRareData.h:
3182         (WebCore::ElementRareData::setComputedStyle):
3183         * dom/NameNodeList.h:
3184         * dom/NamedFlowCollection.cpp:
3185         (WebCore::NamedFlowCollection::ensureFlowWithName):
3186         * dom/NamedFlowCollection.h:
3187         * dom/NodeRareData.h:
3188         (WebCore::NodeListsNodeData::ensureChildNodeList):
3189         (WebCore::NodeListsNodeData::ensureEmptyChildNodeList):
3190         (WebCore::NodeListsNodeData::addCacheWithAtomicName):
3191         (WebCore::NodeListsNodeData::addCacheWithQualifiedName):
3192         (WebCore::NodeListsNodeData::addCachedCollection):
3193         * dom/PseudoElement.cpp:
3194         (WebCore::PseudoElement::didRecalcStyle):
3195         * dom/QualifiedName.h:
3196         (WebCore::QualifiedName::QualifiedNameImpl::create):
3197         * dom/TagNodeList.h:
3198         * html/BaseButtonInputType.cpp:
3199         (WebCore::BaseButtonInputType::createInputRenderer):
3200         * html/BaseButtonInputType.h:
3201         * html/FileInputType.cpp:
3202         (WebCore::FileInputType::createInputRenderer):
3203         * html/FileInputType.h:
3204         * html/HTMLAllCollection.cpp:
3205         (WebCore::HTMLAllCollection::create):
3206         * html/HTMLAllCollection.h:
3207         * html/HTMLAppletElement.cpp:
3208         (WebCore::HTMLAppletElement::createElementRenderer):
3209         * html/HTMLAppletElement.h:
3210         * html/HTMLBRElement.cpp:
3211         (WebCore::HTMLBRElement::createElementRenderer):
3212         * html/HTMLBRElement.h:
3213         * html/HTMLButtonElement.cpp:
3214         (WebCore::HTMLButtonElement::createElementRenderer):
3215         * html/HTMLButtonElement.h:
3216         * html/HTMLCanvasElement.cpp:
3217         (WebCore::HTMLCanvasElement::createElementRenderer):
3218         * html/HTMLCanvasElement.h:
3219         * html/HTMLCollection.cpp:
3220         (WebCore::HTMLCollection::create):
3221         * html/HTMLCollection.h:
3222         * html/HTMLDetailsElement.cpp:
3223         (WebCore::HTMLDetailsElement::createElementRenderer):
3224         * html/HTMLDetailsElement.h:
3225         * html/HTMLElement.cpp:
3226         (WebCore::HTMLElement::createElementRenderer):
3227         * html/HTMLElement.h:
3228         * html/HTMLFieldSetElement.cpp:
3229         (WebCore::HTMLFieldSetElement::createElementRenderer):
3230         * html/HTMLFieldSetElement.h:
3231         * html/HTMLFormControlsCollection.cpp:
3232         (WebCore::HTMLFormControlsCollection::create):
3233         * html/HTMLFormControlsCollection.h:
3234         * html/HTMLFrameElement.cpp:
3235         (WebCore::HTMLFrameElement::createElementRenderer):
3236         * html/HTMLFrameElement.h:
3237         * html/HTMLFrameSetElement.cpp:
3238         (WebCore::HTMLFrameSetElement::createElementRenderer):
3239         * html/HTMLFrameSetElement.h:
3240         * html/HTMLIFrameElement.cpp:
3241         (WebCore::HTMLIFrameElement::createElementRenderer):
3242         * html/HTMLIFrameElement.h:
3243         * html/HTMLImageElement.cpp:
3244         (WebCore::HTMLImageElement::createElementRenderer):
3245         * html/HTMLImageElement.h:
3246         * html/HTMLInputElement.cpp:
3247         (WebCore::HTMLInputElement::createElementRenderer):
3248         * html/HTMLInputElement.h:
3249         * html/HTMLLinkElement.cpp:
3250         (WebCore::HTMLLinkElement::setCSSStyleSheet):
3251         * html/HTMLMediaElement.cpp:
3252         (WebCore::HTMLMediaElement::parseAttribute):
3253         * html/HTMLMediaElement.h:
3254         * html/HTMLMeterElement.cpp:
3255         (WebCore::HTMLMeterElement::createElementRenderer):
3256         * html/HTMLMeterElement.h:
3257         * html/HTMLNameCollection.h:
3258         * html/HTMLOptionsCollection.cpp:
3259         (WebCore::HTMLOptionsCollection::create):
3260         * html/HTMLOptionsCollection.h:
3261         * html/HTMLPlugInElement.cpp:
3262         (WebCore::HTMLPlugInElement::createElementRenderer):
3263         * html/HTMLPlugInElement.h:
3264         * html/HTMLPlugInImageElement.cpp:
3265         (WebCore::HTMLPlugInImageElement::createElementRenderer):
3266         * html/HTMLPlugInImageElement.h:
3267         * html/HTMLProgressElement.cpp:
3268         (WebCore::HTMLProgressElement::createElementRenderer):
3269         * html/HTMLProgressElement.h:
3270         * html/HTMLSelectElement.cpp:
3271         (WebCore::HTMLSelectElement::createElementRenderer):
3272         * html/HTMLSelectElement.h:
3273         * html/HTMLSummaryElement.cpp:
3274         (WebCore::HTMLSummaryElement::createElementRenderer):
3275         * html/HTMLSummaryElement.h:
3276         * html/HTMLTableRowsCollection.cpp:
3277         (WebCore::HTMLTableRowsCollection::create):
3278         * html/HTMLTableRowsCollection.h:
3279         * html/HTMLTextAreaElement.cpp:
3280         (WebCore::HTMLTextAreaElement::createElementRenderer):
3281         * html/HTMLTextAreaElement.h:
3282         * html/HTMLVideoElement.cpp:
3283         (WebCore::HTMLVideoElement::createElementRenderer):
3284         * html/HTMLVideoElement.h:
3285         * html/HTMLWBRElement.cpp:
3286         (WebCore::HTMLWBRElement::createElementRenderer):
3287         * html/HTMLWBRElement.h:
3288         * html/HiddenInputType.cpp:
3289         (WebCore::HiddenInputType::createInputRenderer):
3290         * html/HiddenInputType.h:
3291         * html/ImageInputType.cpp:
3292         (WebCore::ImageInputType::createInputRenderer):
3293         * html/ImageInputType.h:
3294         * html/InputType.cpp:
3295         (WebCore::InputType::createInputRenderer):
3296         * html/InputType.h:
3297         * html/LabelsNodeList.h:
3298         * html/RadioNodeList.h:
3299         * html/RangeInputType.cpp:
3300         (WebCore::RangeInputType::createInputRenderer):
3301         * html/RangeInputType.h:
3302         * html/SearchInputType.cpp:
3303         (WebCore::SearchInputType::createInputRenderer):
3304         * html/SearchInputType.h:
3305         * html/TextFieldInputType.cpp:
3306         (WebCore::TextFieldInputType::createInputRenderer):
3307         * html/TextFieldInputType.h:
3308         * html/shadow/DetailsMarkerControl.cpp:
3309         (WebCore::DetailsMarkerControl::createElementRenderer):
3310         * html/shadow/DetailsMarkerControl.h:
3311         * html/shadow/MediaControlElements.cpp:
3312         (WebCore::MediaControlTimelineContainerElement::createElementRenderer):
3313         (WebCore::MediaControlVolumeSliderContainerElement::createElementRenderer):
3314         (WebCore::MediaControlTextTrackContainerElement::createElementRenderer):
3315         * html/shadow/MediaControlElements.h:
3316         * html/shadow/MeterShadowElement.cpp:
3317         (WebCore::MeterInnerElement::createElementRenderer):
3318         * html/shadow/MeterShadowElement.h:
3319         * html/shadow/ProgressShadowElement.cpp:
3320         (WebCore::ProgressInnerElement::createElementRenderer):
3321         * html/shadow/ProgressShadowElement.h:
3322         * html/shadow/SliderThumbElement.cpp:
3323         (WebCore::RenderSliderThumb::RenderSliderThumb):
3324         (WebCore::SliderThumbElement::createElementRenderer):
3325         (WebCore::SliderContainerElement::createElementRenderer):
3326         * html/shadow/SliderThumbElement.h:
3327         * html/shadow/TextControlInnerElements.cpp:
3328         (WebCore::TextControlInnerContainer::createElementRenderer):
3329         (WebCore::TextControlInnerTextElement::createElementRenderer):
3330         * html/shadow/TextControlInnerElements.h:
3331         * html/shadow/mac/ImageControlsButtonElementMac.cpp:
3332         (WebCore::RenderImageControlsButton::RenderImageControlsButton):
3333         (WebCore::ImageControlsButtonElementMac::createElementRenderer):
3334         * html/shadow/mac/ImageControlsButtonElementMac.h:
3335         * html/shadow/mac/ImageControlsRootElementMac.cpp:
3336         (WebCore::RenderImageControls::RenderImageControls):
3337         (WebCore::ImageControlsRootElementMac::createElementRenderer):
3338         * html/shadow/mac/ImageControlsRootElementMac.h:
3339         * html/track/VTTCue.cpp:
3340         (WebCore::VTTCueBox::createElementRenderer):
3341         * html/track/VTTCue.h:
3342         * loader/cache/CachedCSSStyleSheet.cpp:
3343         (WebCore::CachedCSSStyleSheet::saveParsedStyleSheet):
3344         * loader/cache/CachedCSSStyleSheet.h:
3345         * loader/cache/CachedResourceLoader.h:
3346         (WebCore::CachedResourceLoader::create):
3347         * mathml/MathMLInlineContainerElement.cpp:
3348         (WebCore::MathMLInlineContainerElement::createElementRenderer):
3349         * mathml/MathMLInlineContainerElement.h:
3350         * mathml/MathMLMathElement.cpp:
3351         (WebCore::MathMLMathElement::createElementRenderer):
3352         * mathml/MathMLMathElement.h:
3353         * mathml/MathMLMencloseElement.cpp:
3354         (WebCore::MathMLMencloseElement::createElementRenderer):
3355         * mathml/MathMLMencloseElement.h:
3356         * mathml/MathMLSelectElement.cpp:
3357         (WebCore::MathMLSelectElement::createElementRenderer):
3358         * mathml/MathMLSelectElement.h:
3359         * mathml/MathMLTextElement.cpp:
3360         (WebCore::MathMLTextElement::createElementRenderer):
3361         * mathml/MathMLTextElement.h:
3362         * page/Page.cpp:
3363         (WebCore::Page::setStorageNamespaceProvider):
3364         (WebCore::Page::setVisitedLinkStore):
3365         * page/Page.h:
3366         * page/UserMessageHandler.h:
3367         (WebCore::UserMessageHandler::create):
3368         * page/UserMessageHandlersNamespace.h:
3369         (WebCore::UserMessageHandlersNamespace::create):
3370         * page/animation/AnimationController.cpp:
3371         (WebCore::AnimationControllerPrivate::addElementChangeToDispatch):
3372         (WebCore::AnimationController::updateAnimations):
3373         * page/animation/AnimationController.h:
3374         * page/animation/AnimationControllerPrivate.h:
3375         * page/animation/CompositeAnimation.cpp:
3376         (WebCore::CompositeAnimation::animate):
3377         * page/animation/CompositeAnimation.h:
3378         * platform/CalculationValue.cpp:
3379         (WebCore::CalculationValue::create):
3380         * platform/CalculationValue.h:
3381         * platform/Length.cpp:
3382         (WebCore::CalculationValueMap::insert):
3383         (WebCore::Length::Length):
3384         * platform/Length.h:
3385         * platform/graphics/Font.cpp:
3386         (WebCore::FontGlyphsCacheEntry::FontGlyphsCacheEntry):
3387         (WebCore::retrieveOrAddCachedFontGlyphs):
3388         * platform/graphics/FontGlyphs.h:
3389         (WebCore::FontGlyphs::create):
3390         (WebCore::FontGlyphs::createForPlatformFont):
3391         * platform/graphics/Gradient.h:
3392         (WebCore::Gradient::create):
3393         * platform/graphics/GraphicsContext.cpp:
3394         (WebCore::GraphicsContext::setStrokePattern):
3395         (WebCore::GraphicsContext::setFillPattern):
3396         (WebCore::GraphicsContext::setStrokeGradient):
3397         (WebCore::GraphicsContext::setFillGradient):
3398         * platform/graphics/GraphicsContext.h:
3399         * platform/graphics/MediaSourcePrivateClient.h:
3400         * platform/graphics/Pattern.cpp:
3401         (WebCore::Pattern::create):
3402         * platform/graphics/Pattern.h:
3403         * platform/mac/SerializedPlatformRepresentationMac.h:
3404         * platform/mac/SerializedPlatformRepresentationMac.mm:
3405         (WebCore::SerializedPlatformRepresentationMac::create):
3406         * platform/mock/UserMediaClientMock.h:
3407         (WebCore::UserMediaClientRequestNotifier::UserMediaClientRequestNotifier):
3408         * rendering/ClipPathOperation.h:
3409         * rendering/RenderBlock.cpp:
3410         (WebCore::RenderBlock::RenderBlock):
3411         * rendering/RenderBlock.h:
3412         * rendering/RenderBlockFlow.cpp:
3413         (WebCore::RenderBlockFlow::RenderBlockFlow):
3414         * rendering/RenderBlockFlow.h:
3415         * rendering/RenderBox.cpp:
3416         (WebCore::RenderBox::RenderBox):
3417         * rendering/RenderBox.h:
3418         * rendering/RenderBoxModelObject.cpp:
3419         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
3420         * rendering/RenderBoxModelObject.h:
3421         * rendering/RenderButton.cpp:
3422         (WebCore::RenderButton::RenderButton):
3423         * rendering/RenderButton.h:
3424         * rendering/RenderDeprecatedFlexibleBox.cpp:
3425         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
3426         * rendering/RenderDeprecatedFlexibleBox.h:
3427         * rendering/RenderDetailsMarker.cpp:
3428         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
3429         * rendering/RenderDetailsMarker.h:
3430         * rendering/RenderElement.cpp:
3431         (WebCore::RenderElement::RenderElement):
3432         (WebCore::RenderElement::createFor):
3433         (WebCore::RenderElement::setStyle):
3434         * rendering/RenderElement.h:
3435         (WebCore::RenderElement::setStyleInternal):
3436         (WebCore::RenderElement::setAnimatableStyle):
3437         * rendering/RenderEmbeddedObject.cpp:
3438         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
3439         (WebCore::RenderEmbeddedObject::createForApplet):
3440         * rendering/RenderEmbeddedObject.h:
3441         * rendering/RenderFieldset.cpp:
3442         (WebCore::RenderFieldset::RenderFieldset):
3443         * rendering/RenderFieldset.h:
3444         * rendering/RenderFileUploadControl.cpp:
3445         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
3446         * rendering/RenderFileUploadControl.h:
3447         * rendering/RenderFlexibleBox.cpp:
3448         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
3449         * rendering/RenderFlexibleBox.h:
3450         * rendering/RenderFlowThread.cpp:
3451         (WebCore::RenderFlowThread::RenderFlowThread):
3452         (WebCore::RenderFlowThread::createFlowThreadStyle):
3453         * rendering/RenderFlowThread.h:
3454         * rendering/RenderFrame.cpp:
3455         (WebCore::RenderFrame::RenderFrame):
3456         * rendering/RenderFrame.h:
3457         * rendering/RenderFrameBase.cpp:
3458         (WebCore::RenderFrameBase::RenderFrameBase):
3459         * rendering/RenderFrameBase.h:
3460         * rendering/RenderFrameSet.cpp:
3461         (WebCore::RenderFrameSet::RenderFrameSet):
3462         * rendering/RenderFrameSet.h:
3463         * rendering/RenderFullScreen.cpp:
3464         (WebCore::RenderFullScreen::RenderFullScreen):
3465         (WebCore::createFullScreenStyle):
3466         (WebCore::RenderFullScreen::createPlaceholder):
3467         * rendering/RenderFullScreen.h:
3468         * rendering/RenderGrid.cpp:
3469         (WebCore::RenderGrid::RenderGrid):
3470         * rendering/RenderGrid.h:
3471         * rendering/RenderHTMLCanvas.cpp:
3472         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
3473         * rendering/RenderHTMLCanvas.h:
3474         * rendering/RenderIFrame.cpp:
3475         (WebCore::RenderIFrame::RenderIFrame):
3476         * rendering/RenderIFrame.h:
3477         * rendering/RenderImage.cpp:
3478         (WebCore::RenderImage::RenderImage):
3479         * rendering/RenderImage.h:
3480         * rendering/RenderInline.cpp:
3481         (WebCore::RenderInline::RenderInline):
3482         * rendering/RenderInline.h:
3483         * rendering/RenderLayer.cpp:
3484         (WebCore::RenderLayer::calculateClipRects):
3485         * rendering/RenderLayer.h:
3486         * rendering/RenderLayerModelObject.cpp:
3487         (WebCore::RenderLayerModelObject::RenderLayerModelObject):
3488         * rendering/RenderLayerModelObject.h:
3489         * rendering/RenderLineBreak.cpp:
3490         (WebCore::RenderLineBreak::RenderLineBreak):
3491         * rendering/RenderLineBreak.h:
3492         * rendering/RenderListBox.cpp:
3493         (WebCore::RenderListBox::RenderListBox):
3494         * rendering/RenderListBox.h:
3495         * rendering/RenderListItem.cpp:
3496         (WebCore::RenderListItem::RenderListItem):
3497         * rendering/RenderListItem.h:
3498         * rendering/RenderListMarker.cpp:
3499         (WebCore::RenderListMarker::RenderListMarker):
3500         * rendering/RenderListMarker.h:
3501         * rendering/RenderMedia.cpp:
3502         (WebCore::RenderMedia::RenderMedia):
3503         * rendering/RenderMedia.h:
3504         * rendering/RenderMediaControlElements.cpp:
3505         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
3506         (WebCore::RenderMediaControlTimelineContainer::RenderMediaControlTimelineContainer):
3507         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
3508         * rendering/RenderMediaControlElements.h:
3509         * rendering/RenderMenuList.cpp:
3510         (WebCore::RenderMenuList::RenderMenuList):
3511         * rendering/RenderMenuList.h:
3512         * rendering/RenderMeter.cpp:
3513         (WebCore::RenderMeter::RenderMeter):
3514         * rendering/RenderMeter.h:
3515         * rendering/RenderMultiColumnFlowThread.cpp:
3516         (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
3517         * rendering/RenderMultiColumnFlowThread.h:
3518         * rendering/RenderMultiColumnSet.cpp:
3519         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
3520         * rendering/RenderMultiColumnSet.h:
3521         * rendering/RenderMultiColumnSpannerPlaceholder.cpp:
3522         (WebCore::RenderMultiColumnSpannerPlaceholder::RenderMultiColumnSpannerPlaceholder):
3523         * rendering/RenderMultiColumnSpannerPlaceholder.h:
3524         * rendering/RenderNamedFlowFragment.cpp:
3525         (WebCore::RenderNamedFlowFragment::RenderNamedFlowFragment):
3526         (WebCore::RenderNamedFlowFragment::createStyle):
3527         * rendering/RenderNamedFlowFragment.h:
3528         * rendering/RenderNamedFlowThread.cpp:
3529         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
3530         * rendering/RenderNamedFlowThread.h:
3531         * rendering/RenderProgress.cpp:
3532         (WebCore::RenderProgress::RenderProgress):
3533         * rendering/RenderProgress.h:
3534         * rendering/RenderQuote.cpp:
3535         (WebCore::RenderQuote::RenderQuote):
3536         * rendering/RenderQuote.h:
3537         * rendering/RenderRegion.cpp:
3538         (WebCore::RenderRegion::RenderRegion):
3539         * rendering/RenderRegion.h:
3540         * rendering/RenderRegionSet.cpp:
3541         (WebCore::RenderRegionSet::RenderRegionSet):
3542         * rendering/RenderRegionSet.h:
3543         * rendering/RenderReplaced.cpp:
3544         (WebCore::RenderReplaced::RenderReplaced):
3545         * rendering/RenderReplaced.h:
3546         * rendering/RenderReplica.cpp:
3547         (WebCore::RenderReplica::RenderReplica):
3548         * rendering/RenderReplica.h:
3549         * rendering/RenderRuby.cpp:
3550         (WebCore::RenderRubyAsInline::RenderRubyAsInline):
3551         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
3552         * rendering/RenderRuby.h:
3553         * rendering/RenderRubyBase.cpp:
3554         (WebCore::RenderRubyBase::RenderRubyBase):
3555         * rendering/RenderRubyBase.h:
3556         * rendering/RenderRubyRun.cpp:
3557         (WebCore::RenderRubyRun::RenderRubyRun):
3558         * rendering/RenderRubyRun.h:
3559         * rendering/RenderRubyText.cpp:
3560         (WebCore::RenderRubyText::RenderRubyText):
3561         * rendering/RenderRubyText.h:
3562         * rendering/RenderScrollbarPart.cpp:
3563         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
3564         * rendering/RenderScrollbarPart.h:
3565         * rendering/RenderSearchField.cpp:
3566         (WebCore::RenderSearchField::RenderSearchField):
3567         * rendering/RenderSearchField.h:
3568         * rendering/RenderSlider.cpp:
3569         (WebCore::RenderSlider::RenderSlider):
3570         * rendering/RenderSlider.h:
3571         * rendering/RenderSnapshottedPlugIn.cpp:
3572         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
3573         * rendering/RenderSnapshottedPlugIn.h:
3574         * rendering/RenderTable.cpp:
3575         (WebCore::RenderTable::RenderTable):
3576         * rendering/RenderTable.h:
3577         * rendering/RenderTableCaption.cpp:
3578         (WebCore::RenderTableCaption::RenderTableCaption):
3579         * rendering/RenderTableCaption.h:
3580         * rendering/RenderTableCell.cpp:
3581         (WebCore::RenderTableCell::RenderTableCell):
3582         * rendering/RenderTableCell.h:
3583         * rendering/RenderTableCol.cpp:
3584         (WebCore::RenderTableCol::RenderTableCol):
3585         * rendering/RenderTableCol.h:
3586         * rendering/RenderTableRow.cpp:
3587         (WebCore::RenderTableRow::RenderTableRow):
3588         * rendering/RenderTableRow.h:
3589         * rendering/RenderTableSection.cpp:
3590         (WebCore::RenderTableSection::RenderTableSection):
3591         * rendering/RenderTableSection.h:
3592         * rendering/RenderTextControl.cpp:
3593         (WebCore::RenderTextControl::RenderTextControl):
3594         * rendering/RenderTextControl.h:
3595         * rendering/RenderTextControlMultiLine.cpp:
3596         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
3597         (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
3598         * rendering/RenderTextControlMultiLine.h:
3599         * rendering/RenderTextControlSingleLine.cpp:
3600         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
3601         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
3602         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
3603         * rendering/RenderTextControlSingleLine.h:
3604         * rendering/RenderVTTCue.cpp:
3605         (WebCore::RenderVTTCue::RenderVTTCue):
3606         * rendering/RenderVTTCue.h:
3607         * rendering/RenderVideo.cpp:
3608         (WebCore::RenderVideo::RenderVideo):
3609         * rendering/RenderVideo.h:
3610         * rendering/RenderView.cpp:
3611         (WebCore::RenderView::RenderView):
3612         * rendering/RenderView.h:
3613         * rendering/RenderWidget.cpp:
3614         (WebCore::RenderWidget::RenderWidget):
3615         * rendering/RenderWidget.h:
3616         * rendering/mathml/RenderMathMLBlock.cpp:
3617         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
3618         * rendering/mathml/RenderMathMLBlock.h:
3619         * rendering/mathml/RenderMathMLFenced.cpp:
3620         (WebCore::RenderMathMLFenced::RenderMathMLFenced):
3621         * rendering/mathml/RenderMathMLFenced.h:
3622         * rendering/mathml/RenderMathMLFraction.cpp:
3623         (WebCore::RenderMathMLFraction::RenderMathMLFraction):
3624         * rendering/mathml/RenderMathMLFraction.h:
3625         * rendering/mathml/RenderMathMLMath.cpp:
3626         (WebCore::RenderMathMLMath::RenderMathMLMath):
3627         * rendering/mathml/RenderMathMLMath.h:
3628         * rendering/mathml/RenderMathMLMenclose.cpp:
3629         (WebCore::RenderMathMLMenclose::RenderMathMLMenclose):
3630         * rendering/mathml/RenderMathMLMenclose.h:
3631         * rendering/mathml/RenderMathMLOperator.cpp:
3632         (WebCore::RenderMathMLOperator::RenderMathMLOperator):
3633         * rendering/mathml/RenderMathMLOperator.h:
3634         * rendering/mathml/RenderMathMLRadicalOperator.cpp:
3635         (WebCore::RenderMathMLRadicalOperator::RenderMathMLRadicalOperator):
3636         * rendering/mathml/RenderMathMLRadicalOperator.h:
3637         * rendering/mathml/RenderMathMLRoot.cpp:
3638         (WebCore::RenderMathMLRoot::RenderMathMLRoot):
3639         * rendering/mathml/RenderMathMLRoot.h:
3640         * rendering/mathml/RenderMathMLRow.cpp:
3641         (WebCore::RenderMathMLRow::RenderMathMLRow):
3642         * rendering/mathml/RenderMathMLRow.h:
3643         * rendering/mathml/RenderMathMLScripts.cpp:
3644         (WebCore::RenderMathMLScripts::RenderMathMLScripts):
3645         * rendering/mathml/RenderMathMLScripts.h:
3646         * rendering/mathml/RenderMathMLSpace.cpp:
3647         (WebCore::RenderMathMLSpace::RenderMathMLSpace):
3648         * rendering/mathml/RenderMathMLSpace.h:
3649         * rendering/mathml/RenderMathMLSquareRoot.cpp:
3650         (WebCore::RenderMathMLSquareRoot::RenderMathMLSquareRoot):
3651         * rendering/mathml/RenderMathMLSquareRoot.h:
3652         * rendering/mathml/RenderMathMLToken.cpp:
3653         (WebCore::RenderMathMLToken::RenderMathMLToken):
3654         * rendering/mathml/RenderMathMLToken.h:
3655         * rendering/mathml/RenderMathMLUnderOver.cpp:
3656         (WebCore::RenderMathMLUnderOver::RenderMathMLUnderOver):
3657         * rendering/mathml/RenderMathMLUnderOver.h:
3658         * rendering/style/BasicShapes.cpp:
3659         (WebCore::BasicShapeCircle::blend):
3660         (WebCore::BasicShapeEllipse::blend):
3661         (WebCore::BasicShapePolygon::blend):
3662         (WebCore::BasicShapeInset::blend):
3663         * rendering/style/BasicShapes.h:
3664         * rendering/style/DataRef.h:
3665         (WebCore::DataRef::DataRef):
3666         * rendering/style/NinePieceImage.cpp:
3667         (WebCore::NinePieceImageData::copy):
3668         * rendering/style/NinePieceImage.h:
3669         (WebCore::NinePieceImageData::create):
3670         * rendering/style/RenderStyle.cpp:
3671         (WebCore::RenderStyle::create):
3672         (WebCore::RenderStyle::createDefaultStyle):
3673         (WebCore::RenderStyle::createAnonymousStyleWithDisplay):
3674         (WebCore::RenderStyle::clone):
3675         (WebCore::RenderStyle::createStyleInheritingFromPseudoStyle):
3676         * rendering/style/RenderStyle.h:
3677         * rendering/style/SVGRenderStyle.cpp:
3678         (WebCore::SVGRenderStyle::createDefaultStyle):
3679         (WebCore::SVGRenderStyle::copy):
3680         * rendering/style/SVGRenderStyle.h:
3681         (WebCore::SVGRenderStyle::create):
3682         * rendering/style/SVGRenderStyleDefs.cpp:
3683         (WebCore::StyleFillData::copy):
3684         (WebCore::StyleStrokeData::copy):
3685         (WebCore::StyleStopData::copy):
3686         (WebCore::StyleTextData::copy):
3687         (WebCore::StyleMiscData::copy):
3688         (WebCore::StyleShadowSVGData::copy):
3689         (WebCore::StyleResourceData::copy):
3690         (WebCore::StyleInheritedResourceData::copy):
3691         (WebCore::StyleLayoutData::copy):
3692         * rendering/style/SVGRenderStyleDefs.h:
3693         (WebCore::StyleFillData::create):
3694         (WebCore::StyleStrokeData::create):
3695         (WebCore::StyleStopData::create):
3696         (WebCore::StyleTextData::create):
3697         (WebCore::StyleMiscData::create):
3698         (WebCore::StyleShadowSVGData::create):
3699         (WebCore::StyleResourceData::create):
3700         (WebCore::StyleInheritedResourceData::create):
3701         (WebCore::StyleLayoutData::create):
3702         * rendering/style/StyleBackgroundData.cpp:
3703         (WebCore::StyleBackgroundData::copy):
3704         * rendering/style/StyleBackgroundData.h:
3705         (WebCore::StyleBackgroundData::create):
3706         * rendering/style/StyleBoxData.cpp:
3707         (WebCore::StyleBoxData::copy):
3708         * rendering/style/StyleBoxData.h:
3709         (WebCore::StyleBoxData::create):
3710         * rendering/style/StyleDeprecatedFlexibleBoxData.cpp:
3711         (WebCore::StyleDeprecatedFlexibleBoxData::copy):
3712         * rendering/style/StyleDeprecatedFlexibleBoxData.h:
3713         (WebCore::StyleDeprecatedFlexibleBoxData::create):
3714         * rendering/style/StyleFilterData.cpp:
3715         (WebCore::StyleFilterData::copy):
3716         * rendering/style/StyleFilterData.h:
3717         (WebCore::StyleFilterData::create):
3718         * rendering/style/StyleFlexibleBoxData.cpp:
3719         (WebCore::StyleFlexibleBoxData::copy):
3720         * rendering/style/StyleFlexibleBoxData.h:
3721         (WebCore::StyleFlexibleBoxData::create):
3722         * rendering/style/StyleGeneratedImage.cpp:
3723         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
3724         * rendering/style/StyleGeneratedImage.h:
3725         * rendering/style/StyleGridData.cpp:
3726         (WebCore::StyleGridData::copy):
3727         * rendering/style/StyleGridData.h:
3728         (WebCore::StyleGridData::create):
3729         * rendering/style/StyleGridItemData.cpp:
3730         (WebCore::StyleGridItemData::copy):
3731         * rendering/style/StyleGridItemData.h:
3732         (WebCore::StyleGridItemData::create):
3733         * rendering/style/StyleInheritedData.cpp:
3734         (WebCore::StyleInheritedData::copy):
3735         * rendering/style/StyleInheritedData.h:
3736         (WebCore::StyleInheritedData::create):
3737         * rendering/style/StyleMarqueeData.cpp:
3738         (WebCore::StyleMarqueeData::copy):
3739         * rendering/style/StyleMarqueeData.h:
3740         (WebCore::StyleMarqueeData::create):
3741         * rendering/style/StyleMultiColData.cpp:
3742         (WebCore::StyleMultiColData::copy):
3743         * rendering/style/StyleMultiColData.h:
3744         (WebCore::StyleMultiColData::create):
3745         * rendering/style/StyleRareInheritedData.cpp:
3746         (WebCore::StyleRareInheritedData::copy):
3747         * rendering/style/StyleRareInheritedData.h:
3748         (WebCore::StyleRareInheritedData::create):
3749         * rendering/style/StyleRareNonInheritedData.cpp:
3750         (WebCore::StyleRareNonInheritedData::copy):
3751         * rendering/style/StyleRareNonInheritedData.h:
3752         (WebCore::StyleRareNonInheritedData::create):
3753         * rendering/style/StyleScrollSnapPoints.cpp:
3754         (WebCore::StyleScrollSnapPoints::copy):
3755         * rendering/style/StyleScrollSnapPoints.h:
3756         (WebCore::StyleScrollSnapPoints::create):
3757         * rendering/style/StyleSurroundData.cpp:
3758         (WebCore::StyleSurroundData::copy):
3759         * rendering/style/StyleSurroundData.h:
3760         (WebCore::StyleSurroundData::create):
3761         * rendering/style/StyleTransformData.cpp:
3762         (WebCore::StyleTransformData::copy):
3763         * rendering/style/StyleTransformData.h:
3764         (WebCore::StyleTransformData::create):
3765         * rendering/style/StyleVisualData.cpp:
3766         (WebCore::StyleVisualData::copy):
3767         * rendering/style/StyleVisualData.h:
3768         (WebCore::StyleVisualData::create):
3769         * rendering/svg/RenderSVGBlock.cpp:
3770         (WebCore::RenderSVGBlock::RenderSVGBlock):
3771         * rendering/svg/RenderSVGBlock.h:
3772         * rendering/svg/RenderSVGContainer.cpp:
3773         (WebCore::RenderSVGContainer::RenderSVGContainer):
3774         * rendering/svg/RenderSVGContainer.h:
3775         * rendering/svg/RenderSVGEllipse.cpp:
3776         (WebCore::RenderSVGEllipse::RenderSVGEllipse):
3777         * rendering/svg/RenderSVGEllipse.h:
3778         * rendering/svg/RenderSVGForeignObject.cpp:
3779         (WebCore::RenderSVGForeignObject::RenderSVGForeignObject):
3780         * rendering/svg/RenderSVGForeignObject.h:
3781         * rendering/svg/RenderSVGGradientStop.cpp:
3782         (WebCore::RenderSVGGradientStop::RenderSVGGradientStop):
3783         * rendering/svg/RenderSVGGradientStop.h:
3784         * rendering/svg/RenderSVGHiddenContainer.cpp:
3785         (WebCore::RenderSVGHiddenContainer::RenderSVGHiddenContainer):
3786         * rendering/svg/RenderSVGHiddenContainer.h:
3787         * rendering/svg/RenderSVGImage.cpp:
3788         (WebCore::RenderSVGImage::RenderSVGImage):
3789         * rendering/svg/RenderSVGImage.h:
3790         * rendering/svg/RenderSVGInline.cpp:
3791         (WebCore::RenderSVGInline::RenderSVGInline):
3792         * rendering/svg/RenderSVGInline.h:
3793         * rendering/svg/RenderSVGModelObject.cpp:
3794         (WebCore::RenderSVGModelObject::RenderSVGModelObject):
3795         * rendering/svg/RenderSVGModelObject.h:
3796         * rendering/svg/RenderSVGPath.cpp:
3797         (WebCore::RenderSVGPath::RenderSVGPath):
3798         * rendering/svg/RenderSVGPath.h:
3799         * rendering/svg/RenderSVGRect.cpp:
3800         (WebCore::RenderSVGRect::RenderSVGRect):
3801         * rendering/svg/RenderSVGRect.h:
3802         * rendering/svg/RenderSVGResourceClipper.cpp:
3803         (WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
3804         * rendering/svg/RenderSVGResourceClipper.h:
3805         * rendering/svg/RenderSVGResourceContainer.cpp:
3806         (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer):
3807         * rendering/svg/RenderSVGResourceContainer.h:
3808         * rendering/svg/RenderSVGResourceFilter.cpp:
3809         (WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter):
3810         * rendering/svg/RenderSVGResourceFilter.h:
3811         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3812         (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
3813         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
3814         * rendering/svg/RenderSVGResourceGradient.cpp:
3815         (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
3816         * rendering/svg/RenderSVGResourceGradient.h:
3817         * rendering/svg/RenderSVGResourceLinearGradient.cpp:
3818         (WebCore::RenderSVGResourceLinearGradient::RenderSVGResourceLinearGradient):
3819         * rendering/svg/RenderSVGResourceLinearGradient.h:
3820         * rendering/svg/RenderSVGResourceMarker.cpp:
3821         (WebCore::RenderSVGResourceMarker::RenderSVGResourceMarker):
3822         * rendering/svg/RenderSVGResourceMarker.h:
3823         * rendering/svg/RenderSVGResourceMasker.cpp:
3824         (WebCore::RenderSVGResourceMasker::RenderSVGResourceMasker):
3825         * rendering/svg/RenderSVGResourceMasker.h:
3826         * rendering/svg/RenderSVGResourcePattern.cpp:
3827         (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
3828         * rendering/svg/RenderSVGResourcePattern.h:
3829         * rendering/svg/RenderSVGResourceRadialGradient.cpp:
3830         (WebCore::RenderSVGResourceRadialGradient::RenderSVGResourceRadialGradient):
3831         * rendering/svg/RenderSVGResourceRadialGradient.h:
3832         * rendering/svg/RenderSVGRoot.cpp:
3833         (WebCore::RenderSVGRoot::RenderSVGRoot):
3834         * rendering/svg/RenderSVGRoot.h:
3835         * rendering/svg/RenderSVGShape.cpp:
3836         (WebCore::RenderSVGShape::RenderSVGShape):
3837         * rendering/svg/RenderSVGShape.h:
3838         * rendering/svg/RenderSVGTSpan.h:
3839         * rendering/svg/RenderSVGText.cpp:
3840         (WebCore::RenderSVGText::RenderSVGText):
3841         * rendering/svg/RenderSVGText.h:
3842         * rendering/svg/RenderSVGTextPath.cpp:
3843         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
3844         * rendering/svg/RenderSVGTextPath.h:
3845         * rendering/svg/RenderSVGTransformableContainer.cpp:
3846         (WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
3847         * rendering/svg/RenderSVGTransformableContainer.h:
3848         * rendering/svg/RenderSVGViewportContainer.cpp:
3849         (WebCore::RenderSVGViewportContainer::RenderSVGViewportContainer):
3850         * rendering/svg/RenderSVGViewportContainer.h:
3851         * rendering/svg/SVGTextRunRenderingContext.h:
3852         * style/StyleResolveForDocument.cpp:
3853         (WebCore::Style::resolveForDocument):
3854         * style/StyleResolveForDocument.h:
3855         * style/StyleResolveTree.cpp:
3856         (WebCore::Style::styleForElement):
3857         * svg/SVGAElement.cpp:
3858         (WebCore::SVGAElement::createElementRenderer):
3859         * svg/SVGAElement.h:
3860         * svg/SVGAltGlyphElement.cpp:
3861         (WebCore::SVGAltGlyphElement::createElementRenderer):
3862         * svg/SVGAltGlyphElement.h:
3863         * svg/SVGCircleElement.cpp:
3864         (WebCore::SVGCircleElement::createElementRenderer):
3865         * svg/SVGCircleElement.h:
3866         * svg/SVGClipPathElement.cpp:
3867         (WebCore::SVGClipPathElement::createElementRenderer):
3868         * svg/SVGClipPathElement.h:
3869         * svg/SVGColor.h:
3870         (WebCore::SVGColor::createFromString):
3871         (WebCore::SVGColor::createFromColor):
3872         (WebCore::SVGColor::createCurrentColor):
3873         * svg/SVGDefsElement.cpp:
3874         (WebCore::SVGDefsElement::createElementRenderer):
3875         * svg/SVGDefsElement.h:
3876         * svg/SVGEllipseElement.cpp:
3877         (WebCore::SVGEllipseElement::createElementRenderer):
3878         * svg/SVGEllipseElement.h:
3879         * svg/SVGFilterElement.cpp:
3880         (WebCore::SVGFilterElement::createElementRenderer):
3881         * svg/SVGFilterElement.h:
3882         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3883         (WebCore::SVGFilterPrimitiveStandardAttributes::createElementRenderer):
3884         * svg/SVGFilterPrimitiveStandardAttributes.h:
3885         * svg/SVGFontFaceNameElement.cpp:
3886         (WebCore::SVGFontFaceNameElement::srcValue):
3887         * svg/SVGFontFaceNameElement.h:
3888         * svg/SVGFontFaceUriElement.cpp:
3889         (WebCore::SVGFontFaceUriElement::srcValue):
3890         * svg/SVGFontFaceUriElement.h:
3891         * svg/SVGForeignObjectElement.cpp:
3892         (WebCore::SVGForeignObjectElement::createElementRenderer):
3893         * svg/SVGForeignObjectElement.h:
3894         * svg/SVGGElement.cpp:
3895         (WebCore::SVGGElement::createElementRenderer):
3896         * svg/SVGGElement.h:
3897         * svg/SVGGraphicsElement.cpp:
3898         (WebCore::SVGGraphicsElement::createElementRenderer):
3899         * svg/SVGGraphicsElement.h:
3900         * svg/SVGImageElement.cpp:
3901         (WebCore::SVGImageElement::createElementRenderer):
3902         * svg/SVGImageElement.h:
3903         * svg/SVGLength.cpp:
3904         (WebCore::SVGLength::toCSSPrimitiveValue):
3905         * svg/SVGLength.h:
3906         * svg/SVGLinearGradientElement.cpp:
3907         (WebCore::SVGLinearGradientElement::createElementRenderer):
3908         * svg/SVGLinearGradientElement.h:
3909         * svg/SVGMarkerElement.cpp:
3910         (WebCore::SVGMarkerElement::createElementRenderer):
3911         * svg/SVGMarkerElement.h:
3912         * svg/SVGMaskElement.cpp:
3913         (WebCore::SVGMaskElement::createElementRenderer):
3914         * svg/SVGMaskElement.h:
3915         * svg/SVGPaint.h:
3916         (WebCore::SVGPaint::createUnknown):
3917         (WebCore::SVGPaint::createNone):
3918         (WebCore::SVGPaint::createCurrentColor):
3919         (WebCore::SVGPaint::createColor):
3920         (WebCore::SVGPaint::createURI):
3921         (WebCore::SVGPaint::createURIAndColor):
3922         (WebCore::SVGPaint::createURIAndNone):
3923         (WebCore::SVGPaint::create):
3924         * svg/SVGPathElement.cpp:
3925         (WebCore::SVGPathElement::createElementRenderer):
3926         * svg/SVGPathElement.h:
3927         * svg/SVGPatternElement.cpp:
3928         (WebCore::SVGPatternElement::createElementRenderer):
3929         * svg/SVGPatternElement.h:
3930         * svg/SVGRadialGradientElement.cpp:
3931         (WebCore::SVGRadialGradientElement::createElementRenderer):
3932         * svg/SVGRadialGradientElement.h:
3933         * svg/SVGRectElement.cpp:
3934         (WebCore::SVGRectElement::createElementRenderer):
3935         * svg/SVGRectElement.h:
3936         * svg/SVGSVGElement.cpp:
3937         (WebCore::SVGSVGElement::createElementRenderer):
3938         * svg/SVGSVGElement.h:
3939         * svg/SVGStopElement.cpp:
3940         (WebCore::SVGStopElement::createElementRenderer):
3941         * svg/SVGStopElement.h:
3942         * svg/SVGSwitchElement.cpp:
3943         (WebCore::SVGSwitchElement::createElementRenderer):
3944         * svg/SVGSwitchElement.h:
3945         * svg/SVGSymbolElement.cpp:
3946         (WebCore::SVGSymbolElement::createElementRenderer):
3947         * svg/SVGSymbolElement.h:
3948         * svg/SVGTRefElement.cpp:
3949         (WebCore::SVGTRefTargetEventListener::create):
3950         (WebCore::SVGTRefElement::createElementRenderer):
3951         * svg/SVGTRefElement.h:
3952         * svg/SVGTSpanElement.cpp:
3953         (WebCore::SVGTSpanElement::createElementRenderer):
3954         * svg/SVGTSpanElement.h:
3955         * svg/SVGTextElement.cpp:
3956         (WebCore::SVGTextElement::createElementRenderer):
3957         * svg/SVGTextElement.h:
3958         * svg/SVGTextPathElement.cpp:
3959         (WebCore::SVGTextPathElement::createElementRenderer):
3960         * svg/SVGTextPathElement.h:
3961         * svg/SVGUseElement.cpp:
3962         (WebCore::SVGUseElement::createElementRenderer):
3963         * svg/SVGUseElement.h:
3964
3965 2014-12-13  Zalan Bujtas  <zalan@apple.com>
3966
3967         https://bugs.webkit.org/show_bug.cgi?id=139597
3968         rdar://problem/19237334
3969         Fixed positioned pseudo content does not get composited.
3970
3971         Reviewed by Simon Fraser.
3972
3973         This patch ensures that adjustRenderStyle() can access to settings even when Element* is null. 
3974
3975         Test: compositing/fixed-positioned-pseudo-content-no-compositing.html
3976
3977         * css/StyleResolver.cpp:
3978         (WebCore::StyleResolver::adjustRenderStyle):
3979
3980 2014-12-12  Mark Rowe  <mrowe@apple.com>
3981
3982         [Mac] Work around a bug in dsymutil on older OS versions
3983         <https://webkit.org/b/139609> / <rdar://problem/16045763>
3984
3985         Older versions of dsymutil are unable to write out more than 2GB of symbols per architecture.
3986         WebCore has recently passed that threshold. To work around this we will reduce the level of
3987         symbols included in the dSYM bundles on the affected OS versions.
3988
3989         Reviewed by Geoff Garen.
3990
3991         * Configurations/Base.xcconfig: Include line tables only in the debug symbols for production
3992         builds on OS X 10.8 and 10.9.
3993         * Configurations/DebugRelease.xcconfig: Include full symbols in debug and release builds since they
3994         do not make use of dSYMs.
3995
3996 2014-12-12  Beth Dakin  <bdakin@apple.com>
3997
3998         Need a fake mouse move after hiding data detectors UI
3999         https://bugs.webkit.org/show_bug.cgi?id=139608
4000         -and corresponding-
4001         rdar://problem/19221935
4002
4003         Reviewed by Tim Horton.
4004
4005         * WebCore.exp.in:
4006
4007 2014-12-12  Dean Jackson  <dino@apple.com>
4008
4009         [Media iOS] Inline video controls have an outlined scrubber
4010         https://bugs.webkit.org/show_bug.cgi?id=139602
4011         <rdar://problem/19184212>
4012
4013         Reviewed by Eric Carlson.
4014
4015         This is another change similar to https://bugs.webkit.org/show_bug.cgi?id=138378
4016         where the specificity of pseduo elements had changed, and thus iOS
4017         was inheriting some of the UA styles.
4018
4019         The fix is to add some more style rules to ensure that the timeline track
4020         is drawn in white.
4021
4022         * Modules/mediacontrols/mediaControlsiOS.css:
4023         (audio::-webkit-media-controls-timeline): Border rules not needed here.
4024         (video::-webkit-media-controls-timeline::-webkit-slider-runnable-track): But are needed
4025         here, along with some other things.
4026         (audio::-webkit-media-controls-timeline::-webkit-slider-thumb): Now that the runnable
4027         track has some style, we need to account for the change.
4028
4029 2014-12-12  Anders Carlsson  <andersca@apple.com>
4030
4031         Remove a workaround for a bug that was fixed in Mountain Lion
4032         https://bugs.webkit.org/show_bug.cgi?id=139605
4033
4034         Reviewed by Sam Weinig.
4035
4036         * WebCorePrefix.h:
4037         (move): Deleted.
4038
4039 2014-12-12  Zalan Bujtas  <zalan@apple.com>
4040
4041         https://bugs.webkit.org/show_bug.cgi?id=139596
4042         Subpixel rendering: REGRESSION (r163272): Fixed positioned pseudo content leaves trails while scrolling.
4043         rdar://problem/18697851
4044
4045         Reviewed by Simon Fraser.
4046
4047         Final repaint rect at FrameView::scrollContentsFastPath needs to be pixel aligned (as opposed to snap to int).
4048         However we can't pixelsnap it until after ScrollView finished transitioning to Float/LayoutRect.
4049         Use enclosing int rect for now to ensure scrolling does not leave trails.
4050
4051         Unable to test. Apparently scrolling clears trails in dumprendertree. (repaint rects are not useful either with scrolling)
4052
4053         * page/FrameView.cpp:
4054         (WebCore::FrameView::scrollContentsFastPath):
4055
4056 2014-12-12  Simon Fraser  <simon.fraser@apple.com>
4057
4058         REGRESSION (r168217): Images are cropped out during animation at jetblue.com
4059         https://bugs.webkit.org/show_bug.cgi?id=136410
4060
4061         Reviewed by Dean Jackson.
4062
4063         We were hitting the new assertion under Page::setPageScaleFactor(), which
4064         calls recalcStyle(), so move the AnimationUpdateBlock from updateStyleIfNeeded()
4065         to recalcStyle().
4066
4067         * dom/Document.cpp:
4068         (WebCore::Document::recalcStyle):
4069         (WebCore::Document::updateStyleIfNeeded):
4070
4071 2014-12-12  Simon Fraser  <simon.fraser@apple.com>
4072
4073         REGRESSION (r168217): Images are cropped out during animation at jetblue.com
4074         https://bugs.webkit.org/show_bug.cgi?id=136410
4075         rdar://problem/18188533
4076
4077         Reviewed by Dean Jackson.
4078         
4079         During GraphicsLayer flushing, for tiled layers we can compute a visible rect using
4080         the current state of an animation, which is obtained via the AnimationController.
4081         If that animation was running in a subframe, AnimationController could use a stale
4082   &