WebKit-https.git
5 years agoRemove Blackberry and QNX bits from WTF
andersca@apple.com [Fri, 10 Jan 2014 00:31:06 +0000 (00:31 +0000)]
Remove Blackberry and QNX bits from WTF
https://bugs.webkit.org/show_bug.cgi?id=126726

Reviewed by Benjamin Poulain.

* wtf/Assertions.cpp:
* wtf/Atomics.h:
* wtf/CurrentTime.cpp:
(WTF::currentCPUTime):
* wtf/DateMath.cpp:
* wtf/DisallowCType.h:
* wtf/FeatureDefines.h:
* wtf/InlineASM.h:
* wtf/MathExtras.h:
* wtf/NumberOfCores.cpp:
(WTF::numberOfProcessorCores):
* wtf/OSAllocatorPosix.cpp:
(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):
* wtf/Platform.h:
* wtf/PlatformBlackBerry.cmake: Removed.
* wtf/RAMSize.cpp:
(WTF::computeRAMSize):
* wtf/StackBounds.cpp:
* wtf/ThreadingPthreads.cpp:
(WTF::initializeThreading):
(WTF::initializeCurrentThreadInternal):
* wtf/blackberry/MainThreadBlackBerry.cpp: Removed.
* wtf/blackberry/RunLoopBlackBerry.cpp: Removed.
* wtf/text/AtomicString.h:
* wtf/text/StringImpl.h:
* wtf/text/WTFString.h:

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

5 years agoAttempt to fix the Windows build following <http://trac.webkit.org/changeset/161589>
dbates@webkit.org [Fri, 10 Jan 2014 00:15:25 +0000 (00:15 +0000)]
Attempt to fix the Windows build following <trac.webkit.org/changeset/161589>
(https://bugs.webkit.org/show_bug.cgi?id=126654)

For some reason, the Windows build is unhappy that NeverDestroyed<FontCache> calls the private constructor
FontCache::FontCache() despite being a friend class of FontCache. Use DEFINE_STATIC_LOCAL instead of
NeverDestroyed<> for now. I'll look to investigate this issue offline.

* platform/graphics/FontCache.cpp:
(WebCore::fontCache):
* platform/graphics/FontCache.h:

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

5 years agoRemove blackberry from WebCore/platform
benjamin@webkit.org [Fri, 10 Jan 2014 00:13:06 +0000 (00:13 +0000)]
Remove blackberry from WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* platform/blackberry: Removed.
* platform/graphics/blackberry: Removed.
* platform/graphics/filters/blackberry: Removed.
* platform/image-decoders/blackberry: Removed.
* platform/mediastream/blackberry: Removed.
* platform/network/blackberry: Removed.
* platform/text/blackberry: Removed.

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

5 years agoFix a copy-paste mistake in an include guard.
ap@apple.com [Fri, 10 Jan 2014 00:04:51 +0000 (00:04 +0000)]
Fix a copy-paste mistake in an include guard.

Rubber-stamped by Sam Weinig.

* crypto/parameters/CryptoAlgorithmRsaKeyParamsWithHash.h:

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

5 years agoHistory::StateObjectType should be a strong enum
andersca@apple.com [Fri, 10 Jan 2014 00:02:51 +0000 (00:02 +0000)]
History::StateObjectType should be a strong enum
https://bugs.webkit.org/show_bug.cgi?id=126725

Reviewed by Beth Dakin.

* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::pushState):
(WebCore::JSHistory::replaceState):
* loader/HistoryController.cpp:
(WebCore::HistoryController::pushState):
* page/History.cpp:
(WebCore::History::stateObjectAdded):
* page/History.h:

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

5 years agoAttempt to fix the Mountain Lion Release (32-bit) build following <http://trac.webkit...
dbates@webkit.org [Thu, 9 Jan 2014 23:59:13 +0000 (23:59 +0000)]
Attempt to fix the Mountain Lion Release (32-bit) build following <trac.webkit.org/changeset/161589>
(https://bugs.webkit.org/show_bug.cgi?id=126654)

* platform/ios/WebEvent.h:
* platform/ios/WebEvent.mm:

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

5 years agoRemove the WebKit layer of the Blackberry port
benjamin@webkit.org [Thu, 9 Jan 2014 23:56:57 +0000 (23:56 +0000)]
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.
Remove the WebKit layer of the Blackberry port
https://bugs.webkit.org/show_bug.cgi?id=126715

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-09
Reviewed by Anders Carlsson.

* PlatformBlackBerry.cmake: Removed.
* blackberry: Removed.

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

5 years ago[iOS] Upstream WebCore/platform changes
dbates@webkit.org [Thu, 9 Jan 2014 22:59:07 +0000 (22:59 +0000)]
[iOS] Upstream WebCore/platform changes
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

5 years agoWeb Inspector: Consolidate developerExtrasEnabled to just InspectorEnvironment
commit-queue@webkit.org [Thu, 9 Jan 2014 22:53:22 +0000 (22:53 +0000)]
Web Inspector: Consolidate developerExtrasEnabled to just InspectorEnvironment
https://bugs.webkit.org/show_bug.cgi?id=126717

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-09
Reviewed by Timothy Hatcher.

They all route to InspectorEnvironment::developerExtrasEnabled, so make
InspectorEnvironment available to all agents through InstrumentingAgents
and use that where needed.

* inspector/InspectorAgent.cpp:
(WebCore::InspectorAgent::InspectorAgent):
* inspector/InspectorAgent.h:
(WebCore::InspectorAgent::create):
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::addMessageToConsole):
(WebCore::InspectorConsoleAgent::didFinishXHRLoading):
(WebCore::InspectorConsoleAgent::didReceiveResponse):
(WebCore::InspectorConsoleAgent::didFailLoading):
(WebCore::InspectorConsoleAgent::addConsoleMessage):
* inspector/InspectorConsoleAgent.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::enabled):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl):
(WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
(WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::InstrumentingAgents):
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::create):
(WebCore::InstrumentingAgents::inspectorEnvironment):
* inspector/PageConsoleAgent.cpp:
* inspector/PageConsoleAgent.h:
* inspector/WorkerConsoleAgent.cpp:
* inspector/WorkerConsoleAgent.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):

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

5 years agoWeb Inspector: Remove Unnecessary InspectorAgent parameters
commit-queue@webkit.org [Thu, 9 Jan 2014 22:49:15 +0000 (22:49 +0000)]
Web Inspector: Remove Unnecessary InspectorAgent parameters
https://bugs.webkit.org/show_bug.cgi?id=126712

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-09
Reviewed by Timothy Hatcher.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::create):
(WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
* inspector/InspectorDOMDebuggerAgent.h:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::create):
(WebCore::InspectorPageAgent::InspectorPageAgent):
* inspector/InspectorPageAgent.h:

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

5 years agoUnreviewed Windows build fix for r161563.
joepeck@webkit.org [Thu, 9 Jan 2014 22:23:48 +0000 (22:23 +0000)]
Unreviewed Windows build fix for r161563.

Copy all scripts, some may not be .py.

* JavaScriptCore.vcxproj/copy-files.cmd:

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

5 years agoRemove an accidentally left-behind static_cast.
antti@apple.com [Thu, 9 Jan 2014 22:14:29 +0000 (22:14 +0000)]
Remove an accidentally left-behind static_cast.

* dom/ElementDescendantIterator.h:
(WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):

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

5 years agoReplace ElementIteratorAdapter find() with beginAt()
antti@apple.com [Thu, 9 Jan 2014 22:10:22 +0000 (22:10 +0000)]
Replace ElementIteratorAdapter find() with beginAt()
https://bugs.webkit.org/show_bug.cgi?id=126714

Reviewed by Andreas Kling.

ElementIteratorAdapter find() would return iterator for the argument element if it was
of correct type and in the right subtree. This is not really what you would expect from find()
so replace it with a simple beginAt() iterator construction function.

* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::getAllElementsById):
* dom/ElementChildIterator.h:
(WebCore::ElementChildIteratorAdapter<ElementType>::beginAt):
(WebCore::ElementChildConstIteratorAdapter<ElementType>::beginAt):
* dom/ElementDescendantIterator.h:
(WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):
(WebCore::ElementDescendantConstIteratorAdapter<ElementType>::beginAt):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::formElementIndex):
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::rowAfter):

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

5 years agoRebaseline after r161568.
timothy_horton@apple.com [Thu, 9 Jan 2014 22:05:40 +0000 (22:05 +0000)]
Rebaseline after r161568.

* platform/mac/fast/images/pdf-as-image-landscape-expected.png:
* platform/mac/fast/images/pdf-as-image-landscape-expected.txt:

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

5 years agoREGRESSION (r160152): Selection drag snapshot doesn't appear or has the wrong content...
bburg@apple.com [Thu, 9 Jan 2014 21:21:53 +0000 (21:21 +0000)]
REGRESSION (r160152): Selection drag snapshot doesn't appear or has the wrong content on Retina
https://bugs.webkit.org/show_bug.cgi?id=125375

Reviewed by Darin Adler.

Source/WebCore:

Move scaling of drag images by the device scale factor out of DragClient
and into WebCore. This removes several redundant copies and scaling operations.

Fix scaling bugs that were cancelled out by over-allocating the backing store.

* page/DragController.cpp:
(WebCore::DragController::startDrag): Scale the drag image for a link
according to the device scale factor before giving it to the OS.

(WebCore::DragController::doImageDrag): Scale the drag image for an image
according to the device scale factor before giving it to the OS.

* page/FrameSnapshotting.cpp:
(WebCore::snapshotFrameRect): Don't pre-scale or clip the snapshot. The
ImageBuffer does this already.

* platform/DragImage.cpp:
(WebCore::createDragImageFromSnapshot): Don't scale the backing store
when copying an ImageBuffer into an Image.

* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::copyImage): Draw the image in user-space coordinates,
not in backing-store coordinates. Remove unnecessary assertions. Crop the
buffer before drawing the image into it.

Source/WebKit2:

Remove scaling from WebDragClient because it is now selectively
performed by WebCore according to the drag image source.

* WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
(WebKit::WebDragClient::startDrag): Don't scale the provided drag image.

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

5 years agoAI for CreateArguments should pass through non-SpecEmpty input values
fpizlo@apple.com [Thu, 9 Jan 2014 20:41:06 +0000 (20:41 +0000)]
AI for CreateArguments should pass through non-SpecEmpty input values
https://bugs.webkit.org/show_bug.cgi?id=126709

Reviewed by Mark Hahnenberg.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* tests/stress/use-arguments-as-object-pointer.js: Added.
(foo):

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

5 years agoNarrow underlines are too tall
mmaxfield@apple.com [Thu, 9 Jan 2014 20:30:33 +0000 (20:30 +0000)]
Narrow underlines are too tall
https://bugs.webkit.org/show_bug.cgi?id=126708

Reviewed by Simon Fraser.

Source/WebCore:

I made a typo in r158392 and used was settings the line rect's
height equal to its width. No one noticed because of the subsequent
if statement.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::computeLineBoundsAndAntialiasingModeForText):

LayoutTests:

This test clips to a region that should not be drawn in, then draws a scaled underline. It then compares
the output to an empty element.

* fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines-expected.html: Added.
* fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html: Added.

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

5 years agoDocumentOrderedMap should use iterator
antti@apple.com [Thu, 9 Jan 2014 20:22:06 +0000 (20:22 +0000)]
DocumentOrderedMap should use iterator
https://bugs.webkit.org/show_bug.cgi?id=126696

Reviewed by Andreas Kling.

* dom/DocumentOrderedMap.cpp:
(WebCore::keyMatchesId):
(WebCore::keyMatchesName):
(WebCore::keyMatchesMapName):
(WebCore::keyMatchesLowercasedMapName):
(WebCore::keyMatchesLowercasedUsemap):
(WebCore::keyMatchesLabelForAttribute):
(WebCore::keyMatchesWindowNamedItem):
(WebCore::keyMatchesDocumentNamedItem):

    Switch to Element references.

(WebCore::DocumentOrderedMap::add):
(WebCore::DocumentOrderedMap::remove):
(WebCore::DocumentOrderedMap::get):
(WebCore::DocumentOrderedMap::getAllElementsById):

     Use element iterator instead of ElementTraversal.

* dom/DocumentOrderedMap.h:

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

5 years agoWebKit2 View Gestures: Support plugins that take over the page scale gesture
timothy_horton@apple.com [Thu, 9 Jan 2014 20:20:28 +0000 (20:20 +0000)]
WebKit2 View Gestures: Support plugins that take over the page scale gesture
https://bugs.webkit.org/show_bug.cgi?id=126399
<rdar://problem/15738928>

Reviewed by Sam Weinig.

Teach ViewGestureController how to handle WebFrame::handlesPageScaleGesture=true,
which is used so that PDFPlugin can deal with magnification itself.

* UIProcess/mac/ViewGestureController.cpp:
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::didCollectGeometryForMagnificationGesture):
(WebKit::ViewGestureController::handleMagnificationGesture):
(WebKit::ViewGestureController::endMagnificationGesture):
(WebKit::ViewGestureController::didCollectGeometryForSmartMagnificationGesture):
If the WebFrame is going to handle the page scale gesture itself (which currently
simply means that it is a main-frame PDFPlugin), send the magnification information
straight through to it. Also, don't provide smart-zoom in this case, since there
is currently no way to collect geometry information from the plugin.

* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/ViewGestureController.messages.in:
* WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
(WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
Retrieve WebFrame::handlesPageScaleGesture and return it to the UI process.

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

5 years agoMargin tiles are not repainted when background color changes
bdakin@apple.com [Thu, 9 Jan 2014 20:20:26 +0000 (20:20 +0000)]
Margin tiles are not repainted when background color changes
https://bugs.webkit.org/show_bug.cgi?id=126541
-and corresponding-
<rdar://problem/15578131>

Reviewed by Simon Fraser.

This patch adds an optional parameter to GraphicsLayer::setNeedsDisplayInRect,
RenderLayerBacking::setContentsNeedDisplay(), and
RenderLayer::setBackingNeedsRepaint() that is used to determine whether or not to
clip the invalidation rect to the size of the layer. Then whenever the margin
needs to be repainted, we can call setNeedsDisplayInRect() with a rect that
includes the margin, and also indicate that it should not be clipped.

GraphicsLayer now takes an optional parameter which is an enum called
ShouldClipToLayer.
* WebCore.exp.in:
* platform/graphics/GraphicsLayer.h:
* platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
(WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
* platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setNeedsDisplayInRect):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:

Make TileController::bounds() a virtual function, and declare it on TiledBacking
so that we can call it from RenderLayerBacking.
* platform/graphics/TiledBacking.h:
* platform/graphics/ca/mac/TileController.h:

RenderLayer also now takes an optional parameter which is an enum called
ShouldClipToLayer.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayer.h:

If the margin needs to be repainted, call GraphicsLayer::setNeedsDisplayInRect
with a big enough rect and a ShouldClipToLayer value of DoNotClipToLayer.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::setContentsNeedDisplay):
* rendering/RenderLayerBacking.h:

Whenever all of the root contents need to be repainted the margin will also need
to be repainted, so call setBackingNeedsRepaint() with the new parameter
indicating the the invalidation should NOT be clipped to the layer size.
* rendering/RenderView.cpp:
(WebCore::RenderView::repaintRootContents):

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

5 years ago[CSS Shapes] Factor the ReferenceBox type out of BasicShapes
betravis@adobe.com [Thu, 9 Jan 2014 20:16:23 +0000 (20:16 +0000)]
[CSS Shapes] Factor the ReferenceBox type out of BasicShapes
https://bugs.webkit.org/show_bug.cgi?id=126648

Reviewed by Dirk Schulze.

Moving ReferenceBox out of BasicShapes and into RenderStyleConstants
as the LayoutBox enum. Most of the changes are removing the BasicShape
namespace.

Refactoring, no new tests.

* css/BasicShapeFunctions.cpp:
(WebCore::valueForBox):
(WebCore::boxForValue):
(WebCore::valueForBasicShape):
(WebCore::basicShapeForValue):
* css/BasicShapeFunctions.h:
* css/CSSBasicShapes.cpp:
(WebCore::CSSBasicShapeRectangle::cssText):
(WebCore::CSSBasicShapeRectangle::equals):
(WebCore::CSSBasicShapeCircle::cssText):
(WebCore::CSSBasicShapeCircle::equals):
(WebCore::CSSDeprecatedBasicShapeCircle::cssText):
(WebCore::CSSDeprecatedBasicShapeCircle::equals):
(WebCore::CSSBasicShapeEllipse::cssText):
(WebCore::CSSBasicShapeEllipse::equals):
(WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
(WebCore::CSSDeprecatedBasicShapeEllipse::equals):
(WebCore::CSSBasicShapePolygon::cssText):
(WebCore::CSSBasicShapePolygon::equals):
(WebCore::CSSBasicShapeInsetRectangle::cssText):
(WebCore::CSSBasicShapeInsetRectangle::equals):
(WebCore::CSSBasicShapeInset::cssText):
* css/CSSBasicShapes.h:
(WebCore::CSSBasicShape::layoutBox):
(WebCore::CSSBasicShape::setLayoutBox):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseShapeProperty):
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyClipPath::applyValue):
(WebCore::ApplyPropertyShape::applyValue):
* rendering/ClipPathOperation.h:
(WebCore::ShapeClipPathOperation::setReferenceBox):
(WebCore::ShapeClipPathOperation::referenceBox):
(WebCore::ShapeClipPathOperation::ShapeClipPathOperation):
(WebCore::BoxClipPathOperation::create):
(WebCore::BoxClipPathOperation::referenceBox):
(WebCore::BoxClipPathOperation::BoxClipPathOperation):
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createLayoutBoxShape):
* rendering/shapes/Shape.h:
* rendering/shapes/ShapeInfo.cpp:
(WebCore::ShapeInfo<RenderType>::computedShape):
* rendering/shapes/ShapeInfo.h:
(WebCore::ShapeInfo::setShapeSize):
(WebCore::ShapeInfo::logicalTopOffset):
(WebCore::ShapeInfo::logicalLeftOffset):
* rendering/shapes/ShapeInsideInfo.h:
* rendering/shapes/ShapeOutsideInfo.h:
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShape::canBlend):
(WebCore::BasicShape::referenceBoxSize):
* rendering/style/BasicShapes.h:
(WebCore::BasicShape::layoutBox):
(WebCore::BasicShape::setLayoutBox):
(WebCore::BasicShape::BasicShape):
* rendering/style/RenderStyleConstants.h:
* rendering/style/ShapeValue.h:
(WebCore::ShapeValue::createLayoutBoxValue):
(WebCore::ShapeValue::layoutBox):
(WebCore::ShapeValue::ShapeValue):

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

5 years agoPDFDocumentImage can be very slow to do the initial paint
timothy_horton@apple.com [Thu, 9 Jan 2014 20:14:32 +0000 (20:14 +0000)]
PDFDocumentImage can be very slow to do the initial paint
https://bugs.webkit.org/show_bug.cgi?id=126633
<rdar://problem/15770980>

Reviewed by Simon Fraser.

* platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::PDFDocumentImage):
(WebCore::PDFDocumentImage::size):
(WebCore::transformContextForPainting):
(WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
(WebCore::applyRotationForPainting):
(WebCore::PDFDocumentImage::drawPDFPage):
* platform/graphics/cg/PDFDocumentImage.h:
* platform/graphics/mac/PDFDocumentImageMac.mm:
(WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
Store rotation from the PDF in degrees, since it can
only be 0, 90, 180, or 270, and don't do any trig to
perform the rotation, to avoid introducing minor rounding
issues in the size.

Once we're going to paint, if the difference between the
computed scale for each axis is due only to integer rounding
of the image size, use the same scale for both axes, to avoid
a CG slow-path which occurs whenever the scale is nonuniform.

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

5 years agoDisconnect child frames iteratively
antti@apple.com [Thu, 9 Jan 2014 20:09:53 +0000 (20:09 +0000)]
Disconnect child frames iteratively
https://bugs.webkit.org/show_bug.cgi?id=126700

Reviewed by Andreas Kling.

Use descendant iterator instead of recursion for traversal.

* dom/ContainerNode.cpp:
(WebCore::willRemoveChild):
(WebCore::willRemoveChildren):
(WebCore::ContainerNode::disconnectDescendantFrames):
* dom/ContainerNodeAlgorithms.cpp:
(WebCore::assertConnectedSubrameCountIsConsistent):
(WebCore::collectFrameOwners):
(WebCore::disconnectSubframes):

    Get rid of the strange ChildFrameDisconnector class in favor of a function.

* dom/ContainerNodeAlgorithms.h:
(WebCore::disconnectSubframesIfNeeded):

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

5 years ago[Cocoa] Promote WKBackForwardList{,Item}.h to public
mitz@apple.com [Thu, 9 Jan 2014 19:38:41 +0000 (19:38 +0000)]
[Cocoa] Promote WKBackForwardList{,Item}.h to public
https://bugs.webkit.org/show_bug.cgi?id=126707

Reviewed by Sam Weinig.

Source/WebKit2:

* UIProcess/API/Cocoa/WKBackForwardList.h: Stopped including the C API header.
* UIProcess/API/Cocoa/WKBackForwardListItem.h: Ditto.
* WebKit2.xcodeproj/project.pbxproj: Made the headers public.

Tools:

* Scripts/check-for-webkit-framework-include-consistency: Account for stale private headers
left behind in the build products directory after a private header is made public.

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

5 years agoUnreviewed Windows build fix for r161563.
joepeck@webkit.org [Thu, 9 Jan 2014 19:25:23 +0000 (19:25 +0000)]
Unreviewed Windows build fix for r161563.

Remove reference to removed file.

* bindings/js/JSBindingsAllInOne.cpp:

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

5 years agoConstructors for Objective-C classes do not work properly with instanceof
mhahnenberg@apple.com [Thu, 9 Jan 2014 19:14:55 +0000 (19:14 +0000)]
Constructors for Objective-C classes do not work properly with instanceof
https://bugs.webkit.org/show_bug.cgi?id=126670

Reviewed by Oliver Hunt.

This bug is due to the fact that the JS constructors created for Objective-C classes via the JSC
API inherit from JSCallbackObject, which overrides hasInstance with its own customHasInstance.
JSCallbackObject::customHasInstance only checks the JSClassRefs for hasInstance callbacks.
If it doesn't find any callbacks, it returns false.

This patch adds a hasInstance callback to constructors created for Objective-C wrapper classes.

* API/JSWrapperMap.mm:
(constructorHasInstance):
(constructorWithCustomBrand):
(allocateConstructorForCustomClass):
* API/tests/testapi.mm:

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

5 years agoWeb Inspector: Move InjectedScript classes into JavaScriptCore
joepeck@webkit.org [Thu, 9 Jan 2014 19:00:48 +0000 (19:00 +0000)]
Web Inspector: Move InjectedScript classes into JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=126598

Source/JavaScriptCore:

Reviewed by Timothy Hatcher.

Part 1: Extract InspectorInstrumentationCookie class from InspectorInstrumentation.
Part 2: Move InjectedScriptSource and generation into JavaScriptCore.
Part 3: Update CodeGeneratorInspector to avoid inlining virtual destructors.
Part 4: Move all inspector scripts into JavaScriptCore and update generators.
Part 5: Move InjectedScript classes into JavaScriptCore
Part 6: Put it all together. Make WebCore use the JavaScriptCore InjectedScript files.

There are pieces of logic that WebCore wants to hook into in the InjectedScript
execution (e.g. for CommandLineAPIModule and InspectorInstrumentation). Create
hooks for those in a base class called InspectorEnvironment. For now, the
InspectorControllers (Page, JSGlobalObject, Worker) will be the InspectorEnvironments
and provide answers to its hooks.

* inspector/InspectorEnvironment.h: Added.
New hooks needed by WebCore in various places. Mostly stubbed in JavaScriptCore.

* inspector/InjectedScript.cpp: Renamed from Source/WebCore/inspector/InjectedScript.cpp.
* inspector/InjectedScript.h: Added.
* inspector/InjectedScriptBase.cpp: Renamed from Source/WebCore/inspector/InjectedScriptBase.cpp.
* inspector/InjectedScriptBase.h: Renamed from Source/WebCore/inspector/InjectedScriptBase.h.
* inspector/InjectedScriptModule.cpp: Renamed from Source/WebCore/inspector/InjectedScriptModule.cpp.
* inspector/InjectedScriptModule.h: Renamed from Source/WebCore/inspector/InjectedScriptModule.h.
Cleanup the style of these files (nullptr, formatting, whitespace, etc).
Use the InspectorEnvironments call/evaluate function for ScriptFunctionCalls and checking access

* inspector/InjectedScriptManager.cpp: Renamed from Source/WebCore/inspector/InjectedScriptManager.cpp.
* inspector/InjectedScriptManager.h: Renamed from Source/WebCore/inspector/InjectedScriptManager.h.
Take an InspectorEnvironment with multiple hooks, instead of a single hook function.

* inspector/InjectedScriptHost.cpp: Added.
* inspector/InjectedScriptHost.h: Added.
* inspector/JSInjectedScriptHost.cpp: Renamed from Source/WebCore/bindings/js/JSInjectedScriptHostCustom.cpp.
* inspector/JSInjectedScriptHost.h: Added.
* inspector/JSInjectedScriptHostPrototype.cpp: Added.
* inspector/JSInjectedScriptHostPrototype.h: Added.
Implementation of InjectedScriptHost which is passed into the script (InjectedScriptSource.js)
that we inject into the page. This is mostly copied from the original autogenerated code,
then simplified and cleaned up. InjectedScriptHost can be subclasses to provide specialized
implementations of isHTMLAllCollection and type for Web/DOM types unknown to a pure JS context.

For OS X be sure to export the scripts as if they are private headers.

* GNUmakefile.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* inspector/scripts/cssmin.py: Renamed from Source/WebCore/inspector/Scripts/cssmin.py.
* inspector/scripts/inline-and-minify-stylesheets-and-scripts.py: Renamed from Source/WebCore/inspector/Scripts/inline-and-minify-stylesheets-and-scripts.py.
* inspector/scripts/jsmin.py: Renamed from Source/WebCore/inspector/Scripts/jsmin.py.
* inspector/scripts/xxd.pl: Renamed from Source/WebCore/inspector/xxd.pl.

This avoids build errors about duplicate exported virtual inlined methods
are included from multiple places. Just put empty destructors in the
implementation file instead of inlined.

* inspector/scripts/CodeGeneratorInspector.py:
(Generator):
(Generator.go):
* inspector/scripts/CodeGeneratorInspectorStrings.py:

Move InjectedScriptSource.js and derived sources generation.

* CMakeLists.txt:
* DerivedSources.make:
* GNUmakefile.am:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* inspector/InjectedScriptSource.js: Renamed from Source/WebCore/inspector/InjectedScriptSource.js.

Source/WebCore:

Reviewed by Timothy Hatcher.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* GNUmakefile.list.am:
* UseJSC.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Remove old InjectedScript files.

* ForwardingHeaders/inspector/InjectedScript.h: Added.
* ForwardingHeaders/inspector/InjectedScriptBase.h: Added.
* ForwardingHeaders/inspector/InjectedScriptHost.h: Added.
* ForwardingHeaders/inspector/InjectedScriptManager.h: Added.
* ForwardingHeaders/inspector/InjectedScriptModule.h: Added.
* ForwardingHeaders/inspector/InspectorEnvironment.h: Added.
Expose headers to WebCore.

* inspector/InspectorController.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::developerExtrasEnabled):
(WebCore::InspectorController::canAccessInspectedScriptState):
(WebCore::InspectorController::functionCallHandler):
(WebCore::InspectorController::evaluateHandler):
(WebCore::InspectorController::willCallInjectedScriptFunction):
(WebCore::InspectorController::didCallInjectedScriptFunction):
* inspector/WorkerInspectorController.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::functionCallHandler):
(WebCore::WorkerInspectorController::evaluateHandler):
(WebCore::WorkerInspectorController::willCallInjectedScriptFunction):
(WebCore::WorkerInspectorController::didCallInjectedScriptFunction):
Make both InspectorControllers in WebCore be InspectorEnvironments.

* bindings/js/JSMainThreadExecState.h:
* bindings/js/JSMainThreadExecState.cpp:
(WebCore::evaluateHandlerFromAnyThread):
Make JSC::evaluate wrapper like the existing JSC::call wrapper.
These will be the ScriptFunctionCall implementations when debugging
a WebCore::Page or worker, instead of the pure JSC versions.

* inspector/PageInjectedScriptHost.h: Copied from Source/WebCore/inspector/CommandLineAPIModule.h.
* inspector/PageInjectedScriptHost.cpp: Copied from Source/WebCore/inspector/PageInjectedScriptManager.cpp.
(WebCore::PageInjectedScriptHost::type):
(WebCore::PageInjectedScriptHost::isHTMLAllCollection):
WebCore InjectedScriptHost implementation for DOM type handling.

* inspector/PageInjectedScriptManager.h:
* inspector/PageInjectedScriptManager.cpp:
(WebCore::PageInjectedScriptManager::PageInjectedScriptManager):
(WebCore::PageInjectedScriptManager::discardInjectedScriptsFor):
WebCore InjectedScriptManager implementation for CommandLineAPI and
specialized DOMWindow injected script management.

* bindings/js/JSBindingsAllInOne.cpp:
* inspector/CommandLineAPIHost.cpp:
* inspector/CommandLineAPIHost.h:
* inspector/CommandLineAPIModule.cpp:
(WebCore::CommandLineAPIModule::host):
* inspector/CommandLineAPIModule.h:
* inspector/ConsoleMessage.cpp:
(WebCore::ConsoleMessage::addToFrontend):
* inspector/ConsoleMessage.h:
* inspector/InjectedScriptCanvasModule.cpp:
(WebCore::InjectedScriptCanvasModule::InjectedScriptCanvasModule):
* inspector/InjectedScriptCanvasModule.h:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorCanvasAgent.cpp:
* inspector/InspectorCanvasAgent.h:
(WebCore::InspectorCanvasAgent::create):
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
* inspector/InspectorConsoleAgent.h:
* inspector/InspectorDOMAgent.cpp:
* inspector/InspectorDOMAgent.h:
(WebCore::InspectorDOMAgent::create):
* inspector/InspectorDebuggerAgent.cpp:
* inspector/InspectorDebuggerAgent.h:
(WebCore::InspectorDebuggerAgent::injectedScriptManager):
* inspector/InspectorHeapProfilerAgent.cpp:
(WebCore::InspectorHeapProfilerAgent::create):
(WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
* inspector/InspectorHeapProfilerAgent.h:
* inspector/InspectorIndexedDBAgent.cpp:
* inspector/InspectorIndexedDBAgent.h:
(WebCore::InspectorIndexedDBAgent::create):
* inspector/InspectorPageAgent.cpp:
* inspector/InspectorPageAgent.h:
* inspector/InspectorProfilerAgent.cpp:
(WebCore::PageProfilerAgent::PageProfilerAgent):
(WebCore::InspectorProfilerAgent::create):
(WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
* inspector/InspectorProfilerAgent.h:
* inspector/InspectorRuntimeAgent.cpp:
* inspector/InspectorRuntimeAgent.h:
(WebCore::InspectorRuntimeAgent::injectedScriptManager):
* inspector/PageConsoleAgent.cpp:
(WebCore::PageConsoleAgent::PageConsoleAgent):
* inspector/PageConsoleAgent.h:
(WebCore::PageConsoleAgent::create):
* inspector/PageDebuggerAgent.cpp:
* inspector/PageDebuggerAgent.h:
* inspector/PageRuntimeAgent.cpp:
* inspector/PageRuntimeAgent.h:
(WebCore::PageRuntimeAgent::create):
* inspector/WorkerConsoleAgent.cpp:
(WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
* inspector/WorkerConsoleAgent.h:
(WebCore::WorkerConsoleAgent::create):
* inspector/WorkerDebuggerAgent.cpp:
* inspector/WorkerDebuggerAgent.h:
* inspector/WorkerRuntimeAgent.cpp:
* inspector/WorkerRuntimeAgent.h:
(WebCore::WorkerRuntimeAgent::create):
Switch to using the Inspector namespace and JSC InjectedScript files.

* bindings/js/JSInjectedScriptManager.cpp: Removed.
* inspector/InjectedScript.h: Removed.
* inspector/InjectedScriptHost.cpp: Removed.
* inspector/InjectedScriptHost.h: Removed.
* inspector/InjectedScriptHost.idl: Removed.

With the updated location switch to using the appropriate INSPECTOR_SCRIPTS_DIR
variable which defines where the scripts are.

* CMakeLists.txt:
* DerivedSources.make:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

Currently InjectedScriptBase uses InspectorInstrumentation directly
to track calling into JavaScript for timeline purposes. We will remove
the direct call from InjectedScriptBase and extracting the Cookie class
will make that easier.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:
* inspector/InspectorInstrumentationCookie.cpp: Added.
(WebCore::InspectorInstrumentationCookie::InspectorInstrumentationCookie):
(WebCore::InspectorInstrumentationCookie::operator=):
(WebCore::InspectorInstrumentationCookie::~InspectorInstrumentationCookie):
* inspector/InspectorInstrumentationCookie.h: Added.
(WebCore::InspectorInstrumentationCookie::isValid):
(WebCore::InspectorInstrumentationCookie::instrumentingAgents):
(WebCore::InspectorInstrumentationCookie::hasMatchingTimelineAgentId):

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

5 years agoRegression: failing RegExp tests on 32 bit architectures.
commit-queue@webkit.org [Thu, 9 Jan 2014 18:46:20 +0000 (18:46 +0000)]
Regression: failing RegExp tests on 32 bit architectures.
https://bugs.webkit.org/show_bug.cgi?id=126699

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2014-01-09
Reviewed by Michael Saboff.

Fix setRegExpConstructor functions for 32 bit architectures.

* runtime/RegExpConstructor.cpp:
(JSC::setRegExpConstructorInput):
(JSC::setRegExpConstructorMultiline):

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

5 years agoRevert back to using the -n option when producing symbolic links to the GTK-specific
zandobersek@gmail.com [Thu, 9 Jan 2014 18:34:57 +0000 (18:34 +0000)]
Revert back to using the -n option when producing symbolic links to the GTK-specific
API directories under Source/WebKit2/. Removing the option in r161497 resulted in
recursive links being created under those directories since the links were dereferenced.

To actually ensure that the link is created anew, remove it so it is reconstructed.

Rubber-stamped by Carlos Garcia Campos.

* GNUmakefile.am:

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

5 years agoREGRESSION (r161429?): Frequent crashes on media/track/media-element-enqueue-event...
ap@apple.com [Thu, 9 Jan 2014 18:31:03 +0000 (18:31 +0000)]
REGRESSION (r161429?): Frequent crashes on media/track/media-element-enqueue-event-crash.html
https://bugs.webkit.org/show_bug.cgi?id=117756

* platform/mac/TestExpectations: Skipping the test, it crashes very frequently.

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

5 years agoCrash when starting a download before the network process has been launched
carlosgc@webkit.org [Thu, 9 Jan 2014 17:55:39 +0000 (17:55 +0000)]
Crash when starting a download before the network process has been launched
https://bugs.webkit.org/show_bug.cgi?id=126258

Reviewed by Anders Carlsson.

We need to ensure there's a network process running before
starting a new download like we do when using the web process.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::download): Use ChildProcessProxy::send()
instead of using the connection to make sure messages are queued
if the process is still launching.
(WebKit::WebContext::createDownloadProxy): Call
ensureNetworkProcess() before creating the download proxy.

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

5 years agoCannot select multiple non-adjacent items in a multiple select control with the keybo...
commit-queue@webkit.org [Thu, 9 Jan 2014 17:23:48 +0000 (17:23 +0000)]
Cannot select multiple non-adjacent items in a multiple select control with the keyboard only
https://bugs.webkit.org/show_bug.cgi?id=15816

Patch by Pascal Jacquemart <p.jacquemart@samsung.com> on 2014-01-09
Reviewed by Chris Fleizach.

Source/WebCore:

Test: fast/forms/listbox-non-contiguous-keyboard-selection.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::HTMLSelectElement):
New member m_allowsNonContiguousSelection defaults to false
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Tracking CTRL modifier to start multiple non contiguous selection
* html/HTMLSelectElement.h: New member m_allowsNonContiguousSelection
(WebCore::HTMLSelectElement::allowsNonContiguousSelection): New getter
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::addFocusRingRects):
Following implementation made for spatial navigation

LayoutTests:

* fast/forms/listbox-non-contiguous-keyboard-selection-expected.txt: Added.
* fast/forms/listbox-non-contiguous-keyboard-selection.html: Added.
* platform/mac/TestExpectations:
Multiple non contiguous selection with keyboard not enabled on Mac

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

5 years agoUnreviewed, rolling out r161540.
commit-queue@webkit.org [Thu, 9 Jan 2014 17:21:02 +0000 (17:21 +0000)]
Unreviewed, rolling out r161540.
http://trac.webkit.org/changeset/161540
https://bugs.webkit.org/show_bug.cgi?id=126704

Caused assertion failures on multiple tests (Requested by ap
on #webkit).

Source/JavaScriptCore:

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::visitAggregate):
* bytecode/CodeBlock.h:
(JSC::CodeBlockSet::mark):
* dfg/DFGOperations.cpp:
* heap/CodeBlockSet.cpp:
(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::traceMarked):
* heap/CodeBlockSet.h:
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes):
* heap/CopiedSpace.cpp:
* heap/CopiedSpace.h:
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::didAbandon):
(JSC::Heap::markRoots):
(JSC::Heap::copyBackingStores):
(JSC::Heap::collectAllGarbage):
(JSC::Heap::collect):
(JSC::Heap::didAllocate):
* heap/Heap.h:
(JSC::Heap::shouldCollect):
(JSC::Heap::isCollecting):
(JSC::Heap::isWriteBarrierEnabled):
(JSC::Heap::writeBarrier):
* heap/HeapOperation.h:
* heap/MarkStack.cpp:
(JSC::MarkStackArray::~MarkStackArray):
* heap/MarkStack.h:
* heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::isPagedOut):
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::addBlock):
(JSC::MarkedAllocator::removeBlock):
* heap/MarkedAllocator.h:
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::reset):
* heap/MarkedBlock.cpp:
* heap/MarkedBlock.h:
(JSC::MarkedBlock::lastChanceToFinalize):
(JSC::MarkedBlock::didConsumeEmptyFreeList):
(JSC::MarkedBlock::clearMarks):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::~MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::visitWeakSets):
(JSC::MarkedSpace::reapWeakSets):
* heap/MarkedSpace.h:
(JSC::ClearMarks::operator()):
(JSC::MarkedSpace::clearMarks):
* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::~SlotVisitor):
* heap/SlotVisitor.h:
(JSC::SlotVisitor::sharedData):
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::copyLater):
(JSC::SlotVisitor::reportExtraMemoryUsage):
* jit/Repatch.cpp:
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::visitChildren):
* runtime/JSPropertyNameIterator.h:
(JSC::StructureRareData::setEnumerationCache):
* runtime/JSString.cpp:
(JSC::JSString::visitChildren):
* runtime/StructureRareDataInlines.h:
(JSC::StructureRareData::setPreviousID):
(JSC::StructureRareData::setObjectToStringValue):
* runtime/WeakMapData.cpp:
(JSC::WeakMapData::visitChildren):

Source/WTF:

* wtf/Bitmap.h:
(WTF::WordType>::count):

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

5 years agoWeb Inspector: Remove unused overriding protocols.
seokju@webkit.org [Thu, 9 Jan 2014 17:19:34 +0000 (17:19 +0000)]
Web Inspector: Remove unused overriding protocols.
https://bugs.webkit.org/show_bug.cgi?id=126630

Reviewed by Timothy Hatcher.

Source/WebCore:

No new tests, No change in behavior.

Remove unused overriding protocols as these are not used anymore in Frontned.
-Page.setGeolocationOverride
-Page.clearGeolocationOverride
-Page.canOverrideGeolocation
-Page.setDeviceOrientationOverride
-Page.clearDeviceOrientationOverride
-Page.canOverrideGeolocation
-Network.setUserAgentOverride

* Modules/geolocation/GeolocationController.cpp:
(WebCore::GeolocationController::GeolocationController):
(WebCore::GeolocationController::create):
(WebCore::GeolocationController::positionChanged):
(WebCore::provideGeolocationTo):
* Modules/geolocation/GeolocationController.h:
* dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::create):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
(WebCore::provideDeviceOrientationTo):
* dom/DeviceOrientationController.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::InspectorPageAgent):
* inspector/InspectorPageAgent.h:
* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::disable):
* inspector/InspectorResourceAgent.h:
* inspector/protocol/Network.json:
* inspector/protocol/Page.json:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::userAgent):

Source/WebInspectorUI:

Update InspectorWebBackendCommands.js after removing unused overriding protocols.

* UserInterface/InspectorWebBackendCommands.js:
* UserInterface/Legacy/6.0/InspectorWebBackendCommands.js:
* UserInterface/Legacy/7.0/InspectorWebBackendCommands.js:
* Versions/Inspector-iOS-6.0.json:
* Versions/Inspector-iOS-7.0.json:

LayoutTests:

* http/tests/inspector/extensions-useragent-expected.txt: Removed.
* http/tests/inspector/extensions-useragent.html: Removed.
* inspector/device-orientation-success-expected.txt: Removed.
* inspector/device-orientation-success.html: Removed.
* inspector/geolocation-error-expected.txt: Removed.
* inspector/geolocation-error.html: Removed.
* inspector/geolocation-success-expected.txt: Removed.
* inspector/geolocation-success.html: Removed.
* inspector/geolocation-watchPosition-expected.txt: Removed.
* inspector/geolocation-watchPosition.html: Removed.

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

5 years ago[SOUP] Partial file left on disk after a download fails or is cancelled in WebKit2
carlosgc@webkit.org [Thu, 9 Jan 2014 16:08:48 +0000 (16:08 +0000)]
[SOUP] Partial file left on disk after a download fails or is cancelled in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126686

Reviewed by Martin Robinson.

Source/WebKit2:

We are currently writing the downloads directly into the
destination, and when a download fails or is cancelled after the
destination has been decided, the partial file is left on the
disk. Deleting the final file is not safe because there might be a
race condition, so we can use an intermediate file like other
browsers do, a file in the same directory than the target
destination but with .wkdownload suffix, that is removed when the
download fails or is cancelled. If the download finishes
successfully the intermediate file is renamed to the final
destination.

* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::deleteIntermediateFileInNeeded): Delete
the intermdiate file if it's been created already.
(WebKit::DownloadClient::downloadFailed): Call deleteIntermediateFileInNeeded.
(WebKit::DownloadClient::didReceiveResponse): Do not create a
SoupMessage for the given ResourceResponse that is not used, cache
the ResourceResponse instead. Create the intermediate file and use
it instead of the final destination.
(WebKit::DownloadClient::didReceiveData): Use the cached
ResourceResponse directly.
(WebKit::DownloadClient::didFinishLoading): Rename the
intermediate file to the final destination and write the metadata
in the final target destination.
(WebKit::DownloadClient::cancel): Handle the download cancellation
here, removing the intermediate file is needed and cancelling the
ResourceHandle and the download.
(WebKit::DownloadClient::handleResponseLater):
(WebKit::Download::cancel): Let the client handle the cancellation.

Tools:

Test that partial files are not left on disk after a download has
been cancelled after the destination has been decided. To make
sure the download is cancelled after the destination has been
decided and before the operation finishes, we cancel the download
in the destination decided callback, and we use an infinite
resource that writes chunks to the response body and never
completes the body.

* TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
(addContentDispositionHTTPHeaderToResponse): Helper function to
add the Content-Disposition to the response headers.
(writeNextChunkIdle): Write next chunk to response body.
(writeNextChunk): Write next chunk in an idle to avoid flooding
the network with the inifnite resource.
(serverCallback): Add an inifinite resource.
(testDownloadRemoteFileError): Check that partial file is not
present after the download has been cancelled.

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

5 years agoShrink WatchpointSet.
akling@apple.com [Thu, 9 Jan 2014 15:50:54 +0000 (15:50 +0000)]
Shrink WatchpointSet.
<https://webkit.org/b/126694>

Reorder the members of WatchpointSet, shrinking it by 8 bytes.
767 kB progression on Membuster3.

Reviewed by Antti Koivisto.

* bytecode/Watchpoint.h:

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

5 years ago[CSSRegions] Move regions auto-size code into RenderNamedFlowFragment
abucur@adobe.com [Thu, 9 Jan 2014 12:06:21 +0000 (12:06 +0000)]
[CSSRegions] Move regions auto-size code into RenderNamedFlowFragment
https://bugs.webkit.org/show_bug.cgi?id=122959

Reviewed by Mihnea Ovidenie.

Move the auto-height logic from RenderRegion to RenderNamedFlowFragment because it's
used only by the CSS Regions implementation.

Bug 126642 covers the auto-height logic move from RenderFlowThread to RenderNamedFlowThread.

Tests: No new tests, just refactorings.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::styleDidChange):
(WebCore::RenderFlowThread::validateRegions):
(WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent):
(WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
(WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
(WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
(WebCore::RenderFlowThread::addForcedRegionBreak):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::RenderNamedFlowFragment):
(WebCore::RenderNamedFlowFragment::styleDidChange):
(WebCore::RenderNamedFlowFragment::incrementAutoLogicalHeightCount):
(WebCore::RenderNamedFlowFragment::decrementAutoLogicalHeightCount):
(WebCore::RenderNamedFlowFragment::updateRegionHasAutoLogicalHeightFlag):
(WebCore::RenderNamedFlowFragment::updateLogicalHeight):
(WebCore::RenderNamedFlowFragment::pageLogicalHeight):
(WebCore::RenderNamedFlowFragment::layoutBlock):
(WebCore::RenderNamedFlowFragment::attachRegion):
(WebCore::RenderNamedFlowFragment::detachRegion):
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::pageLogicalHeight):
(WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
(WebCore::RenderRegion::isLastRegion):
(WebCore::RenderRegion::styleDidChange):
(WebCore::RenderRegion::attachRegion):
(WebCore::RenderRegion::detachRegion):
* rendering/RenderRegion.h:
* rendering/RenderRegionSet.h:
* rendering/RenderTreeAsText.cpp:
(WebCore::writeRenderRegionList):

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

5 years agoMove myself to the committers list.
rtakacs@inf.u-szeged.hu [Thu, 9 Jan 2014 10:32:54 +0000 (10:32 +0000)]
Move myself to the committers list.

Unreviewed.

* Scripts/webkitpy/common/config/contributors.json:

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

5 years agoSwitch HTMLTableRowsCollection from Traversal<> to iterators
antti@apple.com [Thu, 9 Jan 2014 10:20:39 +0000 (10:20 +0000)]
Switch HTMLTableRowsCollection from Traversal<> to iterators
https://bugs.webkit.org/show_bug.cgi?id=126684

Reviewed by Andreas Kling.

This is the last remaining client of Traversal<> outside the iterator implementation.

* dom/ElementChildIterator.h:
(WebCore::ElementChildIteratorAdapter<ElementType>::find):
(WebCore::ElementChildConstIteratorAdapter<ElementType>::find):

    Add find with the same semantics as ElementDescendantIterator::find.

* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::rowAfter):
(WebCore::HTMLTableRowsCollection::lastRow):

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

5 years agoUnreviewed GTK gardening. Rebaselining after r161521.
zandobersek@gmail.com [Thu, 9 Jan 2014 08:44:48 +0000 (08:44 +0000)]
Unreviewed GTK gardening. Rebaselining after r161521.

* platform/gtk/css1/text_properties/letter_spacing-expected.png:
* platform/gtk/css1/text_properties/letter_spacing-expected.txt:
* platform/gtk/css1/text_properties/word_spacing-expected.png:
* platform/gtk/css1/text_properties/word_spacing-expected.txt:
* platform/gtk/css2.1/t1604-c542-letter-sp-00-b-a-expected.txt:
* platform/gtk/fast/text/basic/013-expected.png:
* platform/gtk/fast/text/basic/013-expected.txt:
* platform/gtk/fast/text/text-letter-spacing-expected.txt:
* platform/gtk/svg/W3C-SVG-1.1/text-spacing-01-b-expected.png:
* platform/gtk/svg/W3C-SVG-1.1/text-spacing-01-b-expected.txt: Added.
* platform/gtk/svg/batik/text/textLayout-expected.txt: Added.
* platform/gtk/svg/custom/text-letter-spacing-expected.png:
* platform/gtk/svg/custom/text-letter-spacing-expected.txt:
* platform/gtk/svg/text/text-spacing-01-b-expected.png:
* platform/gtk/svg/text/text-spacing-01-b-expected.txt: Added.

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

5 years agoREGRESSION(r161176): http/tests/misc/authentication-redirect-3/authentication-sent...
carlosgc@webkit.org [Thu, 9 Jan 2014 08:05:00 +0000 (08:05 +0000)]
REGRESSION(r161176): http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html is failing on GTK
https://bugs.webkit.org/show_bug.cgi?id=126518

Reviewed by Martin Robinson.

Source/WebCore:

Clear the credentials before calling willSendRequest on the client
to avoid sending the credentials to the API layer, but apply them
again to the request right before creating the new SoupRequest.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::continueAfterWillSendRequest):
(WebCore::doRedirect):

LayoutTests:

Unskip
http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html
and http/tests/security/redirect-BLOCKED-to-localURL.html.

* platform/gtk/TestExpectations:

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

5 years agoWebKit2 EFL build fix after r161530
jinwoo7.song@samsung.com [Thu, 9 Jan 2014 07:14:37 +0000 (07:14 +0000)]
WebKit2 EFL build fix after r161530
https://bugs.webkit.org/show_bug.cgi?id=126678

Reviewed by Tim Horton.

Add PLATFORM(MAC) guards around setExposedRect() and exposedRect()
in DrawingArea and WebFrameLoaderClient.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebProcess/WebPage/DrawingArea.h:

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

5 years ago[GTK] Unreviewed build fix after r161522.
seokju@webkit.org [Thu, 9 Jan 2014 05:41:53 +0000 (05:41 +0000)]
[GTK] Unreviewed build fix after r161522.

* TestWebKitAPI/GNUmakefile.am: Remove WKConnection.cpp and WKConnection_Bundle.cpp.

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

5 years agoReverting accidental GC logging
mhahnenberg@apple.com [Thu, 9 Jan 2014 04:25:55 +0000 (04:25 +0000)]
Reverting accidental GC logging

* heap/Heap.cpp:

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

5 years agoStub for Session API
commit-queue@webkit.org [Thu, 9 Jan 2014 04:01:48 +0000 (04:01 +0000)]
Stub for Session API
https://bugs.webkit.org/show_bug.cgi?id=126626

Patch by Martin Hock <mhock@apple.com> on 2014-01-08
Reviewed by Sam Weinig.

* Shared/API/c/WKBase.h:
* Shared/API/c/WKSharedAPICast.h:
* Shared/APIObject.h:
* UIProcess/API/C/WKSessionRef.cpp: Added.
(WKSessionGetTypeID):
(WKSessionGetEphemeral):
* UIProcess/API/C/WKSessionRef.h: Added.
* UIProcess/API/Cocoa/WKSession.h: Added.
* UIProcess/API/Cocoa/WKSession.mm: Added.
(-[WKSession dealloc]):
(-[WKSession ephemeral]):
(-[WKSession API::]):
* UIProcess/API/Cocoa/WKSessionInternal.h: Added.
(WebKit::wrapper):
* UIProcess/APISession.cpp: Added.
(API::Session::Session):
(API::Session::create):
(API::Session::isEphemeral):
(API::Session::~Session):
* UIProcess/APISession.h: Added.
* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoUnreviewed, rolling out r161532.
commit-queue@webkit.org [Thu, 9 Jan 2014 03:56:47 +0000 (03:56 +0000)]
Unreviewed, rolling out r161532.
http://trac.webkit.org/changeset/161532
https://bugs.webkit.org/show_bug.cgi?id=126677

Caused lots of assertion failures (Requested by ap on
#webkit).

Source/WebCore:

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::callReadyStateChangeListener):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::abort):
(WebCore::XMLHttpRequest::networkError):
(WebCore::XMLHttpRequest::abortError):
(WebCore::XMLHttpRequest::didSendData):
(WebCore::XMLHttpRequest::didReceiveData):
(WebCore::XMLHttpRequest::didTimeout):
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequestProgressEventThrottle.cpp:
(WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadEnd):
(WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::fired):
(WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
(WebCore::XMLHttpRequestProgressEventThrottle::suspend):
* xml/XMLHttpRequestProgressEventThrottle.h:
* xml/XMLHttpRequestUpload.cpp:
(WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
(WebCore::XMLHttpRequestUpload::dispatchEventAndLoadEnd):
* xml/XMLHttpRequestUpload.h:

LayoutTests:

* fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
* http/tests/xmlhttprequest/loadstart-event-init-expected.txt: Removed.
* http/tests/xmlhttprequest/loadstart-event-init.html: Removed.
* http/tests/xmlhttprequest/onabort-progressevent-attributes-expected.txt: Removed.
* http/tests/xmlhttprequest/onabort-progressevent-attributes.html: Removed.
* http/tests/xmlhttprequest/onload-progressevent-attributes-expected.txt: Removed.
* http/tests/xmlhttprequest/onload-progressevent-attributes.html: Removed.
* http/tests/xmlhttprequest/upload-onabort-progressevent-attributes-expected.txt: Removed.
* http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html: Removed.
* http/tests/xmlhttprequest/upload-onload-progressevent-attributes-expected.txt: Removed.
* http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html: Removed.

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

5 years agoMarking should be generational
mhahnenberg@apple.com [Thu, 9 Jan 2014 03:49:38 +0000 (03:49 +0000)]
Marking should be generational
https://bugs.webkit.org/show_bug.cgi?id=126552

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Re-marking the same objects over and over is a waste of effort. This patch implements
the sticky mark bit algorithm (along with our already-present write barriers) to reduce
overhead during garbage collection caused by rescanning objects.

There are now two collection modes, EdenCollection and FullCollection. EdenCollections
only visit new objects or objects that were added to the remembered set by a write barrier.
FullCollections are normal collections that visit all objects regardless of their
generation.

In this patch EdenCollections do not do anything in CopiedSpace. This will be fixed in
https://bugs.webkit.org/show_bug.cgi?id=126555.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::visitAggregate):
* bytecode/CodeBlock.h:
(JSC::CodeBlockSet::mark):
* dfg/DFGOperations.cpp:
* heap/CodeBlockSet.cpp:
(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::traceMarked):
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks):
* heap/CodeBlockSet.h:
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes):
* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::didStartFullCollection):
* heap/CopiedSpace.h:
(JSC::CopiedSpace::heap):
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::didAbandon):
(JSC::Heap::markRoots):
(JSC::Heap::copyBackingStores):
(JSC::Heap::addToRememberedSet):
(JSC::Heap::collectAllGarbage):
(JSC::Heap::collect):
(JSC::Heap::didAllocate):
(JSC::Heap::writeBarrier):
* heap/Heap.h:
(JSC::Heap::isInRememberedSet):
(JSC::Heap::operationInProgress):
(JSC::Heap::shouldCollect):
(JSC::Heap::isCollecting):
(JSC::Heap::isWriteBarrierEnabled):
(JSC::Heap::writeBarrier):
* heap/HeapOperation.h:
* heap/MarkStack.cpp:
(JSC::MarkStackArray::~MarkStackArray):
(JSC::MarkStackArray::clear):
(JSC::MarkStackArray::fillVector):
* heap/MarkStack.h:
* heap/MarkedAllocator.cpp:
(JSC::isListPagedOut):
(JSC::MarkedAllocator::isPagedOut):
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::addBlock):
(JSC::MarkedAllocator::removeBlock):
(JSC::MarkedAllocator::reset):
* heap/MarkedAllocator.h:
(JSC::MarkedAllocator::MarkedAllocator):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::clearMarks):
(JSC::MarkedBlock::clearRememberedSet):
(JSC::MarkedBlock::clearMarksWithCollectionType):
(JSC::MarkedBlock::lastChanceToFinalize):
* heap/MarkedBlock.h: Changed atomSize to 16 bytes because we have no objects smaller
than 16 bytes. This is also to pay for the additional Bitmap for the remembered set.
(JSC::MarkedBlock::didConsumeEmptyFreeList):
(JSC::MarkedBlock::setRemembered):
(JSC::MarkedBlock::clearRemembered):
(JSC::MarkedBlock::atomicClearRemembered):
(JSC::MarkedBlock::isRemembered):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::~MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::visitWeakSets):
(JSC::MarkedSpace::reapWeakSets):
(JSC::VerifyMarked::operator()):
(JSC::MarkedSpace::clearMarks):
* heap/MarkedSpace.h:
(JSC::ClearMarks::operator()):
(JSC::ClearRememberedSet::operator()):
(JSC::MarkedSpace::didAllocateInBlock):
(JSC::MarkedSpace::clearRememberedSet):
* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::~SlotVisitor):
(JSC::SlotVisitor::clearMarkStack):
* heap/SlotVisitor.h:
(JSC::SlotVisitor::markStack):
(JSC::SlotVisitor::sharedData):
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::unconditionallyAppend):
(JSC::SlotVisitor::copyLater):
(JSC::SlotVisitor::reportExtraMemoryUsage):
(JSC::SlotVisitor::heap):
* jit/Repatch.cpp:
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::visitChildren):
* runtime/JSPropertyNameIterator.h:
(JSC::StructureRareData::setEnumerationCache):
* runtime/JSString.cpp:
(JSC::JSString::visitChildren):
* runtime/StructureRareDataInlines.h:
(JSC::StructureRareData::setPreviousID):
(JSC::StructureRareData::setObjectToStringValue):
* runtime/WeakMapData.cpp:
(JSC::WeakMapData::visitChildren):

Source/WTF:

* wtf/Bitmap.h:
(WTF::WordType>::count): Added a cast that became necessary when Bitmap
is used with smaller types than int32_t.

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

5 years agoUnreviewed EFL gardening. Rebaseline after r161521.
jinwoo7.song@samsung.com [Thu, 9 Jan 2014 03:47:54 +0000 (03:47 +0000)]
Unreviewed EFL gardening. Rebaseline after r161521.

* platform/efl/css1/text_properties/letter_spacing-expected.png:
* platform/efl/css1/text_properties/letter_spacing-expected.txt:
* platform/efl/css1/text_properties/word_spacing-expected.png:
* platform/efl/css1/text_properties/word_spacing-expected.txt:
* platform/efl/fast/text/basic/013-expected.png:
* platform/efl/fast/text/basic/013-expected.txt:
* platform/efl/fast/text/text-letter-spacing-expected.txt:
* platform/efl/svg/W3C-SVG-1.1/text-spacing-01-b-expected.png:
* platform/efl/svg/W3C-SVG-1.1/text-spacing-01-b-expected.txt: Added.
* platform/efl/svg/batik/text/textLayout-expected.txt: Added.
* platform/efl/svg/custom/text-letter-spacing-expected.png: Added.
* platform/efl/svg/custom/text-letter-spacing-expected.txt: Added.
* platform/efl/svg/text/text-spacing-01-b-expected.png:
* platform/efl/svg/text/text-spacing-01-b-expected.txt: Added.

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

5 years ago[JS] Should be able to create a promise by calling the Promise constructor as a function
commit-queue@webkit.org [Thu, 9 Jan 2014 02:37:58 +0000 (02:37 +0000)]
[JS] Should be able to create a promise by calling the Promise constructor as a function
https://bugs.webkit.org/show_bug.cgi?id=126561

Patch by Sam Weinig <sam@webkit.org> on 2014-01-08
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::getCallData):
Add support for calling the Promise constructor as a function (e.g. var p = Promise(...), note
the missing "new").

LayoutTests:

* js/dom/Promise-types-expected.txt:
* js/dom/Promise-types.html:
Add test for using calling a Promise constructor as a function.

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

5 years agoClean up confusing names and calculations in image-dragging functions
bburg@apple.com [Thu, 9 Jan 2014 02:21:49 +0000 (02:21 +0000)]
Clean up confusing names and calculations in image-dragging functions
https://bugs.webkit.org/show_bug.cgi?id=126661

Reviewed by Timothy Hatcher.

No new tests.

* page/DragController.cpp:
(WebCore::DragController::doImageDrag): rename variables and
simplify the calculation of the image's scaled origin.

* platform/DragImage.cpp:
(WebCore::fitDragImageToMaxSize): rename variables.

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

5 years ago[GTK] Add xdg.origin.url extended attribute to downloads
csaavedra@igalia.com [Thu, 9 Jan 2014 02:14:46 +0000 (02:14 +0000)]
[GTK] Add xdg.origin.url extended attribute to downloads
https://bugs.webkit.org/show_bug.cgi?id=126638

Reviewed by Carlos Garcia Campos.

This is proposed by fdo in
http://www.freedesktop.org/wiki/CommonExtendedAttributes/

Source/WebKit/gtk:

* webkit/webkitdownload.cpp:
(webkit_download_open_stream_for_uri):

Source/WebKit2:

* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::didReceiveResponse):

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

5 years agoMissleading style error when mixing system and non-system header include lines.
commit-queue@webkit.org [Thu, 9 Jan 2014 02:13:07 +0000 (02:13 +0000)]
Missleading style error when mixing system and non-system header include lines.
https://bugs.webkit.org/show_bug.cgi?id=126564

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2014-01-08
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_include_line):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(OrderOfIncludesTest.test_check_alphabetical_include_order):
(OrderOfIncludesTest.test_public_primary_header):

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

5 years agoWeb Inspector: Remove InspectorClient::captureScreenshot()
seokju@webkit.org [Thu, 9 Jan 2014 02:12:41 +0000 (02:12 +0000)]
Web Inspector: Remove InspectorClient::captureScreenshot()
https://bugs.webkit.org/show_bug.cgi?id=126616

Reviewed by Joseph Pecoraro.

No new tests, No change in behavior.

Remove leftover mothod as Page.captureScreenshot API was removed in r160202.

* inspector/InspectorClient.h:

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

5 years agoMake WK2 build when ENABLE(ASYNC_SCROLLING) is not defined
simon.fraser@apple.com [Thu, 9 Jan 2014 02:12:17 +0000 (02:12 +0000)]
Make WK2 build when ENABLE(ASYNC_SCROLLING) is not defined
https://bugs.webkit.org/show_bug.cgi?id=126675

Reviewed by Tim Horton.

We need a stub RemoteScrollingCoordinatorTransaction outside
the #ifdef so that RemoteLayerTreeDrawingAreaProxy messages
work.

* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(WebKit::RemoteScrollingCoordinatorTransaction::encode):
(WebKit::RemoteScrollingCoordinatorTransaction::decode):
* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

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

5 years agoSource/WebCore: Correctly set XHR loadend attributes (loaded and total).
commit-queue@webkit.org [Thu, 9 Jan 2014 02:11:59 +0000 (02:11 +0000)]
Source/WebCore: Correctly set XHR loadend attributes (loaded and total).
https://bugs.webkit.org/show_bug.cgi?id=120828

Patch by Youenn Fablet <youennf@gmail.com> on 2014-01-08
Reviewed by Alexey Proskuryakov.

Added correct initialization of lengthComputable, loaded and total attributes
to XHR ProgressEvent events (load, loadstart, loadend, abort, error and timeout).

XMLHttpRequestProgressEventThrottle and XMLHttpRequestUpload now keep persistent knowledge
of m_loaded and m_total values with this patch.

Code refactoring to handle event dispatching in case of error in a single manner.
XMLHttpRequestProgressEventThrottle::dispatchProgressEvent is renamed as dispatchThrottledProgressEvent
XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadend is replaced by dispatchProgressEvent(const AtomicString&)

Tests: http/tests/xmlhttprequest/loadstart-event-init.html
       http/tests/xmlhttprequest/onabort-progressevent-attributes.html
       http/tests/xmlhttprequest/onload-progressevent-attributes.html
       http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html
       http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::callReadyStateChangeListener): changed readystatechange event from ProgressEvent to Event (not cancellable, not bubblable) to better match the spec
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::abort): code refactoring to handle error event dispatching in a single way
(WebCore::XMLHttpRequest::networkError): code refactoring to handle error event dispatching in a single way
(WebCore::XMLHttpRequest::abortError): code refactoring to handle error event dispatching in a single way
(WebCore::XMLHttpRequest::didSendData):
(WebCore::XMLHttpRequest::didReceiveData):
(WebCore::XMLHttpRequest::dispatchErrorEvents): dispatch progress events in case of error
(WebCore::XMLHttpRequest::didTimeout): code refactoring to handle error event dispatching in a single way
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequestProgressEventThrottle.cpp: before the patch, the fact that a progress event is being throttled is stored indirectly (m_loaded or m_total not equal to zero). With the patch, this information is stored in m_hasThrottledProgressEvent. The m_loaded and m_total values are no longer set back to zero after a progress event is dispatched. This allows using these values to correctly initialize other ProgressEvent events (in particular loadend, abort, timeout...)
(WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEvent): always update the new m_loaded and m_total values. If progress event is not sent as part of the function call, store the fact that a progress event is being throttled through m_hasThrottledProgressEvent.
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): used to send any ProgressEvent event that is not be throttled
(WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent): after the call, no progress event is throttled anymore
(WebCore::XMLHttpRequestProgressEventThrottle::fired): after the call, no progress event is throttled anymore
(WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
(WebCore::XMLHttpRequestProgressEventThrottle::suspend):
* xml/XMLHttpRequestProgressEventThrottle.h: introduced m_hasThrottledProgressEvent which stores whether a progress event is being throttled and m_computableLength which is used to initialize ProgressEvent computableLength
* xml/XMLHttpRequestUpload.cpp:
(WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
(WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
* xml/XMLHttpRequestUpload.h: introduced m_loaded, m_total and m_lengthComputable, similarly to XMLHttpRequestProgressEventThrottle

LayoutTests: Correctly set XHR loadend event attributes (loaded and total).
https://bugs.webkit.org/show_bug.cgi?id=120828

Patch by Youenn Fablet <youennf@gmail.com> on 2014-01-08
Reviewed by Alexey Proskuryakov.

Tests for abort, load, loadstart and loadend ProgressEvent events for XMLHttpRequest and XMLHttpRequestUpload

* fast/xmlhttprequest/xmlhttprequest-get-expected.txt: Changed to correct event values
* http/tests/xmlhttprequest/loadstart-event-init-expected.txt: Added.
* http/tests/xmlhttprequest/loadstart-event-init.html: Added.
* http/tests/xmlhttprequest/onabort-progressevent-attributes-expected.txt: Added.
* http/tests/xmlhttprequest/onabort-progressevent-attributes.html: Added.
* http/tests/xmlhttprequest/onload-progressevent-attributes-expected.txt: Added.
* http/tests/xmlhttprequest/onload-progressevent-attributes.html: Added.
* http/tests/xmlhttprequest/upload-onabort-progressevent-attributes-expected.txt: Added.
* http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html: Added.
* http/tests/xmlhttprequest/upload-onload-progressevent-attributes-expected.txt: Added.
* http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html: Added.

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

5 years agoTileController can fail to receive exposedRect from the drawing area if set at the...
timothy_horton@apple.com [Thu, 9 Jan 2014 01:38:13 +0000 (01:38 +0000)]
TileController can fail to receive exposedRect from the drawing area if set at the wrong time
https://bugs.webkit.org/show_bug.cgi?id=126536

Reviewed by Simon Fraser.

* Configurations/WebKit2.xcconfig:
* UIProcess/API/mac/WKView.mm:
(-[WKView _updateViewExposedRect]):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::DrawingAreaProxy):
(WebKit::DrawingAreaProxy::setExposedRect):
(WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::exposedRect):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::close):
* UIProcess/WebPageProxy.h:
Move exposedRect stuff from WebPageProxy to DrawingAreaProxy.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
Push the exposedRect down into WebCore.

* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
(WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
(WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
Get rid of "clipsToExposedRect", we just use infinite-ness of the rect
to indicate that now.
Don't scroll an infinite rect; it won't work.

* WebCore.exp.in:
Export some things.

* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::setExposedRect):
Store the exposed rect on FrameView. When it changes, if the main frame
has a TiledBacking, inform it of the change.

* page/FrameView.h:
* platform/graphics/TiledBacking.h:
* platform/graphics/ca/mac/TileController.h:
* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::TileController):
(WebCore::TileController::tilesWouldChangeForVisibleRect):
(WebCore::TileController::computeTileCoverageRect):
(WebCore::TileController::revalidateTiles):
(WebCore::TileController::updateTileCoverageMap):
Make use of the fact that we can test if a rect is infinite
instead of having a separate boolean property for that.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::computeTileCoverage):
Push the FrameView's cached exposed rect down into the TiledBacking when it is created.
We only support clipping for the main frame TileController for now.

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

5 years agoAdd ENABLE(ASYNC_SCROLLING) guards around WK2 scrolling files
simon.fraser@apple.com [Thu, 9 Jan 2014 01:25:52 +0000 (01:25 +0000)]
Add ENABLE(ASYNC_SCROLLING) guards around WK2 scrolling files
https://bugs.webkit.org/show_bug.cgi?id=126672

Reviewed by Tim Horton.

Protected WK2 scrolling files with ENABLE(ASYNC_SCROLLING) guards.

* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
* UIProcess/Scrolling/RemoteScrollingTree.cpp:
* UIProcess/Scrolling/RemoteScrollingTree.h:
* WebProcess/Scrolling/RemoteScrollingCoordinator.h:
* WebProcess/Scrolling/RemoteScrollingCoordinator.messages.in:
* WebProcess/Scrolling/RemoteScrollingCoordinator.mm:

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

5 years ago[GTK] [CMake] Specify the executable and library output locations in the build
mrobinson@webkit.org [Thu, 9 Jan 2014 01:19:39 +0000 (01:19 +0000)]
[GTK] [CMake] Specify the executable and library output locations in the build
https://bugs.webkit.org/show_bug.cgi?id=126671

Reviewed by Gustavo Noronha Silva.

* Source/cmake/OptionsGTK.cmake: Explicitly specify the output locations.

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

5 years ago[EFL][WK2] Add API to execute js script
ryuan.choi@samsung.com [Thu, 9 Jan 2014 01:07:05 +0000 (01:07 +0000)]
[EFL][WK2] Add API to execute js script
https://bugs.webkit.org/show_bug.cgi?id=101904

Reviewed by Gyuyoung Kim.

Add ewk_view_script_execute() which provides a way to execute user
script.

* UIProcess/API/efl/ewk_context.cpp:
Added JS Global Contexta which is required to deserialize to the script
value from the callback.
(EwkContext::EwkContext):
(EwkContext::~EwkContext):
(EwkContext::jsGlobalContext):
* UIProcess/API/efl/ewk_context_private.h:
* UIProcess/API/efl/ewk_view.cpp:
(Ewk_View_Script_Execute_Callback_Context::Ewk_View_Script_Execute_Callback_Context):
(runJavaScriptCallback):
(ewk_view_script_execute):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
Added unit test for ewk_view_script_execute.
(scriptExecuteCallback):
(TEST_F):

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

5 years ago[EFL] Merge ewk_view_single into ewk_view
ryuan.choi@samsung.com [Thu, 9 Jan 2014 00:59:16 +0000 (00:59 +0000)]
[EFL] Merge ewk_view_single into ewk_view
https://bugs.webkit.org/show_bug.cgi?id=126508

Reviewed by Gyuyoung Kim.

Source/WebKit:

* PlatformEfl.cmake: Removed ewk_view_single.cpp.

Source/WebKit/efl:

Since ewk_view_tiled is removed at r161134, we don't need to keep
ewk_view_single out of ewk_view.cpp.

This patch moves the logic of ewk_view_single to ewk_view and refactors it.
In addition, replaces 0.00001 to episilon.

* ewk/ewk_view.cpp:
(_ewk_view_smart_add):
(_ewk_view_smart_resize): Merged with the logic of ewk_view_single.
(_ewk_view_screen_move): Moved from ewk_view_single.cpp.
(_ewk_view_scroll_process): Ditto.
(_ewk_view_smart_scrolls_process): Ditto.
(_ewk_view_smart_repaints_process): Ditto.
(_ewk_view_smart_calculate): Removed unnecessary check routine for scrolls_process.
(_ewk_view_smart_zoom_weak_set):
(_ewk_view_smart_zoom_weak_smooth_scale_set):
(ewk_view_base_smart_set): Merged smart method of ewk_view_single.
(ewk_view_single_smart_set):
(_ewk_view_single_smart_class_new):
(ewk_view_single_add):
(ewk_view_bg_color_set):
(ewk_view_pre_render_region):
(ewk_view_scrolls_process):
* ewk/ewk_view.h:
* ewk/ewk_view_private.h: Removed unncessary functions.
* ewk/ewk_view_single.cpp: Removed.

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

5 years ago[EFL] Move efl API test binaries to TestWebKitAPI/EWebKit|EWebKit2
gyuyoung.kim@samsung.com [Thu, 9 Jan 2014 00:35:34 +0000 (00:35 +0000)]
[EFL] Move efl API test binaries to TestWebKitAPI/EWebKit|EWebKit2
https://bugs.webkit.org/show_bug.cgi?id=126615

Reviewed by Martin Robinson.

Now EFL API test binaries created in *bin* directory with other executables.
It would be good to move them to their folder. This patch moves them to
*TestWebKitAPI/EWebKit|EWebKit2* directories.

Source/WebKit:

* PlatformEfl.cmake:

Source/WebKit2:

* PlatformEfl.cmake:

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

5 years ago[EFL] Unreviewed build fix after r161522.
seokju@webkit.org [Wed, 8 Jan 2014 23:37:11 +0000 (23:37 +0000)]
[EFL] Unreviewed build fix after r161522.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformEfl.cmake:

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

5 years agoRemove WKConnectionRef tests
andersca@apple.com [Wed, 8 Jan 2014 22:44:50 +0000 (22:44 +0000)]
Remove WKConnectionRef tests
https://bugs.webkit.org/show_bug.cgi?id=126666

Reviewed by Dan Bernstein.

The WKConnectionRef is poorly designed but thankfully not used anywhere.
Remove the API tests as a first step towards killing the entire thing.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/WKConnection.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/WKConnection_Bundle.cpp: Removed.

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

5 years agoa fractional value of the css letter-spacing property is not rendered as expected
mmaxfield@apple.com [Wed, 8 Jan 2014 22:22:50 +0000 (22:22 +0000)]
a fractional value of the css letter-spacing property is not rendered as expected
https://bugs.webkit.org/show_bug.cgi?id=20606

Reviewed by Simon Fraser.

Source/WebCore:

This turns on fractional letter-spacing and word-spacing CSS values.
It is taken mostly from Blink r153727 and iOS. Updating the relevant
types is all that is necessary

Existing tests have been updated.

* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* platform/graphics/Font.cpp:
(WebCore::Font::Font):
(WebCore::Font::width):
* platform/graphics/Font.h:
(WebCore::Font::wordSpacing):
(WebCore::Font::letterSpacing):
(WebCore::Font::setWordSpacing):
(WebCore::Font::setLetterSpacing):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::wordSpacing):
(WebCore::RenderStyle::letterSpacing):
(WebCore::RenderStyle::setWordSpacing):
(WebCore::RenderStyle::setLetterSpacing):
* rendering/style/RenderStyle.h:

LayoutTests:

Manually verified that these tests are correct after enabling fractional letter-spacing and word spacing

* platform/mac/css1/text_properties/letter_spacing-expected.png:
* platform/mac/css1/text_properties/letter_spacing-expected.txt:
* platform/mac/css1/text_properties/word_spacing-expected.png:
* platform/mac/css1/text_properties/word_spacing-expected.txt:
* platform/mac/fast/text/basic/013-expected.png:
* platform/mac/fast/text/basic/013-expected.txt:
* platform/mac/fast/text/text-letter-spacing-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/text-spacing-01-b-expected.png:
* platform/mac/svg/W3C-SVG-1.1/text-spacing-01-b-expected.txt:
* platform/mac/svg/batik/text/textLayout-expected.txt:
* platform/mac/svg/custom/text-letter-spacing-expected.png:
* platform/mac/svg/custom/text-letter-spacing-expected.txt:
* platform/mac/svg/text/text-spacing-01-b-expected.png:
* platform/mac/svg/text/text-spacing-01-b-expected.txt:

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

5 years agoUnreviewed, rolling out r161512.
zandobersek@gmail.com [Wed, 8 Jan 2014 21:45:36 +0000 (21:45 +0000)]
Unreviewed, rolling out r161512.
http://trac.webkit.org/changeset/161512
https://bugs.webkit.org/show_bug.cgi?id=126655

Broke webkitpy tests (Requested by ap on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2014-01-08

* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__):
(GtkPort.setup_test_run):
(GtkPort._port_specific_expectations_files):
* Scripts/webkitpy/port/leakdetector_valgrind.py: Removed.
* Scripts/webkitpy/port/leakdetector_valgrind_unittest.py: Removed.

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

5 years agoUnreviewed, rolling out r161517.
zandobersek@gmail.com [Wed, 8 Jan 2014 21:38:42 +0000 (21:38 +0000)]
Unreviewed, rolling out r161517.
http://trac.webkit.org/changeset/161517
https://bugs.webkit.org/show_bug.cgi?id=126659

The fix didn't completely remove the problem and is now
standing in the way of the rollout of the offending patch
(Requested by zdobersek on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2014-01-08

* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__):

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

5 years agoAdd WTF::StringView and use it for grammar checking
andersca@apple.com [Wed, 8 Jan 2014 21:19:21 +0000 (21:19 +0000)]
Add WTF::StringView and use it for grammar checking
https://bugs.webkit.org/show_bug.cgi?id=126644

Reviewed by Antti Koivisto.

Source/WebCore:

Use a StringView in TextCheckerClient::checkTextOfParagraph to avoid upconverting strings unnecessarily.

* editing/TextCheckingHelper.cpp:
(WebCore::checkTextOfParagraph):
Pass a StringView to TextCheckerClient::checkTextOfParagraph.

* loader/EmptyClients.h:
Update for TextCheckerClient changes.

* platform/text/TextCheckerClient.h:
Change TextCheckerClient::checkTextOfParagraph to take a StringView.

Source/WebKit/efl:

Update to match WebCore changes.

* WebCoreSupport/EditorClientEfl.h:
(WebCore::EditorClientEfl::checkTextOfParagraph):

Source/WebKit/mac:

* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::checkTextOfParagraph):
Update to match the new signature.

(nsStringWithoutCopying):
New function that creates an NSString that references StringView data
without copying the data. (If this function proves to be useful elsewhere, it could
potentially be added to StringView).

Source/WebKit2:

Use a StringView and remove a FIXME.

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::checkTextOfParagraph):
* WebProcess/WebCoreSupport/WebEditorClient.h:

Source/WTF:

Add a new StringView class which is an immutable reference to either an 8-bit or a 16-bit string.

This makes it easier to pass substrings around without having to either copy string data
or upconvert and use UChar pointers.

The StringView class is very loosely based on the std::string_view class which is proposed for a future version of C++,
see http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3609.html for more details.

* GNUmakefile.list.am:
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/Forward.h:
* wtf/text/StringView.h: Added.
(WTF::StringView::StringView):
(WTF::StringView::empty):
(WTF::StringView::characters8):
(WTF::StringView::characters16):
(WTF::StringView::isEmpty):
(WTF::StringView::length):
(WTF::StringView::is8Bit):
(WTF::StringView::substring):
(WTF::StringView::toString):
(WTF::StringView::toStringWithoutCopying):
(WTF::StringView::encodedCharacters):

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

5 years agoUnreviewed. Attempting to fix webkitpy tests after r161512.
zandobersek@gmail.com [Wed, 8 Jan 2014 21:03:43 +0000 (21:03 +0000)]
Unreviewed. Attempting to fix webkitpy tests after r161512.

* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__): Construct LeakDetectorValgrin only if leak detection is enabled.

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

5 years agoFlaky Test: http/tests/xmlhttprequest/xmlhttprequest-50ms-download-dispatch.html
ap@apple.com [Wed, 8 Jan 2014 20:44:42 +0000 (20:44 +0000)]
Flaky Test: http/tests/xmlhttprequest/xmlhttprequest-50ms-download-dispatch.html
https://bugs.webkit.org/show_bug.cgi?id=52016

* platform/mac/TestExpectations: Mark it as such.

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

5 years ago[WinCairo] Compile error.
commit-queue@webkit.org [Wed, 8 Jan 2014 19:20:17 +0000 (19:20 +0000)]
[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=126534

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-01-08
Reviewed by Brent Fulgham.

* WebKitPrefix.h: Define __STDC_LIMIT_MACROS, so INTMAX_MAX will be defined (needed by std C++ library).

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

5 years ago[GTK] Parse Valgrind xml leak files
brian.holt@samsung.com [Wed, 8 Jan 2014 18:30:12 +0000 (18:30 +0000)]
[GTK] Parse Valgrind xml leak files
https://bugs.webkit.org/show_bug.cgi?id=119446

Reviewed by Alejandro G. Castro.

Parse the xml files generated by Valgrind to yield useful
information about the memory leaks.

* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__):
(GtkPort.setup_test_run): Clear the previous output files before new
run.
(GtkPort.print_leaks_summary):

* Scripts/webkitpy/port/leakdetector_valgrind.py: Added.
Parse the xml files generated by Valgrind and summarise leaks
into an easily understandable list.
(get_text_of):
(get_CDATA_of):
(gather_frames):
(ValgrindError):
(ValgrindError.__init__):
(ValgrindError.__str__):
(ValgrindError.unique_string):
(ValgrindError.error_hash):
(ValgrindError.__hash__):
(ValgrindError.__eq__):
(LeakDetectorValgrind):
(LeakDetectorValgrind.__init__):
(LeakDetectorValgrind._parse_leaks_output):
(LeakDetectorValgrind.leaks_files_in_results_directory):
(LeakDetectorValgrind.clean_leaks_files_from_results_directory):
(LeakDetectorValgrind.parse_and_print_leaks_detail):

* Scripts/webkitpy/port/leakdetector_valgrind_unittest.py: Added.
(make_mock_valgrind_output):
(make_mock_incomplete_valgrind_output):
(make_mock_valgrind_results):
(make_mock_valgrind_results_incomplete):
(make_mock_valgrind_results_empty):
(make_mock_valgrind_results_misformatted):
(LeakDetectorValgrindTest):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_pass):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_incomplete):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_empty):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_misformatted):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_pass):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_incomplete):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_empty):
(LeakDetectorValgrindTest.test_parse_and_print_leaks_detail_misformatted):

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

5 years agoUnreviewed build fix.
bfulgham@apple.com [Wed, 8 Jan 2014 18:29:27 +0000 (18:29 +0000)]
Unreviewed build fix.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing
exports needed for Windows build.

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

5 years agoUnreviewed, rolling out r161427.
commit-queue@webkit.org [Wed, 8 Jan 2014 17:48:04 +0000 (17:48 +0000)]
Unreviewed, rolling out r161427.
http://trac.webkit.org/changeset/161427
https://bugs.webkit.org/show_bug.cgi?id=126645

Emits a stye error on any newly added files (Requested by ap
on #webkit).

* Scripts/webkitpy/style/checkers/cpp.py:
(check_style):
(CppChecker):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_other):

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

5 years agoRemove run-webkit-tests wrapper script as all platform are using NRWT now.
ossy@webkit.org [Wed, 8 Jan 2014 17:14:02 +0000 (17:14 +0000)]
Remove run-webkit-tests wrapper script as all platform are using NRWT now.
https://bugs.webkit.org/show_bug.cgi?id=126580

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2014-01-08
Reviewed by Csaba Osztrogonác.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests): Passing --debug-rwt-logging here instead of the
run-webkit-tests script.
* Scripts/new-run-webkit-tests: Renamed to run-webkit-tests.
* Scripts/run-webkit-tests: Removed, as it was just a temporary hack.

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

5 years agoUnreviewed Windows build fix attempt after r161481.
eric.carlson@apple.com [Wed, 8 Jan 2014 16:17:37 +0000 (16:17 +0000)]
Unreviewed Windows build fix attempt after r161481.

* WebCore.vcxproj/copyForwardingHeaders.cmd:

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

5 years agoUnreviewed GTK gardening.
changseok.oh@collabora.com [Wed, 8 Jan 2014 16:02:32 +0000 (16:02 +0000)]
Unreviewed GTK gardening.

setFileInputFiles.html was removed after r161380. string-replacement-outofmemory.html,
toString-and-valueOf-override.html and exceptions-thrown-in-callbacks.html
were moved into other directory.

* platform/gtk-wk2/TestExpectations:
* platform/gtk/TestExpectations:

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

5 years agoUpdate the list of non-committer u-szeged contributors
ossy@webkit.org [Wed, 8 Jan 2014 15:45:48 +0000 (15:45 +0000)]
Update the list of non-committer u-szeged contributors
https://bugs.webkit.org/show_bug.cgi?id=126640

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2014-01-08
Reviewed by Csaba Osztrogonác.

* Scripts/webkitpy/common/config/contributors.json:

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

5 years agoDeploy RenderPtr in RenderMathMLOperator::updateFromElement().
akling@apple.com [Wed, 8 Jan 2014 15:43:52 +0000 (15:43 +0000)]
Deploy RenderPtr in RenderMathMLOperator::updateFromElement().
<https://webkit.org/b/126628>

Reviewed by Antti Koivisto.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::updateFromElement):

    Use RenderPtr/createRenderer for renderer creation.
    Removed an unnecessary null check (text is always created.)
    Also use RenderStyle::createAnonymousStyleWithDisplay()
    helper to shorten down the code a bit.

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

5 years agoFix some compilation warnings
berto@igalia.com [Wed, 8 Jan 2014 15:24:53 +0000 (15:24 +0000)]
Fix some compilation warnings
https://bugs.webkit.org/show_bug.cgi?id=126635

Reviewed by Csaba Osztrogonác.

Source/WebCore:

Remove code that is no longer being used.

* platform/graphics/cairo/GraphicsContextCairo.cpp:
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
* platform/gtk/PopupMenuGtk.cpp:
* platform/gtk/RedirectedXCompositeWindow.h:

Tools:

* GtkLauncher/main.c:
(createWindow): This function is not supposed to receive any
parameter, yet we are passing one.

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

5 years ago[GTK][WK2] unskip passing unit tests
brian.holt@samsung.com [Wed, 8 Jan 2014 15:23:36 +0000 (15:23 +0000)]
[GTK][WK2] unskip passing unit tests
https://bugs.webkit.org/show_bug.cgi?id=126637

Reviewed by Carlos Garcia Campos.

Unskip TestResources and TestAuthentication unit tests since they
are passing both under Xvfb and X.

* Scripts/run-gtk-tests:
(TestRunner):

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

5 years ago[EFL] Make FTL buildable
commit-queue@webkit.org [Wed, 8 Jan 2014 15:21:27 +0000 (15:21 +0000)]
[EFL] Make FTL buildable
https://bugs.webkit.org/show_bug.cgi?id=125777

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2014-01-08
Reviewed by Csaba Osztrogonác.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

* CMakeLists.txt:
* ftl/FTLOSREntry.cpp:
* ftl/FTLOSRExitCompiler.cpp:
* llvm/library/config_llvm.h:

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

5 years ago[Automake] Scripts for generated build targets do not necessarily produce their output
zandobersek@gmail.com [Wed, 8 Jan 2014 15:13:06 +0000 (15:13 +0000)]
[Automake] Scripts for generated build targets do not necessarily produce their output
https://bugs.webkit.org/show_bug.cgi?id=126378

Reviewed by Carlos Garcia Campos.

Source/JavaScriptCore:

* GNUmakefile.am: Touch the build targets that are generated through helper scripts that don't
assure the output is generated every time the script is invoked, most commonly due to unchanged
input. This assures the build targets are up-to-date and can't be older that their dependencies,
which would result in constant regeneration at every build.

Source/WebCore:

* GNUmakefile.am: Touch the build targets that are generated through helper scripts that don't
assure the output is generated every time the script is invoked, most commonly due to unchanged
* bindings/gobject/GNUmakefile.am: Simply move the gdom-gen-symbols file into the output file
instead of copying it if the contents differ and removing it. This again ensures that the output
file is always newer than its dependencies, even if the input hasn't changed.

Source/WebKit2:

* GNUmakefile.am: Don't pass the -n option to the ln command that links the build's include
directories to actual source directories. This doesn't replace the original symbolic link,
which can lead to the actual link being older than its dependencies and subsequent constant
relinking at every build.

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

5 years agoREGRESSION(r160304): [GTK] Disable libtool fast install
berto@igalia.com [Wed, 8 Jan 2014 14:35:12 +0000 (14:35 +0000)]
REGRESSION(r160304): [GTK] Disable libtool fast install
https://bugs.webkit.org/show_bug.cgi?id=126381

Reviewed by Gustavo Noronha Silva.

.:

Don't disable the libtool fast-install mode unconditionally by
default.

If the fast-install mode is disabled, binaries are generated ready
to use the libraries directly from the build tree. If we use the
GNU linker, those binaries are then relinked when they are
installed.

However, libtool fails to do it properly when an installation
prefix is set with DESTDIR, and ends up installing the libtool
wrappers instead of the actual binaries.

* Source/autotools/SetupLibtool.m4:

Tools:

Disable the libtool fast-install mode in developer/test builds.

In this mode binaries are generated ready to be used directly from
the build tree. Otherwise they would need to be relinked when they
are executed, which can take a lot of resources, particularly in
debug builds.

* Scripts/webkitdirs.pm:
(runAutogenForAutotoolsProjectIfNecessary):

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

5 years agoRemove invalid comments from mathtags.ing
commit-queue@webkit.org [Wed, 8 Jan 2014 14:22:09 +0000 (14:22 +0000)]
Remove invalid comments from mathtags.ing
https://bugs.webkit.org/show_bug.cgi?id=126629

Patch by Frédéric Wang <fred.wang@free.fr> on 2014-01-08
Reviewed by Chris Fleizach.

* mathml/mathtags.in:

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

5 years agoUpdated Brazilian Portuguese translation of WebKitGTK+ - December 30, 2013
gns@gnome.org [Wed, 8 Jan 2014 12:02:15 +0000 (12:02 +0000)]
Updated Brazilian Portuguese translation of WebKitGTK+ - December 30, 2013
https://bugs.webkit.org/show_bug.cgi?id=126315

Patch by Enrico Nicoletto <liverig@gmail.com> on 2014-01-08
Reviewed by Gustavo Noronha.

* pt_BR.po: updated translation.

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

5 years agoRenderMathMLRow::createAnonymousWithParentRenderer() should return RenderPtr.
akling@apple.com [Wed, 8 Jan 2014 11:20:11 +0000 (11:20 +0000)]
RenderMathMLRow::createAnonymousWithParentRenderer() should return RenderPtr.
<https://webkit.org/b/126631>

Reviewed by Antti Koivisto.

* rendering/mathml/RenderMathMLRow.h:
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):

    Tweak to return RenderPtr<RenderMathMLRow> and removed comment(!)
    about how this should return a smart pointer. Also take the
    parent renderer as a RenderMathMLRoot& instead of a RenderObject*
    since that's all we ever pass.

* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::addChild):

    Updated for new createAnonymousWithParentRenderer() signature.

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

5 years agoAX: Make roleValue() return DescriptionListRole for <dl> elements
mario.prada@samsung.com [Wed, 8 Jan 2014 10:58:37 +0000 (10:58 +0000)]
AX: Make roleValue() return DescriptionListRole for <dl> elements
https://bugs.webkit.org/show_bug.cgi?id=126579

Reviewed by Chris Fleizach.

Implement AccessibilityList::roleValue() so it will return
ListRole or DescriptionListRole depending on the type of list.

No new tests needed, as no new functionality was added and ports
should still be exposing the right role for <dl> elements

* accessibility/AccessibilityList.cpp:
(WebCore::AccessibilityList::roleValue): Implemented.
* accessibility/AccessibilityList.h:

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole): Removed extra checks for objects with ListRole role.

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

5 years agocreateMathMLOperator() should return RenderPtr.
akling@apple.com [Wed, 8 Jan 2014 09:47:59 +0000 (09:47 +0000)]
createMathMLOperator() should return RenderPtr.
<https://webkit.org/b/126622>

Reviewed by Antti Koivisto.

* rendering/mathml/RenderMathMLFenced.h:
* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::createMathMLOperator):

    Make this return a RenderPtr<RenderMathMLOperator>.

(WebCore::RenderMathMLFenced::makeFences):
(WebCore::RenderMathMLFenced::addChild):

    Updated for the new createMathMLOperator() signature.

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

5 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 8 Jan 2014 08:45:19 +0000 (08:45 +0000)]
Unreviewed GTK gardening.

* Scripts/run-gtk-tests:
(TestRunner): Skipping the snapshot test case from the TestWebKitWebView test suite.
The test is failing due to issues with Xvfb, with the problem being handled in bug #120404.

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

5 years agoREGRESSION: webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video...
ap@apple.com [Wed, 8 Jan 2014 08:33:37 +0000 (08:33 +0000)]
REGRESSION: webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video-rgb565.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=126624

* platform/mac/TestExpectations: Mark it as such.

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

5 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 8 Jan 2014 08:26:46 +0000 (08:26 +0000)]
Unreviewed GTK gardening.
Add a flaky expectation for perf/accessibility-title-ui-element.html and a failure expectation
for http/tests/media/video-auth.html.

* platform/gtk/TestExpectations:

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

5 years agoREGRESSION (r161195): Acid2 regression tests frequently fail
antti@apple.com [Wed, 8 Jan 2014 07:33:10 +0000 (07:33 +0000)]
REGRESSION (r161195): Acid2 regression tests frequently fail
https://bugs.webkit.org/show_bug.cgi?id=126432

Source/WebCore:

Reviewed by Anders Carlsson.

We would occasionally dump the render tree before the actual last resource on the page was loaded.
The problematic resource is an image loaded by an <object> tag nested as fallback of another <object>.

* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderFallbackContent):

    Force style recalc when rendering fallback content. The current mechanism for triggering the fallback content load
    requires a style recalc.

LayoutTests:

Reviewed by Anders Carlsson.

* TestExpectations: acid2 is no longer flaky.
* fast/overflow/overflow-height-float-not-removed-crash3-expected.txt: whitespace change.

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

5 years agocreateAnonymousMathMLBlock() should return RenderPtr.
akling@apple.com [Wed, 8 Jan 2014 06:42:50 +0000 (06:42 +0000)]
createAnonymousMathMLBlock() should return RenderPtr.
<https://webkit.org/b/126583>

Reviewed by Antti Koivisto.

* rendering/mathml/RenderMathMLBlock.h:
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::createAnonymousMathMLBlock):

    Make this return a RenderPtr<RenderMathMLBlock> and removed the
    EDisplay argument since it was always using the default (FLEX.)

* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::addChild):

    Updated for the new createAnonymousMathMLBlock() signature.

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

5 years agoTeach MediaSessionManager to manage interruptions
eric.carlson@apple.com [Wed, 8 Jan 2014 05:45:55 +0000 (05:45 +0000)]
Teach MediaSessionManager to manage interruptions
https://bugs.webkit.org/show_bug.cgi?id=126530

Reviewed by Sam Weinig.

Source/WebCore:

Tests: media/video-interruption-active-when-element-created.html
       media/video-interruption-with-resume-allowing-play.html
       media/video-interruption-with-resume-not-allowing-play.html

* WebCore.exp.in: Export functions needed by Internals.

Add MediaSession and MediaSessionManager.
* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

Automatically pause/play for interruptions. Move media restriction management to a MediaSession.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Get rid of m_loadInitiatedByUserGesture and m_userStartedPlayback,
    they aren't needed.
(WebCore::HTMLMediaElement::load): Ditto.
(WebCore::HTMLMediaElement::loadInternal): Use the media session to manage restrictions.
(WebCore::HTMLMediaElement::play): Remove redundant iOS code. Postpone playback if called
    during an interruption.
(WebCore::HTMLMediaElement::pause): Remember to not resume playback when it ends if called during
    an interruption.
(WebCore::HTMLMediaElement::potentiallyPlaying): Rearrange code to make it easier to understand.
(WebCore::HTMLMediaElement::couldPlayIfEnoughData): Ditto.
(WebCore::HTMLMediaElement::pausedForUserInteraction): Return true if paused because of an interruption.
(WebCore::HTMLMediaElement::removeBehaviorsRestrictionsAfterFirstUserGesture): Be explicit about
    which restrictions are removed.
(WebCore::HTMLMediaElement::mediaType): MediaSessionManager::<Type> -> MediaSession::<Type>.
(WebCore::HTMLMediaElement::beginInterruption): New.
(WebCore::HTMLMediaElement::endInterruption): Ditto.
* html/HTMLMediaElement.h:

Pulled MediaSessionManagerToken out of MediaSessionManager.cpp, added functionality to manage interruptions.
* platform/audio/MediaSession.cpp: Added.
(WebCore::MediaSession::create):
(WebCore::MediaSession::MediaSession):
(WebCore::MediaSession::~MediaSession):
(WebCore::MediaSession::beginInterruption): Inform client of interruption state change.
(WebCore::MediaSession::endInterruption): Ditto.
* platform/audio/MediaSession.h: Added.

* platform/audio/MediaSessionManager.cpp:
(WebCore::MediaSessionManager::MediaSessionManager): Initialize interruption counter.
(WebCore::MediaSessionManager::has): MediaType is defined in MediaSession.
(WebCore::MediaSessionManager::count): Ditto.
(WebCore::MediaSessionManager::beginInterruption): Inform all clients of interruption start if
    not already in an interruption.
(WebCore::MediaSessionManager::endInterruption): Inform all clients if interruption has ended.
(WebCore::MediaSessionManager::addSession): Renamed from addToken. Set session interruption state.
(WebCore::MediaSessionManager::removeSession): Renamed from removeToken.
* platform/audio/MediaSessionManager.h:

* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::AudioDestinationMac): MediaSessionManagerToken -> MediaSession.
* platform/audio/mac/AudioDestinationMac.h:

* platform/audio/mac/MediaSessionManagerMac.cpp:
(MediaSessionManager::updateSessionState): Ditto.

Make it possible for tests to begin and end interruptions.
* testing/Internals.cpp:
(WebCore::Internals::beginMediaSessionInterruption):
(WebCore::Internals::endMediaSessionInterruption):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit:

* CMakeLists.txt: Add ${WEBCORE_DIR}/platform/animation to WebCore include directories.

Source/WebKit2:

* CMakeLists.txt: Add ${WEBCORE_DIR}/platform/animation to WebCore include directories.

LayoutTests:

* media/video-interruption-active-when-element-created-expected.txt: Added.
* media/video-interruption-active-when-element-created.html: Added.
* media/video-interruption-with-resume-allowing-play-expected.txt: Added.
* media/video-interruption-with-resume-allowing-play.html: Added.
* media/video-interruption-with-resume-not-allowing-play-expected.txt: Added.
* media/video-interruption-with-resume-not-allowing-play.html: Added.

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

5 years agoDoYouEvenBench: Turn BenchmarkRunner into a real class
rniwa@webkit.org [Wed, 8 Jan 2014 03:58:16 +0000 (03:58 +0000)]
DoYouEvenBench: Turn BenchmarkRunner into a real class
https://bugs.webkit.org/show_bug.cgi?id=126613

Reviewed by Stephanie Lewis.

Made BenchmarkRunner an instantiatable class. Made tests.js simply create an array of suite objects
instead of calling BenchmarkRunner.Suite now that we can have mulitple instances of BenchmarkRunner.

* DoYouEvenBench/benchmark.html:
(formatTestName): Moved and renamed from BenchmarkRunner._testName.
(createUIForSuites): Extracted from a giant blob of code.
(startTest): Ditto.
* DoYouEvenBench/resources/benchmark-runner.js:
(BenchmarkRunner): Added.
(BenchmarkRunner.prototype.waitForElement):
(BenchmarkRunner.prototype._removeFrame):
(BenchmarkRunner.prototype._appendFrame):
(BenchmarkRunner.prototype._waitAndWarmUp):
(BenchmarkRunner.prototype._runTest):
(BenchmarkState.prototype.prepareCurrentSuite):
(BenchmarkRunner.prototype.step):
(BenchmarkRunner.prototype._runTestAndRecordResults):
(BenchmarkRunner.prototype._finalize):
* DoYouEvenBench/resources/tests.js:

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

5 years ago[iOS] Clean up some exported headers
aestes@apple.com [Wed, 8 Jan 2014 03:26:02 +0000 (03:26 +0000)]
[iOS] Clean up some exported headers
https://bugs.webkit.org/show_bug.cgi?id=126403

Reviewed by Simon Fraser.

Public header files that are completely excluded on iOS don't need
!TARGET_OS_IPHONE guards since they are already listed in
EXCLUDED_SOURCE_FILE_NAMES.

I also took the opportunity to sort EXCLUDED_SOURCE_FILE_NAMES and to
clean up some #imports.

* Configurations/WebKit.xcconfig:
* Misc/WebCache.h:
* Misc/WebIconDatabasePrivate.h:
* Misc/WebLocalizableStrings.h:
* Misc/WebNSEventExtras.h:
* Misc/WebNSPasteboardExtras.h:
* Misc/WebNSWindowExtras.h:
* Panels/WebPanelAuthenticationHandler.h:
* Plugins/WebPluginsPrivate.h:
* Storage/WebDatabaseManagerPrivate.h:
* WebCoreSupport/WebJavaScriptTextInputPanel.h:
* WebCoreSupport/WebKeyGenerator.h:
* WebCoreSupport/WebSecurityOriginPrivate.h:
* WebView/WebDashboardRegion.h:
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebFrameView.h:
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebResourceLoadDelegatePrivate.h:
* WebView/WebView.h:

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

5 years ago[EFL][WK2] Fix failing ewk_view_page_contents_get() API test
jinwoo7.song@samsung.com [Wed, 8 Jan 2014 02:41:59 +0000 (02:41 +0000)]
[EFL][WK2] Fix failing ewk_view_page_contents_get() API test
https://bugs.webkit.org/show_bug.cgi?id=126609

Reviewed by Gyuyoung Kim.

Compare the amount of bytes in the expected result file with
the size of callback data from the API since the 'Date' field
and the boundaries will be different on each case.
Refered the test case of GTK port.

* UIProcess/API/efl/tests/resources/resultMHTML.mht: Added.
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(EWK2ViewTest::PageContentsAsMHTMLCallback):

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

5 years agoWeb Inspector: Remove leftover 'device metrics' code
seokju@webkit.org [Wed, 8 Jan 2014 02:20:46 +0000 (02:20 +0000)]
Web Inspector: Remove leftover 'device metrics' code
https://bugs.webkit.org/show_bug.cgi?id=126607

Reviewed by Joseph Pecoraro.

Source/WebCore:

No new tests, No changes in behavior.

Removes unused code related to 'device metrics'.

* css/MediaQueryEvaluator.cpp:
(WebCore::device_heightMediaFeatureEval):
(WebCore::device_widthMediaFeatureEval):
* inspector/InspectorClient.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::didLayout):
* inspector/InspectorPageAgent.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::innerHeight):
(WebCore::DOMWindow::innerWidth):
* page/Screen.cpp:
(WebCore::Screen::height):
(WebCore::Screen::width):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processSubtree):

Source/WebKit/blackberry:

Clean up after removing InspectorClient::overrideDeviceMetrics().

* WebCoreSupport/InspectorClientBlackBerry.cpp:
* WebCoreSupport/InspectorClientBlackBerry.h:

Source/WebKit/mac:

* WebKit.order: Update after removing InspectorClient::overrideDeviceMetrics().

Source/WebKit2:

* mac/WebKit2.order: Update after removing InspectorClient::overrideDeviceMetrics().

LayoutTests:

* inspector/styles/override-screen-size-expected.txt: Removed.
* inspector/styles/override-screen-size.html: Removed.

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

5 years agoFix the build. The WebKit2 project copied all of WebKit2/Scripts/webkit2 into WebKit2...
simon.fraser@apple.com [Wed, 8 Jan 2014 01:35:35 +0000 (01:35 +0000)]
Fix the build. The WebKit2 project copied all of WebKit2/Scripts/webkit2 into WebKit2.framework/PrivateHeaders,
but that's bad because there are test result files in there now. Fix by having the project copy specific
.py files into rivateHeaders/webkit2

* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoUnreviewed test fix: Correct whitespace around ]
bfulgham@apple.com [Wed, 8 Jan 2014 01:16:01 +0000 (01:16 +0000)]
Unreviewed test fix: Correct whitespace around ]

* platform/mac/TestExpectations: "Debug]" should be "Debug ]"

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