[iOS] Upstream WebCore/platform changes
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 9 Jan 2014 22:59:07 +0000 (22:59 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 9 Jan 2014 22:59:07 +0000 (22:59 +0000)
https://bugs.webkit.org/show_bug.cgi?id=126654

Rubber-stamped by David Kilzer.

Source/WebCore:

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/ContentFilter.h:
* platform/DragData.h:
* platform/FileChooser.cpp:
(WebCore::FileChooser::chooseMediaFiles):
* platform/FileChooser.h:
* platform/FileSystem.cpp:
(WebCore::setMetadataURL):
* platform/FileSystem.h:
* platform/KillRingNone.cpp:
* platform/LocalizedStrings.cpp:
(WebCore::fileButtonChooseMediaFileLabel):
(WebCore::fileButtonChooseMultipleMediaFilesLabel):
(WebCore::fileButtonNoMediaFileSelectedLabel):
(WebCore::fileButtonNoMediaFilesSelectedLabel):
* platform/LocalizedStrings.h:
* platform/Logging.h:
* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializeSupportedNonImageMimeTypes):
(WebCore::initializeUnsupportedTextMIMETypes):
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::MemoryPressureHandler):
* platform/MemoryPressureHandler.h:
* platform/PlatformKeyboardEvent.h:
(WebCore::PlatformKeyboardEvent::event):
* platform/PlatformMouseEvent.h:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/PlatformScreen.h:
* platform/RuntimeApplicationChecks.cpp:
(WebCore::mainBundleIsEqualTo):
* platform/RuntimeApplicationChecksIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
* platform/RuntimeApplicationChecksIOS.mm: Added.
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::handleTouchEvent):
* platform/ScrollAnimator.h:
* platform/ScrollTypes.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::unscaledVisibleContentSize):
(WebCore::ScrollView::visibleContentRect):
* platform/ScrollView.h:
(WebCore::ScrollView::actualScrollX):
(WebCore::ScrollView::actualScrollY):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::handleTouchEvent):
(WebCore::ScrollableArea::isPinnedInBothDirections):
(WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
(WebCore::ScrollableArea::isPinnedVerticallyInDirection):
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::isTouchScrollable):
(WebCore::ScrollableArea::isOverflowScroll):
(WebCore::ScrollableArea::didStartScroll):
(WebCore::ScrollableArea::didEndScroll):
(WebCore::ScrollableArea::didUpdateScroll):
(WebCore::ScrollableArea::setIsUserScroll):
(WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition):
(WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition):
(WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
(WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
* platform/Scrollbar.cpp:
* platform/Scrollbar.h:
* platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::SharedBuffer):
(WebCore::SharedBuffer::createPurgeableBuffer):
(WebCore::SharedBuffer::data):
* platform/SharedBuffer.h:
(WebCore::SharedBuffer::shouldUsePurgeableMemory):
* platform/SuddenTermination.h:
* platform/Supplementable.h:
(WebCore::Supplementable::provideSupplement):
(WebCore::Supplementable::removeSupplement):
(WebCore::Supplementable::requireSupplement):
* platform/SystemMemory.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
* platform/ThreadCheck.h:
* platform/ThreadGlobalData.cpp:
(WebCore::ThreadGlobalData::ThreadGlobalData):
(WebCore::ThreadGlobalData::destroy):
(WebCore::ThreadGlobalData::setWebCoreThreadData):
(WebCore::threadGlobalData):
* platform/ThreadGlobalData.h:
* platform/ThreadTimers.cpp:
(WebCore::ThreadTimers::ThreadTimers):
(WebCore::ThreadTimers::sharedTimerFiredInternal):
* platform/Timer.cpp:
(WebCore::TimerBase::start):
(WebCore::TimerBase::stop):
(WebCore::TimerBase::setNextFireTime):
* platform/Timer.h:
(WebCore::TimerBase::isActive):
* platform/URL.cpp:
(WebCore::enableURLSchemeCanonicalization):
(WebCore::equal):
(WebCore::URL::parse):
* platform/URL.h:
* platform/Widget.h:
* platform/audio/ios/AudioDestinationIOS.cpp:
* platform/audio/ios/AudioDestinationIOS.h:
* platform/audio/ios/AudioFileReaderIOS.cpp: Copied from Source/WebCore/platform/audio/mac/AudioFileReaderMac.cpp.
(WebCore::createAudioBufferList):
(WebCore::destroyAudioBufferList):
(WebCore::AudioFileReader::AudioFileReader):
(WebCore::AudioFileReader::~AudioFileReader):
(WebCore::AudioFileReader::readProc):
(WebCore::AudioFileReader::getSizeProc):
(WebCore::AudioFileReader::createBus):
(WebCore::createBusFromAudioFile):
(WebCore::createBusFromInMemoryAudioFile):
* platform/audio/ios/AudioFileReaderIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
(WebCore::AudioFileReader::data):
(WebCore::AudioFileReader::dataSize):
* platform/audio/ios/AudioSessionIOS.mm:
(SOFT_LINK_POINTER):
(-[WebAudioSessionHelper initWithCallback:WebCore::]):
(-[WebAudioSessionHelper dealloc]):
(-[WebAudioSessionHelper interruption:]):
(WebCore::AudioSession::setCategory):
* platform/audio/mac/AudioDestinationMac.cpp:
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::AudioFileReader):
(WebCore::createBusFromAudioFile):
(WebCore::createBusFromInMemoryAudioFile):
* platform/audio/mac/AudioSessionMac.cpp:
* platform/audio/mac/MediaSessionManagerMac.cpp:
(MediaSessionManager::updateSessionState):
* platform/cf/SharedBufferCF.cpp:
(WebCore::SharedBuffer::SharedBuffer):
* platform/cf/URLCF.cpp:
* platform/cocoa/KeyEventCocoa.mm:
(WebCore::windowsKeyCodeForCharCode):
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::destroyDecodedDataIfNecessary):
(WebCore::BitmapImage::cacheFrame):
(WebCore::BitmapImage::cacheFrameInfo):
(WebCore::BitmapImage::updateSize):
(WebCore::BitmapImage::originalSize):
(WebCore::BitmapImage::originalSizeRespectingOrientation):
(WebCore::BitmapImage::dataChanged):
(WebCore::BitmapImage::ensureFrameInfoIsCached):
(WebCore::BitmapImage::frameAtIndex):
(WebCore::BitmapImage::frameIsCompleteAtIndex):
(WebCore::BitmapImage::frameDurationAtIndex):
(WebCore::BitmapImage::frameHasAlphaAtIndex):
(WebCore::BitmapImage::frameOrientationAtIndex):
(WebCore::BitmapImage::startAnimation):
(WebCore::BitmapImage::internalAdvanceAnimation):
* platform/graphics/BitmapImage.h:
(WebCore::FrameData::FrameData):
* platform/graphics/Color.cpp:
(WebCore::Color::isDark):
* platform/graphics/Color.h:
* platform/graphics/DisplayRefreshMonitor.h:
* platform/graphics/FloatPoint.h:
* platform/graphics/FloatRect.h:
* platform/graphics/FloatSize.h:
* platform/graphics/Font.cpp:
(WebCore::Font::drawText):
(WebCore::Font::width):
* platform/graphics/Font.h:
* platform/graphics/FontCache.cpp:
(initFontCacheLockOnce):
(FontLocker::FontLocker):
(FontLocker::~FontLocker):
(WebCore::fontCache):
(WebCore::FontCache::getCachedFontPlatformData):
(WebCore::FontCache::getCachedFontData):
(WebCore::FontCache::releaseFontData):
(WebCore::FontCache::purgeInactiveFontDataIfNeeded):
(WebCore::FontCache::purgeInactiveFontData):
* platform/graphics/FontCache.h:
* platform/graphics/FontFastPath.cpp:
(WebCore::Font::drawSimpleText):
(WebCore::Font::drawGlyphBuffer):
* platform/graphics/FontGlyphs.h:
* platform/graphics/FontPlatformData.cpp:
(WebCore::FontPlatformData::FontPlatformData):
* platform/graphics/FontPlatformData.h:
(WebCore::FontPlatformData::font):
(WebCore::FontPlatformData::roundsGlyphAdvances):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::hashTableDeletedFontValue):
* platform/graphics/GlyphPageTreeNode.cpp:
(WebCore::GlyphPageTreeNode::initializePage):
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::GraphicsContext):
(WebCore::GraphicsContext::drawRaisedEllipse):
(WebCore::GraphicsContext::drawText):
(WebCore::GraphicsContext::drawBidiText):
(WebCore::GraphicsContext::clipRoundedRect):
(WebCore::GraphicsContext::emojiDrawingEnabled):
(WebCore::GraphicsContext::setEmojiDrawingEnabled):
* platform/graphics/GraphicsContext.h:
(WebCore::GraphicsContextState::GraphicsContextState):
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::willBeDestroyed):
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::contentsLayerForMedia):
(WebCore::GraphicsLayer::pixelAlignmentOffset):
(WebCore::GraphicsLayer::hasFlattenedPerspectiveTransform):
* platform/graphics/Icon.h:
* platform/graphics/Image.cpp:
(WebCore::Image::drawTiled):
* platform/graphics/ImageSource.h:
(WebCore::ImageSource::isSubsampled):
* platform/graphics/IntPoint.h:
* platform/graphics/IntRect.h:
* platform/graphics/IntSize.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::installedMediaEngines):
(WebCore::MediaPlayer::isCurrentPlaybackTargetWireless):
(WebCore::MediaPlayer::showPlaybackTargetPicker):
(WebCore::MediaPlayer::hasWirelessPlaybackTargets):
(WebCore::MediaPlayer::wirelessVideoPlaybackDisabled):
(WebCore::MediaPlayer::setWirelessVideoPlaybackDisabled):
(WebCore::MediaPlayer::setHasPlaybackTargetAvailabilityListeners):
(WebCore::MediaPlayer::currentPlaybackTargetIsWirelessChanged):
(WebCore::MediaPlayer::playbackTargetAvailabilityChanged):
(WebCore::MediaPlayer::attributeChanged):
(WebCore::MediaPlayer::readyForPlayback):
(WebCore::MediaPlayer::volumeChanged):
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerCurrentPlaybackTargetIsWirelessChanged):
(WebCore::MediaPlayerClient::mediaPlayerPlaybackTargetAvailabilityChanged):
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::volume):
(WebCore::MediaPlayerPrivateInterface::isCurrentPlaybackTargetWireless):
(WebCore::MediaPlayerPrivateInterface::showPlaybackTargetPicker):
(WebCore::MediaPlayerPrivateInterface::hasWirelessPlaybackTargets):
(WebCore::MediaPlayerPrivateInterface::wirelessVideoPlaybackDisabled):
(WebCore::MediaPlayerPrivateInterface::setWirelessVideoPlaybackDisabled):
(WebCore::MediaPlayerPrivateInterface::setHasPlaybackTargetAvailabilityListeners):
(WebCore::MediaPlayerPrivateInterface::attributeChanged):
(WebCore::MediaPlayerPrivateInterface::readyForPlayback):
* platform/graphics/SimpleFontData.cpp:
(WebCore::SimpleFontData::SimpleFontData):
* platform/graphics/SimpleFontData.h:
* platform/graphics/StringTruncator.cpp:
(WebCore::centerTruncateToBuffer):
(WebCore::rightTruncateToBuffer):
(WebCore::rightClipToCharacterBuffer):
(WebCore::rightClipToWordBuffer):
(WebCore::leftTruncateToBuffer):
(WebCore::truncateString):
(WebCore::StringTruncator::centerTruncate):
(WebCore::StringTruncator::rightTruncate):
(WebCore::StringTruncator::leftTruncate):
(WebCore::StringTruncator::rightClipToCharacter):
(WebCore::StringTruncator::rightClipToWord):
* platform/graphics/StringTruncator.h:
* platform/graphics/TextTrackRepresentation.cpp:
* platform/graphics/WidthIterator.h:
(WebCore::WidthIterator::supportsTypesettingFeatures):
* platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:
(WebCore::AVTrackPrivateAVFObjCImpl::label):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):
(WebCore::wkAVAssetResolvedURL):
* platform/graphics/blackberry/FontBlackBerry.cpp:
(WebCore::Font::drawComplexText):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::supportsAcceleratedFilterAnimations):
(WebCore::GraphicsLayerCA::setContentsToImage):
(WebCore::GraphicsLayerCA::contentsLayerForMedia):
(WebCore::GraphicsLayerCA::computeVisibleRect):
(WebCore::GraphicsLayerCA::updateGeometry):
(WebCore::GraphicsLayerCA::ensureStructuralLayer):
(WebCore::GraphicsLayerCA::updateContentsRects):
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
(WebCore::GraphicsLayerCA::setupContentsLayer):
(WebCore::GraphicsLayerCA::mediaLayerMustBeUpdatedOnMainThread):
(WebCore::GraphicsLayerCA::computePixelAlignment):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/PlatformCAFilters.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
(WebCore::currentRunLoop):
(WebCore::LayerFlushScheduler::schedule):
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(-[WebAnimationDelegate animationDidStart:]):
(PlatformCALayerMac::setContentsScale):
(PlatformCALayer::isWebLayer):
(PlatformCALayer::setBoundsOnMainThread):
(PlatformCALayer::setPositionOnMainThread):
(PlatformCALayer::setAnchorPointOnMainThread):
(PlatformCALayer::setTileSize):
* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::platformCALayerPaintContents):
(WebCore::TileController::removeAllTiles):
(WebCore::TileController::removeAllSecondaryTiles):
(WebCore::TileController::removeTilesInCohort):
(WebCore::TileController::revalidateTiles):
(WebCore::TileController::createTileLayer):
* platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
(WebCore::Font::drawComplexText):
* platform/graphics/cg/BitmapImageCG.cpp:
(WebCore::FrameData::clear):
(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::checkForSolidColor):
(WebCore::BitmapImage::draw):
(WebCore::BitmapImage::copyUnscaledFrameAtIndex):
* platform/graphics/cg/ColorCG.cpp:
(WebCore::createCGColorWithDeviceWhite):
(WebCore::createCGColorWithDeviceRGBA):
(WebCore::Color::Color):
* platform/graphics/cg/FloatPointCG.cpp:
* platform/graphics/cg/FloatRectCG.cpp:
* platform/graphics/cg/FloatSizeCG.cpp:
* platform/graphics/cg/GradientCG.cpp:
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::sRGBColorSpaceRef):
(WebCore::setStrokeAndFillColor):
(WebCore::GraphicsContext::platformInit):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::createIOSurface):
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::draw):
(WebCore::jpegUTI):
(WebCore::utiFromMIMEType):
* platform/graphics/cg/ImageBufferDataCG.cpp:
(WebCore::ImageBufferData::getData):
(WebCore::ImageBufferData::putData):
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/cg/ImageCG.cpp:
(WebCore::drawPatternCallback):
(WebCore::Image::drawPattern):
* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::ImageSource):
(WebCore::imageSourceOptions):
(WebCore::ImageSource::imageSourceOptions):
(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::originalSize):
(WebCore::ImageSource::createFrameAtIndex):
* platform/graphics/cg/ImageSourceCGMac.mm:
* platform/graphics/cg/IntPointCG.cpp:
* platform/graphics/cg/IntRectCG.cpp:
* platform/graphics/cg/IntSizeCG.cpp:
* platform/graphics/cg/PDFDocumentImage.cpp:
* platform/graphics/cg/PathCG.cpp:
* platform/graphics/cg/PatternCG.cpp:
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::~FontPlatformData):
(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
(WebCore::FontPlatformData::platformIsEqual):
(WebCore::FontPlatformData::setFont):
(WebCore::FontPlatformData::allowsLigatures):
(WebCore::FontPlatformData::ctFont):
* platform/graphics/ios/DisplayRefreshMonitorIOS.mm: Added.
(WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
(WebCore::DisplayRefreshMonitor::requestRefreshCallback):
(WebCore::DisplayRefreshMonitor::displayLinkFired):
* platform/graphics/ios/FontCacheIOS.mm: Added.
* platform/graphics/ios/FontServicesIOS.h: Added.
* platform/graphics/ios/FontServicesIOS.mm: Added.
(WebCore::FontServicesIOS::FontServicesIOS):
* platform/graphics/ios/GraphicsContext3DIOS.h: Added.
* platform/graphics/ios/IconIOS.mm: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.cpp.
* platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h: Copied from Source/WebCore/platform/graphics/cg/ImageBufferDataCG.h.
(WebCore::InbandTextTrackPrivateAVFIOS::create):
(WebCore::InbandTextTrackPrivateAVFIOS::internalID):
* platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm: Copied from Source/WebCore/platform/graphics/mac/IntRectMac.mm.
(WebCore::InbandTextTrackPrivateAVFIOS::InbandTextTrackPrivateAVFIOS):
(WebCore::InbandTextTrackPrivateAVFIOS::~InbandTextTrackPrivateAVFIOS):
(WebCore::InbandTextTrackPrivateAVFIOS::kind):
* platform/graphics/ios/MediaPlayerPrivateIOS.h: Added.
* platform/graphics/ios/MediaPlayerPrivateIOS.mm: Added.
* platform/graphics/ios/SimpleFontDataIOS.mm: Added.
(WebCore::fontFamilyShouldNotBeUsedForArabic):
(WebCore::fontHasVerticalGlyphs):
(WebCore::SimpleFontData::platformInit):
(WebCore::SimpleFontData::platformCharWidthInit):
(WebCore::SimpleFontData::platformCreateScaledFontData):
(WebCore::SimpleFontData::containsCharacters):
(WebCore::SimpleFontData::determinePitch):
(WebCore::SimpleFontData::platformWidthForGlyph):
* platform/graphics/ios/TextTrackRepresentationIOS.h: Copied from Source/WebCore/platform/graphics/TextTrackRepresentation.cpp.
* platform/graphics/ios/TextTrackRepresentationIOS.mm: Added.
* platform/graphics/mac/ColorMac.h:
* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::adjustGlyphsAndAdvances):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
* platform/graphics/mac/FloatPointMac.mm:
* platform/graphics/mac/FloatRectMac.mm:
* platform/graphics/mac/FloatSizeMac.mm:
* platform/graphics/mac/FontCacheMac.mm:
* platform/graphics/mac/FontComplexTextMac.cpp:
(WebCore::Font::drawComplexText):
(WebCore::Font::fontDataForCombiningCharacterSequence):
* platform/graphics/mac/FontCustomPlatformData.cpp:
* platform/graphics/mac/FontMac.mm:
(WebCore::showLetterpressedGlyphsWithAdvances):
(WebCore::Font::drawGlyphs):
* platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
(WebCore::GlyphPage::fill):
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable):
(WebCore::GraphicsContext3D::makeContextCurrent):
(WebCore::GraphicsContext3D::endPaint):
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawFocusRing):
(WebCore::createDotPattern):
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/mac/IconMac.mm:
* platform/graphics/mac/ImageMac.mm:
(WebCore::BitmapImage::invalidatePlatformData):
* platform/graphics/mac/IntPointMac.mm:
* platform/graphics/mac/IntRectMac.mm:
* platform/graphics/mac/IntSizeMac.mm:
* platform/graphics/mac/MediaPlayerProxy.h:
* platform/graphics/mac/SimpleFontDataCoreText.cpp:
* platform/graphics/mac/SimpleFontDataMac.mm:
* platform/graphics/mac/WebGLLayer.h:
* platform/graphics/mac/WebGLLayer.mm:
(-[WebGLLayer copyImageSnapshotWithColorSpace:]):
(-[WebGLLayer display]):
* platform/graphics/mac/WebLayer.mm:
(WebCore::drawLayerContents):
(-[WebSimpleLayer display]):
(-[WebSimpleLayer drawInContext:]):
* platform/graphics/mac/WebTiledLayer.mm:
(+[WebTiledLayer shouldDrawOnMainThread]):
(-[WebTiledLayer display]):
(-[WebTiledLayer drawInContext:]):
* platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::blitFramebuffer):
(WebCore::Extensions3DOpenGL::bindVertexArrayOES):
(WebCore::Extensions3DOpenGL::supportsExtension):
(WebCore::Extensions3DOpenGL::drawBuffersEXT):
* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
(WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary):
(WebCore::GraphicsContext3D::renderbufferStorage):
(WebCore::GraphicsContext3D::getIntegerv):
(WebCore::GraphicsContext3D::texImage2D):
(WebCore::GraphicsContext3D::depthRange):
(WebCore::GraphicsContext3D::clearDepth):
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::multiply):
* platform/graphics/win/FontWin.cpp:
(WebCore::Font::drawComplexText):
* platform/graphics/wince/FontWinCE.cpp:
(WebCore::Font::drawComplexText):
* platform/ios/ContentFilterIOS.mm: Copied from Source/WebCore/platform/ContentFilter.h.
* platform/ios/DeviceMotionClientIOS.h: Added.
(WebCore::DeviceMotionClientIOS::create):
* platform/ios/DeviceMotionClientIOS.mm: Added.
* platform/ios/DeviceOrientationClientIOS.h: Added.
(WebCore::DeviceOrientationClientIOS::create):
* platform/ios/DeviceOrientationClientIOS.mm: Added.
* platform/ios/KeyEventIOS.mm:
* platform/ios/MIMETypeRegistryIOS.mm: Copied from Source/WebCore/platform/network/mac/CredentialStorageMac.mm.
* platform/ios/MemoryPressureHandlerIOS.mm: Added.
* platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::resourceMIMEType):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::read):
(WebCore::supportedImageTypes):
(WebCore::Pasteboard::supportedPasteboardTypes):
(WebCore::Pasteboard::hasData):
(WebCore::Pasteboard::readString):
* platform/ios/PlatformEventFactoryIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
* platform/ios/PlatformEventFactoryIOS.mm: Added.
* platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::write):
* platform/ios/PlatformScreenIOS.mm: Added.
* platform/ios/PlatformSpeechSynthesizerIOS.mm: Added.
* platform/ios/SSLKeyGeneratorIOS.cpp: Added.
* platform/ios/ScrollAnimatorIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
* platform/ios/ScrollAnimatorIOS.mm: Added.
* platform/ios/ScrollViewIOS.mm: Added.
* platform/ios/ScrollbarThemeIOS.h: Added.
* platform/ios/ScrollbarThemeIOS.mm: Added.
* platform/ios/SelectionRect.cpp: Added.
* platform/ios/SelectionRect.h: Added.
* platform/ios/SoundIOS.mm: Copied from Source/WebCore/platform/text/mac/CharsetData.h.
* platform/ios/SystemMemoryIOS.cpp: Added.
* platform/ios/ThemeIOS.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
* platform/ios/ThemeIOS.mm: Copied from Source/WebCore/platform/KillRingNone.cpp.
* platform/ios/TileCache.h: Added.
(WebCore::TileCache::isSpeculativeTileCreationEnabled):
* platform/ios/TileCache.mm: Added.
* platform/ios/TileGrid.h: Added.
* platform/ios/TileGrid.mm: Added.
* platform/ios/TileGridTile.h: Copied from Source/WebCore/platform/ContentFilter.h.
* platform/ios/TileGridTile.mm: Added.
* platform/ios/TileLayer.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
* platform/ios/TileLayer.mm: Added.
* platform/ios/TileLayerPool.mm: Added.
* platform/ios/WebCoreMotionManager.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
* platform/ios/WebCoreMotionManager.mm: Added.
* platform/ios/WebCoreSystemInterfaceIOS.h: Added.
* platform/ios/WebCoreSystemInterfaceIOS.mm: Added.
* platform/ios/WebEvent.h: Added.
* platform/ios/WebEvent.mm: Added.
* platform/ios/WidgetIOS.mm: Added.
* platform/mac/DisplaySleepDisabler.cpp:
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
* platform/mac/DisplaySleepDisabler.h:
* platform/mac/FileSystemMac.mm:
* platform/mac/KillRingMac.mm:
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::install):
(WebCore::MemoryPressureHandler::releaseMemory):
* platform/mac/PlatformClockCM.mm:
(PlatformClockCM::PlatformClockCM):
* platform/mac/SoftLinking.h:
* platform/mac/SystemVersionMac.mm:
* platform/mac/WebCoreFullScreenPlaceholderView.h:
* platform/mac/WebCoreFullScreenPlaceholderView.mm:
* platform/mac/WebCoreFullScreenWarningView.h:
* platform/mac/WebCoreFullScreenWarningView.mm:
* platform/mac/WebCoreFullScreenWindow.h:
* platform/mac/WebCoreFullScreenWindow.mm:
* platform/mac/WebCoreNSCellExtras.h:
* platform/mac/WebCoreNSCellExtras.m:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebFontCache.mm:
(+[WebFontCache fontWithFamily:traits:size:]):
* platform/network/BlobRegistry.cpp:
* platform/network/BlobRegistryImpl.cpp:
* platform/network/Credential.h:
* platform/network/CredentialStorage.cpp:
(WebCore::CredentialStorage::set):
(WebCore::CredentialStorage::clearCredentials):
* platform/network/CredentialStorage.h:
* platform/network/NetworkStateNotifier.h:
* platform/network/ResourceHandle.cpp:
(WebCore::builtinResourceHandleConstructorMap):
(WebCore::ResourceHandle::continueWillSendRequest):
(WebCore::ResourceHandle::continueDidReceiveResponse):
(WebCore::ResourceHandle::continueShouldUseCredentialStorage):
(WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::setDefaultAllowCookies):
(WebCore::ResourceRequestBase::defaultAllowCookies):
* platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::ResourceRequestBase):
* platform/network/cf/CredentialStorageCFNet.cpp:
(WebCore::CredentialStorage::saveToPersistentStorage):
* platform/network/cf/DNSCFNet.cpp:
* platform/network/cf/ProxyServerCFNet.cpp:
* platform/network/cf/ResourceRequest.h:
(WebCore::ResourceRequest::ResourceRequest):
(WebCore::ResourceRequest::setMainResourceRequest):
(WebCore::ResourceRequest::isMainResourceRequest):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::applyWebArchiveHackForMail):
(WebCore::initializeHTTPConnectionSettingsOnStartup):
* platform/network/cf/SocketStreamHandleCFNet.cpp:
(WebCore::SocketStreamHandle::reportErrorToClient):
* platform/network/ios/NetworkStateNotifierIOS.cpp: Copied from Source/WebCore/platform/KillRingNone.cpp.
(WebCore::NetworkStateNotifier::NetworkStateNotifier):
(WebCore::NetworkStateNotifier::setIsOnLine):
* platform/network/ios/QuickLook.h: Added.
* platform/network/ios/QuickLook.mm: Added.
* platform/network/ios/ResourceHandleIOS.mm: Added.
* platform/network/ios/WebCoreURLResponseIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
* platform/network/ios/WebCoreURLResponseIOS.mm: Added.
* platform/network/mac/AuthenticationMac.mm:
(WebCore::mac):
* platform/network/mac/CredentialStorageMac.mm:
(WebCore::CredentialStorage::saveToPersistentStorage):
* platform/network/mac/ResourceErrorMac.mm:
(dictionaryThatCanCode):
(-[WebCustomNSURLError encodeWithCoder:]):
(NSErrorFromCFError):
(WebCore::ResourceError::nsError):
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::synchronousWillSendRequestEnabled):
(WebCore::ResourceHandle::createNSURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::schedule):
(WebCore::ResourceHandle::unschedule):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::ResourceRequest):
(WebCore::ResourceRequest::updateNSURLRequest):
(WebCore::ResourceRequest::applyWebArchiveHackForMail):
(WebCore::ResourceRequest::useQuickLookResourceCachingQuirks):
* platform/network/mac/UTIUtilities.mm:
* platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
(-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
(-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
(-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
(-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
(-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
(-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
* platform/sql/SQLiteDatabase.h:
(WebCore::SQLiteDatabase::sqlite3Handle):
* platform/sql/SQLiteFileSystem.cpp:
(WebCore::SQLiteFileSystem::truncateDatabaseFile):
* platform/sql/SQLiteFileSystem.h:
* platform/sql/SQLiteTransaction.cpp:
(WebCore::SQLiteTransaction::begin):
(WebCore::SQLiteTransaction::commit):
(WebCore::SQLiteTransaction::rollback):
(WebCore::SQLiteTransaction::stop):
* platform/sql/ios/SQLiteDatabaseTracker.cpp: Added.
* platform/sql/ios/SQLiteDatabaseTracker.h: Copied from Source/WebCore/platform/MemoryPressureHandler.cpp.
* platform/sql/ios/SQLiteDatabaseTrackerClient.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
* platform/text/PlatformLocale.cpp:
* platform/text/PlatformLocale.h:
* platform/text/TextBreakIteratorICU.cpp:
(WebCore::cursorMovementIterator):
* platform/text/TextCodecICU.cpp:
(WebCore::TextCodecICU::registerEncodingNames):
(WebCore::TextCodecICU::registerCodecs):
* platform/text/TextEncodingRegistry.cpp:
(WebCore::extendTextCodecMaps):
* platform/text/cf/HyphenationCF.cpp:
(WebCore::canHyphenate):
* platform/text/ios/LocalizedDateCache.h: Copied from Source/WebCore/platform/MemoryPressureHandler.h.
* platform/text/ios/LocalizedDateCache.mm: Added.
* platform/text/mac/CharsetData.h:
* platform/text/mac/LocaleMac.h:
* platform/text/mac/LocaleMac.mm:
(WebCore::LocaleMac::formatDateTime):
(WebCore::LocaleMac::maximumWidthForDateType):
* platform/text/mac/TextBoundaries.mm:
(WebCore::isSkipCharacter):
(WebCore::isWhitespaceCharacter):
(WebCore::isWordDelimitingCharacter):
(WebCore::isSymbolCharacter):
(WebCore::isAmbiguousBoundaryCharacter):
(WebCore::tokenizerForString):
(WebCore::findSimpleWordBoundary):
(WebCore::findComplexWordBoundary):
(WebCore::findWordBoundary):
(WebCore::findNextWordFromIndex):
* platform/text/mac/TextCodecMac.cpp:
* platform/text/mac/TextCodecMac.h:

Source/WTF:

* wtf/MainThread.cpp:
(WTF::canAccessThreadLocalDataForThread):
* wtf/MainThread.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161589 268f45cc-cd09-0410-ab3c-d52691b4dbfc

283 files changed:
Source/WTF/ChangeLog
Source/WTF/wtf/MainThread.cpp
Source/WTF/wtf/MainThread.h
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/platform/ContentFilter.h
Source/WebCore/platform/DragData.h
Source/WebCore/platform/FileChooser.cpp
Source/WebCore/platform/FileChooser.h
Source/WebCore/platform/FileSystem.cpp
Source/WebCore/platform/FileSystem.h
Source/WebCore/platform/KillRingNone.cpp
Source/WebCore/platform/LocalizedStrings.cpp
Source/WebCore/platform/LocalizedStrings.h
Source/WebCore/platform/Logging.h
Source/WebCore/platform/MIMETypeRegistry.cpp
Source/WebCore/platform/MemoryPressureHandler.cpp
Source/WebCore/platform/MemoryPressureHandler.h
Source/WebCore/platform/PlatformKeyboardEvent.h
Source/WebCore/platform/PlatformMouseEvent.h
Source/WebCore/platform/PlatformScreen.h
Source/WebCore/platform/RuntimeApplicationChecks.cpp
Source/WebCore/platform/RuntimeApplicationChecksIOS.h [new file with mode: 0644]
Source/WebCore/platform/RuntimeApplicationChecksIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ScrollAnimator.cpp
Source/WebCore/platform/ScrollAnimator.h
Source/WebCore/platform/ScrollTypes.h
Source/WebCore/platform/ScrollView.cpp
Source/WebCore/platform/ScrollView.h
Source/WebCore/platform/ScrollableArea.cpp
Source/WebCore/platform/ScrollableArea.h
Source/WebCore/platform/Scrollbar.cpp
Source/WebCore/platform/Scrollbar.h
Source/WebCore/platform/SharedBuffer.cpp
Source/WebCore/platform/SharedBuffer.h
Source/WebCore/platform/SuddenTermination.h
Source/WebCore/platform/Supplementable.h
Source/WebCore/platform/SystemMemory.h [new file with mode: 0644]
Source/WebCore/platform/ThreadCheck.h
Source/WebCore/platform/ThreadGlobalData.cpp
Source/WebCore/platform/ThreadGlobalData.h
Source/WebCore/platform/ThreadTimers.cpp
Source/WebCore/platform/Timer.cpp
Source/WebCore/platform/Timer.h
Source/WebCore/platform/URL.cpp
Source/WebCore/platform/URL.h
Source/WebCore/platform/Widget.h
Source/WebCore/platform/audio/ios/AudioDestinationIOS.cpp
Source/WebCore/platform/audio/ios/AudioDestinationIOS.h
Source/WebCore/platform/audio/ios/AudioFileReaderIOS.cpp [new file with mode: 0644]
Source/WebCore/platform/audio/ios/AudioFileReaderIOS.h [new file with mode: 0644]
Source/WebCore/platform/audio/ios/AudioSessionIOS.mm
Source/WebCore/platform/audio/mac/AudioDestinationMac.cpp
Source/WebCore/platform/audio/mac/AudioFileReaderMac.cpp
Source/WebCore/platform/audio/mac/AudioSessionMac.cpp
Source/WebCore/platform/audio/mac/MediaSessionManagerMac.cpp
Source/WebCore/platform/cf/SharedBufferCF.cpp
Source/WebCore/platform/cf/URLCF.cpp
Source/WebCore/platform/cocoa/KeyEventCocoa.mm
Source/WebCore/platform/graphics/BitmapImage.cpp
Source/WebCore/platform/graphics/BitmapImage.h
Source/WebCore/platform/graphics/Color.cpp
Source/WebCore/platform/graphics/Color.h
Source/WebCore/platform/graphics/DisplayRefreshMonitor.h
Source/WebCore/platform/graphics/FloatPoint.h
Source/WebCore/platform/graphics/FloatRect.h
Source/WebCore/platform/graphics/FloatSize.h
Source/WebCore/platform/graphics/Font.cpp
Source/WebCore/platform/graphics/Font.h
Source/WebCore/platform/graphics/FontCache.cpp
Source/WebCore/platform/graphics/FontCache.h
Source/WebCore/platform/graphics/FontFastPath.cpp
Source/WebCore/platform/graphics/FontGlyphs.h
Source/WebCore/platform/graphics/FontPlatformData.cpp
Source/WebCore/platform/graphics/FontPlatformData.h
Source/WebCore/platform/graphics/GlyphPageTreeNode.cpp
Source/WebCore/platform/graphics/GraphicsContext.cpp
Source/WebCore/platform/graphics/GraphicsContext.h
Source/WebCore/platform/graphics/GraphicsContext3D.h
Source/WebCore/platform/graphics/GraphicsLayer.cpp
Source/WebCore/platform/graphics/GraphicsLayer.h
Source/WebCore/platform/graphics/Icon.h
Source/WebCore/platform/graphics/Image.cpp
Source/WebCore/platform/graphics/ImageSource.h
Source/WebCore/platform/graphics/IntPoint.h
Source/WebCore/platform/graphics/IntRect.h
Source/WebCore/platform/graphics/IntSize.h
Source/WebCore/platform/graphics/MediaPlayer.cpp
Source/WebCore/platform/graphics/MediaPlayer.h
Source/WebCore/platform/graphics/MediaPlayerPrivate.h
Source/WebCore/platform/graphics/SimpleFontData.cpp
Source/WebCore/platform/graphics/SimpleFontData.h
Source/WebCore/platform/graphics/StringTruncator.cpp
Source/WebCore/platform/graphics/StringTruncator.h
Source/WebCore/platform/graphics/TextTrackRepresentation.cpp
Source/WebCore/platform/graphics/WidthIterator.h
Source/WebCore/platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
Source/WebCore/platform/graphics/blackberry/FontBlackBerry.cpp
Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h
Source/WebCore/platform/graphics/ca/PlatformCAFilters.h
Source/WebCore/platform/graphics/ca/PlatformCALayer.h
Source/WebCore/platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp
Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm
Source/WebCore/platform/graphics/ca/mac/TileController.mm
Source/WebCore/platform/graphics/cairo/FontCairoHarfbuzzNG.cpp
Source/WebCore/platform/graphics/cg/BitmapImageCG.cpp
Source/WebCore/platform/graphics/cg/ColorCG.cpp
Source/WebCore/platform/graphics/cg/FloatPointCG.cpp
Source/WebCore/platform/graphics/cg/FloatRectCG.cpp
Source/WebCore/platform/graphics/cg/FloatSizeCG.cpp
Source/WebCore/platform/graphics/cg/GradientCG.cpp
Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp
Source/WebCore/platform/graphics/cg/ImageBufferCG.cpp
Source/WebCore/platform/graphics/cg/ImageBufferDataCG.cpp
Source/WebCore/platform/graphics/cg/ImageBufferDataCG.h
Source/WebCore/platform/graphics/cg/ImageCG.cpp
Source/WebCore/platform/graphics/cg/ImageSourceCG.cpp
Source/WebCore/platform/graphics/cg/ImageSourceCGMac.mm
Source/WebCore/platform/graphics/cg/IntPointCG.cpp
Source/WebCore/platform/graphics/cg/IntRectCG.cpp
Source/WebCore/platform/graphics/cg/IntSizeCG.cpp
Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp
Source/WebCore/platform/graphics/cg/PathCG.cpp
Source/WebCore/platform/graphics/cg/PatternCG.cpp
Source/WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm
Source/WebCore/platform/graphics/ios/DisplayRefreshMonitorIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/FontCacheIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/FontServicesIOS.h [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/FontServicesIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/GraphicsContext3DIOS.h [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/IconIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/MediaPlayerPrivateIOS.h [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/MediaPlayerPrivateIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/SimpleFontDataIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/TextTrackRepresentationIOS.h [new file with mode: 0644]
Source/WebCore/platform/graphics/ios/TextTrackRepresentationIOS.mm [new file with mode: 0644]
Source/WebCore/platform/graphics/mac/ColorMac.h
Source/WebCore/platform/graphics/mac/ComplexTextController.cpp
Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.mm
Source/WebCore/platform/graphics/mac/FloatPointMac.mm
Source/WebCore/platform/graphics/mac/FloatRectMac.mm
Source/WebCore/platform/graphics/mac/FloatSizeMac.mm
Source/WebCore/platform/graphics/mac/FontCacheMac.mm
Source/WebCore/platform/graphics/mac/FontComplexTextMac.cpp
Source/WebCore/platform/graphics/mac/FontCustomPlatformData.cpp
Source/WebCore/platform/graphics/mac/FontMac.mm
Source/WebCore/platform/graphics/mac/GlyphPageTreeNodeMac.cpp
Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm
Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm
Source/WebCore/platform/graphics/mac/IconMac.mm
Source/WebCore/platform/graphics/mac/ImageMac.mm
Source/WebCore/platform/graphics/mac/IntPointMac.mm
Source/WebCore/platform/graphics/mac/IntRectMac.mm
Source/WebCore/platform/graphics/mac/IntSizeMac.mm
Source/WebCore/platform/graphics/mac/MediaPlayerProxy.h
Source/WebCore/platform/graphics/mac/SimpleFontDataCoreText.cpp
Source/WebCore/platform/graphics/mac/SimpleFontDataMac.mm
Source/WebCore/platform/graphics/mac/WebGLLayer.h
Source/WebCore/platform/graphics/mac/WebGLLayer.mm
Source/WebCore/platform/graphics/mac/WebLayer.mm
Source/WebCore/platform/graphics/mac/WebTiledLayer.mm
Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp
Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
Source/WebCore/platform/graphics/win/FontWin.cpp
Source/WebCore/platform/graphics/wince/FontWinCE.cpp
Source/WebCore/platform/ios/ContentFilterIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/DeviceMotionClientIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/DeviceMotionClientIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/DeviceOrientationClientIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/DeviceOrientationClientIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/KeyEventIOS.mm
Source/WebCore/platform/ios/MIMETypeRegistryIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/MemoryPressureHandlerIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/PasteboardIOS.mm
Source/WebCore/platform/ios/PlatformEventFactoryIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/PlatformEventFactoryIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/PlatformPasteboardIOS.mm
Source/WebCore/platform/ios/PlatformScreenIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/PlatformSpeechSynthesizerIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/SSLKeyGeneratorIOS.cpp [new file with mode: 0644]
Source/WebCore/platform/ios/ScrollAnimatorIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/ScrollAnimatorIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/ScrollViewIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/ScrollbarThemeIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/ScrollbarThemeIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/SelectionRect.cpp [new file with mode: 0644]
Source/WebCore/platform/ios/SelectionRect.h [new file with mode: 0644]
Source/WebCore/platform/ios/SoundIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/SystemMemoryIOS.cpp [new file with mode: 0644]
Source/WebCore/platform/ios/ThemeIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/ThemeIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/TileCache.h [new file with mode: 0644]
Source/WebCore/platform/ios/TileCache.mm [new file with mode: 0644]
Source/WebCore/platform/ios/TileGrid.h [new file with mode: 0644]
Source/WebCore/platform/ios/TileGrid.mm [new file with mode: 0644]
Source/WebCore/platform/ios/TileGridTile.h [new file with mode: 0644]
Source/WebCore/platform/ios/TileGridTile.mm [new file with mode: 0644]
Source/WebCore/platform/ios/TileLayer.h [new file with mode: 0644]
Source/WebCore/platform/ios/TileLayer.mm [new file with mode: 0644]
Source/WebCore/platform/ios/TileLayerPool.h [new file with mode: 0644]
Source/WebCore/platform/ios/TileLayerPool.mm [new file with mode: 0644]
Source/WebCore/platform/ios/WebCoreMotionManager.h [new file with mode: 0644]
Source/WebCore/platform/ios/WebCoreMotionManager.mm [new file with mode: 0644]
Source/WebCore/platform/ios/WebCoreSystemInterfaceIOS.h [new file with mode: 0644]
Source/WebCore/platform/ios/WebCoreSystemInterfaceIOS.mm [new file with mode: 0644]
Source/WebCore/platform/ios/WebEvent.h [new file with mode: 0644]
Source/WebCore/platform/ios/WebEvent.mm [new file with mode: 0644]
Source/WebCore/platform/ios/WidgetIOS.mm [new file with mode: 0644]
Source/WebCore/platform/mac/DisplaySleepDisabler.cpp
Source/WebCore/platform/mac/DisplaySleepDisabler.h
Source/WebCore/platform/mac/FileSystemMac.mm
Source/WebCore/platform/mac/KillRingMac.mm
Source/WebCore/platform/mac/MemoryPressureHandlerMac.mm
Source/WebCore/platform/mac/PlatformClockCM.mm
Source/WebCore/platform/mac/SoftLinking.h
Source/WebCore/platform/mac/SystemVersionMac.mm
Source/WebCore/platform/mac/WebCoreFullScreenPlaceholderView.h
Source/WebCore/platform/mac/WebCoreFullScreenPlaceholderView.mm
Source/WebCore/platform/mac/WebCoreFullScreenWarningView.h
Source/WebCore/platform/mac/WebCoreFullScreenWarningView.mm
Source/WebCore/platform/mac/WebCoreFullScreenWindow.h
Source/WebCore/platform/mac/WebCoreFullScreenWindow.mm
Source/WebCore/platform/mac/WebCoreNSCellExtras.h
Source/WebCore/platform/mac/WebCoreNSCellExtras.m
Source/WebCore/platform/mac/WebCoreSystemInterface.h
Source/WebCore/platform/mac/WebFontCache.mm
Source/WebCore/platform/network/BlobRegistry.cpp
Source/WebCore/platform/network/BlobRegistryImpl.cpp
Source/WebCore/platform/network/Credential.h
Source/WebCore/platform/network/CredentialStorage.cpp
Source/WebCore/platform/network/CredentialStorage.h
Source/WebCore/platform/network/NetworkStateNotifier.h
Source/WebCore/platform/network/ResourceHandle.cpp
Source/WebCore/platform/network/ResourceRequestBase.cpp
Source/WebCore/platform/network/ResourceRequestBase.h
Source/WebCore/platform/network/cf/CredentialStorageCFNet.cpp
Source/WebCore/platform/network/cf/DNSCFNet.cpp
Source/WebCore/platform/network/cf/ProxyServerCFNet.cpp
Source/WebCore/platform/network/cf/ResourceRequest.h
Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp
Source/WebCore/platform/network/cf/SocketStreamHandleCFNet.cpp
Source/WebCore/platform/network/ios/NetworkStateNotifierIOS.cpp [new file with mode: 0644]
Source/WebCore/platform/network/ios/QuickLook.h [new file with mode: 0644]
Source/WebCore/platform/network/ios/QuickLook.mm [new file with mode: 0644]
Source/WebCore/platform/network/ios/ResourceHandleIOS.mm [new file with mode: 0644]
Source/WebCore/platform/network/ios/WebCoreURLResponseIOS.h [new file with mode: 0644]
Source/WebCore/platform/network/ios/WebCoreURLResponseIOS.mm [new file with mode: 0644]
Source/WebCore/platform/network/mac/AuthenticationMac.mm
Source/WebCore/platform/network/mac/CredentialStorageMac.mm
Source/WebCore/platform/network/mac/ResourceErrorMac.mm
Source/WebCore/platform/network/mac/ResourceHandleMac.mm
Source/WebCore/platform/network/mac/ResourceRequestMac.mm
Source/WebCore/platform/network/mac/UTIUtilities.mm
Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm
Source/WebCore/platform/sql/SQLiteDatabase.h
Source/WebCore/platform/sql/SQLiteFileSystem.cpp
Source/WebCore/platform/sql/SQLiteFileSystem.h
Source/WebCore/platform/sql/SQLiteTransaction.cpp
Source/WebCore/platform/sql/ios/SQLiteDatabaseTracker.cpp [new file with mode: 0644]
Source/WebCore/platform/sql/ios/SQLiteDatabaseTracker.h [new file with mode: 0644]
Source/WebCore/platform/sql/ios/SQLiteDatabaseTrackerClient.h [new file with mode: 0644]
Source/WebCore/platform/text/PlatformLocale.cpp
Source/WebCore/platform/text/PlatformLocale.h
Source/WebCore/platform/text/TextBreakIteratorICU.cpp
Source/WebCore/platform/text/TextCodecICU.cpp
Source/WebCore/platform/text/TextEncodingRegistry.cpp
Source/WebCore/platform/text/cf/HyphenationCF.cpp
Source/WebCore/platform/text/ios/LocalizedDateCache.h [new file with mode: 0644]
Source/WebCore/platform/text/ios/LocalizedDateCache.mm [new file with mode: 0644]
Source/WebCore/platform/text/mac/CharsetData.h
Source/WebCore/platform/text/mac/LocaleMac.h
Source/WebCore/platform/text/mac/LocaleMac.mm
Source/WebCore/platform/text/mac/TextBoundaries.mm
Source/WebCore/platform/text/mac/TextCodecMac.cpp
Source/WebCore/platform/text/mac/TextCodecMac.h

index 3af4b32d3027ea9a6d60b2c03defeaea70848865..bf4226f4bcfc4a4bf3e99c9eb46e5f4affa7a78a 100644 (file)
@@ -1,3 +1,14 @@
+2014-01-09  Daniel Bates  <dabates@apple.com>
+
+        [iOS] Upstream WebCore/platform changes
+        https://bugs.webkit.org/show_bug.cgi?id=126654
+
+        Rubber-stamped by David Kilzer.
+
+        * wtf/MainThread.cpp:
+        (WTF::canAccessThreadLocalDataForThread):
+        * wtf/MainThread.h:
+
 2014-01-09  Commit Queue  <commit-queue@webkit.org>
 
         Unreviewed, rolling out r161540.
index 044a647209c742216603aeb7ac72f7d8e1eb6251..f572a3ff5b7a9288d04b0c128d58debf52307d2f 100644 (file)
@@ -266,6 +266,13 @@ bool isMainThread()
 }
 #endif
 
+#if !USE(WEB_THREAD)
+bool canAccessThreadLocalDataForThread(ThreadIdentifier threadId)
+{
+    return threadId == currentThread();
+}
+#endif
+
 #if ENABLE(PARALLEL_GC)
 static ThreadSpecific<bool>* isGCThread;
 #endif
index 50deb9a9d150b06413211d6aef62d37c0bc93f69..13f55204be4712f413a7ca68611ad7e2caa8d7b0 100644 (file)
@@ -55,13 +55,14 @@ WTF_EXPORT_PRIVATE void setMainThreadCallbacksPaused(bool paused);
 
 WTF_EXPORT_PRIVATE bool isMainThread();
 
+WTF_EXPORT_PRIVATE bool canAccessThreadLocalDataForThread(ThreadIdentifier);
+
 #if USE(WEB_THREAD)
 WTF_EXPORT_PRIVATE bool isWebThread();
 WTF_EXPORT_PRIVATE bool isUIThread();
 WTF_EXPORT_PRIVATE void initializeWebThread();
 WTF_EXPORT_PRIVATE void initializeApplicationUIThreadIdentifier();
 WTF_EXPORT_PRIVATE void initializeWebThreadIdentifier();
-WTF_EXPORT_PRIVATE bool canAccessThreadLocalDataForThread(ThreadIdentifier);
 void initializeWebThreadPlatform();
 #else
 inline bool isWebThread() { return isMainThread(); }
@@ -102,11 +103,13 @@ using WTF::cancelCallOnMainThread;
 using WTF::setMainThreadCallbacksPaused;
 using WTF::isMainThread;
 using WTF::isMainThreadOrGCThread;
+using WTF::canAccessThreadLocalDataForThread;
+using WTF::isUIThread;
+using WTF::isWebThread;
 #if USE(WEB_THREAD)
 using WTF::initializeWebThread;
 using WTF::initializeApplicationUIThreadIdentifier;
 using WTF::initializeWebThreadIdentifier;
-using WTF::canAccessThreadLocalDataForThread;
 #endif
 
 #endif // MainThread_h
index baa10bdc8ee67ef81eee510d6e2c0ebafd32e435..fc0bb55be8c18819b985ba6fb54f2c5e70aa0441 100644 (file)
@@ -1,3 +1,657 @@
+2014-01-09  Daniel Bates  <dabates@apple.com>
+
+        [iOS] Upstream WebCore/platform changes
+        https://bugs.webkit.org/show_bug.cgi?id=126654
+
+        Rubber-stamped by David Kilzer.
+
+        * WebCore.exp.in:
+        * WebCore.xcodeproj/project.pbxproj:
+        * platform/ContentFilter.h:
+        * platform/DragData.h:
+        * platform/FileChooser.cpp:
+        (WebCore::FileChooser::chooseMediaFiles):
+        * platform/FileChooser.h:
+        * platform/FileSystem.cpp:
+        (WebCore::setMetadataURL):
+        * platform/FileSystem.h:
+        * platform/KillRingNone.cpp:
+        * platform/LocalizedStrings.cpp:
+        (WebCore::fileButtonChooseMediaFileLabel):
+        (WebCore::fileButtonChooseMultipleMediaFilesLabel):
+        (WebCore::fileButtonNoMediaFileSelectedLabel):
+        (WebCore::fileButtonNoMediaFilesSelectedLabel):
+        * platform/LocalizedStrings.h:
+        * platform/Logging.h:
+        * platform/MIMETypeRegistry.cpp:
+        (WebCore::initializeSupportedImageMIMETypes):
+        (WebCore::initializeSupportedNonImageMimeTypes):
+        (WebCore::initializeUnsupportedTextMIMETypes):
+        * platform/MemoryPressureHandler.cpp:
+        (WebCore::MemoryPressureHandler::MemoryPressureHandler):
+        * platform/MemoryPressureHandler.h:
+        * platform/PlatformKeyboardEvent.h:
+        (WebCore::PlatformKeyboardEvent::event):
+        * platform/PlatformMouseEvent.h:
+        (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+        * platform/PlatformScreen.h:
+        * platform/RuntimeApplicationChecks.cpp:
+        (WebCore::mainBundleIsEqualTo):
+        * platform/RuntimeApplicationChecksIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
+        * platform/RuntimeApplicationChecksIOS.mm: Added.
+        * platform/ScrollAnimator.cpp:
+        (WebCore::ScrollAnimator::handleTouchEvent):
+        * platform/ScrollAnimator.h:
+        * platform/ScrollTypes.h:
+        * platform/ScrollView.cpp:
+        (WebCore::ScrollView::unscaledVisibleContentSize):
+        (WebCore::ScrollView::visibleContentRect):
+        * platform/ScrollView.h:
+        (WebCore::ScrollView::actualScrollX):
+        (WebCore::ScrollView::actualScrollY):
+        * platform/ScrollableArea.cpp:
+        (WebCore::ScrollableArea::handleTouchEvent):
+        (WebCore::ScrollableArea::isPinnedInBothDirections):
+        (WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
+        (WebCore::ScrollableArea::isPinnedVerticallyInDirection):
+        * platform/ScrollableArea.h:
+        (WebCore::ScrollableArea::isTouchScrollable):
+        (WebCore::ScrollableArea::isOverflowScroll):
+        (WebCore::ScrollableArea::didStartScroll):
+        (WebCore::ScrollableArea::didEndScroll):
+        (WebCore::ScrollableArea::didUpdateScroll):
+        (WebCore::ScrollableArea::setIsUserScroll):
+        (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition):
+        (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition):
+        (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
+        (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
+        * platform/Scrollbar.cpp:
+        * platform/Scrollbar.h:
+        * platform/SharedBuffer.cpp:
+        (WebCore::SharedBuffer::SharedBuffer):
+        (WebCore::SharedBuffer::createPurgeableBuffer):
+        (WebCore::SharedBuffer::data):
+        * platform/SharedBuffer.h:
+        (WebCore::SharedBuffer::shouldUsePurgeableMemory):
+        * platform/SuddenTermination.h:
+        * platform/Supplementable.h:
+        (WebCore::Supplementable::provideSupplement):
+        (WebCore::Supplementable::removeSupplement):
+        (WebCore::Supplementable::requireSupplement):
+        * platform/SystemMemory.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
+        * platform/ThreadCheck.h:
+        * platform/ThreadGlobalData.cpp:
+        (WebCore::ThreadGlobalData::ThreadGlobalData):
+        (WebCore::ThreadGlobalData::destroy):
+        (WebCore::ThreadGlobalData::setWebCoreThreadData):
+        (WebCore::threadGlobalData):
+        * platform/ThreadGlobalData.h:
+        * platform/ThreadTimers.cpp:
+        (WebCore::ThreadTimers::ThreadTimers):
+        (WebCore::ThreadTimers::sharedTimerFiredInternal):
+        * platform/Timer.cpp:
+        (WebCore::TimerBase::start):
+        (WebCore::TimerBase::stop):
+        (WebCore::TimerBase::setNextFireTime):
+        * platform/Timer.h:
+        (WebCore::TimerBase::isActive):
+        * platform/URL.cpp:
+        (WebCore::enableURLSchemeCanonicalization):
+        (WebCore::equal):
+        (WebCore::URL::parse):
+        * platform/URL.h:
+        * platform/Widget.h:
+        * platform/audio/ios/AudioDestinationIOS.cpp:
+        * platform/audio/ios/AudioDestinationIOS.h:
+        * platform/audio/ios/AudioFileReaderIOS.cpp: Copied from Source/WebCore/platform/audio/mac/AudioFileReaderMac.cpp.
+        (WebCore::createAudioBufferList):
+        (WebCore::destroyAudioBufferList):
+        (WebCore::AudioFileReader::AudioFileReader):
+        (WebCore::AudioFileReader::~AudioFileReader):
+        (WebCore::AudioFileReader::readProc):
+        (WebCore::AudioFileReader::getSizeProc):
+        (WebCore::AudioFileReader::createBus):
+        (WebCore::createBusFromAudioFile):
+        (WebCore::createBusFromInMemoryAudioFile):
+        * platform/audio/ios/AudioFileReaderIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
+        (WebCore::AudioFileReader::data):
+        (WebCore::AudioFileReader::dataSize):
+        * platform/audio/ios/AudioSessionIOS.mm:
+        (SOFT_LINK_POINTER):
+        (-[WebAudioSessionHelper initWithCallback:WebCore::]):
+        (-[WebAudioSessionHelper dealloc]):
+        (-[WebAudioSessionHelper interruption:]):
+        (WebCore::AudioSession::setCategory):
+        * platform/audio/mac/AudioDestinationMac.cpp:
+        * platform/audio/mac/AudioFileReaderMac.cpp:
+        (WebCore::AudioFileReader::AudioFileReader):
+        (WebCore::createBusFromAudioFile):
+        (WebCore::createBusFromInMemoryAudioFile):
+        * platform/audio/mac/AudioSessionMac.cpp:
+        * platform/audio/mac/MediaSessionManagerMac.cpp:
+        (MediaSessionManager::updateSessionState):
+        * platform/cf/SharedBufferCF.cpp:
+        (WebCore::SharedBuffer::SharedBuffer):
+        * platform/cf/URLCF.cpp:
+        * platform/cocoa/KeyEventCocoa.mm:
+        (WebCore::windowsKeyCodeForCharCode):
+        * platform/graphics/BitmapImage.cpp:
+        (WebCore::BitmapImage::BitmapImage):
+        (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
+        (WebCore::BitmapImage::cacheFrame):
+        (WebCore::BitmapImage::cacheFrameInfo):
+        (WebCore::BitmapImage::updateSize):
+        (WebCore::BitmapImage::originalSize):
+        (WebCore::BitmapImage::originalSizeRespectingOrientation):
+        (WebCore::BitmapImage::dataChanged):
+        (WebCore::BitmapImage::ensureFrameInfoIsCached):
+        (WebCore::BitmapImage::frameAtIndex):
+        (WebCore::BitmapImage::frameIsCompleteAtIndex):
+        (WebCore::BitmapImage::frameDurationAtIndex):
+        (WebCore::BitmapImage::frameHasAlphaAtIndex):
+        (WebCore::BitmapImage::frameOrientationAtIndex):
+        (WebCore::BitmapImage::startAnimation):
+        (WebCore::BitmapImage::internalAdvanceAnimation):
+        * platform/graphics/BitmapImage.h:
+        (WebCore::FrameData::FrameData):
+        * platform/graphics/Color.cpp:
+        (WebCore::Color::isDark):
+        * platform/graphics/Color.h:
+        * platform/graphics/DisplayRefreshMonitor.h:
+        * platform/graphics/FloatPoint.h:
+        * platform/graphics/FloatRect.h:
+        * platform/graphics/FloatSize.h:
+        * platform/graphics/Font.cpp:
+        (WebCore::Font::drawText):
+        (WebCore::Font::width):
+        * platform/graphics/Font.h:
+        * platform/graphics/FontCache.cpp:
+        (initFontCacheLockOnce):
+        (FontLocker::FontLocker):
+        (FontLocker::~FontLocker):
+        (WebCore::fontCache):
+        (WebCore::FontCache::getCachedFontPlatformData):
+        (WebCore::FontCache::getCachedFontData):
+        (WebCore::FontCache::releaseFontData):
+        (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
+        (WebCore::FontCache::purgeInactiveFontData):
+        * platform/graphics/FontCache.h:
+        * platform/graphics/FontFastPath.cpp:
+        (WebCore::Font::drawSimpleText):
+        (WebCore::Font::drawGlyphBuffer):
+        * platform/graphics/FontGlyphs.h:
+        * platform/graphics/FontPlatformData.cpp:
+        (WebCore::FontPlatformData::FontPlatformData):
+        * platform/graphics/FontPlatformData.h:
+        (WebCore::FontPlatformData::font):
+        (WebCore::FontPlatformData::roundsGlyphAdvances):
+        (WebCore::FontPlatformData::hash):
+        (WebCore::FontPlatformData::hashTableDeletedFontValue):
+        * platform/graphics/GlyphPageTreeNode.cpp:
+        (WebCore::GlyphPageTreeNode::initializePage):
+        * platform/graphics/GraphicsContext.cpp:
+        (WebCore::GraphicsContext::GraphicsContext):
+        (WebCore::GraphicsContext::drawRaisedEllipse):
+        (WebCore::GraphicsContext::drawText):
+        (WebCore::GraphicsContext::drawBidiText):
+        (WebCore::GraphicsContext::clipRoundedRect):
+        (WebCore::GraphicsContext::emojiDrawingEnabled):
+        (WebCore::GraphicsContext::setEmojiDrawingEnabled):
+        * platform/graphics/GraphicsContext.h:
+        (WebCore::GraphicsContextState::GraphicsContextState):
+        * platform/graphics/GraphicsContext3D.h:
+        * platform/graphics/GraphicsLayer.cpp:
+        (WebCore::GraphicsLayer::willBeDestroyed):
+        * platform/graphics/GraphicsLayer.h:
+        (WebCore::GraphicsLayer::contentsLayerForMedia):
+        (WebCore::GraphicsLayer::pixelAlignmentOffset):
+        (WebCore::GraphicsLayer::hasFlattenedPerspectiveTransform):
+        * platform/graphics/Icon.h:
+        * platform/graphics/Image.cpp:
+        (WebCore::Image::drawTiled):
+        * platform/graphics/ImageSource.h:
+        (WebCore::ImageSource::isSubsampled):
+        * platform/graphics/IntPoint.h:
+        * platform/graphics/IntRect.h:
+        * platform/graphics/IntSize.h:
+        * platform/graphics/MediaPlayer.cpp:
+        (WebCore::installedMediaEngines):
+        (WebCore::MediaPlayer::isCurrentPlaybackTargetWireless):
+        (WebCore::MediaPlayer::showPlaybackTargetPicker):
+        (WebCore::MediaPlayer::hasWirelessPlaybackTargets):
+        (WebCore::MediaPlayer::wirelessVideoPlaybackDisabled):
+        (WebCore::MediaPlayer::setWirelessVideoPlaybackDisabled):
+        (WebCore::MediaPlayer::setHasPlaybackTargetAvailabilityListeners):
+        (WebCore::MediaPlayer::currentPlaybackTargetIsWirelessChanged):
+        (WebCore::MediaPlayer::playbackTargetAvailabilityChanged):
+        (WebCore::MediaPlayer::attributeChanged):
+        (WebCore::MediaPlayer::readyForPlayback):
+        (WebCore::MediaPlayer::volumeChanged):
+        * platform/graphics/MediaPlayer.h:
+        (WebCore::MediaPlayerClient::mediaPlayerCurrentPlaybackTargetIsWirelessChanged):
+        (WebCore::MediaPlayerClient::mediaPlayerPlaybackTargetAvailabilityChanged):
+        * platform/graphics/MediaPlayerPrivate.h:
+        (WebCore::MediaPlayerPrivateInterface::volume):
+        (WebCore::MediaPlayerPrivateInterface::isCurrentPlaybackTargetWireless):
+        (WebCore::MediaPlayerPrivateInterface::showPlaybackTargetPicker):
+        (WebCore::MediaPlayerPrivateInterface::hasWirelessPlaybackTargets):
+        (WebCore::MediaPlayerPrivateInterface::wirelessVideoPlaybackDisabled):
+        (WebCore::MediaPlayerPrivateInterface::setWirelessVideoPlaybackDisabled):
+        (WebCore::MediaPlayerPrivateInterface::setHasPlaybackTargetAvailabilityListeners):
+        (WebCore::MediaPlayerPrivateInterface::attributeChanged):
+        (WebCore::MediaPlayerPrivateInterface::readyForPlayback):
+        * platform/graphics/SimpleFontData.cpp:
+        (WebCore::SimpleFontData::SimpleFontData):
+        * platform/graphics/SimpleFontData.h:
+        * platform/graphics/StringTruncator.cpp:
+        (WebCore::centerTruncateToBuffer):
+        (WebCore::rightTruncateToBuffer):
+        (WebCore::rightClipToCharacterBuffer):
+        (WebCore::rightClipToWordBuffer):
+        (WebCore::leftTruncateToBuffer):
+        (WebCore::truncateString):
+        (WebCore::StringTruncator::centerTruncate):
+        (WebCore::StringTruncator::rightTruncate):
+        (WebCore::StringTruncator::leftTruncate):
+        (WebCore::StringTruncator::rightClipToCharacter):
+        (WebCore::StringTruncator::rightClipToWord):
+        * platform/graphics/StringTruncator.h:
+        * platform/graphics/TextTrackRepresentation.cpp:
+        * platform/graphics/WidthIterator.h:
+        (WebCore::WidthIterator::supportsTypesettingFeatures):
+        * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:
+        (WebCore::AVTrackPrivateAVFObjCImpl::label):
+        * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):
+        (WebCore::wkAVAssetResolvedURL):
+        * platform/graphics/blackberry/FontBlackBerry.cpp:
+        (WebCore::Font::drawComplexText):
+        * platform/graphics/ca/GraphicsLayerCA.cpp:
+        (WebCore::supportsAcceleratedFilterAnimations):
+        (WebCore::GraphicsLayerCA::setContentsToImage):
+        (WebCore::GraphicsLayerCA::contentsLayerForMedia):
+        (WebCore::GraphicsLayerCA::computeVisibleRect):
+        (WebCore::GraphicsLayerCA::updateGeometry):
+        (WebCore::GraphicsLayerCA::ensureStructuralLayer):
+        (WebCore::GraphicsLayerCA::updateContentsRects):
+        (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
+        (WebCore::GraphicsLayerCA::setupContentsLayer):
+        (WebCore::GraphicsLayerCA::mediaLayerMustBeUpdatedOnMainThread):
+        (WebCore::GraphicsLayerCA::computePixelAlignment):
+        * platform/graphics/ca/GraphicsLayerCA.h:
+        * platform/graphics/ca/PlatformCAFilters.h:
+        * platform/graphics/ca/PlatformCALayer.h:
+        * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
+        (WebCore::currentRunLoop):
+        (WebCore::LayerFlushScheduler::schedule):
+        * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+        (-[WebAnimationDelegate animationDidStart:]):
+        (PlatformCALayerMac::setContentsScale):
+        (PlatformCALayer::isWebLayer):
+        (PlatformCALayer::setBoundsOnMainThread):
+        (PlatformCALayer::setPositionOnMainThread):
+        (PlatformCALayer::setAnchorPointOnMainThread):
+        (PlatformCALayer::setTileSize):
+        * platform/graphics/ca/mac/TileController.mm:
+        (WebCore::TileController::platformCALayerPaintContents):
+        (WebCore::TileController::removeAllTiles):
+        (WebCore::TileController::removeAllSecondaryTiles):
+        (WebCore::TileController::removeTilesInCohort):
+        (WebCore::TileController::revalidateTiles):
+        (WebCore::TileController::createTileLayer):
+        * platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
+        (WebCore::Font::drawComplexText):
+        * platform/graphics/cg/BitmapImageCG.cpp:
+        (WebCore::FrameData::clear):
+        (WebCore::BitmapImage::BitmapImage):
+        (WebCore::BitmapImage::checkForSolidColor):
+        (WebCore::BitmapImage::draw):
+        (WebCore::BitmapImage::copyUnscaledFrameAtIndex):
+        * platform/graphics/cg/ColorCG.cpp:
+        (WebCore::createCGColorWithDeviceWhite):
+        (WebCore::createCGColorWithDeviceRGBA):
+        (WebCore::Color::Color):
+        * platform/graphics/cg/FloatPointCG.cpp:
+        * platform/graphics/cg/FloatRectCG.cpp:
+        * platform/graphics/cg/FloatSizeCG.cpp:
+        * platform/graphics/cg/GradientCG.cpp:
+        * platform/graphics/cg/GraphicsContextCG.cpp:
+        (WebCore::sRGBColorSpaceRef):
+        (WebCore::setStrokeAndFillColor):
+        (WebCore::GraphicsContext::platformInit):
+        * platform/graphics/cg/ImageBufferCG.cpp:
+        (WebCore::createIOSurface):
+        (WebCore::ImageBuffer::ImageBuffer):
+        (WebCore::ImageBuffer::draw):
+        (WebCore::jpegUTI):
+        (WebCore::utiFromMIMEType):
+        * platform/graphics/cg/ImageBufferDataCG.cpp:
+        (WebCore::ImageBufferData::getData):
+        (WebCore::ImageBufferData::putData):
+        * platform/graphics/cg/ImageBufferDataCG.h:
+        * platform/graphics/cg/ImageCG.cpp:
+        (WebCore::drawPatternCallback):
+        (WebCore::Image::drawPattern):
+        * platform/graphics/cg/ImageSourceCG.cpp:
+        (WebCore::ImageSource::ImageSource):
+        (WebCore::imageSourceOptions):
+        (WebCore::ImageSource::imageSourceOptions):
+        (WebCore::ImageSource::frameSizeAtIndex):
+        (WebCore::ImageSource::originalSize):
+        (WebCore::ImageSource::createFrameAtIndex):
+        * platform/graphics/cg/ImageSourceCGMac.mm:
+        * platform/graphics/cg/IntPointCG.cpp:
+        * platform/graphics/cg/IntRectCG.cpp:
+        * platform/graphics/cg/IntSizeCG.cpp:
+        * platform/graphics/cg/PDFDocumentImage.cpp:
+        * platform/graphics/cg/PathCG.cpp:
+        * platform/graphics/cg/PatternCG.cpp:
+        * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+        (WebCore::FontPlatformData::FontPlatformData):
+        (WebCore::FontPlatformData::~FontPlatformData):
+        (WebCore::FontPlatformData::platformDataInit):
+        (WebCore::FontPlatformData::platformDataAssign):
+        (WebCore::FontPlatformData::platformIsEqual):
+        (WebCore::FontPlatformData::setFont):
+        (WebCore::FontPlatformData::allowsLigatures):
+        (WebCore::FontPlatformData::ctFont):
+        * platform/graphics/ios/DisplayRefreshMonitorIOS.mm: Added.
+        (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
+        (WebCore::DisplayRefreshMonitor::requestRefreshCallback):
+        (WebCore::DisplayRefreshMonitor::displayLinkFired):
+        * platform/graphics/ios/FontCacheIOS.mm: Added.
+        * platform/graphics/ios/FontServicesIOS.h: Added.
+        * platform/graphics/ios/FontServicesIOS.mm: Added.
+        (WebCore::FontServicesIOS::FontServicesIOS):
+        * platform/graphics/ios/GraphicsContext3DIOS.h: Added.
+        * platform/graphics/ios/IconIOS.mm: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.cpp.
+        * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h: Copied from Source/WebCore/platform/graphics/cg/ImageBufferDataCG.h.
+        (WebCore::InbandTextTrackPrivateAVFIOS::create):
+        (WebCore::InbandTextTrackPrivateAVFIOS::internalID):
+        * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm: Copied from Source/WebCore/platform/graphics/mac/IntRectMac.mm.
+        (WebCore::InbandTextTrackPrivateAVFIOS::InbandTextTrackPrivateAVFIOS):
+        (WebCore::InbandTextTrackPrivateAVFIOS::~InbandTextTrackPrivateAVFIOS):
+        (WebCore::InbandTextTrackPrivateAVFIOS::kind):
+        * platform/graphics/ios/MediaPlayerPrivateIOS.h: Added.
+        * platform/graphics/ios/MediaPlayerPrivateIOS.mm: Added.
+        * platform/graphics/ios/SimpleFontDataIOS.mm: Added.
+        (WebCore::fontFamilyShouldNotBeUsedForArabic):
+        (WebCore::fontHasVerticalGlyphs):
+        (WebCore::SimpleFontData::platformInit):
+        (WebCore::SimpleFontData::platformCharWidthInit):
+        (WebCore::SimpleFontData::platformCreateScaledFontData):
+        (WebCore::SimpleFontData::containsCharacters):
+        (WebCore::SimpleFontData::determinePitch):
+        (WebCore::SimpleFontData::platformWidthForGlyph):
+        * platform/graphics/ios/TextTrackRepresentationIOS.h: Copied from Source/WebCore/platform/graphics/TextTrackRepresentation.cpp.
+        * platform/graphics/ios/TextTrackRepresentationIOS.mm: Added.
+        * platform/graphics/mac/ColorMac.h:
+        * platform/graphics/mac/ComplexTextController.cpp:
+        (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
+        * platform/graphics/mac/ComplexTextControllerCoreText.mm:
+        (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
+        * platform/graphics/mac/FloatPointMac.mm:
+        * platform/graphics/mac/FloatRectMac.mm:
+        * platform/graphics/mac/FloatSizeMac.mm:
+        * platform/graphics/mac/FontCacheMac.mm:
+        * platform/graphics/mac/FontComplexTextMac.cpp:
+        (WebCore::Font::drawComplexText):
+        (WebCore::Font::fontDataForCombiningCharacterSequence):
+        * platform/graphics/mac/FontCustomPlatformData.cpp:
+        * platform/graphics/mac/FontMac.mm:
+        (WebCore::showLetterpressedGlyphsWithAdvances):
+        (WebCore::Font::drawGlyphs):
+        * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
+        (WebCore::GlyphPage::fill):
+        * platform/graphics/mac/GraphicsContext3DMac.mm:
+        (WebCore::GraphicsContext3D::GraphicsContext3D):
+        (WebCore::GraphicsContext3D::~GraphicsContext3D):
+        (WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable):
+        (WebCore::GraphicsContext3D::makeContextCurrent):
+        (WebCore::GraphicsContext3D::endPaint):
+        * platform/graphics/mac/GraphicsContextMac.mm:
+        (WebCore::GraphicsContext::drawFocusRing):
+        (WebCore::createDotPattern):
+        (WebCore::GraphicsContext::drawLineForDocumentMarker):
+        * platform/graphics/mac/IconMac.mm:
+        * platform/graphics/mac/ImageMac.mm:
+        (WebCore::BitmapImage::invalidatePlatformData):
+        * platform/graphics/mac/IntPointMac.mm:
+        * platform/graphics/mac/IntRectMac.mm:
+        * platform/graphics/mac/IntSizeMac.mm:
+        * platform/graphics/mac/MediaPlayerProxy.h:
+        * platform/graphics/mac/SimpleFontDataCoreText.cpp:
+        * platform/graphics/mac/SimpleFontDataMac.mm:
+        * platform/graphics/mac/WebGLLayer.h:
+        * platform/graphics/mac/WebGLLayer.mm:
+        (-[WebGLLayer copyImageSnapshotWithColorSpace:]):
+        (-[WebGLLayer display]):
+        * platform/graphics/mac/WebLayer.mm:
+        (WebCore::drawLayerContents):
+        (-[WebSimpleLayer display]):
+        (-[WebSimpleLayer drawInContext:]):
+        * platform/graphics/mac/WebTiledLayer.mm:
+        (+[WebTiledLayer shouldDrawOnMainThread]):
+        (-[WebTiledLayer display]):
+        (-[WebTiledLayer drawInContext:]):
+        * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+        (WebCore::Extensions3DOpenGL::blitFramebuffer):
+        (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
+        (WebCore::Extensions3DOpenGL::supportsExtension):
+        (WebCore::Extensions3DOpenGL::drawBuffersEXT):
+        * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
+        (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
+        * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+        (WebCore::GraphicsContext3D::reshapeFBOs):
+        (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary):
+        (WebCore::GraphicsContext3D::renderbufferStorage):
+        (WebCore::GraphicsContext3D::getIntegerv):
+        (WebCore::GraphicsContext3D::texImage2D):
+        (WebCore::GraphicsContext3D::depthRange):
+        (WebCore::GraphicsContext3D::clearDepth):
+        * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
+        (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
+        * platform/graphics/transforms/TransformationMatrix.cpp:
+        (WebCore::TransformationMatrix::multiply):
+        * platform/graphics/win/FontWin.cpp:
+        (WebCore::Font::drawComplexText):
+        * platform/graphics/wince/FontWinCE.cpp:
+        (WebCore::Font::drawComplexText):
+        * platform/ios/ContentFilterIOS.mm: Copied from Source/WebCore/platform/ContentFilter.h.
+        * platform/ios/DeviceMotionClientIOS.h: Added.
+        (WebCore::DeviceMotionClientIOS::create):
+        * platform/ios/DeviceMotionClientIOS.mm: Added.
+        * platform/ios/DeviceOrientationClientIOS.h: Added.
+        (WebCore::DeviceOrientationClientIOS::create):
+        * platform/ios/DeviceOrientationClientIOS.mm: Added.
+        * platform/ios/KeyEventIOS.mm:
+        * platform/ios/MIMETypeRegistryIOS.mm: Copied from Source/WebCore/platform/network/mac/CredentialStorageMac.mm.
+        * platform/ios/MemoryPressureHandlerIOS.mm: Added.
+        * platform/ios/PasteboardIOS.mm:
+        (WebCore::Pasteboard::write):
+        (WebCore::Pasteboard::resourceMIMEType):
+        (WebCore::Pasteboard::writePlainText):
+        (WebCore::Pasteboard::read):
+        (WebCore::supportedImageTypes):
+        (WebCore::Pasteboard::supportedPasteboardTypes):
+        (WebCore::Pasteboard::hasData):
+        (WebCore::Pasteboard::readString):
+        * platform/ios/PlatformEventFactoryIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
+        * platform/ios/PlatformEventFactoryIOS.mm: Added.
+        * platform/ios/PlatformPasteboardIOS.mm:
+        (WebCore::PlatformPasteboard::write):
+        * platform/ios/PlatformScreenIOS.mm: Added.
+        * platform/ios/PlatformSpeechSynthesizerIOS.mm: Added.
+        * platform/ios/SSLKeyGeneratorIOS.cpp: Added.
+        * platform/ios/ScrollAnimatorIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
+        * platform/ios/ScrollAnimatorIOS.mm: Added.
+        * platform/ios/ScrollViewIOS.mm: Added.
+        * platform/ios/ScrollbarThemeIOS.h: Added.
+        * platform/ios/ScrollbarThemeIOS.mm: Added.
+        * platform/ios/SelectionRect.cpp: Added.
+        * platform/ios/SelectionRect.h: Added.
+        * platform/ios/SoundIOS.mm: Copied from Source/WebCore/platform/text/mac/CharsetData.h.
+        * platform/ios/SystemMemoryIOS.cpp: Added.
+        * platform/ios/ThemeIOS.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
+        * platform/ios/ThemeIOS.mm: Copied from Source/WebCore/platform/KillRingNone.cpp.
+        * platform/ios/TileCache.h: Added.
+        (WebCore::TileCache::isSpeculativeTileCreationEnabled):
+        * platform/ios/TileCache.mm: Added.
+        * platform/ios/TileGrid.h: Added.
+        * platform/ios/TileGrid.mm: Added.
+        * platform/ios/TileGridTile.h: Copied from Source/WebCore/platform/ContentFilter.h.
+        * platform/ios/TileGridTile.mm: Added.
+        * platform/ios/TileLayer.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
+        * platform/ios/TileLayer.mm: Added.
+        * platform/ios/TileLayerPool.mm: Added.
+        * platform/ios/WebCoreMotionManager.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
+        * platform/ios/WebCoreMotionManager.mm: Added.
+        * platform/ios/WebCoreSystemInterfaceIOS.h: Added.
+        * platform/ios/WebCoreSystemInterfaceIOS.mm: Added.
+        * platform/ios/WebEvent.h: Added.
+        * platform/ios/WebEvent.mm: Added.
+        * platform/ios/WidgetIOS.mm: Added.
+        * platform/mac/DisplaySleepDisabler.cpp:
+        (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
+        (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
+        * platform/mac/DisplaySleepDisabler.h:
+        * platform/mac/FileSystemMac.mm:
+        * platform/mac/KillRingMac.mm:
+        * platform/mac/MemoryPressureHandlerMac.mm:
+        (WebCore::MemoryPressureHandler::install):
+        (WebCore::MemoryPressureHandler::releaseMemory):
+        * platform/mac/PlatformClockCM.mm:
+        (PlatformClockCM::PlatformClockCM):
+        * platform/mac/SoftLinking.h:
+        * platform/mac/SystemVersionMac.mm:
+        * platform/mac/WebCoreFullScreenPlaceholderView.h:
+        * platform/mac/WebCoreFullScreenPlaceholderView.mm:
+        * platform/mac/WebCoreFullScreenWarningView.h:
+        * platform/mac/WebCoreFullScreenWarningView.mm:
+        * platform/mac/WebCoreFullScreenWindow.h:
+        * platform/mac/WebCoreFullScreenWindow.mm:
+        * platform/mac/WebCoreNSCellExtras.h:
+        * platform/mac/WebCoreNSCellExtras.m:
+        * platform/mac/WebCoreSystemInterface.h:
+        * platform/mac/WebFontCache.mm:
+        (+[WebFontCache fontWithFamily:traits:size:]):
+        * platform/network/BlobRegistry.cpp:
+        * platform/network/BlobRegistryImpl.cpp:
+        * platform/network/Credential.h:
+        * platform/network/CredentialStorage.cpp:
+        (WebCore::CredentialStorage::set):
+        (WebCore::CredentialStorage::clearCredentials):
+        * platform/network/CredentialStorage.h:
+        * platform/network/NetworkStateNotifier.h:
+        * platform/network/ResourceHandle.cpp:
+        (WebCore::builtinResourceHandleConstructorMap):
+        (WebCore::ResourceHandle::continueWillSendRequest):
+        (WebCore::ResourceHandle::continueDidReceiveResponse):
+        (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
+        (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
+        * platform/network/ResourceRequestBase.cpp:
+        (WebCore::ResourceRequestBase::setDefaultAllowCookies):
+        (WebCore::ResourceRequestBase::defaultAllowCookies):
+        * platform/network/ResourceRequestBase.h:
+        (WebCore::ResourceRequestBase::ResourceRequestBase):
+        * platform/network/cf/CredentialStorageCFNet.cpp:
+        (WebCore::CredentialStorage::saveToPersistentStorage):
+        * platform/network/cf/DNSCFNet.cpp:
+        * platform/network/cf/ProxyServerCFNet.cpp:
+        * platform/network/cf/ResourceRequest.h:
+        (WebCore::ResourceRequest::ResourceRequest):
+        (WebCore::ResourceRequest::setMainResourceRequest):
+        (WebCore::ResourceRequest::isMainResourceRequest):
+        * platform/network/cf/ResourceRequestCFNet.cpp:
+        (WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
+        (WebCore::ResourceRequest::doUpdateResourceRequest):
+        (WebCore::ResourceRequest::applyWebArchiveHackForMail):
+        (WebCore::initializeHTTPConnectionSettingsOnStartup):
+        * platform/network/cf/SocketStreamHandleCFNet.cpp:
+        (WebCore::SocketStreamHandle::reportErrorToClient):
+        * platform/network/ios/NetworkStateNotifierIOS.cpp: Copied from Source/WebCore/platform/KillRingNone.cpp.
+        (WebCore::NetworkStateNotifier::NetworkStateNotifier):
+        (WebCore::NetworkStateNotifier::setIsOnLine):
+        * platform/network/ios/QuickLook.h: Added.
+        * platform/network/ios/QuickLook.mm: Added.
+        * platform/network/ios/ResourceHandleIOS.mm: Added.
+        * platform/network/ios/WebCoreURLResponseIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
+        * platform/network/ios/WebCoreURLResponseIOS.mm: Added.
+        * platform/network/mac/AuthenticationMac.mm:
+        (WebCore::mac):
+        * platform/network/mac/CredentialStorageMac.mm:
+        (WebCore::CredentialStorage::saveToPersistentStorage):
+        * platform/network/mac/ResourceErrorMac.mm:
+        (dictionaryThatCanCode):
+        (-[WebCustomNSURLError encodeWithCoder:]):
+        (NSErrorFromCFError):
+        (WebCore::ResourceError::nsError):
+        * platform/network/mac/ResourceHandleMac.mm:
+        (WebCore::synchronousWillSendRequestEnabled):
+        (WebCore::ResourceHandle::createNSURLConnection):
+        (WebCore::ResourceHandle::start):
+        (WebCore::ResourceHandle::schedule):
+        (WebCore::ResourceHandle::unschedule):
+        (WebCore::ResourceHandle::platformLoadResourceSynchronously):
+        (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
+        * platform/network/mac/ResourceRequestMac.mm:
+        (WebCore::ResourceRequest::ResourceRequest):
+        (WebCore::ResourceRequest::updateNSURLRequest):
+        (WebCore::ResourceRequest::applyWebArchiveHackForMail):
+        (WebCore::ResourceRequest::useQuickLookResourceCachingQuirks):
+        * platform/network/mac/UTIUtilities.mm:
+        * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
+        (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
+        (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
+        (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
+        (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
+        (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
+        (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
+        * platform/sql/SQLiteDatabase.h:
+        (WebCore::SQLiteDatabase::sqlite3Handle):
+        * platform/sql/SQLiteFileSystem.cpp:
+        (WebCore::SQLiteFileSystem::truncateDatabaseFile):
+        * platform/sql/SQLiteFileSystem.h:
+        * platform/sql/SQLiteTransaction.cpp:
+        (WebCore::SQLiteTransaction::begin):
+        (WebCore::SQLiteTransaction::commit):
+        (WebCore::SQLiteTransaction::rollback):
+        (WebCore::SQLiteTransaction::stop):
+        * platform/sql/ios/SQLiteDatabaseTracker.cpp: Added.
+        * platform/sql/ios/SQLiteDatabaseTracker.h: Copied from Source/WebCore/platform/MemoryPressureHandler.cpp.
+        * platform/sql/ios/SQLiteDatabaseTrackerClient.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
+        * platform/text/PlatformLocale.cpp:
+        * platform/text/PlatformLocale.h:
+        * platform/text/TextBreakIteratorICU.cpp:
+        (WebCore::cursorMovementIterator):
+        * platform/text/TextCodecICU.cpp:
+        (WebCore::TextCodecICU::registerEncodingNames):
+        (WebCore::TextCodecICU::registerCodecs):
+        * platform/text/TextEncodingRegistry.cpp:
+        (WebCore::extendTextCodecMaps):
+        * platform/text/cf/HyphenationCF.cpp:
+        (WebCore::canHyphenate):
+        * platform/text/ios/LocalizedDateCache.h: Copied from Source/WebCore/platform/MemoryPressureHandler.h.
+        * platform/text/ios/LocalizedDateCache.mm: Added.
+        * platform/text/mac/CharsetData.h:
+        * platform/text/mac/LocaleMac.h:
+        * platform/text/mac/LocaleMac.mm:
+        (WebCore::LocaleMac::formatDateTime):
+        (WebCore::LocaleMac::maximumWidthForDateType):
+        * platform/text/mac/TextBoundaries.mm:
+        (WebCore::isSkipCharacter):
+        (WebCore::isWhitespaceCharacter):
+        (WebCore::isWordDelimitingCharacter):
+        (WebCore::isSymbolCharacter):
+        (WebCore::isAmbiguousBoundaryCharacter):
+        (WebCore::tokenizerForString):
+        (WebCore::findSimpleWordBoundary):
+        (WebCore::findComplexWordBoundary):
+        (WebCore::findWordBoundary):
+        (WebCore::findNextWordFromIndex):
+        * platform/text/mac/TextCodecMac.cpp:
+        * platform/text/mac/TextCodecMac.h:
+
 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
 
         Web Inspector: Consolidate developerExtrasEnabled to just InspectorEnvironment
index fc9375f5653a9c27673ef62bb3316408d42a9c0c..a2c2d2574fa4af42535505e500925a639af11b6b 100644 (file)
@@ -1917,6 +1917,9 @@ _wkSignalCFReadStreamEnd
 _wkSignalCFReadStreamError
 _wkSignalCFReadStreamHasBytes
 
+__ZN7WebCore27applicationIsAdobeInstallerEv
+__ZN7WebCore27applicationIsMicrosoftMyDayEv
+
 #if !PLATFORM(IOS)
 .objc_class_name_DOMAttr
 .objc_class_name_DOMCDATASection
@@ -2045,8 +2048,6 @@ __ZN7WebCore26contextMenuItemTagFontMenuEv
 __ZN7WebCore26contextMenuItemTagOpenLinkEv
 __ZN7WebCore26pdfDocumentTypeDescriptionEv
 __ZN7WebCore26usesTestModeFocusRingColorEv
-__ZN7WebCore27applicationIsAdobeInstallerEv
-__ZN7WebCore27applicationIsMicrosoftMyDayEv
 __ZN7WebCore27contextMenuItemTagShowFontsEv
 __ZN7WebCore27contextMenuItemTagUnderlineEv
 __ZN7WebCore28contextMenuItemTagCapitalizeEv
index 744767d2010c2636eb35f30046632baa63f3fccf..369dcf71e2767f79429f51f64fa37c516d19e78e 100644 (file)
                073BE34E17D180B2002BD431 /* RTCSessionDescriptionDescriptor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07221BAB17CF0AD400848E51 /* RTCSessionDescriptionDescriptor.cpp */; };
                073BE34F17D18183002BD431 /* RTCIceCandidateDescriptor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07221BA617CF0AD400848E51 /* RTCIceCandidateDescriptor.cpp */; };
                073BE35017D181A6002BD431 /* RTCPeerConnectionHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07221BA817CF0AD400848E51 /* RTCPeerConnectionHandler.cpp */; };
+               074300A50F4B8BCF008076CD /* MediaPlayerPrivateIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 074300A30F4B8BCF008076CD /* MediaPlayerPrivateIOS.mm */; };
+               074300A60F4B8BCF008076CD /* MediaPlayerPrivateIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 074300A40F4B8BCF008076CD /* MediaPlayerPrivateIOS.h */; };
                0753860214489E9800B78452 /* CachedTextTrack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0753860014489E9800B78452 /* CachedTextTrack.cpp */; };
                0753860314489E9800B78452 /* CachedTextTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 0753860114489E9800B78452 /* CachedTextTrack.h */; };
                076306D017E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306CC17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h */; settings = {ATTRIBUTES = (Private, ); }; };
                07DC5FD417D3EEE90099F890 /* JSRTCStatsResponseCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07DC5FD317D3EEE90099F890 /* JSRTCStatsResponseCustom.cpp */; };
                07E116B11489C9A100EC5ACE /* JSTextTrackCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07E116B01489C9A100EC5ACE /* JSTextTrackCustom.cpp */; };
                07E117071489EBEB00EC5ACE /* JSTextTrackCueCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07E117061489EBEB00EC5ACE /* JSTextTrackCueCustom.cpp */; };
+               07ED35A216D6DCC9002248F3 /* InbandTextTrackPrivateAVFIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 07357C7716D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.mm */; };
+               07ED35A316D6DCE2002248F3 /* InbandTextTrackPrivateAVFIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 07357C7616D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.h */; };
                07F944161864D046005D31CB /* MediaSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CDAE8C081746B95700532D78 /* MediaSessionManager.h */; settings = {ATTRIBUTES = (Private, ); }; };
                07FFDE68181AED420072D409 /* MediaStreamTrackPrivate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07FFDE66181AED420072D409 /* MediaStreamTrackPrivate.cpp */; };
                07FFDE69181AED420072D409 /* MediaStreamTrackPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 07FFDE67181AED420072D409 /* MediaStreamTrackPrivate.h */; };
                0F13163E16ED0CC80035CC04 /* PlatformCAFilters.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F13163D16ED0CC80035CC04 /* PlatformCAFilters.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F13164016ED0CDE0035CC04 /* PlatformCAFiltersMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F13163F16ED0CDE0035CC04 /* PlatformCAFiltersMac.mm */; };
                0F15DA8A0F3AAEE70000CE47 /* AnimationControllerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F15DA890F3AAEE70000CE47 /* AnimationControllerPrivate.h */; };
+               0F1774801378B772009DA76A /* ScrollAnimatorIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F17747E1378B771009DA76A /* ScrollAnimatorIOS.h */; };
+               0F1774811378B772009DA76A /* ScrollAnimatorIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F17747F1378B772009DA76A /* ScrollAnimatorIOS.mm */; };
                0F29C16E1300C2E2002D794E /* AccessibilityAllInOne.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F29C16D1300C2E2002D794E /* AccessibilityAllInOne.cpp */; };
                0F3DD44F12F5EA1B000D9190 /* ShadowBlur.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F3DD44D12F5EA1B000D9190 /* ShadowBlur.cpp */; };
                0F3DD45012F5EA1B000D9190 /* ShadowBlur.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F3DD44E12F5EA1B000D9190 /* ShadowBlur.h */; };
                0F605AED15F94848004DF0C0 /* ScrollingConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F605AEB15F94848004DF0C0 /* ScrollingConstraints.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F6383DD18615B29003E5DB5 /* ThreadedScrollingTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F6383DB18615B29003E5DB5 /* ThreadedScrollingTree.cpp */; };
                0F6383DE18615B29003E5DB5 /* ThreadedScrollingTree.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F6383DC18615B29003E5DB5 /* ThreadedScrollingTree.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               0F97A658155DA81E00FADD4C /* DisplayRefreshMonitorIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F97A657155DA81E00FADD4C /* DisplayRefreshMonitorIOS.mm */; };
                0FA24D79162DF91900A3F4C0 /* GraphicsLayerUpdater.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FA24D77162DF91900A3F4C0 /* GraphicsLayerUpdater.cpp */; };
                0FA24D7A162DF91900A3F4C0 /* GraphicsLayerUpdater.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FA24D78162DF91900A3F4C0 /* GraphicsLayerUpdater.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0FA88EBD16A8D1BD00F99984 /* ScrollingStateScrollingNodeMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FA88EBC16A8D1BD00F99984 /* ScrollingStateScrollingNodeMac.mm */; };
                1F3C3BEA135CAF3C00B8C1AC /* MediaControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F3C3BE8135CAF3C00B8C1AC /* MediaControls.cpp */; };
                1F3C3BEB135CAF3C00B8C1AC /* MediaControls.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F3C3BE9135CAF3C00B8C1AC /* MediaControls.h */; };
                1F3F19531499CA7600A5AEA7 /* PODFreeListArena.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F3F19521499CA7600A5AEA7 /* PODFreeListArena.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               1F68D4AE14BB9DCA007B5C62 /* MemoryPressureHandlerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1F68D4AD14BB9DCA007B5C62 /* MemoryPressureHandlerIOS.mm */; };
                1FAFBF1815A5FA6E00083A20 /* UTIUtilities.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1FAFBF1715A5FA5200083A20 /* UTIUtilities.mm */; };
                1FAFBF1915A5FA7400083A20 /* UTIUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FAFBF1615A5FA5200083A20 /* UTIUtilities.h */; };
                1FC40FB91655CCB60040F29E /* SubimageCacheWithTimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FC40FB81655C5910040F29E /* SubimageCacheWithTimer.cpp */; };
                265541391489811C000DFC5D /* KeyEventCodesIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 265541371489811C000DFC5D /* KeyEventCodesIOS.h */; };
                2655413A1489811C000DFC5D /* KeyEventIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 265541381489811C000DFC5D /* KeyEventIOS.mm */; };
                265541521489B233000DFC5D /* CursorIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2655414B1489AA2B000DFC5D /* CursorIOS.cpp */; };
+               26601EBF14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 26601EBD14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               26601EC014B3B9AD0012C0FE /* PlatformEventFactoryIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 26601EBE14B3B9AD0012C0FE /* PlatformEventFactoryIOS.mm */; };
                269239961505E1AA009E57FC /* JSIDBVersionChangeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 269239921505E1AA009E57FC /* JSIDBVersionChangeEvent.h */; };
                26B9998F1803AE7200D01121 /* RegisterAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 26B9998E1803AE7200D01121 /* RegisterAllocator.h */; };
                26B999911803B3C900D01121 /* StackAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 26B999901803B3C900D01121 /* StackAllocator.h */; };
                26FAE4CD1852E3A5004C8C46 /* ResourceHandleCFURLConnectionDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 26FAE4C91852E3A5004C8C46 /* ResourceHandleCFURLConnectionDelegate.h */; };
                26FAE4CE1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26FAE4CA1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.cpp */; };
                26FAE4CF1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 26FAE4CB1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.h */; };
+               2903716516BA11BC00FEFDF0 /* ContentFilterIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2903716416BA11BC00FEFDF0 /* ContentFilterIOS.mm */; };
                2917B5611473496C0052C9D0 /* LayerFlushScheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2917B55E1473496C0052C9D0 /* LayerFlushScheduler.cpp */; };
                2917B5621473496C0052C9D0 /* LayerFlushScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = 2917B55F1473496C0052C9D0 /* LayerFlushScheduler.h */; settings = {ATTRIBUTES = (Private, ); }; };
                2917B5631473496C0052C9D0 /* LayerFlushSchedulerClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 2917B5601473496C0052C9D0 /* LayerFlushSchedulerClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
                31313F651443B35F006E2A90 /* FilterEffectRenderer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31313F631443B35E006E2A90 /* FilterEffectRenderer.cpp */; };
                31313F661443B35F006E2A90 /* FilterEffectRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 31313F641443B35E006E2A90 /* FilterEffectRenderer.h */; };
                3138A9E51474434600B0ED12 /* StyleShader.h in Headers */ = {isa = PBXBuildFile; fileRef = 3138A9E41474434600B0ED12 /* StyleShader.h */; };
+               3140379B124BEA7F00AF40E4 /* WebCoreMotionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 31403797124BEA7F00AF40E4 /* WebCoreMotionManager.h */; };
+               3140379C124BEA7F00AF40E4 /* WebCoreMotionManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 31403798124BEA7F00AF40E4 /* WebCoreMotionManager.mm */; };
+               3140379D124BEA7F00AF40E4 /* DeviceOrientationClientIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 31403799124BEA7F00AF40E4 /* DeviceOrientationClientIOS.h */; };
+               3140379E124BEA7F00AF40E4 /* DeviceOrientationClientIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3140379A124BEA7F00AF40E4 /* DeviceOrientationClientIOS.mm */; };
                3146FE6E184420A8001A937C /* OESTextureFloatLinear.h in Headers */ = {isa = PBXBuildFile; fileRef = 3146FE6618442087001A937C /* OESTextureFloatLinear.h */; };
                3146FE6F184420AA001A937C /* OESTextureFloatLinear.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3146FE6518442087001A937C /* OESTextureFloatLinear.cpp */; };
                3146FE7418442370001A937C /* JSOESTextureFloatLinear.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3146FE7018442367001A937C /* JSOESTextureFloatLinear.cpp */; };
                319AE063142D6B24006563A1 /* StyleFilterData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319AE061142D6B24006563A1 /* StyleFilterData.cpp */; };
                319AE064142D6B24006563A1 /* StyleFilterData.h in Headers */ = {isa = PBXBuildFile; fileRef = 319AE062142D6B24006563A1 /* StyleFilterData.h */; settings = {ATTRIBUTES = (Private, ); }; };
                319FBD5F15D2F464009640A6 /* CachedImageClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 319FBD5D15D2F444009640A6 /* CachedImageClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               31AB5000122878A2001A7DB0 /* GraphicsContext3DIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 31AB4FFF122878A2001A7DB0 /* GraphicsContext3DIOS.h */; };
                31C0FF210E4CEB6E007D6FE5 /* WebKitAnimationEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31C0FF1B0E4CEB6E007D6FE5 /* WebKitAnimationEvent.cpp */; };
                31C0FF220E4CEB6E007D6FE5 /* WebKitAnimationEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 31C0FF1C0E4CEB6E007D6FE5 /* WebKitAnimationEvent.h */; };
                31C0FF240E4CEB6E007D6FE5 /* WebKitTransitionEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31C0FF1E0E4CEB6E007D6FE5 /* WebKitTransitionEvent.cpp */; };
                31C0FF4D0E4CEFDD007D6FE5 /* DOMWebKitTransitionEvent.mm in Sources */ = {isa = PBXBuildFile; fileRef = 31C0FF470E4CEFDD007D6FE5 /* DOMWebKitTransitionEvent.mm */; };
                31C0FF4E0E4CEFDD007D6FE5 /* DOMWebKitTransitionEventInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 31C0FF480E4CEFDD007D6FE5 /* DOMWebKitTransitionEventInternal.h */; };
                31D591B316697A6C00E6BF02 /* PlugInClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 31D591B116697A6C00E6BF02 /* PlugInClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               31EAF97E121435A400E7C1BF /* DeviceMotionClientIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 31EAF97C121435A400E7C1BF /* DeviceMotionClientIOS.h */; };
+               31EAF97F121435A400E7C1BF /* DeviceMotionClientIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 31EAF97D121435A400E7C1BF /* DeviceMotionClientIOS.mm */; };
                31EC1E2814FF60EE00C94662 /* JSNotificationPermissionCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31EC1E2614FF60EE00C94662 /* JSNotificationPermissionCallback.cpp */; };
                31EC1E2914FF60EE00C94662 /* JSNotificationPermissionCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 31EC1E2714FF60EE00C94662 /* JSNotificationPermissionCallback.h */; };
                31FB1A57120A5D0600DC02A0 /* DeviceMotionClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 31FB1A4F120A5D0600DC02A0 /* DeviceMotionClient.h */; };
                371F53E90D2704F900ECE0D5 /* CSSUnicodeRangeValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 371F53E70D2704F900ECE0D5 /* CSSUnicodeRangeValue.h */; };
                371F53EA0D2704F900ECE0D5 /* CSSUnicodeRangeValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 371F53E80D2704F900ECE0D5 /* CSSUnicodeRangeValue.cpp */; };
                37202199106213C600F25C4B /* FontSmoothingMode.h in Headers */ = {isa = PBXBuildFile; fileRef = 37202198106213C600F25C4B /* FontSmoothingMode.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               3727DFD5142AAE4500D449CB /* FontCacheIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3727DFD4142AAE4500D449CB /* FontCacheIOS.mm */; };
                372C00C4129611F1005C9575 /* TextBoundaries.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 372C00C3129611F1005C9575 /* TextBoundaries.cpp */; };
                372C00D9129619F8005C9575 /* FindOptions.h in Headers */ = {isa = PBXBuildFile; fileRef = 372C00D8129619F8005C9575 /* FindOptions.h */; settings = {ATTRIBUTES = (Private, ); }; };
                3744570F0DB05FA500AE0992 /* SVGGlyphMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 3744570E0DB05FA500AE0992 /* SVGGlyphMap.h */; };
                37DDCDA71384501C0008B793 /* MHTMLParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 37DDCDA31384501C0008B793 /* MHTMLParser.h */; };
                37E3524B12450C5200BAF5D9 /* InputType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37E3524A12450C5200BAF5D9 /* InputType.cpp */; };
                37E3524D12450C6600BAF5D9 /* InputType.h in Headers */ = {isa = PBXBuildFile; fileRef = 37E3524C12450C6600BAF5D9 /* InputType.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               37E65950163B10C200EB4574 /* SimpleFontDataIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37E6594F163B10C200EB4574 /* SimpleFontDataIOS.mm */; };
                37F567CE165358F400DDE92B /* PopupOpeningObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 3772B09516535856000A49CA /* PopupOpeningObserver.h */; settings = {ATTRIBUTES = (Private, ); }; };
                37F818FD0D657606005E1F05 /* WebCoreURLResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 37F818FB0D657606005E1F05 /* WebCoreURLResponse.h */; settings = {ATTRIBUTES = (Private, ); }; };
                37F818FE0D657606005E1F05 /* WebCoreURLResponse.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37F818FC0D657606005E1F05 /* WebCoreURLResponse.mm */; };
                441B055E0CD77A48007C1F18 /* DOMHTMLIFrameElementPrivate.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 4429AAFD0CB84EA5007647C5 /* DOMHTMLIFrameElementPrivate.h */; };
                441B05600CD77A65007C1F18 /* DOMHTMLObjectElementPrivate.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 4429AAFF0CB84EC3007647C5 /* DOMHTMLObjectElementPrivate.h */; };
                442ABCD617D9262F00D30715 /* SynchronousLoaderClientCFNet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 442ABCD517D9262F00D30715 /* SynchronousLoaderClientCFNet.cpp */; };
+               442AF7A9102CDDEA008FD4D3 /* QuickLook.h in Headers */ = {isa = PBXBuildFile; fileRef = 442AF7A7102CDDEA008FD4D3 /* QuickLook.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               442AF7AA102CDDEA008FD4D3 /* QuickLook.mm in Sources */ = {isa = PBXBuildFile; fileRef = 442AF7A8102CDDEA008FD4D3 /* QuickLook.mm */; };
                44311CD612E4E22D000A8D19 /* DOMDocumentFragmentPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 44311CD412E4E22D000A8D19 /* DOMDocumentFragmentPrivate.h */; };
                44311CD712E4E22D000A8D19 /* DOMDocumentPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 44311CD512E4E22D000A8D19 /* DOMDocumentPrivate.h */; };
                44311CD812E4E24B000A8D19 /* DOMDocumentPrivate.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 44311CD512E4E22D000A8D19 /* DOMDocumentPrivate.h */; };
                44311CD912E4E257000A8D19 /* DOMDocumentFragmentPrivate.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 44311CD412E4E22D000A8D19 /* DOMDocumentFragmentPrivate.h */; };
                44311F8212E4E66C000A8D19 /* DOMDocumentFragmentInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 85E711450AC5D5340053270F /* DOMDocumentFragmentInternal.h */; };
+               443F04270E75C8FB007E5407 /* NetworkStateNotifierIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 443F04260E75C8FB007E5407 /* NetworkStateNotifierIOS.cpp */; };
+               444D4E230F708B2E003158E0 /* WebCoreURLResponseIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 444D4E210F708B2E003158E0 /* WebCoreURLResponseIOS.mm */; };
+               4476531B133170990006B789 /* SSLKeyGeneratorIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4476531A133170990006B789 /* SSLKeyGeneratorIOS.cpp */; };
                447958041643B49A001E0A7F /* ParsedContentType.h in Headers */ = {isa = PBXBuildFile; fileRef = 447958031643B47B001E0A7F /* ParsedContentType.h */; settings = {ATTRIBUTES = (Private, ); }; };
                447958051643B4B2001E0A7F /* ParsedContentType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 447958021643B47B001E0A7F /* ParsedContentType.cpp */; };
                448A29BF0A46D9CB0030759F /* JSHTMLOptionsCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = 448A29BD0A46D9CB0030759F /* JSHTMLOptionsCollection.h */; };
                4496E3A0139813A5003EE32A /* JSSVGMPathElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 4496E39F139813A5003EE32A /* JSSVGMPathElement.h */; };
                4496E3A2139813CB003EE32A /* JSSVGMPathElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4496E3A1139813CB003EE32A /* JSSVGMPathElement.cpp */; };
                449B19F50FA72ECE0015CA4A /* HTMLParserQuirks.h in Headers */ = {isa = PBXBuildFile; fileRef = 449B19F30FA72ECE0015CA4A /* HTMLParserQuirks.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               44A20DB90F84166C00B3E1FE /* WebCoreURLResponseIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44A20DB80F84166C00B3E1FE /* WebCoreURLResponseIOS.h */; settings = {ATTRIBUTES = (Private, ); }; };
                44A28AAC12DFB8AC00AE923B /* MathMLElementFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 44A28AAB12DFB8AC00AE923B /* MathMLElementFactory.h */; };
                44A28AAF12DFB8BF00AE923B /* MathMLNames.h in Headers */ = {isa = PBXBuildFile; fileRef = 44A28AAE12DFB8BF00AE923B /* MathMLNames.h */; };
+               44C363F00FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C363EE0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               44C363F10FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44C363EF0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm */; };
+               44C3CFE81556BE5D00013609 /* WebCoreSystemInterfaceIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C3CFE71556BE5D00013609 /* WebCoreSystemInterfaceIOS.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               44C991820F3D1E0D00586670 /* ScrollbarThemeIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44C991810F3D1E0D00586670 /* ScrollbarThemeIOS.mm */; };
+               44C991860F3D1EBE00586670 /* ScrollbarThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */; };
+               44C9919F0F3D210E00586670 /* ThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C9919D0F3D210E00586670 /* ThemeIOS.h */; };
+               44C991A00F3D210E00586670 /* ThemeIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44C9919E0F3D210E00586670 /* ThemeIOS.mm */; };
                44DAB5B115A623580097C1E4 /* Extensions3DOpenGLCommon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 44DAB5AF15A623580097C1E4 /* Extensions3DOpenGLCommon.cpp */; };
                44DAB5B215A623580097C1E4 /* Extensions3DOpenGLCommon.h in Headers */ = {isa = PBXBuildFile; fileRef = 44DAB5B015A623580097C1E4 /* Extensions3DOpenGLCommon.h */; };
                45099C411370A7800058D513 /* IconURL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45099C401370A7800058D513 /* IconURL.cpp */; };
                7E12E91015FA5D3A005E4126 /* CustomFilterMeshGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E12E90E15FA5D3A005E4126 /* CustomFilterMeshGenerator.cpp */; };
                7E33CD01127F340D00BE8F17 /* PurgePriority.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E33CD00127F340D00BE8F17 /* PurgePriority.h */; settings = {ATTRIBUTES = (Private, ); }; };
                7E37EF2E1339208800B29250 /* SubresourceLoaderCF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E37EF2D1339208800B29250 /* SubresourceLoaderCF.cpp */; };
+               7E428CE513E3407F003B661C /* ResourceHandleIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7E428CE413E3407F003B661C /* ResourceHandleIOS.mm */; };
                7E46F6FA1627A2CA00062223 /* JSOESElementIndexUint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E46F6F81627A2C900062223 /* JSOESElementIndexUint.cpp */; };
                7E46F6FB1627A2CA00062223 /* JSOESElementIndexUint.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E46F6F91627A2C900062223 /* JSOESElementIndexUint.h */; };
+               7E474E1E12494DC900235364 /* SQLiteDatabaseTrackerClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E474E1B12494DC900235364 /* SQLiteDatabaseTrackerClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               7E474E1F12494DC900235364 /* SQLiteDatabaseTracker.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E474E1C12494DC900235364 /* SQLiteDatabaseTracker.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               7E474E2012494DC900235364 /* SQLiteDatabaseTracker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E474E1D12494DC900235364 /* SQLiteDatabaseTracker.cpp */; };
                7E5D7A76161D3F8F00896C34 /* OESElementIndexUint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E5D7A73161D3F8F00896C34 /* OESElementIndexUint.cpp */; };
                7E5D7A77161D3F8F00896C34 /* OESElementIndexUint.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E5D7A74161D3F8F00896C34 /* OESElementIndexUint.h */; };
                7E66E23316D6EB6C00F7E7FF /* WebGLCompressedTextureATC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E66E23116D6EB6C00F7E7FF /* WebGLCompressedTextureATC.cpp */; };
                A502C5DF13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = A502C5DD13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h */; };
                A513B3D7114B1666001C429B /* KeyEventCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = A5C974CF11485FF10066F2AB /* KeyEventCocoa.h */; };
                A513B3D8114B166A001C429B /* KeyEventCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5C974D011485FF10066F2AB /* KeyEventCocoa.mm */; };
+               A516E8B7136E04DB0076C3C0 /* LocalizedDateCache.h in Headers */ = {isa = PBXBuildFile; fileRef = A516E8B4136E04DB0076C3C0 /* LocalizedDateCache.h */; };
+               A516E8B8136E04DB0076C3C0 /* LocalizedDateCache.mm in Sources */ = {isa = PBXBuildFile; fileRef = A516E8B5136E04DB0076C3C0 /* LocalizedDateCache.mm */; };
                A54A82EC15228D2F00C72BA6 /* DOMNodePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A54A82EA15228CA300C72BA6 /* DOMNodePrivate.h */; };
                A54A82F115228DF600C72BA6 /* DOMNodePrivate.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = A54A82EA15228CA300C72BA6 /* DOMNodePrivate.h */; };
                A5732B0A136A161D005C8D7C /* DateComponents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5732B08136A161D005C8D7C /* DateComponents.cpp */; };
                A9D248070D757E7D00FDF959 /* JSDOMMimeType.h in Headers */ = {isa = PBXBuildFile; fileRef = A9D248030D757E7D00FDF959 /* JSDOMMimeType.h */; };
                A9D248080D757E7D00FDF959 /* JSDOMMimeTypeArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9D248040D757E7D00FDF959 /* JSDOMMimeTypeArray.cpp */; };
                A9D248090D757E7D00FDF959 /* JSDOMMimeTypeArray.h in Headers */ = {isa = PBXBuildFile; fileRef = A9D248050D757E7D00FDF959 /* JSDOMMimeTypeArray.h */; };
+               AA12DF491743DF83004DAFDF /* PlatformSpeechSynthesizerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = AAE3755D17429BCC006200C2 /* PlatformSpeechSynthesizerIOS.mm */; };
                AA21ECCA0ABF0FBA002B834C /* CSSCursorImageValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA0978ED0ABAA6E100874480 /* CSSCursorImageValue.cpp */; };
                AA21ECCD0ABF0FC6002B834C /* CSSCursorImageValue.h in Headers */ = {isa = PBXBuildFile; fileRef = AA0978EE0ABAA6E100874480 /* CSSCursorImageValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
                AA2A5ACD16A485FA00975A25 /* SpeechSynthesisVoice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA2A5AC616A485D500975A25 /* SpeechSynthesisVoice.cpp */; };
                BE8EF04C171C9014009B48C3 /* JSVideoTrackList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE8EF048171C9014009B48C3 /* JSVideoTrackList.cpp */; };
                BE8EF04D171C9014009B48C3 /* JSVideoTrackList.h in Headers */ = {isa = PBXBuildFile; fileRef = BE8EF049171C9014009B48C3 /* JSVideoTrackList.h */; };
                BE913D80181EF92400DCB09E /* TrackPrivateBase.h in Headers */ = {isa = PBXBuildFile; fileRef = BE913D7F181EF8E500DCB09E /* TrackPrivateBase.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               BEA807C80F714A0300524199 /* SelectionRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEA807C60F714A0300524199 /* SelectionRect.cpp */; };
+               BEA807C90F714A0300524199 /* SelectionRect.h in Headers */ = {isa = PBXBuildFile; fileRef = BEA807C70F714A0300524199 /* SelectionRect.h */; settings = {ATTRIBUTES = (Private, ); }; };
                BEF29EEB1715DD0900C4B4C9 /* AudioTrackPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BEF29EE91715DD0900C4B4C9 /* AudioTrackPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
                BEF29EEC1715DD0900C4B4C9 /* VideoTrackPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BEF29EEA1715DD0900C4B4C9 /* VideoTrackPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
                C046E1AC1208A9FE00BA2CF7 /* LocalizedStrings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C046E1AB1208A9FE00BA2CF7 /* LocalizedStrings.cpp */; };
                C55E38C010040D5D00A56BDB /* StorageNamespaceImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C55E38BC10040D5D00A56BDB /* StorageNamespaceImpl.cpp */; };
                C572EE1F1201C9BC007D8F82 /* JSIDBIndex.h in Headers */ = {isa = PBXBuildFile; fileRef = C572EE1D1201C9BC007D8F82 /* JSIDBIndex.h */; };
                C57FEDE11212EE9C0097BE65 /* FileSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C57FEDE01212EE9C0097BE65 /* FileSystem.cpp */; };
+               C58361A91744523F00173511 /* FontServicesIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = C58361A71744523F00173511 /* FontServicesIOS.h */; };
+               C58361AA1744523F00173511 /* FontServicesIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = C58361A81744523F00173511 /* FontServicesIOS.mm */; };
                C585A66211D4FAC5004C3E4B /* IDBBindingUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C585A66011D4FAC5004C3E4B /* IDBBindingUtilities.cpp */; };
                C585A66311D4FAC5004C3E4B /* IDBBindingUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = C585A66111D4FAC5004C3E4B /* IDBBindingUtilities.h */; };
                C585A67D11D4FB08004C3E4B /* JSIDBAny.h in Headers */ = {isa = PBXBuildFile; fileRef = C585A66511D4FB07004C3E4B /* JSIDBAny.h */; };
                CD54A763180F9F7000B076C9 /* AudioTrackPrivateMediaSourceAVFObjC.h in Headers */ = {isa = PBXBuildFile; fileRef = CD54A761180F9F7000B076C9 /* AudioTrackPrivateMediaSourceAVFObjC.h */; };
                CD54DE4717468B6F005E5B36 /* MediaSessionManagerMac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD54DE4517468B6F005E5B36 /* MediaSessionManagerMac.cpp */; };
                CD54DE4B17469C6D005E5B36 /* AudioSessionMac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD54DE4917469C6D005E5B36 /* AudioSessionMac.cpp */; };
+               CD5596911475B678001D0BD0 /* AudioFileReaderIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD55968F1475B678001D0BD0 /* AudioFileReaderIOS.cpp */; };
+               CD5596921475B678001D0BD0 /* AudioFileReaderIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5596901475B678001D0BD0 /* AudioFileReaderIOS.h */; };
                CD61FE671794AADB004101EB /* MediaSourceRegistry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B1A942E115B5CE2200D525D1 /* MediaSourceRegistry.cpp */; };
                CD61FE681794AADB004101EB /* MediaSourceRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = B1A942E215B5CE2200D525D1 /* MediaSourceRegistry.h */; };
                CD641EB31818F5ED00EE4C41 /* MediaSourcePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = CD641EB11818F5ED00EE4C41 /* MediaSourcePrivate.h */; };
                CDC8B5AA18047FF10016E685 /* SourceBufferPrivateAVFObjC.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDC8B5A818047FF10016E685 /* SourceBufferPrivateAVFObjC.mm */; };
                CDC8B5AB18047FF10016E685 /* SourceBufferPrivateAVFObjC.h in Headers */ = {isa = PBXBuildFile; fileRef = CDC8B5A918047FF10016E685 /* SourceBufferPrivateAVFObjC.h */; };
                CDC8B5AD1804AE5D0016E685 /* SourceBufferPrivateClient.h in Headers */ = {isa = PBXBuildFile; fileRef = CDC8B5AC1804AE5D0016E685 /* SourceBufferPrivateClient.h */; };
+               CDCA82961679100F00875714 /* TextTrackRepresentationIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDCA82941679100F00875714 /* TextTrackRepresentationIOS.mm */; };
                CDD525D7145B6DD0008D204D /* JSHTMLMediaElementCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CDF65CCC145B6AFE00C4C7AA /* JSHTMLMediaElementCustom.cpp */; };
                CDD7089618359F6F002B3DC6 /* SampleMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CDD7089418359F6E002B3DC6 /* SampleMap.cpp */; };
                CDD7089718359F6F002B3DC6 /* SampleMap.h in Headers */ = {isa = PBXBuildFile; fileRef = CDD7089518359F6F002B3DC6 /* SampleMap.h */; };
                E1FF8F6C180DB5BE00132674 /* CryptoAlgorithmRegistry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1FF8F6A180DB5BE00132674 /* CryptoAlgorithmRegistry.cpp */; };
                E1FF8F6D180DB5BE00132674 /* CryptoAlgorithmRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = E1FF8F6B180DB5BE00132674 /* CryptoAlgorithmRegistry.h */; };
                E401C27517CE53EC00C41A35 /* ElementIteratorAssertions.h in Headers */ = {isa = PBXBuildFile; fileRef = E401C27417CE53EC00C41A35 /* ElementIteratorAssertions.h */; };
+               E424A39E1330DF0100CF6DC9 /* TileGridTile.h in Headers */ = {isa = PBXBuildFile; fileRef = E424A39D1330DF0100CF6DC9 /* TileGridTile.h */; };
+               E424A3A01330DF1E00CF6DC9 /* TileGridTile.mm in Sources */ = {isa = PBXBuildFile; fileRef = E424A39F1330DF1E00CF6DC9 /* TileGridTile.mm */; };
                E425A49A18292B840020CFCF /* CollectionIndexCache.h in Headers */ = {isa = PBXBuildFile; fileRef = E425A49918292B840020CFCF /* CollectionIndexCache.h */; };
                E4295FA412B0614E00D1ACE0 /* ResourceLoadPriority.h in Headers */ = {isa = PBXBuildFile; fileRef = E4295FA312B0614E00D1ACE0 /* ResourceLoadPriority.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E43105B816750F0C00DB2FB8 /* NodeTraversal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43105B716750F0C00DB2FB8 /* NodeTraversal.cpp */; };
                E44EE3A817577EBD00EEE8CF /* FontGenericFamilies.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E44EE3A617576E5500EEE8CF /* FontGenericFamilies.cpp */; };
                E45322AB140CE267005A0F92 /* SelectorQuery.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45322A9140CE267005A0F92 /* SelectorQuery.cpp */; };
                E45322AC140CE267005A0F92 /* SelectorQuery.h in Headers */ = {isa = PBXBuildFile; fileRef = E45322AA140CE267005A0F92 /* SelectorQuery.h */; };
+               E453901D0EAFCACA003695C8 /* MIMETypeRegistryIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390180EAFCACA003695C8 /* MIMETypeRegistryIOS.mm */; };
                E453901E0EAFCACA003695C8 /* PasteboardIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390190EAFCACA003695C8 /* PasteboardIOS.mm */; };
+               E45390430EAFD637003695C8 /* PlatformScreenIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390320EAFD637003695C8 /* PlatformScreenIOS.mm */; };
+               E45390450EAFD637003695C8 /* ScrollViewIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390340EAFD637003695C8 /* ScrollViewIOS.mm */; };
                E45390460EAFD637003695C8 /* SharedTimerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390350EAFD637003695C8 /* SharedTimerIOS.mm */; };
+               E45390470EAFD637003695C8 /* SoundIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390360EAFD637003695C8 /* SoundIOS.mm */; };
+               E45390490EAFD637003695C8 /* WebCoreSystemInterfaceIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E45390380EAFD637003695C8 /* WebCoreSystemInterfaceIOS.mm */; };
+               E453904D0EAFD637003695C8 /* WidgetIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E453903C0EAFD637003695C8 /* WidgetIOS.mm */; };
+               E45390AE0EAFF4B5003695C8 /* SystemMemoryIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45390AD0EAFF4B5003695C8 /* SystemMemoryIOS.cpp */; };
                E462A4A1113E71BE004A4220 /* IntPointHash.h in Headers */ = {isa = PBXBuildFile; fileRef = E462A4A0113E71BE004A4220 /* IntPointHash.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E46A2B1C17CA65B9000DBCD8 /* ElementDescendantIterator.h in Headers */ = {isa = PBXBuildFile; fileRef = E46A2B1B17CA65B9000DBCD8 /* ElementDescendantIterator.h */; };
                E46A2B1E17CA76B1000DBCD8 /* ElementChildIterator.h in Headers */ = {isa = PBXBuildFile; fileRef = E46A2B1D17CA76B1000DBCD8 /* ElementChildIterator.h */; };
                E4AFD00E0DAF335500F5F55C /* SMILTimeContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = E4AFD0080DAF335400F5F55C /* SMILTimeContainer.h */; };
                E4AFD00F0DAF335500F5F55C /* SVGSMILElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4AFD0090DAF335400F5F55C /* SVGSMILElement.cpp */; };
                E4AFD0100DAF335500F5F55C /* SVGSMILElement.h in Headers */ = {isa = PBXBuildFile; fileRef = E4AFD00A0DAF335400F5F55C /* SVGSMILElement.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               E4B65A58132FA8E70070E7BE /* TileGrid.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B65A57132FA8E70070E7BE /* TileGrid.h */; };
+               E4B65A5A132FAAF90070E7BE /* TileGrid.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4B65A59132FAAF90070E7BE /* TileGrid.mm */; };
+               E4B65A5C132FACB00070E7BE /* TileLayer.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B65A5B132FACB00070E7BE /* TileLayer.h */; };
+               E4B65A5E132FADB60070E7BE /* TileLayer.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4B65A5D132FADB60070E7BE /* TileLayer.mm */; };
                E4BBED0E14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4BBED0C14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.cpp */; };
                E4BBED0F14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.h in Headers */ = {isa = PBXBuildFile; fileRef = E4BBED0D14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.h */; };
                E4BBED4C14FCDBA1003F0B98 /* StyleRule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4BBED4A14FCDBA1003F0B98 /* StyleRule.cpp */; };
                E4C1789B0EE6903800824D69 /* CSSSelectorList.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C178960EE6903800824D69 /* CSSSelectorList.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E4C279580CF9741900E97B98 /* RenderMedia.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C279560CF9741900E97B98 /* RenderMedia.cpp */; };
                E4C279590CF9741900E97B98 /* RenderMedia.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C279570CF9741900E97B98 /* RenderMedia.h */; };
+               E4C3B1FA0F0E4161009693F6 /* TileCache.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C3B1F90F0E4161009693F6 /* TileCache.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               E4C3B1FC0F0E4170009693F6 /* TileCache.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4C3B1FB0F0E4170009693F6 /* TileCache.mm */; };
                E4C91A0E1802343100A17F6D /* TextPaintStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C91A0D1802343100A17F6D /* TextPaintStyle.h */; };
                E4C91A101802343900A17F6D /* TextPaintStyle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C91A0F1802343900A17F6D /* TextPaintStyle.cpp */; };
                E4C91A16180999F100A17F6D /* RenderTextLineBoxes.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C91A15180999F100A17F6D /* RenderTextLineBoxes.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E4D988B617BFEB210084FB88 /* TextNodeTraversal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4D988B517BFEB210084FB88 /* TextNodeTraversal.cpp */; };
                E4DEAA1717A93DC3000E0430 /* StyleResolveTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4DEAA1517A93DC3000E0430 /* StyleResolveTree.cpp */; };
                E4DEAA1817A93DC3000E0430 /* StyleResolveTree.h in Headers */ = {isa = PBXBuildFile; fileRef = E4DEAA1617A93DC3000E0430 /* StyleResolveTree.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               E4E39AFB1330EFA8003AB274 /* TileLayerPool.h in Headers */ = {isa = PBXBuildFile; fileRef = E4E39AFA1330EFA8003AB274 /* TileLayerPool.h */; };
+               E4E39AFD1330EFC6003AB274 /* TileLayerPool.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4E39AFC1330EFC5003AB274 /* TileLayerPool.mm */; };
                E4E9B1191810916F003ACCDF /* SimpleLineLayoutResolver.h in Headers */ = {isa = PBXBuildFile; fileRef = E4E9B1181810916F003ACCDF /* SimpleLineLayoutResolver.h */; };
                E4E9B11B18145692003ACCDF /* SimpleLineLayoutFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4E9B11A18145692003ACCDF /* SimpleLineLayoutFunctions.cpp */; };
                E4E9B11D1814569C003ACCDF /* SimpleLineLayoutFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = E4E9B11C1814569C003ACCDF /* SimpleLineLayoutFunctions.h */; };
                FDF7E9C313AC21DB00A51EAC /* JSAudioBufferCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDF7E9C113AC21DB00A51EAC /* JSAudioBufferCallback.cpp */; };
                FDF7E9C413AC21DB00A51EAC /* JSAudioBufferCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = FDF7E9C213AC21DB00A51EAC /* JSAudioBufferCallback.h */; };
                FE09DB49169E2D6E00622557 /* DatabaseError.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09DB46169E2D6E00622557 /* DatabaseError.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               FE0D84E910484348001A179E /* WebEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = FE0D84E810484348001A179E /* WebEvent.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               FE0D84EB1048436E001A179E /* WebEvent.mm in Sources */ = {isa = PBXBuildFile; fileRef = FE0D84EA1048436E001A179E /* WebEvent.mm */; };
                FE115FAB167988CD00249134 /* AbstractDatabaseServer.h in Headers */ = {isa = PBXBuildFile; fileRef = FE115FA9167988CD00249134 /* AbstractDatabaseServer.h */; settings = {ATTRIBUTES = (Private, ); }; };
                FE16CFD3169D1DED00D3A0C7 /* DatabaseBackend.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE16CFCF169D1DEC00D3A0C7 /* DatabaseBackend.cpp */; };
                FE16CFD4169D1DED00D3A0C7 /* DatabaseBackend.h in Headers */ = {isa = PBXBuildFile; fileRef = FE16CFD0169D1DEC00D3A0C7 /* DatabaseBackend.h */; settings = {ATTRIBUTES = (Private, ); }; };
                FEBC5F3216BD0CC300659BD3 /* DatabaseBase.h in Headers */ = {isa = PBXBuildFile; fileRef = FEBC5F3016BD0CC300659BD3 /* DatabaseBase.h */; settings = {ATTRIBUTES = (Private, ); }; };
                FED13D3A0CEA934600D89466 /* EditorIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = FED13D390CEA934600D89466 /* EditorIOS.mm */; };
                FED13D3D0CEA936A00D89466 /* FrameIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = FED13D3B0CEA936A00D89466 /* FrameIOS.mm */; };
+               FED13D400CEA939400D89466 /* IconIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = FED13D3F0CEA939400D89466 /* IconIOS.mm */; };
                FED13D520CEA949700D89466 /* RenderThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = FED13D500CEA949700D89466 /* RenderThemeIOS.h */; };
                FED48390CED66C3255F72C59 /* MathMLSelectElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F75A059AF170D8FAA5B8CABE /* MathMLSelectElement.cpp */; };
                FEDEF84116797108000E444A /* DatabaseStrategy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FEDEF83F16797108000E444A /* DatabaseStrategy.cpp */; };
                072AE1E3183C0741000A5988 /* QuickTimePluginReplacement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = QuickTimePluginReplacement.idl; path = plugins/QuickTimePluginReplacement.idl; sourceTree = "<group>"; };
                072AE1E4183C0741000A5988 /* QuickTimePluginReplacement.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = QuickTimePluginReplacement.js; path = plugins/QuickTimePluginReplacement.js; sourceTree = "<group>"; };
                072CA86016CB4DC3008AE131 /* CaptionUserPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CaptionUserPreferences.cpp; sourceTree = "<group>"; };
+               07357C7616D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InbandTextTrackPrivateAVFIOS.h; sourceTree = "<group>"; };
+               07357C7716D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InbandTextTrackPrivateAVFIOS.mm; sourceTree = "<group>"; };
                0735EE690F40C5E4004A2604 /* MediaPlayerProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaPlayerProxy.h; sourceTree = "<group>"; };
                07367DDD172CA67F00D861B9 /* InbandTextTrackPrivateLegacyAVFObjC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InbandTextTrackPrivateLegacyAVFObjC.h; path = objc/InbandTextTrackPrivateLegacyAVFObjC.h; sourceTree = "<group>"; };
                07367DDE172CA67F00D861B9 /* InbandTextTrackPrivateLegacyAVFObjC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InbandTextTrackPrivateLegacyAVFObjC.mm; path = objc/InbandTextTrackPrivateLegacyAVFObjC.mm; sourceTree = "<group>"; };
                073BE34517D17E7A002BD431 /* JSNavigatorUserMediaErrorCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSNavigatorUserMediaErrorCallback.h; sourceTree = "<group>"; };
                073BE34617D17E7A002BD431 /* JSNavigatorUserMediaSuccessCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSNavigatorUserMediaSuccessCallback.cpp; sourceTree = "<group>"; };
                073BE34717D17E7A002BD431 /* JSNavigatorUserMediaSuccessCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSNavigatorUserMediaSuccessCallback.h; sourceTree = "<group>"; };
+               074300A30F4B8BCF008076CD /* MediaPlayerPrivateIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MediaPlayerPrivateIOS.mm; sourceTree = "<group>"; };
+               074300A40F4B8BCF008076CD /* MediaPlayerPrivateIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaPlayerPrivateIOS.h; sourceTree = "<group>"; };
                0753860014489E9800B78452 /* CachedTextTrack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CachedTextTrack.cpp; sourceTree = "<group>"; };
                0753860114489E9800B78452 /* CachedTextTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedTextTrack.h; sourceTree = "<group>"; };
                076306CC17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamTrackSourcesCallback.h; sourceTree = "<group>"; };
                0F13163D16ED0CC80035CC04 /* PlatformCAFilters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PlatformCAFilters.h; path = ca/PlatformCAFilters.h; sourceTree = "<group>"; };
                0F13163F16ED0CDE0035CC04 /* PlatformCAFiltersMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformCAFiltersMac.mm; path = ca/mac/PlatformCAFiltersMac.mm; sourceTree = "<group>"; };
                0F15DA890F3AAEE70000CE47 /* AnimationControllerPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AnimationControllerPrivate.h; path = animation/AnimationControllerPrivate.h; sourceTree = "<group>"; };
+               0F17747E1378B771009DA76A /* ScrollAnimatorIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScrollAnimatorIOS.h; path = ios/ScrollAnimatorIOS.h; sourceTree = "<group>"; };
+               0F17747F1378B772009DA76A /* ScrollAnimatorIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ScrollAnimatorIOS.mm; path = ios/ScrollAnimatorIOS.mm; sourceTree = "<group>"; };
                0F29C16D1300C2E2002D794E /* AccessibilityAllInOne.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityAllInOne.cpp; sourceTree = "<group>"; };
                0F3DD44D12F5EA1B000D9190 /* ShadowBlur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShadowBlur.cpp; sourceTree = "<group>"; };
                0F3DD44E12F5EA1B000D9190 /* ShadowBlur.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShadowBlur.h; sourceTree = "<group>"; };
                0F605AEB15F94848004DF0C0 /* ScrollingConstraints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollingConstraints.h; sourceTree = "<group>"; };
                0F6383DB18615B29003E5DB5 /* ThreadedScrollingTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ThreadedScrollingTree.cpp; sourceTree = "<group>"; };
                0F6383DC18615B29003E5DB5 /* ThreadedScrollingTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadedScrollingTree.h; sourceTree = "<group>"; };
+               0F97A657155DA81E00FADD4C /* DisplayRefreshMonitorIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DisplayRefreshMonitorIOS.mm; sourceTree = "<group>"; };
                0FA24D77162DF91900A3F4C0 /* GraphicsLayerUpdater.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GraphicsLayerUpdater.cpp; sourceTree = "<group>"; };
                0FA24D78162DF91900A3F4C0 /* GraphicsLayerUpdater.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GraphicsLayerUpdater.h; sourceTree = "<group>"; };
                0FA88EBC16A8D1BD00F99984 /* ScrollingStateScrollingNodeMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollingStateScrollingNodeMac.mm; sourceTree = "<group>"; };
                1F3C3BE8135CAF3C00B8C1AC /* MediaControls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaControls.cpp; sourceTree = "<group>"; };
                1F3C3BE9135CAF3C00B8C1AC /* MediaControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaControls.h; sourceTree = "<group>"; };
                1F3F19521499CA7600A5AEA7 /* PODFreeListArena.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PODFreeListArena.h; sourceTree = "<group>"; };
+               1F68D4AD14BB9DCA007B5C62 /* MemoryPressureHandlerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = MemoryPressureHandlerIOS.mm; path = ios/MemoryPressureHandlerIOS.mm; sourceTree = "<group>"; };
                1FAFBF1615A5FA5200083A20 /* UTIUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UTIUtilities.h; sourceTree = "<group>"; };
                1FAFBF1715A5FA5200083A20 /* UTIUtilities.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UTIUtilities.mm; sourceTree = "<group>"; };
                1FC40FB71655C5910040F29E /* SubimageCacheWithTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubimageCacheWithTimer.h; sourceTree = "<group>"; };
                265541371489811C000DFC5D /* KeyEventCodesIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KeyEventCodesIOS.h; path = ios/KeyEventCodesIOS.h; sourceTree = "<group>"; };
                265541381489811C000DFC5D /* KeyEventIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = KeyEventIOS.mm; path = ios/KeyEventIOS.mm; sourceTree = "<group>"; };
                2655414B1489AA2B000DFC5D /* CursorIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CursorIOS.cpp; path = ios/CursorIOS.cpp; sourceTree = "<group>"; };
+               26601EBD14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PlatformEventFactoryIOS.h; path = ios/PlatformEventFactoryIOS.h; sourceTree = "<group>"; };
+               26601EBE14B3B9AD0012C0FE /* PlatformEventFactoryIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformEventFactoryIOS.mm; path = ios/PlatformEventFactoryIOS.mm; sourceTree = "<group>"; };
                269239911505E1AA009E57FC /* JSIDBVersionChangeEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSIDBVersionChangeEvent.cpp; sourceTree = "<group>"; };
                269239921505E1AA009E57FC /* JSIDBVersionChangeEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSIDBVersionChangeEvent.h; sourceTree = "<group>"; };
                26B9998E1803AE7200D01121 /* RegisterAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RegisterAllocator.h; path = cssjit/RegisterAllocator.h; sourceTree = "<group>"; };
                26FAE4C91852E3A5004C8C46 /* ResourceHandleCFURLConnectionDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResourceHandleCFURLConnectionDelegate.h; sourceTree = "<group>"; };
                26FAE4CA1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SynchronousResourceHandleCFURLConnectionDelegate.cpp; sourceTree = "<group>"; };
                26FAE4CB1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SynchronousResourceHandleCFURLConnectionDelegate.h; sourceTree = "<group>"; };
+               2903716416BA11BC00FEFDF0 /* ContentFilterIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ContentFilterIOS.mm; path = ios/ContentFilterIOS.mm; sourceTree = "<group>"; };
                2917B55E1473496C0052C9D0 /* LayerFlushScheduler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LayerFlushScheduler.cpp; path = ca/LayerFlushScheduler.cpp; sourceTree = "<group>"; };
                2917B55F1473496C0052C9D0 /* LayerFlushScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LayerFlushScheduler.h; path = ca/LayerFlushScheduler.h; sourceTree = "<group>"; };
                2917B5601473496C0052C9D0 /* LayerFlushSchedulerClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LayerFlushSchedulerClient.h; path = ca/LayerFlushSchedulerClient.h; sourceTree = "<group>"; };
                31313F631443B35E006E2A90 /* FilterEffectRenderer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FilterEffectRenderer.cpp; sourceTree = "<group>"; };
                31313F641443B35E006E2A90 /* FilterEffectRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FilterEffectRenderer.h; sourceTree = "<group>"; };
                3138A9E41474434600B0ED12 /* StyleShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StyleShader.h; path = style/StyleShader.h; sourceTree = "<group>"; };
+               31403797124BEA7F00AF40E4 /* WebCoreMotionManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebCoreMotionManager.h; path = ios/WebCoreMotionManager.h; sourceTree = "<group>"; };
+               31403798124BEA7F00AF40E4 /* WebCoreMotionManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WebCoreMotionManager.mm; path = ios/WebCoreMotionManager.mm; sourceTree = "<group>"; };
+               31403799124BEA7F00AF40E4 /* DeviceOrientationClientIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeviceOrientationClientIOS.h; path = ios/DeviceOrientationClientIOS.h; sourceTree = "<group>"; };
+               3140379A124BEA7F00AF40E4 /* DeviceOrientationClientIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = DeviceOrientationClientIOS.mm; path = ios/DeviceOrientationClientIOS.mm; sourceTree = "<group>"; };
                3146FE6518442087001A937C /* OESTextureFloatLinear.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = OESTextureFloatLinear.cpp; path = canvas/OESTextureFloatLinear.cpp; sourceTree = "<group>"; };
                3146FE6618442087001A937C /* OESTextureFloatLinear.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OESTextureFloatLinear.h; path = canvas/OESTextureFloatLinear.h; sourceTree = "<group>"; };
                3146FE6718442087001A937C /* OESTextureFloatLinear.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = OESTextureFloatLinear.idl; path = canvas/OESTextureFloatLinear.idl; sourceTree = "<group>"; };
                319AE061142D6B24006563A1 /* StyleFilterData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = StyleFilterData.cpp; path = style/StyleFilterData.cpp; sourceTree = "<group>"; };
                319AE062142D6B24006563A1 /* StyleFilterData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StyleFilterData.h; path = style/StyleFilterData.h; sourceTree = "<group>"; };
                319FBD5D15D2F444009640A6 /* CachedImageClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedImageClient.h; sourceTree = "<group>"; };
+               31AB4FFF122878A2001A7DB0 /* GraphicsContext3DIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GraphicsContext3DIOS.h; sourceTree = "<group>"; };
                31C0FF1B0E4CEB6E007D6FE5 /* WebKitAnimationEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebKitAnimationEvent.cpp; sourceTree = "<group>"; };
                31C0FF1C0E4CEB6E007D6FE5 /* WebKitAnimationEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitAnimationEvent.h; sourceTree = "<group>"; };
                31C0FF1D0E4CEB6E007D6FE5 /* WebKitAnimationEvent.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebKitAnimationEvent.idl; sourceTree = "<group>"; };
                31D591B116697A6C00E6BF02 /* PlugInClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlugInClient.h; sourceTree = "<group>"; };
                31E8D8BA160BC94B004CE8F5 /* RenderSnapshottedPlugIn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSnapshottedPlugIn.cpp; sourceTree = "<group>"; };
                31E8D8BB160BC94C004CE8F5 /* RenderSnapshottedPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSnapshottedPlugIn.h; sourceTree = "<group>"; };
+               31EAF97C121435A400E7C1BF /* DeviceMotionClientIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeviceMotionClientIOS.h; path = ios/DeviceMotionClientIOS.h; sourceTree = "<group>"; };
+               31EAF97D121435A400E7C1BF /* DeviceMotionClientIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = DeviceMotionClientIOS.mm; path = ios/DeviceMotionClientIOS.mm; sourceTree = "<group>"; };
                31EC1D5014FEFD0800C94662 /* NotificationPermissionCallback.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NotificationPermissionCallback.idl; sourceTree = "<group>"; };
                31EC1DAC14FF26EA00C94662 /* NotificationPermissionCallback.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NotificationPermissionCallback.h; sourceTree = "<group>"; };
                31EC1E2614FF60EE00C94662 /* JSNotificationPermissionCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSNotificationPermissionCallback.cpp; sourceTree = "<group>"; };
                371F53E70D2704F900ECE0D5 /* CSSUnicodeRangeValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSUnicodeRangeValue.h; sourceTree = "<group>"; };
                371F53E80D2704F900ECE0D5 /* CSSUnicodeRangeValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSUnicodeRangeValue.cpp; sourceTree = "<group>"; };
                37202198106213C600F25C4B /* FontSmoothingMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontSmoothingMode.h; sourceTree = "<group>"; };
+               3727DFD4142AAE4500D449CB /* FontCacheIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FontCacheIOS.mm; sourceTree = "<group>"; };
                372C00C3129611F1005C9575 /* TextBoundaries.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextBoundaries.cpp; sourceTree = "<group>"; };
                372C00D8129619F8005C9575 /* FindOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FindOptions.h; sourceTree = "<group>"; };
                3744570E0DB05FA500AE0992 /* SVGGlyphMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGGlyphMap.h; sourceTree = "<group>"; };
                37DDCDA31384501C0008B793 /* MHTMLParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MHTMLParser.h; sourceTree = "<group>"; };
                37E3524A12450C5200BAF5D9 /* InputType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InputType.cpp; sourceTree = "<group>"; };
                37E3524C12450C6600BAF5D9 /* InputType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputType.h; sourceTree = "<group>"; };
+               37E6594F163B10C200EB4574 /* SimpleFontDataIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SimpleFontDataIOS.mm; sourceTree = "<group>"; };
                37F818FB0D657606005E1F05 /* WebCoreURLResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreURLResponse.h; sourceTree = "<group>"; };
                37F818FC0D657606005E1F05 /* WebCoreURLResponse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebCoreURLResponse.mm; sourceTree = "<group>"; };
                37FC96DA1104ED71003E1FAD /* TrailingFloatsRootInlineBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TrailingFloatsRootInlineBox.h; sourceTree = "<group>"; };
                4429AAFF0CB84EC3007647C5 /* DOMHTMLObjectElementPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOMHTMLObjectElementPrivate.h; sourceTree = "<group>"; };
                4429AB070CB84F81007647C5 /* DOMTextEventInternal.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOMTextEventInternal.h; sourceTree = "<group>"; };
                442ABCD517D9262F00D30715 /* SynchronousLoaderClientCFNet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SynchronousLoaderClientCFNet.cpp; sourceTree = "<group>"; };
+               442AF7A7102CDDEA008FD4D3 /* QuickLook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickLook.h; sourceTree = "<group>"; };
+               442AF7A8102CDDEA008FD4D3 /* QuickLook.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = QuickLook.mm; sourceTree = "<group>"; };
                44311CD412E4E22D000A8D19 /* DOMDocumentFragmentPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMDocumentFragmentPrivate.h; sourceTree = "<group>"; };
                44311CD512E4E22D000A8D19 /* DOMDocumentPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMDocumentPrivate.h; sourceTree = "<group>"; };
+               443F04260E75C8FB007E5407 /* NetworkStateNotifierIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NetworkStateNotifierIOS.cpp; sourceTree = "<group>"; };
+               444D4E210F708B2E003158E0 /* WebCoreURLResponseIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebCoreURLResponseIOS.mm; sourceTree = "<group>"; };
+               4476531A133170990006B789 /* SSLKeyGeneratorIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SSLKeyGeneratorIOS.cpp; path = ios/SSLKeyGeneratorIOS.cpp; sourceTree = "<group>"; };
                447958021643B47B001E0A7F /* ParsedContentType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParsedContentType.cpp; sourceTree = "<group>"; };
                447958031643B47B001E0A7F /* ParsedContentType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParsedContentType.h; sourceTree = "<group>"; };
                448A29BD0A46D9CB0030759F /* JSHTMLOptionsCollection.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSHTMLOptionsCollection.h; sourceTree = "<group>"; };
                4496E39F139813A5003EE32A /* JSSVGMPathElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSVGMPathElement.h; sourceTree = "<group>"; };
                4496E3A1139813CB003EE32A /* JSSVGMPathElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGMPathElement.cpp; sourceTree = "<group>"; };
                449B19F30FA72ECE0015CA4A /* HTMLParserQuirks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLParserQuirks.h; sourceTree = "<group>"; };
+               44A20DB80F84166C00B3E1FE /* WebCoreURLResponseIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreURLResponseIOS.h; sourceTree = "<group>"; };
                44A28AAB12DFB8AC00AE923B /* MathMLElementFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MathMLElementFactory.h; sourceTree = "<group>"; };
                44A28AAE12DFB8BF00AE923B /* MathMLNames.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MathMLNames.h; sourceTree = "<group>"; };
+               44C363EE0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuntimeApplicationChecksIOS.h; sourceTree = "<group>"; };
+               44C363EF0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RuntimeApplicationChecksIOS.mm; sourceTree = "<group>"; };
+               44C3CFE71556BE5D00013609 /* WebCoreSystemInterfaceIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebCoreSystemInterfaceIOS.h; path = ios/WebCoreSystemInterfaceIOS.h; sourceTree = "<group>"; };
+               44C991810F3D1E0D00586670 /* ScrollbarThemeIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ScrollbarThemeIOS.mm; path = ios/ScrollbarThemeIOS.mm; sourceTree = "<group>"; };
+               44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScrollbarThemeIOS.h; path = ios/ScrollbarThemeIOS.h; sourceTree = "<group>"; };
+               44C9919D0F3D210E00586670 /* ThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ThemeIOS.h; path = ios/ThemeIOS.h; sourceTree = "<group>"; };
+               44C9919E0F3D210E00586670 /* ThemeIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ThemeIOS.mm; path = ios/ThemeIOS.mm; sourceTree = "<group>"; };
                44D8DA98139545BE00337B75 /* SVGMPathElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SVGMPathElement.idl; sourceTree = "<group>"; };
                44D8DA9A139545CD00337B75 /* SVGAnimateMotionElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SVGAnimateMotionElement.idl; sourceTree = "<group>"; };
                44DAB5AF15A623580097C1E4 /* Extensions3DOpenGLCommon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Extensions3DOpenGLCommon.cpp; sourceTree = "<group>"; };
                7E12E90E15FA5D3A005E4126 /* CustomFilterMeshGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CustomFilterMeshGenerator.cpp; path = filters/CustomFilterMeshGenerator.cpp; sourceTree = "<group>"; };
                7E33CD00127F340D00BE8F17 /* PurgePriority.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PurgePriority.h; sourceTree = "<group>"; };
                7E37EF2D1339208800B29250 /* SubresourceLoaderCF.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SubresourceLoaderCF.cpp; path = cf/SubresourceLoaderCF.cpp; sourceTree = "<group>"; };
+               7E428CE413E3407F003B661C /* ResourceHandleIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ResourceHandleIOS.mm; sourceTree = "<group>"; };
                7E46F6F81627A2C900062223 /* JSOESElementIndexUint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSOESElementIndexUint.cpp; sourceTree = "<group>"; };
                7E46F6F91627A2C900062223 /* JSOESElementIndexUint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSOESElementIndexUint.h; sourceTree = "<group>"; };
+               7E474E1B12494DC900235364 /* SQLiteDatabaseTrackerClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SQLiteDatabaseTrackerClient.h; sourceTree = "<group>"; };
+               7E474E1C12494DC900235364 /* SQLiteDatabaseTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SQLiteDatabaseTracker.h; sourceTree = "<group>"; };
+               7E474E1D12494DC900235364 /* SQLiteDatabaseTracker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SQLiteDatabaseTracker.cpp; sourceTree = "<group>"; };
                7E5D7A73161D3F8F00896C34 /* OESElementIndexUint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = OESElementIndexUint.cpp; path = canvas/OESElementIndexUint.cpp; sourceTree = "<group>"; };
                7E5D7A74161D3F8F00896C34 /* OESElementIndexUint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OESElementIndexUint.h; path = canvas/OESElementIndexUint.h; sourceTree = "<group>"; };
                7E66E23116D6EB6C00F7E7FF /* WebGLCompressedTextureATC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebGLCompressedTextureATC.cpp; path = canvas/WebGLCompressedTextureATC.cpp; sourceTree = "<group>"; };
                A456FA2511AD4A830020B420 /* LabelsNodeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LabelsNodeList.h; sourceTree = "<group>"; };
                A501920C132EBF2E008BFE55 /* Autocapitalize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Autocapitalize.h; sourceTree = "<group>"; };
                A502C5DD13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebSafeGCActivityCallbackIOS.h; path = ios/WebSafeGCActivityCallbackIOS.h; sourceTree = "<group>"; };
+               A516E8B4136E04DB0076C3C0 /* LocalizedDateCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalizedDateCache.h; sourceTree = "<group>"; };
+               A516E8B5136E04DB0076C3C0 /* LocalizedDateCache.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalizedDateCache.mm; sourceTree = "<group>"; };
                A518225317E28CF100A9BA1D /* Scripts */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Scripts; sourceTree = "<group>"; };
                A518225417E2A0D400A9BA1D /* InspectorOverlayPage.css */ = {isa = PBXFileReference; lastKnownFileType = text.css; path = InspectorOverlayPage.css; sourceTree = "<group>"; };
                A518225517E2A0D400A9BA1D /* InspectorOverlayPage.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; path = InspectorOverlayPage.js; sourceTree = "<group>"; };
                AAD766EA157E502F00E85423 /* InspectorCanvasInstrumentation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorCanvasInstrumentation.h; sourceTree = "<group>"; };
                AAE27B7416CBFC0D00623043 /* PlatformSpeechSynthesizerMock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlatformSpeechSynthesizerMock.cpp; sourceTree = "<group>"; };
                AAE27B7516CBFC0D00623043 /* PlatformSpeechSynthesizerMock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformSpeechSynthesizerMock.h; sourceTree = "<group>"; };
+               AAE3755D17429BCC006200C2 /* PlatformSpeechSynthesizerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformSpeechSynthesizerIOS.mm; path = ios/PlatformSpeechSynthesizerIOS.mm; sourceTree = "<group>"; };
                AAF5B7B11524B4BD0004CB49 /* WebSocketFrame.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebSocketFrame.cpp; sourceTree = "<group>"; };
                AB23A32509BBA7D00067CC53 /* BeforeTextInsertedEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = BeforeTextInsertedEvent.cpp; sourceTree = "<group>"; };
                AB23A32609BBA7D00067CC53 /* BeforeTextInsertedEvent.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = BeforeTextInsertedEvent.h; sourceTree = "<group>"; };
                BE91FC8B06133666005E3790 /* Position.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = Position.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
                BE91FC8C06133666005E3790 /* Position.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Position.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
                BE983D95052A2E0A00892D85 /* WebCoreKeyboardUIMode.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreKeyboardUIMode.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
+               BEA807C60F714A0300524199 /* SelectionRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SelectionRect.cpp; path = ios/SelectionRect.cpp; sourceTree = "<group>"; };
+               BEA807C70F714A0300524199 /* SelectionRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SelectionRect.h; path = ios/SelectionRect.h; sourceTree = "<group>"; };
                BEF29EE91715DD0900C4B4C9 /* AudioTrackPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AudioTrackPrivate.h; sourceTree = "<group>"; };
                BEF29EEA1715DD0900C4B4C9 /* VideoTrackPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VideoTrackPrivate.h; sourceTree = "<group>"; };
                C046E1AB1208A9FE00BA2CF7 /* LocalizedStrings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LocalizedStrings.cpp; sourceTree = "<group>"; };
                C55E38BC10040D5D00A56BDB /* StorageNamespaceImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StorageNamespaceImpl.cpp; sourceTree = "<group>"; };
                C572EE1D1201C9BC007D8F82 /* JSIDBIndex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSIDBIndex.h; sourceTree = "<group>"; };
                C57FEDE01212EE9C0097BE65 /* FileSystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileSystem.cpp; sourceTree = "<group>"; };
+               C58361A71744523F00173511 /* FontServicesIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontServicesIOS.h; sourceTree = "<group>"; };
+               C58361A81744523F00173511 /* FontServicesIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FontServicesIOS.mm; sourceTree = "<group>"; };
                C585A66011D4FAC5004C3E4B /* IDBBindingUtilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IDBBindingUtilities.cpp; sourceTree = "<group>"; };
                C585A66111D4FAC5004C3E4B /* IDBBindingUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IDBBindingUtilities.h; sourceTree = "<group>"; };
                C585A66511D4FB07004C3E4B /* JSIDBAny.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSIDBAny.h; sourceTree = "<group>"; };
                CD54A761180F9F7000B076C9 /* AudioTrackPrivateMediaSourceAVFObjC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AudioTrackPrivateMediaSourceAVFObjC.h; path = objc/AudioTrackPrivateMediaSourceAVFObjC.h; sourceTree = "<group>"; };
                CD54DE4517468B6F005E5B36 /* MediaSessionManagerMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaSessionManagerMac.cpp; sourceTree = "<group>"; };
                CD54DE4917469C6D005E5B36 /* AudioSessionMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AudioSessionMac.cpp; sourceTree = "<group>"; };
+               CD55968F1475B678001D0BD0 /* AudioFileReaderIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AudioFileReaderIOS.cpp; path = ios/AudioFileReaderIOS.cpp; sourceTree = "<group>"; };
+               CD5596901475B678001D0BD0 /* AudioFileReaderIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AudioFileReaderIOS.h; path = ios/AudioFileReaderIOS.h; sourceTree = "<group>"; };
                CD641EB11818F5ED00EE4C41 /* MediaSourcePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaSourcePrivate.h; sourceTree = "<group>"; };
                CD641EB21818F5ED00EE4C41 /* SourceBufferPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceBufferPrivate.h; sourceTree = "<group>"; };
                CD641EBD1819B35900EE4C41 /* MediaTimeMac.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = MediaTimeMac.cpp; sourceTree = "<group>"; };
                CDC8B5A818047FF10016E685 /* SourceBufferPrivateAVFObjC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SourceBufferPrivateAVFObjC.mm; path = objc/SourceBufferPrivateAVFObjC.mm; sourceTree = "<group>"; };
                CDC8B5A918047FF10016E685 /* SourceBufferPrivateAVFObjC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SourceBufferPrivateAVFObjC.h; path = objc/SourceBufferPrivateAVFObjC.h; sourceTree = "<group>"; };
                CDC8B5AC1804AE5D0016E685 /* SourceBufferPrivateClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceBufferPrivateClient.h; sourceTree = "<group>"; };
+               CDCA82941679100F00875714 /* TextTrackRepresentationIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TextTrackRepresentationIOS.mm; sourceTree = "<group>"; };
                CDCE5CD014633BC900D47CCA /* EventTargetFactory.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = EventTargetFactory.in; sourceTree = "<group>"; };
                CDD1E525167BA56400CE820B /* TextTrackRepresentation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextTrackRepresentation.h; sourceTree = "<group>"; };
                CDD7089418359F6E002B3DC6 /* SampleMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SampleMap.cpp; sourceTree = "<group>"; };
                CECADFCC1537791D00E37068 /* TextInsertionBaseCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextInsertionBaseCommand.h; sourceTree = "<group>"; };
                CECCFC3A141973D5002A0AC1 /* DecodeEscapeSequences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DecodeEscapeSequences.h; sourceTree = "<group>"; };
                CEDA12D6152CA1CB00D9E08D /* AlternativeTextClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AlternativeTextClient.h; sourceTree = "<group>"; };
+               CEEC6034187DD962003E43BB /* TextTrackRepresentationIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextTrackRepresentationIOS.h; sourceTree = "<group>"; };
                CEF418CC1179678C009D112C /* ViewportArguments.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ViewportArguments.cpp; sourceTree = "<group>"; };
                CEF418CD1179678C009D112C /* ViewportArguments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewportArguments.h; sourceTree = "<group>"; };
                D000EBA011BDAFD400C47726 /* FrameLoaderStateMachine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameLoaderStateMachine.cpp; sourceTree = "<group>"; };
                E406F3FB1198307D009D59D6 /* ColorData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ColorData.cpp; sourceTree = "<group>"; };
                E41EA038119836DB00710BC5 /* CSSPropertyNames.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSPropertyNames.cpp; sourceTree = "<group>"; };
                E41EA0391198374900710BC5 /* CSSValueKeywords.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSValueKeywords.cpp; sourceTree = "<group>"; };
+               E424A39D1330DF0100CF6DC9 /* TileGridTile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TileGridTile.h; path = ios/TileGridTile.h; sourceTree = "<group>"; };
+               E424A39F1330DF1E00CF6DC9 /* TileGridTile.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TileGridTile.mm; path = ios/TileGridTile.mm; sourceTree = "<group>"; };
                E425A49918292B840020CFCF /* CollectionIndexCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CollectionIndexCache.h; sourceTree = "<group>"; };
                E4295FA312B0614E00D1ACE0 /* ResourceLoadPriority.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResourceLoadPriority.h; sourceTree = "<group>"; };
                E43105B716750F0C00DB2FB8 /* NodeTraversal.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NodeTraversal.cpp; sourceTree = "<group>"; };
                E44EE3A717576E5500EEE8CF /* FontGenericFamilies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FontGenericFamilies.h; sourceTree = "<group>"; };
                E45322A9140CE267005A0F92 /* SelectorQuery.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SelectorQuery.cpp; sourceTree = "<group>"; };
                E45322AA140CE267005A0F92 /* SelectorQuery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelectorQuery.h; sourceTree = "<group>"; };
+               E45390180EAFCACA003695C8 /* MIMETypeRegistryIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = MIMETypeRegistryIOS.mm; path = ios/MIMETypeRegistryIOS.mm; sourceTree = "<group>"; };
                E45390190EAFCACA003695C8 /* PasteboardIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PasteboardIOS.mm; path = ios/PasteboardIOS.mm; sourceTree = "<group>"; };
+               E45390320EAFD637003695C8 /* PlatformScreenIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformScreenIOS.mm; path = ios/PlatformScreenIOS.mm; sourceTree = "<group>"; };
+               E45390340EAFD637003695C8 /* ScrollViewIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ScrollViewIOS.mm; path = ios/ScrollViewIOS.mm; sourceTree = "<group>"; };
                E45390350EAFD637003695C8 /* SharedTimerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SharedTimerIOS.mm; path = ios/SharedTimerIOS.mm; sourceTree = "<group>"; };
+               E45390360EAFD637003695C8 /* SoundIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SoundIOS.mm; path = ios/SoundIOS.mm; sourceTree = "<group>"; };
+               E45390380EAFD637003695C8 /* WebCoreSystemInterfaceIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WebCoreSystemInterfaceIOS.mm; path = ios/WebCoreSystemInterfaceIOS.mm; sourceTree = "<group>"; };
+               E453903C0EAFD637003695C8 /* WidgetIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WidgetIOS.mm; path = ios/WidgetIOS.mm; sourceTree = "<group>"; };
+               E45390AD0EAFF4B5003695C8 /* SystemMemoryIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SystemMemoryIOS.cpp; path = ios/SystemMemoryIOS.cpp; sourceTree = "<group>"; };
                E462A4A0113E71BE004A4220 /* IntPointHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IntPointHash.h; sourceTree = "<group>"; };
                E46A2B1B17CA65B9000DBCD8 /* ElementDescendantIterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElementDescendantIterator.h; sourceTree = "<group>"; };
                E46A2B1D17CA76B1000DBCD8 /* ElementChildIterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElementChildIterator.h; sourceTree = "<group>"; };
                E4B423800CBFB73C00AF2ECE /* JSHTMLMediaElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLMediaElement.h; sourceTree = "<group>"; };
                E4B423850CBFB73C00AF2ECE /* JSProgressEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSProgressEvent.cpp; sourceTree = "<group>"; };
                E4B423860CBFB73C00AF2ECE /* JSProgressEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSProgressEvent.h; sourceTree = "<group>"; };
+               E4B65A57132FA8E70070E7BE /* TileGrid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TileGrid.h; path = ios/TileGrid.h; sourceTree = "<group>"; };
+               E4B65A59132FAAF90070E7BE /* TileGrid.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TileGrid.mm; path = ios/TileGrid.mm; sourceTree = "<group>"; };
+               E4B65A5B132FACB00070E7BE /* TileLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TileLayer.h; path = ios/TileLayer.h; sourceTree = "<group>"; };
+               E4B65A5D132FADB60070E7BE /* TileLayer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TileLayer.mm; path = ios/TileLayer.mm; sourceTree = "<group>"; };
                E4BBED0C14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PropertySetCSSStyleDeclaration.cpp; sourceTree = "<group>"; };
                E4BBED0D14F4025D003F0B98 /* PropertySetCSSStyleDeclaration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PropertySetCSSStyleDeclaration.h; sourceTree = "<group>"; };
                E4BBED4A14FCDBA1003F0B98 /* StyleRule.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StyleRule.cpp; sourceTree = "<group>"; };
                E4C178960EE6903800824D69 /* CSSSelectorList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSSelectorList.h; sourceTree = "<group>"; };
                E4C279560CF9741900E97B98 /* RenderMedia.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderMedia.cpp; sourceTree = "<group>"; };
                E4C279570CF9741900E97B98 /* RenderMedia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMedia.h; sourceTree = "<group>"; };
+               E4C3B1F90F0E4161009693F6 /* TileCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TileCache.h; path = ios/TileCache.h; sourceTree = "<group>"; };
+               E4C3B1FB0F0E4170009693F6 /* TileCache.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TileCache.mm; path = ios/TileCache.mm; sourceTree = "<group>"; };
                E4C91A0D1802343100A17F6D /* TextPaintStyle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextPaintStyle.h; sourceTree = "<group>"; };
                E4C91A0F1802343900A17F6D /* TextPaintStyle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextPaintStyle.cpp; sourceTree = "<group>"; };
                E4C91A15180999F100A17F6D /* RenderTextLineBoxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTextLineBoxes.h; sourceTree = "<group>"; };
                E4D988B517BFEB210084FB88 /* TextNodeTraversal.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextNodeTraversal.cpp; sourceTree = "<group>"; };
                E4DEAA1517A93DC3000E0430 /* StyleResolveTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StyleResolveTree.cpp; sourceTree = "<group>"; };
                E4DEAA1617A93DC3000E0430 /* StyleResolveTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StyleResolveTree.h; sourceTree = "<group>"; };
+               E4E39AFA1330EFA8003AB274 /* TileLayerPool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TileLayerPool.h; path = ios/TileLayerPool.h; sourceTree = "<group>"; };
+               E4E39AFC1330EFC5003AB274 /* TileLayerPool.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TileLayerPool.mm; path = ios/TileLayerPool.mm; sourceTree = "<group>"; };
                E4E9B1181810916F003ACCDF /* SimpleLineLayoutResolver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLineLayoutResolver.h; sourceTree = "<group>"; };
                E4E9B11A18145692003ACCDF /* SimpleLineLayoutFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleLineLayoutFunctions.cpp; sourceTree = "<group>"; };
                E4E9B11C1814569C003ACCDF /* SimpleLineLayoutFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLineLayoutFunctions.h; sourceTree = "<group>"; };
                FDF7E9C113AC21DB00A51EAC /* JSAudioBufferCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAudioBufferCallback.cpp; sourceTree = "<group>"; };
                FDF7E9C213AC21DB00A51EAC /* JSAudioBufferCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAudioBufferCallback.h; sourceTree = "<group>"; };
                FE09DB46169E2D6E00622557 /* DatabaseError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseError.h; sourceTree = "<group>"; };
+               FE0D84E810484348001A179E /* WebEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebEvent.h; path = ios/WebEvent.h; sourceTree = "<group>"; };
+               FE0D84EA1048436E001A179E /* WebEvent.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WebEvent.mm; path = ios/WebEvent.mm; sourceTree = "<group>"; };
                FE115FA9167988CD00249134 /* AbstractDatabaseServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AbstractDatabaseServer.h; sourceTree = "<group>"; };
                FE16CFCF169D1DEC00D3A0C7 /* DatabaseBackend.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DatabaseBackend.cpp; sourceTree = "<group>"; };
                FE16CFD0169D1DEC00D3A0C7 /* DatabaseBackend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseBackend.h; sourceTree = "<group>"; };
                FEBC5F3016BD0CC300659BD3 /* DatabaseBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseBase.h; sourceTree = "<group>"; };
                FED13D390CEA934600D89466 /* EditorIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EditorIOS.mm; sourceTree = "<group>"; };
                FED13D3B0CEA936A00D89466 /* FrameIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FrameIOS.mm; sourceTree = "<group>"; };
+               FED13D3F0CEA939400D89466 /* IconIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IconIOS.mm; sourceTree = "<group>"; };
                FED13D500CEA949700D89466 /* RenderThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderThemeIOS.h; sourceTree = "<group>"; };
                FEDEF83F16797108000E444A /* DatabaseStrategy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DatabaseStrategy.cpp; sourceTree = "<group>"; };
                FEDEF84016797108000E444A /* DatabaseStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseStrategy.h; sourceTree = "<group>"; };
                1A2E6E560CC551E0004A2062 /* sql */ = {
                        isa = PBXGroup;
                        children = (
+                               7E474E1912494DA900235364 /* ios */,
                                1A2E6E780CC556D5004A2062 /* SQLiteAuthorizer.cpp */,
                                1A2246430CC98DDB00C05240 /* SQLiteDatabase.cpp */,
                                1A2246440CC98DDB00C05240 /* SQLiteDatabase.h */,
                        name = mathml;
                        sourceTree = "<group>";
                };
+               441AF0A70EBA7BBF0044ED4B /* ios */ = {
+                       isa = PBXGroup;
+                       children = (
+                               0F97A657155DA81E00FADD4C /* DisplayRefreshMonitorIOS.mm */,
+                               3727DFD4142AAE4500D449CB /* FontCacheIOS.mm */,
+                               C58361A71744523F00173511 /* FontServicesIOS.h */,
+                               C58361A81744523F00173511 /* FontServicesIOS.mm */,
+                               31AB4FFF122878A2001A7DB0 /* GraphicsContext3DIOS.h */,
+                               FED13D3F0CEA939400D89466 /* IconIOS.mm */,
+                               07357C7616D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.h */,
+                               07357C7716D2DF0D00ED99E7 /* InbandTextTrackPrivateAVFIOS.mm */,
+                               074300A40F4B8BCF008076CD /* MediaPlayerPrivateIOS.h */,
+                               074300A30F4B8BCF008076CD /* MediaPlayerPrivateIOS.mm */,
+                               37E6594F163B10C200EB4574 /* SimpleFontDataIOS.mm */,
+                               CEEC6034187DD962003E43BB /* TextTrackRepresentationIOS.h */,
+                               CDCA82941679100F00875714 /* TextTrackRepresentationIOS.mm */,
+                       );
+                       path = ios;
+                       sourceTree = "<group>";
+               };
                443292C10EBA6D7300E62016 /* ios */ = {
                        isa = PBXGroup;
                        children = (
                        name = Exports;
                        sourceTree = "<group>";
                };
+               4497D58C0EBA854F00A10552 /* ios */ = {
+                       isa = PBXGroup;
+                       children = (
+                               443F04260E75C8FB007E5407 /* NetworkStateNotifierIOS.cpp */,
+                               442AF7A7102CDDEA008FD4D3 /* QuickLook.h */,
+                               442AF7A8102CDDEA008FD4D3 /* QuickLook.mm */,
+                               7E428CE413E3407F003B661C /* ResourceHandleIOS.mm */,
+                               44A20DB80F84166C00B3E1FE /* WebCoreURLResponseIOS.h */,
+                               444D4E210F708B2E003158E0 /* WebCoreURLResponseIOS.mm */,
+                       );
+                       path = ios;
+                       sourceTree = "<group>";
+               };
                49484FAE102CF01E00187DD3 /* canvas */ = {
                        isa = PBXGroup;
                        children = (
                        isa = PBXGroup;
                        children = (
                                B2F34FE70E82F81700F627CD /* cf */,
+                               4497D58C0EBA854F00A10552 /* ios */,
                                656B84E70AEA1DAE00A095B4 /* mac */,
                                934F71370D5A6EFF00018D69 /* AuthenticationChallengeBase.cpp */,
                                934F71390D5A6F1000018D69 /* AuthenticationChallengeBase.h */,
                        tabWidth = 4;
                        usesTabs = 0;
                };
+               7E474E1912494DA900235364 /* ios */ = {
+                       isa = PBXGroup;
+                       children = (
+                               7E474E1D12494DC900235364 /* SQLiteDatabaseTracker.cpp */,
+                               7E474E1C12494DC900235364 /* SQLiteDatabaseTracker.h */,
+                               7E474E1B12494DC900235364 /* SQLiteDatabaseTrackerClient.h */,
+                       );
+                       name = ios;
+                       path = sql/ios;
+                       sourceTree = "<group>";
+               };
                7EE6847312D26E5500E79415 /* cf */ = {
                        isa = PBXGroup;
                        children = (
                        name = parser;
                        sourceTree = "<group>";
                };
+               A516E8B2136E04C00076C3C0 /* ios */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A516E8B4136E04DB0076C3C0 /* LocalizedDateCache.h */,
+                               A516E8B5136E04DB0076C3C0 /* LocalizedDateCache.mm */,
+                       );
+                       path = ios;
+                       sourceTree = "<group>";
+               };
                A59E3C1B11580F340072928E /* ios */ = {
                        isa = PBXGroup;
                        children = (
+                               2903716416BA11BC00FEFDF0 /* ContentFilterIOS.mm */,
                                2655414B1489AA2B000DFC5D /* CursorIOS.cpp */,
+                               31EAF97C121435A400E7C1BF /* DeviceMotionClientIOS.h */,
+                               31EAF97D121435A400E7C1BF /* DeviceMotionClientIOS.mm */,
+                               31403799124BEA7F00AF40E4 /* DeviceOrientationClientIOS.h */,
+                               3140379A124BEA7F00AF40E4 /* DeviceOrientationClientIOS.mm */,
                                26F40D4914904A6300CA67C4 /* EventLoopIOS.mm */,
                                26C17A3C1491D2D400D12BA2 /* FileSystemIOS.h */,
                                26C17A3D1491D2D400D12BA2 /* FileSystemIOS.mm */,
                                265541371489811C000DFC5D /* KeyEventCodesIOS.h */,
                                265541381489811C000DFC5D /* KeyEventIOS.mm */,
+                               1F68D4AD14BB9DCA007B5C62 /* MemoryPressureHandlerIOS.mm */,
+                               E45390180EAFCACA003695C8 /* MIMETypeRegistryIOS.mm */,
                                E45390190EAFCACA003695C8 /* PasteboardIOS.mm */,
+                               26601EBD14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h */,
+                               26601EBE14B3B9AD0012C0FE /* PlatformEventFactoryIOS.mm */,
                                C5278B0B17F212EA003A2998 /* PlatformPasteboardIOS.mm */,
+                               E45390320EAFD637003695C8 /* PlatformScreenIOS.mm */,
+                               AAE3755D17429BCC006200C2 /* PlatformSpeechSynthesizerIOS.mm */,
+                               44C363EE0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.h */,
+                               44C363EF0FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm */,
+                               0F17747E1378B771009DA76A /* ScrollAnimatorIOS.h */,
+                               0F17747F1378B772009DA76A /* ScrollAnimatorIOS.mm */,
+                               44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */,
+                               44C991810F3D1E0D00586670 /* ScrollbarThemeIOS.mm */,
+                               E45390340EAFD637003695C8 /* ScrollViewIOS.mm */,
+                               BEA807C60F714A0300524199 /* SelectionRect.cpp */,
+                               BEA807C70F714A0300524199 /* SelectionRect.h */,
                                E45390350EAFD637003695C8 /* SharedTimerIOS.mm */,
+                               E45390360EAFD637003695C8 /* SoundIOS.mm */,
+                               4476531A133170990006B789 /* SSLKeyGeneratorIOS.cpp */,
+                               E45390AD0EAFF4B5003695C8 /* SystemMemoryIOS.cpp */,
+                               44C9919D0F3D210E00586670 /* ThemeIOS.h */,
+                               44C9919E0F3D210E00586670 /* ThemeIOS.mm */,
+                               E4C3B1F90F0E4161009693F6 /* TileCache.h */,
+                               E4C3B1FB0F0E4170009693F6 /* TileCache.mm */,
+                               E4B65A57132FA8E70070E7BE /* TileGrid.h */,
+                               E4B65A59132FAAF90070E7BE /* TileGrid.mm */,
+                               E424A39D1330DF0100CF6DC9 /* TileGridTile.h */,
+                               E424A39F1330DF1E00CF6DC9 /* TileGridTile.mm */,
+                               E4B65A5B132FACB00070E7BE /* TileLayer.h */,
+                               E4B65A5D132FADB60070E7BE /* TileLayer.mm */,
+                               E4E39AFA1330EFA8003AB274 /* TileLayerPool.h */,
+                               E4E39AFC1330EFC5003AB274 /* TileLayerPool.mm */,
+                               31403797124BEA7F00AF40E4 /* WebCoreMotionManager.h */,
+                               31403798124BEA7F00AF40E4 /* WebCoreMotionManager.mm */,
+                               44C3CFE71556BE5D00013609 /* WebCoreSystemInterfaceIOS.h */,
+                               E45390380EAFD637003695C8 /* WebCoreSystemInterfaceIOS.mm */,
+                               FE0D84E810484348001A179E /* WebEvent.h */,
+                               FE0D84EA1048436E001A179E /* WebEvent.mm */,
                                A502C5DD13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h */,
                                C2C4CB1D161A131200D214DA /* WebSafeIncrementalSweeperIOS.h */,
+                               E453903C0EAFD637003695C8 /* WidgetIOS.mm */,
                        );
                        name = ios;
                        sourceTree = "<group>";
                                9332AB3B16515D7700D827EC /* cpu */,
                                A75E8B7F0E1DE2B0007F2481 /* filters */,
                                498770C11242C50D002226BA /* gpu */,
+                               441AF0A70EBA7BBF0044ED4B /* ios */,
                                B27535490B053814002CE64F /* mac */,
                                FBC220DD1237FBEB00BCF788 /* opengl */,
                                F4EAF4AB10C74268009100D3 /* opentype */,
                        isa = PBXGroup;
                        children = (
                                B2B264590D00A77E000ACC1D /* cf */,
+                               A516E8B2136E04C00076C3C0 /* ios */,
                                B2C3D9F90D006C1D00EF6F26 /* mac */,
                                37C61F0012095C87007A3C67 /* AtomicStringKeyedMRUCache.h */,
                                B2C3D9F20D006C1D00EF6F26 /* BidiContext.cpp */,
                        children = (
                                CD0EEE0B14743E35003EAFA2 /* AudioDestinationIOS.cpp */,
                                CD0EEE0A14743E34003EAFA2 /* AudioDestinationIOS.h */,
+                               CD55968F1475B678001D0BD0 /* AudioFileReaderIOS.cpp */,
+                               CD5596901475B678001D0BD0 /* AudioFileReaderIOS.h */,
                                CDA79825170A279000D45C55 /* AudioSessionIOS.mm */,
                        );
                        name = ios;
                                CEDA12D7152CA1CB00D9E08D /* AlternativeTextClient.h in Headers */,
                                CE08C3D2152B599A0021B8C2 /* AlternativeTextController.h in Headers */,
                                CE7B2DB31586ABAD0098B3FA /* AlternativeTextUIController.h in Headers */,
+                               FE0D84E910484348001A179E /* WebEvent.h in Headers */,
                                FD31603E12B0267600C1A359 /* AnalyserNode.h in Headers */,
                                CDE3A85817F6020400C5BE20 /* AudioTrackPrivateAVFObjC.h in Headers */,
                                490707E71219C04300D90E51 /* ANGLEWebKitBridge.h in Headers */,
                                BCB16C1C0979C3BD00467741 /* CachedImage.h in Headers */,
                                319FBD5F15D2F464009640A6 /* CachedImageClient.h in Headers */,
                                510184690B08602A004A825F /* CachedPage.h in Headers */,
+                               E424A39E1330DF0100CF6DC9 /* TileGridTile.h in Headers */,
                                D0EDA775143E303C0028E383 /* CachedRawResource.h in Headers */,
                                E1B533491717DEE300F205F9 /* CachedRawResourceClient.h in Headers */,
                                BCB16C200979C3BD00467741 /* CachedResource.h in Headers */,
                                078E091417D14D1C00420AA1 /* MediaConstraintsImpl.h in Headers */,
                                A80E6CE90A1989CA007FB8C5 /* CSSValueList.h in Headers */,
                                E49BD9FA131FD2ED003C56F0 /* CSSValuePool.h in Headers */,
+                               E4B65A58132FA8E70070E7BE /* TileGrid.h in Headers */,
                                93F1992F08245E59001E9ABC /* Cursor.h in Headers */,
                                BC2272A20E82E87C00E7F975 /* CursorData.h in Headers */,
                                868160D618766A130021E79D /* UserActivity.h in Headers */,
                                85526CD20AB0B7D9000302EA /* DOMTreeWalker.h in Headers */,
                                850B41C30AD9E7E700A6ED4F /* DOMTreeWalkerInternal.h in Headers */,
                                85C7F4910AAF79DC004014DD /* DOMUIEvent.h in Headers */,
+                               44C9919F0F3D210E00586670 /* ThemeIOS.h in Headers */,
                                85989DD00ACC8BBD00A0BC51 /* DOMUIEventInternal.h in Headers */,
                                2E37DFDB12DBAFB800A6B233 /* DOMURL.h in Headers */,
                                15C770A6100D41CD005BA267 /* DOMValidityState.h in Headers */,
                                845E72F80FD261EE00A87D79 /* Filter.h in Headers */,
                                08C9251A0FCC7C4A00480DEC /* FilterEffect.h in Headers */,
                                31313F661443B35F006E2A90 /* FilterEffectRenderer.h in Headers */,
+                               44C3CFE81556BE5D00013609 /* WebCoreSystemInterfaceIOS.h in Headers */,
                                49ECEB6E1499790D00CDD3A4 /* FilterOperation.h in Headers */,
                                49ECEB701499790D00CDD3A4 /* FilterOperations.h in Headers */,
                                372C00D9129619F8005C9575 /* FindOptions.h in Headers */,
                                0873B86B136064EA00A522C2 /* GlyphPage.h in Headers */,
                                B2C3DA6E0D006CD600EF6F26 /* GlyphPageTreeNode.h in Headers */,
                                BC53C5F50DA56B920021EB5D /* Gradient.h in Headers */,
+                               7E474E1E12494DC900235364 /* SQLiteDatabaseTrackerClient.h in Headers */,
                                B22279640D00BF220071B782 /* GradientAttributes.h in Headers */,
                                B2A015A90AF6CD53006BCE0E /* GraphicsContext.h in Headers */,
                                49C7B9FC1042D3650009D447 /* GraphicsContext3D.h in Headers */,
                                A81369DC097374F600D74463 /* HTMLOptionElement.h in Headers */,
                                A81369DA097374F600D74463 /* HTMLOptionsCollection.h in Headers */,
                                4AD01009127E642A0015035F /* HTMLOutputElement.h in Headers */,
+                               44C363F00FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.h in Headers */,
                                51D719F8181106E00016DC51 /* IndexedDB.h in Headers */,
                                A8EA7CB50A192B9C00A8EF5F /* HTMLParagraphElement.h in Headers */,
                                A871D4580A127CBC00B12A68 /* HTMLParamElement.h in Headers */,
                                BC7F44A80B9E324E00A9D081 /* ImageObserver.h in Headers */,
                                2D5A5931152525D00036EE51 /* ImageOrientation.h in Headers */,
                                49291E4B134172C800E753DE /* ImageRenderingMode.h in Headers */,
+                               E4C3B1FA0F0E4161009693F6 /* TileCache.h in Headers */,
                                B27535710B053814002CE64F /* ImageSource.h in Headers */,
                                4B3480940EEF50D400AC1B41 /* ImageSourceCG.h in Headers */,
                                316FE1180E6E1DA700BF6088 /* ImplicitAnimation.h in Headers */,
                                7AF11A5A12E727490061F23C /* InspectorRuntimeAgent.h in Headers */,
                                82AB1774125C826700C5069D /* InspectorStyleSheet.h in Headers */,
                                82889B4D13C62392009A6156 /* InspectorStyleTextEditor.h in Headers */,
+                               31EAF97E121435A400E7C1BF /* DeviceMotionClientIOS.h in Headers */,
                                754133A8102E00E800075D00 /* InspectorTimelineAgent.h in Headers */,
                                578DA20F1520EBA3006141C1 /* InspectorWebTypeBuilders.h in Headers */,
                                F3810C1C1365A49600ED6E33 /* InspectorWorkerAgent.h in Headers */,
                                975CA2A21303679D00E99AD9 /* JSCrypto.h in Headers */,
                                BC46C1FB0C0DDC8F0020CFC3 /* JSCSSCharsetRule.h in Headers */,
                                409EBDC316B7F3A600CBA3FC /* JSCSSFontFaceLoadEvent.h in Headers */,
+                               7E474E1F12494DC900235364 /* SQLiteDatabaseTracker.h in Headers */,
                                BC46C1FD0C0DDC8F0020CFC3 /* JSCSSFontFaceRule.h in Headers */,
                                BC46C1FF0C0DDC8F0020CFC3 /* JSCSSImportRule.h in Headers */,
                                BC46C2010C0DDC8F0020CFC3 /* JSCSSMediaRule.h in Headers */,
                                31FB1A66120A5D3F00DC02A0 /* JSDeviceMotionEvent.h in Headers */,
                                59A86008119DAFA100DEF1EF /* JSDeviceOrientationEvent.h in Headers */,
                                BCE4389C140B1BA8005E437E /* JSDictionary.h in Headers */,
+                               44C991860F3D1EBE00586670 /* ScrollbarThemeIOS.h in Headers */,
                                E4AE7C1A17D232350009FB31 /* ElementAncestorIterator.h in Headers */,
                                3146FE7518442370001A937C /* JSOESTextureFloatLinear.h in Headers */,
                                659DDC8309E198BA001BF3C6 /* JSDocument.h in Headers */,
                                E19AC3F31824DC7900349426 /* CryptoAlgorithmSHA384.h in Headers */,
                                FB91392A16AE4FC0001FE682 /* JSDOMPath.h in Headers */,
                                A9D247FF0D757E6900FDF959 /* JSDOMPlugin.h in Headers */,
+                               3140379B124BEA7F00AF40E4 /* WebCoreMotionManager.h in Headers */,
                                A9D248010D757E6900FDF959 /* JSDOMPluginArray.h in Headers */,
                                E19727161820549E00592D51 /* CryptoKeyType.h in Headers */,
                                BC5A86B60C3367E800EEA649 /* JSDOMSelection.h in Headers */,
                                3314ACEC10892086000F0E56 /* JSExceptionBase.h in Headers */,
                                6EBF0E7712A9868800DB170A /* JSEXTDrawBuffers.h in Headers */,
                                7728698414FD9ADA00F484DC /* JSEXTTextureFilterAnisotropic.h in Headers */,
+                               E4E39AFB1330EFA8003AB274 /* TileLayerPool.h in Headers */,
                                BC00F0150E0A189500FD04E3 /* JSFile.h in Headers */,
                                2E3BC0CB117D3E0800B9409A /* JSFileError.h in Headers */,
                                898785F1122E1E87003AABDA /* JSFileException.h in Headers */,
                                FE80DA660E9C4703000D6F75 /* JSGeoposition.h in Headers */,
                                07969DAC17D14151007FF842 /* JSRTCDataChannel.h in Headers */,
                                8482B7521198CB6B00BFB005 /* JSHashChangeEvent.h in Headers */,
+                               BEA807C90F714A0300524199 /* SelectionRect.h in Headers */,
                                BC94D14F0C275C68006BC617 /* JSHistory.h in Headers */,
                                BC97E413109154FA0010D361 /* JSHTMLAllCollection.h in Headers */,
                                1A4A2DF00A1B852A00C807F8 /* JSHTMLAnchorElement.h in Headers */,
                                1A85B1EB0A1B240500D8C87C /* JSHTMLOListElement.h in Headers */,
                                A80E7E9B0A1A83E3007FB8C5 /* JSHTMLOptGroupElement.h in Headers */,
                                A80E7E990A1A83E3007FB8C5 /* JSHTMLOptionElement.h in Headers */,
+                               C58361A91744523F00173511 /* FontServicesIOS.h in Headers */,
                                448A29BF0A46D9CB0030759F /* JSHTMLOptionsCollection.h in Headers */,
                                4AD0173D127E82860015035F /* JSHTMLOutputElement.h in Headers */,
                                1AE2ABA70A1CE90500B42B25 /* JSHTMLParagraphElement.h in Headers */,
                                935F45430F7C3B5F00D7C1FB /* JSLazyEventListener.h in Headers */,
                                BCE1C43C0D9830D3003B02F2 /* JSLocation.h in Headers */,
                                FD23A12613F5FA5900F67001 /* JSMediaElementAudioSourceNode.h in Headers */,
+                               26601EBF14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h in Headers */,
                                E44614190CD6826900FADA75 /* JSMediaError.h in Headers */,
                                BC3C39B70C0D3D8D005F4D7A /* JSMediaList.h in Headers */,
                                D3A94A47122DC40F00A37BBC /* JSMediaQueryList.h in Headers */,
                                6E3FAD3914733F4000E42306 /* JSWebGLCompressedTextureS3TC.h in Headers */,
                                6EE8A77310F803F3005A4A24 /* JSWebGLContextAttributes.h in Headers */,
                                BC2CBF4E140F1ABD003879BE /* JSWebGLContextEvent.h in Headers */,
+                               074300A60F4B8BCF008076CD /* MediaPlayerPrivateIOS.h in Headers */,
                                6E3FAD3914733F4011E42307 /* JSWebGLDebugRendererInfo.h in Headers */,
                                6E3FAD3914733F4022E42307 /* JSWebGLDebugShaders.h in Headers */,
                                6E3FAD3914733F4000E42307 /* JSWebGLDepthTexture.h in Headers */,
                                51C9611B183D2B8000D2002E /* IDBDatabaseMetadata.h in Headers */,
                                A07D3356152B630E001B6393 /* JSWebGLShaderPrecisionFormat.h in Headers */,
                                49C7B9A51042D2D30009D447 /* JSWebGLTexture.h in Headers */,
+                               3140379D124BEA7F00AF40E4 /* DeviceOrientationClientIOS.h in Headers */,
                                078E091517D14D1C00420AA1 /* MediaStream.h in Headers */,
                                0C45342810CDBBFA00869157 /* JSWebGLUniformLocation.h in Headers */,
                                77EF62F412F9DB7400C77BD2 /* JSWebGLVertexArrayObjectOES.h in Headers */,
                                9377ABA015DEFEEF0031FD04 /* Pagination.h in Headers */,
                                0885067F11DA045B00182B98 /* PaintInfo.h in Headers */,
                                0885068011DA045B00182B98 /* PaintPhase.h in Headers */,
+                               07ED35A316D6DCE2002248F3 /* InbandTextTrackPrivateAVFIOS.h in Headers */,
                                A80E6CFB0A1989CA007FB8C5 /* Pair.h in Headers */,
                                FD3160A312B026F700C1A359 /* Panner.h in Headers */,
                                FD31601A12B0267600C1A359 /* PannerNode.h in Headers */,
                                2B365C841525119E0091D27B /* RenderSVGEllipse.h in Headers */,
                                43C092BC12D9E4EE00A989C3 /* RenderSVGForeignObject.h in Headers */,
                                436708C512D9CA4B00044234 /* RenderSVGGradientStop.h in Headers */,
+                               31AB5000122878A2001A7DB0 /* GraphicsContext3DIOS.h in Headers */,
                                436708C712D9CA4B00044234 /* RenderSVGHiddenContainer.h in Headers */,
                                436708C912D9CA4B00044234 /* RenderSVGImage.h in Headers */,
                                0854B0151255E4E600B9CDD0 /* RenderSVGInline.h in Headers */,
                                CD3A496217A9D01B00274E42 /* SourceBuffer.h in Headers */,
                                436708CB12D9CA4B00044234 /* RenderSVGModelObject.h in Headers */,
                                E48944A3180B57D800F165D8 /* SimpleLineLayout.h in Headers */,
+                               0F1774801378B772009DA76A /* ScrollAnimatorIOS.h in Headers */,
                                ADDF1AD71257CD9A0003A759 /* RenderSVGPath.h in Headers */,
                                A10BB5851484E3A700B2E87A /* RenderSVGRect.h in Headers */,
                                436708CD12D9CA4B00044234 /* RenderSVGResource.h in Headers */,
                                E1B7839C163740A70007B692 /* SharedWorkerStrategy.h in Headers */,
                                41D168EE10226E89009BC827 /* SharedWorkerThread.h in Headers */,
                                B2C3DA650D006CD600EF6F26 /* SimpleFontData.h in Headers */,
+                               E4B65A5C132FACB00070E7BE /* TileLayer.h in Headers */,
                                C5A1EA7D152BCF08004D00B6 /* SimplifyMarkupCommand.h in Headers */,
                                31741AAD16636609008A5B7E /* SimulatedClickOptions.h in Headers */,
                                FD00D7A514A3F61900734011 /* SincResampler.h in Headers */,
                                51BE37E00DAEE00E001085FC /* StorageArea.h in Headers */,
                                C5160EEB1004543A00A7CEE2 /* StorageAreaImpl.h in Headers */,
                                C5102ECF0FD9EF8C00FAFF04 /* StorageAreaSync.h in Headers */,
+                               CD5596921475B678001D0BD0 /* AudioFileReaderIOS.h in Headers */,
                                51E0BABB0DA5547100A9E417 /* StorageEvent.h in Headers */,
                                B56576E817DA94E200A56BDC /* DOMConstructorWithDocument.h in Headers */,
                                C5EBDD84105EDDEC0056816F /* StorageEventDispatcher.h in Headers */,
                                B22279FA0D00BF220071B782 /* SVGFEOffsetElement.h in Headers */,
                                B22279FD0D00BF220071B782 /* SVGFEPointLightElement.h in Headers */,
                                B2227A000D00BF220071B782 /* SVGFESpecularLightingElement.h in Headers */,
+                               44A20DB90F84166C00B3E1FE /* WebCoreURLResponseIOS.h in Headers */,
                                B2227A030D00BF220071B782 /* SVGFESpotLightElement.h in Headers */,
                                078E091917D14D1C00420AA1 /* MediaStreamTrackEvent.h in Headers */,
                                B2227A060D00BF220071B782 /* SVGFETileElement.h in Headers */,
                                97BC84A512370DC8000C6161 /* TextViewSourceParser.h in Headers */,
                                BCE658FF0EA9248A007E4533 /* Theme.h in Headers */,
                                BCE659E60EA92FB2007E4533 /* ThemeMac.h in Headers */,
+                               442AF7A9102CDDEA008FD4D3 /* QuickLook.h in Headers */,
                                BCE659A90EA927B9007E4533 /* ThemeTypes.h in Headers */,
                                976D6C95122B8A3D001FD1F7 /* ThreadableBlobRegistry.h in Headers */,
                                0B90561B0F2578BF0095FF6A /* ThreadableLoader.h in Headers */,
                                1AF89A421518FDEA00E547B5 /* TiledBacking.h in Headers */,
                                498770F31242C535002226BA /* TilingData.h in Headers */,
                                F55B3DDC1251F12D003EF269 /* TimeInputType.h in Headers */,
+                               A516E8B7136E04DB0076C3C0 /* LocalizedDateCache.h in Headers */,
                                7553CFE8108F473F00EA281E /* TimelineRecordFactory.h in Headers */,
                                51D719B7181106E00016DC51 /* DOMWindowIndexedDatabase.h in Headers */,
                                9305B24D098F1B6B00C28855 /* Timer.h in Headers */,
                                FD8C46EB154608E700A5910C /* AudioScheduledSourceNode.cpp in Sources */,
                                FED48390CED66C3255F72C59 /* MathMLSelectElement.cpp in Sources */,
                                078E090317D14CEE00420AA1 /* MediaStreamTrackEvent.cpp in Sources */,
+                               444D4E230F708B2E003158E0 /* WebCoreURLResponseIOS.mm in Sources */,
                                CDA79824170A258300D45C55 /* AudioSession.cpp in Sources */,
                                CDA79827170A279100D45C55 /* AudioSessionIOS.mm in Sources */,
                                CD54DE4B17469C6D005E5B36 /* AudioSessionMac.cpp in Sources */,
                                BE88E0D81715D2A200658D98 /* AudioTrack.cpp in Sources */,
                                BE88E0DB1715D2A200658D98 /* AudioTrackList.cpp in Sources */,
                                FD31608A12B026F700C1A359 /* AudioUtilities.cpp in Sources */,
+                               7E428CE513E3407F003B661C /* ResourceHandleIOS.mm in Sources */,
                                934F71380D5A6EFF00018D69 /* AuthenticationChallengeBase.cpp in Sources */,
                                514C764D0CE9234E007EF3CD /* AuthenticationMac.mm in Sources */,
                                45830D4D1679B4F800ACF8C3 /* AutoscrollController.cpp in Sources */,
                                49AE2D96134EE5F90072920A /* CalculationValue.cpp in Sources */,
                                B1827493134CA4C100B98C2D /* CallbackFunction.cpp in Sources */,
                                6E4E91AC10F7FB3100A2779C /* CanvasContextAttributes.cpp in Sources */,
+                               3140379C124BEA7F00AF40E4 /* WebCoreMotionManager.mm in Sources */,
                                49484FC1102CF23C00187DD3 /* CanvasGradient.cpp in Sources */,
                                FB91392716AE4C34001FE682 /* CanvasPathMethods.cpp in Sources */,
                                49484FC4102CF23C00187DD3 /* CanvasPattern.cpp in Sources */,
                                97627B8D14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp in Sources */,
                                065AD4F60B0C2EDA005A2B1D /* ContextMenuController.cpp in Sources */,
                                07D07B141834158800ABDD3C /* JSRTCSessionDescriptionCustom.cpp in Sources */,
+                               7E474E2012494DC900235364 /* SQLiteDatabaseTracker.cpp in Sources */,
                                06027CB30B1CC03D00884B2D /* ContextMenuItemMac.mm in Sources */,
                                93B6A0EA0B0BCA8400F5027A /* ContextMenuMac.mm in Sources */,
                                FD31602812B0267600C1A359 /* ConvolverNode.cpp in Sources */,
                                E1424C93164B52C800F32D40 /* CookieJar.cpp in Sources */,
                                E1424C90164B460B00F32D40 /* CookieJarMac.mm in Sources */,
                                7EE6846312D26E3800E79415 /* CookieStorageCFNet.cpp in Sources */,
+                               37E65950163B10C200EB4574 /* SimpleFontDataIOS.mm in Sources */,
                                E13F01F11270E19000DFBA71 /* CookieStorageMac.mm in Sources */,
                                9746AF2114F4DDE6003E7A72 /* Coordinates.cpp in Sources */,
                                BC5EB9500E82056B00B25965 /* CounterDirectives.cpp in Sources */,
                                FE456F181677D74E005EDDF9 /* DatabaseManager.cpp in Sources */,
                                FEB26D28167A8F2A00FDD26B /* DatabaseServer.cpp in Sources */,
                                FEDEF84116797108000E444A /* DatabaseStrategy.cpp in Sources */,
+                               E4E39AFD1330EFC6003AB274 /* TileLayerPool.mm in Sources */,
                                97BC6A2A1505F081001B74AC /* DatabaseSync.cpp in Sources */,
                                97BC6A2D1505F081001B74AC /* DatabaseTask.cpp in Sources */,
                                97BC6A2F1505F081001B74AC /* DatabaseThread.cpp in Sources */,
                                F5C041E40FFCA96D00839D4A /* DOMHTMLDataListElement.mm in Sources */,
                                E157A8E818184C67009F821D /* JSCryptoKeyCustom.cpp in Sources */,
                                0705852317FDC140005F2BCB /* MediaTrackConstraints.cpp in Sources */,
+                               FED13D400CEA939400D89466 /* IconIOS.mm in Sources */,
                                E125F8311822F11B00D84CD9 /* CryptoAlgorithmHMAC.cpp in Sources */,
                                D359D792129CA3C00006E5D2 /* DOMHTMLDetailsElement.mm in Sources */,
                                85BA4D0C0AA688680088052D /* DOMHTMLDirectoryElement.mm in Sources */,
                                85BA4D180AA688680088052D /* DOMHTMLUListElement.mm in Sources */,
                                A8185F3E09765766005826D9 /* DOMImplementation.cpp in Sources */,
                                93C841FF09CE858300DFF5E5 /* DOMImplementationFront.cpp in Sources */,
+                               26601EC014B3B9AD0012C0FE /* PlatformEventFactoryIOS.mm in Sources */,
                                BC1A37BA097C715F0019F3D8 /* DOMInternal.mm in Sources */,
                                85FF315B0AAFBFCB00374F38 /* DOMKeyboardEvent.mm in Sources */,
                                850656FF0AAB4763002D15C0 /* DOMMediaList.mm in Sources */,
                                498770DB1242C535002226BA /* DrawingBuffer.cpp in Sources */,
                                CDC8B5A6180474F70016E685 /* MediaSourcePrivateAVFObjC.mm in Sources */,
                                498771531243F9FA002226BA /* DrawingBufferMac.mm in Sources */,
+                               31EAF97F121435A400E7C1BF /* DeviceMotionClientIOS.mm in Sources */,
                                078E091217D14CEE00420AA1 /* UserMediaController.cpp in Sources */,
                                FD6ED2C7136B8E66003CF072 /* DynamicsCompressor.cpp in Sources */,
                                FD537356137B653B00008DCE /* DynamicsCompressorKernel.cpp in Sources */,
                                07969DBD17D14151007FF842 /* JSRTCSessionDescriptionCallback.cpp in Sources */,
                                A871DE290A152AC800B12A68 /* HTMLBodyElement.cpp in Sources */,
                                A8CFF7A80A156978000A4234 /* HTMLBRElement.cpp in Sources */,
+                               1F68D4AE14BB9DCA007B5C62 /* MemoryPressureHandlerIOS.mm in Sources */,
                                A81369D3097374F600D74463 /* HTMLButtonElement.cpp in Sources */,
                                93F19AFD08245E59001E9ABC /* HTMLCanvasElement.cpp in Sources */,
                                A8DF3FD1097FA0FC0052981B /* HTMLCollection.cpp in Sources */,
                                A8EA7CB10A192B9C00A8EF5F /* HTMLDivElement.cpp in Sources */,
                                A8EA79F50A1916DF00A8EF5F /* HTMLDListElement.cpp in Sources */,
                                93F19A9108245E59001E9ABC /* HTMLDocument.cpp in Sources */,
+                               44C991820F3D1E0D00586670 /* ScrollbarThemeIOS.mm in Sources */,
                                977B3866122883E900B81FF8 /* HTMLDocumentParser.cpp in Sources */,
                                93309DE7099E64920056E581 /* htmlediting.cpp in Sources */,
+                               A516E8B8136E04DB0076C3C0 /* LocalizedDateCache.mm in Sources */,
                                93F19A9208245E59001E9ABC /* HTMLElement.cpp in Sources */,
                                E157A8F018185425009F821D /* JSCryptoAlgorithmBuilder.cpp in Sources */,
                                A17C81220F2A5CF7005DAAEB /* HTMLElementFactory.cpp in Sources */,
                                70F546E8B8B5D7DC54EE144E /* JSBeforeUnloadEvent.cpp in Sources */,
                                FDF09DC81399B62200688E5B /* JSBiquadFilterNode.cpp in Sources */,
                                FD8AA63C1695148E00D2EA68 /* JSBiquadFilterNodeCustom.cpp in Sources */,
+                               3140379E124BEA7F00AF40E4 /* DeviceOrientationClientIOS.mm in Sources */,
                                2E2D99CD10E2BBDA00496337 /* JSBlob.cpp in Sources */,
                                8931DE5B14C44C44000DC9D2 /* JSBlobCustom.cpp in Sources */,
                                1449E287107D4DB400B5793F /* JSCallbackData.cpp in Sources */,
                                65DF323B09D1DE65000BE325 /* JSCanvasPattern.cpp in Sources */,
                                49EED1421051969400099FAB /* JSCanvasRenderingContext.cpp in Sources */,
                                49EED1441051969400099FAB /* JSCanvasRenderingContext2D.cpp in Sources */,
+                               CDCA82961679100F00875714 /* TextTrackRepresentationIOS.mm in Sources */,
                                49EED14E1051971A00099FAB /* JSCanvasRenderingContext2DCustom.cpp in Sources */,
                                49EED1501051971A00099FAB /* JSCanvasRenderingContextCustom.cpp in Sources */,
                                93F9B7A00BA6032600854064 /* JSCDATASection.cpp in Sources */,
                                BC46C1EE0C0DDBDF0020CFC3 /* JSCSSRuleCustom.cpp in Sources */,
                                A8D05FA70A23B301005E7203 /* JSCSSRuleList.cpp in Sources */,
                                070363E5181A1CDC00C074A5 /* AVMediaCaptureSource.mm in Sources */,
+                               E45390AE0EAFF4B5003695C8 /* SystemMemoryIOS.cpp in Sources */,
                                9392262F10321084006E7D5D /* JSCSSRuleListCustom.cpp in Sources */,
                                142011B60A003133008303F9 /* JSCSSStyleDeclaration.cpp in Sources */,
                                FFB698CF183402BB00158A31 /* LineInfo.cpp in Sources */,
                                59A86006119DAF7F00DEF1EF /* JSDeviceOrientationEvent.cpp in Sources */,
                                590E1B4B11E4EF700069F784 /* JSDeviceOrientationEventCustom.cpp in Sources */,
                                BCE438A2140C0DC0005E437E /* JSDictionary.cpp in Sources */,
+                               44C363F10FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm in Sources */,
                                659DDC8209E198BA001BF3C6 /* JSDocument.cpp in Sources */,
                                49C7BA8D1042F5B10009D447 /* JSDocumentCustom.cpp in Sources */,
                                1A494EDE0A123F4C00FDAFC1 /* JSDocumentFragment.cpp in Sources */,
                                2E0888D41148848A00AF4265 /* JSDOMFormData.cpp in Sources */,
                                2E0888E6114884E200AF4265 /* JSDOMFormDataCustom.cpp in Sources */,
                                E1C36CBD0EB08062007410BC /* JSDOMGlobalObject.cpp in Sources */,
+                               07ED35A216D6DCC9002248F3 /* InbandTextTrackPrivateAVFIOS.mm in Sources */,
                                65DF31F709D1CC60000BE325 /* JSDOMImplementation.cpp in Sources */,
                                A9D248060D757E7D00FDF959 /* JSDOMMimeType.cpp in Sources */,
                                A9D248080D757E7D00FDF959 /* JSDOMMimeTypeArray.cpp in Sources */,
                                BC6090200E91B8EC000C68B5 /* JSEventTargetCustom.cpp in Sources */,
                                3314ACEB10892086000F0E56 /* JSExceptionBase.cpp in Sources */,
                                6EBF0E7612A9868800DB170A /* JSEXTDrawBuffers.cpp in Sources */,
+                               E45390490EAFD637003695C8 /* WebCoreSystemInterfaceIOS.mm in Sources */,
                                7728698314FD9ADA00F484DC /* JSEXTTextureFilterAnisotropic.cpp in Sources */,
                                BC00F0140E0A189500FD04E3 /* JSFile.cpp in Sources */,
                                2E3BC0CA117D3E0800B9409A /* JSFileError.cpp in Sources */,
                                CDA98E0416039E1A00FEA3B1 /* JSMediaKeys.cpp in Sources */,
                                07969DC317D14151007FF842 /* JSRTCStatsResponse.cpp in Sources */,
                                CDA98E0616039E1F00FEA3B1 /* JSMediaKeySession.cpp in Sources */,
+                               074300A50F4B8BCF008076CD /* MediaPlayerPrivateIOS.mm in Sources */,
                                BC3C39B60C0D3D8D005F4D7A /* JSMediaList.cpp in Sources */,
                                D3A94A46122DC40F00A37BBC /* JSMediaQueryList.cpp in Sources */,
                                CD641EBF1819B36000EE4C41 /* MediaTimeMac.cpp in Sources */,
                                51DCE8020CAC9F1C00488358 /* JSSQLResultSetRowListCustom.cpp in Sources */,
                                51EAC5671815ED3E004F1BA4 /* IDBTransactionCoordinator.cpp in Sources */,
                                B59DD6A611902A62007E9684 /* JSSQLStatementCallback.cpp in Sources */,
+                               AA12DF491743DF83004DAFDF /* PlatformSpeechSynthesizerIOS.mm in Sources */,
                                B59DD6AA11902A71007E9684 /* JSSQLStatementErrorCallback.cpp in Sources */,
                                514C76380CE9225E007EF3CD /* JSSQLTransaction.cpp in Sources */,
                                B59DD69E11902A42007E9684 /* JSSQLTransactionCallback.cpp in Sources */,
                                B2FA3D760AB75A6F000E5AC4 /* JSSVGFEDistantLightElement.cpp in Sources */,
                                4358E87C1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp in Sources */,
                                B2FA3D780AB75A6F000E5AC4 /* JSSVGFEFloodElement.cpp in Sources */,
+                               44C991A00F3D210E00586670 /* ThemeIOS.mm in Sources */,
                                B2FA3D7A0AB75A6F000E5AC4 /* JSSVGFEFuncAElement.cpp in Sources */,
                                B2FA3D7C0AB75A6F000E5AC4 /* JSSVGFEFuncBElement.cpp in Sources */,
                                B2FA3D7E0AB75A6F000E5AC4 /* JSSVGFEFuncGElement.cpp in Sources */,
                                A83B79030CCAFF15000B0825 /* JSSVGFontFaceNameElement.cpp in Sources */,
                                A83B78FF0CCAFF15000B0825 /* JSSVGFontFaceSrcElement.cpp in Sources */,
                                A83B78FD0CCAFF15000B0825 /* JSSVGFontFaceUriElement.cpp in Sources */,
+                               E453904D0EAFD637003695C8 /* WidgetIOS.mm in Sources */,
                                B2FA3D980AB75A6F000E5AC4 /* JSSVGForeignObjectElement.cpp in Sources */,
                                B2FA3D9A0AB75A6F000E5AC4 /* JSSVGGElement.cpp in Sources */,
                                B27B28270CEF0C0700D39D54 /* JSSVGGlyphElement.cpp in Sources */,
                                85174EC2BCCAF17EAE3F46F8 /* JSSVGGraphicsElement.cpp in Sources */,
                                8485227B1190162C006EDC7F /* JSSVGHKernElement.cpp in Sources */,
                                B2FA3D9E0AB75A6F000E5AC4 /* JSSVGImageElement.cpp in Sources */,
+                               E424A3A01330DF1E00CF6DC9 /* TileGridTile.mm in Sources */,
                                B2FA3DA00AB75A6F000E5AC4 /* JSSVGLength.cpp in Sources */,
                                077664FC183E6B5C00133B92 /* JSQuickTimePluginReplacement.cpp in Sources */,
                                08E4FE460E2BD41400F4CAE0 /* JSSVGLengthCustom.cpp in Sources */,
                                B2FA3DC00AB75A6F000E5AC4 /* JSSVGPathSegCurvetoCubicRel.cpp in Sources */,
                                B2FA3DC20AB75A6F000E5AC4 /* JSSVGPathSegCurvetoCubicSmoothAbs.cpp in Sources */,
                                B2FA3DC40AB75A6F000E5AC4 /* JSSVGPathSegCurvetoCubicSmoothRel.cpp in Sources */,
+                               E4B65A5E132FADB60070E7BE /* TileLayer.mm in Sources */,
                                B2FA3DC60AB75A6F000E5AC4 /* JSSVGPathSegCurvetoQuadraticAbs.cpp in Sources */,
                                B2FA3DC80AB75A6F000E5AC4 /* JSSVGPathSegCurvetoQuadraticRel.cpp in Sources */,
                                B2FA3DCA0AB75A6F000E5AC4 /* JSSVGPathSegCurvetoQuadraticSmoothAbs.cpp in Sources */,
                                B2FA3E0E0AB75A6F000E5AC4 /* JSSVGTRefElement.cpp in Sources */,
                                070363D6181A146500C074A5 /* MediaStreamSourceStates.cpp in Sources */,
                                B2FA3E100AB75A6F000E5AC4 /* JSSVGTSpanElement.cpp in Sources */,
+                               E45390430EAFD637003695C8 /* PlatformScreenIOS.mm in Sources */,
                                B2FA3E120AB75A6F000E5AC4 /* JSSVGUnitTypes.cpp in Sources */,
                                E125F85118283A5600D84CD9 /* JSCryptoKeySerializationJWK.cpp in Sources */,
                                B2FA3E140AB75A6F000E5AC4 /* JSSVGUseElement.cpp in Sources */,
                                BCEFE1EA0DCA5F6400739219 /* JSXSLTProcessor.cpp in Sources */,
                                BCEFE1E50DCA5F3300739219 /* JSXSLTProcessorCustom.cpp in Sources */,
                                85031B430A44EFC700F992E0 /* KeyboardEvent.cpp in Sources */,
+                               C58361AA1744523F00173511 /* FontServicesIOS.mm in Sources */,
                                A513B3D8114B166A001C429B /* KeyEventCocoa.mm in Sources */,
                                2655413A1489811C000DFC5D /* KeyEventIOS.mm in Sources */,
                                511EF2C117F0FD3500E4FA16 /* JSIDBCursor.cpp in Sources */,
                                510194441836F7E400925523 /* IDBCursorBackendOperations.cpp in Sources */,
                                FABE72F41059C1EB00D999DD /* MathMLElement.cpp in Sources */,
                                FABE72FD1059C21100D999DD /* MathMLElementFactory.cpp in Sources */,
+                               BEA807C80F714A0300524199 /* SelectionRect.cpp in Sources */,
                                FABE72F61059C1EB00D999DD /* MathMLInlineContainerElement.cpp in Sources */,
                                FABE72F81059C1EB00D999DD /* MathMLMathElement.cpp in Sources */,
                                FABE72FE1059C21100D999DD /* MathMLNames.cpp in Sources */,
                                FA654A6B1108ABED002615E0 /* MathMLTextElement.cpp in Sources */,
+                               E45390450EAFD637003695C8 /* ScrollViewIOS.mm in Sources */,
                                49D5DC2B0F423A73008F20FD /* Matrix3DTransformOperation.cpp in Sources */,
                                49E911C60EF86D47009D0CAF /* MatrixTransformOperation.cpp in Sources */,
                                417253AA1354BBBC00360F2A /* MediaControlElements.cpp in Sources */,
                                93309DF9099E64920056E581 /* MergeIdenticalElementsCommand.cpp in Sources */,
                                E1ADECCF0E76AD8B004A1A5E /* MessageChannel.cpp in Sources */,
                                75793E830D0CE0B3007FC0AC /* MessageEvent.cpp in Sources */,
+                               443F04270E75C8FB007E5407 /* NetworkStateNotifierIOS.cpp in Sources */,
                                E1ADECC00E76ACF1004A1A5E /* MessagePort.cpp in Sources */,
                                A78E526F1346BD1700AD9C31 /* MeterShadowElement.cpp in Sources */,
                                37DDCD9413844FD50008B793 /* MIMEHeader.cpp in Sources */,
                                BC772C4E0C4EB3040083285F /* MIMETypeRegistry.cpp in Sources */,
                                BC772C5E0C4EB3440083285F /* MIMETypeRegistryMac.mm in Sources */,
+                               E45390470EAFD637003695C8 /* SoundIOS.mm in Sources */,
                                52F10865162B6DA4009AC81E /* MixedContentChecker.cpp in Sources */,
                                C6D74AE409AA290A000B0A52 /* ModifySelectionListLevel.cpp in Sources */,
                                F55B3DC51251F12D003EF269 /* MonthInputType.cpp in Sources */,
                                E1284AEA10447DEE00EAEB52 /* PageTransitionEvent.cpp in Sources */,
                                516730A3182D8FBB003FAF5C /* IDBCursorBackend.cpp in Sources */,
                                51E1ECC20C91C90400DC255B /* PageURLRecord.cpp in Sources */,
+                               3727DFD5142AAE4500D449CB /* FontCacheIOS.mm in Sources */,
                                FFD5B97A135CC97800D5E92A /* PageVisibilityState.cpp in Sources */,
                                FD3160A212B026F700C1A359 /* Panner.cpp in Sources */,
                                FD31601912B0267600C1A359 /* PannerNode.cpp in Sources */,
                                4958782212A57DDF007238AC /* PlatformCALayerMac.mm in Sources */,
                                CDEA763014608A53008B31F1 /* PlatformClockCA.cpp in Sources */,
                                CDAA8D0A14D71B2E0061EA60 /* PlatformClockCM.mm in Sources */,
+                               442AF7AA102CDDEA008FD4D3 /* QuickLook.mm in Sources */,
                                BCAA486F14A052530088FAC4 /* PlatformEventFactoryMac.mm in Sources */,
                                F544F78815CFB2A800AF33A8 /* PlatformLocale.cpp in Sources */,
                                41BF700F0FE86F61005E8DEC /* PlatformMessagePortChannel.cpp in Sources */,
                                BCEA4877097D93020094C9E4 /* RenderInline.cpp in Sources */,
                                BCEA4879097D93020094C9E4 /* RenderLayer.cpp in Sources */,
                                0F580D000F12DE9B0051D689 /* RenderLayerBacking.cpp in Sources */,
+                               E453901D0EAFCACA003695C8 /* MIMETypeRegistryIOS.mm in Sources */,
                                0F580CFE0F12DE9B0051D689 /* RenderLayerCompositor.cpp in Sources */,
                                50D10D991545F5760096D288 /* RenderLayerFilterInfo.cpp in Sources */,
                                3C244FEBA375AC633F88BE6F /* RenderLayerModelObject.cpp in Sources */,
                                A8DF4AEA0980C42C0052981B /* RenderTableCell.cpp in Sources */,
                                A8DF4AE80980C42C0052981B /* RenderTableCol.cpp in Sources */,
                                A8DF4AF00980C42C0052981B /* RenderTableRow.cpp in Sources */,
+                               E4B65A5A132FAAF90070E7BE /* TileGrid.mm in Sources */,
                                A8DF4AED0980C42C0052981B /* RenderTableSection.cpp in Sources */,
                                BCEA488B097D93020094C9E4 /* RenderText.cpp in Sources */,
                                AB67D1A8097F3AE300F9392E /* RenderTextControl.cpp in Sources */,
                                0F605AEC15F94848004DF0C0 /* ScrollingConstraints.cpp in Sources */,
                                1AF62EE714DA22A70041556C /* ScrollingCoordinator.cpp in Sources */,
                                1AF62EE614DA22A70041556C /* ScrollingCoordinatorMac.mm in Sources */,
+                               CD5596911475B678001D0BD0 /* AudioFileReaderIOS.cpp in Sources */,
                                93C38BFE164473C700091EB2 /* ScrollingStateFixedNode.cpp in Sources */,
                                931CBD0C161A44E900E4C874 /* ScrollingStateNode.cpp in Sources */,
                                931CBD13161A44F800E4C874 /* ScrollingStateNodeMac.mm in Sources */,
                                BC5EB8C30E82031B00B25965 /* ShadowData.cpp in Sources */,
                                A6D169621346B49B000EB770 /* ShadowRoot.cpp in Sources */,
                                FD45A953175D3FB800C21EC8 /* Shape.cpp in Sources */,
+                               2903716516BA11BC00FEFDF0 /* ContentFilterIOS.mm in Sources */,
                                FD45A954175D3FB800C21EC8 /* ShapeInfo.cpp in Sources */,
                                FD45A955175D3FB800C21EC8 /* ShapeInsideInfo.cpp in Sources */,
                                FD45A956175D3FB800C21EC8 /* ShapeOutsideInfo.cpp in Sources */,
                                CDE3A85717F6020400C5BE20 /* AudioTrackPrivateAVFObjC.mm in Sources */,
                                B22279B30D00BF220071B782 /* SVGDocument.cpp in Sources */,
                                B28C6A270D00C44800334AA4 /* SVGDocumentExtensions.cpp in Sources */,
+                               0F1774811378B772009DA76A /* ScrollAnimatorIOS.mm in Sources */,
                                B22279B60D00BF220071B782 /* SVGElement.cpp in Sources */,
                                A833C8520A2CF52800D57664 /* SVGElementFactory.cpp in Sources */,
                                B22279B90D00BF220071B782 /* SVGElementInstance.cpp in Sources */,
                                B2227A580D00BF220071B782 /* SVGPathElement.cpp in Sources */,
                                8476C9EF11DF6A5800555B02 /* SVGPathParser.cpp in Sources */,
                                B2227A800D00BF220071B782 /* SVGPathSegList.cpp in Sources */,
+                               FE0D84EB1048436E001A179E /* WebEvent.mm in Sources */,
                                8476C9E511DF6A0B00555B02 /* SVGPathSegListBuilder.cpp in Sources */,
                                CDF2B0181820540700F2B424 /* MockTracks.cpp in Sources */,
                                08FF102012950F5A00F00276 /* SVGPathSegListPropertyTearOff.cpp in Sources */,
                                498770F01242C535002226BA /* Texture.cpp in Sources */,
                                97BC84A412370DC8000C6161 /* TextViewSourceParser.cpp in Sources */,
                                BCE65D320EAD1211007E4533 /* Theme.cpp in Sources */,
+                               E4C3B1FC0F0E4170009693F6 /* TileCache.mm in Sources */,
                                BCE659E90EA92FFA007E4533 /* ThemeMac.mm in Sources */,
                                976D6C94122B8A3D001FD1F7 /* ThreadableBlobRegistry.cpp in Sources */,
                                0B90561E0F257E930095FF6A /* ThreadableLoader.cpp in Sources */,
                                7E66E23316D6EB6C00F7E7FF /* WebGLCompressedTextureATC.cpp in Sources */,
                                7E66E23317E6EB6C00F7E7FF /* WebGLCompressedTexturePVRTC.cpp in Sources */,
                                6E3FAE8E14733FDB00E42306 /* WebGLCompressedTextureS3TC.cpp in Sources */,
+                               0F97A658155DA81E00FADD4C /* DisplayRefreshMonitorIOS.mm in Sources */,
                                6E4E91AE10F7FB3100A2779C /* WebGLContextAttributes.cpp in Sources */,
                                93F6F1ED127F70B10055CB06 /* WebGLContextEvent.cpp in Sources */,
                                01D3CF8214BD0A3000FE9970 /* WebGLContextGroup.cpp in Sources */,
                                E1EC299F0BB04C6B00EA187B /* XPathNodeSet.cpp in Sources */,
                                1AB7FC750A8B92EC00D9D37B /* XPathNSResolver.cpp in Sources */,
                                1AB7FC780A8B92EC00D9D37B /* XPathParser.cpp in Sources */,
+                               4476531B133170990006B789 /* SSLKeyGeneratorIOS.cpp in Sources */,
                                1AB7FC7A0A8B92EC00D9D37B /* XPathPath.cpp in Sources */,
                                1AB7FC7C0A8B92EC00D9D37B /* XPathPredicate.cpp in Sources */,
                                1AB7FC7E0A8B92EC00D9D37B /* XPathResult.cpp in Sources */,
index 93f209db63e9a960b25564dbc3639ce95f546900..d05e2aa287f4c2a638d3a783b686a1ae3ea3cde3 100644 (file)
 #include <wtf/RefCounted.h>
 #include <wtf/RetainPtr.h>
 
+#if PLATFORM(IOS)
+#include <wtf/Functional.h>
+#endif
+
 #if PLATFORM(MAC)
 OBJC_CLASS WebFilterEvaluator;
 #endif
@@ -51,6 +55,11 @@ public:
     bool didBlockData() const;
     const char* getReplacementData(int& length) const;
     
+#if PLATFORM(IOS)
+    static const char* scheme();
+    void requestUnblockAndDispatchIfSuccessful(Function<void()>);
+#endif
+
 private:
     explicit ContentFilter(const ResourceResponse&);
     
index f35356cbd5da2804a8652a902a9501f4905031f3..5379b86706c82c799fc7042f9004be68ac2fa85d 100644 (file)
@@ -34,7 +34,7 @@
 #include <wtf/HashMap.h>
 #include <wtf/Vector.h>
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
 #include <wtf/RetainPtr.h>
 #include <wtf/text/WTFString.h>
 
@@ -55,11 +55,10 @@ namespace WebCore {
 class DataObjectGtk;
 }
 typedef WebCore::DataObjectGtk* DragDataRef;
-#elif PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(NIX)
+#elif PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(NIX) || PLATFORM(IOS)
 typedef void* DragDataRef;
 #endif
 
-
 namespace WebCore {
 
 class Frame;
index dc971b36e7aeee2424abe13c1a96f74c2d7c8e2d..4a10f16d33ed5fcc354893efd9b6ce72cd30e850 100644 (file)
@@ -75,6 +75,25 @@ void FileChooser::chooseFiles(const Vector<String>& filenames)
     m_client->filesChosen(files);
 }
 
+#if PLATFORM(IOS)
+// FIXME: This function is almost identical to FileChooser::chooseFiles(). We should merge this function
+// with FileChooser::chooseFiles() and hence remove the PLATFORM(IOS)-guard.
+void FileChooser::chooseMediaFiles(const Vector<String>& filenames, const String& displayString, Icon* icon)
+{
+    // FIXME: This is inelegant. We should not be looking at settings here.
+    if (m_settings.selectedFiles == filenames)
+        return;
+
+    if (!m_client)
+        return;
+
+    Vector<FileChooserFileInfo> files;
+    for (auto filename : filenames)
+        files.append(FileChooserFileInfo(filename));
+    m_client->filesChosen(files, displayString, icon);
+}
+#endif
+
 void FileChooser::chooseFiles(const Vector<FileChooserFileInfo>& files)
 {
     // FIXME: This is inelegant. We should not be looking at settings here.
index 6c023e3d6ddd3edd90731d1c1aa89ca973178800..8d759e69378c6d0646c1eec917fbc2a44faf1356 100644 (file)
@@ -37,6 +37,7 @@
 namespace WebCore {
 
 class FileChooser;
+class Icon;
 
 struct FileChooserFileInfo {
     FileChooserFileInfo(const String& path, const String& displayName = String())
@@ -70,6 +71,11 @@ public:
     virtual ~FileChooserClient() { }
 
     virtual void filesChosen(const Vector<FileChooserFileInfo>&) = 0;
+#if PLATFORM(IOS)
+    // FIXME: This function is almost identical to FileChooser::filesChosen(). We should merge this
+    // function with FileChooser::filesChosen() and hence remove the PLATFORM(IOS)-guard.
+    virtual void filesChosen(const Vector<FileChooserFileInfo>&, const String& displayString, Icon*) = 0;
+#endif
 };
 
 class FileChooser : public RefCounted<FileChooser> {
@@ -81,6 +87,11 @@ public:
 
     void chooseFile(const String& path);
     void chooseFiles(const Vector<String>& paths);
+#if PLATFORM(IOS)
+    // FIXME: This function is almost identical to FileChooser::chooseFiles(). We should merge this
+    // function with FileChooser::chooseFiles() and hence remove the PLATFORM(IOS)-guard.
+    void chooseMediaFiles(const Vector<String>& paths, const String& displayString, Icon*);
+#endif    
 
     // FIXME: We should probably just pass file paths that could be virtual paths with proper display names rather than passing structs.
     void chooseFiles(const Vector<FileChooserFileInfo>& files);
index 402ff17aa0a3d75c4e61d8cbaa0a5c74b9d125ff..4e0d9d66cd4b8e7a928e469a1d1e170caad50dbb 100644 (file)
@@ -97,6 +97,10 @@ String encodeForFileName(const String& inputString)
 
 #if !PLATFORM(MAC) || PLATFORM(IOS)
 
+void setMetadataURL(String&, const String&, const String&)
+{
+}
+
 bool canExcludeFromBackup()
 {
     return false;
index 9a5a39f3e2e0942521a1f6e6904800de5034785d..34fe0a430f7e6a333c23fe3035cd99e111f96aaf 100644 (file)
@@ -151,6 +151,8 @@ String homeDirectoryPath();
 String pathGetFileName(const String&);
 String directoryName(const String&);
 
+void setMetadataURL(String& URLString, const String& referrer, const String& path);
+
 bool canExcludeFromBackup(); // Returns true if any file can ever be excluded from backup.
 bool excludeFromBackup(const String&); // Returns true if successful.
 
@@ -189,10 +191,6 @@ String encodeForFileName(const String&);
 RetainPtr<CFURLRef> pathAsURL(const String&);
 #endif
 
-#if PLATFORM(MAC)
-void setMetadataURL(String& URLString, const String& referrer, const String& path);
-#endif
-
 #if PLATFORM(GTK) || PLATFORM(NIX)
 String filenameToString(const char*);
 String filenameForDisplay(const String&);
index 310aa080cb25a747a63d8e0644cf607125c45091..cd946a4e24ffd428995d7e598dd414e101470177 100644 (file)
@@ -50,3 +50,4 @@ void KillRing::setToYankedState()
 }
 
 } // namespace WebCore
+
index 599011b261b460163edd35091a6af01ef00a93a1..b8207f9c0c467bd26380de2c7a39c9007b3ab845 100644 (file)
@@ -71,6 +71,7 @@ static String formatLocalizedString(String format, ...)
 #endif
 }
 
+#if ENABLE(CONTEXT_MENUS)
 static String truncatedStringForLookupMenuItem(const String& original)
 {
     if (original.isEmpty())
@@ -84,6 +85,7 @@ static String truncatedStringForLookupMenuItem(const String& original)
     unsigned numberOfCharacters = numCharactersInGraphemeClusters(trimmed, maxNumberOfGraphemeClustersInLookupMenuItem);
     return numberOfCharacters == trimmed.length() ? trimmed : trimmed.left(numberOfCharacters) + ellipsis;
 }
+#endif
 
 String inputElementAltText()
 {
@@ -797,6 +799,26 @@ String htmlSelectMultipleItems(size_t count)
         return formatLocalizedString(WEB_UI_STRING("%zu Items", "Present the number of selected <option> items in a <select multiple> element (iOS only)"), count);
     }
 }
+
+String fileButtonChooseMediaFileLabel()
+{
+    return WEB_UI_STRING("Choose Media (Single)", "Title for file button used in HTML forms for media files");
+}
+
+String fileButtonChooseMultipleMediaFilesLabel()
+{
+    return WEB_UI_STRING("Choose Media (Multiple)", "Title for file button used in HTML5 forms for multiple media files");
+}
+
+String fileButtonNoMediaFileSelectedLabel()
+{
+    return WEB_UI_STRING("no media selected (single)", "Text to display in file button used in HTML forms for media files when no media file is selected");
+}
+
+String fileButtonNoMediaFilesSelectedLabel()
+{
+    return WEB_UI_STRING("no media selected (multiple)", "Text to display in file button used in HTML forms for media files when no media files are selected and the button allows multiple files to be selected");
+}
 #endif
 
 String imageTitle(const String& filename, const IntSize& size)
index a8757d4dfc68659e885572764c32e7afdf611aa8..e3f73cb0d2c0168bbafa61c0e79f1a4e378bf67a 100644 (file)
@@ -145,6 +145,7 @@ namespace WebCore {
     String contextMenuItemTagInspectElement();
 #endif // ENABLE(CONTEXT_MENUS)
 
+#if !PLATFORM(IOS)
     String searchMenuNoRecentSearchesText();
     String searchMenuRecentSearchesText();
     String searchMenuClearRecentSearchesText();
@@ -171,6 +172,7 @@ namespace WebCore {
     String AXMenuListPopupActionVerb();
     String AXLinkActionVerb();
     String AXListItemActionVerb();
+#endif
 
 #if ENABLE(INPUT_TYPE_WEEK)
     // weekFormatInLDML() returns week and year format in LDML, Unicode
@@ -206,6 +208,10 @@ namespace WebCore {
 
 #if PLATFORM(IOS)
     String htmlSelectMultipleItems(size_t num);
+    String fileButtonChooseMediaFileLabel();
+    String fileButtonChooseMultipleMediaFilesLabel();
+    String fileButtonNoMediaFileSelectedLabel();
+    String fileButtonNoMediaFilesSelectedLabel();
 #endif
 
     String imageTitle(const String& filename, const IntSize& size);
index 1baab303a0e3fec5c2e25be704523ced3b5ab447..4ef22f63267646690ffd2d45b3cf0511589a62a7 100644 (file)
@@ -54,6 +54,7 @@ namespace WebCore {
     M(LiveConnect) \
     M(Loading) \
     M(Media) \
+    M(MemoryPressure) \
     M(Network) \
     M(NotYetImplemented) \
     M(PageCache) \
@@ -61,6 +62,7 @@ namespace WebCore {
     M(Plugins) \
     M(PopupBlocking) \
     M(Progress) \
+    M(RemoteInspector) \
     M(ResourceLoading) \
     M(SQLDatabase) \
     M(SpellingAndGrammar) \
index 7464e19ed245b818d82aba4fad25230252d6c3c4..0bb508bdd60cba6d016486589ba6b9e7e9a6fe72 100644 (file)
 
 #if USE(CG)
 #include "ImageSourceCG.h"
+#if !PLATFORM(IOS)
 #include <ApplicationServices/ApplicationServices.h>
+#else
+#include <ImageIO/CGImageDestination.h>
+#endif
 #include <wtf/RetainPtr.h>
 #endif
 
@@ -224,6 +228,34 @@ static void initializeSupportedImageMIMETypes()
     supportedImageMIMETypes->remove("application/pdf");
     supportedImageMIMETypes->remove("application/postscript");
 
+#if PLATFORM(IOS)
+    // Add malformed image mimetype for compatibility with Mail and to handle malformed mimetypes from the net
+    // These were removed for <rdar://problem/6564538> Re-enable UTI code in WebCore now that MobileCoreServices exists
+    // But Mail relies on at least image/tif reported as being supported (should be image/tiff).
+    // This can be removed when Mail addresses:
+    // <rdar://problem/7879510> Mail should use standard image mimetypes 
+    // and we fix sniffing so that it corrects items such as image/jpg -> image/jpeg.
+    static const char* malformedMIMETypes[] = {
+        // JPEG (image/jpeg)
+        "image/jpg", "image/jp_", "image/jpe_", "application/jpg", "application/x-jpg", "image/pipeg",
+        "image/vnd.switfview-jpeg", "image/x-xbitmap",
+        // GIF (image/gif)
+        "image/gi_",
+        // PNG (image/png)
+        "application/png", "application/x-png",
+        // TIFF (image/tiff)
+        "image/x-tif", "image/tif", "image/x-tiff", "application/tif", "application/x-tif", "application/tiff",
+        "application/x-tiff",
+        // BMP (image/bmp, image/x-bitmap)
+        "image/x-bmp", "image/x-win-bitmap", "image/x-windows-bmp", "image/ms-bmp", "image/x-ms-bmp",
+        "application/bmp", "application/x-bmp", "application/x-win-bitmap",
+    };
+    for (size_t i = 0; i < WTF_ARRAY_LENGTH(malformedMIMETypes); ++i) {
+        supportedImageMIMETypes->add(malformedMIMETypes[i]);
+        supportedImageResourceMIMETypes->add(malformedMIMETypes[i]);
+    }
+#endif
+
 #else
     // assume that all implementations at least support the following standard
     // image types:
@@ -331,9 +363,11 @@ static void initializeSupportedNonImageMimeTypes()
         "text/",
         "application/xml",
         "application/xhtml+xml",
+#if !PLATFORM(IOS)
         "application/vnd.wap.xhtml+xml",
         "application/rss+xml",
         "application/atom+xml",
+#endif
         "application/json",
 #if ENABLE(SVG)
         "image/svg+xml",
@@ -440,7 +474,11 @@ static void initializeUnsupportedTextMIMETypes()
         "text/x-qif",
         "text/x-csv",
         "text/x-vcf",
+#if !PLATFORM(IOS)
         "text/rtf",
+#else
+        "text/vnd.sun.j2me.app-descriptor",
+#endif
     };
     for (size_t i = 0; i < WTF_ARRAY_LENGTH(types); ++i)
       unsupportedTextMIMETypes->add(types[i]);
index 5e8e7cc3fc210f660be0d6ba174b588074edd92b..62ee1ad56a193e3104a684683443d8937db5166e 100644 (file)
@@ -40,6 +40,14 @@ MemoryPressureHandler::MemoryPressureHandler()
     : m_installed(false)
     , m_lastRespondTime(0)
     , m_lowMemoryHandler(releaseMemory)
+#if PLATFORM(IOS)
+    // FIXME: Can we share more of this with OpenSource?
+    , m_receivedMemoryPressure(0)
+    , m_memoryPressureReason(MemoryPressureReasonNone)
+    , m_clearPressureOnMemoryRelease(true)
+    , m_releaseMemoryBlock(0)
+    , m_observer(0)
+#endif
 {
 }
 
@@ -49,7 +57,9 @@ void MemoryPressureHandler::install() { }
 void MemoryPressureHandler::uninstall() { }
 void MemoryPressureHandler::holdOff(unsigned) { }
 void MemoryPressureHandler::respondToMemoryPressure() { }
+#if !PLATFORM(IOS)
 void MemoryPressureHandler::releaseMemory(bool) { }
+#endif // !PLATFORM(IOS)
 
 #endif
 
index 950ae852dfe0908eb34389cfcfb6b426b94c794f..ebfb84ca10b7ffe3c999d3be1554131ab683f075 100644 (file)
 #include <time.h>
 #include <wtf/FastMalloc.h>
 
+#if PLATFORM(IOS)
+#include <wtf/ThreadingPrimitives.h>
+#endif
+
 namespace WebCore {
 
+#if PLATFORM(IOS)
+enum MemoryPressureReason {
+    MemoryPressureReasonNone = 0 << 0,
+    MemoryPressureReasonVMPressure = 1 << 0,
+    MemoryPressureReasonVMStatus = 1 << 1,
+};
+#endif
+
 typedef void (*LowMemoryHandler)(bool critical);
 
 class MemoryPressureHandler {
@@ -46,6 +58,16 @@ public:
         m_lowMemoryHandler = handler;
     }
 
+#if PLATFORM(IOS)
+    // FIXME: Can we share more of this with OpenSource?
+    void installMemoryReleaseBlock(void (^releaseMemoryBlock)(), bool clearPressureOnMemoryRelease = true);
+    void setReceivedMemoryPressure(MemoryPressureReason);
+    bool hasReceivedMemoryPressure();
+    void clearMemoryPressure();
+    bool shouldWaitForMemoryClearMessage();
+    void respondToMemoryPressureIfNeeded();
+#endif
+
 private:
     void uninstall();
 
@@ -60,6 +82,15 @@ private:
     bool m_installed;
     time_t m_lastRespondTime;
     LowMemoryHandler m_lowMemoryHandler;
+
+#if PLATFORM(IOS)
+    uint32_t m_receivedMemoryPressure;
+    uint32_t m_memoryPressureReason;
+    bool m_clearPressureOnMemoryRelease;
+    void (^m_releaseMemoryBlock)();
+    CFRunLoopObserverRef m_observer;
+    Mutex m_observerMutex;
+#endif
 };
  
 // Function to obtain the global memory pressure object.
index 59ba29b39ea08d0ce21a1b6049df08d0a9cf05dc..f73037dc6c18260e2a12b6677a73bef41366c22e 100644 (file)
 OBJC_CLASS NSEvent;
 #endif
 
+#if PLATFORM(IOS)
+#ifdef __OBJC__
+@class WebEvent;
+#else
+class WebEvent;
+#endif
+#endif
+
 #if PLATFORM(GTK)
 typedef struct _GdkEventKey GdkEventKey;
 #include "CompositionResults.h"
@@ -127,7 +135,11 @@ namespace WebCore {
 #endif
 
 #if PLATFORM(MAC)
+#if !PLATFORM(IOS)
         NSEvent* macEvent() const { return m_macEvent.get(); }
+#else
+        WebEvent *event() const { return m_Event.get(); }
+#endif
 #endif
 
 #if PLATFORM(WIN)
@@ -170,7 +182,11 @@ namespace WebCore {
 #endif
 
 #if PLATFORM(MAC)
+#if !PLATFORM(IOS)
         RetainPtr<NSEvent> m_macEvent;
+#else
+        RetainPtr<WebEvent> m_Event;
+#endif
 #endif
 #if PLATFORM(GTK)
         GdkEventKey* m_gdkEventKey;
index 3a42533650e604099cda0177fb177b9b8eb863f3..d64dd230723508860586799d80aefcbd4d1f7bb3 100644 (file)
@@ -57,7 +57,7 @@ namespace WebCore {
             , m_button(NoButton)
             , m_clickCount(0)
             , m_modifierFlags(0)
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
             , m_eventNumber(0)
 #elif PLATFORM(WIN)
             , m_didActivateWebView(false)
@@ -73,7 +73,7 @@ namespace WebCore {
             , m_button(button)
             , m_clickCount(clickCount)
             , m_modifierFlags(0)
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
             , m_eventNumber(0)
 #elif PLATFORM(WIN)
             , m_didActivateWebView(false)
@@ -105,7 +105,7 @@ namespace WebCore {
         PlatformMouseEvent(const Evas_Event_Mouse_Move*, IntPoint);
 #endif
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
         int eventNumber() const { return m_eventNumber; }
 #endif
 
@@ -129,7 +129,7 @@ namespace WebCore {
         int m_clickCount;
         unsigned m_modifierFlags;
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
         int m_eventNumber;
 #elif PLATFORM(WIN)
         bool m_didActivateWebView;
index 9336c7f645af0fa991f4b538f6e44596565d538f..a24edd791d9397babef8623e303917983ebe502a 100644 (file)
@@ -28,7 +28,7 @@
 
 #include <wtf/Vector.h>
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
 OBJC_CLASS NSScreen;
 OBJC_CLASS NSWindow;
 #ifdef NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES
@@ -57,7 +57,7 @@ namespace WebCore {
     FloatRect screenAvailableRect(Widget*);
     void screenColorProfile(ColorProfile&);
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
     NSScreen *screenForWindow(NSWindow *);
 
     FloatRect toUserSpace(const NSRect&, NSWindow *destination);
index e9400a09c286a4440c32659e49e30e50cd9e44df..26e49bdbb392e6d149ac777572a9264706c2e9eb 100644 (file)
@@ -37,7 +37,9 @@ namespace WebCore {
     
 static bool mainBundleIsEqualTo(const String& bundleIdentifierString)
 {
-#if USE(CF)
+    // FIXME: We should consider merging this file with RuntimeApplicationChecksIOS.mm.
+    // Then we can remove the PLATFORM(IOS)-guard.
+#if USE(CF) && !PLATFORM(IOS)
     CFBundleRef mainBundle = CFBundleGetMainBundle();
     if (!mainBundle)
         return false;
diff --git a/Source/WebCore/platform/RuntimeApplicationChecksIOS.h b/Source/WebCore/platform/RuntimeApplicationChecksIOS.h
new file mode 100644 (file)
index 0000000..4b378ba
--- /dev/null
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2009 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer. 
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution. 
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef RuntimeApplicationChecksIOS_h
+#define RuntimeApplicationChecksIOS_h
+
+// FIXME: We should consider merging this file with RuntimeApplicationChecks.h.
+namespace WebCore {
+
+bool applicationIsMobileMail();
+bool applicationIsMobileSafari();
+bool applicationIsDumpRenderTree();
+bool applicationIsMobileStore();
+bool applicationIsWebApp();
+bool applicationIsOkCupid();
+bool applicationIsFacebook();
+bool applicationIsEpicurious();
+bool applicationIsDaijisenDictionary();
+bool applicationIsNASAHD();
+bool applicationIsMASH();
+bool applicationIsTheEconomistOnIPhone();
+bool applicationIsWebProcess();
+bool applicationIsIBooksOnIOS();
+
+} // namespace WebCore
+
+#endif // RuntimeApplicationChecksIOS_h
diff --git a/Source/WebCore/platform/RuntimeApplicationChecksIOS.mm b/Source/WebCore/platform/RuntimeApplicationChecksIOS.mm
new file mode 100644 (file)
index 0000000..9f44203
--- /dev/null
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2009 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer. 
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution. 
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#import "config.h"
+#import "RuntimeApplicationChecksIOS.h"
+
+// FIXME: We should consider merging this file with RuntimeApplicationChecks.cpp.
+#if PLATFORM(IOS)
+
+namespace WebCore {
+
+bool applicationIsMobileMail()
+{
+    static bool isMobileMail = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.mobilemail"];
+    return isMobileMail;
+}
+
+bool applicationIsMobileSafari()
+{
+    static bool isMobileSafari = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.mobilesafari"];
+    return isMobileSafari;
+}
+
+bool applicationIsDumpRenderTree()
+{
+    static bool isDumpRenderTree = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.DumpRenderTree"];
+    return isDumpRenderTree;
+}
+
+bool applicationIsMobileStore()
+{
+    static const bool isMobileStore = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.MobileStore"];
+    return isMobileStore;
+}
+
+bool applicationIsWebApp()
+{
+    static bool isWebApp = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.webapp"];
+    return isWebApp;
+}
+
+bool applicationIsOkCupid()
+{
+    static bool isOkCupid = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.okcupid.app"];
+    return isOkCupid;
+}
+
+bool applicationIsFacebook()
+{
+    static bool isFacebook = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.facebook.Facebook"];
+    return isFacebook;
+}
+
+bool applicationIsEpicurious()
+{
+    static bool isEpicurious = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.condenet.Epicurious"];
+    return isEpicurious;
+}
+
+bool applicationIsDaijisenDictionary()
+{
+    static bool isDaijisenDictionary = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"jp.co.shogakukan.daijisen2009i"];
+    return isDaijisenDictionary;
+}
+
+bool applicationIsNASAHD()
+{
+    static bool isNASAHD = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"gov.nasa.NASAHD"];
+    return isNASAHD;
+}
+
+bool applicationIsMASH()
+{
+    static bool isMASH = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.magnateinteractive.mashgame"]
+        || [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.magnateinteractive.mashlitegame"]
+        || [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.magnateinteractive.mashchristmas"]
+        || [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.magnateinteractive.mashhalloween"]
+        || [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.magnateinteractive.mashvalentines"];
+    return isMASH;
+}
+
+bool applicationIsTheEconomistOnIPhone()
+{
+    static bool isTheEconomistOnIPhone = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.economist.iphone"];
+    return isTheEconomistOnIPhone;
+}
+
+// FIXME: this needs to be changed when the WebProcess is changed to an XPC service.
+bool applicationIsWebProcess()
+{
+    static bool isWebProcess = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.WebKit.WebContent"] || [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.WebProcess"];
+    return isWebProcess;
+}
+
+bool applicationIsIBooksOnIOS()
+{
+    static bool isIBooksOnIOS = [[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.apple.iBooks"];
+    return isIBooksOnIOS;
+}
+
+} // namespace WebCore
+
+#endif // PLATFORM(IOS)
index 787fb128435db647049fb31b8e570f6f08a977ed..f8db250c0186f640cf6322bfff4439c283904eda 100644 (file)
@@ -39,7 +39,7 @@
 
 namespace WebCore {
 
-#if !ENABLE(SMOOTH_SCROLLING)
+#if !ENABLE(SMOOTH_SCROLLING) && !PLATFORM(IOS)
 PassOwnPtr<ScrollAnimator> ScrollAnimator::create(ScrollableArea* scrollableArea)
 {
     return adoptPtr(new ScrollAnimator(scrollableArea));
@@ -123,6 +123,13 @@ bool ScrollAnimator::handleWheelEvent(const PlatformWheelEvent& e)
     return handled;
 }
 
+#if ENABLE(TOUCH_EVENTS)
+bool ScrollAnimator::handleTouchEvent(const PlatformTouchEvent&)
+{
+    return false;
+}
+#endif
+
 void ScrollAnimator::setCurrentPosition(const FloatPoint& position)
 {
     m_currentPosX = position.x();
index 20e9a56dd24cbb32d38685136e1bd7e5a3b477c1..f0dc984638de87e49963e87bf905e79331d2cbdc 100644 (file)
@@ -40,6 +40,7 @@
 namespace WebCore {
 
 class FloatPoint;
+class PlatformTouchEvent;
 class ScrollableArea;
 class Scrollbar;
 
@@ -62,6 +63,10 @@ public:
 
     virtual bool handleWheelEvent(const PlatformWheelEvent&);
 
+#if ENABLE(TOUCH_EVENTS)
+    virtual bool handleTouchEvent(const PlatformTouchEvent&);
+#endif
+
 #if PLATFORM(MAC)
     virtual void handleWheelEventPhase(PlatformWheelEventPhase) { }
 #endif
index f630dae26583bc092502ab783c239ccec6d4df2d..308dba4bb5f8fdcabe772f26d51b528efdfc3c14 100644 (file)
@@ -26,6 +26,8 @@
 #ifndef ScrollTypes_h
 #define ScrollTypes_h
 
+#ifdef __cplusplus
+
 namespace WebCore {
 
     enum ScrollDirection {
@@ -178,4 +180,6 @@ namespace WebCore {
     };
 }
 
+#endif // __cplusplus
+
 #endif
index ff22c4d0e9654b1bdb3e1467d4dc9748820729d9..9b33c31daf176d25a471b2e47e724bf457f3273a 100644 (file)
@@ -241,8 +241,10 @@ IntSize ScrollView::unscaledVisibleContentSize(VisibleContentRectIncludesScrollb
     if (platformWidget())
         return platformVisibleContentSize(scrollbarInclusion == IncludeScrollbars);
 
+#if !PLATFORM(IOS)
     if (!m_fixedVisibleContentRect.isEmpty())
         return m_fixedVisibleContentRect.size();
+#endif
 
     int verticalScrollbarWidth = 0;
     int horizontalScrollbarHeight = 0;
@@ -264,8 +266,10 @@ IntRect ScrollView::visibleContentRect(VisibleContentRectIncludesScrollbars scol
     if (platformWidget())
         return platformVisibleContentRect(scollbarInclusion == IncludeScrollbars);
 
+#if !PLATFORM(IOS)
     if (!m_fixedVisibleContentRect.isEmpty())
         return m_fixedVisibleContentRect;
+#endif
 
     FloatSize visibleContentSize = unscaledVisibleContentSize(scollbarInclusion);
     visibleContentSize.scale(1 / visibleContentScaleFactor());
index 20c69ceeea6e053b47607103bf74ae9171889305..e5285f4fdbf439d0d87302a18791ded696b2e786 100644 (file)
 
 #include <wtf/HashSet.h>
 
+#if PLATFORM(IOS)
+#ifdef __OBJC__
+@class WAKScrollView;
+@class WAKView;
+#else
+class WAKScrollView;
+class WAKView;
+#endif
+
+#ifndef NSScrollView
+#define NSScrollView WAKScrollView
+#endif
+
+#ifndef NSView
+#define NSView WAKView
+#endif
+#endif // PLATFORM(IOS)
+
 #if PLATFORM(MAC) && defined __OBJC__
 @protocol WebCoreFrameScrollView;
 #endif
@@ -43,6 +61,7 @@ namespace WebCore {
 
 class HostWindow;
 class Scrollbar;
+class TileCache;
 
 class ScrollView : public Widget, public ScrollableArea {
 public:
@@ -141,9 +160,20 @@ public:
     // the setFixedVisibleContentRect instead for the mainframe, though this must be updated manually, e.g just before resuming the page
     // which usually will happen when panning, pinching and rotation ends, or when scale or position are changed manually.
     virtual IntRect visibleContentRect(VisibleContentRectIncludesScrollbars = ExcludeScrollbars) const OVERRIDE;
+#if !PLATFORM(IOS)
     virtual void setFixedVisibleContentRect(const IntRect& visibleContentRect) { m_fixedVisibleContentRect = visibleContentRect; }
     IntRect fixedVisibleContentRect() const { return m_fixedVisibleContentRect; }
+#endif
     IntSize visibleSize() const { return visibleContentRect().size(); }
+#if PLATFORM(IOS)
+    // This is the area that is not covered by UI elements.
+    IntRect actualVisibleContentRect() const;
+    // This is the area that is partially or fully exposed, and may extend under overlapping UI elements.
+    IntRect visibleExtentContentRect() const;
+
+    void setActualScrollPosition(const IntPoint&);
+    TileCache* tileCache();
+#endif
     virtual int visibleWidth() const OVERRIDE { return visibleContentRect().width(); }
     virtual int visibleHeight() const OVERRIDE { return visibleContentRect().height(); }
 
@@ -181,6 +211,11 @@ public:
     int scrollX() const { return scrollPosition().x(); }
     int scrollY() const { return scrollPosition().y(); }
 
+#if PLATFORM(IOS)
+    int actualScrollX() const { return actualVisibleContentRect().x(); }
+    int actualScrollY() const { return actualVisibleContentRect().y(); }
+#endif
+
     // scrollOffset() anchors its (0,0) point at the top end of the header if this ScrollableArea
     // has a header, so it is relative to the totalContentsSize(). scrollOffsetRelativeToDocument()
     // anchors (0,0) at the top of the Document, which will be beneath any headers, so it is relative
@@ -354,7 +389,9 @@ private:
     // whether it is safe to blit on scroll.
     bool m_canBlitOnScroll;
 
+#if !PLATFORM(IOS)
     IntRect m_fixedVisibleContentRect;
+#endif
     IntSize m_scrollOffset; // FIXME: Would rather store this as a position, but we will wait to make this change until more code is shared.
     IntPoint m_cachedScrollPosition;
     IntSize m_fixedLayoutSize;
index c18dea7edc491ad5fd52b66cd23f9cbf582d4e99..2bc84c5c1b2943a321b408c7853e0b9952d36f53 100644 (file)
@@ -176,6 +176,13 @@ bool ScrollableArea::handleWheelEvent(const PlatformWheelEvent& wheelEvent)
     return scrollAnimator()->handleWheelEvent(wheelEvent);
 }
 
+#if ENABLE(TOUCH_EVENTS)
+bool ScrollableArea::handleTouchEvent(const PlatformTouchEvent& touchEvent)
+{
+    return scrollAnimator()->handleTouchEvent(touchEvent);
+}
+#endif
+
 // NOTE: Only called from Internals for testing.
 void ScrollableArea::setScrollOffsetFromInternals(const IntPoint& offset)
 {
@@ -389,6 +396,31 @@ void ScrollableArea::serviceScrollAnimations()
         scrollAnimator->serviceScrollAnimations();
 }
 
+#if PLATFORM(IOS)
+bool ScrollableArea::isPinnedInBothDirections(const IntSize& scrollDelta) const
+{
+    return isPinnedHorizontallyInDirection(scrollDelta.width()) && isPinnedVerticallyInDirection(scrollDelta.height());
+}
+
+bool ScrollableArea::isPinnedHorizontallyInDirection(int horizontalScrollDelta) const
+{
+    if (horizontalScrollDelta < 0 && isHorizontalScrollerPinnedToMinimumPosition())
+        return true;
+    if (horizontalScrollDelta > 0 && isHorizontalScrollerPinnedToMaximumPosition())
+        return true;
+    return false;
+}
+
+bool ScrollableArea::isPinnedVerticallyInDirection(int verticalScrollDelta) const
+{
+    if (verticalScrollDelta < 0 && isVerticalScrollerPinnedToMinimumPosition())
+        return true;
+    if (verticalScrollDelta > 0 && isVerticalScrollerPinnedToMaximumPosition())
+        return true;
+    return false;
+}
+#endif // PLATFORM(IOS)
+
 IntPoint ScrollableArea::scrollPosition() const
 {
     int x = horizontalScrollbar() ? horizontalScrollbar()->value() : 0;
index e3373e4c91c9e25ee03257b74f68ed4ccbf86326..f17471d4d7d18eab49b2cd45a7ac57fc5f1b5cef 100644 (file)
@@ -33,6 +33,7 @@ namespace WebCore {
 
 class FloatPoint;
 class GraphicsContext;
+class PlatformTouchEvent;
 class PlatformWheelEvent;
 class ScrollAnimator;
 #if USE(ACCELERATED_COMPOSITING)
@@ -57,6 +58,19 @@ public:
 
     bool handleWheelEvent(const PlatformWheelEvent&);
 
+#if ENABLE(TOUCH_EVENTS)
+    virtual bool isTouchScrollable() const { return false; }
+    virtual bool handleTouchEvent(const PlatformTouchEvent&);
+#endif
+
+#if PLATFORM(IOS)
+    virtual bool isOverflowScroll() const { return false; }
+    virtual void didStartScroll() { }
+    virtual void didEndScroll() { }
+    virtual void didUpdateScroll() { }
+    virtual void setIsUserScroll(bool) { }
+#endif
+
     // Functions for controlling if you can scroll past the end of the document.
     bool constrainsScrollingToContentEdge() const { return m_constrainsScrollingToContentEdge; }
     void setConstrainsScrollingToContentEdge(bool constrainsScrollingToContentEdge) { m_constrainsScrollingToContentEdge = constrainsScrollingToContentEdge; }
@@ -182,6 +196,17 @@ public:
     virtual bool scheduleAnimation() { return false; }
     void serviceScrollAnimations();
 
+#if PLATFORM(IOS)
+    bool isHorizontalScrollerPinnedToMinimumPosition() const { return !horizontalScrollbar() || scrollPosition(horizontalScrollbar()) <= minimumScrollPosition().x(); }
+    bool isHorizontalScrollerPinnedToMaximumPosition() const { return !horizontalScrollbar() || scrollPosition(horizontalScrollbar()) >= maximumScrollPosition().x(); }
+    bool isVerticalScrollerPinnedToMinimumPosition() const { return !verticalScrollbar() || scrollPosition(verticalScrollbar()) <= minimumScrollPosition().y(); }
+    bool isVerticalScrollerPinnedToMaximumPosition() const { return !verticalScrollbar() || scrollPosition(verticalScrollbar()) >= maximumScrollPosition().y(); } 
+
+    bool isPinnedInBothDirections(const IntSize&) const; 
+    bool isPinnedHorizontallyInDirection(int horizontalScrollDelta) const; 
+    bool isPinnedVerticallyInDirection(int verticalScrollDelta) const;
+#endif
+
 #if USE(ACCELERATED_COMPOSITING)
     virtual TiledBacking* tiledBacking() { return 0; }
     virtual bool usesCompositedScrolling() const { return false; }
index b98cca311e45534f5a4a2cd969ddcc04c86ca769..41f7ba48ec8ecc2b3369a1d6ded17b25479be43f 100644 (file)
@@ -334,6 +334,7 @@ void Scrollbar::setPressedPart(ScrollbarPart part)
         theme()->invalidatePart(this, m_hoveredPart);
 }
 
+#if !PLATFORM(IOS)
 bool Scrollbar::mouseMoved(const PlatformMouseEvent& evt)
 {
     if (m_pressedPart == ThumbPart) {
@@ -372,6 +373,7 @@ bool Scrollbar::mouseMoved(const PlatformMouseEvent& evt)
 
     return true;
 }
+#endif
 
 void Scrollbar::mouseEntered()
 {
index e5b329dabb12562d69de2d625bbf48499b6d2afc..cd1e897038eeeab5d1733a25f574ffa5701728b9 100644 (file)
@@ -125,7 +125,9 @@ public:
     // These methods are used for platform scrollbars to give :hover feedback.  They will not get called
     // when the mouse went down in a scrollbar, since it is assumed the scrollbar will start
     // grabbing all events in that case anyway.
+#if !PLATFORM(IOS)
     bool mouseMoved(const PlatformMouseEvent&);
+#endif
     void mouseEntered();
     bool mouseExited();
 
index db823cd7fb624ff0403efabf7c62de2f0fa7dde5..1dad787232b3061d1967c9deb93b86617885c7bc 100644 (file)
@@ -66,6 +66,7 @@ static inline void freeSegment(char* p)
 
 SharedBuffer::SharedBuffer()
     : m_size(0)
+    , m_shouldUsePurgeableMemory(false)
 #if ENABLE(DISK_IMAGE_CACHE)
     , m_isMemoryMapped(false)
     , m_diskImageCacheId(DiskImageCache::invalidDiskCacheId)
@@ -78,6 +79,7 @@ SharedBuffer::SharedBuffer()
 SharedBuffer::SharedBuffer(unsigned size)
     : m_size(size)
     , m_buffer(size)
+    , m_shouldUsePurgeableMemory(false)
 #if ENABLE(DISK_IMAGE_CACHE)
     , m_isMemoryMapped(false)
     , m_diskImageCacheId(DiskImageCache::invalidDiskCacheId)
@@ -89,6 +91,7 @@ SharedBuffer::SharedBuffer(unsigned size)
 
 SharedBuffer::SharedBuffer(const char* data, unsigned size)
     : m_size(0)
+    , m_shouldUsePurgeableMemory(false)
 #if ENABLE(DISK_IMAGE_CACHE)
     , m_isMemoryMapped(false)
     , m_diskImageCacheId(DiskImageCache::invalidDiskCacheId)
@@ -101,6 +104,7 @@ SharedBuffer::SharedBuffer(const char* data, unsigned size)
 
 SharedBuffer::SharedBuffer(const unsigned char* data, unsigned size)
     : m_size(0)
+    , m_shouldUsePurgeableMemory(false)
 #if ENABLE(DISK_IMAGE_CACHE)
     , m_isMemoryMapped(false)
     , m_diskImageCacheId(DiskImageCache::invalidDiskCacheId)
@@ -210,6 +214,12 @@ void SharedBuffer::setMemoryMappedNotificationCallback(MemoryMappedNotifyCallbac
 }
 #endif
 
+// Try to create a PurgeableBuffer. We can fail to create one for any of the
+// following reasons:
+//   - shouldUsePurgeableMemory is set to false.
+//   - the size of the buffer is less than the minimum size required by
+//     PurgeableBuffer (currently 16k).
+//   - PurgeableBuffer::createUninitialized() call fails.
 void SharedBuffer::createPurgeableBuffer() const
 {
     if (m_purgeableBuffer)
@@ -226,6 +236,9 @@ void SharedBuffer::createPurgeableBuffer() const
     if (!hasOneRef())
         return;
 
+    if (!m_shouldUsePurgeableMemory)
+        return;
+
     char* destination = 0;
     m_purgeableBuffer = PurgeableBuffer::createUninitialized(m_size, destination);
     if (!m_purgeableBuffer)
@@ -253,7 +266,9 @@ const char* SharedBuffer::data() const
     if (const char* buffer = singleDataArrayBuffer())
         return buffer;
 #endif
-    
+
+    createPurgeableBuffer();
+
     if (m_purgeableBuffer)
         return m_purgeableBuffer->data();
     
index 82718b35c0d037b9fb5eb56a89dd1535b87497a2..106c830d651f9ed7e566c0188d2d70c532c68026 100644 (file)
@@ -138,6 +138,8 @@ public:
     //      }
     unsigned getSomeData(const char*& data, unsigned position = 0) const;
 
+    void shouldUsePurgeableMemory(bool use) { m_shouldUsePurgeableMemory = use; }
+
 #if ENABLE(DISK_IMAGE_CACHE)
     enum MemoryMappingState { QueuedForMapping, PreviouslyQueuedForMapping, SuccessAlreadyMapped, FailureCacheFull };
 
@@ -187,6 +189,7 @@ private:
 
     unsigned m_size;
     mutable Vector<char> m_buffer;
+    bool m_shouldUsePurgeableMemory;
     mutable OwnPtr<PurgeableBuffer> m_purgeableBuffer;
 #if USE(NETWORK_CFDATA_ARRAY_CALLBACK)
     mutable Vector<RetainPtr<CFDataRef>> m_dataArray;
index 7252149062f433ab33c6880c9554b9b3bdfadc92..80967c6c08c9fc72a112f1d30ebcf2f08125d3e7 100644 (file)
@@ -34,7 +34,7 @@ namespace WebCore {
     void disableSuddenTermination();
     void enableSuddenTermination();
 
-#if !PLATFORM(MAC)
+#if PLATFORM(IOS) || !PLATFORM(MAC)
     inline void disableSuddenTermination() { }
     inline void enableSuddenTermination() { }
 #endif
index 277aaef80ef6cc7ba3be2a989c2f5ff3ded2c751..c202f2c421ee086bd1cfe46c0743ace67f67762d 100644 (file)
@@ -28,6 +28,7 @@
 
 #include <wtf/Assertions.h>
 #include <wtf/HashMap.h>
+#include <wtf/MainThread.h>
 #include <wtf/OwnPtr.h>
 #include <wtf/PassOwnPtr.h>
 
@@ -99,20 +100,20 @@ class Supplementable {
 public:
     void provideSupplement(const char* key, PassOwnPtr<Supplement<T>> supplement)
     {
-        ASSERT(m_threadId == currentThread());
+        ASSERT(canAccessThreadLocalDataForThread(m_threadId));
         ASSERT(!m_supplements.get(key));
         m_supplements.set(key, supplement);
     }
 
     void removeSupplement(const char* key)
     {
-        ASSERT(m_threadId == currentThread());
+        ASSERT(canAccessThreadLocalDataForThread(m_threadId));
         m_supplements.remove(key);
     }
 
     Supplement<T>* requireSupplement(const char* key)
     {
-        ASSERT(m_threadId == currentThread());
+        ASSERT(canAccessThreadLocalDataForThread(m_threadId));
         return m_supplements.get(key);
     }
 
diff --git a/Source/WebCore/platform/SystemMemory.h b/Source/WebCore/platform/SystemMemory.h
new file mode 100644 (file)
index 0000000..12763cd
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2008 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ *     its contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef SystemMemory_h
+#define SystemMemory_h
+
+namespace WebCore {
+int systemMemoryLevel(); // In [0, 100]
+size_t systemTotalMemory();
+}
+
+#endif
index 07eb463b05be27de1352d066ee72de717bbc3759..fba3aa26b3925f6200161aee5f14098492fad6e2 100644 (file)
@@ -26,6 +26,7 @@
 #ifndef ThreadCheck_h
 #define ThreadCheck_h
 
+#if !PLATFORM(IOS)
 namespace WebCore {
     enum ThreadViolationBehavior {
         NoThreadCheck,
@@ -46,5 +47,9 @@ extern "C" void WebCoreReportThreadViolation(const char* function, WebCore::Thre
 
 #define WebCoreThreadViolationCheckRoundOne() ::WebCore::reportThreadViolation(WTF_PRETTY_FUNCTION, WebCore::ThreadViolationRoundOne)
 #define WebCoreThreadViolationCheckRoundTwo() ::WebCore::reportThreadViolation(WTF_PRETTY_FUNCTION, WebCore::ThreadViolationRoundTwo)
+#else
+#define WebCoreThreadViolationCheckRoundOne() do { } while (0)
+#define WebCoreThreadViolationCheckRoundTwo() do { } while (0)
+#endif // PLATFORM(IOS)
 
 #endif
index 0d837bf56d79b92c409145d777677ea7d12dc204..cefb19ddc70e5da955112a896ec67c19d502e243 100644 (file)
@@ -50,6 +50,9 @@ using namespace WTF;
 namespace WebCore {
 
 ThreadSpecific<ThreadGlobalData>* ThreadGlobalData::staticData;
+#if USE(WEB_THREAD)
+ThreadGlobalData* ThreadGlobalData::sharedMainThreadStaticData;
+#endif
 
 ThreadGlobalData::ThreadGlobalData()
     : m_cachedResourceRequestInitiators(adoptPtr(new CachedResourceRequestInitiators))
@@ -61,7 +64,7 @@ ThreadGlobalData::ThreadGlobalData()
 #if USE(ICU_UNICODE)
     , m_cachedConverterICU(adoptPtr(new ICUConverterWrapper))
 #endif
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
     , m_cachedConverterTEC(adoptPtr(new TECConverterWrapper))
 #endif
 #if ENABLE(INSPECTOR)
@@ -82,7 +85,7 @@ ThreadGlobalData::~ThreadGlobalData()
 
 void ThreadGlobalData::destroy()
 {
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
     m_cachedConverterTEC.clear();
 #endif
 
@@ -98,11 +101,35 @@ void ThreadGlobalData::destroy()
     m_threadTimers.clear();
 }
 
+#if ENABLE(WORKERS) && USE(WEB_THREAD)
+void ThreadGlobalData::setWebCoreThreadData()
+{
+    ASSERT(isWebThread());
+    ASSERT(&threadGlobalData() != ThreadGlobalData::sharedMainThreadStaticData);
+
+    // Set WebThread's ThreadGlobalData object to be the same as the main UI thread.
+    ThreadGlobalData::staticData->replace(ThreadGlobalData::sharedMainThreadStaticData);
+
+    ASSERT(&threadGlobalData() == ThreadGlobalData::sharedMainThreadStaticData);
+}
+#endif
+
 ThreadGlobalData& threadGlobalData() 
 {
+#if USE(WEB_THREAD)
+    if (UNLIKELY(!ThreadGlobalData::staticData)) {
+        ThreadGlobalData::staticData = new ThreadSpecific<ThreadGlobalData>;
+        // WebThread and main UI thread need to share the same object. Save it in a static
+        // here, the WebThread will pick it up in setWebCoreThreadData().
+        if (pthread_main_np())
+            ThreadGlobalData::sharedMainThreadStaticData = *ThreadGlobalData::staticData;
+    }
+    return **ThreadGlobalData::staticData;
+#else
     if (!ThreadGlobalData::staticData)
         ThreadGlobalData::staticData = new ThreadSpecific<ThreadGlobalData>;
     return **ThreadGlobalData::staticData;
+#endif
 }
 
 } // namespace WebCore
index 76c9fafb1e9b327b78ca8691ee43806466aa8946..ffb018c7a20fe7ea3078e8517e1f8f3153288640 100644 (file)
@@ -62,10 +62,14 @@ namespace WebCore {
         ICUConverterWrapper& cachedConverterICU() { return *m_cachedConverterICU; }
 #endif
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
         TECConverterWrapper& cachedConverterTEC() { return *m_cachedConverterTEC; }
 #endif
 
+#if ENABLE(WORKERS) && USE(WEB_THREAD)
+        void setWebCoreThreadData();
+#endif
+
 #if ENABLE(INSPECTOR)
         ThreadLocalInspectorCounters& inspectorCounters() { return *m_inspectorCounters; }
 #endif
@@ -83,7 +87,7 @@ namespace WebCore {
         OwnPtr<ICUConverterWrapper> m_cachedConverterICU;
 #endif
 
-#if PLATFORM(MAC)
+#if PLATFORM(MAC) && !PLATFORM(IOS)
         OwnPtr<TECConverterWrapper> m_cachedConverterTEC;
 #endif
 
@@ -92,10 +96,17 @@ namespace WebCore {
 #endif
 
         static ThreadSpecific<ThreadGlobalData>* staticData;
+#if USE(WEB_THREAD)
+        static ThreadGlobalData* sharedMainThreadStaticData;
+#endif
         friend ThreadGlobalData& threadGlobalData();
     };
 
+#if USE(WEB_THREAD)
+ThreadGlobalData& threadGlobalData();
+#else
 ThreadGlobalData& threadGlobalData() PURE_FUNCTION;
+#endif
     
 } // namespace WebCore
 
index 846440ff25dcb2e3479f54ee23b603168c56a4fc..789378ce3feb4e3b0ccf40b757bf53f18cc53933 100644 (file)
 #include <wtf/CurrentTime.h>
 #include <wtf/MainThread.h>
 
+#if PLATFORM(IOS)
+#include "WebCoreThread.h"
+#endif
+
 namespace WebCore {
 
 // Fire timers for this length of time, and then quit to let the run loop process user input events.
@@ -54,7 +58,7 @@ ThreadTimers::ThreadTimers()
     , m_firingTimers(false)
     , m_pendingSharedTimerFireTime(0)
 {
-    if (isMainThread())
+    if (isUIThread())
         setSharedTimer(mainThreadSharedTimer());
 }
 
@@ -105,6 +109,7 @@ void ThreadTimers::sharedTimerFired()
 
 void ThreadTimers::sharedTimerFiredInternal()
 {
+    ASSERT(isMainThread() || !isWebThread() && !isUIThread());
     // Do a re-entrancy check.
     if (m_firingTimers)
         return;
index 31a405d700de3d197e5fdb1154dbbfe169d6d8a6..a87373043be41e88137100ef9498fbdb6fa09c21 100644 (file)
@@ -35,6 +35,7 @@
 #include <math.h>
 #include <wtf/CurrentTime.h>
 #include <wtf/HashSet.h>
+#include <wtf/MainThread.h>
 #include <wtf/Vector.h>
 
 namespace WebCore {
@@ -209,7 +210,7 @@ TimerBase::~TimerBase()
 
 void TimerBase::start(double nextFireInterval, double repeatInterval)
 {
-    ASSERT(m_thread == currentThread());
+    ASSERT(canAccessThreadLocalDataForThread(m_thread));
 
     m_repeatInterval = repeatInterval;
     setNextFireTime(monotonicallyIncreasingTime() + nextFireInterval);
@@ -217,7 +218,7 @@ void TimerBase::start(double nextFireInterval, double repeatInterval)
 
 void TimerBase::stop()
 {
-    ASSERT(m_thread == currentThread());
+    ASSERT(canAccessThreadLocalDataForThread(m_thread));
 
     m_repeatInterval = 0;
     setNextFireTime(0);
@@ -368,7 +369,7 @@ void TimerBase::updateHeapIfNeeded(double oldTime)
 
 void TimerBase::setNextFireTime(double newUnalignedTime)
 {
-    ASSERT(m_thread == currentThread());
+    ASSERT(canAccessThreadLocalDataForThread(m_thread));
     ASSERT(!m_wasDeleted);
 
     if (m_unalignedNextFireTime != newUnalignedTime)
index 69e9ed527170dd35c83d148adb901cf77004c58a..1614bd13aca5d276a261a740b98c45fa7e35907b 100644 (file)
 #include <wtf/Threading.h>
 #include <wtf/Vector.h>
 
+#if PLATFORM(IOS)
+#include "WebCoreThread.h"
+#endif
+
 namespace WebCore {
 
 // Time intervals are all in seconds.
@@ -120,7 +124,18 @@ private:
 
 inline bool TimerBase::isActive() const
 {
+    // FIXME: Write this in terms of USE(WEB_THREAD) instead of PLATFORM(IOS).
+#if !PLATFORM(IOS)
     ASSERT(m_thread == currentThread());
+#else
+    // On iOS timers are always run on the main thread or the Web Thread.
+    // Unless we have workers enabled in which case timers can run on other threads.
+#if ENABLE(WORKERS)
+    ASSERT(WebThreadIsCurrent() || pthread_main_np() || m_thread == currentThread());
+#else
+    ASSERT(WebThreadIsCurrent() || pthread_main_np());
+#endif
+#endif // PLATFORM(IOS)
     return m_nextFireTime;
 }
 
index 5b7cd3a55aa60316ad89bd6a04c4fa00438a61b6..337878e81b6294cc900e42f9e084ca0b0aa7f18c 100644 (file)
@@ -986,9 +986,27 @@ void URL::parse(const String& string)
     parse(buffer.data(), &string);
 }
 
+#if PLATFORM(IOS)
+static bool shouldCanonicalizeScheme = true;
+
+void enableURLSchemeCanonicalization(bool enableSchemeCanonicalization)
+{
+    shouldCanonicalizeScheme = enableSchemeCanonicalization;
+}
+#endif
+
 template<size_t length>
 static inline bool equal(const char* a, const char (&b)[length])
 {
+#if PLATFORM(IOS)
+    if (!shouldCanonicalizeScheme) {
+        for (size_t i = 0; i < length; ++i) {
+            if (toASCIILower(a[i]) != b[i])
+                return false;
+        }
+        return true;
+    }
+#endif
     for (size_t i = 0; i < length; ++i) {
         if (a[i] != b[i])
             return false;
@@ -1262,8 +1280,18 @@ void URL::parse(const char* url, const String* originalString)
 
     // copy in the scheme
     const char *schemeEndPtr = url + schemeEnd;
+#if PLATFORM(IOS)
+    if (shouldCanonicalizeScheme || m_protocolIsInHTTPFamily) {
+        while (strPtr < schemeEndPtr)
+            *p++ = toASCIILower(*strPtr++);
+    } else {
+        while (strPtr < schemeEndPtr)
+            *p++ = *strPtr++;
+    }
+#else
     while (strPtr < schemeEndPtr)
         *p++ = toASCIILower(*strPtr++);
+#endif
     m_schemeEnd = p - buffer.data();
 
     bool hostIsLocalHost = portEnd - userStart == 9
index c1329eb4c232f4ab108bb77df98db0c265b0a415..713bdce91873f0b5bad0240bd22a753b695e2424 100644 (file)
@@ -332,6 +332,10 @@ inline unsigned URL::pathAfterLastSlash() const
     return m_pathAfterLastSlash;
 }
 
+#if PLATFORM(IOS)
+void enableURLSchemeCanonicalization(bool);
+#endif
+
 } // namespace WebCore
 
 namespace WTF {
index 400f6e0ef948a9f57a5eaf0e199756fea468d7e5..63b63f591dfe95ba00fb5f98bbdd56d53eddcf77 100644 (file)
 #ifndef Widget_h
 #define Widget_h
 
+#if PLATFORM(IOS)
+#ifndef NSView
+#define NSView WAKView
+#endif
+#endif
+
 #include "IntRect.h"
 #include "PlatformScreen.h"
 #include <wtf/Forward.h>
@@ -190,6 +196,9 @@ public:
 
     void removeFromSuperview();
 #endif
+#if PLATFORM(IOS)
+    void addToSuperview(NSView*);
+#endif
 
 #if PLATFORM(EFL)
     void setEvasObject(Evas_Object*);
index f9326ea928aeac72c9e3d8f32883d83279e1447c..bedf88f000387c8b0e17f28e09cb12e9b7ab21ae 100644 (file)
@@ -29,9 +29,7 @@
 
 #include "config.h"
 
-#if ENABLE(WEB_AUDIO)
-
-#if PLATFORM(IOS)
+#if ENABLE(WEB_AUDIO) && PLATFORM(IOS)
 
 #include "AudioDestinationIOS.h"
 
@@ -262,6 +260,5 @@ void AudioDestinationIOS::frameSizeChangedProc(void *inRefCon, AudioUnit, AudioU
 
 } // namespace WebCore
 
-#endif // PLATFORM(IOS)
+#endif // ENABLE(WEB_AUDIO) && PLATFORM(IOS)
 
-#endif // ENABLE(WEB_AUDIO)
index f0eeeca19786c284ae634b9c7ea91729d493342d..8b68a6ac834e5b6815bba2c800415083e9429d37 100644 (file)
@@ -76,3 +76,4 @@ private:
 } // namespace WebCore
 
 #endif // AudioDestinationIOS_h
+
diff --git a/Source/WebCore/platform/audio/ios/AudioFileReaderIOS.cpp b/Source/WebCore/platform/audio/ios/AudioFileReaderIOS.cpp
new file mode 100644 (file)
index 0000000..bb859fb
--- /dev/null
@@ -0,0 +1,248 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2011 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ *     its contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "AudioFileReaderIOS.h"
+
+#if ENABLE(WEB_AUDIO) && PLATFORM(IOS)
+
+#include "AudioBus.h"
+#include "AudioFileReader.h"
+#include "SoftLinking.h"
+#include <CoreFoundation/CoreFoundation.h>
+#include <wtf/CheckedArithmetic.h>
+#include <wtf/RetainPtr.h>
+
+SOFT_LINK_FRAMEWORK(AudioToolbox)
+SOFT_LINK(AudioToolbox, AudioFileClose, OSStatus, (AudioFileID inAudioFile), (inAudioFile))
+SOFT_LINK(AudioToolbox, AudioFileOpenWithCallbacks, OSStatus, (void *inClientData, AudioFile_ReadProc inReadFunc, AudioFile_WriteProc inWriteFunc, AudioFile_GetSizeProc inGetSizeFunc, AudioFile_SetSizeProc inSetSizeFunc, AudioFileTypeID inFileTypeHint, AudioFileID *outAudioFile), (inClientData, inReadFunc, inWriteFunc, inGetSizeFunc, inSetSizeFunc, inFileTypeHint, outAudioFile))
+SOFT_LINK(AudioToolbox, ExtAudioFileDispose, OSStatus, (ExtAudioFileRef inExtAudioFile), (inExtAudioFile))
+SOFT_LINK(AudioToolbox, ExtAudioFileGetProperty, OSStatus, (ExtAudioFileRef inExtAudioFile, ExtAudioFilePropertyID inPropertyID, UInt32 *ioPropertyDataSize, void *outPropertyData), (inExtAudioFile, inPropertyID, ioPropertyDataSize, outPropertyData))
+SOFT_LINK(AudioToolbox, ExtAudioFileRead, OSStatus, (ExtAudioFileRef inExtAudioFile, UInt32 *ioNumberFrames, AudioBufferList *ioData), (inExtAudioFile, ioNumberFrames, ioData))
+SOFT_LINK(AudioToolbox, ExtAudioFileSetProperty, OSStatus, (ExtAudioFileRef inExtAudioFile, ExtAudioFilePropertyID inPropertyID, UInt32 inPropertyDataSize, const void *inPropertyData), (inExtAudioFile, inPropertyID, inPropertyDataSize, inPropertyData))
+SOFT_LINK(AudioToolbox, ExtAudioFileWrapAudioFileID, OSStatus, (AudioFileID inFileID, Boolean inForWriting, ExtAudioFileRef *outExtAudioFile), (inFileID, inForWriting, outExtAudioFile))
+SOFT_LINK(AudioToolbox, ExtAudioFileOpenURL, OSStatus, (CFURLRef inURL, ExtAudioFileRef* outExtAudioFile), (inURL, outExtAudioFile))
+
+namespace WebCore {
+
+static WARN_UNUSED_RETURN AudioBufferList* createAudioBufferList(size_t numberOfBuffers)
+{
+    Checked<size_t, RecordOverflow> bufferListSize = sizeof(AudioBufferList) - sizeof(AudioBuffer);
+    bufferListSize += numberOfBuffers * sizeof(AudioBuffer);
+
+    AudioBufferList* bufferList = static_cast<AudioBufferList*>(calloc(1, bufferListSize.unsafeGet()));
+    if (bufferList)
+        bufferList->mNumberBuffers = numberOfBuffers;
+    return bufferList;
+}
+
+static inline void destroyAudioBufferList(AudioBufferList* bufferList)
+{
+    free(bufferList);
+}
+
+AudioFileReader::AudioFileReader(const char* filePath)
+    : m_data(0)
+    , m_dataSize(0)
+    , m_audioFileID(0)
+    , m_extAudioFileRef(nullptr)
+{
+    RetainPtr<CFURLRef> urlRef = adoptCF(CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault, reinterpret_cast<const UInt8*>(filePath), strlen(filePath), false));
+    if (!urlRef)
+        return;
+    ExtAudioFileOpenURL(urlRef.get(), &m_extAudioFileRef);
+}
+
+AudioFileReader::AudioFileReader(const void* data, size_t dataSize)
+    : m_data(data)
+    , m_dataSize(dataSize)
+    , m_audioFileID(0)
+    , m_extAudioFileRef(nullptr)
+{
+    if (AudioFileOpenWithCallbacks(this, readProc, 0, getSizeProc, 0, 0, &m_audioFileID) != noErr)
+        return;
+
+    if (ExtAudioFileWrapAudioFileID(m_audioFileID, false, &m_extAudioFileRef) != noErr)
+        m_extAudioFileRef = nullptr;
+}
+
+AudioFileReader::~AudioFileReader()
+{
+    if (m_extAudioFileRef)
+        ExtAudioFileDispose(m_extAudioFileRef);
+
+    m_extAudioFileRef = nullptr;
+
+    if (m_audioFileID)
+        AudioFileClose(m_audioFileID);
+
+    m_audioFileID = 0;
+}
+
+OSStatus AudioFileReader::readProc(void* clientData, SInt64 position, UInt32 requestCount, void* buffer, UInt32* actualCount)
+{
+    AudioFileReader* audioFileReader = static_cast<AudioFileReader*>(clientData);
+
+    size_t dataSize = audioFileReader->dataSize();
+    const void* data = audioFileReader->data();
+    size_t bytesToRead = 0;
+
+    if (static_cast<UInt64>(position) < dataSize) {
+        size_t bytesAvailable = dataSize - static_cast<size_t>(position);
+        bytesToRead = requestCount <= bytesAvailable ? requestCount : bytesAvailable;
+        memcpy(buffer, static_cast<const char*>(data) + position, bytesToRead);
+    }
+
+    if (actualCount)
+        *actualCount = bytesToRead;
+
+    return noErr;
+}
+
+SInt64 AudioFileReader::getSizeProc(void* clientData)
+{
+    return static_cast<AudioFileReader*>(clientData)->dataSize();
+}
+
+PassRefPtr<AudioBus> AudioFileReader::createBus(float sampleRate, bool mixToMono)
+{
+    if (!m_extAudioFileRef)
+        return nullptr;
+
+    // Get file's data format
+    UInt32 size = sizeof(m_fileDataFormat);
+    if (ExtAudioFileGetProperty(m_extAudioFileRef, kExtAudioFileProperty_FileDataFormat, &size, &m_fileDataFormat) != noErr)
+        return nullptr;
+
+    size_t numberOfChannels = m_fileDataFormat.mChannelsPerFrame;
+
+    // Number of frames
+    SInt64 numberOfFrames64 = 0;
+    size = sizeof(numberOfFrames64);
+    if (ExtAudioFileGetProperty(m_extAudioFileRef, kExtAudioFileProperty_FileLengthFrames, &size, &numberOfFrames64) != noErr)
+        return nullptr;
+
+    double fileSampleRate = m_fileDataFormat.mSampleRate;
+
+    // Make client format same number of channels as file format, but tweak a few things.
+    // Client format will be linear PCM (canonical), and potentially change sample-rate.
+    m_clientDataFormat = m_fileDataFormat;
+
+    const int bytesPerFloat = sizeof(Float32);
+    const int bitsPerByte = 8;
+    m_clientDataFormat.mFormatID = kAudioFormatLinearPCM;
+    m_clientDataFormat.mFormatFlags = kAudioFormatFlagsNativeFloatPacked | kAudioFormatFlagIsNonInterleaved;
+    m_clientDataFormat.mBytesPerPacket = bytesPerFloat;
+    m_clientDataFormat.mFramesPerPacket = 1;
+    m_clientDataFormat.mBytesPerFrame = bytesPerFloat;
+    m_clientDataFormat.mChannelsPerFrame = numberOfChannels;
+    m_clientDataFormat.mBitsPerChannel = bitsPerByte * bytesPerFloat;
+
+    if (sampleRate)
+        m_clientDataFormat.mSampleRate = sampleRate;
+
+    if (ExtAudioFileSetProperty(m_extAudioFileRef, kExtAudioFileProperty_ClientDataFormat, sizeof(AudioStreamBasicDescription), &m_clientDataFormat) != noErr)
+        return nullptr;
+
+    // Change numberOfFrames64 to destination sample-rate
+    numberOfFrames64 = numberOfFrames64 * (m_clientDataFormat.mSampleRate / fileSampleRate);
+    size_t numberOfFrames = static_cast<size_t>(numberOfFrames64);
+
+    size_t busChannelCount = mixToMono ? 1 : numberOfChannels;
+
+    // Create AudioBus where we'll put the PCM audio data
+    RefPtr<AudioBus> audioBus = AudioBus::create(busChannelCount, numberOfFrames);
+    audioBus->setSampleRate(m_clientDataFormat.mSampleRate); // save for later
+
+    // Only allocated in the mixToMono case; deallocated on destruction.
+    AudioFloatArray leftChannel;
+    AudioFloatArray rightChannel;
+
+    AudioBufferList* bufferList = createAudioBufferList(numberOfChannels);
+    if (!bufferList)
+        return nullptr;
+    const size_t bufferSize = numberOfFrames * sizeof(float);
+
+    if (mixToMono && numberOfChannels == 2) {
+        leftChannel.allocate(numberOfFrames);
+        rightChannel.allocate(numberOfFrames);
+
+        bufferList->mBuffers[0].mNumberChannels = 1;
+        bufferList->mBuffers[0].mDataByteSize = bufferSize;
+        bufferList->mBuffers[0].mData = leftChannel.data();
+
+        bufferList->mBuffers[1].mNumberChannels = 1;
+        bufferList->mBuffers[1].mDataByteSize = bufferSize;
+        bufferList->mBuffers[1].mData = rightChannel.data();
+    } else {
+        ASSERT(!mixToMono || numberOfChannels == 1);
+
+        // For True-stereo (numberOfChannels == 4)
+        for (size_t i = 0; i < numberOfChannels; ++i) {
+            audioBus->channel(i)->zero();
+            bufferList->mBuffers[i].mNumberChannels = 1;
+            bufferList->mBuffers[i].mDataByteSize = bufferSize;
+            bufferList->mBuffers[i].mData = audioBus->channel(i)->mutableData();
+        }
+    }
+
+    // Read from the file (or in-memory version)
+    UInt32 framesToRead = numberOfFrames;
+    if (ExtAudioFileRead(m_extAudioFileRef, &framesToRead, bufferList) != noErr) {
+        destroyAudioBufferList(bufferList);
+        return nullptr;
+    }
+
+    if (mixToMono && numberOfChannels == 2) {
+        // Mix stereo down to mono
+        float* destL = audioBus->channel(0)->mutableData();
+        for (size_t i = 0; i < numberOfFrames; ++i)
+            destL[i] = 0.5f * (leftChannel[i] + rightChannel[i]);
+    }
+
+    destroyAudioBufferList(bufferList);
+
+    return audioBus.release();
+}
+
+PassRefPtr<AudioBus> createBusFromAudioFile(const char* filePath, bool mixToMono, float sampleRate)
+{
+    AudioFileReader reader(filePath);
+    return reader.createBus(sampleRate, mixToMono);
+}
+
+PassRefPtr<AudioBus> createBusFromInMemoryAudioFile(const void* data, size_t dataSize, bool mixToMono, float sampleRate)
+{
+    AudioFileReader reader(data, dataSize);
+    return reader.createBus(sampleRate, mixToMono);
+}
+
+} // WebCore
+
+#endif // ENABLE(WEB_AUDIO) && PLATFORM(IOS)
diff --git a/Source/WebCore/platform/audio/ios/AudioFileReaderIOS.h b/Source/WebCore/platform/audio/ios/AudioFileReaderIOS.h
new file mode 100644 (file)
index 0000000..eef5693
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2011 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ *     its contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef AudioFileReaderIOS_h
+#define AudioFileReaderIOS_h
+
+#include <AudioToolbox/AudioFile.h>
+#include <AudioToolbox/ExtendedAudioFile.h>
+#include <wtf/PassRefPtr.h>
+
+namespace WebCore {
+
+class AudioBus;
+
+// Wrapper class for AudioFile and ExtAudioFile CoreAudio APIs for reading files and in-memory versions of them...
+
+class AudioFileReader {
+public:
+    AudioFileReader(const char* filePath);
+    AudioFileReader(const void* data, size_t dataSize);
+    ~AudioFileReader();
+
+    PassRefPtr<AudioBus> createBus(float sampleRate, bool mixToMono); // Returns nullptr on error
+
+    const void* data() const { return m_data; }
+    size_t dataSize() const { return m_dataSize; }
+
+private:
+    static OSStatus readProc(void* clientData, SInt64 position, UInt32 requestCount, void* buffer, UInt32* actualCount);
+    static SInt64 getSizeProc(void* clientData);
+
+    const void* m_data;
+    size_t m_dataSize;
+
+    AudioFileID m_audioFileID;
+    ExtAudioFileRef m_extAudioFileRef;
+
+    AudioStreamBasicDescription m_fileDataFormat;
+    AudioStreamBasicDescription m_clientDataFormat;
+};
+
+} // namespace WebCore
+
+#endif // AudioFileReaderIOS_h
index 79e261aa0f8a4b875cf4ce529fe35465b8432b79..349c1f5d8393c53ed48089fc8e4da15a3d8168cc 100644 (file)
@@ -42,7 +42,6 @@ SOFT_LINK_POINTER(AVFoundation, AVAudioSessionCategoryPlayback, NSString *)
 SOFT_LINK_POINTER(AVFoundation, AVAudioSessionCategoryRecord, NSString *)
 SOFT_LINK_POINTER(AVFoundation, AVAudioSessionCategoryPlayAndRecord, NSString *)
 SOFT_LINK_POINTER(AVFoundation, AVAudioSessionCategoryAudioProcessing, NSString *)
-SOFT_LINK_POINTER(AVFoundation, AVAudioSessionInterruptionNotification, NSString *)
 SOFT_LINK_POINTER(AVFoundation, AVAudioSessionInterruptionTypeKey, NSString *)
 
 #define AVAudioSession getAVAudioSessionClass()
@@ -52,9 +51,14 @@ SOFT_LINK_POINTER(AVFoundation, AVAudioSessionInterruptionTypeKey, NSString *)
 #define AVAudioSessionCategoryRecord getAVAudioSessionCategoryRecord()
 #define AVAudioSessionCategoryPlayAndRecord getAVAudioSessionCategoryPlayAndRecord()
 #define AVAudioSessionCategoryAudioProcessing getAVAudioSessionCategoryAudioProcessing()
-#define AVAudioSessionInterruptionNotification getAVAudioSessionInterruptionNotification()
 #define AVAudioSessionInterruptionTypeKey getAVAudioSessionInterruptionTypeKey()
 
+static NSString * const WCAVAudioSessionInterruptionNotification = @"AVAudioSessionInterruptionNotification";
+
+#if !ASSERT_DISABLED
+SOFT_LINK_POINTER(AVFoundation, AVAudioSessionInterruptionNotification, NSString *)
+#endif
+
 @interface WebAudioSessionHelper : NSObject {
     WebCore::AudioSession* _callback;
 }
@@ -71,19 +75,25 @@ SOFT_LINK_POINTER(AVFoundation, AVAudioSessionInterruptionTypeKey, NSString *)
 
     _callback = callback;
 
-    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(interruption:) name:AVAudioSessionInterruptionNotification object:[AVAudioSession sharedInstance]];
+    ASSERT([WCAVAudioSessionInterruptionNotification isEqualToString:getAVAudioSessionInterruptionNotification()]);
+
+    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(interruption:) name:WCAVAudioSessionInterruptionNotification object:nil];
 
     return self;
 }
 
 - (void)dealloc
 {
-    [[NSNotificationCenter defaultCenter] removeObserver:self];
+    [[NSNotificationCenter defaultCenter] removeObserver:self name:WCAVAudioSessionInterruptionNotification object:nil];
     [super dealloc];
 }
 
 - (void)interruption:(NSNotification *)notification
 {
+    ASSERT([AVAudioSession sharedInstance] == [notification object]);
+    if ([AVAudioSession sharedInstance] != [notification object])
+        return;
+
     NSUInteger type = [[[notification userInfo] objectForKey:AVAudioSessionInterruptionTypeKey] unsignedIntegerValue];
     if (type == AVAudioSessionInterruptionTypeBegan)
         _callback->beganAudioInterruption();
@@ -133,19 +143,26 @@ void AudioSession::setCategory(CategoryType newCategory)
     switch (newCategory) {
     case AmbientSound:
         categoryString = AVAudioSessionCategoryAmbient;
+        break;
     case SoloAmbientSound:
         categoryString = AVAudioSessionCategorySoloAmbient;
+        break;
     case MediaPlayback:
         categoryString = AVAudioSessionCategoryPlayback;
+        break;
     case RecordAudio:
         categoryString = AVAudioSessionCategoryRecord;
+        break;
     case PlayAndRecord:
         categoryString = AVAudioSessionCateg