Remove -webkit-color-correction CSS property
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2015-08-08  Darin Adler  <darin@apple.com>
2
3         Remove -webkit-color-correction CSS property
4         https://bugs.webkit.org/show_bug.cgi?id=147812
5
6         Reviewed by Maciej Stachowiak.
7
8         Covered by existing tests.
9
10         I am doing some general cleanup of handling of color spaces in WebKit.
11         This removes the obsolete web-visible property that allowed clients to
12         get color correction on older Apple platforms where we chose not to do
13         it all the time for performance reasons. Currently, it has no effect on
14         any supported platform.
15
16         Now that this property is removed, a website can detect that it's not
17         there if it uses getComputedStyle, but I don't expect this to have
18         significant compatibility fallout. It's harmless to continue using the
19         property in legacy content or websites that have not been updated, since
20         unknown property names are ignored and it had no effect before anyway.
21
22         * css/CSSComputedStyleDeclaration.cpp: Removed
23         CSSPropertyWebkitColorCorrection from the list of computed properties.
24         (WebCore::ComputedStyleExtractor::propertyValue): Removed the
25         CSSPropertyWebkitColorCorrection case.
26
27         * css/CSSParser.cpp:
28         (WebCore::isValidKeywordPropertyAndValue): Removed the
29         CSSPropertyWebkitColorCorrection case.
30         (WebCore::isKeywordPropertyID): Ditto.
31         (WebCore::CSSParser::parseValue): Ditto.
32
33         * css/CSSPrimitiveValueMappings.h:
34         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Deleted the overload
35         of this that converts a ColorSpace to a CSSPrimitiveValue.
36         (WebCore::CSSPrimitiveValue::operator ColorSpace): Deleted.
37
38         * css/CSSPropertyNames.in: Removed -webkit-color-correction.
39
40         * css/CSSValueKeywords.in: Removed the -webkit-color-correction section,
41         which contained sRGB.
42
43         * css/SVGCSSValueKeywords.in: Uncommented sRGB now that it's not shared
44         with -webkit-color-correction.
45
46         * rendering/style/RenderStyle.h: Removed setColorSpace and initialColorSpace.
47         Kept colorSpace around for now, but it simply returns ColorSpaceSRGB.
48         This prevents us from needing to touch every single call site that passes
49         the color space in to functions in the platform graphics abstraction.
50         We'll touch most of those call sites when we change Color to include the
51         color space and eventually we can delete this.
52
53         * rendering/style/StyleRareInheritedData.cpp: Deleted colorSpace.
54         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Deleted
55         code to initialize colorSpace and to copy colorSpace.
56         (WebCore::StyleRareInheritedData::operator==): Deleted code to compare
57         colorSpace.
58
59 2015-08-09  Eric Carlson  <eric.carlson@apple.com>
60
61         [Mac] Always require ExternalDeviceAutoPlayCandidate flag to AirPlay automatically
62         https://bugs.webkit.org/show_bug.cgi?id=147801
63
64         Reviewed by Dean Jackson.
65
66         Test: http/tests/media/video-media-document-disposition-download.html
67
68         * Modules/mediasession/WebMediaSessionManager.cpp:
69         (WebCore::WebMediaSessionManager::configurePlaybackTargetClients): Don't tell the last element
70           to begin playing to the target unless the ExternalDeviceAutoPlayCandidate flag is set and 
71           it is not currently playing.
72
73 2015-08-09  Myles C. Maxfield  <mmaxfield@apple.com>
74
75         Crash in ComplexTextController when laying out obscure text
76         https://bugs.webkit.org/show_bug.cgi?id=147806
77         <rdar://problem/22102378>
78
79         Reviewed by Darin Adler.
80
81         CTFontDescriptorCopyAttribute(fontDescriptor.get(), kCTFontReferenceURLAttribute) can return nullptr.
82
83         Test: fast/text/crash-obscure-text.html
84
85         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
86         (WebCore::safeCFEqual):
87         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
88
89 2015-08-08  Dean Jackson  <dino@apple.com>
90
91         Remove the webkit prefix from CanvasRenderingContext2D imageSmoothingEnabled
92         https://bugs.webkit.org/show_bug.cgi?id=147803
93         <rdar://problem/22200553>
94
95         Reviewed by Sam Weinig.
96
97         Rename webkitImageSmoothingEnabled to imageSmoothingEnabled.
98
99         Updated existing tests, and made sure that the prefixed version is
100         identical to the standard version.
101
102         * html/canvas/CanvasRenderingContext2D.cpp:
103         (WebCore::CanvasRenderingContext2D::imageSmoothingEnabled): Renamed from webkitImageSmoothingEnabled.
104         (WebCore::CanvasRenderingContext2D::setImageSmoothingEnabled): Renamed from setWebkitImageSmoothingEnabled.
105         (WebCore::CanvasRenderingContext2D::webkitImageSmoothingEnabled): Deleted.
106         (WebCore::CanvasRenderingContext2D::setWebkitImageSmoothingEnabled): Deleted.
107         * html/canvas/CanvasRenderingContext2D.h: Rename the methods.
108         * html/canvas/CanvasRenderingContext2D.idl: Add the non-prefixed form, and mark is as the
109         implementation of the prefixed form.
110
111 2015-08-09  Andreas Kling  <akling@apple.com>
112
113         Ref-ify some functions that always succeed in constructing Documents.
114         <https://webkit.org/b/147552>
115
116         Reviewed by Sam Weinig.
117
118         Update some functions involved in the construction of new Document objects
119         to codify that they always construct objects.
120
121         Bonus: DOMImplementation::createCSSStyleSheet().
122
123         * dom/DOMImplementation.cpp:
124         (WebCore::DOMImplementation::createCSSStyleSheet):
125         (WebCore::DOMImplementation::createHTMLDocument):
126         (WebCore::DOMImplementation::createDocument):
127         * dom/DOMImplementation.h:
128         * loader/DocumentWriter.cpp:
129         (WebCore::DocumentWriter::createDocument):
130         (WebCore::DocumentWriter::begin):
131         * loader/DocumentWriter.h:
132         * xml/DOMParser.cpp:
133         (WebCore::DOMParser::parseFromString):
134         * xml/DOMParser.h:
135         * xml/XSLTProcessor.cpp:
136         (WebCore::XSLTProcessor::createDocumentFromSource):
137         * xml/XSLTProcessor.h:
138
139 2015-08-08  Commit Queue  <commit-queue@webkit.org>
140
141         Unreviewed, rolling out r179871.
142         https://bugs.webkit.org/show_bug.cgi?id=147810
143
144         Breaks product images on http://www.apple.com/shop/buy-
145         mac/macbook (Requested by smfr on #webkit).
146
147         Reverted changeset:
148
149         "Render: properly update body's background image"
150         https://bugs.webkit.org/show_bug.cgi?id=140183
151         http://trac.webkit.org/changeset/179871
152
153 2015-08-07  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
154
155         Reduce uses of PassRefPtr in bindings
156         https://bugs.webkit.org/show_bug.cgi?id=147781
157
158         Reviewed by Chris Dumez.
159
160         Use RefPtr when function can return null or an instance. If not, Ref is used.
161
162         * bindings/gobject/GObjectNodeFilterCondition.h:
163         * bindings/gobject/GObjectXPathNSResolver.h:
164         * bindings/gobject/WebKitDOMNodeFilter.cpp:
165         (WebKit::core):
166         * bindings/gobject/WebKitDOMNodeFilterPrivate.h:
167         * bindings/gobject/WebKitDOMXPathNSResolver.cpp:
168         (WebKit::core):
169         * bindings/gobject/WebKitDOMXPathNSResolverPrivate.h:
170         * bindings/js/CallbackFunction.h:
171         (WebCore::createFunctionOnlyCallback):
172         * bindings/js/Dictionary.h:
173         (WebCore::Dictionary::getEventListener):
174         * bindings/js/IDBBindingUtilities.cpp:
175         (WebCore::createIDBKeyFromValue):
176         (WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
177         (WebCore::createIDBKeyFromScriptValueAndKeyPath):
178         (WebCore::scriptValueToIDBKey):
179         * bindings/js/IDBBindingUtilities.h:
180         * bindings/js/JSDOMBinding.h:
181         (WebCore::toInt8Array):
182         (WebCore::toInt16Array):
183         (WebCore::toInt32Array):
184         (WebCore::toUint8Array):
185         (WebCore::toUint8ClampedArray):
186         (WebCore::toUint16Array):
187         (WebCore::toUint32Array):
188         (WebCore::toFloat32Array):
189         (WebCore::toFloat64Array):
190         * bindings/js/JSDOMStringListCustom.cpp:
191         (WebCore::JSDOMStringList::toWrapped):
192         * bindings/js/JSDeviceMotionEventCustom.cpp:
193         (WebCore::readAccelerationArgument):
194         (WebCore::readRotationRateArgument):
195         * bindings/js/JSErrorHandler.h:
196         (WebCore::createJSErrorHandler):
197         * bindings/js/JSGeolocationCustom.cpp:
198         (WebCore::createPositionOptions):
199         * bindings/js/JSNodeCustom.cpp:
200         * bindings/js/JSNodeFilterCustom.cpp:
201         (WebCore::JSNodeFilter::toWrapped):
202         * bindings/js/ScriptController.cpp:
203         (WebCore::ScriptController::createWorld):
204         (WebCore::ScriptController::createRootObject):
205         (WebCore::ScriptController::createScriptInstanceForWidget):
206         * bindings/js/ScriptController.h:
207         * bindings/js/ScriptControllerMac.mm:
208         (WebCore::ScriptController::createScriptInstanceForWidget):
209         * bindings/js/SerializedScriptValue.cpp:
210         (WebCore::SerializedScriptValue::create):
211         * bindings/js/SerializedScriptValue.h:
212         * bindings/objc/DOMUIKitExtensions.mm:
213         (-[DOMNode rangeOfContainingParagraph]):
214         * bindings/objc/ObjCNodeFilterCondition.h:
215         * bindings/scripts/CodeGeneratorJS.pm:
216         (GenerateHeader):
217
218 2015-08-07  Myles C. Maxfield  <mmaxfield@apple.com>
219
220         [OS X] Remove dead code from FontCache::createFontPlatformData()
221         https://bugs.webkit.org/show_bug.cgi?id=147804
222
223         Reviewed by Zalan Bujtas.
224
225         CTFontCreateForCSS() always returns the best font.
226
227         No new tests because there is no behavior change.
228
229         * platform/graphics/mac/FontCacheMac.mm:
230         (WebCore::fontWithFamily):
231
232 2015-08-07  Zalan Bujtas  <zalan@apple.com>
233
234         Move painting functions from RenderObject to RenderElement.
235         https://bugs.webkit.org/show_bug.cgi?id=147764
236
237         Reviewed by Simon Fraser.
238
239         Ideally they should live in RenderBoxModelObject, but the current SVG architecture makes is difficult
240         to move them there.
241
242         No change in functionality.
243
244         * platform/graphics/FloatRect.h:
245         (WebCore::FloatRect::FloatRect):
246         * rendering/RenderBoxModelObject.cpp:
247         (WebCore::RenderBoxModelObject::paintOneBorderSide):
248         * rendering/RenderElement.cpp:
249         (WebCore::RenderElement::drawLineForBoxSide):
250         (WebCore::RenderElement::paintFocusRing):
251         (WebCore::RenderElement::paintOutline):
252         * rendering/RenderElement.h:
253         * rendering/RenderInline.cpp:
254         (WebCore::RenderInline::paintOutline):
255         (WebCore::RenderInline::paintOutlineForLine):
256         * rendering/RenderMultiColumnSet.cpp:
257         (WebCore::RenderMultiColumnSet::paintColumnRules):
258         * rendering/RenderObject.cpp:
259         (WebCore::RenderObject::drawLineForBoxSide): Deleted.
260         (WebCore::RenderObject::paintFocusRing): Deleted.
261         (WebCore::RenderObject::paintOutline): Deleted.
262         * rendering/RenderObject.h:
263         * rendering/RenderTableCell.cpp:
264         (WebCore::RenderTableCell::paintCollapsedBorders):
265         * rendering/RenderTableSection.cpp:
266         (WebCore::RenderTableSection::paintRowGroupBorder):
267         * rendering/RenderTheme.h:
268         (WebCore::RenderTheme::paintMenuListButtonDecorations):
269         * rendering/RenderThemeIOS.h:
270         * rendering/RenderThemeIOS.mm:
271         (WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
272         * rendering/RenderThemeMac.h:
273         * rendering/RenderThemeMac.mm:
274         (WebCore::RenderThemeMac::paintMenuListButtonDecorations):
275
276 2015-08-07  James Craig  <jcraig@apple.com>
277
278         REGRESSION(r184722) AX: WebKit video playback toolbar removed from DOM; no longer accessible to VoiceOver
279         https://bugs.webkit.org/show_bug.cgi?id=145684
280
281         Reviewed by Dean Jackson.
282
283         Updated Apple Video controls to add an invisible but focusable button that allows VoiceOver 
284         users (and when unblocked, keyboard users) to re-display the video controls.
285
286         Test: media/video-controls-show-on-kb-or-ax-event.html
287
288         * English.lproj/mediaControlsLocalizedStrings.js:
289         * Modules/mediacontrols/mediaControlsApple.css:
290         (audio::-webkit-media-show-controls):
291         (video::-webkit-media-show-controls):
292         * Modules/mediacontrols/mediaControlsApple.js:
293         (Controller.prototype.createControls):
294         (Controller.prototype.handleFullscreenChange):
295         (Controller.prototype.handleShowControlsClick):
296         (Controller.prototype.handleWrapperMouseMove):
297         (Controller.prototype.updateForShowingControls):
298         (Controller.prototype.showControls):
299         (Controller.prototype.hideControls):
300         (Controller.prototype.setNeedsUpdateForDisplayedWidth):
301         * Modules/mediacontrols/mediaControlsiOS.css:
302         (audio::-webkit-media-show-controls):
303         (video::-webkit-media-show-controls):
304
305 2015-08-07  Alex Christensen  <achristensen@webkit.org>
306
307         Build more testing binaries with CMake on Windows
308         https://bugs.webkit.org/show_bug.cgi?id=147799
309
310         Reviewed by Brent Fulgham.
311
312         * CMakeLists.txt:
313         MockCDM.cpp needs to be part of WebCoreTestSupport, not WebCore.
314         * PlatformWin.cmake:
315         Added files needed for AppleWin port.
316
317 2015-08-07  Anders Carlsson  <andersca@apple.com>
318
319         Being moving away from using SQLTransactionStateMachine in SQLTransactionBackend
320         https://bugs.webkit.org/show_bug.cgi?id=147798
321
322         Reviewed by Geoffrey Garen.
323
324         This is the first step towards getting rid of the state machine so we can ultimately merge SQLTransactionBackend
325         into SQLTransaction.
326
327         Instead of having the state machine run our functions, just run them ourselves where we can. For states that need
328         to be handled in the frontend, call SQLTransaction::requestTransitToState explicitly.
329
330         * Modules/webdatabase/SQLTransactionBackend.cpp:
331         (WebCore::SQLTransactionBackend::stateFunctionFor):
332         (WebCore::SQLTransactionBackend::lockAcquired):
333         (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
334         (WebCore::SQLTransactionBackend::runStatements):
335         (WebCore::SQLTransactionBackend::runCurrentStatement):
336         (WebCore::SQLTransactionBackend::handleCurrentStatementError):
337         (WebCore::SQLTransactionBackend::handleTransactionError):
338         (WebCore::SQLTransactionBackend::postflightAndCommit):
339         (WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState): Deleted.
340         (WebCore::SQLTransactionBackend::nextStateForCurrentStatementError): Deleted.
341         (WebCore::SQLTransactionBackend::nextStateForTransactionError): Deleted.
342         (WebCore::SQLTransactionBackend::sendToFrontendState): Deleted.
343         * Modules/webdatabase/SQLTransactionBackend.h:
344
345 2015-08-07  Filip Pizlo  <fpizlo@apple.com>
346
347         Lightweight locks should be adaptive
348         https://bugs.webkit.org/show_bug.cgi?id=147545
349
350         Reviewed by Geoffrey Garen.
351
352         * bindings/objc/WebScriptObject.mm:
353         (WebCore::getJSWrapper):
354         (WebCore::addJSWrapper):
355         (WebCore::removeJSWrapper):
356         (WebCore::removeJSWrapperIfRetainCountOne):
357         * platform/audio/mac/CARingBuffer.cpp:
358         (WebCore::CARingBuffer::setCurrentFrameBounds):
359         (WebCore::CARingBuffer::getCurrentFrameBounds):
360         * platform/audio/mac/CARingBuffer.h:
361         * platform/ios/wak/WAKWindow.mm:
362         (-[WAKWindow setExposedScrollViewRect:]):
363         (-[WAKWindow exposedScrollViewRect]):
364
365 2015-08-07  Myles C. Maxfield  <mmaxfield@apple.com>
366
367         Post-review comments on r188146
368         https://bugs.webkit.org/show_bug.cgi?id=147793
369
370         Reviewed by Daniel Bates.
371
372         No new tests because there is no behavior change.
373
374         * platform/graphics/FontCache.h:
375         * platform/graphics/cocoa/FontCacheCoreText.cpp:
376         (WebCore::appendTrueTypeFeature):
377         (WebCore::appendOpenTypeFeature):
378         (WebCore::applyFontFeatureSettings):
379         * platform/graphics/ios/FontCacheIOS.mm:
380         (WebCore::FontCache::getSystemFontFallbackForCharacters):
381         (WebCore::FontCache::createFontPlatformData):
382         * platform/graphics/mac/FontCacheMac.mm:
383         (WebCore::fontWithFamily):
384         (WebCore::FontCache::systemFallbackForCharacters):
385         * platform/graphics/mac/FontCustomPlatformData.cpp:
386         (WebCore::FontCustomPlatformData::fontPlatformData):
387         * rendering/RenderThemeIOS.mm:
388         (WebCore::RenderThemeIOS::updateCachedSystemFontDescription):
389
390 2015-08-07  Myles C. Maxfield  <mmaxfield@apple.com>
391
392         [Cocoa] Font fallback is not language-sensitive
393         https://bugs.webkit.org/show_bug.cgi?id=147390
394
395         Reviewed by Dean Jackson.
396
397         We need to make our font fallback code sensitive to locale.
398
399         This patch rolls r187729 back in. However, only particular versions of iOS and OS X are
400         performant enough to enable this language-sensitivity.
401
402         This patch also applies to iOS.
403
404         Test: fast/text/fallback-language-han.html
405
406         * platform/graphics/mac/FontCacheMac.mm:
407         (WebCore::lookupCTFont):
408         (WebCore::FontCache::systemFallbackForCharacters):
409         * platform/graphics/mac/FontCacheIOS.mm:
410         (WebCore::FontCache::systemFallbackForCharacters):
411
412 2015-08-07  Zalan Bujtas  <zalan@apple.com>
413
414         RenderTheme::volumeSliderOffsetFromMuteButton should take const& RenderBox.
415         https://bugs.webkit.org/show_bug.cgi?id=147731
416
417         Reviewed by Simon Fraser.
418
419         No change in functionality.
420
421         * rendering/RenderMediaControlElements.cpp:
422         (WebCore::RenderMediaVolumeSliderContainer::layout):
423         * rendering/RenderMediaControls.cpp:
424         (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Deleted.
425         * rendering/RenderMediaControls.h:
426         * rendering/RenderTheme.cpp:
427         (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):
428         * rendering/RenderTheme.h:
429
430 2015-08-07  Zalan Bujtas  <zalan@apple.com>
431
432         Replace RenderObject::isRooted() logic with isDescendantOf().
433         https://bugs.webkit.org/show_bug.cgi?id=147788
434
435         Reviewed by Simon Fraser.
436
437         And some related cleanups.
438
439         No change in functionality.
440
441         * page/FrameView.cpp:
442         (WebCore::FrameView::scheduleRelayoutOfSubtree):
443         (WebCore::FrameView::extendedBackgroundRectForPainting):
444         * rendering/RenderBox.cpp:
445         (WebCore::RenderBox::paintRootBoxFillLayers):
446         * rendering/RenderElement.cpp:
447         (WebCore::shouldRepaintForImageAnimation):
448         * rendering/RenderObject.cpp:
449         (WebCore::RenderObject::isDescendantOf):
450         (WebCore::scheduleRelayoutForSubtree):
451         (WebCore::RenderObject::repaint):
452         (WebCore::RenderObject::repaintRectangle):
453         (WebCore::RenderObject::repaintSlowRepaintObject):
454         (WebCore::RenderObject::isRooted):
455         * rendering/RenderObject.h:
456         * rendering/RenderView.cpp:
457         (WebCore::RenderView::unextendedBackgroundRect):
458         (WebCore::RenderView::backgroundRect):
459         * rendering/RenderView.h:
460
461 2015-08-07  Zalan Bujtas  <zalan@apple.com>
462
463         Subtree layout code should use RenderElement.
464         https://bugs.webkit.org/show_bug.cgi?id=147694
465
466         Reviewed by Simon Fraser.
467
468         Subtree layout will never begin at a RenderText, so tighten up
469         the code to operate on RenderElements instead of RenderObjects.
470         (This patch is based on webkit.org/b/126878)
471
472         No change in functionality.
473
474         * inspector/InspectorTimelineAgent.cpp:
475         (WebCore::InspectorTimelineAgent::willLayout):
476         * page/FrameView.cpp:
477         (WebCore::FrameView::FrameView): Deleted.
478         (WebCore::FrameView::layoutRoot): Deleted.
479         * page/FrameView.h:
480         * rendering/RenderBox.cpp:
481         (WebCore::RenderBox::computeLogicalWidthInRegion):
482         * rendering/RenderElement.cpp:
483         (WebCore::RenderElement::clearLayoutRootIfNeeded):
484         (WebCore::RenderElement::willBeDestroyed):
485         * rendering/RenderElement.h:
486         * rendering/RenderObject.cpp:
487         (WebCore::RenderObject::clearLayoutRootIfNeeded): Deleted.
488         (WebCore::RenderObject::willBeDestroyed): Deleted.
489         * rendering/RenderObject.h:
490
491 2015-08-07  Wenson Hsieh  <wenson_hsieh@apple.com>
492
493         Temporarily allow programmatic input assistance for adding Gmail account
494         https://bugs.webkit.org/show_bug.cgi?id=147792
495
496         Reviewed by Enrica Casucci.
497         <rdar://problem/22126518>
498
499         Temporary fix for keyboard input sliding out and immediately back in upon user interaction
500         in the Gmail 2-factor authentication page.
501
502         * platform/RuntimeApplicationChecksIOS.h:
503         * platform/RuntimeApplicationChecksIOS.mm:
504         (WebCore::applicationIsGmailAddAccountOnIOS): Added bundle ID for Gmail settings.
505
506 2015-08-07  Andy Estes  <aestes@apple.com>
507
508         Crash when following a Google search link to Twitter with Limit Adult Content enabled
509         https://bugs.webkit.org/show_bug.cgi?id=147651
510
511         Reviewed by Brady Eidson.
512
513         When a loaded CachedRawResource gets a new client, it synthesizes the callbacks that the new client would have
514         received while the resource was loading. Unlike a real network load, it synthesizes these callbacks in a single
515         run loop iteration. When DocumentLoader receives a redirect, and finds substitute data in the app cache for the
516         redirect URL, it schedules a timer that removes DocumentLoader as a client of the CachedRawResource then
517         synthesizes its own set of CachedRawResourceClient callbacks. But since CachedRawResource has already delivered
518         client callbacks before the app cache timer fires, DocumentLoader unexpectedly ends up getting two sets of
519         client callbacks and badness ensues.
520
521         The fix is to let CachedRawResource detect if a redirect will trigger the client to load substitute data. If so,
522         stop delivering client callbacks.
523
524         Layout test to follow.
525
526         * loader/DocumentLoader.cpp:
527         (WebCore::DocumentLoader::syntheticRedirectReceived): If there is valid substitute data, do not continue.
528         * loader/DocumentLoader.h:
529         * loader/cache/CachedRawResource.cpp: Returned early if syntheticRedirectReceived() said not to continue.
530         (WebCore::CachedRawResource::didAddClient):
531         * loader/cache/CachedRawResourceClient.h:
532         (WebCore::CachedRawResourceClient::syntheticRedirectReceived):
533
534 2015-08-06  Dean Jackson  <dino@apple.com>
535
536         Shadows don't draw on fillText when using a gradient fill
537         https://bugs.webkit.org/show_bug.cgi?id=147758
538         <rdar://problem/20860912>
539
540         Reviewed by Myles Maxfield.
541
542         Since we use a mask to render a pattern or gradient
543         into text, any shadow was being clipped out. Change
544         this to draw the shadow before the mask + fill operation,
545         using a technique similar to text-shadow.
546
547         Test: fast/canvas/gradient-text-with-shadow.html
548
549         * html/canvas/CanvasRenderingContext2D.cpp:
550         (WebCore::CanvasRenderingContext2D::drawTextInternal): Get the current shadow
551         style, paint the text with a transformed shadow offset so that we only
552         see the shadow and not the text, then combine with the existing pattern/gradient
553         fill.
554
555 2015-08-07  Myles C. Maxfield  <mmaxfield@apple.com>
556
557         Implement font-feature-settings
558         https://bugs.webkit.org/show_bug.cgi?id=147722
559
560         Reviewed by Simon Fraser.
561
562         Fonts with features are simply modeled as new font objects. Font
563         feature information is contained within FontDescription, and our
564         caches are correctly sensitive to this information. Therefore,
565         we just need to make our font lookup code honor the request to
566         use certain features.
567
568         This patch creates a file, FontCacheCoreText.cpp, which will be the
569         new home of all shared OS X / iOS FontCache code. Over time, I will
570         be moving more and more source into this file, until there is
571         nothing left of FontCacheMac.mm and FontCacheIOS.mm. For now, the
572         only function in this file is the code which applies font features.
573
574         Test: css3/font-feature-settings-preinstalled-fonts.html
575
576         * WebCore.xcodeproj/project.pbxproj: Add FontCacheCoreText.cpp.
577         * platform/graphics/FontCache.h:
578         * platform/graphics/cocoa/FontCacheCoreText.cpp: Added.
579         (WebCore::appendTrueTypeFeature): What the name says.
580         (WebCore::appendOpenTypeFeature): Ditto.
581         (WebCore::applyFontFeatureSettings): Ditto.
582         * platform/graphics/ios/FontCacheIOS.mm:
583         (WebCore::FontCache::getSystemFontFallbackForCharacters): Call
584         applyFontFeatureSettings().
585         (WebCore::FontCache::createFontPlatformData): Ditto.
586         * platform/graphics/mac/FontCacheMac.mm:
587         (WebCore::fontWithFamily): Ditto.
588         (WebCore::FontCache::systemFallbackForCharacters): Ditto.
589         (WebCore::FontCache::createFontPlatformData): Ditto.
590         * platform/graphics/mac/FontCustomPlatformData.cpp:
591         (WebCore::FontCustomPlatformData::fontPlatformData): Ditto.
592         * rendering/RenderThemeIOS.mm:
593         (WebCore::RenderThemeIOS::updateCachedSystemFontDescription):
594         Ditto.
595
596 2015-08-07  Commit Queue  <commit-queue@webkit.org>
597
598         Unreviewed, rolling out r187907.
599         https://bugs.webkit.org/show_bug.cgi?id=147789
600
601         taking a different approach to the fix (Requested by estes on
602         #webkit).
603
604         Reverted changeset:
605
606         "Crash when following a Google search link to Twitter with
607         Limit Adult Content enabled."
608         https://bugs.webkit.org/show_bug.cgi?id=147651
609         http://trac.webkit.org/changeset/187907
610
611 2015-08-07  Alex Christensen  <achristensen@webkit.org>
612
613         Fix WinCairo build after r188130.
614
615         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
616         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
617         (WebCore::FontCustomPlatformData::fontPlatformData):
618         I forgot the parameter name.
619
620 2015-08-07  Alex Christensen  <achristensen@webkit.org>
621
622         Fix WinCairo build after r188130.
623
624         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
625         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
626         (WebCore::FontCustomPlatformData::fontPlatformData):
627         Update fontPlatformData parameters.
628
629 2015-08-07  Daniel Bates  <dabates@apple.com>
630
631         Attempt to fix the Windows build after <http://trac.webkit.org/changeset/188130>
632         (https://bugs.webkit.org/show_bug.cgi?id=147775)
633
634         Include header FontDescription.h.
635
636         * platform/graphics/win/FontCustomPlatformData.cpp:
637         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
638
639 2015-08-07  Myles C. Maxfield  <mmaxfield@apple.com>
640
641         Allow FontCustomPlatformData to consult with FontDescription
642         https://bugs.webkit.org/show_bug.cgi?id=147775
643
644         Reviewed by Zalan Bujtas.
645
646         In order to implement font-feature-settings, web fonts need to be
647         able to consult with the set of active font features. Rather than
648         add yet another argument to all the functions in this flow, this
649         patch passes around a reference to the FontDescription itself instead
650         of copies of constituent members of it.
651
652         No new tests because there is no behavior change.
653
654         * css/CSSFontFaceSource.cpp:
655         (WebCore::CSSFontFaceSource::font):
656         * loader/cache/CachedFont.cpp:
657         (WebCore::CachedFont::createFont):
658         (WebCore::CachedFont::platformDataFromCustomData):
659         * loader/cache/CachedFont.h:
660         * loader/cache/CachedSVGFont.cpp:
661         (WebCore::CachedSVGFont::platformDataFromCustomData):
662         * loader/cache/CachedSVGFont.h:
663         * platform/graphics/cairo/FontCustomPlatformData.h:
664         * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
665         (WebCore::FontCustomPlatformData::fontPlatformData):
666         * platform/graphics/freetype/FontPlatformData.h:
667         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
668         (WebCore::FontPlatformData::FontPlatformData):
669         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
670         (WebCore::Font::platformCreateScaledFont):
671         * platform/graphics/mac/FontCustomPlatformData.cpp:
672         (WebCore::FontCustomPlatformData::fontPlatformData):
673         * platform/graphics/mac/FontCustomPlatformData.h:
674         * platform/graphics/win/FontCustomPlatformData.cpp:
675         (WebCore::FontCustomPlatformData::fontPlatformData):
676         * platform/graphics/win/FontCustomPlatformData.h:
677
678 2015-08-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>
679
680         [Streams API] Create CountQueuingStrategy object as per spec
681         https://bugs.webkit.org/show_bug.cgi?id=146594
682
683         Reviewed by Geoffrey Garen.
684
685         CountQueuingStrategy is a class part of the Streams API that can be found at
686         https://streams.spec.whatwg.org/#cqs-class. We had it as js at the tests but the spec says we have to provide it
687         natively. The class is implemented in this patch by creating its corresponding IDL with the size method using
688         the [CustomBinding] attribute, that does not create any bindings against the object allowing us full control to
689         do what the spec requires (just returning 1 without any cast check). The constructor sets the highWaterMark
690         property taking it from the argument.
691
692         Covered by current tests
693         (LayoutTests/streams/reference-implementation/count-queuing-strategy.html and
694         LayoutTests/streams/reference-implementation/brand-checks.html).
695
696         * CMakeLists.txt:
697         * DerivedSources.cpp:
698         * DerivedSources.make:
699         * PlatformMac.cmake:
700         * WebCore.vcxproj/WebCore.vcxproj:
701         * WebCore.vcxproj/WebCore.vcxproj.filters:
702         * WebCore.xcodeproj/project.pbxproj:
703         * bindings/js/JSBindingsAllInOne.cpp: Build infrastructure.
704         * Modules/streams/CountQueuingStrategy.h: Added.
705         (WebCore::CountQueuingStrategy::~CountQueuingStrategy): Created empty.
706         (WebCore::CountQueuingStrategy::size): Returns 1.
707         * Modules/streams/CountQueuingStrategy.idl: Added.
708         * bindings/js/JSCountQueuingStrategyCustom.cpp: Added.
709         (WebCore::jsCountQueuingStrategyPrototypeFunctionSize): Calls WebCore::CountQueuingStrategy::size.
710         (WebCore::constructJSCountQueuingStrategy): Constructs the strategy, copies the highWaterMark from the argument
711         and returns it.
712         * bindings/js/JSDOMBinding.h:
713         (WebCore::getPropertyFromObject): Moved from ReadableJSStream.cpp.
714         (WebCore::setPropertyToObject): Added to create a property into an object.
715         * bindings/js/ReadableJSStream.cpp:
716         (WebCore::getPropertyFromObject): Deleted.
717
718 2015-08-07  Brady Eidson  <beidson@apple.com>
719
720         Move concrete KeyedDecoder/Encoder implementations to WebCore.
721         https://bugs.webkit.org/show_bug.cgi?id=147757.
722
723         Rubberstamped by Andy Estes.
724
725         * PlatformEfl.cmake:
726         * PlatformGTK.cmake:
727         * WebCore.xcodeproj/project.pbxproj:
728
729         * platform/KeyedCoding.h:
730         (WebCore::KeyedDecoder::KeyedDecoder): Static constructor to be implemented per-platform.
731         (WebCore::KeyedEncoder::KeyedEncoder): Ditto.
732
733         * platform/cf/KeyedDecoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.cpp.
734         (WebCore::KeyedDecoder::decoder):
735         (WebCore::KeyedDecoderCF::KeyedDecoderCF):
736         (WebCore::KeyedDecoderCF::~KeyedDecoderCF):
737         (WebCore::KeyedDecoderCF::decodeBytes):
738         (WebCore::KeyedDecoderCF::decodeBool):
739         (WebCore::KeyedDecoderCF::decodeUInt32):
740         (WebCore::KeyedDecoderCF::decodeInt32):
741         (WebCore::KeyedDecoderCF::decodeInt64):
742         (WebCore::KeyedDecoderCF::decodeFloat):
743         (WebCore::KeyedDecoderCF::decodeDouble):
744         (WebCore::KeyedDecoderCF::decodeString):
745         (WebCore::KeyedDecoderCF::beginObject):
746         (WebCore::KeyedDecoderCF::endObject):
747         (WebCore::KeyedDecoderCF::beginArray):
748         (WebCore::KeyedDecoderCF::beginArrayElement):
749         (WebCore::KeyedDecoderCF::endArrayElement):
750         (WebCore::KeyedDecoderCF::endArray):
751         * platform/cf/KeyedDecoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.h.
752         
753         * platform/cf/KeyedEncoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.cpp.
754         (WebCore::KeyedEncoder::encoder):
755         (WebCore::createDictionary):
756         (WebCore::KeyedEncoderCF::KeyedEncoderCF):
757         (WebCore::KeyedEncoderCF::~KeyedEncoderCF):
758         (WebCore::KeyedEncoderCF::encodeBytes):
759         (WebCore::KeyedEncoderCF::encodeBool):
760         (WebCore::KeyedEncoderCF::encodeUInt32):
761         (WebCore::KeyedEncoderCF::encodeInt32):
762         (WebCore::KeyedEncoderCF::encodeInt64):
763         (WebCore::KeyedEncoderCF::encodeFloat):
764         (WebCore::KeyedEncoderCF::encodeDouble):
765         (WebCore::KeyedEncoderCF::encodeString):
766         (WebCore::KeyedEncoderCF::beginObject):
767         (WebCore::KeyedEncoderCF::endObject):
768         (WebCore::KeyedEncoderCF::beginArray):
769         (WebCore::KeyedEncoderCF::beginArrayElement):
770         (WebCore::KeyedEncoderCF::endArrayElement):
771         (WebCore::KeyedEncoderCF::endArray):
772         (WebCore::KeyedEncoderCF::finishEncoding):
773         * platform/cf/KeyedEncoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.h.
774         
775         * platform/glib/KeyedDecoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.cpp.
776         (WebCore::KeyedDecoder::decoder):
777         (WebCore::KeyedDecoderGlib::KeyedDecoderGlib):
778         (WebCore::KeyedDecoderGlib::~KeyedDecoderGlib):
779         (WebCore::KeyedDecoderGlib::dictionaryFromGVariant):
780         (WebCore::KeyedDecoderGlib::decodeBytes):
781         (WebCore::KeyedDecoderGlib::decodeSimpleValue):
782         (WebCore::KeyedDecoderGlib::decodeBool):
783         (WebCore::KeyedDecoderGlib::decodeUInt32):
784         (WebCore::KeyedDecoderGlib::decodeInt32):
785         (WebCore::KeyedDecoderGlib::decodeInt64):
786         (WebCore::KeyedDecoderGlib::decodeFloat):
787         (WebCore::KeyedDecoderGlib::decodeDouble):
788         (WebCore::KeyedDecoderGlib::decodeString):
789         (WebCore::KeyedDecoderGlib::beginObject):
790         (WebCore::KeyedDecoderGlib::endObject):
791         (WebCore::KeyedDecoderGlib::beginArray):
792         (WebCore::KeyedDecoderGlib::beginArrayElement):
793         (WebCore::KeyedDecoderGlib::endArrayElement):
794         (WebCore::KeyedDecoderGlib::endArray):
795         * platform/glib/KeyedDecoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.h.
796         
797         * platform/glib/KeyedEncoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.cpp.
798         (WebCore::KeyedEncoder::encoder):
799         (WebCore::KeyedEncoderGlib::KeyedEncoderGlib):
800         (WebCore::KeyedEncoderGlib::~KeyedEncoderGlib):
801         (WebCore::KeyedEncoderGlib::encodeBytes):
802         (WebCore::KeyedEncoderGlib::encodeBool):
803         (WebCore::KeyedEncoderGlib::encodeUInt32):
804         (WebCore::KeyedEncoderGlib::encodeInt32):
805         (WebCore::KeyedEncoderGlib::encodeInt64):
806         (WebCore::KeyedEncoderGlib::encodeFloat):
807         (WebCore::KeyedEncoderGlib::encodeDouble):
808         (WebCore::KeyedEncoderGlib::encodeString):
809         (WebCore::KeyedEncoderGlib::beginObject):
810         (WebCore::KeyedEncoderGlib::endObject):
811         (WebCore::KeyedEncoderGlib::beginArray):
812         (WebCore::KeyedEncoderGlib::beginArrayElement):
813         (WebCore::KeyedEncoderGlib::endArrayElement):
814         (WebCore::KeyedEncoderGlib::endArray):
815         (WebCore::KeyedEncoderGlib::finishEncoding):
816         * platform/glib/KeyedEncoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.h.
817
818 2015-08-07  Carlos Garcia Campos  <cgarcia@igalia.com>
819
820         [GStreamer] Do not automatically show PackageKit codec installation notifications
821         https://bugs.webkit.org/show_bug.cgi?id=135973
822
823         Reviewed by Philippe Normand.
824
825         Add description parameter to requestInstallMissingPlugins() that
826         will be used by the API layer.
827
828         * html/HTMLMediaElement.cpp:
829         (WebCore::HTMLMediaElement::requestInstallMissingPlugins):
830         * html/HTMLMediaElement.h:
831         * page/ChromeClient.h:
832         * platform/graphics/MediaPlayer.h:
833         (WebCore::MediaPlayerClient::requestInstallMissingPlugins):
834         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
835         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
836
837 2015-08-07  Doug Russell  <d_russell@apple.com>
838
839         AX: Bug 147737 is causing test failures in Mavericks WK1
840         https://bugs.webkit.org/show_bug.cgi?id=147763
841
842         Restrict change made in 147737 to ElCapitan+ because it is causing tests
843         to fail in Mavericks.
844
845         Reviewed by Chris Fleizach.
846
847         Fixes failing tests.
848
849         * accessibility/AXObjectCache.cpp:
850         (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
851
852 2015-08-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>
853
854         Create [CustomBinding] extended IDL attribute
855         https://bugs.webkit.org/show_bug.cgi?id=146593
856
857         Reviewed by Geoffrey Garen.
858
859         Added the [CustomBinding] IDL extended attribute. The idea is that when using this attribute, bindings generate
860         only the signature of the JS functions and we have to implement all the access in the Custom.cpp files, meaning
861         accessing the implementations at our wish.
862
863         Added customBindingMethod, customBindingMethodWithArgs to the generator tests.
864
865         * bindings/scripts/CodeGeneratorGObject.pm:
866         (SkipFunction): Skipped [CustomBinding] methods.
867         * bindings/scripts/CodeGeneratorJS.pm:
868         (GenerateHeader): Consider CustomBinding as ForwardDeclareInHeader.
869         (GenerateImplementation): Avoid printing both header and implementation of the function.
870         * bindings/scripts/CodeGeneratorObjC.pm:
871         (SkipFunction): Skipped [CustomBinding] methods.
872         * bindings/scripts/IDLAttributes.txt: Added [CustomBinding] IDL extended attribute.
873         * bindings/scripts/test/JS/JSTestObj.cpp:
874         * bindings/scripts/test/TestObj.idl: Added customBindingMethod, customBindingMethodWithArgs and their
875         expectations.
876
877 2015-08-06  Zan Dobersek  <zdobersek@igalia.com>
878
879         Source/WebCore/crypto code should pass std::function<> objects through rvalue references
880         https://bugs.webkit.org/show_bug.cgi?id=147332
881
882         Reviewed by Anders Carlsson.
883
884         Pass the std::function<> callbacks through CryptoAlgorithm methods via
885         rvlaue references. This avoids generation of unnecessary move and copy
886         constructors for std::function<> objects that are being handled.
887
888         * crypto/CryptoAlgorithm.cpp:
889         (WebCore::CryptoAlgorithm::encrypt):
890         (WebCore::CryptoAlgorithm::decrypt):
891         (WebCore::CryptoAlgorithm::sign):
892         (WebCore::CryptoAlgorithm::verify):
893         (WebCore::CryptoAlgorithm::digest):
894         (WebCore::CryptoAlgorithm::generateKey):
895         (WebCore::CryptoAlgorithm::deriveKey):
896         (WebCore::CryptoAlgorithm::deriveBits):
897         (WebCore::CryptoAlgorithm::importKey):
898         (WebCore::CryptoAlgorithm::encryptForWrapKey):
899         (WebCore::CryptoAlgorithm::decryptForUnwrapKey):
900         * crypto/CryptoAlgorithm.h:
901         * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
902         (WebCore::CryptoAlgorithmAES_CBC::encrypt):
903         (WebCore::CryptoAlgorithmAES_CBC::decrypt):
904         (WebCore::CryptoAlgorithmAES_CBC::generateKey):
905         (WebCore::CryptoAlgorithmAES_CBC::importKey):
906         * crypto/algorithms/CryptoAlgorithmAES_CBC.h:
907         * crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
908         (WebCore::CryptoAlgorithmAES_KW::encryptForWrapKey):
909         (WebCore::CryptoAlgorithmAES_KW::decryptForUnwrapKey):
910         (WebCore::CryptoAlgorithmAES_KW::generateKey):
911         (WebCore::CryptoAlgorithmAES_KW::importKey):
912         * crypto/algorithms/CryptoAlgorithmAES_KW.h:
913         * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
914         (WebCore::CryptoAlgorithmHMAC::sign):
915         (WebCore::CryptoAlgorithmHMAC::verify):
916         (WebCore::CryptoAlgorithmHMAC::generateKey):
917         (WebCore::CryptoAlgorithmHMAC::importKey):
918         * crypto/algorithms/CryptoAlgorithmHMAC.h:
919         * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:
920         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt):
921         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt):
922         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey):
923         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::importKey):
924         * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h:
925         * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
926         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
927         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
928         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::generateKey):
929         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::importKey):
930         * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
931         * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
932         (WebCore::CryptoAlgorithmRSA_OAEP::encrypt):
933         (WebCore::CryptoAlgorithmRSA_OAEP::decrypt):
934         (WebCore::CryptoAlgorithmRSA_OAEP::generateKey):
935         (WebCore::CryptoAlgorithmRSA_OAEP::importKey):
936         * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h:
937         * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
938         (WebCore::CryptoAlgorithmSHA1::digest):
939         * crypto/algorithms/CryptoAlgorithmSHA1.h:
940         * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
941         (WebCore::CryptoAlgorithmSHA224::digest):
942         * crypto/algorithms/CryptoAlgorithmSHA224.h:
943         * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
944         (WebCore::CryptoAlgorithmSHA256::digest):
945         * crypto/algorithms/CryptoAlgorithmSHA256.h:
946         * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
947         (WebCore::CryptoAlgorithmSHA384::digest):
948         * crypto/algorithms/CryptoAlgorithmSHA384.h:
949         * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
950         (WebCore::CryptoAlgorithmSHA512::digest):
951         * crypto/algorithms/CryptoAlgorithmSHA512.h:
952         * crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp:
953         (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
954         (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
955         * crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp:
956         (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
957         (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
958         * crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp:
959         (WebCore::CryptoAlgorithmHMAC::platformSign):
960         (WebCore::CryptoAlgorithmHMAC::platformVerify):
961         * crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp:
962         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
963         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
964         * crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp:
965         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
966         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
967         * crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp:
968         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
969         (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
970         * crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:
971         (WebCore::transformAES_CBC):
972         (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
973         (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
974         * crypto/mac/CryptoAlgorithmAES_KWMac.cpp:
975         (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
976         (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
977         * crypto/mac/CryptoAlgorithmHMACMac.cpp:
978         (WebCore::CryptoAlgorithmHMAC::platformSign):
979         (WebCore::CryptoAlgorithmHMAC::platformVerify):
980         * crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp:
981         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
982         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
983         * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
984         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
985         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
986         * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp:
987         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
988         (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
989
990 2015-08-06  Alex Christensen  <achristensen@webkit.org>
991
992         Fix GTK clean build after r187997
993         https://bugs.webkit.org/show_bug.cgi?id=147723
994
995         Reviewed by Gyuyoung Kim.
996
997         * CMakeLists.txt:
998         r187997 made it so WebCoreTestSupport does not link with WebCore, which is necessary to get DumpRenderTree to link.
999         It also made it so WebCoreTestSupport is no longer dependent on WebCore, which causes it to build at the same time.
1000         This caused problems because WebCoreTestSupport uses headers that are generated for WebCore, such as WebKitFontFamilyNames.h.
1001         Adding a dependency makes it so that WebCoreTestSupport waits until WebCore is done compiling before compiling,
1002         which is what it used to do, but it does not cause linking problems with DumpRenderTree.
1003
1004 2015-08-06  Myles C. Maxfield  <mmaxfield@apple.com>
1005
1006         CSSSegmentedFontFace::fontRanges() does not handle duplicate fonts correctly
1007         https://bugs.webkit.org/show_bug.cgi?id=147765
1008
1009         Reviewed by Filip Pizlo.
1010
1011         CSSSegmentedFontFace::fontRanges() was trying to hash on FontDescriptors by
1012         picking a few specific pieces of data out of the FontDescriptor, computing
1013         a hash on it, and using that unsigned as a key in a HashMap. This has two
1014         problems: it doesn't handle equality correctly, as hash collisions cannot
1015         depend on an equality operator to dedup, and it doesn't hash on all the
1016         members of a FontDescription.
1017
1018         Instead, this HashMap should use FontDescriptionKey, which represents a
1019         FontDescription, and is designed exactly for the purpose of being used as a
1020         key in a HashMap.
1021
1022         No new tests because there is no behavior change (because a problem occurs
1023         when two different FontDescriptions hash to the same value, which is rare).
1024
1025         * css/CSSSegmentedFontFace.cpp:
1026         (WebCore::CSSSegmentedFontFace::fontRanges):
1027         * css/CSSSegmentedFontFace.h:
1028         * platform/graphics/FontCache.h:
1029         (WebCore::FontDescriptionKeyHash::hash):
1030         (WebCore::FontDescriptionKeyHash::equal):
1031
1032 2015-08-06  Myles C. Maxfield  <mmaxfield@apple.com>
1033
1034         [iOS] Remove dead code from FontCache::createFontPlatformData()
1035         https://bugs.webkit.org/show_bug.cgi?id=147762
1036
1037         Reviewed by Andy Estes.
1038
1039         No new tests because there is no behavior change.
1040
1041         * platform/graphics/ios/FontCacheIOS.mm:
1042         (WebCore::FontCache::createFontPlatformData): Deleted.
1043
1044 2015-08-06  Alex Christensen  <achristensen@webkit.org>
1045
1046         Revert part of my "build fix" in r188101.
1047
1048         * CMakeLists.txt:
1049         MockCDM was already conditionally added to WebCore_SOURCES, and that change causes dependency cycles when bug 147723 is fixed.
1050
1051 2015-08-06  Alex Christensen  <achristensen@webkit.org>
1052
1053         [Win] CMake build fix after r188098.
1054
1055         * CMakeLists.txt:
1056         MockCDM is necessary for testing if ENCRYPTED_MEDIA_V2 is enabled.
1057
1058 2015-08-06  Alex Christensen  <achristensen@webkit.org>
1059
1060         [Win] Enable all Windows features in CMake
1061         https://bugs.webkit.org/show_bug.cgi?id=147744
1062
1063         Reviewed by Tim Horton.
1064
1065         * PlatformWin.cmake:
1066         Add a file needed for enabling video.
1067
1068 2015-08-06  Anders Carlsson  <andersca@apple.com>
1069
1070         Rename SQLStatementBackend to SQLStatement
1071         https://bugs.webkit.org/show_bug.cgi?id=147755
1072
1073         Reviewed by Geoffrey Garen.
1074
1075         * CMakeLists.txt:
1076         * Modules/webdatabase/SQLStatement.h: Renamed from Source/WebCore/Modules/webdatabase/SQLStatementBackend.h.
1077         (WebCore::SQLStatement::hasStatementCallback):
1078         (WebCore::SQLStatement::hasStatementErrorCallback):
1079         * Modules/webdatabase/SQLStatementBackend.cpp: Removed.
1080         (WebCore::SQLStatementBackend::SQLStatementBackend): Deleted.
1081         (WebCore::SQLStatementBackend::~SQLStatementBackend): Deleted.
1082         (WebCore::SQLStatementBackend::sqlError): Deleted.
1083         (WebCore::SQLStatementBackend::sqlResultSet): Deleted.
1084         (WebCore::SQLStatementBackend::execute): Deleted.
1085         (WebCore::SQLStatementBackend::performCallback): Deleted.
1086         (WebCore::SQLStatementBackend::setDatabaseDeletedError): Deleted.
1087         (WebCore::SQLStatementBackend::setVersionMismatchedError): Deleted.
1088         (WebCore::SQLStatementBackend::setFailureDueToQuota): Deleted.
1089         (WebCore::SQLStatementBackend::clearFailureDueToQuota): Deleted.
1090         (WebCore::SQLStatementBackend::lastExecutionFailedDueToQuota): Deleted.
1091         * Modules/webdatabase/SQLStatementBackend.h:
1092         (WebCore::SQLStatementBackend::hasStatementCallback): Deleted.
1093         (WebCore::SQLStatementBackend::hasStatementErrorCallback): Deleted.
1094         * Modules/webdatabase/SQLTransaction.cpp:
1095         (WebCore::SQLTransaction::deliverStatementCallback):
1096         (WebCore::SQLTransaction::executeSQL):
1097         * Modules/webdatabase/SQLTransactionBackend.cpp:
1098         (WebCore::SQLTransactionBackend::currentStatement):
1099         (WebCore::SQLTransactionBackend::enqueueStatementBackend):
1100         (WebCore::SQLTransactionBackend::executeSQL):
1101         * Modules/webdatabase/SQLTransactionBackend.h:
1102         * WebCore.vcxproj/WebCore.vcxproj:
1103         * WebCore.vcxproj/WebCore.vcxproj.filters:
1104         * WebCore.xcodeproj/project.pbxproj:
1105
1106 2015-08-06  Myles C. Maxfield  <mmaxfield@apple.com>
1107
1108         Make FontDescriptionKey sensitive to FontFeatureSettings
1109         https://bugs.webkit.org/show_bug.cgi?id=147751
1110
1111         Reviewed by Anders Carlsson.
1112
1113         Just like how FontDescription hashes should be sensitive to locale, they should
1114         also be sensitive to font features.
1115
1116         This patch also fixes operator== for FontDescriptionKey, which was previously
1117         comparing hashes for equality instead of the underlying data. Comparing hashes
1118         for equality is useless inside hashmaps.
1119
1120         This is in preparation for implementing font-feature-settings.
1121
1122         No new tests because there is no behavior change.
1123
1124         * platform/graphics/FontCache.cpp:
1125         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1126         (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
1127         (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): Deleted.
1128         * platform/graphics/FontCache.h:
1129         (WebCore::FontDescriptionKey::FontDescriptionKey):
1130         (WebCore::FontDescriptionKey::operator==):
1131         (WebCore::FontDescriptionKey::operator!=):
1132         (WebCore::FontDescriptionKey::isHashTableDeletedValue):
1133         (WebCore::FontDescriptionKey::computeHash):
1134         * platform/graphics/FontFeatureSettings.cpp:
1135         (WebCore::FontFeature::hash):
1136         (WebCore::FontFeatureSettings::hash):
1137         * platform/graphics/FontFeatureSettings.h:
1138
1139 2015-08-06  Anders Carlsson  <andersca@apple.com>
1140
1141         Merge SQLStatement into SQLStatementBackend
1142         https://bugs.webkit.org/show_bug.cgi?id=147754
1143
1144         Reviewed by Geoffrey Garen.
1145
1146         * CMakeLists.txt:
1147         * Modules/webdatabase/Database.h:
1148         * Modules/webdatabase/SQLStatement.cpp: Removed.
1149         (WebCore::SQLStatement::SQLStatement): Deleted.
1150         (WebCore::SQLStatement::setBackend): Deleted.
1151         (WebCore::SQLStatement::hasCallback): Deleted.
1152         (WebCore::SQLStatement::hasErrorCallback): Deleted.
1153         (WebCore::SQLStatement::performCallback): Deleted.
1154         * Modules/webdatabase/SQLStatement.h: Removed.
1155         * Modules/webdatabase/SQLStatementBackend.cpp:
1156         (WebCore::SQLStatementBackend::SQLStatementBackend):
1157         (WebCore::SQLStatementBackend::performCallback):
1158         (WebCore::SQLStatementBackend::frontend): Deleted.
1159         * Modules/webdatabase/SQLStatementBackend.h:
1160         (WebCore::SQLStatementBackend::hasStatementCallback):
1161         (WebCore::SQLStatementBackend::hasStatementErrorCallback):
1162         * Modules/webdatabase/SQLTransaction.cpp:
1163         (WebCore::SQLTransaction::deliverStatementCallback):
1164         (WebCore::SQLTransaction::executeSQL):
1165         * Modules/webdatabase/SQLTransaction.h:
1166         * Modules/webdatabase/SQLTransactionBackend.cpp:
1167         (WebCore::SQLTransactionBackend::currentStatement):
1168         (WebCore::SQLTransactionBackend::executeSQL):
1169         * Modules/webdatabase/SQLTransactionBackend.h:
1170         * WebCore.vcxproj/WebCore.vcxproj:
1171         * WebCore.vcxproj/WebCore.vcxproj.filters:
1172         * WebCore.xcodeproj/project.pbxproj:
1173         * bindings/js/JSSQLTransactionCustom.cpp:
1174
1175 2015-08-06  Chris Dumez  <cdumez@apple.com>
1176
1177         Toggle GPS state based on page visibility to save battery
1178         https://bugs.webkit.org/show_bug.cgi?id=147685
1179
1180         Reviewed by Benjamin Poulain.
1181
1182         Toggle GPS state based on page visibility to save battery. Previously,
1183         if the site you were viewing was watching your position and you
1184         switched tab, the GPS would stay on. This was bad for battery life.
1185
1186         Tests: fast/dom/Geolocation/startUpdatingOnlyWhenPageVisible.html
1187                fast/dom/Geolocation/stopUpdatingForHiddenPage.html
1188
1189         * Modules/geolocation/GeolocationController.cpp:
1190         (WebCore::GeolocationController::addObserver):
1191         (WebCore::GeolocationController::viewStateDidChange):
1192
1193 2015-08-06  Anders Carlsson  <andersca@apple.com>
1194
1195         SQLStatementBackend doesn't need to be refcounted
1196         https://bugs.webkit.org/show_bug.cgi?id=147748
1197
1198         Reviewed by Geoffrey Garen.
1199
1200         There's no shared ownership of SQLStatementBackend so we can just use std::unique_ptr.
1201
1202         * Modules/webdatabase/SQLStatementBackend.cpp:
1203         (WebCore::SQLStatementBackend::create): Deleted.
1204         * Modules/webdatabase/SQLStatementBackend.h:
1205         * Modules/webdatabase/SQLTransactionBackend.cpp:
1206         (WebCore::SQLTransactionBackend::enqueueStatementBackend):
1207         (WebCore::SQLTransactionBackend::executeSQL):
1208         * Modules/webdatabase/SQLTransactionBackend.h:
1209
1210 2015-08-06  Eric Carlson  <eric.carlson@apple.com>
1211
1212         Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
1213         https://bugs.webkit.org/show_bug.cgi?id=147734
1214         rdar://problem/22028179
1215
1216         Reviewed by Andy Estes.
1217
1218         Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735
1219
1220         * dom/Document.cpp:
1221         (WebCore::Document::initSecurityContext): Use applyContentDispositionAttachmentSandbox
1222           instead of setting sandbox flags directly.
1223         (WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Don't special
1224           case MediaDocument.
1225         (WebCore::Document::applyContentDispositionAttachmentSandbox): Apply sandbox flags
1226           according to document type.
1227         * dom/Document.h:
1228
1229 2015-08-06  Anders Carlsson  <andersca@apple.com>
1230
1231         Get rid of DatabaseBackendBase
1232         https://bugs.webkit.org/show_bug.cgi?id=147733
1233
1234         Reviewed by Geoffrey Garen.
1235
1236         * CMakeLists.txt:
1237         * Modules/webdatabase/Database.cpp:
1238         (WebCore::Database::Database):
1239         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
1240         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
1241         * Modules/webdatabase/Database.h:
1242         * Modules/webdatabase/DatabaseBackendBase.cpp: Removed.
1243         (WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
1244         (WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.
1245         * Modules/webdatabase/DatabaseBackendBase.h: Removed.
1246         * Modules/webdatabase/DatabaseManager.cpp:
1247         * Modules/webdatabase/DatabaseManager.h:
1248         * Modules/webdatabase/DatabaseTracker.cpp:
1249         * WebCore.vcxproj/WebCore.vcxproj:
1250         * WebCore.vcxproj/WebCore.vcxproj.filters:
1251         * WebCore.xcodeproj/project.pbxproj:
1252
1253 2015-08-06  Myles C. Maxfield  <mmaxfield@apple.com>
1254
1255         Add comment to CSSParserString
1256         https://bugs.webkit.org/show_bug.cgi?id=147724
1257
1258         Reviewed by Dean Jackson.
1259
1260         No new tests because there is no behavior change.
1261
1262         * css/CSSParserValues.h:
1263
1264 2015-08-06  Myles C. Maxfield  <mmaxfield@apple.com>
1265
1266         Font feature settings comparisons are order-dependent and case-dependent
1267         https://bugs.webkit.org/show_bug.cgi?id=147719
1268
1269         Reviewed by Benjamin Poulain.
1270
1271         We should make our settings vector order-independent and case-independent.
1272
1273         Test: css3/font-feature-settings-parsing.html
1274
1275         * css/CSSParser.cpp:
1276         (WebCore::CSSParser::parseFontFeatureTag):
1277         * css/StyleBuilderConverter.h:
1278         (WebCore::StyleBuilderConverter::convertFontFeatureSettings):
1279         * platform/graphics/FontFeatureSettings.cpp:
1280         (WebCore::FontFeature::FontFeature):
1281         (WebCore::FontFeature::operator==):
1282         (WebCore::FontFeatureSettings::FontFeatureSettings):
1283         * platform/graphics/FontFeatureSettings.h:
1284         (WebCore::FontFeature::FontFeature):
1285         (WebCore::FontFeature::operator==):
1286         (WebCore::FontFeature::operator<):
1287         (WebCore::FontFeatureSettings::insert):
1288         (WebCore::FontFeatureSettings::FontFeatureSettings):
1289         (WebCore::FontFeatureSettings::append): Deleted.
1290
1291 2015-08-06  Doug Russell  <d_russell@apple.com>
1292
1293         AX: AXLoadComplete that comes before AX API access won't fire
1294         https://bugs.webkit.org/show_bug.cgi?id=147737
1295
1296         Reviewed by Chris Fleizach.
1297
1298         Treat setEnhancedUserInterfaceAccessibility() as AX API access and if true,
1299         enableAccessibility().
1300
1301         Test: accessibility/mac/loaded-notification.html
1302
1303         * accessibility/AXObjectCache.cpp:
1304         (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
1305
1306 2015-08-06  Eric Carlson  <eric.carlson@apple.com>
1307
1308         Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
1309         https://bugs.webkit.org/show_bug.cgi?id=147734
1310         rdar://problem/22028179
1311
1312         Reviewed by Dean Jackson.
1313
1314         Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735
1315
1316         * dom/Document.cpp:
1317         (WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Return
1318           early if the Document is a MediaDocument.
1319
1320 2015-08-06  Matt Rajca  <mrajca@apple.com>
1321
1322         Media Session: remove media elements from the ID <-> element map on destruction
1323         https://bugs.webkit.org/show_bug.cgi?id=147707
1324
1325         Reviewed by Eric Carlson.
1326
1327         * html/HTMLMediaElement.cpp:
1328         (WebCore::HTMLMediaElement::~HTMLMediaElement):
1329
1330 2015-08-06  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
1331
1332         [CoordinatedGraphics] Remove unused functions in Coordinated TiledBackingStore
1333         https://bugs.webkit.org/show_bug.cgi?id=147621
1334
1335         Reviewed by Csaba Osztrogonác.
1336
1337         * platform/graphics/texmap/coordinated/TiledBackingStore.cpp: Remove setTileSize() and tileSize().
1338         (WebCore::TiledBackingStore::setTileSize):
1339
1340 2015-08-06  Anders Carlsson  <andersca@apple.com>
1341
1342         Move the last remnants of DatabaseBackendBase to Database
1343         https://bugs.webkit.org/show_bug.cgi?id=147730
1344
1345         Reviewed by Tim Horton.
1346
1347         * Modules/webdatabase/Database.cpp:
1348         (WebCore::Database::Database):
1349         (WebCore::Database::performOpenAndVerify):
1350         * Modules/webdatabase/Database.h:
1351         * Modules/webdatabase/DatabaseBackendBase.cpp:
1352         (WebCore::DatabaseBackendBase::DatabaseBackendBase):
1353         * Modules/webdatabase/DatabaseBackendBase.h:
1354         (WebCore::DatabaseBackendBase::databaseContext): Deleted.
1355         (WebCore::DatabaseBackendBase::setFrontend): Deleted.
1356
1357 2015-08-06  Alex Christensen  <achristensen@webkit.org>
1358
1359         Fix build without ENABLE(VIDEO) after r188030.
1360
1361         * dom/Document.h:
1362         * html/HTMLMediaElement.cpp:
1363         * html/HTMLMediaElement.h:
1364         Move definition of HTMLMediaElementInvalidID to Document.h so it can be used outside of ENABLE(VIDEO) macros.
1365
1366 2015-08-04  Matt Rajca  <mrajca@apple.com>
1367
1368         Media Session: push paused state to the media session focus manager instead of polling
1369         https://bugs.webkit.org/show_bug.cgi?id=147633
1370
1371         Reviewed by Simon Fraser.
1372
1373         * dom/Document.cpp:
1374         (WebCore::Document::updateIsPlayingMedia): If a valid source element ID is passed in, set the 'IsSourcePlaying'
1375          flag accordingly.
1376         * dom/Document.h:
1377         * html/HTMLMediaElement.cpp:
1378         (WebCore::HTMLMediaElement::elementWithID):
1379         (WebCore::HTMLMediaElement::setMuted): Pass along the element ID.
1380         (WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): Ditto.
1381         (WebCore::HTMLMediaElement::setPlaying): Ditto.
1382         * html/HTMLMediaElement.h:
1383         * page/ChromeClient.h:
1384         * page/MediaProducer.h:
1385         * page/Page.cpp:
1386         (WebCore::Page::updateIsPlayingMedia): Pass along the source element ID.
1387         (WebCore::Page::isMediaElementPaused): Deleted. We now push media playback state changes instead of polling.
1388         * page/Page.h:
1389
1390 2015-08-05  Myles C. Maxfield  <mmaxfield@apple.com>
1391
1392         CharacterFallbackMapKey should be locale-specific
1393         https://bugs.webkit.org/show_bug.cgi?id=147532
1394
1395         Reviewed by Dean Jackson.
1396
1397         This is in preparation for locale-specific font fallback.
1398
1399         No new tests because there is no behavior change.
1400
1401         * platform/graphics/Font.cpp:
1402         (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
1403         (WebCore::CharacterFallbackMapKey::operator==):
1404         (WebCore::CharacterFallbackMapKeyHash::hash):
1405         (WebCore::Font::systemFallbackFontForCharacter):
1406
1407 2015-08-05  Myles C. Maxfield  <mmaxfield@apple.com>
1408
1409         Expand CharacterFallbackMapKey to a struct
1410         https://bugs.webkit.org/show_bug.cgi?id=147530
1411
1412         Reviewed by Dean Jackson.
1413
1414         This is in prepraration for making this struct locale-specific.
1415
1416         No new tests because there is no behavior change.
1417
1418         * platform/graphics/Font.cpp:
1419         (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
1420         (WebCore::CharacterFallbackMapKey::isHashTableDeletedValue):
1421         (WebCore::CharacterFallbackMapKey::operator==):
1422         (WebCore::CharacterFallbackMapKeyHash::hash):
1423         (WebCore::CharacterFallbackMapKeyHash::equal):
1424         (WebCore::Font::systemFallbackFontForCharacter):
1425
1426 2015-08-05  Chris Dumez  <cdumez@apple.com>
1427
1428         Crash when removing children of a MathMLSelectElement
1429         https://bugs.webkit.org/show_bug.cgi?id=147704
1430         <rdar://problem/21940321>
1431
1432         Reviewed by Ryosuke Niwa.
1433
1434         When MathMLSelectElement::childrenChanged() is called after its
1435         children have been removed, MathMLSelectElement calls
1436         updateSelectedChild() which accesses m_selectedChild. However,
1437         in this case, m_selectedChild is the previously selected child
1438         and it may be destroyed as this point if it was removed. To avoid
1439         this problem, MathMLSelectElement now keep a strong ref to the
1440         currently selected element.
1441
1442         Test: mathml/maction-removeChild.html
1443
1444         * mathml/MathMLSelectElement.h:
1445
1446 2015-08-05  Myles C. Maxfield  <mmaxfield@apple.com>
1447
1448         Migrate FontCascade.cpp to NeverDestroyed
1449         https://bugs.webkit.org/show_bug.cgi?id=147533
1450
1451         Reviewed by Simon Fraser.
1452
1453         No new tests because there is no behavior change.
1454
1455         * platform/graphics/FontCascade.cpp:
1456         (WebCore::fontCascadeCache):
1457
1458 2015-08-05  Tim Horton  <timothy_horton@apple.com>
1459
1460         Try to fix the build
1461
1462         * Modules/webdatabase/Database.cpp:
1463         (WebCore::Database::performOpenAndVerify):
1464         * Modules/webdatabase/Database.h:
1465
1466 2015-08-05  Myles C. Maxfield  <mmaxfield@apple.com>
1467
1468         Delete duplicate forward-declaration
1469         https://bugs.webkit.org/show_bug.cgi?id=147701
1470
1471         Reviewed by Simon Fraser.
1472
1473         No new tests because there is no behavior change.
1474
1475         * platform/spi/cocoa/CoreTextSPI.h:
1476
1477 2015-08-05  Anders Carlsson  <andersca@apple.com>
1478
1479         Move the last DatabaseBackendBase functions over to Database
1480         https://bugs.webkit.org/show_bug.cgi?id=147706
1481
1482         Reviewed by Tim Horton.
1483
1484         * Modules/webdatabase/Database.cpp:
1485         (WebCore::Database::~Database):
1486         (WebCore::Database::setExpectedVersion):
1487         (WebCore::Database::getActualVersionForTransaction):
1488         (WebCore::Database::version):
1489         (WebCore::Database::stringIdentifier):
1490         (WebCore::Database::displayName):
1491         (WebCore::Database::estimatedSize):
1492         (WebCore::Database::fileName):
1493         (WebCore::Database::details):
1494         (WebCore::Database::maximumSize):
1495         (WebCore::Database::databaseDebugName):
1496         * Modules/webdatabase/Database.h:
1497         * Modules/webdatabase/DatabaseBackendBase.cpp:
1498         (WebCore::DatabaseBackendBase::databaseDebugName): Deleted.
1499         (WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.
1500         (WebCore::DatabaseBackendBase::version): Deleted.
1501         (WebCore::DatabaseBackendBase::securityOrigin): Deleted.
1502         (WebCore::DatabaseBackendBase::stringIdentifier): Deleted.
1503         (WebCore::DatabaseBackendBase::displayName): Deleted.
1504         (WebCore::DatabaseBackendBase::estimatedSize): Deleted.
1505         (WebCore::DatabaseBackendBase::fileName): Deleted.
1506         (WebCore::DatabaseBackendBase::details): Deleted.
1507         (WebCore::DatabaseBackendBase::setExpectedVersion): Deleted.
1508         (WebCore::DatabaseBackendBase::getActualVersionForTransaction): Deleted.
1509         (WebCore::DatabaseBackendBase::maximumSize): Deleted.
1510         * Modules/webdatabase/DatabaseBackendBase.h:
1511         (WebCore::DatabaseBackendBase::opened): Deleted.
1512         (WebCore::DatabaseBackendBase::isNew): Deleted.
1513         (WebCore::DatabaseBackendBase::sqliteDatabase): Deleted.
1514         (WebCore::DatabaseBackendBase::expectedVersion): Deleted.
1515         * Modules/webdatabase/SQLTransactionClient.cpp:
1516         (WebCore::SQLTransactionClient::didCommitWriteTransaction):
1517         (WebCore::SQLTransactionClient::didExceedQuota):
1518         * Modules/webdatabase/SQLTransactionClient.h:
1519
1520 2015-08-05  Filip Pizlo  <fpizlo@apple.com>
1521
1522         Unreviewed, roll out http://trac.webkit.org/changeset/187972.
1523
1524         * Modules/webaudio/AsyncAudioDecoder.cpp:
1525         (WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
1526         (WebCore::AsyncAudioDecoder::runLoop):
1527         * Modules/webaudio/AsyncAudioDecoder.h:
1528         * Modules/webaudio/AudioContext.h:
1529         * Modules/webaudio/MediaStreamAudioSource.cpp:
1530         (WebCore::MediaStreamAudioSource::addAudioConsumer):
1531         (WebCore::MediaStreamAudioSource::removeAudioConsumer):
1532         (WebCore::MediaStreamAudioSource::setAudioFormat):
1533         (WebCore::MediaStreamAudioSource::consumeAudio):
1534         * Modules/webaudio/MediaStreamAudioSource.h:
1535         * Modules/webdatabase/Database.cpp:
1536         (WebCore::Database::close):
1537         (WebCore::Database::runTransaction):
1538         (WebCore::Database::inProgressTransactionCompleted):
1539         (WebCore::Database::hasPendingTransaction):
1540         * Modules/webdatabase/DatabaseTask.h:
1541         * Modules/webdatabase/DatabaseThread.cpp:
1542         (WebCore::DatabaseThread::start):
1543         (WebCore::DatabaseThread::databaseThread):
1544         * Modules/webdatabase/DatabaseThread.h:
1545         * Modules/webdatabase/DatabaseTracker.cpp:
1546         (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
1547         (WebCore::DatabaseTracker::canEstablishDatabase):
1548         (WebCore::DatabaseTracker::retryCanEstablishDatabase):
1549         (WebCore::DatabaseTracker::hasEntryForOrigin):
1550         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
1551         (WebCore::DatabaseTracker::closeAllDatabases):
1552         (WebCore::DatabaseTracker::fullPathForDatabase):
1553         (WebCore::DatabaseTracker::origins):
1554         (WebCore::DatabaseTracker::databaseNamesForOrigin):
1555         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
1556         (WebCore::DatabaseTracker::setDatabaseDetails):
1557         (WebCore::DatabaseTracker::doneCreatingDatabase):
1558         (WebCore::DatabaseTracker::addOpenDatabase):
1559         (WebCore::DatabaseTracker::removeOpenDatabase):
1560         (WebCore::DatabaseTracker::getOpenDatabases):
1561         (WebCore::DatabaseTracker::originLockFor):
1562         (WebCore::DatabaseTracker::quotaForOrigin):
1563         (WebCore::DatabaseTracker::setQuota):
1564         (WebCore::DatabaseTracker::deleteOrigin):
1565         (WebCore::DatabaseTracker::deleteDatabase):
1566         (WebCore::DatabaseTracker::deleteDatabaseFile):
1567         (WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
1568         (WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
1569         (WebCore::DatabaseTracker::openDatabaseMutex):
1570         (WebCore::DatabaseTracker::setClient):
1571         (WebCore::notificationMutex):
1572         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
1573         (WebCore::DatabaseTracker::notifyDatabasesChanged):
1574         * Modules/webdatabase/DatabaseTracker.h:
1575         * Modules/webdatabase/OriginLock.h:
1576         * Modules/webdatabase/SQLCallbackWrapper.h:
1577         (WebCore::SQLCallbackWrapper::clear):
1578         (WebCore::SQLCallbackWrapper::unwrap):
1579         (WebCore::SQLCallbackWrapper::hasCallback):
1580         * Modules/webdatabase/SQLTransactionBackend.cpp:
1581         (WebCore::SQLTransactionBackend::doCleanup):
1582         (WebCore::SQLTransactionBackend::enqueueStatementBackend):
1583         (WebCore::SQLTransactionBackend::getNextStatement):
1584         * Modules/webdatabase/SQLTransactionBackend.h:
1585         * bindings/js/WorkerScriptController.cpp:
1586         (WebCore::WorkerScriptController::scheduleExecutionTermination):
1587         (WebCore::WorkerScriptController::isExecutionTerminating):
1588         * bindings/js/WorkerScriptController.h:
1589         * dom/default/PlatformMessagePortChannel.cpp:
1590         (WebCore::MessagePortChannel::postMessageToRemote):
1591         (WebCore::MessagePortChannel::tryGetMessageFromRemote):
1592         (WebCore::MessagePortChannel::isConnectedTo):
1593         (WebCore::MessagePortChannel::hasPendingActivity):
1594         (WebCore::MessagePortChannel::locallyEntangledPort):
1595         (WebCore::PlatformMessagePortChannel::setRemotePort):
1596         (WebCore::PlatformMessagePortChannel::entangledChannel):
1597         (WebCore::PlatformMessagePortChannel::closeInternal):
1598         * dom/default/PlatformMessagePortChannel.h:
1599         * loader/icon/IconDatabase.cpp:
1600         (WebCore::IconDatabase::removeAllIcons):
1601         (WebCore::IconDatabase::synchronousIconForPageURL):
1602         (WebCore::IconDatabase::synchronousNativeIconForPageURL):
1603         (WebCore::IconDatabase::synchronousIconURLForPageURL):
1604         (WebCore::IconDatabase::retainIconForPageURL):
1605         (WebCore::IconDatabase::performRetainIconForPageURL):
1606         (WebCore::IconDatabase::releaseIconForPageURL):
1607         (WebCore::IconDatabase::performReleaseIconForPageURL):
1608         (WebCore::IconDatabase::setIconDataForIconURL):
1609         (WebCore::IconDatabase::setIconURLForPageURL):
1610         (WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
1611         (WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
1612         (WebCore::IconDatabase::pageURLMappingCount):
1613         (WebCore::IconDatabase::retainedPageURLCount):
1614         (WebCore::IconDatabase::iconRecordCount):
1615         (WebCore::IconDatabase::iconRecordCountWithData):
1616         (WebCore::IconDatabase::wakeSyncThread):
1617         (WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
1618         (WebCore::IconDatabase::databasePath):
1619         (WebCore::IconDatabase::getOrCreatePageURLRecord):
1620         (WebCore::IconDatabase::iconDatabaseSyncThread):
1621         (WebCore::IconDatabase::performOpenInitialization):
1622         (WebCore::IconDatabase::performURLImport):
1623         (WebCore::IconDatabase::syncThreadMainLoop):
1624         (WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
1625         (WebCore::IconDatabase::readFromDatabase):
1626         (WebCore::IconDatabase::writeToDatabase):
1627         (WebCore::IconDatabase::pruneUnretainedIcons):
1628         (WebCore::IconDatabase::cleanupSyncThread):
1629         * loader/icon/IconDatabase.h:
1630         * page/scrolling/ScrollingTree.cpp:
1631         (WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
1632         (WebCore::ScrollingTree::commitNewTreeState):
1633         (WebCore::ScrollingTree::setMainFramePinState):
1634         (WebCore::ScrollingTree::mainFrameScrollPosition):
1635         (WebCore::ScrollingTree::setMainFrameScrollPosition):
1636         (WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
1637         (WebCore::ScrollingTree::isRubberBandInProgress):
1638         (WebCore::ScrollingTree::setMainFrameIsRubberBanding):
1639         (WebCore::ScrollingTree::isScrollSnapInProgress):
1640         (WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
1641         (WebCore::ScrollingTree::setCanRubberBandState):
1642         (WebCore::ScrollingTree::rubberBandsAtLeft):
1643         (WebCore::ScrollingTree::rubberBandsAtRight):
1644         (WebCore::ScrollingTree::rubberBandsAtBottom):
1645         (WebCore::ScrollingTree::rubberBandsAtTop):
1646         (WebCore::ScrollingTree::setScrollPinningBehavior):
1647         (WebCore::ScrollingTree::scrollPinningBehavior):
1648         (WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
1649         (WebCore::ScrollingTree::latchedNode):
1650         (WebCore::ScrollingTree::setLatchedNode):
1651         (WebCore::ScrollingTree::clearLatchedNode):
1652         * page/scrolling/ScrollingTree.h:
1653         * platform/MemoryPressureHandler.h:
1654         * platform/audio/HRTFDatabaseLoader.cpp:
1655         (WebCore::HRTFDatabaseLoader::loadAsynchronously):
1656         (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
1657         * platform/audio/HRTFDatabaseLoader.h:
1658         * platform/cocoa/MemoryPressureHandlerCocoa.mm:
1659         (WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
1660         (WebCore::MemoryPressureHandler::clearMemoryPressure):
1661         (WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
1662         (WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):
1663         * platform/graphics/DisplayRefreshMonitor.cpp:
1664         (WebCore::DisplayRefreshMonitor::displayDidRefresh):
1665         * platform/graphics/DisplayRefreshMonitor.h:
1666         (WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
1667         (WebCore::DisplayRefreshMonitor::mutex):
1668         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1669         (WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
1670         (WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
1671         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
1672         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1673         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
1674         (WebCore::AVFWrapper::callbackContext):
1675         (WebCore::AVFWrapper::~AVFWrapper):
1676         (WebCore::AVFWrapper::mapLock):
1677         (WebCore::AVFWrapper::addToMap):
1678         (WebCore::AVFWrapper::removeFromMap):
1679         (WebCore::AVFWrapper::periodicTimeObserverCallback):
1680         (WebCore::AVFWrapper::processNotification):
1681         (WebCore::AVFWrapper::loadPlayableCompletionCallback):
1682         (WebCore::AVFWrapper::loadMetadataCompletionCallback):
1683         (WebCore::AVFWrapper::seekCompletedCallback):
1684         (WebCore::AVFWrapper::processCue):
1685         (WebCore::AVFWrapper::legibleOutputCallback):
1686         (WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
1687         (WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):
1688         * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
1689         (WebCore::InbandTextTrackPrivateGStreamer::handleSample):
1690         (WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):
1691         * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
1692         * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
1693         (WebCore::TrackPrivateBaseGStreamer::tagsChanged):
1694         (WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
1695         * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
1696         * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
1697         (WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
1698         (WebCore::DisplayRefreshMonitorMac::displayLinkFired):
1699         * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
1700         (WebCore::MediaPlayerPrivateMediaFoundation::addListener):
1701         (WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
1702         (WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
1703         (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
1704         (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
1705         * platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
1706         * platform/ios/LegacyTileCache.h:
1707         * platform/ios/LegacyTileCache.mm:
1708         (WebCore::LegacyTileCache::setTilesOpaque):
1709         (WebCore::LegacyTileCache::doLayoutTiles):
1710         (WebCore::LegacyTileCache::setCurrentScale):
1711         (WebCore::LegacyTileCache::commitScaleChange):
1712         (WebCore::LegacyTileCache::layoutTilesNow):
1713         (WebCore::LegacyTileCache::layoutTilesNowForRect):
1714         (WebCore::LegacyTileCache::removeAllNonVisibleTiles):
1715         (WebCore::LegacyTileCache::removeAllTiles):
1716         (WebCore::LegacyTileCache::removeForegroundTiles):
1717         (WebCore::LegacyTileCache::setContentReplacementImage):
1718         (WebCore::LegacyTileCache::contentReplacementImage):
1719         (WebCore::LegacyTileCache::tileCreationTimerFired):
1720         (WebCore::LegacyTileCache::setNeedsDisplayInRect):
1721         (WebCore::LegacyTileCache::updateTilingMode):
1722         (WebCore::LegacyTileCache::setTilingMode):
1723         (WebCore::LegacyTileCache::doPendingRepaints):
1724         (WebCore::LegacyTileCache::flushSavedDisplayRects):
1725         (WebCore::LegacyTileCache::prepareToDraw):
1726         * platform/ios/LegacyTileLayerPool.h:
1727         * platform/ios/LegacyTileLayerPool.mm:
1728         (WebCore::LegacyTileLayerPool::addLayer):
1729         (WebCore::LegacyTileLayerPool::takeLayerWithSize):
1730         (WebCore::LegacyTileLayerPool::setCapacity):
1731         (WebCore::LegacyTileLayerPool::prune):
1732         (WebCore::LegacyTileLayerPool::drain):
1733         * platform/network/curl/CurlDownload.cpp:
1734         (WebCore::CurlDownloadManager::add):
1735         (WebCore::CurlDownloadManager::remove):
1736         (WebCore::CurlDownloadManager::getActiveDownloadCount):
1737         (WebCore::CurlDownloadManager::getPendingDownloadCount):
1738         (WebCore::CurlDownloadManager::stopThreadIfIdle):
1739         (WebCore::CurlDownloadManager::updateHandleList):
1740         (WebCore::CurlDownload::~CurlDownload):
1741         (WebCore::CurlDownload::init):
1742         (WebCore::CurlDownload::getTempPath):
1743         (WebCore::CurlDownload::getUrl):
1744         (WebCore::CurlDownload::getResponse):
1745         (WebCore::CurlDownload::closeFile):
1746         (WebCore::CurlDownload::didReceiveHeader):
1747         (WebCore::CurlDownload::didReceiveData):
1748         (WebCore::CurlDownload::didFail):
1749         * platform/network/curl/CurlDownload.h:
1750         * platform/network/curl/ResourceHandleManager.cpp:
1751         (WebCore::cookieJarPath):
1752         (WebCore::sharedResourceMutex):
1753         (WebCore::curl_lock_callback):
1754         (WebCore::curl_unlock_callback):
1755         * platform/network/ios/QuickLook.mm:
1756         (WebCore::QLDirectoryAttributes):
1757         (qlPreviewConverterDictionaryMutex):
1758         (WebCore::addQLPreviewConverterWithFileForURL):
1759         (WebCore::qlPreviewConverterUTIForURL):
1760         (WebCore::removeQLPreviewConverterForURL):
1761         (WebCore::safeQLURLForDocumentURLAndResourceURL):
1762         * platform/sql/SQLiteDatabase.cpp:
1763         (WebCore::SQLiteDatabase::close):
1764         (WebCore::SQLiteDatabase::maximumSize):
1765         (WebCore::SQLiteDatabase::setMaximumSize):
1766         (WebCore::SQLiteDatabase::pageSize):
1767         (WebCore::SQLiteDatabase::freeSpaceSize):
1768         (WebCore::SQLiteDatabase::totalSize):
1769         (WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
1770         (WebCore::SQLiteDatabase::setAuthorizer):
1771         * platform/sql/SQLiteDatabase.h:
1772         (WebCore::SQLiteDatabase::databaseMutex):
1773         * platform/sql/SQLiteStatement.cpp:
1774         (WebCore::SQLiteStatement::prepare):
1775         (WebCore::SQLiteStatement::step):
1776         * workers/WorkerThread.cpp:
1777         (WebCore::WorkerThread::start):
1778         (WebCore::WorkerThread::workerThread):
1779         (WebCore::WorkerThread::stop):
1780         * workers/WorkerThread.h:
1781
1782 2015-08-05  Anders Carlsson  <andersca@apple.com>
1783
1784         Move more functions from DatabaseBackendBase to Database
1785         https://bugs.webkit.org/show_bug.cgi?id=147705
1786
1787         Reviewed by Tim Horton.
1788
1789         * Modules/webdatabase/Database.cpp:
1790         (WebCore::guidMutex):
1791         (WebCore::guidToVersionMap):
1792         (WebCore::updateGuidVersionMap):
1793         (WebCore::guidToDatabaseMap):
1794         (WebCore::guidForOriginAndName):
1795         (WebCore::Database::Database):
1796         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
1797         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
1798         (WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded):
1799         (WebCore::Database::performOpenAndVerify):
1800         (WebCore::Database::closeDatabase):
1801         (WebCore::Database::getCachedVersion):
1802         (WebCore::Database::setCachedVersion):
1803         * Modules/webdatabase/Database.h:
1804         * Modules/webdatabase/DatabaseBackendBase.cpp:
1805         (WebCore::DatabaseBackendBase::version):
1806         (WebCore::formatErrorMessage): Deleted.
1807         (WebCore::guidMutex): Deleted.
1808         (WebCore::guidToVersionMap): Deleted.
1809         (WebCore::updateGuidVersionMap): Deleted.
1810         (WebCore::guidToDatabaseMap): Deleted.
1811         (WebCore::guidForOriginAndName): Deleted.
1812         (WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
1813         (WebCore::DatabaseBackendBase::closeDatabase): Deleted.
1814         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller): Deleted.
1815         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller): Deleted.
1816         (WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded): Deleted.
1817         (WebCore::DatabaseBackendBase::performOpenAndVerify): Deleted.
1818         (WebCore::DatabaseBackendBase::getCachedVersion): Deleted.
1819         (WebCore::DatabaseBackendBase::setCachedVersion): Deleted.
1820         * Modules/webdatabase/DatabaseBackendBase.h:
1821
1822 2015-08-05  Anders Carlsson  <andersca@apple.com>
1823
1824         Move more functions from DatabaseBackendBase to Database
1825         https://bugs.webkit.org/show_bug.cgi?id=147703
1826
1827         Reviewed by Tim Horton.
1828
1829         * Modules/webdatabase/Database.cpp:
1830         (WebCore::fullyQualifiedInfoTableName):
1831         (WebCore::setTextValueInDatabase):
1832         (WebCore::retrieveTextResultFromDatabase):
1833         (WebCore::Database::getVersionFromDatabase):
1834         (WebCore::Database::setVersionInDatabase):
1835         (WebCore::Database::performGetTableNames):
1836         * Modules/webdatabase/Database.h:
1837         * Modules/webdatabase/DatabaseBackendBase.cpp:
1838         (WebCore::DatabaseBackendBase::performOpenAndVerify):
1839         (WebCore::DatabaseBackendBase::getActualVersionForTransaction):
1840         (WebCore::DatabaseBackendBase::databaseInfoTableName): Deleted.
1841         (WebCore::fullyQualifiedInfoTableName): Deleted.
1842         (WebCore::retrieveTextResultFromDatabase): Deleted.
1843         (WebCore::setTextValueInDatabase): Deleted.
1844         (WebCore::DatabaseBackendBase::getVersionFromDatabase): Deleted.
1845         (WebCore::DatabaseBackendBase::setVersionInDatabase): Deleted.
1846         * Modules/webdatabase/DatabaseBackendBase.h:
1847
1848 2015-08-05  Alex Christensen  <achristensen@webkit.org>
1849
1850         Build DumpRenderTree with CMake.
1851         https://bugs.webkit.org/show_bug.cgi?id=147519
1852
1853         Reviewed by Brent Fulgham.
1854
1855         * CMakeLists.txt:
1856         WebCoreTestSupport is a static library and should not be linked with WebCore.
1857
1858 2015-08-05  Anders Carlsson  <andersca@apple.com>
1859
1860         Move some more DatabaseBackendBase functions to Database
1861         https://bugs.webkit.org/show_bug.cgi?id=147702
1862
1863         Reviewed by Tim Horton.
1864
1865         * Modules/webdatabase/Database.cpp:
1866         (WebCore::formatErrorMessage):
1867         (WebCore::Database::disableAuthorizer):
1868         (WebCore::Database::enableAuthorizer):
1869         (WebCore::Database::setAuthorizerPermissions):
1870         (WebCore::Database::lastActionChangedDatabase):
1871         (WebCore::Database::lastActionWasInsert):
1872         (WebCore::Database::resetDeletes):
1873         (WebCore::Database::hadDeletes):
1874         (WebCore::Database::resetAuthorizer):
1875         (WebCore::Database::incrementalVacuumIfNeeded):
1876         * Modules/webdatabase/Database.h:
1877         * Modules/webdatabase/DatabaseBackendBase.cpp:
1878         (WebCore::DatabaseBackendBase::disableAuthorizer): Deleted.
1879         (WebCore::DatabaseBackendBase::enableAuthorizer): Deleted.
1880         (WebCore::DatabaseBackendBase::setAuthorizerPermissions): Deleted.
1881         (WebCore::DatabaseBackendBase::lastActionChangedDatabase): Deleted.
1882         (WebCore::DatabaseBackendBase::lastActionWasInsert): Deleted.
1883         (WebCore::DatabaseBackendBase::resetDeletes): Deleted.
1884         (WebCore::DatabaseBackendBase::hadDeletes): Deleted.
1885         (WebCore::DatabaseBackendBase::resetAuthorizer): Deleted.
1886         (WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded): Deleted.
1887         * Modules/webdatabase/DatabaseBackendBase.h:
1888
1889 2015-08-05  Zalan Bujtas  <zalan@apple.com>
1890
1891         [Frame flattening] Return early when child RenderView is not available.
1892         https://bugs.webkit.org/show_bug.cgi?id=147697
1893
1894         Reviewed by Simon Fraser.
1895
1896         No change in functionality.
1897
1898         * rendering/RenderFrameBase.cpp:
1899         (WebCore::RenderFrameBase::peformLayoutWithFlattening):
1900
1901 2015-08-05  Anders Carlsson  <andersca@apple.com>
1902
1903         Remove more dead database code
1904         https://bugs.webkit.org/show_bug.cgi?id=147698
1905
1906         Reviewed by Tim Horton.
1907
1908         * Modules/webdatabase/DatabaseBackendBase.cpp:
1909         (WebCore::DatabaseBackendBase::interrupt): Deleted.
1910         (WebCore::DatabaseBackendBase::isInterrupted): Deleted.
1911         * Modules/webdatabase/DatabaseBackendBase.h:
1912         * Modules/webdatabase/SQLStatementBackend.cpp:
1913         (WebCore::SQLStatementBackend::execute):
1914         * Modules/webdatabase/SQLTransaction.cpp:
1915         (WebCore::SQLTransaction::computeNextStateAndCleanupIfNeeded):
1916         * Modules/webdatabase/SQLTransactionBackend.cpp:
1917         (WebCore::SQLTransactionBackend::computeNextStateAndCleanupIfNeeded):
1918         * platform/sql/SQLiteDatabase.cpp:
1919         (WebCore::SQLiteDatabase::setFullsync):
1920         (WebCore::SQLiteDatabase::SQLiteDatabase): Deleted.
1921         (WebCore::SQLiteDatabase::interrupt): Deleted.
1922         (WebCore::SQLiteDatabase::isInterrupted): Deleted.
1923         * platform/sql/SQLiteDatabase.h:
1924         * platform/sql/SQLiteStatement.cpp:
1925         (WebCore::SQLiteStatement::prepare): Deleted.
1926         (WebCore::SQLiteStatement::step): Deleted.
1927
1928 2015-08-05  Anders Carlsson  <andersca@apple.com>
1929
1930         Fix build.
1931
1932         * platform/cf/CoreMediaSoftLink.cpp:
1933         * platform/cf/CoreMediaSoftLink.h:
1934
1935 2015-08-05  Anders Carlsson  <andersca@apple.com>
1936
1937         Fix build.
1938
1939         * platform/graphics/mac/FontCacheMac.mm:
1940         (WebCore::lookupCTFont):
1941
1942 2015-08-05  Anders Carlsson  <andersca@apple.com>
1943
1944         Change openDatabase to return a Database instead of a DatabaseBackendBase
1945         https://bugs.webkit.org/show_bug.cgi?id=147691
1946
1947         Reviewed by Tim Horton.
1948
1949         * Modules/webdatabase/AbstractDatabaseServer.h:
1950         * Modules/webdatabase/Database.cpp:
1951         (WebCore::Database::create): Deleted.
1952         * Modules/webdatabase/Database.h:
1953         * Modules/webdatabase/DatabaseManager.cpp:
1954         (WebCore::DatabaseManager::openDatabaseBackend):
1955         (WebCore::DatabaseManager::openDatabase):
1956         * Modules/webdatabase/DatabaseManager.h:
1957         * Modules/webdatabase/DatabaseServer.cpp:
1958         (WebCore::DatabaseServer::openDatabase):
1959         (WebCore::DatabaseServer::createDatabase):
1960         * Modules/webdatabase/DatabaseServer.h:
1961
1962 2015-08-05  Myles C. Maxfield  <mmaxfield@apple.com>
1963
1964         [OS X] Migrate to CTFontCreateForCharactersWithLanguage from [NSFont findFontLike:forString:withRange:inLanguage]
1965         https://bugs.webkit.org/show_bug.cgi?id=147483
1966
1967         Reviewed by Dean Jackson.
1968
1969         [NSFont findFontLike:forString:withRange:inLanguage] doesn't properly handle its last argument. In
1970         addition, we want to be moving away from NSFont in the first place and on to Core Text. This new
1971         CoreText function correctly handles its language argument, which is required for language-specific
1972         font fallback.
1973
1974         This patch rolls r187707 back in which was rolled out in r187802 due to test flakiness. This patch
1975         fixes the flakiness.
1976
1977         No new tests because there is no behavior change.
1978
1979         * platform/graphics/FontCache.cpp:
1980         (WebCore::FontCache::purgeInactiveFontData):
1981         * platform/graphics/FontCache.h:
1982         (WebCore::FontCache::platformPurgeInactiveFontData):
1983         * platform/graphics/mac/FontCacheMac.mm:
1984         (WebCore::fallbackDedupSet):
1985         (WebCore::FontCache::platformPurgeInactiveFontData):
1986         (WebCore::lookupCTFont):
1987         (WebCore::FontCache::systemFallbackForCharacters):
1988         * platform/spi/cocoa/CoreTextSPI.h:
1989         * platform/spi/mac/NSFontSPI.h:
1990
1991 2015-08-05  Anders Carlsson  <andersca@apple.com>
1992
1993         Get rid of DatabaseBackend as another step towards merging Database and DatabaseBackendBase
1994         https://bugs.webkit.org/show_bug.cgi?id=147687
1995
1996         Reviewed by Tim Horton.
1997
1998         * CMakeLists.txt:
1999         * Modules/webdatabase/ChangeVersionWrapper.cpp:
2000         (WebCore::ChangeVersionWrapper::performPreflight):
2001         (WebCore::ChangeVersionWrapper::performPostflight):
2002         * Modules/webdatabase/Database.cpp:
2003         (WebCore::Database::Database):
2004         (WebCore::Database::close):
2005         (WebCore::Database::from): Deleted.
2006         (WebCore::Database::backend): Deleted.
2007         * Modules/webdatabase/Database.h:
2008         * Modules/webdatabase/DatabaseBackend.cpp: Removed.
2009         (WebCore::DatabaseBackend::DatabaseBackend): Deleted.
2010         * Modules/webdatabase/DatabaseBackend.h: Removed.
2011         * Modules/webdatabase/DatabaseManager.cpp:
2012         * Modules/webdatabase/DatabaseServer.cpp:
2013         * Modules/webdatabase/DatabaseTask.cpp:
2014         (WebCore::DatabaseTask::DatabaseTask):
2015         (WebCore::DatabaseOpenTask::DatabaseOpenTask):
2016         (WebCore::DatabaseOpenTask::doPerformTask):
2017         (WebCore::DatabaseOpenTask::debugTaskName):
2018         (WebCore::DatabaseCloseTask::DatabaseCloseTask):
2019         (WebCore::DatabaseCloseTask::doPerformTask):
2020         (WebCore::DatabaseCloseTask::debugTaskName):
2021         (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
2022         (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask):
2023         (WebCore::DatabaseTransactionTask::doPerformTask):
2024         (WebCore::DatabaseTransactionTask::debugTaskName):
2025         (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
2026         (WebCore::DatabaseTableNamesTask::doPerformTask):
2027         (WebCore::DatabaseTableNamesTask::debugTaskName):
2028         (WebCore::DatabaseBackend::DatabaseOpenTask::DatabaseOpenTask): Deleted.
2029         (WebCore::DatabaseBackend::DatabaseOpenTask::doPerformTask): Deleted.
2030         (WebCore::DatabaseBackend::DatabaseOpenTask::debugTaskName): Deleted.
2031         (WebCore::DatabaseBackend::DatabaseCloseTask::DatabaseCloseTask): Deleted.
2032         (WebCore::DatabaseBackend::DatabaseCloseTask::doPerformTask): Deleted.
2033         (WebCore::DatabaseBackend::DatabaseCloseTask::debugTaskName): Deleted.
2034         (WebCore::DatabaseBackend::DatabaseTransactionTask::DatabaseTransactionTask): Deleted.
2035         (WebCore::DatabaseBackend::DatabaseTransactionTask::~DatabaseTransactionTask): Deleted.
2036         (WebCore::DatabaseBackend::DatabaseTransactionTask::doPerformTask): Deleted.
2037         (WebCore::DatabaseBackend::DatabaseTransactionTask::debugTaskName): Deleted.
2038         (WebCore::DatabaseBackend::DatabaseTableNamesTask::DatabaseTableNamesTask): Deleted.
2039         (WebCore::DatabaseBackend::DatabaseTableNamesTask::doPerformTask): Deleted.
2040         (WebCore::DatabaseBackend::DatabaseTableNamesTask::debugTaskName): Deleted.
2041         * Modules/webdatabase/DatabaseTask.h:
2042         (WebCore::DatabaseTask::database):
2043         * Modules/webdatabase/SQLStatementBackend.cpp:
2044         (WebCore::SQLStatementBackend::execute):
2045         * Modules/webdatabase/SQLStatementBackend.h:
2046         * Modules/webdatabase/SQLTransactionBackend.cpp:
2047         (WebCore::SQLTransactionBackend::executeSQL):
2048         (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
2049         * WebCore.vcxproj/WebCore.vcxproj:
2050         * WebCore.vcxproj/WebCore.vcxproj.filters:
2051         * WebCore.xcodeproj/project.pbxproj:
2052
2053 2015-08-04  Filip Pizlo  <fpizlo@apple.com>
2054
2055         Rename Mutex to DeprecatedMutex
2056         https://bugs.webkit.org/show_bug.cgi?id=147675
2057
2058         Reviewed by Geoffrey Garen.
2059
2060         No new tests because this is just a renaming.
2061
2062         * Modules/webaudio/AsyncAudioDecoder.cpp:
2063         (WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
2064         (WebCore::AsyncAudioDecoder::runLoop):
2065         * Modules/webaudio/AsyncAudioDecoder.h:
2066         * Modules/webaudio/AudioContext.h:
2067         * Modules/webaudio/MediaStreamAudioSource.cpp:
2068         (WebCore::MediaStreamAudioSource::addAudioConsumer):
2069         (WebCore::MediaStreamAudioSource::removeAudioConsumer):
2070         (WebCore::MediaStreamAudioSource::setAudioFormat):
2071         (WebCore::MediaStreamAudioSource::consumeAudio):
2072         * Modules/webaudio/MediaStreamAudioSource.h:
2073         * Modules/webdatabase/Database.cpp:
2074         (WebCore::Database::close):
2075         (WebCore::Database::runTransaction):
2076         (WebCore::Database::inProgressTransactionCompleted):
2077         (WebCore::Database::hasPendingTransaction):
2078         * Modules/webdatabase/DatabaseBackend.h:
2079         * Modules/webdatabase/DatabaseBackendBase.cpp:
2080         (WebCore::DatabaseBackendBase::performOpenAndVerify):
2081         (WebCore::DatabaseBackendBase::isInterrupted):
2082         * Modules/webdatabase/DatabaseContext.cpp:
2083         (WebCore::DatabaseContext::databaseThread):
2084         (WebCore::DatabaseContext::setPaused):
2085         * Modules/webdatabase/DatabaseContext.h:
2086         * Modules/webdatabase/DatabaseTask.h:
2087         * Modules/webdatabase/DatabaseThread.cpp:
2088         (WebCore::DatabaseThread::start):
2089         (WebCore::DatabaseThread::setPaused):
2090         (WebCore::DatabaseThread::handlePausedQueue):
2091         (WebCore::DatabaseThread::databaseThread):
2092         * Modules/webdatabase/DatabaseThread.h:
2093         * Modules/webdatabase/DatabaseTracker.cpp:
2094         (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
2095         (WebCore::DatabaseTracker::canEstablishDatabase):
2096         (WebCore::DatabaseTracker::retryCanEstablishDatabase):
2097         (WebCore::DatabaseTracker::hasEntryForOrigin):
2098         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
2099         (WebCore::DatabaseTracker::closeAllDatabases):
2100         (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
2101         (WebCore::DatabaseTracker::fullPathForDatabase):
2102         (WebCore::DatabaseTracker::origins):
2103         (WebCore::DatabaseTracker::databaseNamesForOrigin):
2104         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
2105         (WebCore::DatabaseTracker::setDatabaseDetails):
2106         (WebCore::DatabaseTracker::doneCreatingDatabase):
2107         (WebCore::DatabaseTracker::addOpenDatabase):
2108         (WebCore::DatabaseTracker::removeOpenDatabase):
2109         (WebCore::DatabaseTracker::getOpenDatabases):
2110         (WebCore::DatabaseTracker::originLockFor):
2111         (WebCore::DatabaseTracker::quotaForOrigin):
2112         (WebCore::DatabaseTracker::setQuota):
2113         (WebCore::DatabaseTracker::deleteOrigin):
2114         (WebCore::DatabaseTracker::deleteDatabase):
2115         (WebCore::DatabaseTracker::deleteDatabaseFile):
2116         (WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
2117         (WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
2118         (WebCore::DatabaseTracker::openDatabaseMutex):
2119         (WebCore::DatabaseTracker::setDatabasesPaused):
2120         (WebCore::DatabaseTracker::setClient):
2121         (WebCore::notificationMutex):
2122         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2123         (WebCore::DatabaseTracker::notifyDatabasesChanged):
2124         * Modules/webdatabase/DatabaseTracker.h:
2125         * Modules/webdatabase/OriginLock.h:
2126         * Modules/webdatabase/SQLCallbackWrapper.h:
2127         (WebCore::SQLCallbackWrapper::clear):
2128         (WebCore::SQLCallbackWrapper::unwrap):
2129         (WebCore::SQLCallbackWrapper::hasCallback):
2130         * Modules/webdatabase/SQLTransactionBackend.cpp:
2131         (WebCore::SQLTransactionBackend::doCleanup):
2132         (WebCore::SQLTransactionBackend::enqueueStatementBackend):
2133         (WebCore::SQLTransactionBackend::getNextStatement):
2134         * Modules/webdatabase/SQLTransactionBackend.h:
2135         * bindings/js/WorkerScriptController.cpp:
2136         (WebCore::WorkerScriptController::scheduleExecutionTermination):
2137         (WebCore::WorkerScriptController::isExecutionTerminating):
2138         * bindings/js/WorkerScriptController.h:
2139         * dom/default/PlatformMessagePortChannel.cpp:
2140         (WebCore::MessagePortChannel::postMessageToRemote):
2141         (WebCore::MessagePortChannel::tryGetMessageFromRemote):
2142         (WebCore::MessagePortChannel::isConnectedTo):
2143         (WebCore::MessagePortChannel::hasPendingActivity):
2144         (WebCore::MessagePortChannel::locallyEntangledPort):
2145         (WebCore::PlatformMessagePortChannel::setRemotePort):
2146         (WebCore::PlatformMessagePortChannel::entangledChannel):
2147         (WebCore::PlatformMessagePortChannel::closeInternal):
2148         * dom/default/PlatformMessagePortChannel.h:
2149         * loader/icon/IconDatabase.cpp:
2150         (WebCore::IconDatabase::removeAllIcons):
2151         (WebCore::IconDatabase::synchronousIconForPageURL):
2152         (WebCore::IconDatabase::synchronousNativeIconForPageURL):
2153         (WebCore::IconDatabase::synchronousIconURLForPageURL):
2154         (WebCore::IconDatabase::retainIconForPageURL):
2155         (WebCore::IconDatabase::performRetainIconForPageURL):
2156         (WebCore::IconDatabase::releaseIconForPageURL):
2157         (WebCore::IconDatabase::performReleaseIconForPageURL):
2158         (WebCore::IconDatabase::setIconDataForIconURL):
2159         (WebCore::IconDatabase::setIconURLForPageURL):
2160         (WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
2161         (WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
2162         (WebCore::IconDatabase::pageURLMappingCount):
2163         (WebCore::IconDatabase::retainedPageURLCount):
2164         (WebCore::IconDatabase::iconRecordCount):
2165         (WebCore::IconDatabase::iconRecordCountWithData):
2166         (WebCore::IconDatabase::wakeSyncThread):
2167         (WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
2168         (WebCore::IconDatabase::databasePath):
2169         (WebCore::IconDatabase::getOrCreatePageURLRecord):
2170         (WebCore::IconDatabase::iconDatabaseSyncThread):
2171         (WebCore::IconDatabase::performOpenInitialization):
2172         (WebCore::IconDatabase::performURLImport):
2173         (WebCore::IconDatabase::syncThreadMainLoop):
2174         (WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
2175         (WebCore::IconDatabase::readFromDatabase):
2176         (WebCore::IconDatabase::writeToDatabase):
2177         (WebCore::IconDatabase::pruneUnretainedIcons):
2178         (WebCore::IconDatabase::cleanupSyncThread):
2179         * loader/icon/IconDatabase.h:
2180         * page/scrolling/ScrollingTree.cpp:
2181         (WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
2182         (WebCore::ScrollingTree::commitNewTreeState):
2183         (WebCore::ScrollingTree::setMainFramePinState):
2184         (WebCore::ScrollingTree::mainFrameScrollPosition):
2185         (WebCore::ScrollingTree::setMainFrameScrollPosition):
2186         (WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
2187         (WebCore::ScrollingTree::isRubberBandInProgress):
2188         (WebCore::ScrollingTree::setMainFrameIsRubberBanding):
2189         (WebCore::ScrollingTree::isScrollSnapInProgress):
2190         (WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
2191         (WebCore::ScrollingTree::setCanRubberBandState):
2192         (WebCore::ScrollingTree::rubberBandsAtLeft):
2193         (WebCore::ScrollingTree::rubberBandsAtRight):
2194         (WebCore::ScrollingTree::rubberBandsAtBottom):
2195         (WebCore::ScrollingTree::rubberBandsAtTop):
2196         (WebCore::ScrollingTree::setScrollPinningBehavior):
2197         (WebCore::ScrollingTree::scrollPinningBehavior):
2198         (WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
2199         (WebCore::ScrollingTree::latchedNode):
2200         (WebCore::ScrollingTree::setLatchedNode):
2201         (WebCore::ScrollingTree::clearLatchedNode):
2202         * page/scrolling/ScrollingTree.h:
2203         * platform/MemoryPressureHandler.h:
2204         * platform/audio/HRTFDatabaseLoader.cpp:
2205         (WebCore::HRTFDatabaseLoader::loadAsynchronously):
2206         (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
2207         * platform/audio/HRTFDatabaseLoader.h:
2208         * platform/cocoa/MemoryPressureHandlerCocoa.mm:
2209         (WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
2210         (WebCore::MemoryPressureHandler::clearMemoryPressure):
2211         (WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
2212         (WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):
2213         * platform/graphics/DisplayRefreshMonitor.cpp:
2214         (WebCore::DisplayRefreshMonitor::displayDidRefresh):
2215         * platform/graphics/DisplayRefreshMonitor.h:
2216         (WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
2217         (WebCore::DisplayRefreshMonitor::mutex):
2218         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2219         (WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
2220         (WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
2221         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
2222         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2223         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2224         (WebCore::AVFWrapper::callbackContext):
2225         (WebCore::AVFWrapper::~AVFWrapper):
2226         (WebCore::AVFWrapper::mapLock):
2227         (WebCore::AVFWrapper::addToMap):
2228         (WebCore::AVFWrapper::removeFromMap):
2229         (WebCore::AVFWrapper::periodicTimeObserverCallback):
2230         (WebCore::AVFWrapper::processNotification):
2231         (WebCore::AVFWrapper::loadPlayableCompletionCallback):
2232         (WebCore::AVFWrapper::loadMetadataCompletionCallback):
2233         (WebCore::AVFWrapper::seekCompletedCallback):
2234         (WebCore::AVFWrapper::processCue):
2235         (WebCore::AVFWrapper::legibleOutputCallback):
2236         (WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
2237         (WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):
2238         * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
2239         (WebCore::InbandTextTrackPrivateGStreamer::handleSample):
2240         (WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):
2241         * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
2242         * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
2243         (WebCore::TrackPrivateBaseGStreamer::tagsChanged):
2244         (WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
2245         * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
2246         * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
2247         (WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
2248         (WebCore::DisplayRefreshMonitorMac::displayLinkFired):
2249         * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
2250         (WebCore::MediaPlayerPrivateMediaFoundation::addListener):
2251         (WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
2252         (WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
2253         (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
2254         (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
2255         * platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
2256         * platform/ios/LegacyTileCache.h:
2257         * platform/ios/LegacyTileCache.mm:
2258         (WebCore::LegacyTileCache::setTilesOpaque):
2259         (WebCore::LegacyTileCache::doLayoutTiles):
2260         (WebCore::LegacyTileCache::setCurrentScale):
2261         (WebCore::LegacyTileCache::commitScaleChange):
2262         (WebCore::LegacyTileCache::layoutTilesNow):
2263         (WebCore::LegacyTileCache::layoutTilesNowForRect):
2264         (WebCore::LegacyTileCache::removeAllNonVisibleTiles):
2265         (WebCore::LegacyTileCache::removeAllTiles):
2266         (WebCore::LegacyTileCache::removeForegroundTiles):
2267         (WebCore::LegacyTileCache::setContentReplacementImage):
2268         (WebCore::LegacyTileCache::contentReplacementImage):
2269         (WebCore::LegacyTileCache::tileCreationTimerFired):
2270         (WebCore::LegacyTileCache::setNeedsDisplayInRect):
2271         (WebCore::LegacyTileCache::updateTilingMode):
2272         (WebCore::LegacyTileCache::setTilingMode):
2273         (WebCore::LegacyTileCache::doPendingRepaints):
2274         (WebCore::LegacyTileCache::flushSavedDisplayRects):
2275         (WebCore::LegacyTileCache::prepareToDraw):
2276         * platform/ios/LegacyTileLayerPool.h:
2277         * platform/ios/LegacyTileLayerPool.mm:
2278         (WebCore::LegacyTileLayerPool::addLayer):
2279         (WebCore::LegacyTileLayerPool::takeLayerWithSize):
2280         (WebCore::LegacyTileLayerPool::setCapacity):
2281         (WebCore::LegacyTileLayerPool::prune):
2282         (WebCore::LegacyTileLayerPool::drain):
2283         * platform/network/curl/CurlDownload.cpp:
2284         (WebCore::CurlDownloadManager::add):
2285         (WebCore::CurlDownloadManager::remove):
2286         (WebCore::CurlDownloadManager::getActiveDownloadCount):
2287         (WebCore::CurlDownloadManager::getPendingDownloadCount):
2288         (WebCore::CurlDownloadManager::stopThreadIfIdle):
2289         (WebCore::CurlDownloadManager::updateHandleList):
2290         (WebCore::CurlDownload::~CurlDownload):
2291         (WebCore::CurlDownload::init):
2292         (WebCore::CurlDownload::getTempPath):
2293         (WebCore::CurlDownload::getUrl):
2294         (WebCore::CurlDownload::getResponse):
2295         (WebCore::CurlDownload::closeFile):
2296         (WebCore::CurlDownload::didReceiveHeader):
2297         (WebCore::CurlDownload::didReceiveData):
2298         (WebCore::CurlDownload::didFail):
2299         * platform/network/curl/CurlDownload.h:
2300         * platform/network/curl/ResourceHandleManager.cpp:
2301         (WebCore::cookieJarPath):
2302         (WebCore::sharedResourceMutex):
2303         (WebCore::curl_lock_callback):
2304         (WebCore::curl_unlock_callback):
2305         * platform/network/ios/QuickLook.mm:
2306         (WebCore::QLDirectoryAttributes):
2307         (qlPreviewConverterDictionaryMutex):
2308         (WebCore::addQLPreviewConverterWithFileForURL):
2309         (WebCore::qlPreviewConverterUTIForURL):
2310         (WebCore::removeQLPreviewConverterForURL):
2311         (WebCore::safeQLURLForDocumentURLAndResourceURL):
2312         * platform/sql/SQLiteDatabase.cpp:
2313         (WebCore::SQLiteDatabase::close):
2314         (WebCore::SQLiteDatabase::interrupt):
2315         (WebCore::SQLiteDatabase::maximumSize):
2316         (WebCore::SQLiteDatabase::setMaximumSize):
2317         (WebCore::SQLiteDatabase::pageSize):
2318         (WebCore::SQLiteDatabase::freeSpaceSize):
2319         (WebCore::SQLiteDatabase::totalSize):
2320         (WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
2321         (WebCore::SQLiteDatabase::setAuthorizer):
2322         * platform/sql/SQLiteDatabase.h:
2323         (WebCore::SQLiteDatabase::databaseMutex):
2324         * platform/sql/SQLiteStatement.cpp:
2325         (WebCore::SQLiteStatement::prepare):
2326         (WebCore::SQLiteStatement::step):
2327         * workers/WorkerThread.cpp:
2328         (WebCore::WorkerThread::start):
2329         (WebCore::WorkerThread::workerThread):
2330         (WebCore::WorkerThread::stop):
2331         * workers/WorkerThread.h:
2332
2333 2015-08-05  Matthew Daiter  <mdaiter@apple.com>
2334
2335         Adding in MediaPrivateMediaStreamEngine to default compile
2336         https://bugs.webkit.org/show_bug.cgi?id=146790
2337         <rdar://problem/21747289>
2338
2339         Reviewed by Eric Carlson.
2340
2341         * WebCore.xcodeproj/project.pbxproj:
2342         * platform/mediastream/MediaStreamPrivate.h:
2343         (WebCore::MediaStreamPrivate::MediaStreamPrivate):
2344
2345 2015-08-05  Matthew Daiter  <mdaiter@apple.com>
2346
2347         Remove m_synchronizer from MediaPlayerPrivateMediaStream
2348         https://bugs.webkit.org/show_bug.cgi?id=147637
2349
2350         Reviewed by Eric Carlson.
2351
2352         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
2353         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
2354         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::playInternal): Deleted.
2355
2356 2015-08-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2357
2358         Build fix after 187961
2359
2360         * platform/mac/ThemeMac.mm:
2361         (WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext):
2362
2363 2015-08-05  Daniel Bates  <dabates@apple.com>
2364
2365         REGRESSION (r185111): Clicking phone numbers doesn't prompt to call sometimes
2366         https://bugs.webkit.org/show_bug.cgi?id=147678
2367         <rdar://problem/21827815>
2368
2369         Reviewed by Brady Eidson.
2370
2371         Fixes an issue where a non-user-initiated navigation of the main frame to a phone link (tel URL)
2372         may be ignored. The navigation is ignored if the page was reloaded as a result of a web content
2373         process crash, its lifetime exceeded the back-forward cache expiration interval, or a person
2374         quits and opens Safari again, among other scenarios.
2375
2376         * history/HistoryItem.cpp:
2377         (WebCore::HistoryItem::setShouldOpenExternalURLsPolicy): Added.
2378         (WebCore::HistoryItem::shouldOpenExternalURLsPolicy): Added.
2379         * history/HistoryItem.h:
2380         * loader/FrameLoader.cpp:
2381         (WebCore::FrameLoader::loadDifferentDocumentItem): Apply the "should open external URLs" policy
2382         from the history item, if applicable. Also, be more explicit when instantiating a NavigationAction
2383         so as to help make it straightforward to reduce the number of NavigationAction constructors we have
2384         in the future.
2385         * loader/HistoryController.cpp:
2386         (WebCore::HistoryController::saveDocumentState): Save the "should open external URLs" policy to
2387         the history item.
2388         (WebCore::HistoryController::restoreDocumentState): Apply the "should open external URLs" policy
2389         from the history item to the document loader.
2390         (WebCore::HistoryController::initializeItem): Update the "should open external URLs" policy of
2391         the history item to reflect the policy of the document loader associated with the current frame.
2392
2393 2015-08-04  Wenson Hsieh  <wenson_hsieh@apple.com>
2394
2395         Checkboxes and radio buttons should scale when zooming or pinching to zoom
2396         https://bugs.webkit.org/show_bug.cgi?id=147405
2397
2398         Reviewed by Dean Jackson.
2399
2400         Refactors paintButton and paintToggleButton to use a temporary buffer when rendering
2401         if the controls are zoomed. This affects checkboxes, radio buttons, and normal (push)
2402         buttons.
2403
2404         * platform/mac/ThemeMac.h:
2405         * platform/mac/ThemeMac.mm:
2406         (WebCore::paintToggleButton): Refactored to use drawCellOrFocusRingWithViewIntoContext.
2407         (WebCore::paintButton): Refactored to use drawCellOrFocusRingWithViewIntoContext.
2408         (WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext): Draws a given button cell
2409             and/or its focus ring into the given context, optionally using an offscreen buffer.
2410             This is a static function in ThemeMac so it can be accessed later on by
2411             RenderThemeMac when painting search fields that scale with zoom.
2412         (WebCore::ThemeMac::paint):
2413         (WebCore::buttonFocusRectOutlineWidth): Deleted. Made this value into a const float.
2414
2415 2015-08-04  Doug Russell  <d_russell@apple.com>
2416
2417         AX: tree item children returned from ranged getter are different from full array of children
2418         https://bugs.webkit.org/show_bug.cgi?id=147660
2419
2420         Reviewed by Chris Fleizach.
2421
2422         Add an isTreeItem() check in ranged element getter so that it matches the logic in 
2423         the getter for the full children array. This prevents returning a row as a child
2424         when only the rows contents should be returned. This prevents navigation issues on
2425         websites without aria outlines.
2426
2427         Test: accessibility/mac/aria-tree-item-children.html
2428
2429         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2430         (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2431
2432 2015-08-04  Anders Carlsson  <andersca@apple.com>
2433
2434         CTTE the database task code
2435         https://bugs.webkit.org/show_bug.cgi?id=147673
2436
2437         Reviewed by Andreas Kling.
2438
2439         * Modules/webdatabase/Database.cpp:
2440         (WebCore::Database::openAndVerifyVersion):
2441         (WebCore::Database::markAsDeletedAndClose):
2442         (WebCore::Database::tableNames):
2443         * Modules/webdatabase/DatabaseTask.cpp:
2444         (WebCore::DatabaseTask::DatabaseTask):
2445         (WebCore::DatabaseTask::performTask):
2446         (WebCore::DatabaseBackend::DatabaseOpenTask::DatabaseOpenTask):
2447         (WebCore::DatabaseBackend::DatabaseOpenTask::doPerformTask):
2448         (WebCore::DatabaseBackend::DatabaseCloseTask::DatabaseCloseTask):
2449         (WebCore::DatabaseBackend::DatabaseCloseTask::doPerformTask):
2450         (WebCore::DatabaseBackend::DatabaseTransactionTask::DatabaseTransactionTask):
2451         (WebCore::DatabaseBackend::DatabaseTableNamesTask::DatabaseTableNamesTask):
2452         (WebCore::DatabaseBackend::DatabaseTableNamesTask::doPerformTask):
2453         * Modules/webdatabase/DatabaseTask.h:
2454         (WebCore::DatabaseTask::database):
2455         * Modules/webdatabase/DatabaseThread.cpp:
2456         (WebCore::SameDatabasePredicate::operator()):
2457
2458 2015-08-04  Brent Fulgham  <bfulgham@apple.com>
2459
2460         REGRESSION (r173784): [Mac] Correct latching error for non-scrollable iframe nested inside scrollable div.
2461         https://bugs.webkit.org/show_bug.cgi?id=147668
2462         <rdar://problem/21870332>
2463
2464         Reviewed by Simon Fraser.
2465
2466         Test: platform/mac/fast/scrolling/scroll-div-with-nested-nonscrollable-iframe.html
2467
2468         When we are wrapping up processing of the wheel event for a given frame, if the current latching context
2469         does NOT apply to the current frame (e.g., because it's latched to an enclosing frame) we should not pass
2470         wheel events directly to the latched elements scrollable container. Instead, we should just give the current
2471         frame an opportunity to perform any custom wheel event handling and return, so that the enclosing (latched)
2472         frame can do the rest of its event handling.
2473         
2474         If we don't do this, we incorrectly ask the enclosing frame to process the event, then return claiming that
2475         we handled the event, preventing the enclosing frame from doing its part of the processing.
2476
2477         * page/mac/EventHandlerMac.mm:
2478         (WebCore::EventHandler::platformCompleteWheelEvent):
2479
2480 2015-08-04  Alex Christensen  <achristensen@webkit.org>
2481
2482         Soft link libGLESv2 and libEGL on Windows again
2483         https://bugs.webkit.org/show_bug.cgi?id=147671
2484
2485         Reviewed by Dean Jackson.
2486
2487         * platform/graphics/PlatformDisplay.cpp:
2488         (WebCore::PlatformDisplay::initializeEGLDisplay):
2489         Fail gracefully if libEGL is not found.
2490
2491 2015-08-04  Anders Carlsson  <andersca@apple.com>
2492
2493         Remove another unused database function
2494         https://bugs.webkit.org/show_bug.cgi?id=147670
2495
2496         Reviewed by Daniel Bates.
2497
2498         This was used back when we had WebSQL support in workers, we can safely remove all these functions now.
2499
2500         * Modules/webdatabase/AbstractDatabaseServer.h:
2501         * Modules/webdatabase/DatabaseManager.cpp:
2502         (WebCore::DatabaseManager::interruptAllDatabasesForContext): Deleted.
2503         * Modules/webdatabase/DatabaseManager.h:
2504         * Modules/webdatabase/DatabaseServer.cpp:
2505         (WebCore::DatabaseServer::interruptAllDatabasesForContext): Deleted.
2506         * Modules/webdatabase/DatabaseServer.h:
2507         * Modules/webdatabase/DatabaseTracker.cpp:
2508         (WebCore::DatabaseTracker::interruptAllDatabasesForContext): Deleted.
2509         * Modules/webdatabase/DatabaseTracker.h:
2510
2511 2015-08-04  Anders Carlsson  <andersca@apple.com>
2512
2513         Remove database thread pause code
2514         https://bugs.webkit.org/show_bug.cgi?id=147669
2515
2516         Reviewed by Daniel Bates.
2517
2518         We now grab power assertions while running SQLite transactions, 
2519         and this code isn't used at all with modern WebKit so let's just get rid of it.
2520
2521         * Modules/webdatabase/DatabaseContext.cpp:
2522         (WebCore::DatabaseContext::DatabaseContext): Deleted.
2523         (WebCore::DatabaseContext::databaseThread): Deleted.
2524         (WebCore::DatabaseContext::setPaused): Deleted.
2525         * Modules/webdatabase/DatabaseContext.h:
2526         * Modules/webdatabase/DatabaseTask.cpp:
2527         (WebCore::Database::DatabaseTransactionTask::shouldPerformWhilePaused): Deleted.
2528         * Modules/webdatabase/DatabaseTask.h:
2529         * Modules/webdatabase/DatabaseThread.cpp:
2530         (WebCore::DatabaseThread::DatabaseThread): Deleted.
2531         (WebCore::DatabaseThread::requestTermination): Deleted.
2532         (WebCore::DatabaseUnpauseTask::DatabaseUnpauseTask): Deleted.
2533         (WebCore::DatabaseUnpauseTask::shouldPerformWhilePaused): Deleted.
2534         (WebCore::DatabaseUnpauseTask::doPerformTask): Deleted.
2535         (WebCore::DatabaseUnpauseTask::debugTaskName): Deleted.
2536         (WebCore::DatabaseThread::setPaused): Deleted.
2537         (WebCore::DatabaseThread::handlePausedQueue): Deleted.
2538         (WebCore::DatabaseThread::databaseThread): Deleted.
2539         * Modules/webdatabase/DatabaseThread.h:
2540         * Modules/webdatabase/DatabaseTracker.cpp:
2541         (WebCore::DatabaseTracker::setDatabasesPaused): Deleted.
2542         * Modules/webdatabase/DatabaseTracker.h:
2543
2544 2015-08-04  Chris Dumez  <cdumez@apple.com>
2545
2546         Subframes with no current HistoryItem should not prevent page-caching
2547         https://bugs.webkit.org/show_bug.cgi?id=147649
2548         <rdar://problem/21614832>
2549
2550         Reviewed by Andreas Kling.
2551
2552         Subframes with no current HistoryItem should not prevent page-caching.
2553         We need one for the main frame as this is the key in the PageCache.
2554         However, there is no reason to require one for subframes.
2555
2556         This is a common reason for page-caching failures nowadays.
2557
2558         Frames do no have a current HistoryItem until something has been loaded in them.
2559
2560         Test: http/tests/navigation/page-cache-iframe-no-current-historyItem.html
2561
2562         * history/PageCache.cpp:
2563         (WebCore::logCanCacheFrameDecision):
2564         (WebCore::PageCache::canCachePageContainingThisFrame):
2565
2566 2015-08-04  Brent Fulgham  <bfulgham@apple.com>
2567
2568         [Win] Build fix after r187908
2569
2570         * platform/win/WindowsTouch.h: If WINVER is set properly, we
2571         don't need these definitions.
2572
2573 2015-08-04  Anders Carlsson  <andersca@apple.com>
2574
2575         Remove an unused Database function
2576         https://bugs.webkit.org/show_bug.cgi?id=147661
2577
2578         Reviewed by Simon Fraser.
2579
2580         * Modules/webdatabase/Database.cpp:
2581         (WebCore::Database::closeImmediately): Deleted.
2582         * Modules/webdatabase/Database.h:
2583
2584 2015-08-04  Brady Eidson  <beidson@apple.com>
2585
2586         Crash when following a Google search link to Twitter with Limit Adult Content enabled.
2587         <rdar://problem/22123707> and https://bugs.webkit.org/show_bug.cgi?id=147651
2588
2589         Reviewed by Sam Weinig.
2590
2591         No new tests (Doesn't occur in a tested config).
2592
2593         For now, we'll skip the application cache for main resource loads if parental controls are enabled.
2594
2595         * loader/DocumentLoader.cpp:
2596         (WebCore::DocumentLoader::willSendRequest):
2597         (WebCore::DocumentLoader::startLoadingMainResource):
2598
2599 2015-08-04  Matthew Daiter  <mdaiter@apple.com>
2600
2601         Added buffer to AVMediaCaptureSource
2602         https://bugs.webkit.org/show_bug.cgi?id=147454
2603         <rdar://problem/22079502>
2604
2605         Reviewed by Jer Noble.
2606
2607         * platform/mediastream/mac/AVMediaCaptureSource.h:
2608         (WebCore::AVMediaCaptureSource::buffer):
2609         (WebCore::AVMediaCaptureSource::setBuffer):
2610         * platform/mediastream/mac/AVVideoCaptureSource.mm:
2611         (WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection):
2612
2613 2015-08-04  Matthew Daiter  <mdaiter@apple.com>
2614
2615         Needless assignment of usingDot
2616         https://bugs.webkit.org/show_bug.cgi?id=147514
2617
2618         Reviewed by Eric Carlson.
2619
2620         * platform/graphics/mac/GraphicsContextMac.mm:
2621         (WebCore::GraphicsContext::drawLineForDocumentMarker): Deleted.
2622
2623 2015-08-04  Chris Dumez  <cdumez@apple.com>
2624
2625         shouldParseTelephoneNumbersInNode() does not need to check for Comment nodes
2626         https://bugs.webkit.org/show_bug.cgi?id=147630
2627
2628         Reviewed by Sam Weinig.
2629
2630         shouldParseTelephoneNumbersInNode() does not need to check for Comment
2631         nodes. We already know the input is a ContainerNode and a Comment is
2632         NOT a ContainerNode. Also, we were already doing a isElementNode()
2633         check before calling disallowTelephoneNumberParsing().
2634
2635         I also updated the function to use a for loop for clarity and dropped
2636         the isElementNode() check as calling hasTagName() / isLink() on a
2637         ContainerNode is as fast all calling it on an Element nowadays.
2638
2639         * html/parser/HTMLTreeBuilder.cpp:
2640         (WebCore::disallowTelephoneNumberParsing):
2641         (WebCore::shouldParseTelephoneNumbersInNode):
2642
2643 2015-08-04  Eric Carlson  <eric.carlson@apple.com>
2644
2645         [Mac] Do not require a video track for AirPlay
2646         https://bugs.webkit.org/show_bug.cgi?id=147647
2647
2648         Reviewed by Jer Noble.
2649
2650         * Modules/mediacontrols/mediaControlsApple.js:
2651         (Controller.prototype.handleReadyStateChange): Call updateWirelessTargetAvailable().
2652         (Controller.prototype.updateHasVideo): Don't call updateWirelessTargetAvailable().
2653         (Controller.prototype.updateWirelessTargetAvailable): Don't require video.
2654
2655         * html/HTMLMediaElement.cpp:
2656         (WebCore::HTMLMediaElement::setReadyState): Call updateMediaState when we reach HAVE_METADATA.
2657         (WebCore::HTMLMediaElement::mediaState): Don't require video, only that the file can play.
2658
2659         * html/MediaElementSession.cpp:
2660         (WebCore::MediaElementSession::showPlaybackTargetPicker): Check readyState instead of hasVideo.
2661
2662 2015-08-04  Anders Carlsson  <andersca@apple.com>
2663
2664         Get rid of ReasonForCallingAllowPlugins since it's not used anywhere
2665         https://bugs.webkit.org/show_bug.cgi?id=147648
2666
2667         Reviewed by Andreas Kling.
2668
2669         * dom/DOMImplementation.cpp:
2670         (WebCore::DOMImplementation::createDocument):
2671         * html/HTMLElement.cpp:
2672         (WebCore::HTMLElement::rendererIsNeeded):
2673         * html/parser/HTMLParserOptions.cpp:
2674         (WebCore::HTMLParserOptions::HTMLParserOptions):
2675         * loader/FrameLoaderTypes.h:
2676         * loader/SubframeLoader.cpp:
2677         (WebCore::SubframeLoader::requestPlugin):
2678         (WebCore::SubframeLoader::createJavaAppletWidget):
2679         (WebCore::SubframeLoader::allowPlugins):
2680         * loader/SubframeLoader.h:
2681         * plugins/DOMMimeType.cpp:
2682         (WebCore::DOMMimeType::enabledPlugin):
2683
2684 2015-08-04  Alex Christensen  <achristensen@webkit.org>
2685
2686         Fix debug CMake build on Windows after r187818.
2687
2688         * PlatformWin.cmake:
2689         Debug *AllInOne.cpp object files in WebCore require /bigobj to compile successfully.
2690
2691 2015-08-04  Alexey Proskuryakov  <ap@apple.com>
2692
2693         Implement NPAPI redirect handling
2694         https://bugs.webkit.org/show_bug.cgi?id=138675
2695         rdar://problem/15779101
2696
2697         Patch by Jeffrey Pfau, updated and tweaked by me.
2698
2699         Reviewed by Anders Carlsson.
2700
2701         Test: http/tests/plugins/get-url-redirect-notify.html
2702
2703         * loader/NetscapePlugInStreamLoader.cpp:
2704         (WebCore::NetscapePlugInStreamLoader::init):
2705         (WebCore::NetscapePlugInStreamLoader::willSendRequest):
2706         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
2707         * loader/NetscapePlugInStreamLoader.h:
2708         * loader/ResourceLoader.cpp:
2709         (WebCore::ResourceLoader::init):
2710         (WebCore::ResourceLoader::isSubresourceLoader):
2711         (WebCore::ResourceLoader::willSendRequestInternal):
2712         (WebCore::ResourceLoader::willSendRequest):
2713         (WebCore::ResourceLoader::didSendData):
2714         * loader/ResourceLoader.h:
2715         * loader/SubresourceLoader.cpp:
2716         (WebCore::SubresourceLoader::isSubresourceLoader):
2717         (WebCore::SubresourceLoader::willSendRequestInternal):
2718         (WebCore::SubresourceLoader::willSendRequest): Deleted.
2719         * loader/SubresourceLoader.h:
2720         * plugins/npapi.h:
2721         * plugins/npfunctions.h:
2722
2723 2015-08-04  Zalan Bujtas  <zalan@apple.com>
2724
2725         RenderTheme::paint() should take RenderBox instead of RenderObject.
2726         https://bugs.webkit.org/show_bug.cgi?id=147638
2727
2728         Reviewed by Andreas Kling.
2729
2730         No change in functionality.
2731
2732         * rendering/RenderTheme.cpp:
2733         (WebCore::RenderTheme::paint):
2734         (WebCore::RenderTheme::updateControlStatesForRenderer): ->RenderBox too.
2735         (WebCore::RenderTheme::isActive): Remove redundant code.
2736         * rendering/RenderTheme.h:
2737
2738 2015-08-04  Matthew Daiter  <mdaiter@apple.com>
2739
2740         Render to GraphicsContext MediaPlayerPrivateMediaStreamAVFObjC
2741         https://bugs.webkit.org/show_bug.cgi?id=147643
2742
2743         Reviewed by Eric Carlson.
2744
2745         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
2746         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paint):
2747
2748 2015-08-04  Matthew Daiter  <mdaiter@apple.com>
2749
2750         Added ability to create images from buffers for MediaStream paint methods
2751         https://bugs.webkit.org/show_bug.cgi?id=147642
2752
2753         Reviewed by Eric Carlson.
2754
2755         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
2756         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
2757         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::createImageFromSampleBuffer):
2758
2759 2015-08-04  Matthew Daiter  <mdaiter@apple.com>
2760
2761         Add image variable rendered by paint methods for MediaStream
2762         https://bugs.webkit.org/show_bug.cgi?id=147645
2763
2764         Reviewed by Eric Carlson.
2765
2766         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
2767
2768 2015-08-04  Zalan Bujtas  <zalan@apple.com>
2769
2770         RenderTheme::baselinePosition() should take RenderBox instead of RenderObject.
2771         https://bugs.webkit.org/show_bug.cgi?id=147632
2772
2773         Reviewed by Andreas Kling.
2774
2775         It eliminates some redundant type checking and casting.
2776
2777         No change in functionality.
2778
2779         * platform/efl/RenderThemeEfl.cpp:
2780         (WebCore::RenderThemeEfl::baselinePosition):
2781         * platform/efl/RenderThemeEfl.h:
2782         * rendering/RenderTheme.cpp:
2783         (WebCore::RenderTheme::baselinePosition):
2784         * rendering/RenderTheme.h:
2785         * rendering/RenderThemeGtk.cpp:
2786         (WebCore::RenderThemeGtk::baselinePosition):
2787         * rendering/RenderThemeGtk.h:
2788         * rendering/RenderThemeIOS.h:
2789         * rendering/RenderThemeIOS.mm:
2790         (WebCore::RenderThemeIOS::baselinePosition):
2791         * rendering/RenderThemeSafari.cpp:
2792         (WebCore::RenderThemeSafari::baselinePosition):
2793         * rendering/RenderThemeSafari.h:
2794
2795 2015-08-04  Alex Christensen  <achristensen@webkit.org>
2796
2797         Enable WebGL on Windows CMake build.
2798         https://bugs.webkit.org/show_bug.cgi?id=143311
2799
2800         Reviewed by Csaba Osztrogonác.
2801
2802         * CMakeLists.txt:
2803         ANGLE is built quite differently on Windows, so I'm not going to touch the existing CMake build system for
2804         ANGLE on Linux, although I think it should eventually be unified more by using ANGLE's OpenGL renderer.
2805         * PlatformWin.cmake:
2806         Added some needed source files and include directories.
2807
2808 2015-08-04  Jeremy Jones  <jeremyj@apple.com>
2809
2810         Implement isPictureInPictureInterrupted.
2811         https://bugs.webkit.org/show_bug.cgi?id=147620
2812
2813         Reviewed by Eric Carlson.
2814
2815         Implement isPictureInPictureInterrupted so setting the property to true pauses playback.
2816         This allows PiP to pause when the device is locked while the app is suspended.
2817
2818         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
2819         (-[WebAVPlayerController init]):
2820         (-[WebAVPlayerController isPictureInPictureInterrupted]):
2821         (-[WebAVPlayerController setPictureInPictureInterrupted:]):
2822
2823 2015-08-03  Csaba Osztrogonác  <ossy@webkit.org>
2824
2825         Introduce COMPILER(GCC_OR_CLANG) guard and make COMPILER(GCC) true only for GCC
2826         https://bugs.webkit.org/show_bug.cgi?id=146833
2827
2828         Reviewed by Alexey Proskuryakov.
2829
2830         * platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
2831         * platform/graphics/cpu/arm/filters/FELightingNEON.h:
2832         * platform/graphics/filters/FELighting.cpp:
2833         (WebCore::FELighting::platformApply):
2834         * platform/network/efl/NetworkStateNotifierEfl.cpp:
2835         (WebCore::NetworkStateNotifier::readSocketCallback):
2836
2837 2015-08-03  Csaba Osztrogonác  <ossy@webkit.org>
2838
2839         [CMake] Add an option to build AllInOne files
2840         https://bugs.webkit.org/show_bug.cgi?id=102647
2841
2842         Reviewed by Alex Christensen.
2843
2844         * CMakeLists.txt:
2845
2846 2015-08-03  Csaba Osztrogonác  <ossy@webkit.org>
2847
2848         Fix the all-in-one build on Linux after r187659
2849         https://bugs.webkit.org/show_bug.cgi?id=147557
2850
2851         Reviewed by Alex Christensen.
2852
2853         Removed MediaFeatureNames.cpp from the all-in-one build, because it caused build failures on Linux.
2854         Additionally removed css/MediaAllInOne.cpp since it is unused.
2855
2856         * WebCore.vcxproj/WebCore.vcxproj:
2857         * WebCore.vcxproj/WebCore.vcxproj.filters:
2858         * css/CSSAllInOne.cpp:
2859         * css/MediaAllInOne.cpp: Removed.
2860
2861 2015-08-03  Benjamin Poulain  <bpoulain@apple.com>
2862
2863         Returns inconsistent types for el.style.property and el.style.getPropertyValue('color')
2864         https://bugs.webkit.org/show_bug.cgi?id=147549
2865
2866         Reviewed by Andreas Kling.
2867
2868         Kudos to Greg Whitworth for finding this bug.
2869
2870         Test: fast/css/getPropertyValue-returns-empty-on-missing-property.html
2871
2872         * css/CSSStyleDeclaration.idl:
2873         Our definition was wrong.
2874         Current spec: http://www.w3.org/TR/cssom/#dom-cssstyledeclaration-getpropertyvalue
2875         Current draft: https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-getpropertyvalue
2876         Gecko and EdgeHTML follow the spec.
2877
2878 2015-08-03  Myles C. Maxfield  <mmaxfield@apple.com>
2879
2880         Fix crashing Mavericks test
2881
2882         Unreviewed.
2883
2884         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2885         (WebCore::FontPlatformData::registeredFont):
2886
2887 2015-08-03  Myles C. Maxfield  <mmaxfield@apple.com>
2888
2889         Unreviewed post-review feedback on r187797
2890
2891         The correct terminology is "registered" instead of "activated."
2892
2893         No new tests because there is no behavior change.
2894
2895         * platform/graphics/FontPlatformData.h:
2896         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2897         (WebCore::FontPlatformData::registeredFont):
2898         (WebCore::FontPlatformData::activatedFont): Deleted.
2899
2900 2015-08-03  Myles C. Maxfield  <mmaxfield@apple.com>
2901
2902         Clean up casts between NSFont*s and CTFontRefs
2903         https://bugs.webkit.org/show_bug.cgi?id=147618
2904
2905         Reviewed by Mitz Pettel.
2906
2907         For toll free bridged types, it makes more sense to do a C-style cast, than jump
2908         through hoops for older compilers.
2909
2910         No new tests because there is no behavior change.
2911
2912         * platform/graphics/FontPlatformData.h:
2913         (WebCore::FontPlatformData::nsFont):
2914         (WebCore::FontPlatformData::hash):
2915
2916 2015-08-03  Commit Queue  <commit-queue@webkit.org>
2917
2918         Unreviewed, rolling out r187707, r187709, r187724, and
2919         r187728.
2920         https://bugs.webkit.org/show_bug.cgi?id=147617
2921
2922         fast/text/international/arabic-justify.html is flakey
2923         (Requested by litherum on #webkit).
2924
2925         Reverted changesets:
2926
2927         "[OS X] Migrate to CTFontCreateForCharactersWithLanguage from
2928         [NSFont findFontLike:forString:withRange:inLanguage]"
2929         https://bugs.webkit.org/show_bug.cgi?id=147483
2930         http://trac.webkit.org/changeset/187707
2931
2932         "Fix the build"
2933         http://trac.webkit.org/changeset/187709
2934
2935         "Expand CharacterFallbackMapKey to a struct"
2936         https://bugs.webkit.org/show_bug.cgi?id=147530
2937         http://trac.webkit.org/changeset/187724
2938
2939         "CharacterFallbackMapKey should be locale-specific"
2940         https://bugs.webkit.org/show_bug.cgi?id=147532
2941         http://trac.webkit.org/changeset/187728
2942
2943 2015-08-03  Myles C. Maxfield  <mmaxfield@apple.com>
2944
2945         REGRESSION(r184899): Crash when focusing an input element styled with a web font
2946         https://bugs.webkit.org/show_bug.cgi?id=147616
2947         <rdar://problem/21838271>
2948
2949         Reviewed by Dean Jackson.
2950
2951         NSFontManager can't handle web fonts. We used to pass null to NSFontManager in this case,
2952         but r184899 changed that.
2953
2954         Test: fast/text/input-webfont-focus.html
2955
2956         * platform/graphics/FontPlatformData.h:
2957         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2958         (WebCore::FontPlatformData::activatedFont):
2959
2960 2015-08-03  Brent Fulgham  <bfulgham@apple.com>
2961
2962         [Win] Unreviewed build fix.
2963
2964         It turns out that the IFEQ command (at least on Cygwin) does not
2965         understand Wildcards for OS types. Consequently, we should not use
2966         Windows* in makefiles. Luckily, we only need Windows_NT anymore.
2967
2968         * DerivedSources.make: Change Windows* -> Windows_NT to correct build.
2969
2970 2015-08-03  Tim Horton  <timothy_horton@apple.com>
2971
2972         REGRESSION (r186916): TextIndicators for multiline link previews are unreadable/offset/blank
2973         https://bugs.webkit.org/show_bug.cgi?id=147615
2974         <rdar://problem/22116575>
2975
2976         Reviewed by Dean Jackson.
2977
2978         * page/mac/TextIndicatorWindow.mm:
2979         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:offset:]):
2980         No need to offset by the difference between the text bounding rect and the selection bounding rect,
2981         because the snapshot is now (after r186916) taken of exactly the text bounding rect.
2982
2983 2015-08-03  Matt Rajca  <mrajca@apple.com>
2984
2985         Media Session: let UI clients query whether a media element is paused
2986         https://bugs.webkit.org/show_bug.cgi?id=147588
2987
2988         Reviewed by Tim Horton.
2989
2990         * page/Page.cpp:
2991         (WebCore::Page::isMediaElementPaused): Determine if the media element with the given ID is paused.
2992         * page/Page.h:
2993
2994 2015-08-03  Eric Carlson  <eric.carlson@apple.com>
2995
2996         [Mac] Always require user gesture to begin playing to AppleTV automatically
2997         https://bugs.webkit.org/show_bug.cgi?id=147591
2998
2999         Reviewed by Jer Noble.
3000
3001         * html/HTMLMediaElement.cpp:
3002         (WebCore::HTMLMediaElement::mediaState): Don't set the ExternalDeviceAutoPlayCandidate 
3003           flag until the user has explicitly triggered playback.
3004
3005 2015-08-03  Dean Jackson  <dino@apple.com>
3006
3007         Inline video controls overlap each other while playing video in slideover mode
3008         https://bugs.webkit.org/show_bug.cgi?id=147535
3009         <rdar://problem/22026864>
3010
3011         Reviewed by Eric Carlson.
3012
3013         Now that the resizing code is in the shared controller, we need to
3014         make sure to hide the timeline scrubber in iOS when the controls
3015         get too small. This involved adding the dropped class to the timeline,
3016         and rules for hiding to the CSS.
3017
3018         Meanwhile, when the page scale factor is less than one, we use the CSS zoom property
3019         and don't need to factor in the page scale factor when calculating
3020         the size.
3021
3022         * Modules/mediacontrols/mediaControlsApple.js:
3023         (Controller.prototype.updateLayoutForDisplayedWidth): Don't use pageScaleFactor.
3024         * Modules/mediacontrols/mediaControlsiOS.css:
3025         (audio::-webkit-media-controls-panel .dropped): Add display none for this rule.
3026
3027 2015-08-03  Anders Carlsson  <andersca@apple.com>
3028
3029         Safari is failing to remove SQLite Databases via Remove All Website Data
3030         https://bugs.webkit.org/show_bug.cgi?id=147584
3031         rdar://problem/22095006
3032
3033         Reviewed by Brady Eidson.
3034
3035         If we end up deleting every single database for an origin, make sure to also delete the origin.
3036
3037         * Modules/webdatabase/DatabaseTracker.cpp:
3038         (WebCore::DatabaseTracker::deleteDatabasesModifiedSince):
3039
3040 2015-08-03  Zalan Bujtas  <zalan@apple.com>
3041
3042         Move "starting from root" frame flattening logging to the correct place.
3043         https://bugs.webkit.org/show_bug.cgi?id=147571
3044
3045         Reviewed by Simon Fraser.
3046
3047         * page/FrameView.cpp:
3048         (WebCore::FrameView::startLayoutAtMainFrameViewIfNeeded):
3049         (WebCore::FrameView::layout): Deleted.
3050
3051 2015-08-03  Commit Queue  <commit-queue@webkit.org>
3052
3053         Unreviewed, rolling out r187729.
3054         https://bugs.webkit.org/show_bug.cgi?id=147575
3055
3056         10% performance hit (Requested by litherum on #webkit).
3057
3058         Reverted changeset:
3059
3060         "[OS X] Font fallback is not language-sensitive"
3061         https://bugs.webkit.org/show_bug.cgi?id=147390
3062         http://trac.webkit.org/changeset/187729
3063
3064 2015-08-03  Zalan Bujtas  <zalan@apple.com>
3065
3066         ChildWidgetState::ChildWidgetIs* naming is redundant.
3067         https://bugs.webkit.org/show_bug.cgi?id=147565
3068
3069         Reviewed by Simon Fraser.
3070
3071         Since strongly typed enum requires to write out 'ChildWidgetState::ChildWidgetIsDestroyed',
3072         the enumerator list names can be shortened.
3073
3074         No change in behaviour.
3075
3076         * rendering/RenderFrameBase.cpp:
3077         (WebCore::RenderFrameBase::peformLayoutWithFlattening):
3078         * rendering/RenderWidget.cpp:
3079         (WebCore::RenderWidget::updateWidgetPosition):
3080         * rendering/RenderWidget.h:
3081
3082 2015-08-03  Zalan Bujtas  <zalan@apple.com>
3083
3084         Pass ControlStates& to RenderTheme methods instead of ControlStates*
3085         https://bugs.webkit.org/show_bug.cgi?id=147521
3086
3087         Reviewed by Andreas Kling.
3088
3089         No change in functionality.
3090
3091         * platform/Theme.h:
3092         (WebCore::Theme::selectionColor):
3093         (WebCore::Theme::paint):
3094         (WebCore::Theme::inflateControlPaintRect):
3095         * platform/mac/ThemeMac.h:
3096         * platform/mac/ThemeMac.mm:
3097         (WebCore::updateStates):
3098         (WebCore::convertControlStatesToThemeDrawState):
3099         (WebCore::configureToggleButton):
3100         (WebCore::sharedRadioCell):
3101         (WebCore::sharedCheckboxCell):
3102         (WebCore::paintToggleButton):
3103         (WebCore::setUpButtonCell):
3104         (WebCore::button):
3105         (WebCore::paintButton):
3106         (WebCore::paintStepper):
3107         (WebCore::ThemeMac::ensuredView):
3108         (WebCore::ThemeMac::inflateControlPaintRect):
3109         (WebCore::ThemeMac::paint):
3110         * rendering/RenderBox.cpp:
3111         (WebCore::RenderBox::paintBoxDecorations):
3112         * rendering/RenderTheme.cpp:
3113         (WebCore::RenderTheme::paint):
3114         (WebCore::RenderTheme::adjustRepaintRect):
3115         (WebCore::RenderTheme::updateControlStatesForRenderer):
3116         * rendering/RenderTheme.h:
3117         * rendering/RenderThemeMac.mm:
3118         (WebCore::RenderThemeMac::documentViewFor):
3119
3120 2015-08-03  Brady Eidson  <beidson@apple.com>
3121
3122         Crash when signing into twitter calling WebCore::DocumentLoader::responseReceived(WebCore::CachedResource*, WebCore::ResourceResponse const&).
3123         <rdar://problem/22098457> and https://bugs.webkit.org/show_bug.cgi?id=147560
3124
3125         Reviewed by Alexey Proskuryakov.
3126
3127         * loader/DocumentLoader.cpp:
3128         (WebCore::DocumentLoader::willSendRequest): Only grab identifierForLoadWithoutResourceLoader() if there's no ResourceLoader.
3129
3130 2015-08-03  Zalan Bujtas  <zalan@apple.com>
3131
3132         themePainted in RenderBox::paintBoxDecorations() is confusing.
3133         https://bugs.webkit.org/show_bug.cgi?id=147492
3134
3135         Reviewed by Andreas Kling.
3136
3137         What themePainted is supposed to indicate is whether the theme requires additional border and background painting.
3138         Rename it to borderOrBackgroundPaintingIsNeeded.
3139
3140         No change in behaviour.
3141
3142         * rendering/RenderBox.cpp:
3143         (WebCore::RenderBox::paintBoxDecorations):
3144
3145 2015-08-03  Youenn Fablet  <youenn.fablet@crf.canon.fr>
3146
3147         [EFL] http/tests/media/media-stream/disconnected-frame-already.html is crashing after r185903
3148         https://bugs.webkit.org/show_bug.cgi?id=146834
3149
3150         Reviewed by Eric Carlson.
3151
3152         r185903 went to far in removing some tests, in particular whether the current process is related to a frame.
3153         Readded that check.
3154         Refactored the code to remove the need for NavigatorUserMedia class.
3155
3156         Covered by existing tests.
3157
3158         * CMakeLists.txt: Removed NavigatorUserMedia.cpp.
3159         * Modules/mediastream/NavigatorUserMedia.cpp: Removed.
3160         * Modules/mediastream/NavigatorUserMedia.h: Removed.
3161         * WebCore.xcodeproj/project.pbxproj: Ditto.
3162         * bindings/js/JSNavigatorCustom.cpp:
3163         (WebCore::JSNavigator::webkitGetUserMedia): Inlined NavigatorUserMeia::webkitGetUserMedia.
3164
3165 2015-08-03  Youenn Fablet  <youenn.fablet@crf.canon.fr>
3166
3167         JSXMLHttpRequest::visitAdditionalChildren does not need to explicitly mark m_response
3168         https://bugs.webkit.org/show_bug.cgi?id=147488
3169
3170         Reviewed by Andreas Kling.
3171
3172         Covered by existing tests.
3173
3174         * bindings/js/JSXMLHttpRequestCustom.cpp:
3175         (WebCore::JSXMLHttpRequest::visitAdditionalChildren): Removed m_response marking.
3176
3177 2015-08-01  Chris Fleizach  <cfleizach@apple.com>
3178
3179         AX: On some complex sites, iOS instantly crashes once VoiceOver is turned on
3180         https://bugs.webkit.org/show_bug.cgi?id=147529
3181
3182         Reviewed by Dan Bernstein.
3183
3184         Sometimes after focusing on a node, it seems like the entire document is destroyed.
3185         Accessibility the axObjectCache returns nullptr and we crash.
3186
3187         Despite my best efforts, I couldn't make a layout test that reproduced this. It's possible
3188         the entire document needs to be destroyed and replaced with something.
3189
3190         * accessibility/AccessibilityRenderObject.cpp:
3191         (WebCore::AccessibilityRenderObject::setFocused):
3192
3193 2015-08-01  Myles C. Maxfield  <mmaxfield@apple.com>
3194
3195         [OS X] Font fallback is not language-sensitive
3196         https://bugs.webkit.org/show_bug.cgi?id=147390
3197
3198         Reviewed by Dean Jackson.
3199
3200         We need to make our font fallback code sensitive to locale.
3201
3202         Test: fast/text/fallback-language-han.html
3203
3204         * platform/graphics/mac/FontCacheMac.mm:
3205         (WebCore::lookupCTFont):
3206         (WebCore::FontCache::systemFallbackForCharacters):
3207
3208 2015-08-01  Myles C. Maxfield  <mmaxfield@apple.com>
3209
3210         CharacterFallbackMapKey should be locale-specific
3211         https://bugs.webkit.org/show_bug.cgi?id=147532
3212
3213         Reviewed by Dean Jackson.
3214
3215         This is in preparation for locale-specific font fallback.
3216
3217         No new tests because there is no behavior change.
3218
3219         * platform/graphics/Font.cpp:
3220         (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
3221         (WebCore::CharacterFallbackMapKey::operator==):
3222         (WebCore::CharacterFallbackMapKeyHash::hash):
3223         (WebCore::Font::systemFallbackFontForCharacter):
3224
3225 2015-08-01  Myles C. Maxfield  <mmaxfield@apple.com>
3226
3227         Expand CharacterFallbackMapKey to a struct
3228         https://bugs.webkit.org/show_bug.cgi?id=147530
3229
3230         Reviewed by Dean Jackson.
3231
3232         This is in prepraration for making this struct locale-specific.
3233
3234         No new tests because there is no behavior change.
3235
3236         * platform/graphics/Font.cpp:
3237         (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
3238         (WebCore::CharacterFallbackMapKey::isHashTableDeletedValue):
3239         (WebCore::CharacterFallbackMapKey::operator==):
3240         (WebCore::CharacterFallbackMapKeyHash::hash):
3241         (WebCore::CharacterFallbackMapKeyHash::equal):
3242         (WebCore::Font::systemFallbackFontForCharacter):
3243
3244 2015-08-01  Myles C. Maxfield  <mmaxfield@apple.com>
3245
3246         Fix the build after r187721
3247
3248         Unreviewed.
3249
3250         * bindings/js/JSDOMBinding.h:
3251         (WebCore::createWrapper):
3252
3253 2015-08-01  Alex Christensen  <achristensen@webkit.org>
3254
3255         Fix compile errors with VS2015
3256         https://bugs.webkit.org/show_bug.cgi?id=147526
3257
3258         Reviewed by Myles Maxfield.
3259
3260         * bindings/js/JSDOMBinding.h:
3261         (WebCore::createWrapper):
3262         Explicitly call the Ref constructor to avoid unresolved symbols with VS2015.
3263         Otherwise, VS2015 tries to use CSSPrimitiveValue::operator<Ref<CSSPrimitiveValue> > which doesn't exist.
3264
3265 2015-07-27  Matt Rajca  <mrajca@apple.com>
3266
3267         Media Session: inform the UI process when the focused Content media element changes
3268         https://bugs.webkit.org/show_bug.cgi?id=147323
3269
3270         Reviewed by Tim Horton.
3271
3272         * html/HTMLMediaElement.cpp:
3273         (WebCore::HTMLMediaElement::playInternal): Eventually tell the UI process that the focused Content media element changed.
3274         * page/ChromeClient.h:
3275
3276 2015-07-27  Matt Rajca  <mrajca@apple.com>
3277
3278         Media Session: give media elements unique IDs
3279         https://bugs.webkit.org/show_bug.cgi?id=147322
3280
3281         Reviewed by Eric Carlson.
3282
3283         * html/HTMLMediaElement.cpp:
3284         (WebCore::elementIDsToElements): Create a global map of element IDs to elements.
3285         (WebCore::HTMLMediaElement::elementWithID): Retrieve the element with the given ID.
3286         (WebCore::HTMLMediaElement::HTMLMediaElement): Give the element a unique ID.
3287         (WebCore::HTMLMediaElement::playInternal): Removed whitespace.
3288         (WebCore::HTMLMediaElement::pauseInternal): Ditto.
3289         * html/HTMLMediaElement.h:
3290         (WebCore::HTMLMediaElement::elementID):
3291
3292 2015-07-31  Myles C. Maxfield  <mmaxfield@apple.com>
3293
3294         Fix the build
3295
3296         Unreviewed.
3297
3298         * platform/graphics/mac/FontCacheMac.mm:
3299         (WebCore::lookupCTFont):
3300
3301 2015-07-31  Myles C. Maxfield  <mmaxfield@apple.com>
3302
3303         [OS X] Migrate to CTFontCreateForCharactersWithLanguage from [NSFont findFontLike:forString:withRange:inLanguage]
3304         https://bugs.webkit.org/show_bug.cgi?id=147483
3305
3306         Reviewed by Dean Jackson.
3307
3308         [NSFont findFontLike:forString:withRange:inLanguage] doesn't properly handle its last argument. In
3309         addition, we want to be moving away from NSFont in the first place and on to Core Text. This new
3310         CoreText function correctly handles its language argument, which is required for language-specific
3311         font fallback.
3312
3313         No new tests because there is no behavior change.
3314
3315         * platform/graphics/FontCache.cpp:
3316         (WebCore::FontCache::purgeInactiveFontData):
3317         * platform/graphics/FontCache.h:
3318         (WebCore::FontCache::platformPurgeInactiveFontData):
3319         * platform/graphics/mac/FontCacheMac.mm:
3320         (WebCore::fallbackDedupSet):
3321         (WebCore::FontCache::platformPurgeInactiveFontData):
3322         (WebCore::lookupCTFont):
3323         (WebCore::FontCache::systemFallbackForCharacters):
3324         * platform/spi/cocoa/CoreTextSPI.h:
3325         * platform/spi/mac/NSFontSPI.h:
3326
3327 2015-07-31  Chris Dumez  <cdumez@apple.com>
3328
3329         Drop dummy Timer callbacks
3330         https://bugs.webkit.org/show_bug.cgi?id=147516
3331
3332         Reviewed by Alexey Proskuryakov.
3333
3334         Drop dummy Timer callbacks in the code base. A lot of Timer callbacks
3335         do nothing else beside calling a particular method. In such case, we
3336         can use the called method as Timer callback instead.
3337
3338         * css/FontLoader.cpp:
3339         (WebCore::FontLoader::FontLoader):
3340         * css/FontLoader.h:
3341         * dom/Document.cpp:
3342         (WebCore::Document::Document):
3343         (WebCore::Document::styleRecalcTimerFired): Deleted.
3344         (WebCore::Document::domCookieCacheExpiryTimerFired): Deleted.
3345         * dom/Document.h:
3346         * html/MediaController.cpp:
3347         (MediaController::MediaController):
3348         (MediaController::timeupdateTimerFired): Deleted.
3349         * html/MediaController.h:
3350         * loader/cache/CachedResource.cpp:
3351         (WebCore::CachedResource::CachedResource):
3352         * loader/cache/CachedResourceLoader.cpp:
3353         (WebCore::CachedResourceLoader::CachedResourceLoader):
3354         (WebCore::CachedResourceLoader::garbageCollectDocumentResourcesTimerFired): Deleted.
3355         * loader/cache/CachedResourceLoader.h:
3356         * loader/cache/MemoryCache.cpp:
3357         (WebCore::MemoryCache::MemoryCache):
3358         (WebCore::MemoryCache::pruneTimerFired): Deleted.
3359         * loader/cache/MemoryCache.h:
3360         * page/EventSource.cpp:
3361         (WebCore::EventSource::EventSource):
3362         (WebCore::EventSource::connectTimerFired): Deleted.
3363         * page/EventSource.h:
3364         * page/FrameView.cpp:
3365         (WebCore::FrameView::FrameView):
3366         (WebCore::FrameView::delayedScrollEventTimerFired): Deleted.
3367         (WebCore::FrameView::postLayoutTimerFired): Deleted.
3368         * page/FrameView.h:
3369         * page/scrolling/ios/ScrollingCoordinatorIOS.h:
3370         * page/scrolling/ios/ScrollingCoordinatorIOS.mm:
3371         (WebCore::ScrollingCoordinatorIOS::ScrollingCoordinatorIOS):
3372         (WebCore::ScrollingCoordinatorIOS::scrollingStateTreeCommitterTimerFired): Deleted.
3373         * page/scrolling/mac/ScrollingCoordinatorMac.h:
3374         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
3375         (WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
3376         (WebCore::ScrollingCoordinatorMac::scrollingStateTreeCommitterTimerFired): Deleted.
3377         * platform/graphics/FontCache.cpp:
3378         (WebCore::FontCache::FontCache):
3379         (WebCore::FontCache::purgeTimerFired): Deleted.
3380         * platform/graphics/FontCache.h:
3381         * platform/graphics/ShadowBlur.cpp:
3382         (WebCore::ScratchBuffer::ScratchBuffer):
3383         (WebCore::ScratchBuffer::timerFired): Deleted.
3384         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
3385         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
3386         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
3387         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekTimerFired): Deleted.
3388
3389 2015-07-31  Matthew Daiter  <mdaiter@apple.com>
3390
3391         Removed pointSize from _addMarkersToList
3392         https://bugs.webkit.org/show_bug.cgi?id=147515
3393
3394         Reviewed by Eric Carlson.
3395
3396         * editing/cocoa/HTMLConverter.mm:
3397         (HTMLConverter::_addMarkersToList): Deleted.
3398
3399 2015-07-31  Alex Christensen  <achristensen@webkit.org>
3400
3401         Prepare for VS2015
3402         https://bugs.webkit.org/show_bug.cgi?id=146579
3403
3404         Reviewed by Jon Honeycutt.
3405
3406         * WebCore.vcxproj/build-generated-files.pl:
3407         Find a correct preprocessor when using VS2015.
3408
3409 2015-07-31  Eric Carlson  <eric.carlson@apple.com>
3410
3411         [iOS] use a media-specific user gesture check
3412         https://bugs.webkit.org/show_bug.cgi?id=147509
3413
3414         Reviewed by Tim Horton.
3415
3416         Change an enum name added in r187688.
3417
3418         * dom/UserGestureIndicator.cpp:
3419         (WebCore::isDefinite): DefinitelyProcessingMediaUserGesture -> DefinitelyProcessingPotentialUserGesture
3420         (WebCore::UserGestureIndicator::processingUserGestureForMedia): Ditto.
3421         * dom/UserGestureIndicator.h: Ditto.
3422
3423 2015-07-31  Myles C. Maxfield  <mmaxfield@apple.com>
3424
3425         [Cocoa] Latin quotes are used with the system font on Chinese devices
3426         https://bugs.webkit.org/show_bug.cgi?id=147504
3427
3428         Reviewed by Dean Jackson.
3429
3430         The system font has some fancy logic regarding character selection which requires
3431         using Core Text for glyph selection.
3432
3433         No new tests because tests can't change the system language of the device.
3434
3435         * platform/graphics/mac/GlyphPageMac.cpp:
3436         (WebCore::shouldUseCoreText):
3437
3438 2015-07-31  Chris Dumez  <cdumez@apple.com>
3439
3440         Coalesce authentication credential requests
3441         https://bugs.webkit.org/show_bug.cgi?id=128006
3442         <rdar://problem/16839069>
3443
3444         Reviewed by Alexey Proskuryakov.
3445
3446         Export symbol for ProtectionSpace::compare() so it can be called from
3447         WebKit2.
3448
3449         * platform/network/ProtectionSpaceBase.h:
3450
3451 2015-07-31  Eric Carlson  <eric.carlson@apple.com>
3452
3453         [iOS] use a media-specific user gesture check
3454         https://bugs.webkit.org/show_bug.cgi?id=147509
3455
3456         Reviewed by Jer Noble.
3457
3458         * bindings/js/ScriptController.cpp:
3459         (WebCore::ScriptController::processingUserGestureForMedia): New.
3460         * bindings/js/ScriptController.h:
3461
3462         * dom/UserGestureIndicator.cpp:
3463         (WebCore::isDefinite): Allow DefinitelyProcessingMediaUserGesture.
3464         (WebCore::UserGestureIndicator::processingUserGestureForMedia): New.
3465         * dom/UserGestureIndicator.h:
3466
3467         * html/HTMLMediaElement.cpp:
3468         (WebCore::HTMLMediaElement::load): Use ScriptController::processingUserGestureForMedia instead of 
3469           ScriptController::processingUserGesture
3470         (WebCore::HTMLMediaElement::play): Ditto.
3471
3472 2015-07-31  Andreas Kling  <akling@apple.com>
3473
3474         Crashes under HTMLMediaElement::updateActiveTextTrackCues() when destroying CachedPage.
3475         <https://webkit.org/b/147506>
3476         <rdar://problem/21939014>
3477
3478         Reviewed by Chris Dumez.
3479
3480         Don't mess with the media element's text tracks below its ActiveDOMObject::stop()
3481         implementation, since that may cause DOM mutations.
3482
3483         I don't have a repro or a test for this, but plenty of crash logs to indicate that
3484         we're getting ourselves into trouble by modifying the DOM during CachedPage teardown.
3485
3486         * html/HTMLMediaElement.cpp:
3487         (WebCore::HTMLMediaElement::configureTextTrackDisplay):
3488
3489 2015-07-31  Tim Horton  <timothy_horton@apple.com>
3490
3491         [iOS] DOMNode preview snapshot rects are wrong for user-select: none links
3492         https://bugs.webkit.org/show_bug.cgi?id=147513
3493        &