WebKit-https.git
7 years agoVersioning.
lforschler@apple.com [Sat, 28 Sep 2013 00:03:37 +0000 (00:03 +0000)]
Versioning.

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

7 years agoIndexedDB IDL Refactoring.
beidson@apple.com [Fri, 27 Sep 2013 23:45:27 +0000 (23:45 +0000)]
IndexedDB IDL Refactoring.
https://bugs.webkit.org/show_bug.cgi?id=121996

Reviewed by Alexey Proskuryakov.

This includes:
1 - Leveraging EventTarget.idl inheritance
2 - Removing comments
3 - Reordering to match the spec's IDLs
4 - Removing nonstandard, WebKit-specific methods
5 - Updating interfaces to match the spec (versions are only uint64_t's now...)
6 - Updating implementation code as needed (versions are only uint64_t's now...)

IDL changes:
* Modules/indexeddb/IDBCursor.idl:
* Modules/indexeddb/IDBDatabase.idl:
* Modules/indexeddb/IDBFactory.idl:
* Modules/indexeddb/IDBIndex.idl:
* Modules/indexeddb/IDBKeyRange.idl:
* Modules/indexeddb/IDBObjectStore.idl:
* Modules/indexeddb/IDBRequest.idl:
* Modules/indexeddb/IDBTransaction.idl:
* Modules/indexeddb/IDBVersionChangeEvent.idl:

* Modules/indexeddb/IndexedDB.h: Add new enum to represent version nullness.

Adapt to new IDLs, and also refactor representation of initial, null versioning:
* Modules/indexeddb/IDBCallbacks.h:
(WebCore::IDBCallbacks::onBlocked):
(WebCore::IDBCallbacks::onUpgradeNeeded):

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::version):
(WebCore::IDBDatabase::onVersionChange):
* Modules/indexeddb/IDBDatabase.h:

* Modules/indexeddb/IDBDatabaseCallbacks.h:
* Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
(WebCore::IDBDatabaseCallbacksImpl::onVersionChange):
* Modules/indexeddb/IDBDatabaseCallbacksImpl.h:

* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::open):
(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):
* Modules/indexeddb/IDBFactory.h:

* Modules/indexeddb/IDBMetadata.h:
(WebCore::IDBDatabaseMetadata::IDBDatabaseMetadata):

* Modules/indexeddb/IDBOpenDBRequest.cpp:
(WebCore::IDBOpenDBRequest::create):
(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
(WebCore::IDBOpenDBRequest::onBlocked):
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
* Modules/indexeddb/IDBOpenDBRequest.h:

* Modules/indexeddb/IDBRequest.cpp:
* Modules/indexeddb/IDBRequest.h:

* Modules/indexeddb/IDBTransaction.cpp:
* Modules/indexeddb/IDBTransaction.h:

* Modules/indexeddb/IDBVersionChangeEvent.cpp:
(WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
* Modules/indexeddb/IDBVersionChangeEvent.h:
(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::oldVersion):
(WebCore::IDBVersionChangeEvent::newVersion):

Keep leveldb building with minimal adaptations to the new IDLs,
but note that the LevelDB implementation is now incompatible with the spec:
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStore::getIDBDatabaseMetaData):
(WebCore::objectStoreCursorOptions):
(WebCore::indexCursorOptions):

* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
(WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
(WebCore::IDBDatabaseBackendLevelDB::openInternal):
(WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendLevelDB::processPendingCalls):
(WebCore::IDBDatabaseBackendLevelDB::openConnection):
(WebCore::IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendLevelDB::deleteDatabase):
(WebCore::IDBDatabaseBackendLevelDB::deleteDatabaseFinal):
(WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::perform):

* Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):

* inspector/InspectorIndexedDBAgent.cpp: Update for metadata change.

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

7 years agoCookieStorageShim should be PLATFORM(MAC) guarded
ossy@webkit.org [Fri, 27 Sep 2013 23:40:33 +0000 (23:40 +0000)]
CookieStorageShim should be PLATFORM(MAC) guarded
https://bugs.webkit.org/show_bug.cgi?id=121423

Reviewed by Darin Adler.

Original patch by Kwang Yul Seo <skyul@company100.com>.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):

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

7 years agoUpstream changes to Pasteboard implementation for iOS.
enrica@apple.com [Fri, 27 Sep 2013 23:29:34 +0000 (23:29 +0000)]
Upstream changes to Pasteboard implementation for iOS.
https://bugs.webkit.org/show_bug.cgi?id=121818

Reviewed by Benjamin Poulain.

Source/WebCore:

* WebCore.exp.in:
* editing/Editor.cpp:
(WebCore::Editor::dispatchCPPEvent):
* editing/ios/EditorIOS.mm:
(WebCore::Editor::WebContentReader::addFragment):
(WebCore::Editor::WebContentReader::readWebArchive):
(WebCore::Editor::WebContentReader::readFilenames):
(WebCore::Editor::WebContentReader::readHTML):
(WebCore::Editor::WebContentReader::readRTFD):
(WebCore::Editor::WebContentReader::readRTF):
(WebCore::uniqueURLWithRelativePart):
(WebCore::Editor::WebContentReader::readImage):
(WebCore::Editor::WebContentReader::readURL):
(WebCore::Editor::WebContentReader::readPlainText):
(WebCore::Editor::webContentFromPasteboard):
(WebCore::Editor::pasteWithPasteboard):
(WebCore::Editor::createFragmentAndAddResources):
(WebCore::Editor::createFragmentForImageResourceAndAddResource):
* platform/Pasteboard.h:
* platform/PasteboardStrategy.h:
* platform/PlatformPasteboard.h:
* platform/ios/PasteboardIOS.mm:
(WebCore::PasteboardWebContent::PasteboardWebContent):
(WebCore::PasteboardWebContent::~PasteboardWebContent):
(WebCore::PasteboardImage::PasteboardImage):
(WebCore::PasteboardImage::~PasteboardImage):
(WebCore::Pasteboard::Pasteboard):
(WebCore::Pasteboard::clear):
(WebCore::Pasteboard::readString):
(WebCore::Pasteboard::writeString):
(WebCore::Pasteboard::types):
* platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::changeCount):
(WebCore::PlatformPasteboard::write):
(WebCore::PlatformPasteboard::count):
(WebCore::PlatformPasteboard::readBuffer):
(WebCore::PlatformPasteboard::readString):
(WebCore::PlatformPasteboard::readURL):
* platform/mac/PasteboardMac.mm:
(WebCore::PasteboardWebContent::PasteboardWebContent):
(WebCore::PasteboardWebContent::~PasteboardWebContent):
(WebCore::PasteboardImage::PasteboardImage):
(WebCore::PasteboardImage::~PasteboardImage):
* platform/mac/PlatformPasteboardMac.mm:

Source/WebKit/mac:

* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::writeToPasteboard):
(WebPlatformStrategies::getPasteboardItemsCount):
(WebPlatformStrategies::readBufferFromPasteboard):
(WebPlatformStrategies::readURLFromPasteboard):
(WebPlatformStrategies::readStringFromPasteboard):
(WebPlatformStrategies::changeCount):

Source/WebKit2:

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::decodeSharedBuffer):
* Shared/WebCoreArgumentCoders.h:
* UIProcess/WebContext.h:
* UIProcess/WebContext.messages.in:
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::writeWebContentToPasteboard):
(WebKit::WebContext::writeImageToPasteboard):
(WebKit::WebContext::writeStringToPasteboard):
(WebKit::WebContext::readStringFromPasteboard):
(WebKit::WebContext::readURLFromPasteboard):
(WebKit::WebContext::readBufferFromPasteboard):
(WebKit::WebContext::getPasteboardItemsCount):
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::writeToPasteboard):
(WebKit::WebPlatformStrategies::getPasteboardItemsCount):
(WebKit::WebPlatformStrategies::readBufferFromPasteboard):
(WebKit::WebPlatformStrategies::readURLFromPasteboard):
(WebKit::WebPlatformStrategies::readStringFromPasteboard):
(WebKit::WebPlatformStrategies::changeCount):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

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

7 years ago[Windows] Unreviewed build fix following r156560.
roger_fong@apple.com [Fri, 27 Sep 2013 23:19:17 +0000 (23:19 +0000)]
[Windows] Unreviewed build fix following r156560.

* WebView.h:

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

7 years agoCrash on shape-outside when using calc()
hmuller@adobe.com [Fri, 27 Sep 2013 23:17:34 +0000 (23:17 +0000)]
Crash on shape-outside when using calc()
https://bugs.webkit.org/show_bug.cgi?id=121020

Reviewed by Dirk Schulze.

Source/WebCore:

This change prevents a crash caused by specifying a CSS Shape geometry
Length attribute with a calc() expression. It adds support for converting
Lengths to CSSPrimitive Values, in large part by migrating Blink changes
made to the calc classes since the split. Doing so required a few supporting
changes in some related classes, notably CSSPrimitiveValue.

Tests: fast/shapes/shape-inside/shape-inside-calc-crash.html
       css3/calc/simplification.html

* css/BasicShapeFunctions.cpp:
(WebCore::convertToCSSPrimitiveValue): Effectively use the new CSSPrimtiveValue(length,style) constructor to convert Lengths to CSSValues.
(WebCore::valueForBasicShape): Use the convertToCSSPrimitiveValue() function.
(WebCore::convertToLength): Added the CalculatedConversion convertToLength() flag to enable support for calc() valued Length Shape attributes.
* css/BasicShapeFunctions.h:
* css/CSSCalculationValue.cpp:
(WebCore::hasDoubleValue):
(WebCore::buildCssText):
(WebCore::CSSCalcValue::clampToPermittedRange):
(WebCore::CSSCalcValue::doubleValue):
(WebCore::CSSCalcExpressionNode::~CSSCalcExpressionNode):
(WebCore::CSSCalcPrimitiveValue::create):
(WebCore::CSSCalcPrimitiveValue::toCalcValue):
(WebCore::CSSCalcPrimitiveValue::doubleValue):
(WebCore::CSSCalcPrimitiveValue::computeLengthPx):
(WebCore::CSSCalcPrimitiveValue::primitiveType):
(WebCore::CSSCalcPrimitiveValue::CSSCalcPrimitiveValue):
(WebCore::determineCategory):
(WebCore::isIntegerResult):
(WebCore::CSSCalcBinaryOperation::create):
(WebCore::CSSCalcBinaryOperation::createSimplified):
(WebCore::CSSCalcBinaryOperation::doubleValue):
(WebCore::CSSCalcBinaryOperation::buildCssText):
(WebCore::CSSCalcBinaryOperation::primitiveType):
(WebCore::CSSCalcBinaryOperation::CSSCalcBinaryOperation):
(WebCore::CSSCalcBinaryOperation::getNumberSide):
(WebCore::CSSCalcBinaryOperation::evaluate):
(WebCore::CSSCalcBinaryOperation::evaluateOperator):
(WebCore::CSSCalcExpressionNodeParser::parseValue):
(WebCore::CSSCalcExpressionNodeParser::parseValueTerm):
(WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression):
(WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression):
(WebCore::CSSCalcValue::createExpressionNode):
(WebCore::CSSCalcValue::create):
* css/CSSCalculationValue.h:
(WebCore::CSSCalcExpressionNode::category):
(WebCore::CSSCalcValue::create):
(WebCore::CSSCalcValue::isInt):
(WebCore::CSSCalcValue::permittedValueRange):
(WebCore::CSSCalcValue::expressionNode):
(WebCore::CSSCalcValue::CSSCalcValue):
(WebCore::toCSSCalcValue):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue): Pass the style along to the new valueForBasicShape() function.
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::unitCategory): Made this function public so that CSSCalculationValue could use it.
(WebCore::CSSPrimitiveValue::conversionToCanonicalUnitsScaleFactor): Ditto.
(WebCore::CSSPrimitiveValue::primitiveType): Cleared trailing whitespace.
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
(WebCore::CSSPrimitiveValue::init): The common part of the two Length CSSPrimitiveValue constructors.
(WebCore::CSSPrimitiveValue::computeLengthDouble): Moved the case labels to the left per check-webkit-style.
(WebCore::CSSPrimitiveValue::getStringValue): Ditto.
(WebCore::CSSPrimitiveValue::getDoubleValue): Removed trailing whitespace.
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::create): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
(WebCore::toCSSPrimitiveValue): Check the CSSValue*'s validity with ASSERT_WITH_SECURITY_IMPLICATION before casting to CSSPrimitiveValue*.
* css/CSSValuePool.h:
(WebCore::CSSValuePool::createValue): A new overload that delegates to the new CSSPrimitiveValue(length,style) constructor.
* platform/CalculationValue.h:
(WebCore::CalculationValue::operator==):
(WebCore::CalculationValue::isNonNegative):
(WebCore::CalculationValue::expression):
(WebCore::CalcExpressionNumber::value):
(WebCore::toCalcExpressionNumber):
(WebCore::CalcExpressionLength::CalcExpressionLength):
(WebCore::CalcExpressionLength::length):
(WebCore::toCalcExpressionLength):
(WebCore::CalcExpressionBinaryOperation::leftSide):
(WebCore::CalcExpressionBinaryOperation::rightSide):
(WebCore::CalcExpressionBinaryOperation::getOperator):
(WebCore::toCalcExpressionBinaryOperation):
(WebCore::CalcExpressionBlendLength::CalcExpressionBlendLength):
(WebCore::CalcExpressionBlendLength::from):
(WebCore::CalcExpressionBlendLength::to):
(WebCore::CalcExpressionBlendLength::progress):
(WebCore::toCalcExpressionBlendLength):

LayoutTests:

Specifying a CSS Shape geometry Length attribute with a calc() expression
or looking up the value with getComputedStyle(), caused crashes.

* fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt: Added.
* fast/shapes/shape-inside/shape-inside-calc-crash.html: Added.
* css3/calc/simplification-expected.txt: Added
* css3/calc/simplification.html: Added
* LayoutTests/css3/calc/cssom-expected.txt:

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

7 years agoLayout Test animations/combo-transform-translate+scale.html is flaky
ap@apple.com [Fri, 27 Sep 2013 23:09:03 +0000 (23:09 +0000)]
Layout Test animations/combo-transform-translate+scale.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122040

* platform/mac/TestExpectations: Marking as such.

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

7 years agoLayout Test media/track/track-cue-overlap-snap-to-lines-not-set.html is flaky
ap@apple.com [Fri, 27 Sep 2013 23:05:27 +0000 (23:05 +0000)]
Layout Test media/track/track-cue-overlap-snap-to-lines-not-set.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122039

* platform/mac/TestExpectations: Marking as such.

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

7 years agoanimations/transform-non-accelerated.html is flaky
ap@apple.com [Fri, 27 Sep 2013 23:01:53 +0000 (23:01 +0000)]
animations/transform-non-accelerated.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122038

* platform/mac/TestExpectations: Marking as such.

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

7 years agoREGRESSION(r154219): 30% more malloc memory used on html5-full-render.
akling@apple.com [Fri, 27 Sep 2013 22:34:27 +0000 (22:34 +0000)]
REGRESSION(r154219): 30% more malloc memory used on html5-full-render.
<https://webkit.org/b/122034>

Reviewed by Antti Koivisto.

canExecuteScripts() used to rely on Frame::settings() returning null
when the Frame was disconnected from its Page, and giving Frame its
own handle on the Settings broke this mechanism.

This caused us to hold on for some objects for a bit longer than we
needed to in the run-perf-tests harness, showing up as a massive 30%
regression in malloc memory use.

Fixed it by added an explicit null check of Frame::page().

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

7 years ago[Windows] Unreviewed build fix.
alex.christensen@flexsim.com [Fri, 27 Sep 2013 22:24:29 +0000 (22:24 +0000)]
[Windows] Unreviewed build fix.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Fixed linker symbols I broke last time.

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

7 years agoUpdating bindings test results after KURL->URL rename.
ap@apple.com [Fri, 27 Sep 2013 22:14:56 +0000 (22:14 +0000)]
Updating bindings test results after KURL->URL rename.

Includes were now in the wrong order.

* bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
* bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
* bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
* bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
* bindings/scripts/test/CPP/WebDOMTestException.cpp:
* bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
* bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/ObjC/DOMTestActiveDOMObject.mm:
* bindings/scripts/test/ObjC/DOMTestCallback.mm:
* bindings/scripts/test/ObjC/DOMTestCustomNamedGetter.mm:
* bindings/scripts/test/ObjC/DOMTestEventConstructor.mm:
* bindings/scripts/test/ObjC/DOMTestEventTarget.mm:
* bindings/scripts/test/ObjC/DOMTestException.mm:
* bindings/scripts/test/ObjC/DOMTestInterface.mm:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
* bindings/scripts/test/ObjC/DOMTestTypedefs.mm:

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

7 years agoAdd supporting logic for r156570.
lforschler@apple.com [Fri, 27 Sep 2013 22:05:40 +0000 (22:05 +0000)]
Add supporting logic for r156570.

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

7 years agoUnreviewed, rolling out r156569.
commit-queue@webkit.org [Fri, 27 Sep 2013 22:01:12 +0000 (22:01 +0000)]
Unreviewed, rolling out r156569.
http://trac.webkit.org/changeset/156569
https://bugs.webkit.org/show_bug.cgi?id=122035

broke a lot of mismatch tests (Requested by thorton on
#webkit).

Tools:

* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::PlatformWebView):

LayoutTests:

* platform/mac-wk2/tiled-drawing/window-server-snapshots-work-expected-mismatch.html: Removed.
* platform/mac-wk2/tiled-drawing/window-server-snapshots-work.html: Removed.

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

7 years ago[Windows] Unreviewed build fix for Win64.
alex.christensen@flexsim.com [Fri, 27 Sep 2013 21:54:18 +0000 (21:54 +0000)]
[Windows] Unreviewed build fix for Win64.

Patch by Alex Christensen <alex.christensen@flexsim.com> on 2013-09-27

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Added and fixed 64-bit linker symbols.

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

7 years agoLayout Test media/video-duration-known-after-eos.html is flaky
ap@apple.com [Fri, 27 Sep 2013 21:52:00 +0000 (21:52 +0000)]
Layout Test media/video-duration-known-after-eos.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122033

* platform/mac/TestExpectations: Marked as such.

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

7 years agoGet MediaStreamCenterGStreamer compiling again
commit-queue@webkit.org [Fri, 27 Sep 2013 21:29:27 +0000 (21:29 +0000)]
Get MediaStreamCenterGStreamer compiling again
https://bugs.webkit.org/show_bug.cgi?id=122029

After MediaStream cleanup commit, it was not building anymore.

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-27
Reviewed by Eric Carlson.

No new tests needed.

* platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:

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

7 years agoStoring a reference to MediaStreamTrack in RTCStatsRequest
commit-queue@webkit.org [Fri, 27 Sep 2013 21:18:55 +0000 (21:18 +0000)]
Storing a reference to MediaStreamTrack in RTCStatsRequest
https://bugs.webkit.org/show_bug.cgi?id=122030

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-27
Reviewed by Eric Carlson.

The spec[1] says that the stats is related to a MediaStreamTrack object.
It also says: "Evaluate the need for other selectors than MediaStreamTrack".
So a MediaStreamTrack object is more suitable in this case.

[1]http://dev.w3.org/2011/webrtc/editor/webrtc.html#stats-selector

No new tests needed.

* Modules/mediastream/RTCStatsRequestImpl.cpp:
(WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
(WebCore::RTCStatsRequestImpl::hasSelector):
(WebCore::RTCStatsRequestImpl::track):
* Modules/mediastream/RTCStatsRequestImpl.h:
* platform/mediastream/RTCStatsRequest.h:

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

7 years agoREGRESSION(r156546): 18 media tests broken
ap@apple.com [Fri, 27 Sep 2013 21:15:54 +0000 (21:15 +0000)]
REGRESSION(r156546): 18 media tests broken
https://bugs.webkit.org/show_bug.cgi?id=122021

* platform/mac/TestExpectations: Adding one more test, media/track/track-cue-rendering-vertical.html

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

7 years ago[Mac] Intermittent crash on media/video-controls-captions-trackmenu.html
ap@apple.com [Fri, 27 Sep 2013 21:11:30 +0000 (21:11 +0000)]
[Mac] Intermittent crash on media/video-controls-captions-trackmenu.html
https://bugs.webkit.org/show_bug.cgi?id=110173

This code got rewritten, and the test now just fails. Fixing and re-enabling it
is tracked in a different bug.

* platform/mac/TestExpectations: Removing superfluous entry which was confusing the parser.

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

7 years agoDon't retry failures on Apple MountainLion Release WK1 tester
ap@apple.com [Fri, 27 Sep 2013 20:48:36 +0000 (20:48 +0000)]
Don't retry failures on Apple MountainLion Release WK1 tester
https://bugs.webkit.org/show_bug.cgi?id=122026

Reviewed by Mark Rowe.

* BuildSlaveSupport/build.webkit.org-config/config.json: Added --no-retry-failures
on this bot.

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

7 years agoDon't hardcode builder specific configuration in buildbot master.cfg
ap@apple.com [Fri, 27 Sep 2013 20:47:39 +0000 (20:47 +0000)]
Don't hardcode builder specific configuration in buildbot cfg
https://bugs.webkit.org/show_bug.cgi?id=122023

Reviewed by Mark Rowe.

* BuildSlaveSupport/build.webkit.org-config/config.json: Added an additionalArguments
property to Qt Mountain Lion Release, making it run pixel tests.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests.start): Use additionalArguments.
(RunWebKit2Tests.start): Don't hardcode individual bot behavior here.

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

7 years ago[wk2] WebKitTestRunner's window snapshots are blank with tiled drawing
timothy_horton@apple.com [Fri, 27 Sep 2013 20:47:19 +0000 (20:47 +0000)]
[wk2] WebKitTestRunner's window snapshots are blank with tiled drawing
https://bugs.webkit.org/show_bug.cgi?id=122006
<rdar://problem/15095197>

Reviewed by Dean Jackson.

* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::PlatformWebView):
Layer-back the root view in WebKitTestRunner's window, to work around a bug
where the window server snapshot API returns blank snapshots.

Add a test that ensures that WebKitTestRunner's snapshots are not
completely blank with tiled drawing enabled.

* platform/mac-wk2/tiled-drawing/window-server-snapshots-work-expected-mismatch.html: Added.
* platform/mac-wk2/tiled-drawing/window-server-snapshots-work.html: Added.

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

7 years agoLayout Test fast/animation/request-animation-frame-time-unit.html is flaky
ap@apple.com [Fri, 27 Sep 2013 20:44:38 +0000 (20:44 +0000)]
Layout Test fast/animation/request-animation-frame-time-unit.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122031

* platform/mac/TestExpectations: Marking as such. Dean is going to look into
related issues soon.

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

7 years ago[Nix] Updating Nix trunk files
commit-queue@webkit.org [Fri, 27 Sep 2013 20:25:56 +0000 (20:25 +0000)]
[Nix] Updating Nix trunk files
https://bugs.webkit.org/show_bug.cgi?id=121752

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-27
Reviewed by Benjamin Poulain.

Source/WebCore:

No new tests needed.

* page/nix/EventHandlerNix.cpp:
(WebCore::EventHandler::focusDocumentView):
(WebCore::EventHandler::passWheelEventToWidget):
(WebCore::EventHandler::passMousePressEventToSubframe):
(WebCore::EventHandler::passMouseMoveEventToSubframe):
(WebCore::EventHandler::passMouseReleaseEventToSubframe):
* platform/DragImage.h:
* platform/graphics/GraphicsContext3D.h:
* platform/nix/DragImageNix.cpp:
(WebCore::createDragImageFromImage):
* platform/nix/GamepadsNix.cpp:
(WebCore::sampleGamepads):
* platform/nix/LanguageNix.cpp:
(WebCore::platformLanguage):
* platform/nix/LocalizedStringsNix.cpp:
(WebCore::unacceptableTLSCertificate):
* platform/nix/PasteboardNix.cpp:
(WebCore::Pasteboard::types):
* platform/nix/RenderThemeNix.cpp:
(WebCore::toColor):
(WebCore::themeEngine):
(WebCore::webCanvas):
(WebCore::getWebThemeState):
(WebCore::RenderThemeNix::paintButton):
(WebCore::RenderThemeNix::paintTextField):
(WebCore::RenderThemeNix::paintCheckbox):
(WebCore::RenderThemeNix::paintRadio):
(WebCore::RenderThemeNix::paintMenuList):
(WebCore::RenderThemeNix::paintProgressBar):
(WebCore::RenderThemeNix::paintInnerSpinButton):
(WebCore::RenderThemeNix::paintMeter):

Source/WTF:

* wtf/nix/FeatureDefinesNix.h:

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

7 years ago[WK2][CoordinatedGraphics] fix build after r156560
commit-queue@webkit.org [Fri, 27 Sep 2013 20:06:23 +0000 (20:06 +0000)]
[WK2][CoordinatedGraphics] fix build after r156560
https://bugs.webkit.org/show_bug.cgi?id=122028

Fixing build.

Patch by Ralph Thomas <ralpht@gmail.com> on 2013-09-27
Reviewed by Anders Carlsson.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::paintLayerContents):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

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

7 years agoAttempt to fix Windows build.
timothy@apple.com [Fri, 27 Sep 2013 19:22:44 +0000 (19:22 +0000)]
Attempt to fix Windows build.

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

7 years agoDeoptimize 32-bit deoptimization
fpizlo@apple.com [Fri, 27 Sep 2013 18:49:42 +0000 (18:49 +0000)]
Deoptimize 32-bit deoptimization
https://bugs.webkit.org/show_bug.cgi?id=122025

Reviewed by Oliver Hunt.

Just simplifying a bunch of code. I don't want the old, super-complicated,
deoptimization code to get in the way of changes I'll be making to DFG stack layout.

* bytecode/ValueRecovery.h:
(JSC::ValueRecovery::inGPR):
(JSC::ValueRecovery::isInRegisters):
(JSC::ValueRecovery::gpr):
(JSC::ValueRecovery::dumpInContext):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):

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

7 years agoREGRESSION(r156546): 17 media tests broken
jer.noble@apple.com [Fri, 27 Sep 2013 18:41:46 +0000 (18:41 +0000)]
REGRESSION(r156546): 17 media tests broken
https://bugs.webkit.org/show_bug.cgi?id=122021

Unreviewed gardening; add failing tests to TestExpectations while triaging new failures.

* platform/mac/TestExpectations:

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

7 years agoUse std::unique_ptr for GraphicsLayer creation
andersca@apple.com [Fri, 27 Sep 2013 18:38:51 +0000 (18:38 +0000)]
Use std::unique_ptr for GraphicsLayer creation
https://bugs.webkit.org/show_bug.cgi?id=122020

Reviewed by Antti Koivisto.

Source/WebCore:

* platform/graphics/GraphicsLayer.h:
* platform/graphics/GraphicsLayerFactory.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayer::create):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
(WebCore::CompositingCoordinator::createGraphicsLayer):
* platform/graphics/texmap/coordinated/CompositingCoordinator.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createGraphicsLayer):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::paintIntoLayer):
* rendering/RenderLayerBacking.h:
(WebCore::RenderLayerBacking::hasScrollingLayer):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
* rendering/RenderLayerCompositor.h:

Source/WebKit2:

* UIProcess/mac/RemoteLayerTreeHost.h:
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::getOrCreateLayer):
* WebProcess/WebPage/mac/LayerTreeHostMac.h:
* WebProcess/WebPage/mac/LayerTreeHostMac.mm:
(WebKit::LayerTreeHostMac::paintContents):
(WebKit::LayerTreeHostMac::createPageOverlayLayer):
(WebKit::LayerTreeHostMac::destroyPageOverlayLayer):
* WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
* WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
* WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
* WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::createGraphicsLayer):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::paintContents):
(WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
(WebKit::TiledCoreAnimationDrawingArea::destroyPageOverlayLayer):

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

7 years agoFixed Win64 build after r156184.
alex.christensen@flexsim.com [Fri, 27 Sep 2013 18:36:14 +0000 (18:36 +0000)]
Fixed Win64 build after r156184.
https://bugs.webkit.org/show_bug.cgi?id=121994

Reviewed by Oliver Hunt.

* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupTwoStubArgsGPR):
(JSC::CCallHelpers::setupTwoStubArgsFPR):
Renamed from setupTwoStubArgs.
Visual Studio x64 compiler fails to see that this is an overloaded template function.
(JSC::CCallHelpers::setupStubArguments):
(JSC::CCallHelpers::setupArguments):
(JSC::CCallHelpers::setupArgumentsWithExecState):
Use setupTwoStubArgsGPR or setupTwoStubArgsFPR instead of setupTwoStubArgs.

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

7 years agoScrollbarPainterController should adopt the api to lock overlay scrollbar state
bdakin@apple.com [Fri, 27 Sep 2013 18:34:57 +0000 (18:34 +0000)]
ScrollbarPainterController should adopt the api to lock overlay scrollbar state
https://bugs.webkit.org/show_bug.cgi?id=121928

Reviewed by Sam Weinig.

Source/WebCore:

ScrollbarPainterController should adopt the api to lock overlay scrollbar state.
This will allow the ScrollbarPainterController and ScrollAnimatorMac to have
control over knowing whether or not the scrollbars are currently active, which
will allow us to remove a bunch of functions previously implemented in
ScrollableArea subclasses to answer that question.

ScrollableArea::scrollbarsCanBeActive() is not longer virtual. It used to
implemented on ScrollableArea subclasses, but now ScrollableArea can just get the
information from the ScrollAnimator.
* WebCore.exp.in:

When ScrollableArea subclasses implemented scrollbarsCanBeActive(), they would
check to see if the document was in the page cache. Instead of that model, this
patch adopts a model where ScrollbarPainterController is told directly whether or
not it is active via shouldLockOverlayScrollbarsToHidden(bool).
* dom/Document.cpp:
(WebCore::Document::setInPageCache):

setAnimatorsAreActive() is no longer necessary. The functionality can be bundled
into shouldLockOverlayScrollbarsToHidden(bool).
(WebCore::Document::documentDidResumeFromPageCache):

Remove implementations of scrollbarsCanBeActive(), setAnimatorsAreActive(), and
scrollbarAnimationsAreSuppressed().
* page/FrameView.cpp:
(WebCore::FrameView::notifyPageThatContentAreaWillPaint):
* page/FrameView.h:

setShouldSuppressScrollbarAnimations(bool) now calls
setShouldLockOverlayScrollbars(bool).
* page/Page.cpp:
(WebCore::Page::setShouldSuppressScrollbarAnimations):
(WebCore::Page::setShouldLockOverlayScrollbars):
* page/Page.h:

setIsActive() is now implemented in the ScrollAnimator instead of ScrollableArea
subclasses. finishCurrentScrollAnimations() is replaced by
lockOverlayScrollbarStateToHidden(bool).
* platform/ScrollAnimator.h:
(WebCore::ScrollAnimator::lockOverlayScrollbarStateToHidden):
(WebCore::ScrollAnimator::scrollbarsCanBeActive):

New enum ScrollbarOverlayState.
* platform/ScrollTypes.h:

Go to the animator for both of these functions.
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::lockOverlayScrollbarStateToHidden):
(WebCore::ScrollableArea::scrollbarsCanBeActive):
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::setVisibleScrollerThumbRect):

Three new pieces of ScrollbarPainterController api.
* platform/mac/NSScrollerImpDetails.h:

Instead of asking the ScrollableArea if scrollbars can be active, just find out if
the ScrollbarPaintController has been locked.
* platform/mac/ScrollAnimatorMac.h:
* platform/mac/ScrollAnimatorMac.mm:
(-[WebScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(WebCore::ScrollAnimatorMac::contentAreaWillPaint):
(WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
(WebCore::ScrollAnimatorMac::mouseExitedContentArea):
(WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
(WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
(WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
(WebCore::ScrollAnimatorMac::willStartLiveResize):
(WebCore::ScrollAnimatorMac::contentsResized):
(WebCore::ScrollAnimatorMac::willEndLiveResize):
(WebCore::ScrollAnimatorMac::contentAreaDidShow):
(WebCore::ScrollAnimatorMac::contentAreaDidHide):
(WebCore::ScrollAnimatorMac::didBeginScrollGesture):
(WebCore::ScrollAnimatorMac::didEndScrollGesture):
(WebCore::ScrollAnimatorMac::mayBeginScrollGesture):
(WebCore::ScrollAnimatorMac::lockOverlayScrollbarStateToHidden):
(WebCore::ScrollAnimatorMac::scrollbarsCanBeActive):
(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
(WebCore::ScrollAnimatorMac::updateScrollerStyle):

Remove implementations of scrollbarsCanBeActive() and
scrollbarAnimationsAreSuppressed().
* rendering/RenderLayer.cpp:
* rendering/RenderLayer.h:
* rendering/RenderListBox.cpp:
* rendering/RenderListBox.h:

Source/WebKit2:

This function no longer needs to be implemented by ScrollablArea subclasses.
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/PDF/PDFPlugin.mm:

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

7 years agoMove line grid functionality from RenderBlock into RenderBlockFlow.
hyatt@apple.com [Fri, 27 Sep 2013 18:22:50 +0000 (18:22 +0000)]
Move line grid functionality from RenderBlock into RenderBlockFlow.
https://bugs.webkit.org/show_bug.cgi?id=121502

Reviewed by Dean Jackson.

* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::establishLineGrid):
* rendering/LayoutState.h:
(WebCore::LayoutState::lineGrid):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::willBeDestroyed):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::willBeDestroyed):
(WebCore::RenderBlockFlow::layoutLineGridBox):
* rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
(WebCore::RenderBlockFlow::lineGridBox):
(WebCore::RenderBlockFlow::setLineGridBox):
* rendering/RenderBlockLineLayout.cpp:
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::lineSnapAdjustment):

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

7 years agoRe-indent Settings.h
akling@apple.com [Fri, 27 Sep 2013 17:52:45 +0000 (17:52 +0000)]
Re-indent Settings.h

Rubber-stamped by Anders Carlsson.

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

7 years agoWeb Inspector: Make WebKitGTK+ port work with Eclipse chromedevtools plugin
commit-queue@webkit.org [Fri, 27 Sep 2013 17:42:36 +0000 (17:42 +0000)]
Web Inspector: Make WebKitGTK+ port work with Eclipse chromedevtools plugin
https://bugs.webkit.org/show_bug.cgi?id=121121

Patch by Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk> on 2013-09-27
Reviewed by Gustavo Noronha Silva.

The chromedevtools plugin (http://code.google.com/p/chromedevtools/) requires a specific
json format to connect to the webkit inspector.

The current format is missing some required fields that make the connection with the plugin
fail.

The format expected by the plugin is as follows:
  {
   "title": "Foo",
   "url": "http://foo",
   "devtoolsFrontendUrl": "/Main.html?ws=localhost:9222/devtools/page/1",
   "webSocketDebuggerUrl": "ws://localhost:9222/devtools/page/1"
  }

The current format is missing the entries for "devtoolsFrontendUrl" and
"webSocketDebuggerUrl".

The plugin also sends an HTTP GET request to http://host:port/json instead of
http://host:port/pagelist.json when retrieving the pages list.

This patch fixes the issues by adding support for the missing fields and accepting requests
for "/json" alongside "/pagelist.json".

* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::platformResourceForPath):
Also accept requests for "/json" alongside "pagelist.json".
(WebKit::WebInspectorServer::buildPageList):
Add fields required by chromedevtools plugin.

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

7 years ago[MediaStream API] update SourceInfo object to match spec
eric.carlson@apple.com [Fri, 27 Sep 2013 17:40:55 +0000 (17:40 +0000)]
[MediaStream API] update SourceInfo object to match spec
https://bugs.webkit.org/show_bug.cgi?id=121941

Reviewed by Dean Jackson.

Source/WebCore:

No new tests, existing test updated.

* Modules/mediastream/SourceInfo.cpp:
(WebCore::SourceInfo::kind): Get rid of "none".
* Modules/mediastream/SourceInfo.h:
(WebCore::SourceInfo::sourceId): Renamed from "id".
* Modules/mediastream/SourceInfo.idl:

* platform/mediastream/MediaStreamTrackSourcesRequestClient.h:
(WebCore::TrackSourceInfo::create):
(WebCore::TrackSourceInfo::kind):
(WebCore::TrackSourceInfo::TrackSourceInfo):

* platform/mock/MockMediaStreamCenter.cpp:
(WebCore::MockMediaStreamCenter::getMediaStreamTrackSources): "facing" isn't a part of sourceInfo.
    Return a non-NULL ID because a source must always have one.

LayoutTests:

* fast/mediastream/MediaStreamTrack-getSources-expected.txt:
* fast/mediastream/MediaStreamTrack-getSources.html:

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

7 years agoProvide 2D Matrix decomposition for animation
dino@apple.com [Fri, 27 Sep 2013 17:26:05 +0000 (17:26 +0000)]
Provide 2D Matrix decomposition for animation
https://bugs.webkit.org/show_bug.cgi?id=112824
<rdar://problem/15091882>

Reviewed by Eric Carlson (and Ian Henderson offline).

Source/WebCore:

Implement a new 2d matrix blend, which is triggered
when animating between two affine 3d matrices. This
is intended to be the official algorithm that gets
put into the W3C Transforms specification.

The old code is renamed with a 4 prefix (indicating
it is a blend between 3d matrices using quaternions),
and new methods and structures for 2d blending were added.

I also took the opportunity to clean up a lot of
bad WebKit style.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::maxScaleFromTransform): Use 3d decomposition.
* platform/graphics/transforms/PerspectiveTransformOperation.cpp:
(WebCore::PerspectiveTransformOperation::blend): Ditto.
* platform/graphics/transforms/RotateTransformOperation.cpp:
(WebCore::RotateTransformOperation::blend): Ditto.

* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::decompose2): New method to decompose an affine 3d matrix
into X/Y scale + translate, a rotation angle, plus some extracted
a,b,c,d fields from the affine section.
(WebCore::decompose4): New name for the old function.
(WebCore::TransformationMatrix::blend2): Perform linear interpolation
between two 2d decompositions.
(WebCore::TransformationMatrix::blend4): New name for the old function.
(WebCore::TransformationMatrix::blend): Call blend2 or blend4 depending
on the type of matrix.
(WebCore::TransformationMatrix::decompose2): Calls into the decompose2
method above.
(WebCore::TransformationMatrix::decompose4): New name.
(WebCore::TransformationMatrix::recompose2): Recomposes a 3d matrix from
a 2d decomposition.
(WebCore::TransformationMatrix::recompose4): New name.
* platform/graphics/transforms/TransformationMatrix.h: All the changes
for the new methods above.

LayoutTests:

This test was only exercising the fact that our
software decomposition did not match our hardware
decomposition (although that required visual inspection).
Now that our 2d decomposition is correct, update the
test and its expected result.

* animations/transform-non-accelerated-expected.txt:
* animations/transform-non-accelerated.html:

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

7 years agoAttempt to fix windows build.
timothy@apple.com [Fri, 27 Sep 2013 17:24:40 +0000 (17:24 +0000)]
Attempt to fix windows build.

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

7 years ago[GTK] GTK does not expose heading level correctly. Was: accessibility/heading-level...
mario@webkit.org [Fri, 27 Sep 2013 16:59:49 +0000 (16:59 +0000)]
[GTK] GTK does not expose heading level correctly. Was: accessibility/heading-level.html is failing
https://bugs.webkit.org/show_bug.cgi?id=106924

Reviewed by Chris Fleizach.

Tools:

Consider headings levels as values to be returned in intValue()
both in DRT and WKTR, so we can share more tests with other ports.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::intValue): Consider headings too.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::intValue): Ditto.

LayoutTests:

Removed accesibility/heading-level.html from failure expectations.

* platform/gtk/TestExpectations: Removed test now passing.

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

7 years agorename KURL to URL
darin@apple.com [Fri, 27 Sep 2013 16:39:41 +0000 (16:39 +0000)]
rename KURL to URL
https://bugs.webkit.org/show_bug.cgi?id=16214

Reviewed by Andreas Kling.

Source/WebCore:

* many files: Renamed, using script.

Source/WebKit:

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Let the script to try to rename here.

Source/WebKit/blackberry:

* many files: Renamed, using script.

Source/WebKit/efl:

* many files: Renamed, using script.

Source/WebKit/gtk:

* many files: Renamed, using script.

Source/WebKit/mac:

* many files: Renamed, using script.

Source/WebKit/qt:

* many files: Renamed, using script.

Source/WebKit/win:

* many files: Renamed, using script.

Source/WebKit/wince:

* many files: Renamed, using script.

Source/WebKit2:

* many files: Renamed, using script.

Tools:

* many files: Renamed, using script.

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

7 years agoLLInt alignment problem on ARM in debug mode
rgabor@webkit.org [Fri, 27 Sep 2013 16:37:45 +0000 (16:37 +0000)]
LLInt alignment problem on ARM in debug mode
https://bugs.webkit.org/show_bug.cgi?id=122012

Reviewed by Michael Saboff.

Force GCC to put the LLInt code to .text section.

* llint/LowLevelInterpreter.cpp:

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

7 years ago Fix Python scripts test failures.
darin@apple.com [Fri, 27 Sep 2013 16:34:54 +0000 (16:34 +0000)]
    Fix Python scripts test failures.

        * Scripts/webkitpy/style/checkers/cpp.py:
        (_FunctionState.modifiers_and_return_type): Added this back. Used only by tests
        now, not by the checker itself.

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

7 years agoRemove unused method parameters from TupleCoder.
galpeter@inf.u-szeged.hu [Fri, 27 Sep 2013 16:12:24 +0000 (16:12 +0000)]
Remove unused method parameters from TupleCoder.
https://bugs.webkit.org/show_bug.cgi?id=122009

Reviewed by Anders Carlsson.

In case of TupleCoder<0, Elements...> the parameter
names for encoder, decoder and tuple are not used.
By removing the paramter names the unusued paramter
warning will disappear.

* Platform/CoreIPC/Arguments.h:

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

7 years ago[Mac] Implement the media controls in JavaScript.
jer.noble@apple.com [Fri, 27 Sep 2013 16:05:05 +0000 (16:05 +0000)]
[Mac] Implement the media controls in JavaScript.
https://bugs.webkit.org/show_bug.cgi?id=120895

Reviewed by Dean Jackson.

Source/JavaScriptCore:

Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Re-implement the existing MediaControls constellation of classes in JavaScript
and CSS. This will allow different ports to configure their controls without
dependencies on the layout requirements of any other port's controls.

Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT:
* Configurations/FeatureDefines.xcconfig:

Add new source files to the project:
* DerivedSources.cpp:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

Add a new class MediaControlsHost which the script controls can use to
communicate with the HTMLMediaElement without exposing private interfaces
to web facing scripts:
* Modules/mediacontrols/MediaControlsHost.cpp: Added.
(WebCore::MediaControlsHost::automaticKeyword): Static method.
(WebCore::MediaControlsHost::forcedOnlyKeyword): Ditto.
(WebCore::MediaControlsHost::alwaysOnKeyword): Ditto.
(WebCore::MediaControlsHost::create): Simple factory.
(WebCore::MediaControlsHost::MediaControlsHost): Simple constructor.
(WebCore::MediaControlsHost::~MediaControlsHost): Simple destructor.
(WebCore::MediaControlsHost::sortedTrackListForMenu): Pass through to CaptionUserPreferences.
(WebCore::MediaControlsHost::displayNameForTrack): Ditto.
(WebCore::MediaControlsHost::captionMenuOffItem): Pass through to TextTrack.
(WebCore::MediaControlsHost::captionMenuAutomaticItem): Ditto.
(WebCore::MediaControlsHost::captionDisplayMode): Pass through to CaptionUserPreferences.
(WebCore::MediaControlsHost::setSelectedTextTrack): Pass through to HTMLMediaElement.
(WebCore::MediaControlsHost::textTrackContainer): Lazily create a MediaControlTextTrackContainerElement.
(WebCore::MediaControlsHost::updateTextTrackContainer): Pass through to MediaControlTextTrackContainerElement.
* Modules/mediacontrols/MediaControlsHost.h: Added.
* Modules/mediacontrols/MediaControlsHost.idl: Added.
* Modules/mediacontrols/mediaControlsApple.css: Added.

Add convenience methods for adding a MediaControlsHost to a VM.
* bindings/js/ScriptObject.cpp:
(WebCore::ScriptGlobalObject::set):
* bindings/js/ScriptObject.h:

Add the new controller .js implementation:
* Modules/mediacontrols/mediaControlsApple.js: Added.
(createControls): Global method to create a new Controller object.
(Controller): Constructor. Create and configure the default set of controls.
(Controller.prototype.addListeners): Adds event listeners to the this.video object.
(Controller.prototype.removeListeners): Removes listeners from same.
(Controller.prototype.handleEvent): Makes Controller an EventHandler, making registration and
        deregistration simpler.
(Controller.prototype.createBase): Creates the base controls object and the text track container.
(Controller.prototype.createControls): Creates the controls panel object and controller UI.
(Controller.prototype.setControlsType): Switches between Full Screen and Inline style of controller.
(Controller.prototype.disconnectControls): Disconnects all UI elements from the DOM.
(Controller.prototype.configureInlineControls): Configures existing controls for Inline mode.
(Controller.prototype.configureFullScreenControls): Ditto, for Full Screen Mode.

Add listeners for HTMLMediaElement events:
(Controller.prototype.onloadstart): Update the status display.
(Controller.prototype.onerror): Ditto.
(Controller.prototype.onabort): Ditto.
(Controller.prototype.onsuspend): Ditto.
(Controller.prototype.onprogress): Ditto.
(Controller.prototype.onstalled): Ditto.
(Controller.prototype.onwaiting): Ditto.
(Controller.prototype.onreadystatechange): Ditto.
(Controller.prototype.ontimeupdate): Update the timeline and time displays.
(Controller.prototype.ondurationchange): Ditto.
(Controller.prototype.onplaying): Update the play button.
(Controller.prototype.onplay): Ditto.
(Controller.prototype.onpause): Ditto.
(Controller.prototype.onratechange): Ditto.
(Controller.prototype.onvolumechange): Update the volume and mute UI.
(Controller.prototype.ontexttrackchange): Update the text track container and captions button.
(Controller.prototype.ontexttrackadd): Ditto.
(Controller.prototype.ontexttrackremove): Ditto.
(Controller.prototype.ontexttrackcuechange): Ditto.
(Controller.prototype.onfullscreenchange): Reconfigure the controls.

Add listeners for UI element events:
(Controller.prototype.onwrappermousemove): Show the controls and start the hide timer.
(Controller.prototype.onwrappermouseout): Hide the controls and stop the hide timer.
(Controller.prototype.onrewindbuttonclicked): Rewind.
(Controller.prototype.onplaybuttonclicked): Toggle pause.
(Controller.prototype.ontimelinechange): Update the currentTime.
(Controller.prototype.ontimelinedown):
(Controller.prototype.ontimelineup):
(Controller.prototype.ontimelinemouseover): Show the thumbnail view if available.
(Controller.prototype.ontimelinemouseout): Hide same.
(Controller.prototype.ontimelinemousemove): Move the thumbnail view.
(Controller.prototype.onmutebuttonclicked): Mute audio.
(Controller.prototype.onminbuttonclicked): Increase volume to max.
(Controller.prototype.onmaxbuttonclicked): Decrease volume to min.
(Controller.prototype.onvolumesliderchange): Update the current volume.
(Controller.prototype.oncaptionbuttonclicked): Show or hide the track menu.
(Controller.prototype.onfullscreenbuttonclicked): Enter or exit fullscreen.
(Controller.prototype.oncontrolschange): Show or hide the controls panel.
(Controller.prototype.onseekbackmousedown): Start seeking and enable the seek timer.
(Controller.prototype.onseekbackmouseup): Stop seeking and disable the seek timer.
(Controller.prototype.onseekforwardmousedown): Start seekind and enable the seek timer.
(Controller.prototype.onseekforwardmouseup): Stop seekind and disable the seek timer.

Add action methods (which are mostly self explanatory):
(Controller.prototype.updateDuration):
(Controller.prototype.updatePlaying):
(Controller.prototype.showControls):
(Controller.prototype.hideControls):
(Controller.prototype.removeControls):
(Controller.prototype.addControls):
(Controller.prototype.updateTime):
(Controller.prototype.updateReadyState):
(Controller.prototype.setStatusHidden):
(Controller.prototype.updateThumbnailTrack):
(Controller.prototype.updateCaptionButton):
(Controller.prototype.updateCaptionContainer):
(Controller.prototype.buildCaptionMenu):
(Controller.prototype.captionItemSelected):
(Controller.prototype.destroyCaptionMenu):
(Controller.prototype.updateVolume):

Add utility methods:
(Controller.prototype.isFullScreen):
(Controller.prototype.canPlay):
(Controller.prototype.nextRate):
(Controller.prototype.seekBackFaster):
(Controller.prototype.seekForwardFaster):
(Controller.prototype.formatTime):
(Controller.prototype.trackHasThumbnails):

Add the stylesheet for the javascript controls (which are mostly) copied from
the (deleted) mediaControlsQuickTime.css and fullscreenQuickTime.css files:
* Modules/mediacontrols/mediaControlsApple.css: Added.
* css/fullscreenQuickTime.css: Removed.
* css/mediaControlsQuickTime.css: Removed.

Inject new stylesheets into UA sheets:
* css/CSSDefaultStyleSheets.cpp:
(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

Use the new javascript controls rather than MediaControls:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::childShouldCreateRenderer): Use the javascript controls if available.
(WebCore::HTMLMediaElement::updateTextTrackDisplay): Ditto.
(WebCore::HTMLMediaElement::mediaControls): Ditto.
(WebCore::HTMLMediaElement::hasMediaControls): Ditto.
(WebCore::HTMLMediaElement::createMediaControls): Ditto.
(WebCore::HTMLMediaElement::configureMediaControls): Ditto.
(WebCore::HTMLMediaElement::configureTextTrackDisplay): Ditto.
(WebCore::HTMLMediaElement::ensureIsolatedWorld): Create a new VM for the controls script.
(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript): Inject the media controls script into the VM.
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Inject the MediaControlsHost into the VM and call
        the scripts global factory function.
* html/HTMLMediaElement.h:

Remove most of the drawing code from RenderThemeMac and RenderThemeWin and
add accessors for the new .js and .css file data:
* rendering/RenderTheme.h:
(WebCore::RenderTheme::mediaControlsStyleSheet): Empty virtual method.
(WebCore::RenderTheme::mediaControlsScript): Ditto.
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::mediaControlsStyleSheet): Add accessor for mediaControlsApple.css.
(WebCore::RenderThemeMac::mediaControlsScript): Add accessor for mediaControlsApple.js.
(WebCore::RenderThemeMac::adjustSliderThumbSize): Remove the call to adjustMediaSliderThumbSize.
* rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::mediaControlsStyleSheet):
(WebCore::RenderThemeWin::mediaControlsScript):
* rendering/RenderThemeWin.h:

Source/WebKit/mac:

Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT.

* wtf/FeatureDefines.h:

LayoutTests:

Rebaseline changed tests and add new (failing) tests to
TestExpectations.

* media/audio-delete-while-slider-thumb-clicked.html:
* platform/mac/TestExpectations:
* platform/mac/fast/hidpi/video-controls-in-hidpi-expected.png:
* platform/mac/fast/hidpi/video-controls-in-hidpi-expected.txt:
* platform/mac/fast/layers/video-layer-expected.png:
* platform/mac/fast/layers/video-layer-expected.txt:
* platform/mac/fullscreen/video-controls-override-expected.txt: Added.
* platform/mac/media/audio-controls-rendering-expected.png:
* platform/mac/media/audio-controls-rendering-expected.txt:
* platform/mac/media/controls-after-reload-expected.png:
* platform/mac/media/controls-after-reload-expected.txt:
* platform/mac/media/controls-strict-expected.png:
* platform/mac/media/controls-strict-expected.txt:
* platform/mac/media/controls-styling-strict-expected.png:
* platform/mac/media/controls-styling-strict-expected.txt:
* platform/mac/media/controls-without-preload-expected.png:
* platform/mac/media/controls-without-preload-expected.txt:
* platform/mac/media/media-controls-clone-expected.png:
* platform/mac/media/media-controls-clone-expected.txt:
* webarchive/loading/video-in-webarchive-expected.txt:

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

7 years ago[css-shapes] Shapes are not resolved the same way in shape-inside and clip-path
bjonesbe@adobe.com [Fri, 27 Sep 2013 15:55:38 +0000 (15:55 +0000)]
[css-shapes] Shapes are not resolved the same way in shape-inside and clip-path
https://bugs.webkit.org/show_bug.cgi?id=121922

Reviewed by Andreas Kling.

Source/WebCore:

Fix computation of a percentage radius for circle shape-outside to
match the CSS Shapes spec.

Test: csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001.html

* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape):

LayoutTests:

Add new test for circular shape-outside with percentage radius.

Update the nested container with unresolved height test because with a
circle it isn't really testing just for unresolved height behavior.

* csswg/contributors/adobe/submitted/shapes/shape-outside/resources/w3c-import.log:
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001-expected.html: Added.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001.html: Added.
* csswg/contributors/adobe/submitted/shapes/shape-outside/w3c-import.log:
* fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height-expected.html:
* fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html:

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

7 years agoUnrehued mac-lion rebaseline.
akling@apple.com [Fri, 27 Sep 2013 15:34:11 +0000 (15:34 +0000)]
Unrehued mac-lion rebaseline.

* platform/mac-lion/js/dom/global-constructors-attributes-expected.txt:

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

7 years agoAdd empty MainFrame class
darin@apple.com [Fri, 27 Sep 2013 15:09:01 +0000 (15:09 +0000)]
Add empty MainFrame class
https://bugs.webkit.org/show_bug.cgi?id=121770

Reviewed by Andreas Kling.

Source/WebCore:

For now, MainFrame simply derives from Frame and adds nothing.
Next, we will make each Frame point back to its MainFrame.

* CMakeLists.txt: Added MainFrame.cpp/h.
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.exp.in: Ditto.
* WebCore.vcxproj/WebCore.vcxproj: Ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.

* page/Frame.cpp:
(WebCore::Frame::Frame): Use references instead of pointers for constructor.
(WebCore::Frame::create): Pass references instead of pointers to constructor.
* page/Frame.h: Made constructor protected instead of private, and marked
destructor virtual explicitly. Also marked virtual functions OVERRIDE and FINAL.

* page/MainFrame.cpp: Added.
* page/MainFrame.h: Added.

* page/Page.cpp:
(WebCore::Page::Page): Use MainFrame::create instead of Frame::create.
(WebCore::Page::frameIsMainFrame): Moved here, no longer inline.
(WebCore::Page::renderTreeSize): Use const Frame* instead of Frame*.
(WebCore::Page::checkSubframeCountConsistency): Ditto.
* page/Page.h: Changed mainFrame() to return MainFrame& and m_mainFrame to
be a RefPtr<MainFrame>.

* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
* bindings/js/PageScriptDebugServer.cpp:
* bindings/js/ScriptProfiler.cpp:
* bindings/js/ScriptState.cpp:
* css/MediaQueryEvaluator.cpp:
* dom/Document.cpp:
* history/CachedFrame.cpp:
* history/CachedPage.cpp:
* history/PageCache.cpp:
* html/HTMLPlugInImageElement.cpp:
* inspector/InspectorAgent.cpp:
* inspector/InspectorCanvasAgent.cpp:
* inspector/InspectorClient.cpp:
* inspector/InspectorDOMAgent.cpp:
* inspector/InspectorFrontendClientLocal.cpp:
* inspector/InspectorFrontendHost.cpp:
* inspector/InspectorInputAgent.cpp:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorOverlay.cpp:
* inspector/InspectorPageAgent.cpp:
* inspector/PageRuntimeAgent.cpp:
* loader/FrameLoader.cpp:
* loader/HistoryController.cpp:
* loader/archive/mhtml/MHTMLArchive.cpp:
* page/AutoscrollController.cpp:
* page/Chrome.cpp:
* page/ContextMenuController.cpp:
* page/DOMWindow.cpp:
* page/DragController.cpp:
* page/EventHandler.cpp:
* page/FocusController.cpp:
* page/FrameTree.cpp:
* page/FrameView.cpp:
* page/GestureTapHighlighter.cpp:
* page/PageGroup.cpp:
* page/PageGroupLoadDeferrer.cpp:
* page/PageSerializer.cpp:
* page/PageThrottler.cpp:
* page/Settings.cpp:
* page/SpatialNavigation.cpp:
* page/mac/DragControllerMac.mm:
* page/mac/PageMac.cpp:
* page/scrolling/ScrollingCoordinator.cpp:
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
* plugins/DOMMimeType.cpp:
* storage/StorageEventDispatcher.cpp:
* svg/graphics/SVGImage.cpp:
* testing/InternalSettings.cpp:
* testing/Internals.cpp:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit/efl:

* WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
* WebCoreSupport/InspectorClientEfl.cpp:
* ewk/ewk_view.cpp:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit/gtk:

* WebCoreSupport/AcceleratedCompositingContextGL.cpp:
* WebCoreSupport/ChromeClientGtk.cpp:
* WebCoreSupport/FrameLoaderClientGtk.cpp:
* WebCoreSupport/GtkAdjustmentWatcher.cpp:
* webkit/webkitwebframe.cpp:
* webkit/webkitwebview.cpp:
* webkit/webkitviewportattributes.cpp:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit/mac:

* WebCoreSupport/WebDragClient.mm:
* WebCoreSupport/WebInspectorClient.mm:
* WebCoreSupport/WebPlatformStrategies.mm:
* WebView/WebFrame.mm:
* WebView/WebHTMLView.mm:
* WebView/WebView.mm:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit/qt:

* Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:
* Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp:
* Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp:
* Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:
* Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit/win:

* win/WebCoreSupport/WebDragClient.cpp:
* win/WebCoreSupport/WebContextMenuClient.cpp:
* win/WebDropSource.cpp:
* win/WebFrame.cpp:
* win/WebView.cpp:
Include MainFrame.h instead of Frame.h as needed.

Source/WebKit2:

* WebProcess/FullScreen/WebFullScreenManager.cpp:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
* WebProcess/Plugins/PluginView.cpp:
* WebProcess/Storage/StorageAreaMap.cpp:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
* WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
* WebProcess/WebPage/FindController.cpp:
* WebProcess/WebPage/PageOverlay.cpp:
* WebProcess/WebPage/WebInspector.cpp:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:
* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
* WebProcess/WebPage/mac/LayerTreeHostMac.mm:
* WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
* WebProcess/WebPage/mac/WebPageMac.mm:
Include MainFrame.h instead of Frame.h as needed.

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

7 years agoAdd toWebKitCSS*Value functions to cast from CSSValue
gyuyoung.kim@samsung.com [Fri, 27 Sep 2013 14:31:42 +0000 (14:31 +0000)]
Add toWebKitCSS*Value functions to cast from CSSValue
https://bugs.webkit.org/show_bug.cgi?id=121776

Reviewed by Andreas Kling.

CSS_VALUE_TYPE_CASTS can't cover WebKitCSS*Value classes. So, this patch adds toWebKitCSS*Value manually.

No new tests, no behavior change.

* css/CSSValue.cpp:
(WebCore::CSSValue::destroy):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
(WebCore::StyleResolver::createFilterOperations):
* css/TransformFunctions.cpp:
(WebCore::transformsForValue):
* css/WebKitCSSArrayFunctionValue.h:
(WebCore::toWebKitCSSArrayFunctionValue):
* css/WebKitCSSFilterValue.h:
(WebCore::toWebKitCSSFilterValue):
* css/WebKitCSSMatFunctionValue.h:
(WebCore::toWebKitCSSMatFunctionValue):
* css/WebKitCSSMixFunctionValue.h:
(WebCore::toWebKitCSSMixFunctionValue):
* css/WebKitCSSSVGDocumentValue.h:
(WebCore::toWebKitCSSSVGDocumentValue):
* css/WebKitCSSShaderValue.h:
(WebCore::toWebKitCSSShaderValue):
* css/WebKitCSSTransformValue.h:
(WebCore::toWebKitCSSTransformValue):

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

7 years ago[GTK][WK2] Logging of accessibility events is not disabled between tests
commit-queue@webkit.org [Fri, 27 Sep 2013 13:48:47 +0000 (13:48 +0000)]
[GTK][WK2] Logging of accessibility events is not disabled between tests
https://bugs.webkit.org/show_bug.cgi?id=121957

Patch by Denis Nomiyama <d.nomiyama@samsung.com> on 2013-09-27
Reviewed by Mario Sanchez Prada.

Tools:

Fixed an issue in AccessibilityNotificationHandler where the destructor
was not disconnecting accessibility event callbacks if logging was on.
The decision of disconnecting events can solely rely on the existence of
notification handlers because logging uses the global notification
handler.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks): Fixed
disconnection when logging is on.

LayoutTests:

Removed some accessibility tests from the expectations file that were
failing before this fix.

* platform/gtk-wk2/TestExpectations:

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

7 years agoPass VM instead of ExecState to JSDateMath functions.
akling@apple.com [Fri, 27 Sep 2013 13:40:59 +0000 (13:40 +0000)]
Pass VM instead of ExecState to JSDateMath functions.
<https://webkit.org/b/121997>

Reviewed by Geoffrey Garen.

The JSC date math functions only need the VM, so pass that from
callers instead of the whole ExecState.

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

7 years ago[EFL] editing/selection/fake-doubleclick.html rebaseline after r140111
commit-queue@webkit.org [Fri, 27 Sep 2013 13:31:02 +0000 (13:31 +0000)]
[EFL] editing/selection/fake-doubleclick.html rebaseline after r140111
https://bugs.webkit.org/show_bug.cgi?id=121831

Unreviewed EFL gardening.

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2013-09-27

* platform/efl-wk2/TestExpectations:
* platform/efl/editing/selection/fake-doubleclick-expected.txt:

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

7 years agoAdd general CMakeLists.txt for DRT
paroga@webkit.org [Fri, 27 Sep 2013 13:01:32 +0000 (13:01 +0000)]
Add general CMakeLists.txt for DRT
https://bugs.webkit.org/show_bug.cgi?id=119268

Reviewed by Gyuyoung Kim.

The new file allows better sharing between ports.

* CMakeLists.txt:
* DumpRenderTree/CMakeLists.txt: Added.
* DumpRenderTree/PlatformEfl.cmake: Added.
* DumpRenderTree/efl/CMakeLists.txt: Removed.

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

7 years agoUnexpected word wrapping for wrapped content then raw content.
zalan@apple.com [Fri, 27 Sep 2013 12:47:52 +0000 (12:47 +0000)]
Unexpected word wrapping for wrapped content then raw content.
https://bugs.webkit.org/show_bug.cgi?id=121130

Reviewed by Darin Adler.

When deciding whether a line is considered empty, we need to check if the current
object is fully responsible for the currently uncommitted width. It helps differentiating
<span></span><span>abcd</span> from <span>a</span><span>bcd</span>, where in the first
case when we hit the second <span> the line is still considered empty, as opposed to the
second example.
This patch introduces a map to keep track of the uncommitted widths.

Source/WebCore:

Test: fast/css/unexpected-word-wrapping-with-non-empty-spans.html

* rendering/LineWidth.cpp:
(WebCore::LineWidth::uncommittedWidthForObject):
(WebCore::LineWidth::addUncommittedWidth):
* rendering/LineWidth.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::LineBreaker::nextSegmentBreak):

LayoutTests:

* fast/css/unexpected-word-wrapping-with-non-empty-spans-expected.html: Added.
* fast/css/unexpected-word-wrapping-with-non-empty-spans.html: Added.

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

7 years ago[Qt] Fix force_static_libs_as_shared in WebKit2
allan.jensen@digia.com [Fri, 27 Sep 2013 12:16:23 +0000 (12:16 +0000)]
[Qt] Fix force_static_libs_as_shared in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=121961

Reviewed by Csaba Osztrogon√°c.

Source/WebKit/qt:

* WebCoreSupport/QWebFrameAdapter.h:

Source/WebKit2:

Do not add strict ordering for webkit2qml. It is not needed and causes
Target.pri to be built out of order.

* WebKit2.pro:

Tools:

Reenable force_static_libs_as_shared when building WebKit2.

* qmake/mkspecs/features/default_post.prf:

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

7 years ago[Qt] Mock implementations of positioning and orientation not used
allan.jensen@digia.com [Fri, 27 Sep 2013 11:57:52 +0000 (11:57 +0000)]
[Qt] Mock implementations of positioning and orientation not used
https://bugs.webkit.org/show_bug.cgi?id=121956

Reviewed by Csaba Osztrogon√°c.

Move production_build checks to sanitizeFeatures where its value is actually known.

* qmake/mkspecs/features/features.prf:
* qmake/mkspecs/features/features.pri:

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

7 years ago[ATK] Protect entry points in the ATK wrapper against outdated render trees
mario@webkit.org [Fri, 27 Sep 2013 09:44:20 +0000 (09:44 +0000)]
[ATK] Protect entry points in the ATK wrapper against outdated render trees
https://bugs.webkit.org/show_bug.cgi?id=121558

Reviewed by Chris Fleizach.

Source/WebCore:

Make sure that we protect every entry point in the ATK wrapper
against outdated render trees, before using the WebCore's
accessibility API, since that might lead to problems (and crashes)
if the render and accessibility trees are not stable.

Thus, call AccessibilityObject::updateBackingStore() in those
entry points and check whether the ATK wrapper is detached or not
after that, to decide whether to continue or not.

Besides providing a new test to check that it WebKit does not
crash in a given scenario (which actually triggered the
investigation here), solving this situation also fixes other tests
that were previously failing (aria-used-on-image-maps.html) or
that were printing wrong results, not detected until now due to
wrong platform specific expectations (file-upload-button-stringvalue
and deleting-iframe-destroys-axcache).

Test: accessibility/heading-crash-after-hidden.html

* accessibility/atk/WebKitAccessibleUtil.h: Added two new macros
to inject the needed code at the beginning of each entry point to
allow gracefully exit those functions when the render tree is
unstable. Inspired by g_return_if_fail and g_return_val_if_fail, we
called them returnIfWebKitAccessibleIsInvalid and returnValIfWebKitAccessibleIsInvalid.

* accessibility/atk/WebKitAccessibleHyperlink.cpp:
(webkitAccessibleHyperlinkActionDoAction): Protect entry point.
(webkitAccessibleHyperlinkActionGetNActions): Ditto.
(webkitAccessibleHyperlinkActionGetDescription): Ditto.
(webkitAccessibleHyperlinkActionGetKeybinding): Ditto.
(webkitAccessibleHyperlinkActionGetName): Ditto.
(webkitAccessibleHyperlinkGetURI): Ditto.
(webkitAccessibleHyperlinkGetObject): Ditto.
(webkitAccessibleHyperlinkGetStartIndex): Ditto.
(webkitAccessibleHyperlinkGetEndIndex): Ditto.
(webkitAccessibleHyperlinkIsValid): Ditto.
(webkitAccessibleHyperlinkGetNAnchors): Ditto.
(webkitAccessibleHyperlinkIsSelectedLink): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceAction.cpp:
(webkitAccessibleActionDoAction): Ditto.
(webkitAccessibleActionGetNActions): Ditto.
(webkitAccessibleActionGetDescription): Ditto.
(webkitAccessibleActionGetKeybinding): Ditto.
(webkitAccessibleActionGetName): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:
(webkitAccessibleComponentRefAccessibleAtPoint): Ditto.
(webkitAccessibleComponentGetExtents): Ditto.
(webkitAccessibleComponentGrabFocus): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceDocument.cpp:
(webkitAccessibleDocumentGetAttributeValue): Ditto.
(webkitAccessibleDocumentGetAttributes): Ditto.
(webkitAccessibleDocumentGetLocale): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
(webkitAccessibleEditableTextSetRunAttributes): Ditto.
(webkitAccessibleEditableTextSetTextContents): Ditto.
(webkitAccessibleEditableTextInsertText): Ditto.
(webkitAccessibleEditableTextCopyText): Ditto.
(webkitAccessibleEditableTextCutText): Ditto.
(webkitAccessibleEditableTextDeleteText): Ditto.
(webkitAccessibleEditableTextPasteText): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
(webkitAccessibleHypertextGetLink): Ditto.
(webkitAccessibleHypertextGetNLinks): Ditto.
(webkitAccessibleHypertextGetLinkIndex): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceImage.cpp:
(webkitAccessibleImageGetImagePosition): Ditto.
(webkitAccessibleImageGetImageDescription): Ditto.
(webkitAccessibleImageGetImageSize): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:
(webkitAccessibleSelectionAddSelection): Ditto.
(webkitAccessibleSelectionClearSelection): Ditto.
(webkitAccessibleSelectionRefSelection): Ditto.
(webkitAccessibleSelectionGetSelectionCount): Ditto.
(webkitAccessibleSelectionIsChildSelected): Ditto.
(webkitAccessibleSelectionRemoveSelection): Ditto.
(webkitAccessibleSelectionSelectAllSelection): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableRefAt): Ditto.
(webkitAccessibleTableGetIndexAt): Ditto.
(webkitAccessibleTableGetColumnAtIndex): Ditto.
(webkitAccessibleTableGetRowAtIndex): Ditto.
(webkitAccessibleTableGetNColumns): Ditto.
(webkitAccessibleTableGetNRows): Ditto.
(webkitAccessibleTableGetColumnExtentAt): Ditto.
(webkitAccessibleTableGetRowExtentAt): Ditto.
(webkitAccessibleTableGetColumnHeader): Ditto.
(webkitAccessibleTableGetRowHeader): Ditto.
(webkitAccessibleTableGetCaption): Ditto.
(webkitAccessibleTableGetColumnDescription): Ditto.
(webkitAccessibleTableGetRowDescription): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextGetText): Ditto.
(webkitAccessibleTextGetTextAfterOffset): Ditto.
(webkitAccessibleTextGetTextAtOffset): Ditto.
(webkitAccessibleTextGetTextBeforeOffset): Ditto.
(webkitAccessibleTextGetCharacterAtOffset): Ditto.
(webkitAccessibleTextGetCaretOffset): Ditto.
(webkitAccessibleTextGetRunAttributes): Ditto.
(webkitAccessibleTextGetDefaultAttributes): Ditto.
(webkitAccessibleTextGetCharacterExtents): Ditto.
(webkitAccessibleTextGetRangeExtents): Ditto.
(webkitAccessibleTextGetCharacterCount): Ditto.
(webkitAccessibleTextGetOffsetAtPoint): Ditto.
(webkitAccessibleTextGetNSelections): Ditto.
(webkitAccessibleTextGetSelection): Ditto.
(webkitAccessibleTextAddSelection): Ditto.
(webkitAccessibleTextSetSelection): Ditto.
(webkitAccessibleTextRemoveSelection): Ditto.
(webkitAccessibleTextSetCaretOffset): Ditto.
* accessibility/atk/WebKitAccessibleInterfaceValue.cpp:
(webkitAccessibleValueGetCurrentValue): Ditto.
(webkitAccessibleValueGetMaximumValue): Ditto.
(webkitAccessibleValueGetMinimumValue): Ditto.
(webkitAccessibleValueSetCurrentValue): Ditto.
(webkitAccessibleValueGetMinimumIncrement): Ditto.
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(core): Removed, as it's not actually needed.
(webkitAccessibleGetName):  Protect entry point.
(webkitAccessibleGetDescription): Ditto.
(webkitAccessibleGetParent): Ditto.
(webkitAccessibleGetNChildren): Ditto.
(webkitAccessibleRefChild): Ditto.
(webkitAccessibleGetIndexInParent): Ditto.
(webkitAccessibleGetAttributes): Ditto.
(webkitAccessibleGetRole): Ditto.
(webkitAccessibleRefStateSet): Ditto.
(webkitAccessibleRefRelationSet): Ditto.
(webkitAccessibleGetObjectLocale): Ditto.
(webkitAccessibleDetach): Ditto.
(webkitAccessibleIsDetached): New helper function, to be used from
the newly added macros. We need to check whether the wrapper is
detached and not just the wrapper AccessibilityObject since once
the detachment happens we can't trust anything but the AtkObject
from the wrapper (the AccessibilityObject might be invalid).
* accessibility/atk/WebKitAccessibleWrapperAtk.h:

Assert that the render tree is neither being updated nor in need
of being updated before trying to compute the text under a given
element, since that might lead to crashes due to the constructor
of TextIterator calling updateLayoutIgnorePendingStylesheets().

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::textUnderElement): Assert that
the render tree is neither being updated nor needing updating.

LayoutTests:

Added a new test to check that we do not crash in certain
scenarios when hiding objects and retriving accessibility
information about it.

* accessibility/heading-crash-after-hidden-expected.txt: Added.
* accessibility/heading-crash-after-hidden.html: Added.

Rebaselined expectations that were wrong before, since they were
not returning the actual value that they should be returning when
called AccessibilityUIElement::stringValue().

* platform/efl-wk1/accessibility/file-upload-button-stringvalue-expected.txt:
Updated, since the actual text being returned should be the actual
value of the file chooser (e.g. "(None)") and not the text in the
upload botton (e.g. "Choose files").
* platform/efl-wk2/accessibility/file-upload-button-stringvalue-expected.txt: Ditto.
* platform/gtk-wk2/accessibility/file-upload-button-stringvalue-expected.txt: Ditto..
* platform/gtk/accessibility/file-upload-button-stringvalue-expected.txt: Ditto.

* platform/gtk/accessibility/deleting-iframe-destroys-axcache-expected.txt:
Updated, since the iframe should be exposed at all after deleting it.

Removed accesibility test now passing after fixing this issue.

* platform/gtk/TestExpectations: Removed accessibility/aria-used-on-image-maps.html.

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

7 years ago[ATK] Normalize checks in entry points for DRT and WKTR
mario@webkit.org [Fri, 27 Sep 2013 09:07:17 +0000 (09:07 +0000)]
[ATK] Normalize checks in entry points for DRT and WKTR
https://bugs.webkit.org/show_bug.cgi?id=121959

Reviewed by Chris Fleizach.

Always check if we have a proper instance of AtkObject,
implementing the interfaces that we might need for each case, at
the entry point of every method of AccessibilityUIElement for ATK,
and do those checks in an uniform way across DRT and WKTR, to
avoid confusion and issues when modifying these files in the future.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::getChildren): Use normalized checks.
(AccessibilityUIElement::getChildrenWithRange): Ditto.
(AccessibilityUIElement::rowCount): Ditto.
(AccessibilityUIElement::columnCount): Ditto.
(AccessibilityUIElement::childrenCount): Ditto.
(AccessibilityUIElement::elementAtPoint): Ditto.
(AccessibilityUIElement::getChildAtIndex): Ditto.
(AccessibilityUIElement::allAttributes): Ditto.
(AccessibilityUIElement::titleUIElement): Ditto.
(AccessibilityUIElement::parentElement): Ditto.
(AccessibilityUIElement::attributesOfChildren): Ditto.
(AccessibilityUIElement::role): Ditto.
(AccessibilityUIElement::title): Ditto.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::stringValue): Ditto.
(AccessibilityUIElement::language): Ditto.
(AccessibilityUIElement::x): Ditto.
(AccessibilityUIElement::y): Ditto.
(AccessibilityUIElement::width): Ditto.
(AccessibilityUIElement::height): Ditto.
(AccessibilityUIElement::orientation): Ditto.
(AccessibilityUIElement::intValue): Ditto.
(AccessibilityUIElement::minValue): Ditto.
(AccessibilityUIElement::maxValue): Ditto.
(indexRangeInTable): Ditto.
(AccessibilityUIElement::cellForColumnAndRow): Ditto.
(AccessibilityUIElement::stringAttributeValue): Ditto.
(alterCurrentValue): Ditto.
(AccessibilityUIElement::press): Ditto.
(AccessibilityUIElement::documentEncoding): Ditto.
(AccessibilityUIElement::documentURI): Ditto.
(AccessibilityUIElement::hasPopup): Ditto.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::indexRangeInTable): Use normalized checks.
(WTR::alterCurrentValue): Ditto.
(WTR::AccessibilityUIElement::getChildren): Ditto.
(WTR::AccessibilityUIElement::getChildrenWithRange): Ditto.
(WTR::AccessibilityUIElement::childrenCount): Ditto.
(WTR::AccessibilityUIElement::elementAtPoint): Ditto.
(WTR::AccessibilityUIElement::indexOfChild): Ditto.
(WTR::AccessibilityUIElement::childAtIndex): Ditto.
(WTR::AccessibilityUIElement::titleUIElement): Ditto.
(WTR::AccessibilityUIElement::parentElement): Ditto.
(WTR::AccessibilityUIElement::attributesOfChildren): Ditto.
(WTR::AccessibilityUIElement::allAttributes): Ditto.
(WTR::AccessibilityUIElement::stringAttributeValue): Ditto.
(WTR::AccessibilityUIElement::role): Ditto.
(WTR::AccessibilityUIElement::title): Ditto.
(WTR::AccessibilityUIElement::description): Ditto.
(WTR::AccessibilityUIElement::orientation): Ditto.
(WTR::AccessibilityUIElement::stringValue): Ditto.
(WTR::AccessibilityUIElement::language): Ditto.
(WTR::AccessibilityUIElement::x): Ditto.
(WTR::AccessibilityUIElement::y): Ditto.
(WTR::AccessibilityUIElement::width): Ditto.
(WTR::AccessibilityUIElement::height): Ditto.
(WTR::AccessibilityUIElement::intValue): Ditto.
(WTR::AccessibilityUIElement::minValue): Ditto.
(WTR::AccessibilityUIElement::maxValue): Ditto.
(WTR::AccessibilityUIElement::rowCount): Ditto.
(WTR::AccessibilityUIElement::columnCount): Ditto.
(WTR::AccessibilityUIElement::cellForColumnAndRow): Ditto.
(WTR::AccessibilityUIElement::press): Ditto.
(WTR::AccessibilityUIElement::documentEncoding): Ditto.
(WTR::AccessibilityUIElement::documentURI): Ditto.
(WTR::AccessibilityUIElement::hasPopup): Ditto.

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

7 years ago[ATK] accessibility/aria-sort.html is failing after r156409
mario@webkit.org [Fri, 27 Sep 2013 08:58:08 +0000 (08:58 +0000)]
[ATK] accessibility/aria-sort.html is failing after r156409
https://bugs.webkit.org/show_bug.cgi?id=121947

Reviewed by Chris Fleizach.

Source/WebCore:

The WAI-ARIA spec says to translate the value as is from the
attribute, so do just that instead of mapping values from the
AccessibilitySortDirection enumeration into strings.
http://www.w3.org/TR/wai-aria-implementation/#mapping_state-property

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes): Do the right mapping for aria-sort.

Tools:

Implement AccessibilityUIElement::isSupported for the ATK
platforms, just by checking whether we have an associated object
attribute exposed for the wrapper object matching the required
attribute in the layout test (e.g "AXSortDirection" -> "sort").

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::isAttributeSupported): Implemented.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::isAttributeSupported): Implemented.

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

7 years ago[GCC] Fix build with gcc < 4.8.1, which does not have is_trivially_destructible
ryuan.choi@samsung.com [Fri, 27 Sep 2013 07:48:50 +0000 (07:48 +0000)]
[GCC] Fix build with gcc < 4.8.1, which does not have is_trivially_destructible
https://bugs.webkit.org/show_bug.cgi?id=121999

Patch by Gustavo Noronha Silva <gns@gnome.org> on 2013-09-27
Reviewed by Benjamin Poulain.

* wtf/StdLibExtras.h:

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

7 years agoSync toWebKitCSSShaderValue() behavior with other toCSSFooValue()
gyuyoung.kim@samsung.com [Fri, 27 Sep 2013 03:26:53 +0000 (03:26 +0000)]
Sync toWebKitCSSShaderValue() behavior with other toCSSFooValue()
https://bugs.webkit.org/show_bug.cgi?id=121886

Reviewed by Darin Adler.

toWebKitCSSShaderValue() behavior is different from other to CSSFooValue().
It shouldn't return null. The type checking should be done before doing type cast.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
* css/WebKitCSSShaderValue.h:
(WebCore::toWebKitCSSShaderValue):

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

7 years agoMove m_style to RenderElement
antti@apple.com [Fri, 27 Sep 2013 02:02:27 +0000 (02:02 +0000)]
Move m_style to RenderElement
https://bugs.webkit.org/show_bug.cgi?id=121936

Source/WebCore:

Reviewed by Andreas Kling.

Text renderers always have the same style as their parent. They can get their style via the parent pointer
rather than having a member of their own.

This shrinks RenderText by a pointer.

* dom/PseudoElement.cpp:
(WebCore::PseudoElement::didRecalcStyle):

    Text renderers have no independent style. No need to set it.

* editing/ApplyBlockElementCommand.cpp:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addChildToAnonymousColumnBlocks):

    Avoid getting style from text child before it is added to tree.

(WebCore::RenderBlock::updateFirstLetterStyle):
(WebCore::RenderBlock::createFirstLetterRenderer):
* rendering/RenderButton.cpp:
(WebCore::RenderButton::styleDidChange):
(WebCore::RenderButton::setText):
* rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::styleDidChange):

    Don't set text style anymore.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
(WebCore::RenderElement::setStyle):

    Notify child text renderers of style change.

(WebCore::RenderElement::setAnimatableStyle):
(WebCore::RenderElement::setPseudoStyle):

    Push down to RenderElement, remove text branches.

(WebCore::RenderElement::addChild):

    Notify text renderers of style change when added to tree.

(WebCore::RenderElement::propagateStyleToAnonymousChildren):
* rendering/RenderElement.h:
(WebCore::RenderElement::style):
(WebCore::RenderElement::setStyleInternal):

    Move m_style from RenderObject.

(WebCore::RenderObject::style):

    Inline this in RenderElement.h instead of making it virtual.

* rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):

    Tighten typing to call RenderElement::setStyle.

(WebCore::RenderInline::clippedOverflowRectForRepaint):

    Change assert. This can get legitimately called during layout for the first letter renderers.
    This was previously avoided by luck.

* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::styleDidChange):
(WebCore::RenderMenuList::setText):

    Don't set text style anymore.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::RenderObject):
(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::drawLineForBoxSide):
(WebCore::RenderObject::hasEntirelyFixedBackground):
(WebCore::RenderObject::container):
(WebCore::RenderObject::cachedFirstLineStyle):

    Switch to style(), avoid unnecessary repetition.
    Move code out.

* rendering/RenderObject.h:

    Move functions to RenderElement.

(WebCore::RenderObject::isBeforeContent):
(WebCore::RenderObject::isAfterContent):

    Avoid accessing style for text renderers as these are called before the renderer
    is added to tree.

(WebCore::RenderObject::setNeedsPositionedMovementLayout):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
(WebCore::RenderRegion::setObjectStyleInRegion):
* rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::updateCancelButtonVisibility):
* rendering/RenderText.cpp:
* rendering/RenderText.h:

    Remove setStyle.

(WebCore::RenderText::style):

    Get style from parent.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::createGlyph):
* rendering/style/ContentData.cpp:
(WebCore::TextContentData::createRenderer):
(WebCore::CounterContentData::createRenderer):
(WebCore::QuoteContentData::createRenderer):

    Pseudo style for RenderText subclasses comes from parent without any explicit setting.

* style/StyleResolveTree.cpp:
(WebCore::Style::createTextRendererIfNeeded):
(WebCore::Style::resolveLocal):
(WebCore::Style::updateTextStyle):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::resolveTree):

    No need to set or update text renderer style separately.

LayoutTests:

Reviewed by Andreas Kling.

Progressions from text style updating correctly in all cases.

* compositing/contents-opaque/hidden-with-visible-text-expected.txt:
* compositing/contents-opaque/visibility-hidden-expected.txt:

    Can't figure out why these progress but they do. The new rendering (showing nothing)
    is correct and matches Firefox.

* platform/mac/svg/custom/SVGPoint-matrixTransform-expected.txt:
* platform/mac/svg/custom/getTransformToElement-expected.txt:
* platform/mac/svg/custom/text-ctm-expected.txt:
* platform/mac/svg/custom/text-hit-test-expected.txt:
* platform/mac/svg/text/append-text-node-to-tspan-expected.txt:

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

7 years ago"Build fix".
andersca@apple.com [Fri, 27 Sep 2013 01:58:52 +0000 (01:58 +0000)]
"Build fix".

We can't use std::move. Explicitly destroy the old value and then construct the new in place.

* wtf/HashTable.h:

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

7 years agoFixed a version number string in SunSpider 1.0.2
ggaren@apple.com [Fri, 27 Sep 2013 01:56:03 +0000 (01:56 +0000)]
Fixed a version number string in SunSpider 1.0.2
https://bugs.webkit.org/show_bug.cgi?id=122004

Reviewed by Gavin Barraclough.

PerformanceTests/SunSpider:

* resources/driver-TEMPLATE.html:
* resources/results-TEMPLATE.html: 1.0.2!

Websites/webkit.org:

* perf/sunspider-1.0.2/sunspider-1.0.2/results.html: 1.0.2!

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

7 years agoUse the move assignment operator when reinserting values in the hash map
andersca@apple.com [Fri, 27 Sep 2013 01:51:32 +0000 (01:51 +0000)]
Use the move assignment operator when reinserting values in the hash map
https://bugs.webkit.org/show_bug.cgi?id=122003

Reviewed by Alexey Proskuryakov.

Using the move assignment operator ensures that the existing values will be destroyed correctly.

* wtf/HashTable.h:

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

7 years agoTentative SunSpider 1.0.2
ggaren@apple.com [Fri, 27 Sep 2013 01:46:25 +0000 (01:46 +0000)]
Tentative SunSpider 1.0.2
https://bugs.webkit.org/show_bug.cgi?id=122002

Reviewed by Gavin Barraclough.

PerformanceTests/SunSpider:

Be even more aggressive about asking for zero delay between tests by
setting a timeout at the beginning of a test instead of the end. This is
another step toward reducing noise -- particularly noise caused by
power management -- just like the step down from 10ms to 0ms.

Browsers typically put a 4ms floor on timers. The sooner we set
our timer, the sooner it will fire.

* make-hosted:
* resources/driver-TEMPLATE.html: Changed the driver to set the timeout
earlier.
* tests/sunspider-1.0.2: Added. These tests are unchanged from 1.0.1.

Websites/webkit.org:

See comments in PerformanceTests/SunSpider.

* perf/sunspider-1.0.2: Added.

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

7 years ago[MediaStream] make MediaStream testable
eric.carlson@apple.com [Fri, 27 Sep 2013 01:08:17 +0000 (01:08 +0000)]
[MediaStream] make MediaStream testable
https://bugs.webkit.org/show_bug.cgi?id=121967

Reviewed by Dean Jackson.

Source/WebCore:

No new tests, existing tests updated.

* CMakeLists.txt: Add MockMediaStreamCenter.
* GNUmakefile.list.am: Ditto.

* Modules/mediastream/MediaStreamTrack.idl: Add SkipVTableValidation.
* Modules/mediastream/NavigatorUserMediaError.idl: Add JSGenerateToJSObject.
* WebCore.exp.in: Export MockMediaStreamCenter::registerMockMediaStreamCenter.

* WebCore.xcodeproj/project.pbxproj: Add MockMediaStreamCenter.
* dom/DOMError.h: Make the destructor virtual because it has a derived class.
* dom/DOMError.idl:

* platform/mock/MockMediaStreamCenter.cpp: Added.
* platform/mock/MockMediaStreamCenter.h: Added.

* testing/Internals.cpp: Register the mock stream center.

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj: Add WebUserMediaClient.

Source/WebKit/mac:

* WebCoreSupport/WebUserMediaClient.h: Added.
* WebCoreSupport/WebUserMediaClient.mm: Added.

* WebView/WebUIDelegatePrivate.h: Declare decidePolicyForUserMediaRequestFromOrigin:listener:

* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]): Register WebUserMediaClient.
(-[WebView _setUserMediaClient:]): New.
(-[WebView _userMediaClient]): New.
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:

Tools:

* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:decidePolicyForUserMediaRequestFromOrigin:listener:]): Add a very permissive
    user media request policy delegate.

LayoutTests:

* fast/mediastream/MediaStream-add-remove-tracks-expected.txt:
* fast/mediastream/MediaStream-add-remove-tracks.html: Make the test results more understandable
    to simplify debugging failures.
* fast/mediastream/MediaStream-onended-expected.txt:
* fast/mediastream/MediaStream-onended.html: Ditto. Fix a test error: stopping stream A should
    not stop stream B even when it was created from stream A.
* fast/mediastream/MediaStreamConstructor-expected.txt:
* fast/mediastream/MediaStreamConstructor.html: Make the test results more understandable. Fix a
    logic errors: webkitMediaStream is an object, not a function. JSC does not support
    object.constructor.name, use object.constructor.toString() instead.
* fast/mediastream/MediaStreamTrackEvent-constructor-expected.txt:
* fast/mediastream/MediaStreamTrackEvent-constructor.html: Update now that getUserMedia() works.
* fast/mediastream/argument-types-expected.txt: Updated with "Failing" results because the correct
    behavior is unknown. The spec says "the syntax for getUserMedia() is still under discussion".

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

7 years agoGetterSetter construction should take a VM instead of ExecState.
akling@apple.com [Fri, 27 Sep 2013 00:39:00 +0000 (00:39 +0000)]
GetterSetter construction should take a VM instead of ExecState.
<https://webkit.org/b/121993>

Reviewed by Sam Weinig.

Pass VM& instead of ExecState* to GetterSetter. Updated surrounding
code at touched sites to cache VM in a local for fewer loads.

JSC release binary size -= 4120 bytes.

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

7 years agoWeb Inspector: dissociate old content views that are spliced from back/forward list
commit-queue@webkit.org [Fri, 27 Sep 2013 00:27:50 +0000 (00:27 +0000)]
Web Inspector: dissociate old content views that are spliced from back/forward list
https://bugs.webkit.org/show_bug.cgi?id=121987

Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-09-26
Reviewed by Timothy Hatcher.

There was a bug where old back/forward list entries were not being dissociated when
the newly-shown content view was already in the list. Instead, dissociation should be
skipped if the old list entry is not already in the list.

* UserInterface/ContentViewContainer.js:
(WebInspector.ContentViewContainer.prototype.showContentView):

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

7 years agoLayout Test http/tests/inspector/network/network-iframe-load-and-delete.html is flaky
ap@apple.com [Fri, 27 Sep 2013 00:27:47 +0000 (00:27 +0000)]
Layout Test http/tests/inspector/network/network-iframe-load-and-delete.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=121998

* platform/mac/TestExpectations: Marking as such.

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

7 years agoMake GCC happy
oliver@apple.com [Fri, 27 Sep 2013 00:23:30 +0000 (00:23 +0000)]
Make GCC happy

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

7 years ago[Windows] Unreviewed Build fix.
bfulgham@apple.com [Thu, 26 Sep 2013 23:51:18 +0000 (23:51 +0000)]
[Windows] Unreviewed Build fix.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing
symbol export to support tests.

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

7 years ago[Windows] Work around missing C++11 features of MSVC by providing an implementation for
bfulgham@apple.com [Thu, 26 Sep 2013 23:37:39 +0000 (23:37 +0000)]
[Windows] Work around missing C++11 features of MSVC by providing an implementation for
std::is_trivially_destructible based on the existing std::has_trivial_destructor.

Rubber-stamped by Anders Carlsson.

* wtf/StdLibExtras.h: Add implementation for is_trivially_destructable for MSVC 2010 and prior.

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

7 years agoMove CSS MatchRequest from StyleResolver to a private definition in ElementRuleCollector
benjamin@webkit.org [Thu, 26 Sep 2013 23:36:09 +0000 (23:36 +0000)]
Move CSS MatchRequest from StyleResolver to a private definition in ElementRuleCollector
https://bugs.webkit.org/show_bug.cgi?id=121986

Reviewed by Andreas Kling.

MatchRequest is an internal type of ElementRuleCollector now, move the definition
to ElementRuleCollector.

* css/DocumentRuleSets.h:
* css/ElementRuleCollector.h:
(WebCore::ElementRuleCollector::MatchRequest::MatchRequest):
* css/StyleResolver.h:

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

7 years ago2013-09-25 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Thu, 26 Sep 2013 23:32:16 +0000 (23:32 +0000)]
2013-09-25  Oliver Hunt  <oliver@apple.com>

        Implement prefixed-destructuring assignment
        https://bugs.webkit.org/show_bug.cgi?id=121930

        Reviewed by Mark Hahnenberg.

        Relanding with fix after rollout

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

7 years ago[Windows] Unreviewed build fix after r156487.
bfulgham@apple.com [Thu, 26 Sep 2013 23:16:07 +0000 (23:16 +0000)]
[Windows] Unreviewed build fix after r156487.

Add explicit casting needed by MSVC to compile this code. Much
of this could probably be removed when we move to VS2012 or newer.

* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bridge/jsc/BridgeJSC.cpp:
(JSC::Bindings::Instance::createRuntimeObject):

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

7 years agoUnreviewed, rolling out r156510.
commit-queue@webkit.org [Thu, 26 Sep 2013 23:00:26 +0000 (23:00 +0000)]
Unreviewed, rolling out r156510.
http://trac.webkit.org/changeset/156510
https://bugs.webkit.org/show_bug.cgi?id=121989

Landed in-progress code along with build fix. (Requested by
bfulgham on #webkit).

* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bridge/jsc/BridgeJSC.cpp:
(JSC::Bindings::Instance::createRuntimeObject):
* platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::platformApplyGeneric):
(WebCore::FEGaussianBlur::platformApply):
* platform/graphics/win/DIBPixelData.cpp:
(WebCore::DIBPixelData::writeToFile):
* platform/graphics/win/DIBPixelData.h:

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

7 years agoVirtualRegister should be a class
msaboff@apple.com [Thu, 26 Sep 2013 22:53:54 +0000 (22:53 +0000)]
VirtualRegister should be a class
https://bugs.webkit.org/show_bug.cgi?id=121732

Reviewed by Geoffrey Garen.

This is a refactoring change.  Changed VirtualRegister from an enum to a class.
Moved Operands::operandIsArgument(), operandToArgument(), argumentToOperand()
and the similar functions for locals to VirtualRegister class.

This is in preparation for changing the offset for the first local register from
0 to -1.  This is needed since most native calling conventions have the architected
frame pointer (e.g. %rbp for X86) point at the slot that stores the previous frame
pointer.  Local values start below that address.

* bytecode/CodeBlock.cpp:
* bytecode/CodeBlock.h:
* bytecode/Instruction.h:
* bytecode/LazyOperandValueProfile.h:
* bytecode/MethodOfGettingAValueProfile.cpp:
* bytecode/Operands.h:
* bytecode/UnlinkedCodeBlock.cpp:
* bytecode/UnlinkedCodeBlock.h:
* bytecode/ValueRecovery.h:
* bytecode/VirtualRegister.h:
* bytecompiler/BytecodeGenerator.cpp:
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/RegisterID.h:
* debugger/DebuggerCallFrame.cpp:
* dfg/DFGAbstractHeap.h:
* dfg/DFGAbstractInterpreterInlines.h:
* dfg/DFGArgumentPosition.h:
* dfg/DFGArgumentsSimplificationPhase.cpp:
* dfg/DFGByteCodeParser.cpp:
* dfg/DFGCFGSimplificationPhase.cpp:
* dfg/DFGCPSRethreadingPhase.cpp:
* dfg/DFGCapabilities.cpp:
* dfg/DFGConstantFoldingPhase.cpp:
* dfg/DFGFlushLivenessAnalysisPhase.cpp:
* dfg/DFGGraph.cpp:
* dfg/DFGGraph.h:
* dfg/DFGJITCode.cpp:
* dfg/DFGNode.h:
* dfg/DFGOSREntry.cpp:
* dfg/DFGOSREntrypointCreationPhase.cpp:
* dfg/DFGOSRExit.h:
* dfg/DFGOSRExitCompiler32_64.cpp:
* dfg/DFGOSRExitCompiler64.cpp:
* dfg/DFGRegisterBank.h:
* dfg/DFGScoreBoard.h:
* dfg/DFGSpeculativeJIT.cpp:
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
* dfg/DFGSpeculativeJIT64.cpp:
* dfg/DFGValidate.cpp:
* dfg/DFGValueRecoveryOverride.h:
* dfg/DFGVariableAccessData.h:
* dfg/DFGVariableEvent.h:
* dfg/DFGVariableEventStream.cpp:
* dfg/DFGVirtualRegisterAllocationPhase.cpp:
* ftl/FTLExitArgumentForOperand.h:
* ftl/FTLLink.cpp:
* ftl/FTLLowerDFGToLLVM.cpp:
* ftl/FTLOSREntry.cpp:
* ftl/FTLOSRExit.cpp:
* ftl/FTLOSRExit.h:
* ftl/FTLOSRExitCompiler.cpp:
* interpreter/CallFrame.h:
* interpreter/Interpreter.cpp:
* jit/AssemblyHelpers.h:
* jit/JIT.h:
* jit/JITCall.cpp:
* jit/JITCall32_64.cpp:
* jit/JITInlines.h:
* jit/JITOpcodes.cpp:
* jit/JITOpcodes32_64.cpp:
* jit/JITPropertyAccess32_64.cpp:
* jit/JITStubs.cpp:
* llint/LLIntSlowPaths.cpp:
* profiler/ProfilerBytecodeSequence.cpp:
* runtime/CommonSlowPaths.cpp:
* runtime/JSActivation.cpp:

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

7 years ago[Windows] Unreviewed build fix after r156487.
bfulgham@apple.com [Thu, 26 Sep 2013 22:49:33 +0000 (22:49 +0000)]
[Windows] Unreviewed build fix after r156487.

Add explicit casting needed by MSVC to compile this code. Much
of this could probably be removed when we move to VS2012 or newer.

* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bridge/jsc/BridgeJSC.cpp:
(JSC::Bindings::Instance::createRuntimeObject):
* platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::platformApplyGeneric):
(WebCore::FEGaussianBlur::platformApply):
* platform/graphics/win/DIBPixelData.cpp:
(WebCore::DIBPixelData::DIBPixelData):
(WebCore::DIBPixelData::writeToFile):
* platform/graphics/win/DIBPixelData.h:

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

7 years agoFlaky Test: transitions/cancel-transition.html
ap@apple.com [Thu, 26 Sep 2013 22:47:16 +0000 (22:47 +0000)]
Flaky Test: transitions/cancel-transition.html
https://bugs.webkit.org/show_bug.cgi?id=114193

* platform/mac/TestExpectations: Marking as flaky. Dean says that such tests are
currently broken by design.

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

7 years agoRemove Windows code
andersca@apple.com [Thu, 26 Sep 2013 22:45:46 +0000 (22:45 +0000)]
Remove Windows code
https://bugs.webkit.org/show_bug.cgi?id=121988

Reviewed by Antti Koivisto.

* Platform/CoreIPC/Connection.h:
* Platform/CoreIPC/win/ConnectionWin.cpp: Removed.
* Platform/SharedMemory.h:
* Platform/WorkQueue.h:
* Platform/win/SharedMemoryWin.cpp: Removed.
* Platform/win/WorkQueueWin.cpp: Removed.
* Shared/ChildProcess.cpp:
* Shared/ChildProcessProxy.cpp:
(WebKit::ChildProcessProxy::didFinishLaunching):
* UIProcess/Plugins/PluginInfoStore.cpp:
(WebKit::PluginInfoStore::loadPluginsIfNecessary):
* WebProcess/WebProcess.cpp:

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

7 years agoRemove needsDestruction from vector and hash traits
andersca@apple.com [Thu, 26 Sep 2013 22:37:20 +0000 (22:37 +0000)]
Remove needsDestruction from vector and hash traits
https://bugs.webkit.org/show_bug.cgi?id=121983

Reviewed by Sam Weinig.

For Vector, use std::is_trivially_destructible to determine whether to call the destructor.
For HashTable, always call the destructor; if it is trivial then no code will be generated for it and the loops will be folded away.

Removing this does break the ability to store objects with non-trivial destructors in vectors and hash maps
and have their destructors not be called when removed, but we've never used this feature in WebKit so the extra
code complexity is not worth it.

* wtf/HashTable.h:
(WTF::::deallocateTable):
* wtf/HashTraits.h:
* wtf/Vector.h:
(WTF::VectorTypeOperations::destruct):
* wtf/VectorTraits.h:

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

7 years agoExpose a setting to disable hardware accelerated animations
dino@apple.com [Thu, 26 Sep 2013 22:29:07 +0000 (22:29 +0000)]
Expose a setting to disable hardware accelerated animations
https://bugs.webkit.org/show_bug.cgi?id=121978
<rdar://problem/15091284>

Reviewed by Eric Carlson.

Source/WebCore:

Expose acceleratedCompositedAnimationsEnabled
to disable CoreAnimation animations.

Test: LayoutTests/animations/transform-non-accelerated.html

* WebCore.exp.in: Export new method.
* page/Settings.in: Add new setting.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::startAnimation): Don't go
to GraphicsLayer if the setting is false.

LayoutTests:

* animations/resources/animation-test-helpers.js: Add a callback
for when the tests finish. Minor cleanup.
(endTest):
(.else):
(runAnimationTest):
* animations/transform-non-accelerated.html: New test.
* animations/transform-non-accelerated-expected.txt: Result.

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

7 years agoSource/JavaScriptCore: Work around another MSVC bug.
andersca@apple.com [Thu, 26 Sep 2013 22:25:40 +0000 (22:25 +0000)]
Source/JavaScriptCore: Work around another MSVC bug.

* runtime/PrototypeMap.cpp:
(JSC::PrototypeMap::emptyObjectStructureForPrototype):

Source/WTF: Build fixes.

Fix a paste-o.

* wtf/StdLibExtras.h:
(std::make_unique):

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

7 years agoAttempt to fix the FTL build.
andersca@apple.com [Thu, 26 Sep 2013 22:20:46 +0000 (22:20 +0000)]
Attempt to fix the FTL build.

* ftl/FTLAbstractHeap.cpp:
(JSC::FTL::IndexedAbstractHeap::atSlow):

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

7 years ago[Qt] Fix build after r156487.
commit-queue@webkit.org [Thu, 26 Sep 2013 22:19:07 +0000 (22:19 +0000)]
[Qt] Fix build after r156487.
https://bugs.webkit.org/show_bug.cgi?id=121984

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-09-26
Reviewed by Anders Carlsson.

* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMethod::jsObjectRef):

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

7 years agoDon't mutate style in RenderCombineText
antti@apple.com [Thu, 26 Sep 2013 22:01:38 +0000 (22:01 +0000)]
Don't mutate style in RenderCombineText
https://bugs.webkit.org/show_bug.cgi?id=121979

Reviewed by Andreas Kling.

Text renderers should always have the same style as the parent.

* rendering/InlineTextBox.cpp:
(WebCore::fontToUse):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::offsetForPosition):
(WebCore::InlineTextBox::positionForOffset):

    Select the modified font for text-combine.

* rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::styleDidChange):
(WebCore::RenderCombineText::combineText):
* rendering/RenderCombineText.h:

    Move the text-combine specific font style to a member of its own.

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

7 years agoUpdate expected binding test results after r156498.
timothy@apple.com [Thu, 26 Sep 2013 21:45:22 +0000 (21:45 +0000)]
Update expected binding test results after r156498.

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

7 years agoPass VM instead of ExecState to many finishCreation() functions.
akling@apple.com [Thu, 26 Sep 2013 21:43:49 +0000 (21:43 +0000)]
Pass VM instead of ExecState to many finishCreation() functions.
<https://webkit.org/b/121975>

Reviewed by Sam Weinig.

Reduce unnecessary loads by passing the VM to object creation
functions that don't need the ExecState.

There are tons of opportunities in this area, I'm just scratching
the surface.

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

7 years agoUnreviewed, rolling out r156464 and r156480.
commit-queue@webkit.org [Thu, 26 Sep 2013 21:27:00 +0000 (21:27 +0000)]
Unreviewed, rolling out r156464 and r156480.
http://trac.webkit.org/changeset/156464
http://trac.webkit.org/changeset/156480
https://bugs.webkit.org/show_bug.cgi?id=121981

Leaking too much and killi
ng buildbot. (Requested by xenon on
#webkit).

Source/JavaScriptCore:

* bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedFunctionExecutable::paramString):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitExpressionInfo):
* bytecompiler/NodesCodegen.cpp:
(JSC::ForInNode::emitBytecode):
(JSC::FuncExprNode::emitBytecode):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createFormalParameterList):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::addVar):
* parser/NodeConstructors.h:
(JSC::CommaNode::CommaNode):
(JSC::ParameterNode::ParameterNode):
(JSC::ForInNode::ForInNode):
* parser/Nodes.cpp:
(JSC::FunctionParameters::create):
(JSC::FunctionParameters::FunctionParameters):
(JSC::FunctionParameters::~FunctionParameters):
* parser/Nodes.h:
(JSC::CommaNode::append):
(JSC::ParameterNode::ident):
(JSC::FunctionParameters::at):
(JSC::FunctionParameters::identifiers):
* parser/Parser.cpp:
(JSC::::Parser):
(JSC::::parseVarDeclaration):
(JSC::::parseVarDeclarationList):
(JSC::::parseForStatement):
(JSC::::parseFormalParameters):
(JSC::::parseAssignmentExpression):
* parser/Parser.h:
(JSC::Scope::declareParameter):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createFormalParameterList):
(JSC::SyntaxChecker::createForInLoop):
(JSC::SyntaxChecker::operatorStackPop):
* runtime/JSONObject.cpp:
* runtime/JSONObject.h:

LayoutTests:

* js/destructuring-assignment-expected.txt: Removed.
* js/destructuring-assignment.html: Removed.
* js/mozilla/strict/13.1-expected.txt:
* js/mozilla/strict/regress-532254-expected.txt:
* js/mozilla/strict/script-tests/13.1.js:
* js/regress/destructuring-arguments-expected.txt: Removed.
* js/regress/destructuring-arguments-length-expected.txt: Removed.
* js/regress/destructuring-arguments-length.html: Removed.
* js/regress/destructuring-arguments.html: Removed.
* js/regress/destructuring-swap-expected.txt: Removed.
* js/regress/destructuring-swap.html: Removed.
* js/regress/script-tests/destructuring-arguments-length.js: Removed.
* js/regress/script-tests/destructuring-arguments.js: Removed.
* js/regress/script-tests/destructuring-swap.js: Removed.
* js/script-tests/destructuring-assignment.js: Removed.
* sputnik/Conformance/13_Function_Definition/S13_A5.html:

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

7 years agoRemove the hash table mover
andersca@apple.com [Thu, 26 Sep 2013 21:25:29 +0000 (21:25 +0000)]
Remove the hash table mover
https://bugs.webkit.org/show_bug.cgi?id=121980

Reviewed by Andreas Kling.

Use std::move instead.

* wtf/HashTable.h:

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

7 years agoLayout Test plugins/access-after-page-destroyed.html is flaky
ap@apple.com [Thu, 26 Sep 2013 21:07:27 +0000 (21:07 +0000)]
Layout Test plugins/access-after-page-destroyed.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=121976

Reviewed by Anders Carlsson.

Clean up the test.

* plugins/access-after-page-destroyed-2-expected.txt: Added.
* plugins/access-after-page-destroyed-2.html: Copied from LayoutTests/plugins/access-after-page-destroyed.html.
This was testing two distinct issues, the second one unfittingly piled onto the first.
Split the test in two.

* plugins/access-after-page-destroyed-expected.txt:
* plugins/access-after-page-destroyed.html:
Modernized the test with js-test scripts, added a gc() call for predictability,
changed the test to fail quickly in the flaky case.

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

7 years agoTry to fix the Windows build.
andersca@apple.com [Thu, 26 Sep 2013 20:59:51 +0000 (20:59 +0000)]
Try to fix the Windows build.

* jit/JITThunks.cpp:
(JSC::JITThunks::hostFunctionStub):
* jit/JITThunks.h:

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

7 years agobuild-webkit --inspector-frontend should copy WebInspectorUI files
commit-queue@webkit.org [Thu, 26 Sep 2013 20:54:06 +0000 (20:54 +0000)]
build-webkit --inspector-frontend should copy WebInspectorUI files
https://bugs.webkit.org/show_bug.cgi?id=117851

Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-09-26
Reviewed by Joseph Pecoraro.

Change the --inspector-frontend build option to additionally build/copy
WebInspectorUI by setting it as the only project that needs to be built.

* Scripts/build-webkit:

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

7 years agoChange a couple of HashMap value types from OwnPtr to std::unique_ptr
andersca@apple.com [Thu, 26 Sep 2013 20:44:02 +0000 (20:44 +0000)]
Change a couple of HashMap value types from OwnPtr to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=121973

Reviewed by Andreas Kling.

Source/JavaScriptCore:

* API/JSClassRef.cpp:
(OpaqueJSClassContextData::OpaqueJSClassContextData):
(OpaqueJSClass::contextData):
* API/JSClassRef.h:
* bytecode/SamplingTool.h:
* ftl/FTLAbstractHeap.h:
* parser/Parser.cpp:
(JSC::::parseFunctionInfo):
* parser/SourceProviderCache.cpp:
(JSC::SourceProviderCache::add):
* parser/SourceProviderCache.h:
* parser/SourceProviderCacheItem.h:
(JSC::SourceProviderCacheItem::create):
* profiler/ProfilerCompilation.cpp:
(JSC::Profiler::Compilation::executionCounterFor):
(JSC::Profiler::Compilation::toJS):
* profiler/ProfilerCompilation.h:
* runtime/JSGlobalObject.h:

Source/WTF:

* wtf/RefPtrHashMap.h:
Add a missing std::forward.

* wtf/StdLibExtras.h:
(std::make_unique):
Add more overloads.

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

7 years agoMove DFG inline caching logic into jit/.
mark.lam@apple.com [Thu, 26 Sep 2013 20:27:14 +0000 (20:27 +0000)]
Move DFG inline caching logic into jit/.
https://bugs.webkit.org/show_bug.cgi?id=121749.

Reviewed by Geoffrey Garen.

Relanding http://trac.webkit.org/changeset/156235 after rebasing to latest
revision and fixing build breakages on Windows.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::unlink):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::resetStubInternal):
* bytecode/StructureStubInfo.h:
* dfg/DFGCallArrayAllocatorSlowPathGenerator.h:
(JSC::DFG::CallArrayAllocatorSlowPathGenerator::CallArrayAllocatorSlowPathGenerator):
(JSC::DFG::CallArrayAllocatorWithVariableSizeSlowPathGenerator::CallArrayAllocatorWithVariableSizeSlowPathGenerator):
* dfg/DFGJITCompiler.h:
* dfg/DFGOSRExitCompiler.h:
* dfg/DFGOperations.cpp:
(JSC::DFG::operationPutByValInternal):
* dfg/DFGOperations.h:
(JSC::DFG::operationNewTypedArrayWithSizeForType):
(JSC::DFG::operationNewTypedArrayWithOneArgumentForType):
* dfg/DFGRegisterSet.h: Removed.
* dfg/DFGRepatch.cpp: Removed.
* dfg/DFGRepatch.h: Removed.
* dfg/DFGScratchRegisterAllocator.h: Removed.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompare):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::compare):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::CompareAndBoxBooleanSlowPathGenerator::CompareAndBoxBooleanSlowPathGenerator):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::CompareAndBoxBooleanSlowPathGenerator::CompareAndBoxBooleanSlowPathGenerator):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGThunks.cpp:
* dfg/DFGThunks.h:
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
* ftl/FTLOSRExitCompiler.h:
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::writeBarrier):
* jit/JIT.cpp:
(JSC::JIT::linkFor):
(JSC::JIT::linkSlowCall):
* jit/JITCall.cpp:
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::privateCompileClosureCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::privateCompileClosureCall):
* jit/JITOperationWrappers.h: Copied from Source/JavaScriptCore/jit/JITOperationWrappers.h.
* jit/JITOperations.cpp: Copied from Source/JavaScriptCore/jit/JITOperations.cpp.
(JSC::getHostCallReturnValueWithExecState):
* jit/JITOperations.h: Copied from Source/JavaScriptCore/jit/JITOperations.h.
* jit/RegisterSet.h: Copied from Source/JavaScriptCore/jit/RegisterSet.h.
* jit/Repatch.cpp: Copied from Source/JavaScriptCore/jit/Repatch.cpp.
(JSC::tryBuildGetByIDList):
* jit/Repatch.h: Copied from Source/JavaScriptCore/jit/Repatch.h.
* jit/ScratchRegisterAllocator.h: Copied from Source/JavaScriptCore/jit/ScratchRegisterAllocator.h.
* jit/ThunkGenerators.cpp:
(JSC::oldStyleGenerateSlowCaseFor):
(JSC::oldStyleLinkForGenerator):
(JSC::oldStyleLinkCallGenerator):
(JSC::oldStyleLinkConstructGenerator):
(JSC::oldStyleLinkClosureCallGenerator):
(JSC::oldStyleVirtualForGenerator):
(JSC::oldStyleVirtualCallGenerator):
(JSC::oldStyleVirtualConstructGenerator):
(JSC::emitPointerValidation):
(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::linkForThunkGenerator):
(JSC::linkCallThunkGenerator):
(JSC::linkConstructThunkGenerator):
(JSC::linkClosureCallThunkGenerator):
(JSC::virtualForThunkGenerator):
(JSC::virtualCallThunkGenerator):
(JSC::virtualConstructThunkGenerator):
* jit/ThunkGenerators.h:

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

7 years agoRemove PassWeak.h
andersca@apple.com [Thu, 26 Sep 2013 19:48:46 +0000 (19:48 +0000)]
Remove PassWeak.h
https://bugs.webkit.org/show_bug.cgi?id=121971

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/PassWeak.h: Removed.
* heap/WeakInlines.h:

Source/WebCore:

* ForwardingHeaders/heap/PassWeak.h: Removed.

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

7 years ago[MediaStream API] implement VideoStreamTrack and AudioStreamTrack
eric.carlson@apple.com [Thu, 26 Sep 2013 19:37:48 +0000 (19:37 +0000)]
[MediaStream API] implement VideoStreamTrack and AudioStreamTrack
https://bugs.webkit.org/show_bug.cgi?id=121950

Reviewed by Dean Jackson.

No new tests, blocked by https://bugs.webkit.org/show_bug.cgi?id=121967

* CMakeLists.txt: Add new files.
* DerivedSources.make: Ditto.
* GNUmakefile.list.am: Ditto.

* Modules/mediastream/AudioStreamTrack.cpp: Added.
* Modules/mediastream/AudioStreamTrack.h: Added.
* Modules/mediastream/AudioStreamTrack.idl: Added.

* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::MediaStream): Create an AudioStreamTrack or a VideoStreamTrack.
(WebCore::MediaStream::addRemoteSource): Ditto.

* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::create): Removed.
* Modules/mediastream/MediaStreamTrack.h:

* Modules/mediastream/VideoStreamTrack.cpp: Added.
* Modules/mediastream/VideoStreamTrack.h: Added.
* Modules/mediastream/VideoStreamTrack.idl: Added.

* WebCore.xcodeproj/project.pbxproj: Add new files.

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

7 years agoStop using PassWeak
andersca@apple.com [Thu, 26 Sep 2013 19:23:11 +0000 (19:23 +0000)]
Stop using PassWeak
https://bugs.webkit.org/show_bug.cgi?id=121968

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* heap/Weak.h:
Remove all knowledge of PassWeak.

(JSC::Weak::Weak):
These constructors don't need to be explicit.

* heap/WeakInlines.h:
(JSC::weakAdd):
Change Value to be an rvalue reference and use std::forward.

* jit/JITThunks.cpp:
(JSC::JITThunks::hostFunctionStub):
Remove PassWeak.

* runtime/RegExpCache.cpp:
(JSC::RegExpCache::lookupOrCreate):
Use Weak instead of PassWeak.

* runtime/SimpleTypedArrayController.cpp:
Change add and set to take Weak by value and std::move into place.

* runtime/WeakGCMap.h:
(JSC::WeakGCMap::get):
(JSC::WeakGCMap::set):
(JSC::WeakGCMap::add):

Source/WebCore:

Update for JavaScriptCore changes.

* bindings/js/JSDOMBinding.h:
(WebCore::setInlineCachedWrapper):
(WebCore::cacheWrapper):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::setWrapper):
(WebCore::JSEventListener::jsFunction):
* bindings/js/JSMutationCallback.cpp:
(WebCore::JSMutationCallback::JSMutationCallback):
* bindings/js/JSNodeFilterCondition.cpp:
(WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
* bindings/js/ScriptWrappableInlines.h:
(WebCore::ScriptWrappable::setWrapper):
* bindings/js/WebCoreTypedArrayController.cpp:
* bridge/jsc/BridgeJSC.cpp:
(JSC::Bindings::Instance::createRuntimeObject):
* bridge/runtime_root.cpp:
(JSC::Bindings::RootObject::addRuntimeObject):

Source/WebKit2:

Update for JavaScriptCore changes.

* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::getOrCreateJSObject):

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

7 years agofast/css/font-face-data-uri.html is failing
ap@apple.com [Thu, 26 Sep 2013 19:14:28 +0000 (19:14 +0000)]
fast/css/font-face-data-uri.html is failing
https://bugs.webkit.org/show_bug.cgi?id=82744

Reviewed by Dan Bernstein.

* fast/css/font-face-data-uri.html: There is no need to keep retrying, we can just
wait for onload - as long as the font load starts early enough.

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

7 years agoPass a JSC::VM& to JS bindings object creation functions, rather than a JSC::ExecState*
weinig@apple.com [Thu, 26 Sep 2013 19:09:04 +0000 (19:09 +0000)]
Pass a JSC::VM& to JS bindings object creation functions, rather than a JSC::ExecState*
https://bugs.webkit.org/show_bug.cgi?id=121934

Reviewed by Geoffrey Garen.

../WebCore:

Reduce unnecessary loads by passing the JSC::VM to object creation/access functions
that don't need the ExecState.

* WebCore.exp.in:
* bindings/js/JSDOMBinding.h:
(WebCore::getDOMStructure):
(WebCore::deprecatedGetDOMStructure):
(WebCore::getDOMPrototype):
(WebCore::setInlineCachedWrapper):
(WebCore::createWrapper):
* bindings/js/JSDOMGlobalObject.h:
(WebCore::getDOMConstructor):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::image):
* bindings/js/JSDocumentCustom.cpp:
(WebCore::JSDocument::location):
* bindings/js/JSImageConstructor.cpp:
(WebCore::JSImageConstructor::finishCreation):
* bindings/js/JSImageConstructor.h:
(WebCore::JSImageConstructor::create):
* bindings/js/ScriptWrappable.h:
* bindings/js/ScriptWrappableInlines.h:
(WebCore::ScriptWrappable::setWrapper):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorDeclaration):
(GenerateConstructorHelperMethods):
* bridge/c/CRuntimeObject.cpp:
(JSC::Bindings::CRuntimeObject::CRuntimeObject):
(JSC::Bindings::CRuntimeObject::finishCreation):
* bridge/c/CRuntimeObject.h:
(JSC::Bindings::CRuntimeObject::create):
* bridge/c/c_instance.cpp:
(JSC::Bindings::CInstance::newRuntimeObject):
* bridge/jsc/BridgeJSC.cpp:
(JSC::Bindings::Instance::newRuntimeObject):
* bridge/objc/ObjCRuntimeObject.h:
(JSC::Bindings::ObjCRuntimeObject::create):
* bridge/objc/ObjCRuntimeObject.mm:
(JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
(JSC::Bindings::ObjCRuntimeObject::finishCreation):
* bridge/objc/objc_instance.mm:
(ObjcInstance::newRuntimeObject):
* bridge/objc/objc_runtime.h:
(JSC::Bindings::ObjcFallbackObjectImp::createPrototype):
* bridge/runtime_array.h:
(JSC::RuntimeArray::createPrototype):
* bridge/runtime_method.h:
(JSC::RuntimeMethod::createPrototype):
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::RuntimeObject):
(JSC::Bindings::RuntimeObject::finishCreation):
* bridge/runtime_object.h:
(JSC::Bindings::RuntimeObject::create):
(JSC::Bindings::RuntimeObject::createPrototype):

../WebKit/mac:

* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::newRuntimeObject):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create):
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::finishCreation):

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