1 2015-08-13 Wenson Hsieh <wenson_hsieh@apple.com>
3 A focused node should not be assisted when handling touch events synchronously
4 https://bugs.webkit.org/show_bug.cgi?id=147836
5 <rdar://problem/22204108>
7 Reviewed by Enrica Casucci.
9 Makes interaction with touch handlers no longer assist the currently focused element in the
10 general case. Added plumbing to reassist a currently focused node when dispatching touch events,
11 so that an input that programmatically focuses itself and prevents default on a touch event will
12 be properly assisted when it has been programmatically focused (either through Javascript or the
13 autofocus attribute) prior to receiving the touch event. This patch also removes the now
14 unnecessary special-casing of the Gmail settings app that currently makes the keyboard deploy
18 (WebCore::Element::focus): Notifies the chrome client that the element has refocused before
20 * page/ChromeClient.h: Refocusing an element does nothing by default.
21 * platform/RuntimeApplicationChecksIOS.h: Removed special casing for Gmail Add Account.
22 * platform/RuntimeApplicationChecksIOS.mm: See above.
23 (WebCore::applicationIsGmailAddAccountOnIOS): See above.
25 2015-08-13 Brent Fulgham <bfulgham@apple.com>
27 [Win] Unreviewed build fix.
29 * accessibility/AXObjectCache.cpp: Add missing 'DataLog.h' include.
31 2015-08-13 Wenson Hsieh <wenson_hsieh@apple.com>
33 Selects should scale when rendering while zoomed
34 https://bugs.webkit.org/show_bug.cgi?id=147868
36 Reviewed by Daniel Bates.
38 When rendering zoomed <select> elements, draw to an image buffer instead of drawing directly
39 into the context. This allows us to scale the image buffer up before rendering.
41 * rendering/RenderThemeMac.mm:
42 (WebCore::RenderThemeMac::paintMenuList): Use ThemeMac::drawCellOrFocusRingWithViewIntoContext
43 to render search fields, utilizing an offscreen image buffer only when necessary.
45 2015-08-13 Alex Christensen <achristensen@webkit.org>
47 [Win] Unreviewed build fix after r188388.
49 * bindings/js/JSWebGLRenderingContextCustom.cpp:
51 * rendering/RenderThemeWin.cpp:
52 Strange things happen when you change including headers. This fixed my local build.
54 2015-08-13 Geoffrey Garen <ggaren@apple.com>
56 Standardize on the phrase "delete code"
57 https://bugs.webkit.org/show_bug.cgi?id=147984
61 Use "delete" when we talk about throwing away code, as opposed to
62 "invalidate" or "discard".
64 * bindings/js/GCController.cpp:
65 (WebCore::GCController::setJavaScriptGarbageCollectorTimerEnabled):
66 (WebCore::GCController::deleteAllCode):
67 (WebCore::GCController::discardAllCompiledCode): Deleted.
68 * bindings/js/GCController.h:
69 * platform/MemoryPressureHandler.cpp:
70 (WebCore::MemoryPressureHandler::releaseCriticalMemory):
72 2015-08-13 Eric Carlson <eric.carlson@apple.com>
74 Don't short circuit seeking
75 https://bugs.webkit.org/show_bug.cgi?id=147892
77 Reviewed by Jer Noble.
79 Test: media/video-seek-to-current-time.html
81 * html/HTMLMediaElement.cpp:
82 (WebCore::HTMLMediaElement::prepareForLoad): Call clearSeeking.
83 (WebCore::HTMLMediaElement::fastSeek): Add logging.
84 (WebCore::HTMLMediaElement::seekWithTolerance): Add logging. Set m_pendingSeekType.
85 (WebCore::HTMLMediaElement::seekTask): Call clearSeeking. Don't short circuit a
86 if the current or pending seek is a fast seek. Set m_seeking to true immediately
87 before calling media engine as it may have been cleared before the seek task
89 (WebCore::HTMLMediaElement::clearSeeking): New.
90 * html/HTMLMediaElement.h:
91 * html/HTMLMediaElementEnums.h:
93 * platform/GenericTaskQueue.h:
94 (WebCore::GenericTaskQueue::enqueueTask): Clear m_pendingTasks.
96 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
97 (WebCore::MediaPlayerPrivateAVFoundation::seekWithTolerance): Don't return early
98 when asked to seek to the current time.
99 (WebCore::MediaPlayerPrivateAVFoundation::invalidateCachedDuration): Remove some
100 extremely noisy logging.
102 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
103 (WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime): Add logging.
105 2015-08-13 Simon Fraser <simon.fraser@apple.com>
107 FilterOperation.h should not include FilterEffect.h
108 https://bugs.webkit.org/show_bug.cgi?id=147970
110 Reviewed by Daniel Bates.
112 FilterEffect.h pulls in lots of JSC goop via runtime/Uint8ClampedArray.h,
113 so move its include to FilterOperation.cpp.
115 Causes include bloat because FilterOperation.h is pulled in via RenderStyle.h.
117 * platform/graphics/filters/FilterOperation.cpp:
118 (WebCore::ReferenceFilterOperation::setFilterEffect):
119 * platform/graphics/filters/FilterOperation.h:
120 (WebCore::ReferenceFilterOperation::setFilterEffect): Deleted.
122 2015-08-13 Simon Fraser <simon.fraser@apple.com>
124 ScriptExecutionContext.h pulls in all the JSC headers
125 https://bugs.webkit.org/show_bug.cgi?id=147969
127 Reviewed by Alexey Proskuryakov.
129 ScriptExecutionContext.h included ScheduledAction.h, which pulled in all the
130 JSC headers via JSDOMBinding.h. There was no need for this #include, so remove
131 it and fix the fallout.
133 * Modules/webdatabase/DatabaseTracker.cpp:
134 * Modules/webdatabase/SQLTransaction.h:
135 * bindings/js/JSWebGLRenderingContextCustom.cpp:
136 * contentextensions/ContentExtensionStyleSheet.cpp:
137 * dom/ScriptExecutionContext.h:
138 * html/FTPDirectoryDocument.cpp:
139 * html/canvas/WebGLRenderingContext.cpp:
140 * html/parser/HTMLTreeBuilder.h:
142 2015-08-12 Anders Carlsson <andersca@apple.com>
144 Use WTF::Optional in WindowFeatures
145 https://bugs.webkit.org/show_bug.cgi?id=147956
147 Reviewed by Sam Weinig.
149 * loader/FrameLoader.cpp:
150 (WebCore::createWindow):
151 * page/WindowFeatures.cpp:
152 (WebCore::WindowFeatures::WindowFeatures):
153 (WebCore::WindowFeatures::setWindowFeature):
154 (WebCore::WindowFeatures::boolFeature):
155 (WebCore::WindowFeatures::floatFeature):
156 (WebCore::WindowFeatures::parseDialogFeatures):
157 * page/WindowFeatures.h:
158 (WebCore::WindowFeatures::WindowFeatures):
160 2015-08-13 Matthew Daiter <mdaiter@apple.com>
162 UserMediaRequest should supply IDs of devices selected by user
163 https://bugs.webkit.org/show_bug.cgi?id=147263
164 <rdar://problem/21983345>
166 Reviewed by Jer Noble.
168 * Modules/mediastream/UserMediaRequest.cpp:
169 (WebCore::UserMediaRequest::userMediaAccessGranted):
170 * Modules/mediastream/UserMediaRequest.h:
171 * platform/mock/UserMediaClientMock.h:
173 2015-08-12 Carlos Garcia Campos <cgarcia@igalia.com>
175 [Cairo] Improve image quality when using newer versions of cairo/pixman
176 https://bugs.webkit.org/show_bug.cgi?id=147826
178 Reviewed by Martin Robinson.
180 Since cairo 1.14 the image filters changed a bit:
182 - CAIRO_FILTER_GOOD uses a box filter when downscaling if the
183 scale factor is less than 0.75, otherwise it uses a filter
184 equivalent to CAIRO_FILTER_BILINEAR.
185 - CAIRO_FILTER_BEST uses always a Catmull-Rom filter.
187 We are currently using CAIRO_FILTER_BILINEAR for medium, high and
188 default interpolation levels. We could use CAIRO_FILTER_GOOD for
189 medium and default, and CAIRO_FILTER_BEST for high. This will not
190 have any effect in previous versions of cairo because before 1.14
191 CAIRO_FILTER_GOOD, CAIRO_FILTER_BILINEAR and CAIRO_FILTER_BEST had
192 the same implementation in pixman.
194 * platform/graphics/cairo/PlatformContextCairo.cpp:
195 (WebCore::PlatformContextCairo::drawSurfaceToContext):
197 2015-08-12 Myles C. Maxfield <mmaxfield@apple.com>
199 [Cocoa] [CJK-configured device] System font has vertical punctuation
200 https://bugs.webkit.org/show_bug.cgi?id=147964
201 <rdar://problem/22256660>
203 Reviewed by Dean Jackson.
205 GlyphPage::fill() has multiple code paths to accomplish its goal. It uses the shouldUseCoreText() helper
206 function to determine which one of the paths should be taken. However, not all of the code paths in
207 GlyphPage::fill() are able of handling all situations. Indeed, the CoreText code paths in GlyphPage::fill()
208 are only able to handle the situations which shouldUseCoreText() returns true for. This happens in the
211 1. If the font is a composite font
212 2. If the font is used for text-combine
213 3. If the font has vertical glyphs
215 In r187693, I added one more case to this list: If the font is the system font. However, I failed to add
216 the necessary support to GlyphPage::fill() for this case. Becasue of this, we just happened to fall into
217 the case of vertical fonts (just by coincidence), which causes us to use
218 CTFontGetVerticalGlyphsForCharacters() instead of CTFontGetGlyphsForCharacters().
220 The solution is to adopt the same behavior we were using before r187693. Back then, we were using
221 CGFontGetGlyphsForUnichars(), which always returned horizontal glyphs. We should simply adopt this same
222 behavior, except in the Core Text case. Therefore, this patch is just a simple check to see if we are
223 using the system font when determining which Core Text function to use.
225 Test: fast/text/system-font-punctuation.html
227 * platform/graphics/FontDescription.h:
228 (WebCore::FontDescription::setWidthVariant):
229 * platform/graphics/FontPlatformData.h:
230 (WebCore::FontPlatformData::isForTextCombine):
231 * platform/graphics/mac/GlyphPageMac.cpp:
232 (WebCore::shouldUseCoreText):
233 (WebCore::GlyphPage::fill):
234 * rendering/RenderCombineText.cpp:
235 (WebCore::RenderCombineText::combineText):
237 2015-08-12 Jinyoung Hur <hur.ims@navercorp.com>
239 [WinCairo] Turn on WOFF font
240 https://bugs.webkit.org/show_bug.cgi?id=147878
242 WOFF is already usable in Windows Cairo. Just turn it on.
244 Reviewed by Myles C. Maxfield.
246 Test: fast\css\font-face-woff.html
248 * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
249 (WebCore::FontCustomPlatformData::supportsFormat):
251 2015-08-12 Brent Fulgham <bfulgham@apple.com>
253 Move RenderBox-specific Scroll Snap code from RenderElement to RenderBox
254 https://bugs.webkit.org/show_bug.cgi?id=147963
256 Reviewed by Simon Fraser.
258 No new tests: No change in functionality.
260 * rendering/RenderBox.cpp:
261 (WebCore::RenderBox::styleWillChange): Remove RenderBox-specific code.
262 (WebCore::RenderBox::willBeRemovedFromTree): Ditto.
263 * rendering/RenderBox.h:
264 * rendering/RenderElement.cpp:
265 (WebCore::RenderElement::styleWillChange): Move code from RenderElement to
266 handle Scroll Snap Points.
267 (WebCore::RenderElement::willBeRemovedFromTree): Added new override to handle
268 scroll-snap point logic.
270 2015-08-12 Antti Koivisto <antti@apple.com>
272 CachedResource leak in validation code
273 https://bugs.webkit.org/show_bug.cgi?id=147941
275 Reviewed by Chris Dumez.
277 While adding test coverage I discovered a way to hit ASSERT(!resource->m_proxyResource) in CachedResource::setResourceToRevalidate.
278 I think this ends up leaking a resource too.
280 Test: http/tests/cache/recursive-validation.html
282 * loader/cache/CachedRawResource.cpp:
283 (WebCore::CachedRawResource::didAddClient):
285 Tighten the condition.
287 * loader/cache/CachedResource.cpp:
288 (WebCore::CachedResource::setResourceToRevalidate):
289 (WebCore::CachedResource::clearResourceToRevalidate):
291 Replace workaround for this bug with an assert.
293 * loader/cache/CachedResource.h:
294 (WebCore::CachedResource::validationInProgress):
295 (WebCore::CachedResource::validationCompleting):
296 (WebCore::CachedResource::didSendData):
297 * loader/cache/CachedResourceLoader.cpp:
298 (WebCore::CachedResourceLoader::revalidateResource):
299 (WebCore::CachedResourceLoader::determineRevalidationPolicy):
301 Fix the bug by using (instead of revalidating) resource that we are just finishing revalidating.
302 This can happen when a succesful revalidation synchronously triggers another load for the same resource.
304 2015-08-12 Matthew Daiter <mdaiter@apple.com>
306 Need to add stubs to enumerateDevices
307 https://bugs.webkit.org/show_bug.cgi?id=147903
309 Reviewed by Eric Carlson.
311 * Modules/mediastream/MediaDevices.cpp:
312 (WebCore::MediaDevices::enumerateDevices):
313 * Modules/mediastream/MediaDevices.h:
314 * Modules/mediastream/UserMediaRequest.cpp:
315 (WebCore::UserMediaRequest::enumerateDevices):
316 * Modules/mediastream/UserMediaRequest.h:
318 2015-08-12 Matt Rajca <mrajca@apple.com>
320 Fixed the Release build when MEDIA_SESSION is enabled.
322 * testing/Internals.cpp:
323 (WebCore::interruptingCategoryFromString):
325 2015-08-07 Matt Rajca <mrajca@apple.com>
327 Media Session: notify the UI process when media controls are enabled/disabled
328 https://bugs.webkit.org/show_bug.cgi?id=147802
330 Reviewed by Eric Carlson.
332 * Modules/mediasession/MediaRemoteControls.cpp:
333 (WebCore::MediaRemoteControls::MediaRemoteControls): Keep track of the parent session.
334 (WebCore::MediaRemoteControls::~MediaRemoteControls): Removed unnecessary line.
335 (WebCore::MediaRemoteControls::setPreviousTrackEnabled): Tell the session a control was enabled/disabled.
336 (WebCore::MediaRemoteControls::setNextTrackEnabled): Tell the session a control was enabled/disabled.
337 * Modules/mediasession/MediaRemoteControls.h:
338 (WebCore::MediaRemoteControls::create):
339 (WebCore::MediaRemoteControls::setPreviousTrackEnabled): Moved to implementation file.
340 (WebCore::MediaRemoteControls::setNextTrackEnabled): Moved to implementation file.
341 * Modules/mediasession/MediaSession.cpp:
342 (WebCore::MediaSession::MediaSession): Keep track of the remote controls' parent session.
343 (WebCore::MediaSession::controlIsEnabledDidChange): Propagate the new media state to the UI process.
344 * Modules/mediasession/MediaSession.h:
346 (WebCore::Document::updateIsPlayingMedia): Include whether we can skip to the previous/next track.
347 * page/MediaProducer.h:
349 2015-08-12 Alex Christensen <achristensen@webkit.org>
351 Fix Debug CMake builds on Windows
352 https://bugs.webkit.org/show_bug.cgi?id=147940
354 Reviewed by Chris Dumez.
357 Copy localized strings to the WebKit.resources directory.
359 2015-08-12 Alex Christensen <achristensen@webkit.org>
361 Unreviewed build fix after r188339.
363 * bindings/js/GCController.cpp:
364 (WebCore::GCController::garbageCollectOnAlternateThreadForDebugging):
365 (WebCore::GCController::setJavaScriptGarbageCollectorTimerEnabled):
366 (WebCore::GCController::releaseExecutableMemory): Deleted.
367 * bindings/js/GCController.h:
368 Commit WebCore part of patch.
370 2015-08-12 Brent Fulgham <bfulgham@apple.com>
372 REGRESSION(r185606): ASSERT in WebCore::RenderElement::styleWillChange
373 https://bugs.webkit.org/show_bug.cgi?id=147596
374 <rdar://problem/21963355>
376 Reviewed by Jon Honeycutt.
378 Only add (or remove) a RenderElement from the container of RenderBoxes with
379 scroll snap coordinates if the element actually is a RenderBox.
381 Tested by css3/scroll-snap/improper-snap-points-crash.html.
383 * rendering/RenderElement.cpp:
384 (WebCore::RenderElement::styleWillChange):
385 (WebCore::RenderElement::willBeRemovedFromTree):
387 2015-08-12 Devin Rousso <drousso@apple.com>
389 Web Inspector: Implement selector highlighting for iOS
390 https://bugs.webkit.org/show_bug.cgi?id=147919
392 Reviewed by Timothy Hatcher.
394 * inspector/InspectorOverlay.cpp:
395 (WebCore::InspectorOverlay::getHighlight):
396 If the current highlight is a nodeList, generate highlights for each node in the list and
397 return the concatenated value of those highlights.
399 2015-08-12 Youenn Fablet <youenn.fablet@crf.canon.fr>
401 Remove promise attribute specific handling from binding generator
402 https://bugs.webkit.org/show_bug.cgi?id=147828
404 Reviewed by Darin Adler.
406 Reverting http://trac.webkit.org/changeset/184643, as CachedAttribute is used instead.
408 * bindings/scripts/CodeGeneratorJS.pm:
409 (GenerateHeader): Deleted.
410 * bindings/scripts/test/JS/JSTestObj.cpp:
411 (WebCore::jsTestObjConstructor): Deleted.
412 (WebCore::setJSTestObjConstructorStaticStringAttr): Deleted.
413 * bindings/scripts/test/JS/JSTestObj.h:
414 * bindings/scripts/test/ObjC/DOMTestObj.h:
415 * bindings/scripts/test/ObjC/DOMTestObj.mm:
416 (-[DOMTestObj voidMethod]): Deleted.
417 (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): Deleted.
418 * bindings/scripts/test/TestObj.idl:
420 2015-08-12 Youenn Fablet <youenn.fablet@crf.canon.fr>
422 XHR.setRequestHeader should remove trailing and leading whitespaces from the header value
423 https://bugs.webkit.org/show_bug.cgi?id=147445
425 Reviewed by Darin Adler.
427 Covered by added and modifed tests.
429 * platform/network/HTTPParsers.h:
430 (WebCore::isHTTPSpace):
431 (WebCore::stripLeadingAndTrailingHTTPSpaces):
432 * xml/XMLHttpRequest.cpp:
433 (WebCore::XMLHttpRequest::setRequestHeader): strip trailing and leading whitespace before testing for header value validity and storing.
435 2015-08-11 Carlos Garcia Campos <cgarcia@igalia.com>
437 NetworkProcess: DNS prefetch happens in the Web Process
438 https://bugs.webkit.org/show_bug.cgi?id=147824
440 Reviewed by Alexey Proskuryakov.
442 Use FrameLoaderClient to do the DNS prefetch.
444 * html/HTMLAnchorElement.cpp:
445 (WebCore::HTMLAnchorElement::parseAttribute):
446 * loader/FrameLoaderClient.h:
447 * loader/LinkLoader.cpp:
448 (WebCore::LinkLoader::loadLink):
450 (WebCore::Chrome::mouseDidMoveOverElement):
452 2015-08-11 Mark Lam <mark.lam@apple.com>
454 Implementation JavaScript watchdog using WTF::WorkQueue.
455 https://bugs.webkit.org/show_bug.cgi?id=147107
457 Reviewed by Geoffrey Garen.
459 No new tests because we're not introducing any behavior change to WebCore here.
460 We're only #include'ing Watchdog.h directly instead of going through VM.h.
462 * ForwardingHeaders/runtime/Watchdog.h: Added.
464 * WebCore.vcxproj/WebCore.vcxproj:
465 * WebCore.vcxproj/WebCore.vcxproj.filters:
466 * bindings/js/JSEventListener.cpp:
467 * bindings/js/WorkerScriptController.cpp:
469 2015-08-11 Simon Fraser <simon.fraser@apple.com>
471 [iOS WK2] ASSERT(!m_properties.backingStore || owner()) sometimes on zooming
472 https://bugs.webkit.org/show_bug.cgi?id=147854
474 Reviewed by Tim Horton.
476 When destroying a TileGrid, the container layer remains alive by virtue of being
477 in the layer tree, and it and its tiles get visited during layer tree transaction
478 building but we assert because we've cleared the owner on the tile layers.
480 The real bug is that TileController doesn't tell GraphicsLayerCA when the custom
481 sublayers change. Make this possible via a new PlatformCALayerClient function,
482 and make TileController use this when rearranging its tile grids.
484 * platform/graphics/ca/GraphicsLayerCA.cpp:
485 (WebCore::GraphicsLayerCA::platformCALayerCustomSublayersChanged):
486 (WebCore::GraphicsLayerCA::updateContentsScale): No need to explicitly set
487 the ChildrenChanged flag now.
488 * platform/graphics/ca/GraphicsLayerCA.h:
489 * platform/graphics/ca/PlatformCALayerClient.h:
490 (WebCore::PlatformCALayerClient::platformCALayerCustomSublayersChanged):
491 (WebCore::PlatformCALayerClient::platformCALayerLayerDidDisplay):
492 * platform/graphics/ca/TileController.cpp:
493 (WebCore::TileController::setNeedsDisplay):
494 (WebCore::TileController::setContentsScale):
495 (WebCore::TileController::setZoomedOutContentsScale):
496 (WebCore::TileController::revalidateTiles):
497 (WebCore::TileController::clearZoomedOutTileGrid):
498 (WebCore::TileController::tileGridsChanged):
499 (WebCore::TileController::tileRevalidationTimerFired):
500 * platform/graphics/ca/TileController.h:
501 * platform/graphics/ca/TileGrid.h: Default param.
503 2015-08-11 Zalan Bujtas <zalan@apple.com>
505 Disconnect LayoutStateDisabler logic and RenderView pointer.
506 https://bugs.webkit.org/show_bug.cgi?id=147906
508 Reviewed by Simon Fraser.
510 LayoutStateDisabler should disable layout state unconditionally.
511 The only place where it was actually conditional was the subtree layout branch.
512 Create a dedicated SubtreeLayoutStateMaintainer to manage the subtree layout case.
514 No change in behaviour.
516 * page/FrameView.cpp:
517 (WebCore::SubtreeLayoutStateMaintainer::SubtreeLayoutStateMaintainer):
518 (WebCore::SubtreeLayoutStateMaintainer::~SubtreeLayoutStateMaintainer):
519 (WebCore::FrameView::layout):
520 * rendering/RenderBlock.cpp:
521 (WebCore::RenderBlock::updateFirstLetterStyle):
522 (WebCore::RenderBlock::updateFirstLetter):
523 * rendering/RenderBlockFlow.cpp:
524 (WebCore::RenderBlockFlow::repaintOverhangingFloats):
525 * rendering/RenderFlowThread.cpp:
526 (WebCore::RenderFlowThread::repaintRectangleInRegions):
527 * rendering/RenderListBox.cpp:
528 (WebCore::RenderListBox::layout):
529 * rendering/RenderListItem.cpp:
530 (WebCore::RenderListItem::insertOrMoveMarkerRendererIfNeeded):
531 * rendering/RenderMediaControlElements.cpp:
532 (WebCore::RenderMediaVolumeSliderContainer::layout):
533 (WebCore::RenderMediaControlTimelineContainer::layout):
534 (WebCore::RenderTextTrackContainerElement::layout):
535 * rendering/RenderMultiColumnFlowThread.cpp:
536 (WebCore::RenderMultiColumnFlowThread::populate):
537 (WebCore::RenderMultiColumnFlowThread::evacuateAndDestroy):
538 * rendering/RenderView.h:
539 (WebCore::LayoutStateDisabler::LayoutStateDisabler):
540 (WebCore::LayoutStateDisabler::~LayoutStateDisabler):
541 * rendering/svg/RenderSVGRoot.cpp:
542 (WebCore::RenderSVGRoot::layout):
544 2015-08-11 Simon Fraser <simon.fraser@apple.com>
546 Fix ViewportConfiguration dumping.
548 ViewportConfiguration::dump() was dumping parameters.width as parameters.initialScale.
550 * page/ViewportConfiguration.cpp:
551 (WebCore::ViewportConfigurationTextStream::operator<<):
553 2015-08-11 Myles C. Maxfield <mmaxfield@apple.com>
555 [font-features] Map OpenType feature tags to TrueType feature selectors
556 https://bugs.webkit.org/show_bug.cgi?id=147819
558 Reviewed by Dean Jackson.
560 Allow uses of font-feature-settings even on TrueType fonts.
562 Test: css3/font-feature-settings-preinstalled-fonts.html
564 * platform/graphics/cocoa/FontCacheCoreText.cpp:
565 (WebCore::appendRawTrueTypeFeature):
566 (WebCore::appendTrueTypeFeature):
568 2015-08-11 Gyuyoung Kim <gyuyoung.kim@webkit.org>
570 Reduce use of PassRefPtr in WebCore/css
571 https://bugs.webkit.org/show_bug.cgi?id=147821
573 Reviewed by Daniel Bates.
575 Use RefPtr when returning nullptr or RefPtr, if not, use Ref.
577 * css/CSSBasicShapes.cpp:
578 (WebCore::buildSerializablePositionOffset):
579 (WebCore::CSSBasicShapeCircle::cssText):
580 (WebCore::CSSBasicShapeEllipse::cssText):
581 * css/CSSBasicShapes.h:
582 * css/CSSCalculationValue.cpp:
583 (WebCore::determineCategory):
584 (WebCore::CSSCalcExpressionNodeParser::parseCalc):
585 (WebCore::createBlendHalf):
586 (WebCore::createCSS):
587 * css/CSSCanvasValue.cpp:
588 (WebCore::CSSCanvasValue::image):
589 * css/CSSCanvasValue.h:
590 * css/CSSComputedStyleDeclaration.cpp:
591 (WebCore::positionOffsetValue):
592 (WebCore::ComputedStyleExtractor::currentColorOrValidColor):
593 (WebCore::ComputedStyleExtractor::getFontSizeCSSValuePreferringKeyword):
594 (WebCore::counterToCSSValue):
595 (WebCore::zoomAdjustedPaddingOrMarginPixelValue):
596 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
597 (WebCore::computeRenderStyleForProperty):
598 (WebCore::valueForItemPositionWithOverflowAlignment):
599 (WebCore::valueForContentPositionAndDistributionWithOverflowAlignment):
600 (WebCore::ComputedStyleExtractor::propertyValue):
601 (WebCore::ComputedStyleExtractor::getCSSPropertyValuesForShorthandProperties):
602 (WebCore::ComputedStyleExtractor::getCSSPropertyValuesForSidesShorthand):
603 (WebCore::ComputedStyleExtractor::getCSSPropertyValuesForGridShorthand):
604 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValueInternal):
605 (WebCore::ComputedStyleExtractor::getBackgroundShorthandValue):
606 * css/CSSComputedStyleDeclaration.h:
607 * css/CSSCrossfadeValue.cpp:
608 (WebCore::CSSCrossfadeValue::image):
609 (WebCore::CSSCrossfadeValue::blend):
610 * css/CSSCrossfadeValue.h:
611 * css/CSSFilterImageValue.cpp:
612 (WebCore::CSSFilterImageValue::image):
613 * css/CSSFilterImageValue.h:
614 * css/CSSGradientValue.cpp:
615 (WebCore::CSSGradientValue::image):
616 (WebCore::CSSGradientValue::gradientWithStylesResolved):
617 (WebCore::CSSLinearGradientValue::createGradient):
618 (WebCore::CSSRadialGradientValue::createGradient):
619 * css/CSSGradientValue.h:
620 * css/CSSImageSetValue.cpp:
621 (WebCore::CSSImageSetValue::cloneForCSSOM):
622 * css/CSSImageSetValue.h:
623 * css/CSSImageValue.cpp:
624 (WebCore::CSSImageValue::cloneForCSSOM):
625 * css/CSSImageValue.h:
627 (WebCore::CSSParser::parseRule):
628 (WebCore::CSSParser::parseKeyframeRule):
629 (WebCore::CSSParser::parseFontFaceValue):
630 (WebCore::CSSParser::parseValidPrimitive):
631 (WebCore::CSSParser::parseContentDistributionOverflowPosition):
632 (WebCore::CSSParser::parseAttr):
633 (WebCore::CSSParser::parseBackgroundColor):
634 (WebCore::CSSParser::parsePositionX):
635 (WebCore::CSSParser::parsePositionY):
636 (WebCore::CSSParser::parseFillPositionComponent):
637 (WebCore::CSSParser::parseFillSize):
638 (WebCore::CSSParser::parseAnimationDelay):
639 (WebCore::CSSParser::parseAnimationDirection):
640 (WebCore::CSSParser::parseAnimationDuration):
641 (WebCore::CSSParser::parseAnimationFillMode):
642 (WebCore::CSSParser::parseAnimationIterationCount):
643 (WebCore::CSSParser::parseAnimationName):
644 (WebCore::CSSParser::parseAnimationPlayState):
645 (WebCore::CSSParser::parseAnimationTrigger):
646 (WebCore::CSSParser::parseAnimationProperty):
647 (WebCore::CSSParser::parseAnimationTimingFunction):
648 (WebCore::CSSParser::parseGridPosition):
649 (WebCore::gridMissingGridPositionValue):
650 (WebCore::CSSParser::parseGridTrackList):
651 (WebCore::CSSParser::parseGridTrackSize):
652 (WebCore::CSSParser::parseGridBreadth):
653 (WebCore::CSSParser::parseGridAutoFlow):
654 (WebCore::CSSParser::parseGridTemplateAreas):
655 (WebCore::CSSParser::parseCounterContent):
656 (WebCore::CSSParser::parseInsetRoundedCorners):
657 (WebCore::CSSParser::parseBasicShapeInset):
658 (WebCore::CSSParser::parseShapeRadius):
659 (WebCore::CSSParser::parseBasicShapeCircle):
660 (WebCore::CSSParser::parseBasicShapeEllipse):
661 (WebCore::CSSParser::parseBasicShapePolygon):
662 (WebCore::CSSParser::parseBasicShapeAndOrBox):
663 (WebCore::CSSParser::parseShapeProperty):
664 (WebCore::CSSParser::parseClipPath):
665 (WebCore::CSSParser::parseBasicShape):
666 (WebCore::CSSParser::parseFontFamily):
667 (WebCore::CSSParser::parseColor):
668 (WebCore::CSSParser::parseShadow):
669 (WebCore::CSSParser::parseImageResolution):
670 (WebCore::CSSParser::parseImageSet):
671 (WebCore::CSSParser::parseTransform):
672 (WebCore::CSSParser::parseTransformValue):
673 (WebCore::CSSParser::parseBuiltinFilterArguments):
674 (WebCore::CSSParser::parseTextIndent):
675 (WebCore::CSSParser::createImportRule):
676 (WebCore::CSSParser::createMediaRule):
677 (WebCore::CSSParser::createEmptyMediaRule):
678 (WebCore::CSSParser::createSupportsRule):
679 (WebCore::CSSParser::popSupportsRuleData):
680 (WebCore::CSSParser::createKeyframesRule):
681 (WebCore::CSSParser::createStyleRule):
682 (WebCore::CSSParser::createFontFaceRule):
683 (WebCore::CSSParser::createPageRule):
684 (WebCore::CSSParser::createRegionRule):
685 (WebCore::CSSParser::createKeyframe):
687 * css/CSSPrimitiveValue.cpp:
688 (WebCore::CSSPrimitiveValue::cloneForCSSOM):
689 * css/CSSPrimitiveValue.h:
690 * css/CSSStyleDeclaration.h:
691 * css/CSSStyleSheet.cpp:
692 (WebCore::CSSStyleSheet::rules):
693 (WebCore::CSSStyleSheet::cssRules):
694 * css/CSSStyleSheet.h:
695 * css/CSSToStyleMap.cpp:
696 (WebCore::CSSToStyleMap::styleImage):
697 * css/CSSToStyleMap.h:
699 (WebCore::CSSValue::cloneForCSSOM):
701 * css/CSSValueList.cpp:
702 (WebCore::CSSValueList::cloneForCSSOM):
703 * css/CSSValueList.h:
705 (WebCore::MediaQuerySet::copy):
706 * css/MediaQueryMatcher.cpp:
707 (WebCore::MediaQueryMatcher::matchMedia):
708 * css/MediaQueryMatcher.h:
709 * css/PropertySetCSSStyleDeclaration.cpp:
710 (WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
711 (WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
712 * css/PropertySetCSSStyleDeclaration.h:
714 (WebCore::RGBColor::red):
715 (WebCore::RGBColor::green):
716 (WebCore::RGBColor::blue):
717 (WebCore::RGBColor::alpha):
719 * css/SVGCSSComputedStyleDeclaration.cpp:
720 (WebCore::glyphOrientationToCSSPrimitiveValue):
721 (WebCore::strokeDashArrayToCSSValueList):
722 (WebCore::ComputedStyleExtractor::adjustSVGPaintForCurrentColor):
723 (WebCore::ComputedStyleExtractor::svgPropertyValue):
724 * css/SVGCSSParser.cpp:
725 (WebCore::CSSParser::parseSVGStrokeDasharray):
726 (WebCore::CSSParser::parseSVGPaint):
727 (WebCore::CSSParser::parseSVGColor):
728 (WebCore::CSSParser::parsePaintOrder):
729 * css/WebKitCSSFilterValue.cpp:
730 (WebCore::WebKitCSSFilterValue::cloneForCSSOM):
731 * css/WebKitCSSFilterValue.h:
732 * css/WebKitCSSMatrix.cpp:
733 (WebCore::WebKitCSSMatrix::multiply):
734 (WebCore::WebKitCSSMatrix::inverse):
735 (WebCore::WebKitCSSMatrix::translate):
736 (WebCore::WebKitCSSMatrix::scale):
737 (WebCore::WebKitCSSMatrix::rotate):
738 (WebCore::WebKitCSSMatrix::rotateAxisAngle):
739 (WebCore::WebKitCSSMatrix::skewX):
740 (WebCore::WebKitCSSMatrix::skewY):
741 * css/WebKitCSSMatrix.h:
742 * css/WebKitCSSTransformValue.cpp:
743 (WebCore::WebKitCSSTransformValue::cloneForCSSOM):
744 * css/WebKitCSSTransformValue.h:
746 2015-08-11 Sam Weinig <sam@webkit.org>
748 Move CountQueuingStrategy and related to files to their correct place in the Xcode project
749 https://bugs.webkit.org/show_bug.cgi?id=147901
751 Reviewed by Anders Carlsson.
753 * WebCore.xcodeproj/project.pbxproj:
755 2015-08-11 Zalan Bujtas <zalan@apple.com>
757 Use more references in FrameView.
758 https://bugs.webkit.org/show_bug.cgi?id=147899
760 Reviewed by Simon Fraser.
762 No change in functionality.
764 * page/FrameView.cpp:
765 (WebCore::FrameView::flushCompositingStateForThisFrame):
766 (WebCore::FrameView::flushCompositingStateIncludingSubframes):
767 (WebCore::FrameView::addSlowRepaintObject):
768 (WebCore::FrameView::scrollElementToRect):
770 * rendering/RenderObject.cpp:
771 (WebCore::RenderObject::willBeDestroyed):
772 * rendering/RenderScrollbarPart.cpp:
773 (WebCore::RenderScrollbarPart::imageChanged):
774 * testing/Internals.cpp:
775 (WebCore::Internals::scrollElementToRect):
777 2015-08-11 Zalan Bujtas <zalan@apple.com>
779 Invalid FrameView::m_viewportRenderer after layout is finished.
780 https://bugs.webkit.org/show_bug.cgi?id=147848
781 rdar://problem/22205197
783 Reviewed by Simon Fraser.
785 We cache the current viewport renderer (FrameView::m_viewportRenderer) right before layout.
786 It gets dereferenced later when layout is finished to update the overflow status.
787 If the viewport renderer gets destroyed during layout, we end up with a dangling pointer.
788 This patch replaces the pointer caching with type caching (none, body, document).
790 Unable to construct a test case.
792 2015-08-11 Brent Fulgham <bfulgham@apple.com>
794 [Win] Switch Windows build to Visual Studio 2015
795 https://bugs.webkit.org/show_bug.cgi?id=147887
796 <rdar://problem/22235098>
798 Reviewed by Alex Christensen.
800 Update Visual Studio project file settings to use the current Visual
801 Studio and compiler. Continue targeting binaries to run on our minimum
802 supported configuration of Windows 7.
804 No change in behavior, so no new tests.
806 * WebCore.vcxproj/WebCore.vcxproj:
807 * WebCore.vcxproj/WebCoreGenerated.vcxproj:
808 * WebCore.vcxproj/WebCoreTestSupport.vcxproj:
810 2015-08-11 Said Abou-Hallawa <sabouhallawa@apple.com>
812 feMorphology is not rendered correctly on Retina display
813 https://bugs.webkit.org/show_bug.cgi?id=147589
815 Reviewed by Dean Jackson.
817 The result ImageBuffer of any FilterEffect is already scaled up for 2x
818 display. The FEMorphology needs to fix its painting data dimension and
819 radius by multiplying them by the filter scale factor.
821 Test: fast/hidpi/filters-morphology.html
823 * platform/graphics/filters/FEMorphology.cpp:
824 (WebCore::FEMorphology::platformApplySoftware):
826 2015-08-11 Myles C. Maxfield <mmaxfield@apple.com>
828 [iOS] Arabic letter Yeh is drawn in LastResort
829 https://bugs.webkit.org/show_bug.cgi?id=147862
830 <rdar://problem/22202935>
832 Reviewed by Darin Adler.
834 In order to perform font fallback, we must know which fonts support which characters. We
835 perform this check by asking each font to map a sequence of codepoints to glyphs, and
836 any glyphs which end up with a 0 value are unsupported by the font.
838 One of the mechanisms that we use to do this is to combine the code points into a string,
839 and tell Core Text to lay out the string. However, this is fundamentally a different
840 operation than the one we are trying to perform. Strings combine adjacent codepoints into
841 grapheme clusters, and CoreText operates on these. However, we are trying to gain
842 information regarding codepoints, not grapheme clusters.
844 Instead of taking this string-based approach, we should try harder to use Core Text
845 functions which operate on ordered collections of characters, rather than strings. In
846 particular, CTFontGetGlyphsForCharacters() and CTFontGetVerticalGlyphsForCharacters()
847 have the behavior we want where any unmapped characters end up with a 0 value glyph.
849 Previously, we were only using the result of those functions if they were successfully
850 able to map their entire input. However, given the fact that we can degrade gracefully
851 in the case of a partial mapping, we shouldn't need to bail completely to the
852 string-based approach should a partial mapping occur.
854 At some point we should delete the string-based approach entirely. However, this path
855 is still explicitly used for composite fonts. Fixing that use case is out of scope
858 Test: fast/text/arabic-glyph-cache-fill-combine.html
860 * platform/graphics/mac/GlyphPageMac.cpp:
861 (WebCore::GlyphPage::fill):
863 2015-08-11 Chris Dumez <cdumez@apple.com>
865 The 'length' property on interface objects should be configurable
866 https://bugs.webkit.org/show_bug.cgi?id=147858
868 Reviewed by Daniel Bates.
870 Make the 'length' property configurable on interface objects to comply
871 with the Web IDL specification [1] and to align our behavior with
872 Firefox 38 and Chrome 44.
874 This behavior is also covered by the following W3C test suite:
875 http://w3c-test.org/dom/interfaces.html
877 [1] http://heycam.github.io/webidl/#es-interface-call (17 July 2015)
879 Test: fast/dom/length-property-configurable.html
881 * bindings/scripts/CodeGeneratorJS.pm:
882 (GenerateConstructorHelperMethods):
883 Make the 'length' property configurable on interface objects.
885 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
886 (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
887 * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
888 (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::finishCreation):
889 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
890 (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
891 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
892 (WebCore::JSTestEventConstructorConstructor::finishCreation):
893 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
894 (WebCore::JSTestEventTargetConstructor::finishCreation):
895 * bindings/scripts/test/JS/JSTestException.cpp:
896 (WebCore::JSTestExceptionConstructor::finishCreation):
897 * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
898 (WebCore::JSTestGenerateIsReachableConstructor::finishCreation):
899 * bindings/scripts/test/JS/JSTestInterface.cpp:
900 (WebCore::JSTestInterfaceConstructor::finishCreation):
901 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
902 (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
903 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
904 (WebCore::JSTestNamedConstructorConstructor::finishCreation):
905 (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
906 * bindings/scripts/test/JS/JSTestNode.cpp:
907 (WebCore::JSTestNodeConstructor::finishCreation):
908 * bindings/scripts/test/JS/JSTestNondeterministic.cpp:
909 (WebCore::JSTestNondeterministicConstructor::finishCreation):
910 * bindings/scripts/test/JS/JSTestObj.cpp:
911 (WebCore::JSTestObjConstructor::finishCreation):
912 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
913 (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
914 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
915 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
916 * bindings/scripts/test/JS/JSTestTypedefs.cpp:
917 (WebCore::JSTestTypedefsConstructor::finishCreation):
918 * bindings/scripts/test/JS/JSattribute.cpp:
919 (WebCore::JSattributeConstructor::finishCreation):
920 * bindings/scripts/test/JS/JSreadonly.cpp:
921 (WebCore::JSreadonlyConstructor::finishCreation):
922 Rebaseline bindings tests.
924 2015-08-11 Per Arne Vollan <peavo@outlook.com>
926 [Win] Popup menus have incorrect placement when device scale factor != 1.
927 https://bugs.webkit.org/show_bug.cgi?id=147880
929 Reviewed by Brent Fulgham.
931 We need to take the device scaling factor into account when calculating
932 the position and size of the popup menu.
934 * platform/win/PopupMenuWin.cpp:
935 (WebCore::PopupMenuWin::calculatePositionAndSize):
937 2015-08-11 Chris Dumez <cdumez@apple.com>
939 [WebIDL] All interface objects must have a property named "name"
940 https://bugs.webkit.org/show_bug.cgi?id=147865
942 Reviewed by Darin Adler.
944 As per the Web IDL specification, all interface objects must have a
945 property named "name" with attributes
946 { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }
947 whose value is the identifier of the corresponding interface:
948 http://heycam.github.io/webidl/#es-interface-call
949 http://heycam.github.io/webidl/#named-constructors
951 Previously, our interface objects had no such property, this patch
952 addresses the problem.
954 Both Firefox 38 and Chrome 44 comply with the Web IDL specification
957 Test: fast/dom/interface-name-property.html
959 * bindings/scripts/CodeGeneratorJS.pm:
960 (GenerateConstructorHelperMethods):
962 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
963 (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
964 * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
965 (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::finishCreation):
966 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
967 (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
968 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
969 (WebCore::JSTestEventConstructorConstructor::finishCreation):
970 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
971 (WebCore::JSTestEventTargetConstructor::finishCreation):
972 * bindings/scripts/test/JS/JSTestException.cpp:
973 (WebCore::JSTestExceptionConstructor::finishCreation):
974 * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
975 (WebCore::JSTestGenerateIsReachableConstructor::finishCreation):
976 * bindings/scripts/test/JS/JSTestInterface.cpp:
977 (WebCore::JSTestInterfaceConstructor::finishCreation):
978 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
979 (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
980 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
981 (WebCore::JSTestNamedConstructorConstructor::finishCreation):
982 (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
983 * bindings/scripts/test/JS/JSTestNode.cpp:
984 (WebCore::JSTestNodeConstructor::finishCreation):
985 * bindings/scripts/test/JS/JSTestNondeterministic.cpp:
986 (WebCore::JSTestNondeterministicConstructor::finishCreation):
987 * bindings/scripts/test/JS/JSTestObj.cpp:
988 (WebCore::JSTestObjConstructor::finishCreation):
989 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
990 (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
991 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
992 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
993 * bindings/scripts/test/JS/JSTestTypedefs.cpp:
994 (WebCore::JSTestTypedefsConstructor::finishCreation):
995 * bindings/scripts/test/JS/JSattribute.cpp:
996 (WebCore::JSattributeConstructor::finishCreation):
997 * bindings/scripts/test/JS/JSreadonly.cpp:
998 (WebCore::JSreadonlyConstructor::finishCreation):
999 Rebaseline bindings tests.
1001 2015-08-11 Ting-Wei Lan <lantw44@gmail.com>
1003 Fix debug build when optimization is enabled
1004 https://bugs.webkit.org/show_bug.cgi?id=147816
1006 Reviewed by Alexey Proskuryakov.
1008 No new tests because this is only a build fix.
1010 * editing/InsertNodeBeforeCommand.cpp:
1012 2015-08-11 Chris Dumez <cdumez@apple.com>
1014 Unreviewed, rebaseline bindings tests after r188252.
1016 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1017 (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
1018 * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
1019 (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::finishCreation):
1020 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1021 (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
1022 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1023 (WebCore::JSTestEventConstructorConstructor::finishCreation):
1024 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1025 (WebCore::JSTestEventTargetConstructor::finishCreation):
1026 * bindings/scripts/test/JS/JSTestException.cpp:
1027 (WebCore::JSTestExceptionConstructor::finishCreation):
1028 * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
1029 (WebCore::JSTestGenerateIsReachableConstructor::finishCreation):
1030 * bindings/scripts/test/JS/JSTestInterface.cpp:
1031 (WebCore::JSTestInterfaceConstructor::finishCreation):
1032 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1033 (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
1034 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1035 (WebCore::JSTestNamedConstructorConstructor::finishCreation):
1036 (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
1037 * bindings/scripts/test/JS/JSTestNode.cpp:
1038 (WebCore::JSTestNodeConstructor::finishCreation):
1039 * bindings/scripts/test/JS/JSTestNondeterministic.cpp:
1040 (WebCore::JSTestNondeterministicConstructor::finishCreation):
1041 * bindings/scripts/test/JS/JSTestObj.cpp:
1042 (WebCore::JSTestObjConstructor::finishCreation):
1043 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1044 (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
1045 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1046 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
1047 * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1048 (WebCore::JSTestTypedefsConstructor::finishCreation):
1049 * bindings/scripts/test/JS/JSattribute.cpp:
1050 (WebCore::JSattributeConstructor::finishCreation):
1051 * bindings/scripts/test/JS/JSreadonly.cpp:
1052 (WebCore::JSreadonlyConstructor::finishCreation):
1054 2015-08-10 Chris Dumez <cdumez@apple.com>
1056 The 'prototype' property on interface objects should not be enumerable
1057 https://bugs.webkit.org/show_bug.cgi?id=147861
1059 Reviewed by Darin Adler.
1061 1. Make the 'prototype' property not enumerable on interface object to
1062 comply with the Web IDL specification [1] and to align our behavior
1063 with Firefox 38 and Chrome 44.
1065 2. Also update the 'prototype' property on named constructors to have the
1066 following attributes:
1067 { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }
1069 Previously, all these were true in WebKit. The new behavior complies
1070 with the Web IDL specification [2] and aligns our behavior with
1071 Firefox 38. On Chrome 44, the attributes are as follows:
1072 { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: false }
1074 This behavior is also covered by the following W3C test suite:
1075 http://w3c-test.org/dom/interfaces.html
1077 [1] http://heycam.github.io/webidl/#interface-object
1078 [2] http://heycam.github.io/webidl/#named-constructors
1080 Test: fast/dom/prototype-property-not-enumerable.html
1082 * bindings/scripts/CodeGeneratorJS.pm:
1083 (GenerateConstructorHelperMethods):
1085 2015-08-10 Alex Christensen <achristensen@webkit.org>
1087 Build fix after r188239.
1089 * PlatformWinCairo.cmake:
1090 MediaPlayerPrivateMediaFoundation is needed on WinCairo with video properly enabled.
1092 2015-08-10 Myles C. Maxfield <mmaxfield@apple.com>
1094 Post-review fixup after r188195
1095 https://bugs.webkit.org/show_bug.cgi?id=147806
1099 Covered by fast/text/crash-obscure-text.html.
1101 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1102 (WebCore::FontPlatformData::objectForEqualityCheck):
1104 2015-08-10 Alex Christensen <achristensen@webkit.org>
1106 Build TestWebKitAPI with CMake on Windows
1107 https://bugs.webkit.org/show_bug.cgi?id=147851
1109 Reviewed by Chris Dumez.
1111 * PlatformWin.cmake:
1112 Remove RenderThemeWin.cpp which is included in RenderingAllInOne.cpp.
1114 Include cmakeconfig.h before wtf/Platform.h like we do in JavaScriptCore's config.h to avoid warnings and redefining ENABLE_* macros.
1116 2015-08-10 Matthew Daiter <mdaiter@apple.com>
1118 HTMLMediaElement needs way to find MediaDeviceInfo
1119 https://bugs.webkit.org/show_bug.cgi?id=147842
1121 Reviewed by Jer Noble.
1123 * html/HTMLMediaElement.cpp:
1124 (WebCore::HTMLMediaElement::mediaPlayerMediaDeviceIdentifierStorageDirectory):
1125 * html/HTMLMediaElement.h:
1127 (WebCore::Settings::setMediaDeviceIdentifierStorageDirectory):
1128 (WebCore::Settings::mediaDeviceIdentifierStorageDirectory):
1129 * platform/graphics/MediaPlayer.h:
1130 (WebCore::MediaPlayerClient::mediaPlayerMediaDeviceIdentifierStorageDirectory):
1132 2015-08-10 Chris Dumez <cdumez@apple.com>
1134 Simplify code for making Page-cacheability decision
1135 https://bugs.webkit.org/show_bug.cgi?id=147829
1137 Reviewed by Antti Koivisto.
1139 Simplify code for making Page-cacheability decision by merging logging
1140 code and decision making code. Having the same checks in two places was
1141 redundant and error-prone as we needed to keep them in sync.
1143 Also get rid of failure reason enum values as those have not been used
1146 * history/PageCache.cpp:
1147 (WebCore::canCacheFrame):
1148 (WebCore::canCachePage):
1149 (WebCore::PageCache::canCache):
1150 (WebCore::logPageCacheFailureDiagnosticMessage): Deleted.
1151 (WebCore::PageCache::singleton): Deleted.
1152 (WebCore::PageCache::setMaxSize): Deleted.
1153 (WebCore::PageCache::frameCount): Deleted.
1154 (WebCore::PageCache::markPagesForVisitedLinkStyleRecalc): Deleted.
1155 (WebCore::PageCache::markPagesForFullStyleRecalc): Deleted.
1156 (WebCore::PageCache::markPagesForDeviceOrPageScaleChanged): Deleted.
1157 (WebCore::PageCache::markPagesForContentsSizeChanged): Deleted.
1158 (WebCore::PageCache::markPagesForCaptionPreferencesChanged): Deleted.
1159 (WebCore::pruningReasonToDiagnosticLoggingKey): Deleted.
1160 * page/DiagnosticLoggingKeys.cpp:
1161 (WebCore::DiagnosticLoggingKeys::isDisabledKey):
1162 (WebCore::DiagnosticLoggingKeys::redirectKey):
1163 (WebCore::DiagnosticLoggingKeys::replaceKey):
1164 (WebCore::DiagnosticLoggingKeys::sourceKey):
1165 (WebCore::DiagnosticLoggingKeys::underMemoryPressureKey):
1166 (WebCore::DiagnosticLoggingKeys::reloadFromOriginKey): Deleted.
1167 * page/DiagnosticLoggingKeys.h:
1169 2015-08-10 Devin Rousso <drousso@apple.com>
1171 Web Inspector: [iOS] Allow inspector to retrieve a list of system fonts
1172 https://bugs.webkit.org/show_bug.cgi?id=147033
1174 Reviewed by Joseph Pecoraro.
1176 Implement systemFontFamilies for iOS.
1178 * platform/graphics/ios/FontCacheIOS.mm:
1179 (WebCore::FontCache::systemFontFamilies):
1181 2015-08-10 Devin Rousso <drousso@apple.com>
1183 Web Inspector: Invalid selectors can be applied to the stylesheet
1184 https://bugs.webkit.org/show_bug.cgi?id=147230
1186 Reviewed by Timothy Hatcher.
1188 * inspector/InspectorStyleSheet.cpp:
1189 (WebCore::isValidSelectorListString):
1190 (WebCore::InspectorStyleSheet::setRuleSelector):
1191 Now checks to see that the supplied selector is valid before trying to commit it to the rule.
1192 (WebCore::InspectorStyleSheet::addRule):
1193 (WebCore::checkStyleRuleSelector): Deleted.
1195 2015-08-10 James Craig <jcraig@apple.com>
1197 AX: Address follow-up comments in bug 145684
1198 https://bugs.webkit.org/show_bug.cgi?id=147817
1200 Reviewed by Dean Jackson.
1202 Minor cleanup and style updates requested by Dean.
1203 Updated Existing Test Expectations.
1205 * Modules/mediacontrols/mediaControlsApple.css:
1206 (video::-webkit-media-show-controls):
1207 * Modules/mediacontrols/mediaControlsiOS.css:
1208 (video::-webkit-media-show-controls):
1210 2015-08-07 Antti Koivisto <antti@apple.com>
1212 Expand network cache tests to cover memory cache behavior
1213 https://bugs.webkit.org/show_bug.cgi?id=147783
1215 Reviewed by Alexey Proskuryakov.
1217 To support testing, include memory cache as a possible source type to XHR responses.
1219 * loader/ResourceLoader.cpp:
1220 (WebCore::logResourceResponseSource):
1221 * loader/cache/CachedRawResource.cpp:
1222 (WebCore::CachedRawResource::didAddClient):
1223 * loader/cache/CachedResource.h:
1224 (WebCore::CachedResource::revalidationInProgress):
1225 * platform/network/ResourceResponseBase.h:
1226 * testing/Internals.cpp:
1227 (WebCore::Internals::xhrResponseSource):
1229 2015-08-10 Youenn Fablet <youenn.fablet@crf.canon.fr>
1231 Compile warning (-Wsign-compare) on 32-bits at WebCore/platform/FileSystem.cpp
1232 https://bugs.webkit.org/show_bug.cgi?id=146414
1234 Reviewed by Darin Adler.
1236 No behavioral changes.
1238 * platform/FileSystem.cpp:
1239 (WebCore::MappedFileData::MappedFileData): Making use of convertSafely.
1240 * platform/posix/SharedBufferPOSIX.cpp:
1241 (WebCore::SharedBuffer::createFromReadingFile): Making use of convertSafely.
1243 2015-08-10 Youenn Fablet <youenn.fablet@crf.canon.fr>
1245 [Streams API] ReadableStreamReader closed promise should use CachedAttribute
1246 https://bugs.webkit.org/show_bug.cgi?id=147487
1248 Reviewed by Darin Adler.
1250 Covered by existing tests.
1252 * Modules/streams/ReadableStreamReader.idl: Made closed a CachedAttribute.
1253 * bindings/js/JSReadableStreamReaderCustom.cpp:
1254 (WebCore::JSReadableStreamReader::closed): Updated according CachedAttribute specific field.
1256 2015-08-09 Hunseop Jeong <hs85.jeong@samsung.com>
1258 [EFL] Use the non-overlay scrollbar
1259 https://bugs.webkit.org/show_bug.cgi?id=147725
1261 Reviewed by Gyuyoung Kim.
1263 No new tests because there is no behavior change.
1265 * platform/efl/ScrollbarThemeEfl.cpp:
1266 (WebCore::ScrollbarThemeEfl::usesOverlayScrollbars):
1267 Changed the condition of the 'usesOverlayScrollbars' to use the
1269 * platform/efl/ScrollbarThemeEfl.h:
1271 2015-08-09 Chris Dumez <cdumez@apple.com>
1273 Page cache doesn't work for pages actively using Geolocation
1274 https://bugs.webkit.org/show_bug.cgi?id=147785
1275 <rdar://problem/11147901>
1277 Reviewed by Darin Adler.
1279 Allow pages actively using Geolocation into the PageCache.
1281 Tests: fast/history/page-cache-geolocation-active-oneshot.html
1282 fast/history/page-cache-geolocation-active-watcher.html
1284 * Modules/geolocation/Geolocation.cpp:
1285 (WebCore::Geolocation::canSuspendForPageCache):
1286 (WebCore::Geolocation::suspend): Deleted.
1287 * history/PageCache.cpp:
1289 2015-08-09 Nan Wang <n_wang@apple.com>
1291 AX: CSS table display styles can cause malformed, inaccessible AXTables to be exposed to the AX tree
1292 https://bugs.webkit.org/show_bug.cgi?id=136415
1293 <rdar://problem/22026625>
1295 Reviewed by Chris Fleizach.
1297 Applying CSS display styles to tables can end up inserting anonymous RenderTableRows, which is not handled well by the
1298 accessibility code, which treats these as the actual rows. We can address this by diving deeper into anonymous nodes
1299 and finding the real rows and cells we want. In addition, another thing also causing malformed tables is that "grid"
1300 roles are being exposed as AXGrid instead of AXTable.
1302 Test: accessibility/mac/malformed-table.html
1304 * accessibility/AccessibilityARIAGrid.cpp:
1305 (WebCore::AccessibilityARIAGrid::addRowDescendant):
1306 * accessibility/AccessibilityTable.cpp:
1307 (WebCore::AccessibilityTable::addChildren):
1308 (WebCore::AccessibilityTable::addTableCellChild):
1309 (WebCore::AccessibilityTable::addChildrenFromSection):
1310 * accessibility/AccessibilityTable.h:
1311 * accessibility/AccessibilityTableCell.cpp:
1312 (WebCore::AccessibilityTableCell::parentTable):
1313 (WebCore::AccessibilityTableCell::rowIndexRange):
1314 * accessibility/AccessibilityTableRow.cpp:
1315 (WebCore::AccessibilityTableRow::parentTable):
1316 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1317 (createAccessibilityRoleMap):
1319 2015-08-08 Darin Adler <darin@apple.com>
1321 Remove -webkit-color-correction CSS property
1322 https://bugs.webkit.org/show_bug.cgi?id=147812
1324 Reviewed by Maciej Stachowiak.
1326 Covered by existing tests.
1328 I am doing some general cleanup of handling of color spaces in WebKit.
1329 This removes the obsolete web-visible property that allowed clients to
1330 get color correction on older Apple platforms where we chose not to do
1331 it all the time for performance reasons. Currently, it has no effect on
1332 any supported platform.
1334 Now that this property is removed, a website can detect that it's not
1335 there if it uses getComputedStyle, but I don't expect this to have
1336 significant compatibility fallout. It's harmless to continue using the
1337 property in legacy content or websites that have not been updated, since
1338 unknown property names are ignored and it had no effect before anyway.
1340 * css/CSSComputedStyleDeclaration.cpp: Removed
1341 CSSPropertyWebkitColorCorrection from the list of computed properties.
1342 (WebCore::ComputedStyleExtractor::propertyValue): Removed the
1343 CSSPropertyWebkitColorCorrection case.
1345 * css/CSSParser.cpp:
1346 (WebCore::isValidKeywordPropertyAndValue): Removed the
1347 CSSPropertyWebkitColorCorrection case.
1348 (WebCore::isKeywordPropertyID): Ditto.
1349 (WebCore::CSSParser::parseValue): Ditto.
1351 * css/CSSPrimitiveValueMappings.h:
1352 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Deleted the overload
1353 of this that converts a ColorSpace to a CSSPrimitiveValue.
1354 (WebCore::CSSPrimitiveValue::operator ColorSpace): Deleted.
1356 * css/CSSPropertyNames.in: Removed -webkit-color-correction.
1358 * css/CSSValueKeywords.in: Removed the -webkit-color-correction section,
1359 which contained sRGB.
1361 * css/SVGCSSValueKeywords.in: Uncommented sRGB now that it's not shared
1362 with -webkit-color-correction.
1364 * rendering/style/RenderStyle.h: Removed setColorSpace and initialColorSpace.
1365 Kept colorSpace around for now, but it simply returns ColorSpaceSRGB.
1366 This prevents us from needing to touch every single call site that passes
1367 the color space in to functions in the platform graphics abstraction.
1368 We'll touch most of those call sites when we change Color to include the
1369 color space and eventually we can delete this.
1371 * rendering/style/StyleRareInheritedData.cpp: Deleted colorSpace.
1372 (WebCore::StyleRareInheritedData::StyleRareInheritedData): Deleted
1373 code to initialize colorSpace and to copy colorSpace.
1374 (WebCore::StyleRareInheritedData::operator==): Deleted code to compare
1377 2015-08-09 Eric Carlson <eric.carlson@apple.com>
1379 [Mac] Always require ExternalDeviceAutoPlayCandidate flag to AirPlay automatically
1380 https://bugs.webkit.org/show_bug.cgi?id=147801
1382 Reviewed by Dean Jackson.
1384 Test: http/tests/media/video-media-document-disposition-download.html
1386 * Modules/mediasession/WebMediaSessionManager.cpp:
1387 (WebCore::WebMediaSessionManager::configurePlaybackTargetClients): Don't tell the last element
1388 to begin playing to the target unless the ExternalDeviceAutoPlayCandidate flag is set and
1389 it is not currently playing.
1391 2015-08-09 Myles C. Maxfield <mmaxfield@apple.com>
1393 Crash in ComplexTextController when laying out obscure text
1394 https://bugs.webkit.org/show_bug.cgi?id=147806
1395 <rdar://problem/22102378>
1397 Reviewed by Darin Adler.
1399 CTFontDescriptorCopyAttribute(fontDescriptor.get(), kCTFontReferenceURLAttribute) can return nullptr.
1401 Test: fast/text/crash-obscure-text.html
1403 * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1404 (WebCore::safeCFEqual):
1405 (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
1407 2015-08-08 Dean Jackson <dino@apple.com>
1409 Remove the webkit prefix from CanvasRenderingContext2D imageSmoothingEnabled
1410 https://bugs.webkit.org/show_bug.cgi?id=147803
1411 <rdar://problem/22200553>
1413 Reviewed by Sam Weinig.
1415 Rename webkitImageSmoothingEnabled to imageSmoothingEnabled.
1417 Updated existing tests, and made sure that the prefixed version is
1418 identical to the standard version.
1420 * html/canvas/CanvasRenderingContext2D.cpp:
1421 (WebCore::CanvasRenderingContext2D::imageSmoothingEnabled): Renamed from webkitImageSmoothingEnabled.
1422 (WebCore::CanvasRenderingContext2D::setImageSmoothingEnabled): Renamed from setWebkitImageSmoothingEnabled.
1423 (WebCore::CanvasRenderingContext2D::webkitImageSmoothingEnabled): Deleted.
1424 (WebCore::CanvasRenderingContext2D::setWebkitImageSmoothingEnabled): Deleted.
1425 * html/canvas/CanvasRenderingContext2D.h: Rename the methods.
1426 * html/canvas/CanvasRenderingContext2D.idl: Add the non-prefixed form, and mark is as the
1427 implementation of the prefixed form.
1429 2015-08-09 Andreas Kling <akling@apple.com>
1431 Ref-ify some functions that always succeed in constructing Documents.
1432 <https://webkit.org/b/147552>
1434 Reviewed by Sam Weinig.
1436 Update some functions involved in the construction of new Document objects
1437 to codify that they always construct objects.
1439 Bonus: DOMImplementation::createCSSStyleSheet().
1441 * dom/DOMImplementation.cpp:
1442 (WebCore::DOMImplementation::createCSSStyleSheet):
1443 (WebCore::DOMImplementation::createHTMLDocument):
1444 (WebCore::DOMImplementation::createDocument):
1445 * dom/DOMImplementation.h:
1446 * loader/DocumentWriter.cpp:
1447 (WebCore::DocumentWriter::createDocument):
1448 (WebCore::DocumentWriter::begin):
1449 * loader/DocumentWriter.h:
1450 * xml/DOMParser.cpp:
1451 (WebCore::DOMParser::parseFromString):
1453 * xml/XSLTProcessor.cpp:
1454 (WebCore::XSLTProcessor::createDocumentFromSource):
1455 * xml/XSLTProcessor.h:
1457 2015-08-08 Commit Queue <commit-queue@webkit.org>
1459 Unreviewed, rolling out r179871.
1460 https://bugs.webkit.org/show_bug.cgi?id=147810
1462 Breaks product images on http://www.apple.com/shop/buy-
1463 mac/macbook (Requested by smfr on #webkit).
1467 "Render: properly update body's background image"
1468 https://bugs.webkit.org/show_bug.cgi?id=140183
1469 http://trac.webkit.org/changeset/179871
1471 2015-08-07 Gyuyoung Kim <gyuyoung.kim@webkit.org>
1473 Reduce uses of PassRefPtr in bindings
1474 https://bugs.webkit.org/show_bug.cgi?id=147781
1476 Reviewed by Chris Dumez.
1478 Use RefPtr when function can return null or an instance. If not, Ref is used.
1480 * bindings/gobject/GObjectNodeFilterCondition.h:
1481 * bindings/gobject/GObjectXPathNSResolver.h:
1482 * bindings/gobject/WebKitDOMNodeFilter.cpp:
1484 * bindings/gobject/WebKitDOMNodeFilterPrivate.h:
1485 * bindings/gobject/WebKitDOMXPathNSResolver.cpp:
1487 * bindings/gobject/WebKitDOMXPathNSResolverPrivate.h:
1488 * bindings/js/CallbackFunction.h:
1489 (WebCore::createFunctionOnlyCallback):
1490 * bindings/js/Dictionary.h:
1491 (WebCore::Dictionary::getEventListener):
1492 * bindings/js/IDBBindingUtilities.cpp:
1493 (WebCore::createIDBKeyFromValue):
1494 (WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
1495 (WebCore::createIDBKeyFromScriptValueAndKeyPath):
1496 (WebCore::scriptValueToIDBKey):
1497 * bindings/js/IDBBindingUtilities.h:
1498 * bindings/js/JSDOMBinding.h:
1499 (WebCore::toInt8Array):
1500 (WebCore::toInt16Array):
1501 (WebCore::toInt32Array):
1502 (WebCore::toUint8Array):
1503 (WebCore::toUint8ClampedArray):
1504 (WebCore::toUint16Array):
1505 (WebCore::toUint32Array):
1506 (WebCore::toFloat32Array):
1507 (WebCore::toFloat64Array):
1508 * bindings/js/JSDOMStringListCustom.cpp:
1509 (WebCore::JSDOMStringList::toWrapped):
1510 * bindings/js/JSDeviceMotionEventCustom.cpp:
1511 (WebCore::readAccelerationArgument):
1512 (WebCore::readRotationRateArgument):
1513 * bindings/js/JSErrorHandler.h:
1514 (WebCore::createJSErrorHandler):
1515 * bindings/js/JSGeolocationCustom.cpp:
1516 (WebCore::createPositionOptions):
1517 * bindings/js/JSNodeCustom.cpp:
1518 * bindings/js/JSNodeFilterCustom.cpp:
1519 (WebCore::JSNodeFilter::toWrapped):
1520 * bindings/js/ScriptController.cpp:
1521 (WebCore::ScriptController::createWorld):
1522 (WebCore::ScriptController::createRootObject):
1523 (WebCore::ScriptController::createScriptInstanceForWidget):
1524 * bindings/js/ScriptController.h:
1525 * bindings/js/ScriptControllerMac.mm:
1526 (WebCore::ScriptController::createScriptInstanceForWidget):
1527 * bindings/js/SerializedScriptValue.cpp:
1528 (WebCore::SerializedScriptValue::create):
1529 * bindings/js/SerializedScriptValue.h:
1530 * bindings/objc/DOMUIKitExtensions.mm:
1531 (-[DOMNode rangeOfContainingParagraph]):
1532 * bindings/objc/ObjCNodeFilterCondition.h:
1533 * bindings/scripts/CodeGeneratorJS.pm:
1536 2015-08-07 Myles C. Maxfield <mmaxfield@apple.com>
1538 [OS X] Remove dead code from FontCache::createFontPlatformData()
1539 https://bugs.webkit.org/show_bug.cgi?id=147804
1541 Reviewed by Zalan Bujtas.
1543 CTFontCreateForCSS() always returns the best font.
1545 No new tests because there is no behavior change.
1547 * platform/graphics/mac/FontCacheMac.mm:
1548 (WebCore::fontWithFamily):
1550 2015-08-07 Zalan Bujtas <zalan@apple.com>
1552 Move painting functions from RenderObject to RenderElement.
1553 https://bugs.webkit.org/show_bug.cgi?id=147764
1555 Reviewed by Simon Fraser.
1557 Ideally they should live in RenderBoxModelObject, but the current SVG architecture makes is difficult
1560 No change in functionality.
1562 * platform/graphics/FloatRect.h:
1563 (WebCore::FloatRect::FloatRect):
1564 * rendering/RenderBoxModelObject.cpp:
1565 (WebCore::RenderBoxModelObject::paintOneBorderSide):
1566 * rendering/RenderElement.cpp:
1567 (WebCore::RenderElement::drawLineForBoxSide):
1568 (WebCore::RenderElement::paintFocusRing):
1569 (WebCore::RenderElement::paintOutline):
1570 * rendering/RenderElement.h:
1571 * rendering/RenderInline.cpp:
1572 (WebCore::RenderInline::paintOutline):
1573 (WebCore::RenderInline::paintOutlineForLine):
1574 * rendering/RenderMultiColumnSet.cpp:
1575 (WebCore::RenderMultiColumnSet::paintColumnRules):
1576 * rendering/RenderObject.cpp:
1577 (WebCore::RenderObject::drawLineForBoxSide): Deleted.
1578 (WebCore::RenderObject::paintFocusRing): Deleted.
1579 (WebCore::RenderObject::paintOutline): Deleted.
1580 * rendering/RenderObject.h:
1581 * rendering/RenderTableCell.cpp:
1582 (WebCore::RenderTableCell::paintCollapsedBorders):
1583 * rendering/RenderTableSection.cpp:
1584 (WebCore::RenderTableSection::paintRowGroupBorder):
1585 * rendering/RenderTheme.h:
1586 (WebCore::RenderTheme::paintMenuListButtonDecorations):
1587 * rendering/RenderThemeIOS.h:
1588 * rendering/RenderThemeIOS.mm:
1589 (WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
1590 * rendering/RenderThemeMac.h:
1591 * rendering/RenderThemeMac.mm:
1592 (WebCore::RenderThemeMac::paintMenuListButtonDecorations):
1594 2015-08-07 James Craig <jcraig@apple.com>
1596 REGRESSION(r184722) AX: WebKit video playback toolbar removed from DOM; no longer accessible to VoiceOver
1597 https://bugs.webkit.org/show_bug.cgi?id=145684
1599 Reviewed by Dean Jackson.
1601 Updated Apple Video controls to add an invisible but focusable button that allows VoiceOver
1602 users (and when unblocked, keyboard users) to re-display the video controls.
1604 Test: media/video-controls-show-on-kb-or-ax-event.html
1606 * English.lproj/mediaControlsLocalizedStrings.js:
1607 * Modules/mediacontrols/mediaControlsApple.css:
1608 (audio::-webkit-media-show-controls):
1609 (video::-webkit-media-show-controls):
1610 * Modules/mediacontrols/mediaControlsApple.js:
1611 (Controller.prototype.createControls):
1612 (Controller.prototype.handleFullscreenChange):
1613 (Controller.prototype.handleShowControlsClick):
1614 (Controller.prototype.handleWrapperMouseMove):
1615 (Controller.prototype.updateForShowingControls):
1616 (Controller.prototype.showControls):
1617 (Controller.prototype.hideControls):
1618 (Controller.prototype.setNeedsUpdateForDisplayedWidth):
1619 * Modules/mediacontrols/mediaControlsiOS.css:
1620 (audio::-webkit-media-show-controls):
1621 (video::-webkit-media-show-controls):
1623 2015-08-07 Alex Christensen <achristensen@webkit.org>
1625 Build more testing binaries with CMake on Windows
1626 https://bugs.webkit.org/show_bug.cgi?id=147799
1628 Reviewed by Brent Fulgham.
1631 MockCDM.cpp needs to be part of WebCoreTestSupport, not WebCore.
1632 * PlatformWin.cmake:
1633 Added files needed for AppleWin port.
1635 2015-08-07 Anders Carlsson <andersca@apple.com>
1637 Being moving away from using SQLTransactionStateMachine in SQLTransactionBackend
1638 https://bugs.webkit.org/show_bug.cgi?id=147798
1640 Reviewed by Geoffrey Garen.
1642 This is the first step towards getting rid of the state machine so we can ultimately merge SQLTransactionBackend
1643 into SQLTransaction.
1645 Instead of having the state machine run our functions, just run them ourselves where we can. For states that need
1646 to be handled in the frontend, call SQLTransaction::requestTransitToState explicitly.
1648 * Modules/webdatabase/SQLTransactionBackend.cpp:
1649 (WebCore::SQLTransactionBackend::stateFunctionFor):
1650 (WebCore::SQLTransactionBackend::lockAcquired):
1651 (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
1652 (WebCore::SQLTransactionBackend::runStatements):
1653 (WebCore::SQLTransactionBackend::runCurrentStatement):
1654 (WebCore::SQLTransactionBackend::handleCurrentStatementError):
1655 (WebCore::SQLTransactionBackend::handleTransactionError):
1656 (WebCore::SQLTransactionBackend::postflightAndCommit):
1657 (WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState): Deleted.
1658 (WebCore::SQLTransactionBackend::nextStateForCurrentStatementError): Deleted.
1659 (WebCore::SQLTransactionBackend::nextStateForTransactionError): Deleted.
1660 (WebCore::SQLTransactionBackend::sendToFrontendState): Deleted.
1661 * Modules/webdatabase/SQLTransactionBackend.h:
1663 2015-08-07 Filip Pizlo <fpizlo@apple.com>
1665 Lightweight locks should be adaptive
1666 https://bugs.webkit.org/show_bug.cgi?id=147545
1668 Reviewed by Geoffrey Garen.
1670 * bindings/objc/WebScriptObject.mm:
1671 (WebCore::getJSWrapper):
1672 (WebCore::addJSWrapper):
1673 (WebCore::removeJSWrapper):
1674 (WebCore::removeJSWrapperIfRetainCountOne):
1675 * platform/audio/mac/CARingBuffer.cpp:
1676 (WebCore::CARingBuffer::setCurrentFrameBounds):
1677 (WebCore::CARingBuffer::getCurrentFrameBounds):
1678 * platform/audio/mac/CARingBuffer.h:
1679 * platform/ios/wak/WAKWindow.mm:
1680 (-[WAKWindow setExposedScrollViewRect:]):
1681 (-[WAKWindow exposedScrollViewRect]):
1683 2015-08-07 Myles C. Maxfield <mmaxfield@apple.com>
1685 Post-review comments on r188146
1686 https://bugs.webkit.org/show_bug.cgi?id=147793
1688 Reviewed by Daniel Bates.
1690 No new tests because there is no behavior change.
1692 * platform/graphics/FontCache.h:
1693 * platform/graphics/cocoa/FontCacheCoreText.cpp:
1694 (WebCore::appendTrueTypeFeature):
1695 (WebCore::appendOpenTypeFeature):
1696 (WebCore::applyFontFeatureSettings):
1697 * platform/graphics/ios/FontCacheIOS.mm:
1698 (WebCore::FontCache::getSystemFontFallbackForCharacters):
1699 (WebCore::FontCache::createFontPlatformData):
1700 * platform/graphics/mac/FontCacheMac.mm:
1701 (WebCore::fontWithFamily):
1702 (WebCore::FontCache::systemFallbackForCharacters):
1703 * platform/graphics/mac/FontCustomPlatformData.cpp:
1704 (WebCore::FontCustomPlatformData::fontPlatformData):
1705 * rendering/RenderThemeIOS.mm:
1706 (WebCore::RenderThemeIOS::updateCachedSystemFontDescription):
1708 2015-08-07 Myles C. Maxfield <mmaxfield@apple.com>
1710 [Cocoa] Font fallback is not language-sensitive
1711 https://bugs.webkit.org/show_bug.cgi?id=147390
1713 Reviewed by Dean Jackson.
1715 We need to make our font fallback code sensitive to locale.
1717 This patch rolls r187729 back in. However, only particular versions of iOS and OS X are
1718 performant enough to enable this language-sensitivity.
1720 This patch also applies to iOS.
1722 Test: fast/text/fallback-language-han.html
1724 * platform/graphics/mac/FontCacheMac.mm:
1725 (WebCore::lookupCTFont):
1726 (WebCore::FontCache::systemFallbackForCharacters):
1727 * platform/graphics/mac/FontCacheIOS.mm:
1728 (WebCore::FontCache::systemFallbackForCharacters):
1730 2015-08-07 Zalan Bujtas <zalan@apple.com>
1732 RenderTheme::volumeSliderOffsetFromMuteButton should take const& RenderBox.
1733 https://bugs.webkit.org/show_bug.cgi?id=147731
1735 Reviewed by Simon Fraser.
1737 No change in functionality.
1739 * rendering/RenderMediaControlElements.cpp:
1740 (WebCore::RenderMediaVolumeSliderContainer::layout):
1741 * rendering/RenderMediaControls.cpp:
1742 (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Deleted.
1743 * rendering/RenderMediaControls.h:
1744 * rendering/RenderTheme.cpp:
1745 (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):
1746 * rendering/RenderTheme.h:
1748 2015-08-07 Zalan Bujtas <zalan@apple.com>
1750 Replace RenderObject::isRooted() logic with isDescendantOf().
1751 https://bugs.webkit.org/show_bug.cgi?id=147788
1753 Reviewed by Simon Fraser.
1755 And some related cleanups.
1757 No change in functionality.
1759 * page/FrameView.cpp:
1760 (WebCore::FrameView::scheduleRelayoutOfSubtree):
1761 (WebCore::FrameView::extendedBackgroundRectForPainting):
1762 * rendering/RenderBox.cpp:
1763 (WebCore::RenderBox::paintRootBoxFillLayers):
1764 * rendering/RenderElement.cpp:
1765 (WebCore::shouldRepaintForImageAnimation):
1766 * rendering/RenderObject.cpp:
1767 (WebCore::RenderObject::isDescendantOf):
1768 (WebCore::scheduleRelayoutForSubtree):
1769 (WebCore::RenderObject::repaint):
1770 (WebCore::RenderObject::repaintRectangle):
1771 (WebCore::RenderObject::repaintSlowRepaintObject):
1772 (WebCore::RenderObject::isRooted):
1773 * rendering/RenderObject.h:
1774 * rendering/RenderView.cpp:
1775 (WebCore::RenderView::unextendedBackgroundRect):
1776 (WebCore::RenderView::backgroundRect):
1777 * rendering/RenderView.h:
1779 2015-08-07 Zalan Bujtas <zalan@apple.com>
1781 Subtree layout code should use RenderElement.
1782 https://bugs.webkit.org/show_bug.cgi?id=147694
1784 Reviewed by Simon Fraser.
1786 Subtree layout will never begin at a RenderText, so tighten up
1787 the code to operate on RenderElements instead of RenderObjects.
1788 (This patch is based on webkit.org/b/126878)
1790 No change in functionality.
1792 * inspector/InspectorTimelineAgent.cpp:
1793 (WebCore::InspectorTimelineAgent::willLayout):
1794 * page/FrameView.cpp:
1795 (WebCore::FrameView::FrameView): Deleted.
1796 (WebCore::FrameView::layoutRoot): Deleted.
1798 * rendering/RenderBox.cpp:
1799 (WebCore::RenderBox::computeLogicalWidthInRegion):
1800 * rendering/RenderElement.cpp:
1801 (WebCore::RenderElement::clearLayoutRootIfNeeded):
1802 (WebCore::RenderElement::willBeDestroyed):
1803 * rendering/RenderElement.h:
1804 * rendering/RenderObject.cpp:
1805 (WebCore::RenderObject::clearLayoutRootIfNeeded): Deleted.
1806 (WebCore::RenderObject::willBeDestroyed): Deleted.
1807 * rendering/RenderObject.h:
1809 2015-08-07 Wenson Hsieh <wenson_hsieh@apple.com>
1811 Temporarily allow programmatic input assistance for adding Gmail account
1812 https://bugs.webkit.org/show_bug.cgi?id=147792
1814 Reviewed by Enrica Casucci.
1815 <rdar://problem/22126518>
1817 Temporary fix for keyboard input sliding out and immediately back in upon user interaction
1818 in the Gmail 2-factor authentication page.
1820 * platform/RuntimeApplicationChecksIOS.h:
1821 * platform/RuntimeApplicationChecksIOS.mm:
1822 (WebCore::applicationIsGmailAddAccountOnIOS): Added bundle ID for Gmail settings.
1824 2015-08-07 Andy Estes <aestes@apple.com>
1826 Crash when following a Google search link to Twitter with Limit Adult Content enabled
1827 https://bugs.webkit.org/show_bug.cgi?id=147651
1829 Reviewed by Brady Eidson.
1831 When a loaded CachedRawResource gets a new client, it synthesizes the callbacks that the new client would have
1832 received while the resource was loading. Unlike a real network load, it synthesizes these callbacks in a single
1833 run loop iteration. When DocumentLoader receives a redirect, and finds substitute data in the app cache for the
1834 redirect URL, it schedules a timer that removes DocumentLoader as a client of the CachedRawResource then
1835 synthesizes its own set of CachedRawResourceClient callbacks. But since CachedRawResource has already delivered
1836 client callbacks before the app cache timer fires, DocumentLoader unexpectedly ends up getting two sets of
1837 client callbacks and badness ensues.
1839 The fix is to let CachedRawResource detect if a redirect will trigger the client to load substitute data. If so,
1840 stop delivering client callbacks.
1842 Layout test to follow.
1844 * loader/DocumentLoader.cpp:
1845 (WebCore::DocumentLoader::syntheticRedirectReceived): If there is valid substitute data, do not continue.
1846 * loader/DocumentLoader.h:
1847 * loader/cache/CachedRawResource.cpp: Returned early if syntheticRedirectReceived() said not to continue.
1848 (WebCore::CachedRawResource::didAddClient):
1849 * loader/cache/CachedRawResourceClient.h:
1850 (WebCore::CachedRawResourceClient::syntheticRedirectReceived):
1852 2015-08-06 Dean Jackson <dino@apple.com>
1854 Shadows don't draw on fillText when using a gradient fill
1855 https://bugs.webkit.org/show_bug.cgi?id=147758
1856 <rdar://problem/20860912>
1858 Reviewed by Myles Maxfield.
1860 Since we use a mask to render a pattern or gradient
1861 into text, any shadow was being clipped out. Change
1862 this to draw the shadow before the mask + fill operation,
1863 using a technique similar to text-shadow.
1865 Test: fast/canvas/gradient-text-with-shadow.html
1867 * html/canvas/CanvasRenderingContext2D.cpp:
1868 (WebCore::CanvasRenderingContext2D::drawTextInternal): Get the current shadow
1869 style, paint the text with a transformed shadow offset so that we only
1870 see the shadow and not the text, then combine with the existing pattern/gradient
1873 2015-08-07 Myles C. Maxfield <mmaxfield@apple.com>
1875 Implement font-feature-settings
1876 https://bugs.webkit.org/show_bug.cgi?id=147722
1878 Reviewed by Simon Fraser.
1880 Fonts with features are simply modeled as new font objects. Font
1881 feature information is contained within FontDescription, and our
1882 caches are correctly sensitive to this information. Therefore,
1883 we just need to make our font lookup code honor the request to
1884 use certain features.
1886 This patch creates a file, FontCacheCoreText.cpp, which will be the
1887 new home of all shared OS X / iOS FontCache code. Over time, I will
1888 be moving more and more source into this file, until there is
1889 nothing left of FontCacheMac.mm and FontCacheIOS.mm. For now, the
1890 only function in this file is the code which applies font features.
1892 Test: css3/font-feature-settings-preinstalled-fonts.html
1894 * WebCore.xcodeproj/project.pbxproj: Add FontCacheCoreText.cpp.
1895 * platform/graphics/FontCache.h:
1896 * platform/graphics/cocoa/FontCacheCoreText.cpp: Added.
1897 (WebCore::appendTrueTypeFeature): What the name says.
1898 (WebCore::appendOpenTypeFeature): Ditto.
1899 (WebCore::applyFontFeatureSettings): Ditto.
1900 * platform/graphics/ios/FontCacheIOS.mm:
1901 (WebCore::FontCache::getSystemFontFallbackForCharacters): Call
1902 applyFontFeatureSettings().
1903 (WebCore::FontCache::createFontPlatformData): Ditto.
1904 * platform/graphics/mac/FontCacheMac.mm:
1905 (WebCore::fontWithFamily): Ditto.
1906 (WebCore::FontCache::systemFallbackForCharacters): Ditto.
1907 (WebCore::FontCache::createFontPlatformData): Ditto.
1908 * platform/graphics/mac/FontCustomPlatformData.cpp:
1909 (WebCore::FontCustomPlatformData::fontPlatformData): Ditto.
1910 * rendering/RenderThemeIOS.mm:
1911 (WebCore::RenderThemeIOS::updateCachedSystemFontDescription):
1914 2015-08-07 Commit Queue <commit-queue@webkit.org>
1916 Unreviewed, rolling out r187907.
1917 https://bugs.webkit.org/show_bug.cgi?id=147789
1919 taking a different approach to the fix (Requested by estes on
1924 "Crash when following a Google search link to Twitter with
1925 Limit Adult Content enabled."
1926 https://bugs.webkit.org/show_bug.cgi?id=147651
1927 http://trac.webkit.org/changeset/187907
1929 2015-08-07 Alex Christensen <achristensen@webkit.org>
1931 Fix WinCairo build after r188130.
1933 * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1934 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
1935 (WebCore::FontCustomPlatformData::fontPlatformData):
1936 I forgot the parameter name.
1938 2015-08-07 Alex Christensen <achristensen@webkit.org>
1940 Fix WinCairo build after r188130.
1942 * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1943 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
1944 (WebCore::FontCustomPlatformData::fontPlatformData):
1945 Update fontPlatformData parameters.
1947 2015-08-07 Daniel Bates <dabates@apple.com>
1949 Attempt to fix the Windows build after <http://trac.webkit.org/changeset/188130>
1950 (https://bugs.webkit.org/show_bug.cgi?id=147775)
1952 Include header FontDescription.h.
1954 * platform/graphics/win/FontCustomPlatformData.cpp:
1955 * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1957 2015-08-07 Myles C. Maxfield <mmaxfield@apple.com>
1959 Allow FontCustomPlatformData to consult with FontDescription
1960 https://bugs.webkit.org/show_bug.cgi?id=147775
1962 Reviewed by Zalan Bujtas.
1964 In order to implement font-feature-settings, web fonts need to be
1965 able to consult with the set of active font features. Rather than
1966 add yet another argument to all the functions in this flow, this
1967 patch passes around a reference to the FontDescription itself instead
1968 of copies of constituent members of it.
1970 No new tests because there is no behavior change.
1972 * css/CSSFontFaceSource.cpp:
1973 (WebCore::CSSFontFaceSource::font):
1974 * loader/cache/CachedFont.cpp:
1975 (WebCore::CachedFont::createFont):
1976 (WebCore::CachedFont::platformDataFromCustomData):
1977 * loader/cache/CachedFont.h:
1978 * loader/cache/CachedSVGFont.cpp:
1979 (WebCore::CachedSVGFont::platformDataFromCustomData):
1980 * loader/cache/CachedSVGFont.h:
1981 * platform/graphics/cairo/FontCustomPlatformData.h:
1982 * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
1983 (WebCore::FontCustomPlatformData::fontPlatformData):
1984 * platform/graphics/freetype/FontPlatformData.h:
1985 * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
1986 (WebCore::FontPlatformData::FontPlatformData):
1987 * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
1988 (WebCore::Font::platformCreateScaledFont):
1989 * platform/graphics/mac/FontCustomPlatformData.cpp:
1990 (WebCore::FontCustomPlatformData::fontPlatformData):
1991 * platform/graphics/mac/FontCustomPlatformData.h:
1992 * platform/graphics/win/FontCustomPlatformData.cpp:
1993 (WebCore::FontCustomPlatformData::fontPlatformData):
1994 * platform/graphics/win/FontCustomPlatformData.h:
1996 2015-08-07 Xabier Rodriguez Calvar <calvaris@igalia.com>
1998 [Streams API] Create CountQueuingStrategy object as per spec
1999 https://bugs.webkit.org/show_bug.cgi?id=146594
2001 Reviewed by Geoffrey Garen.
2003 CountQueuingStrategy is a class part of the Streams API that can be found at
2004 https://streams.spec.whatwg.org/#cqs-class. We had it as js at the tests but the spec says we have to provide it
2005 natively. The class is implemented in this patch by creating its corresponding IDL with the size method using
2006 the [CustomBinding] attribute, that does not create any bindings against the object allowing us full control to
2007 do what the spec requires (just returning 1 without any cast check). The constructor sets the highWaterMark
2008 property taking it from the argument.
2010 Covered by current tests
2011 (LayoutTests/streams/reference-implementation/count-queuing-strategy.html and
2012 LayoutTests/streams/reference-implementation/brand-checks.html).
2015 * DerivedSources.cpp:
2016 * DerivedSources.make:
2017 * PlatformMac.cmake:
2018 * WebCore.vcxproj/WebCore.vcxproj:
2019 * WebCore.vcxproj/WebCore.vcxproj.filters:
2020 * WebCore.xcodeproj/project.pbxproj:
2021 * bindings/js/JSBindingsAllInOne.cpp: Build infrastructure.
2022 * Modules/streams/CountQueuingStrategy.h: Added.
2023 (WebCore::CountQueuingStrategy::~CountQueuingStrategy): Created empty.
2024 (WebCore::CountQueuingStrategy::size): Returns 1.
2025 * Modules/streams/CountQueuingStrategy.idl: Added.
2026 * bindings/js/JSCountQueuingStrategyCustom.cpp: Added.
2027 (WebCore::jsCountQueuingStrategyPrototypeFunctionSize): Calls WebCore::CountQueuingStrategy::size.
2028 (WebCore::constructJSCountQueuingStrategy): Constructs the strategy, copies the highWaterMark from the argument
2030 * bindings/js/JSDOMBinding.h:
2031 (WebCore::getPropertyFromObject): Moved from ReadableJSStream.cpp.
2032 (WebCore::setPropertyToObject): Added to create a property into an object.
2033 * bindings/js/ReadableJSStream.cpp:
2034 (WebCore::getPropertyFromObject): Deleted.
2036 2015-08-07 Brady Eidson <beidson@apple.com>
2038 Move concrete KeyedDecoder/Encoder implementations to WebCore.
2039 https://bugs.webkit.org/show_bug.cgi?id=147757.
2041 Rubberstamped by Andy Estes.
2043 * PlatformEfl.cmake:
2044 * PlatformGTK.cmake:
2045 * WebCore.xcodeproj/project.pbxproj:
2047 * platform/KeyedCoding.h:
2048 (WebCore::KeyedDecoder::KeyedDecoder): Static constructor to be implemented per-platform.
2049 (WebCore::KeyedEncoder::KeyedEncoder): Ditto.
2051 * platform/cf/KeyedDecoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.cpp.
2052 (WebCore::KeyedDecoder::decoder):
2053 (WebCore::KeyedDecoderCF::KeyedDecoderCF):
2054 (WebCore::KeyedDecoderCF::~KeyedDecoderCF):
2055 (WebCore::KeyedDecoderCF::decodeBytes):
2056 (WebCore::KeyedDecoderCF::decodeBool):
2057 (WebCore::KeyedDecoderCF::decodeUInt32):
2058 (WebCore::KeyedDecoderCF::decodeInt32):
2059 (WebCore::KeyedDecoderCF::decodeInt64):
2060 (WebCore::KeyedDecoderCF::decodeFloat):
2061 (WebCore::KeyedDecoderCF::decodeDouble):
2062 (WebCore::KeyedDecoderCF::decodeString):
2063 (WebCore::KeyedDecoderCF::beginObject):
2064 (WebCore::KeyedDecoderCF::endObject):
2065 (WebCore::KeyedDecoderCF::beginArray):
2066 (WebCore::KeyedDecoderCF::beginArrayElement):
2067 (WebCore::KeyedDecoderCF::endArrayElement):
2068 (WebCore::KeyedDecoderCF::endArray):
2069 * platform/cf/KeyedDecoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.h.
2071 * platform/cf/KeyedEncoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.cpp.
2072 (WebCore::KeyedEncoder::encoder):
2073 (WebCore::createDictionary):
2074 (WebCore::KeyedEncoderCF::KeyedEncoderCF):
2075 (WebCore::KeyedEncoderCF::~KeyedEncoderCF):
2076 (WebCore::KeyedEncoderCF::encodeBytes):
2077 (WebCore::KeyedEncoderCF::encodeBool):
2078 (WebCore::KeyedEncoderCF::encodeUInt32):
2079 (WebCore::KeyedEncoderCF::encodeInt32):
2080 (WebCore::KeyedEncoderCF::encodeInt64):
2081 (WebCore::KeyedEncoderCF::encodeFloat):
2082 (WebCore::KeyedEncoderCF::encodeDouble):
2083 (WebCore::KeyedEncoderCF::encodeString):
2084 (WebCore::KeyedEncoderCF::beginObject):
2085 (WebCore::KeyedEncoderCF::endObject):
2086 (WebCore::KeyedEncoderCF::beginArray):
2087 (WebCore::KeyedEncoderCF::beginArrayElement):
2088 (WebCore::KeyedEncoderCF::endArrayElement):
2089 (WebCore::KeyedEncoderCF::endArray):
2090 (WebCore::KeyedEncoderCF::finishEncoding):
2091 * platform/cf/KeyedEncoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.h.
2093 * platform/glib/KeyedDecoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.cpp.
2094 (WebCore::KeyedDecoder::decoder):
2095 (WebCore::KeyedDecoderGlib::KeyedDecoderGlib):
2096 (WebCore::KeyedDecoderGlib::~KeyedDecoderGlib):
2097 (WebCore::KeyedDecoderGlib::dictionaryFromGVariant):
2098 (WebCore::KeyedDecoderGlib::decodeBytes):
2099 (WebCore::KeyedDecoderGlib::decodeSimpleValue):
2100 (WebCore::KeyedDecoderGlib::decodeBool):
2101 (WebCore::KeyedDecoderGlib::decodeUInt32):
2102 (WebCore::KeyedDecoderGlib::decodeInt32):
2103 (WebCore::KeyedDecoderGlib::decodeInt64):
2104 (WebCore::KeyedDecoderGlib::decodeFloat):
2105 (WebCore::KeyedDecoderGlib::decodeDouble):
2106 (WebCore::KeyedDecoderGlib::decodeString):
2107 (WebCore::KeyedDecoderGlib::beginObject):
2108 (WebCore::KeyedDecoderGlib::endObject):
2109 (WebCore::KeyedDecoderGlib::beginArray):
2110 (WebCore::KeyedDecoderGlib::beginArrayElement):
2111 (WebCore::KeyedDecoderGlib::endArrayElement):
2112 (WebCore::KeyedDecoderGlib::endArray):
2113 * platform/glib/KeyedDecoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.h.
2115 * platform/glib/KeyedEncoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.cpp.
2116 (WebCore::KeyedEncoder::encoder):
2117 (WebCore::KeyedEncoderGlib::KeyedEncoderGlib):
2118 (WebCore::KeyedEncoderGlib::~KeyedEncoderGlib):
2119 (WebCore::KeyedEncoderGlib::encodeBytes):
2120 (WebCore::KeyedEncoderGlib::encodeBool):
2121 (WebCore::KeyedEncoderGlib::encodeUInt32):
2122 (WebCore::KeyedEncoderGlib::encodeInt32):
2123 (WebCore::KeyedEncoderGlib::encodeInt64):
2124 (WebCore::KeyedEncoderGlib::encodeFloat):
2125 (WebCore::KeyedEncoderGlib::encodeDouble):
2126 (WebCore::KeyedEncoderGlib::encodeString):
2127 (WebCore::KeyedEncoderGlib::beginObject):
2128 (WebCore::KeyedEncoderGlib::endObject):
2129 (WebCore::KeyedEncoderGlib::beginArray):
2130 (WebCore::KeyedEncoderGlib::beginArrayElement):
2131 (WebCore::KeyedEncoderGlib::endArrayElement):
2132 (WebCore::KeyedEncoderGlib::endArray):
2133 (WebCore::KeyedEncoderGlib::finishEncoding):
2134 * platform/glib/KeyedEncoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.h.
2136 2015-08-07 Carlos Garcia Campos <cgarcia@igalia.com>
2138 [GStreamer] Do not automatically show PackageKit codec installation notifications
2139 https://bugs.webkit.org/show_bug.cgi?id=135973
2141 Reviewed by Philippe Normand.
2143 Add description parameter to requestInstallMissingPlugins() that
2144 will be used by the API layer.
2146 * html/HTMLMediaElement.cpp:
2147 (WebCore::HTMLMediaElement::requestInstallMissingPlugins):
2148 * html/HTMLMediaElement.h:
2149 * page/ChromeClient.h:
2150 * platform/graphics/MediaPlayer.h:
2151 (WebCore::MediaPlayerClient::requestInstallMissingPlugins):
2152 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2153 (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
2155 2015-08-07 Doug Russell <d_russell@apple.com>
2157 AX: Bug 147737 is causing test failures in Mavericks WK1
2158 https://bugs.webkit.org/show_bug.cgi?id=147763
2160 Restrict change made in 147737 to ElCapitan+ because it is causing tests
2161 to fail in Mavericks.
2163 Reviewed by Chris Fleizach.
2165 Fixes failing tests.
2167 * accessibility/AXObjectCache.cpp:
2168 (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
2170 2015-08-07 Xabier Rodriguez Calvar <calvaris@igalia.com>
2172 Create [CustomBinding] extended IDL attribute
2173 https://bugs.webkit.org/show_bug.cgi?id=146593
2175 Reviewed by Geoffrey Garen.
2177 Added the [CustomBinding] IDL extended attribute. The idea is that when using this attribute, bindings generate
2178 only the signature of the JS functions and we have to implement all the access in the Custom.cpp files, meaning
2179 accessing the implementations at our wish.
2181 Added customBindingMethod, customBindingMethodWithArgs to the generator tests.
2183 * bindings/scripts/CodeGeneratorGObject.pm:
2184 (SkipFunction): Skipped [CustomBinding] methods.
2185 * bindings/scripts/CodeGeneratorJS.pm:
2186 (GenerateHeader): Consider CustomBinding as ForwardDeclareInHeader.
2187 (GenerateImplementation): Avoid printing both header and implementation of the function.
2188 * bindings/scripts/CodeGeneratorObjC.pm:
2189 (SkipFunction): Skipped [CustomBinding] methods.
2190 * bindings/scripts/IDLAttributes.txt: Added [CustomBinding] IDL extended attribute.
2191 * bindings/scripts/test/JS/JSTestObj.cpp:
2192 * bindings/scripts/test/TestObj.idl: Added customBindingMethod, customBindingMethodWithArgs and their
2195 2015-08-06 Zan Dobersek <zdobersek@igalia.com>
2197 Source/WebCore/crypto code should pass std::function<> objects through rvalue references
2198 https://bugs.webkit.org/show_bug.cgi?id=147332
2200 Reviewed by Anders Carlsson.
2202 Pass the std::function<> callbacks through CryptoAlgorithm methods via
2203 rvlaue references. This avoids generation of unnecessary move and copy
2204 constructors for std::function<> objects that are being handled.
2206 * crypto/CryptoAlgorithm.cpp:
2207 (WebCore::CryptoAlgorithm::encrypt):
2208 (WebCore::CryptoAlgorithm::decrypt):
2209 (WebCore::CryptoAlgorithm::sign):
2210 (WebCore::CryptoAlgorithm::verify):
2211 (WebCore::CryptoAlgorithm::digest):
2212 (WebCore::CryptoAlgorithm::generateKey):
2213 (WebCore::CryptoAlgorithm::deriveKey):
2214 (WebCore::CryptoAlgorithm::deriveBits):
2215 (WebCore::CryptoAlgorithm::importKey):
2216 (WebCore::CryptoAlgorithm::encryptForWrapKey):
2217 (WebCore::CryptoAlgorithm::decryptForUnwrapKey):
2218 * crypto/CryptoAlgorithm.h:
2219 * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
2220 (WebCore::CryptoAlgorithmAES_CBC::encrypt):
2221 (WebCore::CryptoAlgorithmAES_CBC::decrypt):
2222 (WebCore::CryptoAlgorithmAES_CBC::generateKey):
2223 (WebCore::CryptoAlgorithmAES_CBC::importKey):
2224 * crypto/algorithms/CryptoAlgorithmAES_CBC.h:
2225 * crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
2226 (WebCore::CryptoAlgorithmAES_KW::encryptForWrapKey):
2227 (WebCore::CryptoAlgorithmAES_KW::decryptForUnwrapKey):
2228 (WebCore::CryptoAlgorithmAES_KW::generateKey):
2229 (WebCore::CryptoAlgorithmAES_KW::importKey):
2230 * crypto/algorithms/CryptoAlgorithmAES_KW.h:
2231 * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
2232 (WebCore::CryptoAlgorithmHMAC::sign):
2233 (WebCore::CryptoAlgorithmHMAC::verify):
2234 (WebCore::CryptoAlgorithmHMAC::generateKey):
2235 (WebCore::CryptoAlgorithmHMAC::importKey):
2236 * crypto/algorithms/CryptoAlgorithmHMAC.h:
2237 * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:
2238 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt):
2239 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt):
2240 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey):
2241 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::importKey):
2242 * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h:
2243 * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
2244 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
2245 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
2246 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::generateKey):
2247 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::importKey):
2248 * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
2249 * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
2250 (WebCore::CryptoAlgorithmRSA_OAEP::encrypt):
2251 (WebCore::CryptoAlgorithmRSA_OAEP::decrypt):
2252 (WebCore::CryptoAlgorithmRSA_OAEP::generateKey):
2253 (WebCore::CryptoAlgorithmRSA_OAEP::importKey):
2254 * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h:
2255 * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
2256 (WebCore::CryptoAlgorithmSHA1::digest):
2257 * crypto/algorithms/CryptoAlgorithmSHA1.h:
2258 * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
2259 (WebCore::CryptoAlgorithmSHA224::digest):
2260 * crypto/algorithms/CryptoAlgorithmSHA224.h:
2261 * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
2262 (WebCore::CryptoAlgorithmSHA256::digest):
2263 * crypto/algorithms/CryptoAlgorithmSHA256.h:
2264 * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
2265 (WebCore::CryptoAlgorithmSHA384::digest):
2266 * crypto/algorithms/CryptoAlgorithmSHA384.h:
2267 * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
2268 (WebCore::CryptoAlgorithmSHA512::digest):
2269 * crypto/algorithms/CryptoAlgorithmSHA512.h:
2270 * crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp:
2271 (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
2272 (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
2273 * crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp:
2274 (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
2275 (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
2276 * crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp:
2277 (WebCore::CryptoAlgorithmHMAC::platformSign):
2278 (WebCore::CryptoAlgorithmHMAC::platformVerify):
2279 * crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp:
2280 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
2281 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
2282 * crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp:
2283 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
2284 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
2285 * crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp:
2286 (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
2287 (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
2288 * crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:
2289 (WebCore::transformAES_CBC):
2290 (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
2291 (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
2292 * crypto/mac/CryptoAlgorithmAES_KWMac.cpp:
2293 (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
2294 (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
2295 * crypto/mac/CryptoAlgorithmHMACMac.cpp:
2296 (WebCore::CryptoAlgorithmHMAC::platformSign):
2297 (WebCore::CryptoAlgorithmHMAC::platformVerify):
2298 * crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp:
2299 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
2300 (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
2301 * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
2302 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
2303 (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
2304 * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp:
2305 (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
2306 (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
2308 2015-08-06 Alex Christensen <achristensen@webkit.org>
2310 Fix GTK clean build after r187997
2311 https://bugs.webkit.org/show_bug.cgi?id=147723
2313 Reviewed by Gyuyoung Kim.
2316 r187997 made it so WebCoreTestSupport does not link with WebCore, which is necessary to get DumpRenderTree to link.
2317 It also made it so WebCoreTestSupport is no longer dependent on WebCore, which causes it to build at the same time.
2318 This caused problems because WebCoreTestSupport uses headers that are generated for WebCore, such as WebKitFontFamilyNames.h.
2319 Adding a dependency makes it so that WebCoreTestSupport waits until WebCore is done compiling before compiling,
2320 which is what it used to do, but it does not cause linking problems with DumpRenderTree.
2322 2015-08-06 Myles C. Maxfield <mmaxfield@apple.com>
2324 CSSSegmentedFontFace::fontRanges() does not handle duplicate fonts correctly
2325 https://bugs.webkit.org/show_bug.cgi?id=147765
2327 Reviewed by Filip Pizlo.
2329 CSSSegmentedFontFace::fontRanges() was trying to hash on FontDescriptors by
2330 picking a few specific pieces of data out of the FontDescriptor, computing
2331 a hash on it, and using that unsigned as a key in a HashMap. This has two
2332 problems: it doesn't handle equality correctly, as hash collisions cannot
2333 depend on an equality operator to dedup, and it doesn't hash on all the
2334 members of a FontDescription.
2336 Instead, this HashMap should use FontDescriptionKey, which represents a
2337 FontDescription, and is designed exactly for the purpose of being used as a
2340 No new tests because there is no behavior change (because a problem occurs
2341 when two different FontDescriptions hash to the same value, which is rare).
2343 * css/CSSSegmentedFontFace.cpp:
2344 (WebCore::CSSSegmentedFontFace::fontRanges):
2345 * css/CSSSegmentedFontFace.h:
2346 * platform/graphics/FontCache.h:
2347 (WebCore::FontDescriptionKeyHash::hash):
2348 (WebCore::FontDescriptionKeyHash::equal):
2350 2015-08-06 Myles C. Maxfield <mmaxfield@apple.com>
2352 [iOS] Remove dead code from FontCache::createFontPlatformData()
2353 https://bugs.webkit.org/show_bug.cgi?id=147762
2355 Reviewed by Andy Estes.
2357 No new tests because there is no behavior change.
2359 * platform/graphics/ios/FontCacheIOS.mm:
2360 (WebCore::FontCache::createFontPlatformData): Deleted.
2362 2015-08-06 Alex Christensen <achristensen@webkit.org>
2364 Revert part of my "build fix" in r188101.
2367 MockCDM was already conditionally added to WebCore_SOURCES, and that change causes dependency cycles when bug 147723 is fixed.
2369 2015-08-06 Alex Christensen <achristensen@webkit.org>
2371 [Win] CMake build fix after r188098.
2374 MockCDM is necessary for testing if ENCRYPTED_MEDIA_V2 is enabled.
2376 2015-08-06 Alex Christensen <achristensen@webkit.org>
2378 [Win] Enable all Windows features in CMake
2379 https://bugs.webkit.org/show_bug.cgi?id=147744
2381 Reviewed by Tim Horton.
2383 * PlatformWin.cmake:
2384 Add a file needed for enabling video.
2386 2015-08-06 Anders Carlsson <andersca@apple.com>
2388 Rename SQLStatementBackend to SQLStatement
2389 https://bugs.webkit.org/show_bug.cgi?id=147755
2391 Reviewed by Geoffrey Garen.
2394 * Modules/webdatabase/SQLStatement.h: Renamed from Source/WebCore/Modules/webdatabase/SQLStatementBackend.h.
2395 (WebCore::SQLStatement::hasStatementCallback):
2396 (WebCore::SQLStatement::hasStatementErrorCallback):
2397 * Modules/webdatabase/SQLStatementBackend.cpp: Removed.
2398 (WebCore::SQLStatementBackend::SQLStatementBackend): Deleted.
2399 (WebCore::SQLStatementBackend::~SQLStatementBackend): Deleted.
2400 (WebCore::SQLStatementBackend::sqlError): Deleted.
2401 (WebCore::SQLStatementBackend::sqlResultSet): Deleted.
2402 (WebCore::SQLStatementBackend::execute): Deleted.
2403 (WebCore::SQLStatementBackend::performCallback): Deleted.
2404 (WebCore::SQLStatementBackend::setDatabaseDeletedError): Deleted.
2405 (WebCore::SQLStatementBackend::setVersionMismatchedError): Deleted.
2406 (WebCore::SQLStatementBackend::setFailureDueToQuota): Deleted.
2407 (WebCore::SQLStatementBackend::clearFailureDueToQuota): Deleted.
2408 (WebCore::SQLStatementBackend::lastExecutionFailedDueToQuota): Deleted.
2409 * Modules/webdatabase/SQLStatementBackend.h:
2410 (WebCore::SQLStatementBackend::hasStatementCallback): Deleted.
2411 (WebCore::SQLStatementBackend::hasStatementErrorCallback): Deleted.
2412 * Modules/webdatabase/SQLTransaction.cpp:
2413 (WebCore::SQLTransaction::deliverStatementCallback):
2414 (WebCore::SQLTransaction::executeSQL):
2415 * Modules/webdatabase/SQLTransactionBackend.cpp:
2416 (WebCore::SQLTransactionBackend::currentStatement):
2417 (WebCore::SQLTransactionBackend::enqueueStatementBackend):
2418 (WebCore::SQLTransactionBackend::executeSQL):
2419 * Modules/webdatabase/SQLTransactionBackend.h:
2420 * WebCore.vcxproj/WebCore.vcxproj:
2421 * WebCore.vcxproj/WebCore.vcxproj.filters:
2422 * WebCore.xcodeproj/project.pbxproj:
2424 2015-08-06 Myles C. Maxfield <mmaxfield@apple.com>
2426 Make FontDescriptionKey sensitive to FontFeatureSettings
2427 https://bugs.webkit.org/show_bug.cgi?id=147751
2429 Reviewed by Anders Carlsson.
2431 Just like how FontDescription hashes should be sensitive to locale, they should
2432 also be sensitive to font features.
2434 This patch also fixes operator== for FontDescriptionKey, which was previously
2435 comparing hashes for equality instead of the underlying data. Comparing hashes
2436 for equality is useless inside hashmaps.
2438 This is in preparation for implementing font-feature-settings.
2440 No new tests because there is no behavior change.
2442 * platform/graphics/FontCache.cpp:
2443 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
2444 (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
2445 (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): Deleted.
2446 * platform/graphics/FontCache.h:
2447 (WebCore::FontDescriptionKey::FontDescriptionKey):
2448 (WebCore::FontDescriptionKey::operator==):
2449 (WebCore::FontDescriptionKey::operator!=):
2450 (WebCore::FontDescriptionKey::isHashTableDeletedValue):
2451 (WebCore::FontDescriptionKey::computeHash):
2452 * platform/graphics/FontFeatureSettings.cpp:
2453 (WebCore::FontFeature::hash):
2454 (WebCore::FontFeatureSettings::hash):
2455 * platform/graphics/FontFeatureSettings.h:
2457 2015-08-06 Anders Carlsson <andersca@apple.com>
2459 Merge SQLStatement into SQLStatementBackend
2460 https://bugs.webkit.org/show_bug.cgi?id=147754
2462 Reviewed by Geoffrey Garen.
2465 * Modules/webdatabase/Database.h:
2466 * Modules/webdatabase/SQLStatement.cpp: Removed.
2467 (WebCore::SQLStatement::SQLStatement): Deleted.
2468 (WebCore::SQLStatement::setBackend): Deleted.
2469 (WebCore::SQLStatement::hasCallback): Deleted.
2470 (WebCore::SQLStatement::hasErrorCallback): Deleted.
2471 (WebCore::SQLStatement::performCallback): Deleted.
2472 * Modules/webdatabase/SQLStatement.h: Removed.
2473 * Modules/webdatabase/SQLStatementBackend.cpp:
2474 (WebCore::SQLStatementBackend::SQLStatementBackend):
2475 (WebCore::SQLStatementBackend::performCallback):
2476 (WebCore::SQLStatementBackend::frontend): Deleted.
2477 * Modules/webdatabase/SQLStatementBackend.h:
2478 (WebCore::SQLStatementBackend::hasStatementCallback):
2479 (WebCore::SQLStatementBackend::hasStatementErrorCallback):
2480 * Modules/webdatabase/SQLTransaction.cpp:
2481 (WebCore::SQLTransaction::deliverStatementCallback):
2482 (WebCore::SQLTransaction::executeSQL):
2483 * Modules/webdatabase/SQLTransaction.h:
2484 * Modules/webdatabase/SQLTransactionBackend.cpp:
2485 (WebCore::SQLTransactionBackend::currentStatement):
2486 (WebCore::SQLTransactionBackend::executeSQL):
2487 * Modules/webdatabase/SQLTransactionBackend.h:
2488 * WebCore.vcxproj/WebCore.vcxproj:
2489 * WebCore.vcxproj/WebCore.vcxproj.filters:
2490 * WebCore.xcodeproj/project.pbxproj:
2491 * bindings/js/JSSQLTransactionCustom.cpp:
2493 2015-08-06 Chris Dumez <cdumez@apple.com>
2495 Toggle GPS state based on page visibility to save battery
2496 https://bugs.webkit.org/show_bug.cgi?id=147685
2498 Reviewed by Benjamin Poulain.
2500 Toggle GPS state based on page visibility to save battery. Previously,
2501 if the site you were viewing was watching your position and you
2502 switched tab, the GPS would stay on. This was bad for battery life.
2504 Tests: fast/dom/Geolocation/startUpdatingOnlyWhenPageVisible.html
2505 fast/dom/Geolocation/stopUpdatingForHiddenPage.html
2507 * Modules/geolocation/GeolocationController.cpp:
2508 (WebCore::GeolocationController::addObserver):
2509 (WebCore::GeolocationController::viewStateDidChange):
2511 2015-08-06 Anders Carlsson <andersca@apple.com>
2513 SQLStatementBackend doesn't need to be refcounted
2514 https://bugs.webkit.org/show_bug.cgi?id=147748
2516 Reviewed by Geoffrey Garen.
2518 There's no shared ownership of SQLStatementBackend so we can just use std::unique_ptr.
2520 * Modules/webdatabase/SQLStatementBackend.cpp:
2521 (WebCore::SQLStatementBackend::create): Deleted.
2522 * Modules/webdatabase/SQLStatementBackend.h:
2523 * Modules/webdatabase/SQLTransactionBackend.cpp:
2524 (WebCore::SQLTransactionBackend::enqueueStatementBackend):
2525 (WebCore::SQLTransactionBackend::executeSQL):
2526 * Modules/webdatabase/SQLTransactionBackend.h:
2528 2015-08-06 Eric Carlson <eric.carlson@apple.com>
2530 Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
2531 https://bugs.webkit.org/show_bug.cgi?id=147734
2532 rdar://problem/22028179
2534 Reviewed by Andy Estes.
2536 Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735
2539 (WebCore::Document::initSecurityContext): Use applyContentDispositionAttachmentSandbox
2540 instead of setting sandbox flags directly.
2541 (WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Don't special
2543 (WebCore::Document::applyContentDispositionAttachmentSandbox): Apply sandbox flags
2544 according to document type.
2547 2015-08-06 Anders Carlsson <andersca@apple.com>
2549 Get rid of DatabaseBackendBase
2550 https://bugs.webkit.org/show_bug.cgi?id=147733
2552 Reviewed by Geoffrey Garen.
2555 * Modules/webdatabase/Database.cpp:
2556 (WebCore::Database::Database):
2557 (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
2558 (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
2559 * Modules/webdatabase/Database.h:
2560 * Modules/webdatabase/DatabaseBackendBase.cpp: Removed.
2561 (WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
2562 (WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.
2563 * Modules/webdatabase/DatabaseBackendBase.h: Removed.
2564 * Modules/webdatabase/DatabaseManager.cpp:
2565 * Modules/webdatabase/DatabaseManager.h:
2566 * Modules/webdatabase/DatabaseTracker.cpp:
2567 * WebCore.vcxproj/WebCore.vcxproj:
2568 * WebCore.vcxproj/WebCore.vcxproj.filters:
2569 * WebCore.xcodeproj/project.pbxproj:
2571 2015-08-06 Myles C. Maxfield <mmaxfield@apple.com>
2573 Add comment to CSSParserString
2574 https://bugs.webkit.org/show_bug.cgi?id=147724
2576 Reviewed by Dean Jackson.
2578 No new tests because there is no behavior change.
2580 * css/CSSParserValues.h:
2582 2015-08-06 Myles C. Maxfield <mmaxfield@apple.com>
2584 Font feature settings comparisons are order-dependent and case-dependent
2585 https://bugs.webkit.org/show_bug.cgi?id=147719
2587 Reviewed by Benjamin Poulain.
2589 We should make our settings vector order-independent and case-independent.
2591 Test: css3/font-feature-settings-parsing.html
2593 * css/CSSParser.cpp:
2594 (WebCore::CSSParser::parseFontFeatureTag):
2595 * css/StyleBuilderConverter.h:
2596 (WebCore::StyleBuilderConverter::convertFontFeatureSettings):
2597 * platform/graphics/FontFeatureSettings.cpp:
2598 (WebCore::FontFeature::FontFeature):
2599 (WebCore::FontFeature::operator==):
2600 (WebCore::FontFeatureSettings::FontFeatureSettings):
2601 * platform/graphics/FontFeatureSettings.h:
2602 (WebCore::FontFeature::FontFeature):
2603 (WebCore::FontFeature::operator==):
2604 (WebCore::FontFeature::operator<):
2605 (WebCore::FontFeatureSettings::insert):
2606 (WebCore::FontFeatureSettings::FontFeatureSettings):
2607 (WebCore::FontFeatureSettings::append): Deleted.
2609 2015-08-06 Doug Russell <d_russell@apple.com>
2611 AX: AXLoadComplete that comes before AX API access won't fire
2612 https://bugs.webkit.org/show_bug.cgi?id=147737
2614 Reviewed by Chris Fleizach.
2616 Treat setEnhancedUserInterfaceAccessibility() as AX API access and if true,
2617 enableAccessibility().
2619 Test: accessibility/mac/loaded-notification.html
2621 * accessibility/AXObjectCache.cpp:
2622 (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
2624 2015-08-06 Eric Carlson <eric.carlson@apple.com>
2626 Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
2627 https://bugs.webkit.org/show_bug.cgi?id=147734
2628 rdar://problem/22028179
2630 Reviewed by Dean Jackson.
2632 Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735
2635 (WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Return
2636 early if the Document is a MediaDocument.
2638 2015-08-06 Matt Rajca <mrajca@apple.com>
2640 Media Session: remove media elements from the ID <-> element map on destruction
2641 https://bugs.webkit.org/show_bug.cgi?id=147707
2643 Reviewed by Eric Carlson.
2645 * html/HTMLMediaElement.cpp:
2646 (WebCore::HTMLMediaElement::~HTMLMediaElement):
2648 2015-08-06 Gyuyoung Kim <gyuyoung.kim@webkit.org>
2650 [CoordinatedGraphics] Remove unused functions in Coordinated TiledBackingStore
2651 https://bugs.webkit.org/show_bug.cgi?id=147621
2653 Reviewed by Csaba Osztrogonác.
2655 * platform/graphics/texmap/coordinated/TiledBackingStore.cpp: Remove setTileSize() and tileSize().
2656 (WebCore::TiledBackingStore::setTileSize):
2658 2015-08-06 Anders Carlsson <andersca@apple.com>
2660 Move the last remnants of DatabaseBackendBase to Database
2661 https://bugs.webkit.org/show_bug.cgi?id=147730
2663 Reviewed by Tim Horton.
2665 * Modules/webdatabase/Database.cpp:
2666 (WebCore::Database::Database):
2667 (WebCore::Database::performOpenAndVerify):
2668 * Modules/webdatabase/Database.h:
2669 * Modules/webdatabase/DatabaseBackendBase.cpp:
2670 (WebCore::DatabaseBackendBase::DatabaseBackendBase):
2671 * Modules/webdatabase/DatabaseBackendBase.h:
2672 (WebCore::DatabaseBackendBase::databaseContext): Deleted.
2673 (WebCore::DatabaseBackendBase::setFrontend): Deleted.
2675 2015-08-06 Alex Christensen <achristensen@webkit.org>
2677 Fix build without ENABLE(VIDEO) after r188030.
2680 * html/HTMLMediaElement.cpp:
2681 * html/HTMLMediaElement.h:
2682 Move definition of HTMLMediaElementInvalidID to Document.h so it can be used outside of ENABLE(VIDEO) macros.
2684 2015-08-04 Matt Rajca <mrajca@apple.com>
2686 Media Session: push paused state to the media session focus manager instead of polling
2687 https://bugs.webkit.org/show_bug.cgi?id=147633
2689 Reviewed by Simon Fraser.
2692 (WebCore::Document::updateIsPlayingMedia): If a valid source element ID is passed in, set the 'IsSourcePlaying'
2695 * html/HTMLMediaElement.cpp:
2696 (WebCore::HTMLMediaElement::elementWithID):
2697 (WebCore::HTMLMediaElement::setMuted): Pass along the element ID.
2698 (WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): Ditto.
2699 (WebCore::HTMLMediaElement::setPlaying): Ditto.
2700 * html/HTMLMediaElement.h:
2701 * page/ChromeClient.h:
2702 * page/MediaProducer.h:
2704 (WebCore::Page::updateIsPlayingMedia): Pass along the source element ID.
2705 (WebCore::Page::isMediaElementPaused): Deleted. We now push media playback state changes instead of polling.
2708 2015-08-05 Myles C. Maxfield <mmaxfield@apple.com>
2710 CharacterFallbackMapKey should be locale-specific
2711 https://bugs.webkit.org/show_bug.cgi?id=147532
2713 Reviewed by Dean Jackson.
2715 This is in preparation for locale-specific font fallback.
2717 No new tests because there is no behavior change.
2719 * platform/graphics/Font.cpp:
2720 (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
2721 (WebCore::CharacterFallbackMapKey::operator==):
2722 (WebCore::CharacterFallbackMapKeyHash::hash):
2723 (WebCore::Font::systemFallbackFontForCharacter):
2725 2015-08-05 Myles C. Maxfield <mmaxfield@apple.com>
2727 Expand CharacterFallbackMapKey to a struct
2728 https://bugs.webkit.org/show_bug.cgi?id=147530
2730 Reviewed by Dean Jackson.
2732 This is in prepraration for making this struct locale-specific.
2734 No new tests because there is no behavior change.
2736 * platform/graphics/Font.cpp:
2737 (WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
2738 (WebCore::CharacterFallbackMapKey::isHashTableDeletedValue):
2739 (WebCore::CharacterFallbackMapKey::operator==):
2740 (WebCore::CharacterFallbackMapKeyHash::hash):
2741 (WebCore::CharacterFallbackMapKeyHash::equal):
2742 (WebCore::Font::systemFallbackFontForCharacter):
2744 2015-08-05 Chris Dumez <cdumez@apple.com>
2746 Crash when removing children of a MathMLSelectElement
2747 https://bugs.webkit.org/show_bug.cgi?id=147704
2748 <rdar://problem/21940321>
2750 Reviewed by Ryosuke Niwa.
2752 When MathMLSelectElement::childrenChanged() is called after its
2753 children have been removed, MathMLSelectElement calls
2754 updateSelectedChild() which accesses m_selectedChild. However,
2755 in this case, m_selectedChild is the previously selected child
2756 and it may be destroyed as this point if it was removed. To avoid
2757 this problem, MathMLSelectElement now keep a strong ref to the
2758 currently selected element.
2760 Test: mathml/maction-removeChild.html
2762 * mathml/MathMLSelectElement.h:
2764 2015-08-05 Myles C. Maxfield <mmaxfield@apple.com>
2766 Migrate FontCascade.cpp to NeverDestroyed
2767 https://bugs.webkit.org/show_bug.cgi?id=147533
2769 Reviewed by Simon Fraser.
2771 No new tests because there is no behavior change.
2773 * platform/graphics/FontCascade.cpp:
2774 (WebCore::fontCascadeCache):
2776 2015-08-05 Tim Horton <timothy_horton@apple.com>
2778 Try to fix the build
2780 * Modules/webdatabase/Database.cpp:
2781 (WebCore::Database::performOpenAndVerify):
2782 * Modules/webdatabase/Database.h:
2784 2015-08-05 Myles C. Maxfield <mmaxfield@apple.com>
2786 Delete duplicate forward-declaration
2787 https://bugs.webkit.org/show_bug.cgi?id=147701
2789 Reviewed by Simon Fraser.
2791 No new tests because there is no behavior change.
2793 * platform/spi/cocoa/CoreTextSPI.h:
2795 2015-08-05 Anders Carlsson <andersca@apple.com>
2797 Move the last DatabaseBackendBase functions over to Database
2798 https://bugs.webkit.org/show_bug.cgi?id=147706
2800 Reviewed by Tim Horton.
2802 * Modules/webdatabase/Database.cpp:
2803 (WebCore::Database::~Database):
2804 (WebCore::Database::setExpectedVersion):
2805 (WebCore::Database::getActualVersionForTransaction):
2806 (WebCore::Database::version):
2807 (WebCore::Database::stringIdentifier):
2808 (WebCore::Database::displayName):
2809 (WebCore::Database::estimatedSize):
2810 (WebCore::Database::fileName):
2811 (WebCore::Database::details):
2812 (WebCore::Database::maximumSize):
2813 (WebCore::Database::databaseDebugName):
2814 * Modules/webdatabase/Database.h:
2815 * Modules/webdatabase/DatabaseBackendBase.cpp:
2816 (WebCore::DatabaseBackendBase::databaseDebugName): Deleted.
2817 (WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.
2818 (WebCore::DatabaseBackendBase::version): Deleted.
2819 (WebCore::DatabaseBackendBase::securityOrigin): Deleted.
2820 (WebCore::DatabaseBackendBase::stringIdentifier): Deleted.
2821 (WebCore::DatabaseBackendBase::displayName): Deleted.
2822 (WebCore::DatabaseBackendBase::estimatedSize): Deleted.
2823 (WebCore::DatabaseBackendBase::fileName): Deleted.
2824 (WebCore::DatabaseBackendBase::details): Deleted.
2825 (WebCore::DatabaseBackendBase::setExpectedVersion): Deleted.
2826 (WebCore::DatabaseBackendBase::getActualVersionForTransaction): Deleted.
2827 (WebCore::DatabaseBackendBase::maximumSize): Deleted.
2828 * Modules/webdatabase/DatabaseBackendBase.h:
2829 (WebCore::DatabaseBackendBase::opened): Deleted.
2830 (WebCore::DatabaseBackendBase::isNew): Deleted.
2831 (WebCore::DatabaseBackendBase::sqliteDatabase): Deleted.
2832 (WebCore::DatabaseBackendBase::expectedVersion): Deleted.
2833 * Modules/webdatabase/SQLTransactionClient.cpp:
2834 (WebCore::SQLTransactionClient::didCommitWriteTransaction):
2835 (WebCore::SQLTransactionClient::didExceedQuota):
2836 * Modules/webdatabase/SQLTransactionClient.h:
2838 2015-08-05 Filip Pizlo <fpizlo@apple.com>
2840 Unreviewed, roll out http://trac.webkit.org/changeset/187972.
2842 * Modules/webaudio/AsyncAudioDecoder.cpp:
2843 (WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
2844 (WebCore::AsyncAudioDecoder::runLoop):
2845 * Modules/webaudio/AsyncAudioDecoder.h:
2846 * Modules/webaudio/AudioContext.h:
2847 * Modules/webaudio/MediaStreamAudioSource.cpp:
2848 (WebCore::MediaStreamAudioSource::addAudioConsumer):
2849 (WebCore::MediaStreamAudioSource::removeAudioConsumer):
2850 (WebCore::MediaStreamAudioSource::setAudioFormat):
2851 (WebCore::MediaStreamAudioSource::consumeAudio):
2852 * Modules/webaudio/MediaStreamAudioSource.h:
2853 * Modules/webdatabase/Database.cpp:
2854 (WebCore::Database::close):
2855 (WebCore::Database::runTransaction):
2856 (WebCore::Database::inProgressTransactionCompleted):
2857 (WebCore::Database::hasPendingTransaction):
2858 * Modules/webdatabase/DatabaseTask.h:
2859 * Modules/webdatabase/DatabaseThread.cpp:
2860 (WebCore::DatabaseThread::start):
2861 (WebCore::DatabaseThread::databaseThread):
2862 * Modules/webdatabase/DatabaseThread.h:
2863 * Modules/webdatabase/DatabaseTracker.cpp:
2864 (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
2865 (WebCore::DatabaseTracker::canEstablishDatabase):
2866 (WebCore::DatabaseTracker::retryCanEstablishDatabase):
2867 (WebCore::DatabaseTracker::hasEntryForOrigin):
2868 (WebCore::DatabaseTracker::getMaxSizeForDatabase):
2869 (WebCore::DatabaseTracker::closeAllDatabases):
2870 (WebCore::DatabaseTracker::fullPathForDatabase):
2871 (WebCore::DatabaseTracker::origins):
2872 (WebCore::DatabaseTracker::databaseNamesForOrigin):
2873 (WebCore::DatabaseTracker::detailsForNameAndOrigin):
2874 (WebCore::DatabaseTracker::setDatabaseDetails):
2875 (WebCore::DatabaseTracker::doneCreatingDatabase):
2876 (WebCore::DatabaseTracker::addOpenDatabase):
2877 (WebCore::DatabaseTracker::removeOpenDatabase):
2878 (WebCore::DatabaseTracker::getOpenDatabases):
2879 (WebCore::DatabaseTracker::originLockFor):
2880 (WebCore::DatabaseTracker::quotaForOrigin):
2881 (WebCore::DatabaseTracker::setQuota):
2882 (WebCore::DatabaseTracker::deleteOrigin):
2883 (WebCore::DatabaseTracker::deleteDatabase):
2884 (WebCore::DatabaseTracker::deleteDatabaseFile):
2885 (WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
2886 (WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
2887 (WebCore::DatabaseTracker::openDatabaseMutex):
2888 (WebCore::DatabaseTracker::setClient):
2889 (WebCore::notificationMutex):
2890 (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2891 (WebCore::DatabaseTracker::notifyDatabasesChanged):
2892 * Modules/webdatabase/DatabaseTracker.h:
2893 * Modules/webdatabase/OriginLock.h:
2894 * Modules/webdatabase/SQLCallbackWrapper.h:
2895 (WebCore::SQLCallbackWrapper::clear):
2896 (WebCore::SQLCallbackWrapper::unwrap):
2897 (WebCore::SQLCallbackWrapper::hasCallback):
2898 * Modules/webdatabase/SQLTransactionBackend.cpp:
2899 (WebCore::SQLTransactionBackend::doCleanup):
2900 (WebCore::SQLTransactionBackend::enqueueStatementBackend):
2901 (WebCore::SQLTransactionBackend::getNextStatement):
2902 * Modules/webdatabase/SQLTransactionBackend.h:
2903 * bindings/js/WorkerScriptController.cpp:
2904 (WebCore::WorkerScriptController::scheduleExecutionTermination):
2905 (WebCore::WorkerScriptController::isExecutionTerminating):
2906 * bindings/js/WorkerScriptController.h:
2907 * dom/default/PlatformMessagePortChannel.cpp:
2908 (WebCore::MessagePortChannel::postMessageToRemote):
2909 (WebCore::MessagePortChannel::tryGetMessageFromRemote):
2910 (WebCore::MessagePortChannel::isConnectedTo):
2911 (WebCore::MessagePortChannel::hasPendingActivity):
2912 (WebCore::MessagePortChannel::locallyEntangledPort):
2913 (WebCore::PlatformMessagePortChannel::setRemotePort):
2914 (WebCore::PlatformMessagePortChannel::entangledChannel):
2915 (WebCore::PlatformMessagePortChannel::closeInternal):
2916 * dom/default/PlatformMessagePortChannel.h:
2917 * loader/icon/IconDatabase.cpp:
2918 (WebCore::IconDatabase::removeAllIcons):
2919 (WebCore::IconDatabase::synchronousIconForPageURL):
2920 (WebCore::IconDatabase::synchronousNativeIconForPageURL):
2921 (WebCore::IconDatabase::synchronousIconURLForPageURL):
2922 (WebCore::IconDatabase::retainIconForPageURL):
2923 (WebCore::IconDatabase::performRetainIconForPageURL):
2924 (WebCore::IconDatabase::releaseIconForPageURL):
2925 (WebCore::IconDatabase::performReleaseIconForPageURL):
2926 (WebCore::IconDatabase::setIconDataForIconURL):
2927 (WebCore::IconDatabase::setIconURLForPageURL):
2928 (WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
2929 (WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
2930 (WebCore::IconDatabase::pageURLMappingCount):
2931 (WebCore::IconDatabase::retainedPageURLCount):
2932 (WebCore::IconDatabase::iconRecordCount):
2933 (WebCore::IconDatabase::iconRecordCountWithData):
2934 (WebCore::IconDatabase::wakeSyncThread):
2935 (WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
2936 (WebCore::IconDatabase::databasePath):
2937 (WebCore::IconDatabase::getOrCreatePageURLRecord):
2938 (WebCore::IconDatabase::iconDatabaseSyncThread):
2939 (WebCore::IconDatabase::performOpenInitialization):
2940 (WebCore::IconDatabase::performURLImport):
2941 (WebCore::IconDatabase::syncThreadMainLoop):
2942 (WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
2943 (WebCore::IconDatabase::readFromDatabase):
2944 (WebCore::IconDatabase::writeToDatabase):
2945 (WebCore::IconDatabase::pruneUnretainedIcons):
2946 (WebCore::IconDatabase::cleanupSyncThread):
2947 * loader/icon/IconDatabase.h:
2948 * page/scrolling/ScrollingTree.cpp:
2949 (WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
2950 (WebCore::ScrollingTree::commitNewTreeState):
2951 (WebCore::ScrollingTree::setMainFramePinState):
2952 (WebCore::ScrollingTree::mainFrameScrollPosition):
2953 (WebCore::ScrollingTree::setMainFrameScrollPosition):
2954 (WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
2955 (WebCore::ScrollingTree::isRubberBandInProgress):
2956 (WebCore::ScrollingTree::setMainFrameIsRubberBanding):
2957 (WebCore::ScrollingTree::isScrollSnapInProgress):
2958 (WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
2959 (WebCore::ScrollingTree::setCanRubberBandState):
2960 (WebCore::ScrollingTree::rubberBandsAtLeft):
2961 (WebCore::ScrollingTree::rubberBandsAtRight):
2962 (WebCore::ScrollingTree::rubberBandsAtBottom):
2963 (WebCore::ScrollingTree::rubberBandsAtTop):
2964 (WebCore::ScrollingTree::setScrollPinningBehavior):
2965 (WebCore::ScrollingTree::scrollPinningBehavior):
2966 (WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
2967 (WebCore::ScrollingTree::latchedNode):
2968 (WebCore::ScrollingTree::setLatchedNode):
2969 (WebCore::ScrollingTree::clearLatchedNode):
2970 * page/scrolling/ScrollingTree.h:
2971 * platform/MemoryPressureHandler.h:
2972 * platform/audio/HRTFDatabaseLoader.cpp:
2973 (WebCore::HRTFDatabaseLoader::loadAsynchronously):
2974 (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
2975 * platform/audio/HRTFDatabaseLoader.h:
2976 * platform/cocoa/MemoryPressureHandlerCocoa.mm:
2977 (WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
2978 (WebCore::MemoryPressureHandler::clearMemoryPressure):
2979 (WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
2980 (WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):
2981 * platform/graphics/DisplayRefreshMonitor.cpp:
2982 (WebCore::DisplayRefreshMonitor::displayDidRefresh):
2983 * platform/graphics/DisplayRefreshMonitor.h:
2984 (WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
2985 (WebCore::DisplayRefreshMonitor::mutex):
2986 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2987 (WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
2988 (WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
2989 (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
2990 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2991 * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2992 (WebCore::AVFWrapper::callbackContext):
2993 (WebCore::AVFWrapper::~AVFWrapper):
2994 (WebCore::AVFWrapper::mapLock):
2995 (WebCore::AVFWrapper::addToMap):
2996 (WebCore::AVFWrapper::removeFromMap):
2997 (WebCore::AVFWrapper::periodicTimeObserverCallback):
2998 (WebCore::AVFWrapper::processNotification):
2999 (WebCore::AVFWrapper::loadPlayableCompletionCallback):
3000 (WebCore::AVFWrapper::loadMetadataCompletionCallback):
3001 (WebCore::AVFWrapper::seekCompletedCallback):
3002 (WebCore::AVFWrapper::processCue):
3003 (WebCore::AVFWrapper::legibleOutputCallback):
3004 (WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
3005 (WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):
3006 * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
3007 (WebCore::InbandTextTrackPrivateGStreamer::handleSample):
3008 (WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):
3009 * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
3010 * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
3011 (WebCore::TrackPrivateBaseGStreamer::tagsChanged):
3012 (WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
3013 * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
3014 * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
3015 (WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
3016 (WebCore::DisplayRefreshMonitorMac::displayLinkFired):
3017 * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
3018 (WebCore::MediaPlayerPrivateMediaFoundation::addListener):
3019 (WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
3020 (WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
3021 (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
3022 (WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
3023 * platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
3024 * platform/ios/LegacyTileCache.h:
3025 * platform/ios/LegacyTileCache.mm:
3026 (WebCore::LegacyTileCache::setTilesOpaque):
3027 (WebCore::LegacyTileCache::doLayoutTiles):
3028 (WebCore::LegacyTileCache::setCurrentScale):
3029 (WebCore::LegacyTileCache::commitScaleChange):
3030 (WebCore::LegacyTileCache::layoutTilesNow):
3031 (WebCore::LegacyTileCache::layoutTilesNowForRect):
3032 (WebCore::LegacyTileCache::removeAllNonVisibleTiles):
3033 (WebCore::LegacyTileCache::removeAllTiles):
3034 (WebCore::LegacyTileCache::removeForegroundTiles):
3035 (WebCore::LegacyTileCache::setContentReplacementImage):
3036 (WebCore::LegacyTileCache::contentReplacementImage):
3037 (WebCore::LegacyTileCache::tileCreationTimerFired):
3038 (WebCore::LegacyTileCache::setNeedsDisplayInRect):
3039 (WebCore::LegacyTileCache::updateTilingMode):
3040 (WebCore::LegacyTileCache::setTilingMode):
3041 (WebCore::LegacyTileCache::doPendingRepaints):
3042 (WebCore::LegacyTileCache::flushSavedDisplayRects):
3043 (WebCore::LegacyTileCache::prepareToDraw):
3044 * platform/ios/LegacyTileLayerPool.h:
3045 * platform/ios/LegacyTileLayerPool.mm:
3046 (WebCore::LegacyTileLayerPool::addLayer):
3047 (WebCore::LegacyTileLayerPool::takeLayerWithSize):
3048 (WebCore::LegacyTileLayerPool::setCapacity):
3049 (WebCore::LegacyTileLayerPool::prune):
3050 (WebCore::LegacyTileLayerPool::drain):
3051 * platform/network/curl/CurlDownload.cpp:
3052 (WebCore::CurlDownloadManager::add):
3053 (WebCore::CurlDownloadManager::remove):
3054 (WebCore::CurlDownloadManager::getActiveDownloadCount):
3055 (WebCore::CurlDownloadManager::getPendingDownloadCount):
3056 (WebCore::CurlDownloadManager::stopThreadIfIdle):
3057 (WebCore::CurlDownloadManager::updateHandleList):
3058 (WebCore::CurlDownload::~CurlDownload):
3059 (WebCore::CurlDownload::init):
3060 (WebCore::CurlDownload::getTempPath):
3061 (WebCore::CurlDownload::getUrl):
3062 (WebCore::CurlDownload::getResponse):
3063 (WebCore::CurlDownload::closeFile):
3064 (WebCore::CurlDownload::didReceiveHeader):
3065 (WebCore::CurlDownload::didReceiveData):
3066 (WebCore::CurlDownload::didFail):
3067 * platform/network/curl/CurlDownload.h:
3068 * platform/network/curl/ResourceHandleManager.cpp:
3069 (WebCore::cookieJarPath):
3070 (WebCore::sharedResourceMutex):
3071 (WebCore::curl_lock_callback):
3072 (WebCore::curl_unlock_callback):
3073 * platform/network/ios/QuickLook.mm:
3074 (WebCore::QLDirectoryAttributes):
3075 (qlPreviewConverterDictionaryMutex):
3076 (WebCore::addQLPreviewConverterWithFileForURL):
3077 (WebCore::qlPreviewConverterUTIForURL):
3078 (WebCore::removeQLPreviewConverterForURL):
3079 (WebCore::safeQLURLForDocumentURLAndResourceURL):
3080 * platform/sql/SQLiteDatabase.cpp:
3081 (WebCore::SQLiteDatabase::close):
3082 (WebCore::SQLiteDatabase::maximumSize):
3083 (WebCore::SQLiteDatabase::setMaximumSize):
3084 (WebCore::SQLiteDatabase::pageSize):
3085 (WebCore::SQLiteDatabase::freeSpaceSize):
3086 (WebCore::SQLiteDatabase::totalSize):
3087 (WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
3088 (WebCore::SQLiteDatabase::setAuthorizer):
3089 * platform/sql/SQLiteDatabase.h:
3090 (WebCore::SQLiteDatabase::databaseMutex):
3091 * platform/sql/SQLiteStatement.cpp:
3092 (WebCore::SQLiteStatement::prepare):
3093 (WebCore::SQLiteStatement::step):
3094 * workers/WorkerThread.cpp:
3095 (WebCore::WorkerThread::start):
3096 (WebCore::WorkerThread::workerThread):
3097 (WebCore::WorkerThread::stop):
3098 * workers/WorkerThread.h:
3100 2015-08-05 Anders Carlsson <andersca@apple.com>
3102 Move more functions from DatabaseBackendBase to Database
3103 https://bugs.webkit.org/show_bug.cgi?id=147705
3105 Reviewed by Tim Horton.
3107 * Modules/webdatabase/Database.cpp:
3108 (WebCore::guidMutex):
3109 (WebCore::guidToVersionMap):
3110 (WebCore::updateGuidVersionMap):
3111 (WebCore::guidToDatabaseMap):
3112 (WebCore::guidForOriginAndName):
3113 (WebCore::Database::Database):
3114 (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
3115 (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
3116 (WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded):
3117 (WebCore::Database::performOpenAndVerify):
3118 (WebCore::Database::closeDatabase):
3119 (WebCore::Database::getCachedVersion):
3120 (WebCore::Database::setCachedVersion):
3121 * Modules/webdatabase/Database.h:
3122 * Modules/webdatabase/DatabaseBackendBase.cpp:
3123 (WebCore::DatabaseBackendBase::version):
3124 (WebCore::formatErrorMessage): Deleted.
3125 (WebCore::guidMutex): Deleted.
3126 (WebCore::guidToVersionMap): Deleted.
3127 (WebCore::updateGuidVersionMap): Deleted.
3128 (WebCore::guidToDatabaseMap): Deleted.
3129 (WebCore::guidForOriginAndName): Deleted.
3130 (WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
3131 (WebCore::DatabaseBackendBase::closeDatabase): Deleted.
3132 (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller): Deleted.
3133 (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller): Deleted.
3134 (WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded): Deleted.
3135 (WebCore::DatabaseBackendBase::performOpenAndVerify): Deleted.
3136 (WebCore::DatabaseBackendBase::getCachedVersion): Deleted.
3137 (WebCore::DatabaseBackendBase::setCachedVersion): Deleted.
3138 * Modules/webdatabase/DatabaseBackendBase.h:
3140 2015-08-05 Anders Carlsson <andersca@apple.com>
3142 Move more functions from DatabaseBackendBase to Database
3143 https://bugs.webkit.org/show_bug.cgi?id=147703
3145 Reviewed by Tim Horton.
3147 * Modules/webdatabase/Database.cpp:
3148 (WebCore::fullyQualifiedInfoTableName):
3149 (WebCore::setTextValueInDatabase):
3150 (WebCore::retrieveTextResultFromDatabase):
3151 (WebCore::Database::getVersionFromDatabase):
3152 (WebCore::Database::setVersionInDatabase):
3153 (WebCore::Database::performGetTableNames):
3154 * Modules/webdatabase/Database.h:
3155 * Modules/webdatabase/DatabaseBackendBase.cpp:
3156 (WebCore::DatabaseBackendBase::performOpenAndVerify):
3157 (WebCore::DatabaseBackendBase::getActualVersionForTransaction):
3158 (WebCore::DatabaseBackendBase::databaseInfoTableName): Deleted.
3159 (WebCore::fullyQualifiedInfoTableName): Deleted.
3160 (WebCore::retrieveTextResultFromDatabase): Deleted.
3161 (WebCore::setTextValueInDatabase): Deleted.
3162 (WebCore::DatabaseBackendBase::getVersionFromDatabase): Deleted.
3163 (WebCore::DatabaseBackendBase::setVersionInDatabase): Deleted.
3164 * Modules/webdatabase/DatabaseBackendBase.h:
3166 2015-08-05 Alex Christensen <achristensen@webkit.org>
3168 Build DumpRenderTree with CMake.
3169 https://bugs.webkit.org/show_bug.cgi?id=147519
3171 Reviewed by Brent Fulgham.
3174 WebCoreTestSupport is a static library and should not be linked with WebCore.
3176 2015-08-05 Anders Carlsson <andersca@apple.com>
3178 Move some more DatabaseBackendBase functions to Database
3179 https://bugs.webkit.org/show_bug.cgi?id=147702
3181 Reviewed by Tim Horton.
3183 * Modules/webdatabase/Database.cpp:
3184 (WebCore::formatErrorMessage):
3185 (WebCore::Database::disableAuthorizer):
3186 (WebCore::Database::enableAuthorizer):
3187 (WebCore::Database::setAuthorizerPermissions):
3188 (WebCore::Database::lastActionChangedDatabase):
3189 (WebCore::Database::lastActionWasInsert):
3190 (WebCore::Database::resetDeletes):
3191 (WebCore::Database::hadDeletes):
3192 (WebCore::Database::resetAuthorizer):
3193 (WebCore::Database::incrementalVacuumIfNeeded):
3194 * Modules/webdatabase/Database.h:
3195 * Modules/webdatabase/DatabaseBackendBase.cpp:
3196 (WebCore::DatabaseBackendBase::disableAuthorizer): Deleted.
3197 (WebCore::DatabaseBackendBase::enableAuthorizer): Deleted.
3198 (WebCore::DatabaseBackendBase::setAuthorizerPermissions): Deleted.
3199 (WebCore::DatabaseBackendBase::lastActionChangedDatabase): Deleted.
3200 (WebCore::DatabaseBackendBase::lastActionWasInsert): Deleted.
3201 (WebCore::DatabaseBackendBase::resetDeletes): Deleted.
3202 (WebCore::DatabaseBackendBase::hadDeletes): Deleted.
3203 (WebCore::DatabaseBackendBase::resetAuthorizer): Deleted.
3204 (WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded): Deleted.
3205 * Modules/webdatabase/DatabaseBackendBase.h:
3207 2015-08-05 Zalan Bujtas <zalan@apple.com>
3209 [Frame flattening] Return early when child RenderView is not available.
3210 https://bugs.webkit.org/show_bug.cgi?id=147697
3212 Reviewed by Simon Fraser.
3214 No change in functionality.
3216 * rendering/RenderFrameBase.cpp:
3217 (WebCore::RenderFrameBase::peformLayoutWithFlattening):
3219 2015-08-05 Anders Carlsson <andersca@apple.com>
3221 Remove more dead database code
3222 https://bugs.webkit.org/show_bug.cgi?id=147698
3224 Reviewed by Tim Horton.
3226 * Modules/webdatabase/DatabaseBackendBase.cpp:
3227 (WebCore::DatabaseBackendBase::interrupt): Deleted.
3228 (WebCore::DatabaseBackendBase::isInterrupted): Deleted.
3229 * Modules/webdatabase/DatabaseBackendBase.h:
3230 * Modules/webdatabase/SQLStatementBackend.cpp:
3231 (WebCore::SQLStatementBackend::execute):
3232 * Modules/webdatabase/SQLTransaction.cpp:
3233 (WebCore::SQLTransaction::computeNextStateAndCleanupIfNeeded):
3234 * Modules/webdatabase/SQLTransactionBackend.cpp:
3235 (WebCore::SQLTransactionBackend::computeNextStateAndCleanupIfNeeded):
3236 * platform/sql/SQLiteDatabase.cpp:
3237 (WebCore::SQLiteDatabase::setFullsync):
3238 (WebCore::SQLiteDatabase::SQLiteDatabase): Deleted.
3239 (WebCore::SQLiteDatabase::interrupt): Deleted.
3240 (WebCore::SQLiteDatabase::isInterrupted): Deleted.
3241 * platform/sql/SQLiteDatabase.h:
3242 * platform/sql/SQLiteStatement.cpp:
3243 (WebCore::SQLiteStatement::prepare): Deleted.
3244 (WebCore::SQLiteStatement::step): Deleted.
3246 2015-08-05 Anders Carlsson <andersca@apple.com>
3250 * platform/cf/CoreMediaSoftLink.cpp:
3251 * platform/cf/CoreMediaSoftLink.h:
3253 2015-08-05 Anders Carlsson <andersca@apple.com>
3257 * platform/graphics/mac/FontCacheMac.mm:
3258 (WebCore::lookupCTFont):
3260 2015-08-05 Anders Carlsson <andersca@apple.com>
3262 Change openDatabase to return a Database instead of a DatabaseBackendBase
3263 https://bugs.webkit.org/show_bug.cgi?id=147691
3265 Reviewed by Tim Horton.
3267 * Modules/webdatabase/AbstractDatabaseServer.h:
3268 * Modules/webdatabase/Database.cpp:
3269 (WebCore::Database::create): Deleted.
3270 * Modules/webdatabase/Database.h:
3271 * Modules/webdatabase/DatabaseManager.cpp:
3272 (WebCore::DatabaseManager::openDatabaseBackend):
3273 (WebCore::DatabaseManager::openDatabase):
3274 * Modules/webdatabase/DatabaseManager.h:
3275 * Modules/webdatabase/DatabaseServer.cpp:
3276 (WebCore::DatabaseServer::openDatabase):
3277 (WebCore::DatabaseServer::createDatabase):
3278 * Modules/webdatabase/DatabaseServer.h:
3280 2015-08-05 Myles C. Maxfield <mmaxfield@apple.com>
3282 [OS X] Migrate to CTFontCreateForCharactersWithLanguage from [NSFont findFontLike:forString:withRange:inLanguage]
3283 https://bugs.webkit.org/show_bug.cgi?id=147483
3285 Reviewed by Dean Jackson.
3287 [NSFont findFontLike:forString:withRange:inLanguage] doesn't properly handle its last argument. In
3288 addition, we want to be moving away from NSFont in the first place and on to Core Text. This new
3289 CoreText function correctly handles its language argument, which is required for language-specific
3292 This patch rolls r187707 back in which was rolled out in r187802 due to test flakiness. This patch
3293 fixes the flakiness.
3295 No new tests because there is no behavior change.
3297 * platform/graphics/FontCache.cpp:
3298 (WebCore::FontCache::purgeInactiveFontData):
3299 * platform/graphics/FontCache.h:
3300 (WebCore::FontCache::platformPurgeInactiveFontData):
3301 * platform/graphics/mac/FontCacheMac.mm:
3302 (WebCore::fallbackDedupSet):
3303 (WebCore::FontCache::platformPurgeInactiveFontData):
3304 (WebCore::lookupCTFont):
3305 (WebCore::FontCache::systemFallbackForCharacters):
3306 * platform/spi/cocoa/CoreTextSPI.h:
3307 * platform/spi/mac/NSFontSPI.h:
3309 2015-08-05 Anders Carlsson <andersca@apple.com>
3311 Get rid of DatabaseBackend as another step towards merging Database and DatabaseBackendBase
3312 https://bugs.webkit.org/show_bug.cgi?id=147687
3314 Reviewed by Tim Horton.
3317 * Modules/webdatabase/ChangeVersionWrapper.cpp:
3318 (WebCore::ChangeVersionWrapper::performPreflight):
3319 (WebCore::ChangeVersionWrapper::performPostflight):
3320 * Modules/webdatabase/Database.cpp:
3321 (WebCore::Database::Database):
3322 (WebCore::Database::close):
3323 (WebCore::Database::from): Deleted.
3324 (WebCore::Database::backend): Deleted.
3325 * Modules/webdatabase/Database.h:
3326 * Modules/webdatabase/DatabaseBackend.cpp: Removed.
3327 (WebCore::DatabaseBackend::DatabaseBackend): Deleted.
3328 * Modules/webdatabase/DatabaseBackend.h: Removed.
3329 * Modules/webdatabase/DatabaseManager.cpp:
3330 * Modules/webdatabase/DatabaseServer.cpp:
3331 * Modules/webdatabase/DatabaseTask.cpp:
3332 (WebCore::DatabaseTask::DatabaseTask):
3333 (WebCore::DatabaseOpenTask::DatabaseOpenTask):
3334 (WebCore::DatabaseOpenTask::doPerformTask):
3335 (WebCore::DatabaseOpenTask::debugTaskName):
3336 (WebCore::DatabaseCloseTask::DatabaseCloseTask):
3337 (WebCore::DatabaseCloseTask::doPerformTask):
3338 (WebCore::DatabaseCloseTask::debugTaskName):
3339 (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
3340 (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask):
3341 (WebCore::DatabaseTransactionTask::doPerformTask):
3342 (WebCore::DatabaseTransactionTask::debugTaskName):
3343 (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
3344 (WebCore::DatabaseTableNamesTask::doPerformTask):
3345 (WebCore::DatabaseTableNamesTask::debugTaskName):
3346 (WebCore::DatabaseBackend::DatabaseOpenTask::DatabaseOpenTask): Deleted.
3347 (WebCore::DatabaseBackend::DatabaseOpenTask::doPerformTask): Deleted.
3348 (WebCore::DatabaseBackend::DatabaseOpenTask::debugTaskName): Deleted.
3349 (WebCore::DatabaseBackend::DatabaseCloseTask::DatabaseCloseTask): Deleted.
3350 (WebCore::DatabaseBackend::DatabaseCloseTask::doPerformTask): Deleted.
3351 (WebCore::DatabaseBackend::DatabaseCloseTask::debugTaskName): Deleted.
3352 (WebCore::DatabaseBackend::DatabaseTransactionTask::DatabaseTransactionTask): Deleted.
3353 (WebCore::DatabaseBackend::DatabaseTransactionTask::~DatabaseTransactionTask): Deleted.
3354 (WebCore::DatabaseBackend::DatabaseTransactionTask::doPerformTask): Deleted.
3355 (WebCore::DatabaseBackend::DatabaseTransactionTask::debugTaskName): Deleted.
3356 (WebCore::DatabaseBackend::DatabaseTableNamesTask::DatabaseTableNamesTask): Deleted.
3357 (WebCore::DatabaseBackend::DatabaseTableNamesTask::doPerformTask): Deleted.
3358 (WebCore::DatabaseBackend::DatabaseTableNamesTask::debugTaskName): Deleted.
3359 * Modules/webdatabase/DatabaseTask.h:
3360 (WebCore::DatabaseTask::database):
3361 * Modules/webdatabase/SQLStatementBackend.cpp:
3362 (WebCore::SQLStatementBackend::execute):
3363 * Modules/webdatabase/SQLStatementBackend.h:
3364 * Modules/webdatabase/SQLTransactionBackend.cpp:
3365 (WebCore::SQLTransactionBackend::executeSQL):
3366 (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
3367 * WebCore.vcxproj/WebCore.vcxproj:
3368 * WebCore.vcxproj/WebCore.vcxproj.filters:
3369 * WebCore.xcodeproj/project.pbxproj:
3371 2015-08-04 Filip Pizlo <fpizlo@apple.com>
3373 Rename Mutex to DeprecatedMutex
3374 https://bugs.webkit.org/show_bug.cgi?id=147675
3376 Reviewed by Geoffrey Garen.
3378 No new tests because this is just a renaming.
3380 * Modules/webaudio/AsyncAudioDecoder.cpp:
3381 (WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
3382 (WebCore::AsyncAudioDecoder::runLoop):
3383 * Modules/webaudio/AsyncAudioDecoder.h:
3384 * Modules/webaudio/AudioContext.h:
3385 * Modules/webaudio/MediaStreamAudioSource.cpp:
3386 (WebCore::MediaStreamAudioSource::addAudioConsumer):
3387 (WebCore::MediaStreamAudioSource::removeAudioConsumer):
3388 (WebCore::MediaStreamAudioSource::setAudioFormat):
3389 (WebCore::MediaStreamAudioSource::consumeAudio):
3390 * Modules/webaudio/MediaStreamAudioSource.h:
3391 * Modules/webdatabase/Database.cpp:
3392 (WebCore::Database::close):
3393 (WebCore::Database::runTransaction):
3394 (WebCore::Database::inProgressTransactionCompleted):
3395 (WebCore::Database::hasPendingTransaction):
3396 * Modules/webdatabase/DatabaseBackend.h:
3397 * Modules/webdatabase/DatabaseBackendBase.cpp:
3398 (WebCore::DatabaseBackendBase::performOpenAndVerify):
3399 (WebCore::DatabaseBackendBase::isInterrupted):
3400 * Modules/webdatabase/DatabaseContext.cpp:
3401 (WebCore::DatabaseContext::databaseThread):
3402 (WebCore::DatabaseContext::setPaused):
3403 * Modules/webdatabase/DatabaseContext.h:
3404 * Modules/webdatabase/DatabaseTask.h:
3405 * Modules/webdatabase/DatabaseThread.cpp:
3406 (WebCore::DatabaseThread::start):
3407 (WebCore::DatabaseThread::setPaused):
3408 (WebCore::DatabaseThread::handlePausedQueue):
3409 (WebCore::DatabaseThread::databaseThread):
3410 * Modules/webdatabase/DatabaseThread.h:
3411 * Modules/webdatabase/DatabaseTracker.cpp:
3412 (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
3413 (WebCore::DatabaseTracker::canEstablishDatabase):
3414 (WebCore::DatabaseTracker::retryCanEstablishDatabase):
3415 (WebCore::DatabaseTracker::hasEntryForOrigin):
3416 (WebCore::DatabaseTracker::getMaxSizeForDatabase):
3417 (WebCore::DatabaseTracker::closeAllDatabases):
3418 (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
3419 (WebCore::DatabaseTracker::fullPathForDatabase):
3420 (WebCore::DatabaseTracker::origins):
3421 (WebCore::DatabaseTracker::databaseNamesForOrigin):
3422 (WebCore::DatabaseTracker::detailsForNameAndOrigin):
3423 (WebCore::DatabaseTracker::setDatabaseDetails):
3424 (WebCore::DatabaseTracker::doneCreatingDatabase):
3425 (WebCore::DatabaseTracker::addOpenDatabase):
3426 (WebCore::DatabaseTracker::removeOpenDatabase):
3427 (WebCore::DatabaseTracker::getOpenDatabases):
3428 (WebCore::DatabaseTracker::originLockFor):
3429 (WebCore::DatabaseTracker::quotaForOrigin):
3430 (WebCore::DatabaseTracker::setQuota):
3431 (WebCore::DatabaseTracker::deleteOrigin):
3432 (WebCore::DatabaseTracker::deleteDatabase):
3433 (WebCore::DatabaseTracker::deleteDatabaseFile):
3434 (WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
3435 (WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
3436 (WebCore::DatabaseTracker::openDatabaseMutex):
3437 (WebCore::DatabaseTracker::setDatabasesPaused):
3438 (WebCore::DatabaseTracker::setClient):
3439 (WebCore::notificationMutex):
3440 (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
3441 (WebCore::DatabaseTracker::notifyDatabasesChanged):
3442 * Modules/webdatabase/DatabaseTracker.h:
3443 * Modules/webdatabase/OriginLock.h:
3444 * Modules/webdatabase/SQLCallbackWrapper.h:
3445 (WebCore::SQLCallbackWrapper::clear):
3446 (WebCore::SQLCallbackWrapper::unwrap):
3447 (WebCore::SQLCallbackWrapper::hasCallback):
3448 * Modules/webdatabase/SQLTransactionBackend.cpp:
3449 (WebCore::SQLTransactionBackend::doCleanup):
3450 (WebCore::SQLTransactionBackend::enqueueStatementBackend):
3451 (WebCore::SQLTransactionBackend::getNextStatement):
3452 * Modules/webdatabase/SQLTransactionBackend.h:
3453 * bindings/js/WorkerScriptController.cpp:
3454 (WebCore::WorkerScriptController::scheduleExecutionTermination):
3455 (WebCore::WorkerScriptController::isExecutionTerminating):
3456 * bindings/js/WorkerScriptController.h:
3457 * dom/default/PlatformMessagePortChannel.cpp:
3458 (WebCore::MessagePortChannel::postMessageToRemote):
3459 (WebCore::MessagePortChannel::tryGetMessageFromRemote):
3460 (WebCore::MessagePortChannel::isConnectedTo):
3461 (WebCore::MessagePortChannel::hasPendingActivity):
3462 (WebCore::MessagePortChannel::locallyEntangledPort):
3463 (WebCore::PlatformMessagePortChannel::setRemotePort):
3464 (WebCore::PlatformMessagePortChannel::entangledChannel):
3465 (WebCore::PlatformMessagePortChannel::closeInternal):
3466 * dom/default/PlatformMessagePortChannel.h:
3467 * loader/icon/IconDatabase.cpp:
3468 (WebCore::IconDatabase::removeAllIcons):
3469 (WebCore::IconDatabase::synchronousIconForPageURL):
3470 (WebCore::IconDatabase::synchronousNativeIconForPageURL):
3471 (WebCore::IconDatabase::synchronousIconURLForPageURL):
3472 (WebCore::IconDatabase::retainIconForPageURL):
3473 (WebCore::IconDatabase::performRetainIconForPageURL):
3474 (WebCore::IconDatabase::releaseIconForPageURL):