Timeline



Sep 27, 2013:

10:35 PM Changeset in webkit [156595] by ap@apple.com
  • 1 edit in trunk/LayoutTests/ChangeLog

Restore accidentally removed ChangeLog lines.

9:08 PM Changeset in webkit [156594] by fpizlo@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Get rid of SetMyScope/SetCallee; use normal variables for the scope and callee of inlined call frames of closures
https://bugs.webkit.org/show_bug.cgi?id=122047

Reviewed by Oliver Hunt.

Currently we have the DFG reserve space for inline call frames at exactly the same stack
offsets that you would have gotten if the baseline interpreter/JIT had made the calls.
We need to get rid of that. One of the weirder parts of this is that we have special DFG
operations for accessing these inlined call frame headers. It's really hard for any
analysis of DFG IR to see what the liveness of any of those frame header "variables" is;
the liveness behaves like flushed arguments (it's all live until end of the inlinee) but
we don't have anything like a Flush node for those special variables.

This patch gets rid of the special operations for accessing inline call frame headers.
GetMyScope and GetCallee still remain, and are only for accessing the machine call
frame's scope/callee entries. The inline call frame's scope/callee now behave like
normal variables, and have Flush behavior just like inline arguments.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getDirect):
(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::setDirect):
(JSC::DFG::ByteCodeParser::set):
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::flush):
(JSC::DFG::ByteCodeParser::InlineStackEntry::remapOperand):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::getScope):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::getCalleeLoadElimination):
(JSC::DFG::CSEPhase::getMyScopeLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

5:32 PM Changeset in webkit [156593] by Bem Jones-Bey
  • 3 edits
    10 adds in trunk/LayoutTests

[CSS Shapes] New positioning model: Positive margins
https://bugs.webkit.org/show_bug.cgi?id=118089

Reviewed by Alexandru Chiculita.

The remaining tests for shape-outside with positive margins. These
have all been imported from the CSSWG's repo.

  • csswg/contributors/adobe/submitted/shapes/shape-outside/resources/w3c-import.log:
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-005-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-005.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-006-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-006.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-007-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-007.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-008-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-008.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-009-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-009.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/w3c-import.log:
5:11 PM Changeset in webkit [156592] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test media/media-controller-playback.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122042

  • platform/mac/TestExpectations: Marked as such.
5:03 PM Changeset in webkit [156591] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

4:45 PM Changeset in webkit [156590] by beidson@apple.com
  • 32 edits in trunk/Source/WebCore

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.
4:40 PM Changeset in webkit [156589] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

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):

4:29 PM Changeset in webkit [156588] by enrica@apple.com
  • 22 edits in trunk/Source

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:
4:19 PM Changeset in webkit [156587] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit/win

[Windows] Unreviewed build fix following r156560.

  • WebView.h:
4:17 PM Changeset in webkit [156586] by hmuller@adobe.com
  • 12 edits
    4 adds in trunk

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:
4:09 PM Changeset in webkit [156585] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.
4:05 PM Changeset in webkit [156584] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.
4:01 PM Changeset in webkit [156583] by ap@apple.com
  • 2 edits in trunk/LayoutTests

animations/transform-non-accelerated.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122038

  • platform/mac/TestExpectations: Marking as such.
3:34 PM Changeset in webkit [156582] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

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().

3:24 PM Changeset in webkit [156581] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Fixed linker symbols I broke last time.

3:14 PM Changeset in webkit [156580] by ap@apple.com
  • 22 edits in trunk/Source/WebCore

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:
3:05 PM Changeset in webkit [156579] by Lucas Forschler
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg

Add supporting logic for r156570.

3:01 PM Changeset in webkit [156578] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

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.
2:54 PM Changeset in webkit [156577] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebKit

[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.

2:52 PM Changeset in webkit [156576] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.
2:29 PM Changeset in webkit [156575] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

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:
2:18 PM Changeset in webkit [156574] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

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:
2:15 PM Changeset in webkit [156573] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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
2:11 PM Changeset in webkit [156572] by ap@apple.com
  • 2 edits in trunk/LayoutTests

[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.
1:48 PM Changeset in webkit [156571] by ap@apple.com
  • 2 edits in trunk/Tools

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.

1:47 PM Changeset in webkit [156570] by ap@apple.com
  • 3 edits in trunk/Tools

Don't hardcode builder specific configuration in buildbot master.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.

1:47 PM Changeset in webkit [156569] by timothy_horton@apple.com
  • 3 edits
    2 adds in trunk

[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.
1:44 PM Changeset in webkit [156568] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.

1:25 PM Changeset in webkit [156567] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[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:
1:06 PM Changeset in webkit [156566] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[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:
12:22 PM Changeset in webkit [156565] by timothy@apple.com
  • 2 edits in trunk/Source/WebKit/win

Attempt to fix Windows build.

11:49 AM Changeset in webkit [156564] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

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):

11:48 AM Changeset in webkit [156563] by Lucas Forschler
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

11:46 AM Changeset in webkit [156562] by Lucas Forschler
  • 1 copy in tags/Safari-537.60.3

New Tag.

11:41 AM Changeset in webkit [156561] by jer.noble@apple.com
  • 2 edits in trunk/LayoutTests

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:
11:38 AM Changeset in webkit [156560] by andersca@apple.com
  • 27 edits in trunk/Source

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):

11:36 AM Changeset in webkit [156559] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/JavaScriptCore

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.

11:34 AM Changeset in webkit [156558] by Beth Dakin
  • 23 edits in trunk/Source

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:
11:22 AM Changeset in webkit [156557] by hyatt@apple.com
  • 9 edits in trunk/Source/WebCore

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):

10:52 AM Changeset in webkit [156556] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Re-indent Settings.h

Rubber-stamped by Anders Carlsson.

10:42 AM Changeset in webkit [156555] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

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 Moreira Magalhaes> 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.

10:40 AM Changeset in webkit [156554] by eric.carlson@apple.com
  • 9 edits in trunk

[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:
10:26 AM Changeset in webkit [156553] by dino@apple.com
  • 9 edits in trunk

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:
10:24 AM Changeset in webkit [156552] by timothy@apple.com
  • 1 edit in trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in

Attempt to fix windows build.

9:59 AM Changeset in webkit [156551] by mario@webkit.org
  • 5 edits in trunk

[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.
9:39 AM Changeset in webkit [156550] by Darin Adler
  • 840 edits
    7 moves in trunk

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.
9:37 AM Changeset in webkit [156549] by rgabor@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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:
9:34 AM Changeset in webkit [156548] by Darin Adler
  • 2 edits in trunk/Tools

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.
9:12 AM Changeset in webkit [156547] by galpeter@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebKit2

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:
9:05 AM Changeset in webkit [156546] by jer.noble@apple.com
  • 45 edits
    8 adds
    2 deletes in trunk

[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:
8:55 AM Changeset in webkit [156545] by Bem Jones-Bey
  • 7 edits
    2 adds in trunk

[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:
8:34 AM Changeset in webkit [156544] by akling@apple.com
  • 2 edits in trunk/LayoutTests

Unrehued mac-lion rebaseline.

  • platform/mac-lion/js/dom/global-constructors-attributes-expected.txt:
8:09 AM Changeset in webkit [156543] by Darin Adler
  • 119 edits
    2 adds in trunk

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.

7:31 AM Changeset in webkit [156542] by gyuyoung.kim@samsung.com
  • 10 edits in trunk/Source/WebCore

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):

6:48 AM Changeset in webkit [156541] by commit-queue@webkit.org
  • 4 edits in trunk

[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:
6:40 AM Changeset in webkit [156540] by akling@apple.com
  • 7 edits in trunk/Source

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.

6:31 AM Changeset in webkit [156539] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[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:
6:01 AM Changeset in webkit [156538] by Patrick Gansterer
  • 2 edits
    2 adds
    1 delete in trunk/Tools

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.
5:58 AM Changeset in webkit [156537] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.2.0

Tagging the WebKitGTK+ 2.2.0 release

5:47 AM Changeset in webkit [156536] by Alan Bujtas
  • 5 edits
    2 adds in trunk

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.
5:16 AM Changeset in webkit [156535] by allan.jensen@digia.com
  • 6 edits in trunk

[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:
4:57 AM Changeset in webkit [156534] by allan.jensen@digia.com
  • 3 edits in trunk/Tools

[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:
3:40 AM Changeset in webkit [156533] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.2

Unreviewed. Update NEWS and Versions.m4 for 2.2.0 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Add release notes.
2:44 AM Changeset in webkit [156532] by mario@webkit.org
  • 23 edits
    2 adds in trunk

[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.
2:07 AM Changeset in webkit [156531] by mario@webkit.org
  • 3 edits in trunk/Tools

[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.

1:58 AM Changeset in webkit [156530] by mario@webkit.org
  • 5 edits in trunk

[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.

1:47 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:48 AM Changeset in webkit [156529] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WTF

[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 <Gustavo Noronha Silva> on 2013-09-27
Reviewed by Benjamin Poulain.

  • wtf/StdLibExtras.h:

Sep 26, 2013:

8:26 PM Changeset in webkit [156528] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

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):

7:02 PM Changeset in webkit [156527] by Antti Koivisto
  • 32 edits in trunk

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:
6:58 PM Changeset in webkit [156526] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

"Build fix".

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

  • wtf/HashTable.h:
6:56 PM Changeset in webkit [156525] by ggaren@apple.com
  • 5 edits in trunk

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!
6:51 PM Changeset in webkit [156524] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

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:
6:46 PM Changeset in webkit [156523] by ggaren@apple.com
  • 4 edits
    39 adds in trunk

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.
6:08 PM Changeset in webkit [156522] by eric.carlson@apple.com
  • 29 edits
    4 adds in trunk

[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".

5:39 PM Changeset in webkit [156521] by akling@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

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.

5:27 PM Changeset in webkit [156520] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

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 <Brian Burg> 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):

5:27 PM Changeset in webkit [156519] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.
5:23 PM Changeset in webkit [156518] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Make GCC happy

4:51 PM Changeset in webkit [156517] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed Build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing

symbol export to support tests.

4:37 PM Changeset in webkit [156516] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[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.
4:36 PM Changeset in webkit [156515] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

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:
4:32 PM Changeset in webkit [156514] by oliver@apple.com
  • 19 edits
    12 adds in trunk

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

4:16 PM Changeset in webkit [156513] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[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):

4:00 PM Changeset in webkit [156512] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

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:
3:53 PM Changeset in webkit [156511] by msaboff@apple.com
  • 68 edits in trunk/Source/JavaScriptCore

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:
3:49 PM Changeset in webkit [156510] by Brent Fulgham
  • 7 edits in trunk/Source/WebCore

[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:
3:47 PM Changeset in webkit [156509] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.

3:45 PM Changeset in webkit [156508] by andersca@apple.com
  • 8 edits
    2 deletes in trunk/Source/WebKit2

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:
3:37 PM Changeset in webkit [156507] by andersca@apple.com
  • 5 edits in trunk/Source/WTF

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:
3:29 PM Changeset in webkit [156506] by dino@apple.com
  • 6 edits
    2 adds in trunk

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.
3:25 PM Changeset in webkit [156505] by andersca@apple.com
  • 4 edits in trunk/Source

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):

3:20 PM Changeset in webkit [156504] by andersca@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Attempt to fix the FTL build.

  • ftl/FTLAbstractHeap.cpp:

(JSC::FTL::IndexedAbstractHeap::atSlow):

3:19 PM Changeset in webkit [156503] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[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):

3:15 PM Changeset in webkit [156502] by Lucas Forschler
  • 2 edits in branches/safari-537.60-branch/Source/WebKit/win

Merged r156433. <rdar://problem/15092137>

3:13 PM Changeset in webkit [156501] by Lucas Forschler
  • 5 edits in branches/safari-537.60-branch/Source

Merged r156416. <rdar://problem/15092135>

3:01 PM Changeset in webkit [156500] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

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.

2:45 PM Changeset in webkit [156499] by timothy@apple.com
  • 26 edits in trunk/Source/WebCore/bindings/scripts/test/JS

Update expected binding test results after r156498.

2:43 PM Changeset in webkit [156498] by akling@apple.com
  • 56 edits in trunk/Source/JavaScriptCore

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.

2:27 PM Changeset in webkit [156497] by commit-queue@webkit.org
  • 19 edits
    12 deletes in trunk

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:
2:25 PM Changeset in webkit [156496] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

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:
2:07 PM Changeset in webkit [156495] by ap@apple.com
  • 3 edits
    1 copy
    1 add in trunk/LayoutTests

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.

1:59 PM Changeset in webkit [156494] by andersca@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Try to fix the Windows build.

  • jit/JITThunks.cpp:

(JSC::JITThunks::hostFunctionStub):

  • jit/JITThunks.h:
1:54 PM Changeset in webkit [156493] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

build-webkit --inspector-frontend should copy WebInspectorUI files
https://bugs.webkit.org/show_bug.cgi?id=117851

Patch by Brian J. Burg <Brian Burg> 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:
1:44 PM Changeset in webkit [156492] by andersca@apple.com
  • 15 edits in trunk/Source

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.

1:32 PM Changeset in webkit [156491] by Lucas Forschler
  • 4 edits
    2 copies in tags/Safari-538.1

Merged r156404. <rdar://problem/15081686>

1:27 PM Changeset in webkit [156490] by mark.lam@apple.com
  • 29 edits
    7 copies
    4 deletes in trunk/Source/JavaScriptCore

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:
12:48 PM Changeset in webkit [156489] by andersca@apple.com
  • 7 edits
    2 deletes in trunk/Source

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.
12:37 PM Changeset in webkit [156488] by eric.carlson@apple.com
  • 8 edits
    6 adds in trunk/Source/WebCore

[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.
12:23 PM Changeset in webkit [156487] by andersca@apple.com
  • 19 edits in trunk/Source

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):

12:14 PM Changeset in webkit [156486] by ap@apple.com
  • 2 edits in trunk/LayoutTests

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.

12:09 PM Changeset in webkit [156485] by weinig@apple.com
  • 28 edits in trunk/Source

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):

11:59 AM Changeset in webkit [156484] by Lucas Forschler
  • 1 copy in tags/Safari-538.1

New Tag.

11:40 AM Changeset in webkit [156483] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Activity viewer not properly reset when reloading
https://bugs.webkit.org/show_bug.cgi?id=121958

Reviewed by Darin Adler.

Reset the resources count and accumulated size when we detect the main frame
has changed, which will work with documents where there are no resources besides
frames in which case WebInspector.Frame.Event.AllResourcesRemoved was not fired
and our counts wouldn't be reset correctly.

  • UserInterface/DashboardManager.js:

(WebInspector.DashboardManager):
(WebInspector.DashboardManager.prototype._mainResourceDidChange):

11:31 AM Changeset in webkit [156482] by commit-queue@webkit.org
  • 65 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r156474.
http://trac.webkit.org/changeset/156474
https://bugs.webkit.org/show_bug.cgi?id=121966

Broke the builds. (Requested by xenon on #webkit).

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::registerName):
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::createActivation):
(JSC::CodeBlock::nameForRegister):

  • bytecode/CodeBlock.h:

(JSC::unmodifiedArgumentsRegister):
(JSC::CodeBlock::isKnownNotImmediate):
(JSC::CodeBlock::setThisRegister):
(JSC::CodeBlock::thisRegister):
(JSC::CodeBlock::setArgumentsRegister):
(JSC::CodeBlock::argumentsRegister):
(JSC::CodeBlock::uncheckedArgumentsRegister):
(JSC::CodeBlock::setActivationRegister):
(JSC::CodeBlock::activationRegister):
(JSC::CodeBlock::uncheckedActivationRegister):
(JSC::CodeBlock::usesArguments):
(JSC::CodeBlock::isCaptured):

  • bytecode/Instruction.h:
  • bytecode/LazyOperandValueProfile.h:

(JSC::LazyOperandValueProfileKey::LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::operator!):
(JSC::LazyOperandValueProfileKey::hash):
(JSC::LazyOperandValueProfileKey::operand):
(JSC::LazyOperandValueProfileKey::isHashTableDeletedValue):
(JSC::LazyOperandValueProfile::LazyOperandValueProfile):

  • bytecode/MethodOfGettingAValueProfile.cpp:

(JSC::MethodOfGettingAValueProfile::fromLazyOperand):
(JSC::MethodOfGettingAValueProfile::getSpecFailBucket):

  • bytecode/Operands.h:

(JSC::localToOperand):
(JSC::operandIsLocal):
(JSC::operandToLocal):
(JSC::operandIsArgument):
(JSC::operandToArgument):
(JSC::argumentToOperand):
(JSC::Operands::operand):
(JSC::Operands::hasOperand):
(JSC::Operands::setOperand):
(JSC::Operands::operandForIndex):
(JSC::Operands::setOperandFirstTime):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::setThisRegister):
(JSC::UnlinkedCodeBlock::setActivationRegister):
(JSC::UnlinkedCodeBlock::setArgumentsRegister):
(JSC::UnlinkedCodeBlock::usesArguments):
(JSC::UnlinkedCodeBlock::argumentsRegister):
(JSC::UnlinkedCodeBlock::usesGlobalObject):
(JSC::UnlinkedCodeBlock::setGlobalObjectRegister):
(JSC::UnlinkedCodeBlock::globalObjectRegister):
(JSC::UnlinkedCodeBlock::thisRegister):
(JSC::UnlinkedCodeBlock::activationRegister):

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::displacedInJSStack):
(JSC::ValueRecovery::virtualRegister):
(JSC::ValueRecovery::dumpInContext):

  • bytecode/VirtualRegister.h:

(WTF::printInternal):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::addVar):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::createLazyRegisterIfNecessary):
(JSC::BytecodeGenerator::newRegister):
(JSC::BytecodeGenerator::emitLoadGlobalObject):
(JSC::BytecodeGenerator::emitGetArgumentsLength):
(JSC::BytecodeGenerator::emitGetArgumentByVal):
(JSC::BytecodeGenerator::createArgumentsIfNecessary):
(JSC::BytecodeGenerator::emitReturn):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::registerFor):

  • bytecompiler/RegisterID.h:

(JSC::RegisterID::RegisterID):
(JSC::RegisterID::setIndex):
(JSC::RegisterID::index):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::thisObject):

  • dfg/DFGAbstractHeap.h:

(JSC::DFG::AbstractHeap::Payload::Payload):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):
(JSC::DFG::::clobberCapturedVars):

  • dfg/DFGArgumentPosition.h:

(JSC::DFG::ArgumentPosition::dump):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):
(JSC::DFG::ArgumentsSimplificationPhase::observeBadArgumentsUse):
(JSC::DFG::ArgumentsSimplificationPhase::isOKToOptimize):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::newVariableAccessData):
(JSC::DFG::ByteCodeParser::getDirect):
(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::setDirect):
(JSC::DFG::ByteCodeParser::set):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::findArgumentPositionForLocal):
(JSC::DFG::ByteCodeParser::findArgumentPosition):
(JSC::DFG::ByteCodeParser::flush):
(JSC::DFG::ByteCodeParser::flushDirect):
(JSC::DFG::ByteCodeParser::getToInt32):
(JSC::DFG::ByteCodeParser::getThis):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::InlineStackEntry::remapOperand):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
(JSC::DFG::ByteCodeParser::emitArgumentPhantoms):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::handleTypedArrayConstructor):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGCFGSimplificationPhase.cpp:
  • dfg/DFGCPSRethreadingPhase.cpp:

(JSC::DFG::CPSRethreadingPhase::canonicalizeGetLocal):
(JSC::DFG::CPSRethreadingPhase::canonicalizeFlushOrPhantomLocal):
(JSC::DFG::CPSRethreadingPhase::canonicalizeSetArgument):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::isCapturedAtOrAfter):

  • dfg/DFGFlushLivenessAnalysisPhase.cpp:

(JSC::DFG::FlushLivenessAnalysisPhase::setForNode):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::argumentsRegisterFor):
(JSC::DFG::Graph::uncheckedArgumentsRegisterFor):
(JSC::DFG::Graph::uncheckedActivationRegisterFor):
(JSC::DFG::Graph::valueProfileFor):

  • dfg/DFGJITCode.cpp:

(JSC::DFG::JITCode::reconstruct):

  • dfg/DFGNode.h:

(JSC::DFG::Node::Node):
(JSC::DFG::Node::convertToGetLocalUnlinked):
(JSC::DFG::Node::hasVirtualRegister):
(JSC::DFG::Node::virtualRegister):
(JSC::DFG::Node::setVirtualRegister):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSREntrypointCreationPhase.cpp:

(JSC::DFG::OSREntrypointCreationPhase::run):

  • dfg/DFGOSRExit.h:
  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGRegisterBank.h:

(JSC::DFG::RegisterBank::tryAllocate):
(JSC::DFG::RegisterBank::allocateSpecific):
(JSC::DFG::RegisterBank::retain):
(JSC::DFG::RegisterBank::isInUse):
(JSC::DFG::RegisterBank::dump):
(JSC::DFG::RegisterBank::releaseAtIndex):
(JSC::DFG::RegisterBank::allocateInternal):
(JSC::DFG::RegisterBank::MapEntry::MapEntry):

  • dfg/DFGScoreBoard.h:

(JSC::DFG::ScoreBoard::allocate):
(JSC::DFG::ScoreBoard::use):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::checkConsistency):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compileInlineStart):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::allocate):
(JSC::DFG::SpeculativeJIT::fprAllocate):
(JSC::DFG::SpeculativeJIT::silentSpillAllRegistersImpl):
(JSC::DFG::SpeculativeJIT::flushRegisters):
(JSC::DFG::SpeculativeJIT::isFlushed):
(JSC::DFG::SpeculativeJIT::argumentSlot):
(JSC::DFG::SpeculativeJIT::argumentTagSlot):
(JSC::DFG::SpeculativeJIT::argumentPayloadSlot):
(JSC::DFG::SpeculativeJIT::valueSourceForOperand):
(JSC::DFG::SpeculativeJIT::setNodeForOperand):
(JSC::DFG::SpeculativeJIT::valueSourceReferenceForOperand):
(JSC::DFG::SpeculativeJIT::recordSetLocal):
(JSC::DFG::SpeculativeJIT::generationInfoFromVirtualRegister):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValidate.cpp:

(JSC::DFG::Validate::validate):
(JSC::DFG::Validate::validateCPS):
(JSC::DFG::Validate::checkOperand):
(JSC::DFG::Validate::reportValidationContext):

  • dfg/DFGValueRecoveryOverride.h:

(JSC::DFG::ValueRecoveryOverride::ValueRecoveryOverride):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::operand):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):
(JSC::DFG::VariableAccessData::tallyVotesForShouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::flushFormat):

  • dfg/DFGVariableEvent.h:

(JSC::DFG::VariableEvent::spill):
(JSC::DFG::VariableEvent::setLocal):

  • dfg/DFGVariableEventStream.cpp:

(JSC::DFG::VariableEventStream::reconstruct):

  • dfg/DFGVirtualRegisterAllocationPhase.cpp:

(JSC::DFG::VirtualRegisterAllocationPhase::run):

  • ftl/FTLExitArgumentForOperand.h:

(JSC::FTL::ExitArgumentForOperand::ExitArgumentForOperand):
(JSC::FTL::ExitArgumentForOperand::operand):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileGetArgument):
(JSC::FTL::LowerDFGToLLVM::compileExtractOSREntryLocal):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::observeMovHint):
(JSC::FTL::LowerDFGToLLVM::addressFor):
(JSC::FTL::LowerDFGToLLVM::payloadFor):
(JSC::FTL::LowerDFGToLLVM::tagFor):

  • ftl/FTLOSREntry.cpp:

(JSC::FTL::prepareOSREntry):

  • ftl/FTLOSRExit.cpp:

(JSC::FTL::OSRExit::convertToForward):

  • ftl/FTLOSRExit.h:
  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • interpreter/CallFrame.h:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::dumpRegisters):
(JSC::unwindCallFrame):
(JSC::Interpreter::unwind):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::addressFor):
(JSC::AssemblyHelpers::tagFor):
(JSC::AssemblyHelpers::payloadFor):
(JSC::AssemblyHelpers::argumentsRegisterFor):

  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITInlines.h:

(JSC::JIT::emitGetVirtualRegister):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_tear_off_arguments):
(JSC::JIT::emit_op_get_pnames):
(JSC::JIT::emit_op_enter):
(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emitSlow_op_get_argument_by_val):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_enter):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::BytecodeSequence):

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

11:29 AM Changeset in webkit [156481] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Keep DOM tree expanded on page reload
https://bugs.webkit.org/show_bug.cgi?id=121665

Reviewed by Darin Adler.

Allow the node that was selected before reloading the page to be selected
at the page is reloaded. Credit goes to Joseph Pecoraro for the fix.

  • UserInterface/DOMTreeContentView.js:

(WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable.selectNode):

11:13 AM Changeset in webkit [156480] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Attempt to fix MSVC build

11:13 AM Changeset in webkit [156479] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit2

[WK2] Crash at at com.apple.WebKit2: WebKit::VoidCallback::invalidate + 46
https://bugs.webkit.org/show_bug.cgi?id=121910

Reviewed by Darin Adler.

Store a copy of the VoidCallback passed to WKPage, and invalidate the callback
during dealloc. The VoidCallback class assumes that it will only ever be
invalidated or invoked once, so change the ASSERTs into an early return.

  • UIProcess/GenericCallback.h:

(WebKit::VoidCallback::performCallback): Exit early if previously invalidated.
(WebKit::VoidCallback::invalidate): Ditto.

  • UIProcess/mac/WKFullScreenWindowController.h:
  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController dealloc]): Invalidate the repaint callback if present.
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Ditto & create a new callback.
(-[WKFullScreenWindowController completeFinishExitFullScreenAnimationAfterRepaint]): Clear the callback.

11:13 AM Changeset in webkit [156478] by commit-queue@webkit.org
  • 20 edits
    1 delete in trunk

Unreviewed, rolling out r156451.
http://trac.webkit.org/changeset/156451
https://bugs.webkit.org/show_bug.cgi?id=121965

Broke two fast/multicol tests. (Requested by kling on
#webkit).

Source/WebCore:

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::propagateStyleToAnonymousChildren):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::regionForCompositedLayer):
(WebCore::RenderFlowThread::updateRegionForRenderLayer):
(WebCore::RenderFlowThread::updateLayerToRegionMappings):

  • rendering/RenderFlowThread.h:
  • rendering/RenderGeometryMap.cpp:
  • rendering/RenderGeometryMap.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::shouldClipCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::canBeComposited):
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderMultiColumnSet.cpp:
  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::setRequiresLayerForCompositing):

  • rendering/RenderRegion.h:
  • rendering/RenderRegionSet.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):

LayoutTests:

  • fast/regions/layers/accelerated-compositing/crash-transform-inside-region-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/crash-transform-inside-region.html: Removed.
  • fast/regions/layers/accelerated-compositing/floated-region-with-transformed-child-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/floated-region-with-transformed-child.html: Removed.
  • fast/regions/layers/accelerated-compositing/move-layer-from-one-region-to-another-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/move-layer-from-one-region-to-another.html: Removed.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-for-video-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-for-video.html: Removed.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding.html: Removed.
  • fast/regions/layers/accelerated-compositing/region-as-layer-in-another-flowthread-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/region-as-layer-in-another-flowthread.html: Removed.
  • fast/regions/layers/accelerated-compositing/transform-transparent-positioned-video-inside-region-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/transform-transparent-positioned-video-inside-region.html: Removed.
  • fast/regions/layers/accelerated-compositing/transformed-layer-inside-transformed-layer-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/transformed-layer-inside-transformed-layer.html: Removed.
  • fast/regions/layers/accelerated-compositing/z-index-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/z-index-update-expected.html: Removed.
  • fast/regions/layers/accelerated-compositing/z-index-update.html: Removed.
  • fast/regions/layers/accelerated-compositing/z-index.html: Removed.
11:09 AM Changeset in webkit [156477] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] JSValue* exception is unused since r70703 in JITStackFrame.
https://bugs.webkit.org/show_bug.cgi?id=121962

This is a cosmetic change, but it could avoid people reading sh4 part to
waste time to understand why there is a JSValue* here.

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

  • jit/JITStubs.h:
11:00 AM Changeset in webkit [156476] by andersca@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

WeakGCMap should not inherit from HashMap
https://bugs.webkit.org/show_bug.cgi?id=121964

Reviewed by Geoffrey Garen.

Add the HashMap as a member variable instead and implement the missing member functions.

  • runtime/WeakGCMap.h:
10:57 AM Changeset in webkit [156475] by zandobersek@gmail.com
  • 3 edits in trunk/Tools

XvfbDriver should set up Xvfb instances providing screens of 8-bit depth
https://bugs.webkit.org/show_bug.cgi?id=121951

Reviewed by Carlos Garcia Campos.

Screens with 24-bit depth are causing problems as it doesn't seem to be possible to fall back to
software rendering successfully on the GTK 64-bit release builder, resulting in crashes in almost
500 layout tests that trigger accelerated compositing to be used.

  • Scripts/webkitpy/port/xvfbdriver.py:

(XvfbDriver._start):

  • Scripts/webkitpy/port/xvfbdriver_unittest.py: Update unit test baselines.

(XvfbDriverTest.test_start_no_pixel_tests):
(XvfbDriverTest.test_start_pixel_tests):
(XvfbDriverTest.test_start_arbitrary_worker_number):
(XvfbDriverTest.test_next_free_display):
(XvfbDriverTest.test_start_next_worker):

10:50 AM Changeset in webkit [156474] by msaboff@apple.com
  • 65 edits in trunk/Source/JavaScriptCore

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/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/JITInlines.h:
  • jit/JITOpcodes.cpp:
  • jit/JITOpcodes32_64.cpp:
  • jit/JITStubs.cpp:
  • llint/LLIntSlowPaths.cpp:
  • profiler/ProfilerBytecodeSequence.cpp:
  • runtime/CommonSlowPaths.cpp:
  • runtime/JSActivation.cpp:
10:43 AM Changeset in webkit [156473] by eric.carlson@apple.com
  • 34 edits
    2 adds
    3 deletes in trunk/Source/WebCore

[MediaStream] Cleanup platform interface
https://bugs.webkit.org/show_bug.cgi?id=121935

Reviewed by Jer Noble.

No new tests, tests will be updated in the next patch.

  • CMakeLists.txt: Remove MediaStreamComponent.cpp.
  • GNUmakefile.list.am: Remove MediaStreamComponent.h|cpp and MediaStreamSourcesQueryClient.h.

Add MediaStreamConstraintsValidationClient.h and MediaStreamCreationClient.h.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::processTrack): Duplicate MediaStreamSource when necessary to work around bug 121954.
(WebCore::createFromSourceVectors): MediaStreamCenter::instance -> MediaStream::sharedStreamCenter.
(WebCore::MediaStream::MediaStream): *Components -> *Streams.
(WebCore::MediaStream::setEnded): New.
(WebCore::MediaStream::stop): MediaStreamCenter::instance -> MediaStream::sharedStreamCenter.
(WebCore::MediaStream::addTrack): Append the track parameter rather than duplicating it, as per spec.
(WebCore::MediaStream::removeTrack): *Components -> *Streams.
(WebCore::MediaStream::trackDidEnd): Renamed from trackEnded.
(WebCore::MediaStream::streamDidEnd): Renamed from streamEnded.
(WebCore::MediaStream::addRemoteSource): Renamed from addRemoteTrack. *Components -> *Streams.
(WebCore::MediaStream::removeRemoteSource): Renamed from removeRemoteTrack. *Components -> *Streams.

  • Modules/mediastream/MediaStream.h:
  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::create): *Component -> *Stream.
(WebCore::MediaStreamTrack::MediaStreamTrack): Don't assume source is valid.
(WebCore::MediaStreamTrack::~MediaStreamTrack): Ditto.
(WebCore::MediaStreamTrack::kind): Ditto. AtomicString -> const AtomicString&.
(WebCore::MediaStreamTrack::setSource): Moved from .h file.
(WebCore::MediaStreamTrack::id): Don't assume source is valid. Create ID when the source doesn't have one.
(WebCore::MediaStreamTrack::label): Don't assume source is valid.
(WebCore::MediaStreamTrack::enabled):
(WebCore::MediaStreamTrack::setEnabled): *Component -> *Stream. MediaStreamCenter::instance -> MediaStreamCenter::shared.
(WebCore::MediaStreamTrack::readyState): "muted" is not a readyState, but "new" is.
(WebCore::MediaStreamTrack::getSources): MediaStreamCenter::instance -> MediaStreamCenter::shared.
(WebCore::MediaStreamTrack::ended): *Component -> *Stream.
(WebCore::MediaStreamTrack::sourceChangedState): Dispatch "started" and "unmuted" events.
(WebCore::MediaStreamTrack::trackDidEnd): Renamed from didEndTrack. m_component -> m_source.

  • Modules/mediastream/MediaStreamTrack.h:
  • Modules/mediastream/RTCDTMFSender.cpp:

(WebCore::RTCDTMFSender::create): track->component() -> track->source();

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::didRemoveRemoteStream): Ditto.

  • Modules/mediastream/RTCStatsRequestImpl.cpp:

(WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl): Ditto.
(WebCore::RTCStatsRequestImpl::component): Removed, it was unused.

  • Modules/mediastream/RTCStatsRequestImpl.h:
  • Modules/mediastream/UserMediaClient.h:
  • Modules/mediastream/UserMediaController.h:

(WebCore::UserMediaController::requestPermission): Renamed from requestUserMedia, get rid of source

vector parameters.

(WebCore::UserMediaController::cancelRequest): Renamed from cancelUserMediaRequest.

  • Modules/mediastream/UserMediaRequest.cpp:

(WebCore::parseOptions): MediaConstraintsImpl -> MediaConstraints.
(WebCore::UserMediaRequest::create): Ditto.
(WebCore::UserMediaRequest::UserMediaRequest): Ditto.
(WebCore::UserMediaRequest::securityOrigin): New.
(WebCore::UserMediaRequest::start): Request constraint validation.
(WebCore::UserMediaRequest::constraintsValidated): New. Callback from media engine when constraints

can be supported.

(WebCore::UserMediaRequest::requestPermission): New. Ask user media client for permission to access media.
(WebCore::UserMediaRequest::userMediaAccessGranted): New. Access has been granted.
(WebCore::UserMediaRequest::createMediaStream): New. Allowed to access media, ask media engine

to create stream sources.

(WebCore::UserMediaRequest::userMediaAccessDenied): New. User media client has denied access request.
(WebCore::UserMediaRequest::constraintsInvalid): New. Media engine can not support constraints.
(WebCore::UserMediaRequest::didCreateStream): New. Media engine has created stream sources.
(WebCore::UserMediaRequest::callSuccessHandler): New. Create stream from sources and call success handler.
(WebCore::UserMediaRequest::failedToCreateStreamWithConstraintsError): Renamed from constraintFailure.
(WebCore::UserMediaRequest::failedToCreateStreamWithPermissionError): Renamed from permissionFailure.
(WebCore::UserMediaRequest::callErrorHandler):
(WebCore::UserMediaRequest::contextDestroyed): cancelUserMediaRequest -> cancelRequest.

  • Modules/mediastream/UserMediaRequest.h:
  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createMediaStreamSource): localAudio->component()->source() -> localAudio->source().

  • Modules/webaudio/MediaStreamAudioDestinationNode.cpp:

(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): MediaStreamSource::TypeAudio ->

MediaStreamSource::Audio, MediaStreamSource::ReadyStateLive -> MediaStreamSource::Live.
MediaStreamCenter::instance -> MediaStreamCenter::shared.

  • WebCore.exp.in: Export new symbols.
  • WebCore.xcodeproj/project.pbxproj: Add new files and remove deleted files.
  • dom/EventNames.h: Define "started" event.
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::mediaStreamCenterOverride): Make it possible to override the shared stream center. Will

be used for testing in a later patch.

(WebCore::MediaStreamCenter::shared): Renamed from instance. Return current stream center.
(WebCore::MediaStreamCenter::setSharedStreamCenter): Override current stream center.
(WebCore::MediaStreamCenter::endLocalMediaStream): Never call the descriptor client, always call

the descriptor and let it deal with the client.

  • platform/mediastream/MediaStreamCenter.h:
  • platform/mediastream/MediaStreamComponent.cpp: Removed.
  • platform/mediastream/MediaStreamComponent.h: Removed.
  • platform/mediastream/MediaStreamConstraintsValidationClient.h: Added.
  • platform/mediastream/MediaStreamCreationClient.h: Added.
  • platform/mediastream/MediaStreamDescriptor.cpp:

(WebCore::MediaStreamDescriptor::addSource): *Component -> *Source.
(WebCore::MediaStreamDescriptor::removeSource): Ditto.
(WebCore::MediaStreamDescriptor::addRemoteSource): Ditto.
(WebCore::MediaStreamDescriptor::removeRemoteSource): Ditto.
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Ditto.
(WebCore::MediaStreamDescriptor::setEnded): Ditto. Set source readyStates to Ended.

  • platform/mediastream/MediaStreamDescriptor.h:
  • platform/mediastream/MediaStreamSource.cpp:

(WebCore::MediaStreamSource::MediaStreamSource): Initialize new member variables.
(WebCore::MediaStreamSource::setReadyState): Early return when the state hasn't changed.
(WebCore::MediaStreamSource::setStream): New.
(WebCore::MediaStreamSource::setMuted): New.

  • platform/mediastream/MediaStreamSource.h:
  • platform/mediastream/MediaStreamSourcesQueryClient.h: Removed.
  • platform/mediastream/RTCPeerConnectionHandler.h:
  • platform/mediastream/RTCStatsRequest.h:
  • platform/mediastream/blackberry/MediaStreamCenterBlackBerry.cpp: Update for new MediaStreamCenter API.
  • platform/mediastream/blackberry/MediaStreamCenterBlackBerry.h:
  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp: Ditto.
  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.h:
  • platform/mediastream/mac/MediaStreamCenterMac.cpp: Ditto.
  • platform/mediastream/mac/MediaStreamCenterMac.h:
10:34 AM Changeset in webkit [156472] by timothy_horton@apple.com
  • 25 edits in trunk

Tiled drawing should not imply threaded scrolling
https://bugs.webkit.org/show_bug.cgi?id=121874
<rdar://problem/15071494>

Reviewed by Sam Weinig.

  • Shared/DrawingAreaInfo.h:

We can have DrawingAreaTypeTiledCoreAnimation without threaded scrolling.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetThreadedScrollingEnabled):
(WKPreferencesGetThreadedScrollingEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:

Add a preference for threaded scrolling.

  • UIProcess/API/mac/WKView.mm:

(-[WKView WebKit::]):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
  • WebProcess/WebPage/DrawingArea.cpp:

(WebKit::DrawingArea::create):

  • WebProcess/WebPage/DrawingArea.h:

Make it so we can use TiledCoreAnimationDrawingArea without ENABLE(THREADED_SCROLLING).

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::shouldUseTiledBackingForFrame):

  • WebProcess/WebCoreSupport/WebChromeClient.h:

Override shouldUseTiledBackingForFrame; ask the drawing area if we want a tiled backing for the given frame.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):

  • WebProcess/WebPage/WebPage.h:

Move attaching and detaching the scrolling tree into WebPage.
Store whether or not this page is going to use threaded scrolling once, as this
cannot change through the life of a page.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::~TiledCoreAnimationDrawingArea):
Move attaching and detaching the scrolling tree into WebPage.

(WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
(WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
Only do scrolling coordinator work if we have a scrolling coordinator.

(WebKit::TiledCoreAnimationDrawingArea::shouldUseTiledBackingForFrame):
TiledCoreAnimationDrawingArea always wants a tiled backing for the main frame.

No new tests; a near-future patch is going to put the majority of layout
tests into the tiled-drawing-without-threaded-scrolling mode.

  • page/ChromeClient.h:

(WebCore::ChromeClient::shouldUseTiledBackingForFrame):
Add a ChromeClient callback to determine whether a given frame wants a TiledBacking for its contents.

  • page/FrameView.h:
  • WebCore.exp.in:

Make isMainFrameView public and export it for use in WebKit2.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):
Make use of shouldUseTiledBackingForFrame instead of predicating the
main frame using a tile cache on whether we have a scrolling coordinator.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::mainFrameBackingIsTiled): Added.

(WebCore::RenderLayerCompositor::shouldCompositeOverflowControls):
(WebCore::RenderLayerCompositor::requiresOverhangAreasLayer):
(WebCore::RenderLayerCompositor::requiresContentShadowLayer):
All of these checks for existence of a scrollingCoordinator should actually
key off whether we're using tiled drawing at the root; they have nothing
to do with threaded scrolling.

  • rendering/RenderLayerCompositor.h:
  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::PlatformWebView):
The existing tiled-drawing layout tests require threaded scrolling to be enabled.

10:33 AM Changeset in webkit [156471] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Mark IDBDatabase "FINAL" now that http://webkit.org/b/121747 is fixed.

Rubberstamped by Andreas Kling

  • Modules/indexeddb/IDBDatabase.h: Mark this class FINAL.
10:24 AM Changeset in webkit [156470] by akling@apple.com
  • 2 edits in trunk/LayoutTests

One more IndexedDB rebaseline.

  • js/dom/global-constructors-attributes-expected.txt:
10:19 AM Changeset in webkit [156469] by andersca@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Weak should have a move constructor and move assignment operator
https://bugs.webkit.org/show_bug.cgi?id=121963

Reviewed by Oliver Hunt.

This is the first step towards getting rid of PassWeak.

  • API/JSClassRef.cpp:

(OpaqueJSClass::prototype):

  • heap/Weak.h:
  • heap/WeakInlines.h:

(JSC::::Weak):
(JSC::::leakImpl):

  • runtime/SimpleTypedArrayController.cpp:

(JSC::SimpleTypedArrayController::toJS):

10:16 AM Changeset in webkit [156468] by mhahnenberg@apple.com
  • 16 edits in trunk

op_to_this shouldn't use value profiling
https://bugs.webkit.org/show_bug.cgi?id=121920

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Currently it's the only opcode that uses m_singletonValue, which is unnecessary. Our current plan is
to remove m_singletonValue so that GenGC can have a simpler story for handling CodeBlocks/FunctionExecutables
during nursery collections.

This patch adds an inline cache for the Structure of to_this so it no longer depends on the ValueProfile's
m_singletonValue. Since nobody uses m_singletonValue now, this patch also removes m_singletonValue from
ValueProfile.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::stronglyVisitStrongReferences):
(JSC::CodeBlock::updateAllPredictionsAndCountLiveness):
(JSC::CodeBlock::updateAllValueProfilePredictions):
(JSC::CodeBlock::updateAllPredictions):
(JSC::CodeBlock::shouldOptimizeNow):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::updateAllValueProfilePredictions):
(JSC::CodeBlock::updateAllPredictions):

  • bytecode/LazyOperandValueProfile.cpp:

(JSC::CompressedLazyOperandValueProfileHolder::computeUpdatedPredictions):

  • bytecode/LazyOperandValueProfile.h:
  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::ValueProfileBase):
(JSC::ValueProfileBase::briefDescription):
(JSC::ValueProfileBase::dump):
(JSC::ValueProfileBase::computeUpdatedPrediction):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_to_this):
(JSC::JIT::emitSlow_op_to_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_to_this):
(JSC::JIT::emitSlow_op_to_this):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

LayoutTests:

Updated a couple tests that waited for two DFG compiles, but with this patch we
don't do two compiles any more, so we don't want to wait forever.

  • js/script-tests/dfg-convert-this-polymorphic-object-then-exit-on-other.js:
  • js/script-tests/dfg-convert-this-polymorphic-object-then-exit-on-string.js:
10:06 AM Changeset in webkit [156467] by akling@apple.com
  • 3 edits in trunk/LayoutTests

Rebaseline some tests after IndexedDB was enabled.

  • js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
  • js/dom/global-constructors-attributes-shared-worker-expected.txt:
9:57 AM Changeset in webkit [156466] by commit-queue@webkit.org
  • 4 edits
    8 adds in trunk

Inset box-shadows fail to round around corners when border-radius is set in vh/vw units.
https://bugs.webkit.org/show_bug.cgi?id=119187

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-26
Reviewed by Darin Adler.

Source/WebCore:

Border-radius properties were not applied incase its values
were given in vh, vw, vmax, vmin units.

Tests: fast/css/border-radius-inset-box-shadow-viewportlength.html

fast/css/border-radius-viewport-height.html
fast/css/border-radius-viewport-vmax.html
fast/css/border-radius-viewport-vmin.html

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyComputeLength::applyValue):

  • css/StyleResolver.h:

Calculating the border-radius values which has been specified
in viewport units.The vh/vw units are calcultated as percent of
viewport height and viewport width respectively. 1vmax: 1vw or 1vh,
whatever is largest.1vmin: 1vw or 1vh, whatever is smallest.

LayoutTests:

  • fast/css/border-radius-inset-box-shadow-viewportlength-expected-mismatch.html: Added.
  • fast/css/border-radius-inset-box-shadow-viewportlength.html: Added.
  • fast/css/border-radius-viewport-height-expected-mismatch.html: Added.
  • fast/css/border-radius-viewport-height.html: Added.
  • fast/css/border-radius-viewport-vmax-expected-mismatch.html: Added.
  • fast/css/border-radius-viewport-vmax.html: Added.
  • fast/css/border-radius-viewport-vmin-expected-mismatch.html: Added.
  • fast/css/border-radius-viewport-vmin.html: Added.

Added new tests for verifying that box-shadow and border-radius properties
are applied when its values are viewport units.

9:53 AM Changeset in webkit [156465] by Seokju Kwon
  • 2 edits in trunk/Source/WebCore

Fix ordered comparison warnings in BitmapImage::drawPattern
https://bugs.webkit.org/show_bug.cgi?id=121945

Reviewed by Darin Adler.

No new tests, no behavior change.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::drawPattern):

9:52 AM Changeset in webkit [156464] by oliver@apple.com
  • 19 edits
    12 adds in trunk

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

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

This is mostly simple - the semantics of deconstruction are already
present in the language, so most of the complexity (if you call it
that) is addition of new AST nodes, and parsing the syntax.

In order to get correct semantics for the parameter lists, FunctionParameters
now needs to store refcounted references to the parameter patterns.
There's also a little work to ensure that variable creation and assignment
occurs in the correct order while the BytecodeGenerator is being constructed.

  • 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::DeconstructingAssignmentNode::emitBytecode):
(JSC::DeconstructionPatternNode::~DeconstructionPatternNode):
(JSC::ArrayPatternNode::emitBytecode):
(JSC::ArrayPatternNode::emitDirectBinding):
(JSC::ArrayPatternNode::toString):
(JSC::ArrayPatternNode::collectBoundIdentifiers):
(JSC::ObjectPatternNode::toString):
(JSC::ObjectPatternNode::emitBytecode):
(JSC::ObjectPatternNode::collectBoundIdentifiers):
(JSC::BindingNode::emitBytecode):
(JSC::BindingNode::toString):
(JSC::BindingNode::collectBoundIdentifiers):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createFormalParameterList):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::addVar):
(JSC::ASTBuilder::createDeconstructingAssignment):
(JSC::ASTBuilder::createArrayPattern):
(JSC::ASTBuilder::appendArrayPatternSkipEntry):
(JSC::ASTBuilder::appendArrayPatternEntry):
(JSC::ASTBuilder::createObjectPattern):
(JSC::ASTBuilder::appendObjectPatternEntry):
(JSC::ASTBuilder::createBindingLocation):

  • parser/NodeConstructors.h:

(JSC::CommaNode::CommaNode):
(JSC::ParameterNode::ParameterNode):
(JSC::ForInNode::ForInNode):
(JSC::DeconstructionPatternNode::DeconstructionPatternNode):
(JSC::ArrayPatternNode::ArrayPatternNode):
(JSC::ArrayPatternNode::create):
(JSC::ObjectPatternNode::ObjectPatternNode):
(JSC::ObjectPatternNode::create):
(JSC::BindingNode::create):
(JSC::BindingNode::BindingNode):
(JSC::DeconstructingAssignmentNode::DeconstructingAssignmentNode):

  • parser/Nodes.cpp:

(JSC::FunctionParameters::create):
(JSC::FunctionParameters::FunctionParameters):
(JSC::FunctionParameters::~FunctionParameters):

  • parser/Nodes.h:

(JSC::ExpressionNode::isDeconstructionNode):
(JSC::ArrayNode::elements):
(JSC::CommaNode::append):
(JSC::ParameterNode::pattern):
(JSC::FunctionParameters::at):
(JSC::FunctionParameters::patterns):
(JSC::DeconstructionPatternNode::isBindingNode):
(JSC::DeconstructionPatternNode::emitDirectBinding):
(JSC::ArrayPatternNode::appendIndex):
(JSC::ObjectPatternNode::appendEntry):
(JSC::ObjectPatternNode::Entry::Entry):
(JSC::BindingNode::boundProperty):
(JSC::BindingNode::isBindingNode):
(JSC::DeconstructingAssignmentNode::bindings):
(JSC::DeconstructingAssignmentNode::isLocation):
(JSC::DeconstructingAssignmentNode::isDeconstructionNode):

  • parser/Parser.cpp:

(JSC::::Parser):
(JSC::::parseVarDeclaration):
(JSC::::parseVarDeclarationList):
(JSC::::createBindingPattern):
(JSC::::parseDeconstructionPattern):
(JSC::::parseForStatement):
(JSC::::parseFormalParameters):
(JSC::::parseAssignmentExpression):

  • parser/Parser.h:

(JSC::Scope::declareBoundParameter):
(JSC::Parser::declareBoundParameter):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::createFormalParameterList):
(JSC::SyntaxChecker::addVar):
(JSC::SyntaxChecker::operatorStackPop):

  • runtime/JSONObject.cpp:

(JSC::escapeStringToBuilder):

  • runtime/JSONObject.h:

LayoutTests:

Add enw tests, and update old ones.

  • js/destructuring-assignment-expected.txt: Added.
  • js/destructuring-assignment.html: Added.
  • 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: Added.
  • js/regress/destructuring-arguments-length-expected.txt: Added.
  • js/regress/destructuring-arguments-length.html: Added.
  • js/regress/destructuring-arguments.html: Added.
  • js/regress/destructuring-swap-expected.txt: Added.
  • js/regress/destructuring-swap.html: Added.
  • js/regress/script-tests/destructuring-arguments-length.js: Added.

(foo):

  • js/regress/script-tests/destructuring-arguments.js: Added.

(foo):

  • js/regress/script-tests/destructuring-swap.js: Added.

(foo):

  • js/script-tests/destructuring-assignment.js: Added.

(testDestructuring):
(testDeconstructArgs):
(testDeconstructArgLength):

9:46 AM Changeset in webkit [156463] by berto@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Unskip media/context-menu-actions.html which is passing now.

  • platform/gtk-wk2/TestExpectations:
9:36 AM Changeset in webkit [156462] by kov@webkit.org
  • 2 edits in trunk

[GTK] Tons of warnings caused by using FORTIFY_SOURCE in an unoptimized build
https://bugs.webkit.org/show_bug.cgi?id=121836

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-09-26
Reviewed by Martin Robinson.

  • Source/autotools/SetupCompilerFlags.m4: only consider enabling FORTIFY_SOURCE if optimizations have

been enabled, since they are required for FORTIFY_SOURCE to work, and enabling FORTIFY_SOURCE unconditionally
generates warnings in newer glibc.

9:18 AM Changeset in webkit [156461] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r156457.
http://trac.webkit.org/changeset/156457
https://bugs.webkit.org/show_bug.cgi?id=121960

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

  • Scripts/webkitpy/port/xvfbdriver.py:

(XvfbDriver._start):

8:16 AM Changeset in webkit [156460] by mario@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK][WK2] Logging of accessibility events is not disabled between tests
https://bugs.webkit.org/show_bug.cgi?id=121957

Unreviewed gardening again. Now moving the expected flakiness to
the WebKit2GTK+ port, where it actually belongs to.

  • platform/gtk-wk2/TestExpectations: Added expectations.
  • platform/gtk/TestExpectations: Removed expectations.
8:02 AM Changeset in webkit [156459] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Logging of accessibility events is not disabled between tests
https://bugs.webkit.org/show_bug.cgi?id=121957

Unreviewed gardening. Marking accessibility tests as flaky while
an issue with the logging of accessibility events is investigated.

  • platform/gtk/TestExpectations: Added flaky expectations.
7:24 AM Changeset in webkit [156458] by akling@apple.com
  • 8 edits
    14 deletes in trunk/Source/WebCore

Remove empty JSFooCustom.cpp files.
<https://webkit.org/b/121955>

Reviewed by Anders Carlsson.

There's no sense in slowing down build times with empty files that
still include a bunch of headers.

  • bindings/js/JSAudioBufferCustom.cpp: Removed.
  • bindings/js/JSCSSFontFaceRuleCustom.cpp: Removed.
  • bindings/js/JSCSSImportRuleCustom.cpp: Removed.
  • bindings/js/JSCSSMediaRuleCustom.cpp: Removed.
  • bindings/js/JSCSSPageRuleCustom.cpp: Removed.
  • bindings/js/JSCSSStyleRuleCustom.cpp: Removed.
  • bindings/js/JSDOMImplementationCustom.cpp: Removed.
  • bindings/js/JSDOMTokenListCustom.cpp: Removed.
  • bindings/js/JSHTMLStyleElementCustom.cpp: Removed.
  • bindings/js/JSMediaListCustom.cpp: Removed.
  • bindings/js/JSProcessingInstructionCustom.cpp: Removed.
  • bindings/js/JSWebKitCSSKeyframeRuleCustom.cpp: Removed.
  • bindings/js/JSWebKitCSSKeyframesRuleCustom.cpp: Removed.
  • bindings/js/JSXMLHttpRequestUploadCustom.cpp: Removed.
6:30 AM Changeset in webkit [156457] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

XvfbDriver should set up Xvfb instances providing screens of 8-bit depth
https://bugs.webkit.org/show_bug.cgi?id=121951

Reviewed by Carlos Garcia Campos.

Screens with 24-bit depth are causing problems as it doesn't seem to be possible to fall back to
software rendering successfully on the GTK 64-bit release builder, resulting in crashes in almost
500 layout tests that trigger accelerated compositing to be used.

  • Scripts/webkitpy/port/xvfbdriver.py:

(XvfbDriver._start):

4:50 AM Changeset in webkit [156456] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[Qt] Remove PassTraits.h from WTF.pro.
https://bugs.webkit.org/show_bug.cgi?id=121946

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

  • WTF.pro: Remove PassTraits.h as this file disappeared in r156298.
4:18 AM Changeset in webkit [156455] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r144831-r144846):Crashes in accessibility/aria-hidden-with-elements.html, accessibility/table-with-hidden-head-section.html
https://bugs.webkit.org/show_bug.cgi?id=112152

Unreviewed GTK gardening. Removed crash expectations now passing.

  • platform/gtk/TestExpectations: Removed crashing expectations

that are now passing after r156141-r156209.

4:13 AM Changeset in webkit [156454] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening. Remove failure expectation for test passing after r156209.

  • platform/gtk-wk2/TestExpectations: Removed failure expectation.
1:58 AM Changeset in webkit [156453] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Remove inappropriate expectations for tests that are now passing on EFL port
https://bugs.webkit.org/show_bug.cgi?id=121897

Unreviewed EFL gardening.

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

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
1:41 AM Changeset in webkit [156452] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] Add baselines for editing/selection/paragraph-granularity.html
https://bugs.webkit.org/show_bug.cgi?id=121842

Unreviewed EFL gardening.

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

  • platform/efl/TestExpectations: Removing the corresponding entry.
  • platform/efl/editing/selection/paragraph-granularity-expected.txt: Added.
1:20 AM Changeset in webkit [156451] by commit-queue@webkit.org
  • 20 edits
    21 adds in trunk

[CSS Regions] The layers from the flow thread should be collected under the regions' layers.
https://bugs.webkit.org/show_bug.cgi?id=120457

Patch by Mihai Maerean <Mihai Maerean> on 2013-09-26
Reviewed by David Hyatt.

Source/WebCore:

This patch is based on the work of Alexandru Chiculita at https://bugs.webkit.org/attachment.cgi?id=203872&action=review

The composited layers inside the named flow threads are collected as part of the regions.
When a region displays a layer that needs accelerated compositing we activate the accelerated compositing for
that region too (inside RenderFlowThread::updateAllLayerToRegionMappings).

Tests: fast/regions/layers/accelerated-compositing/crash-transform-inside-region.html

fast/regions/layers/accelerated-compositing/floated-region-with-transformed-child.html
fast/regions/layers/accelerated-compositing/move-layer-from-one-region-to-another.html
fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding.html
fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-for-video.html
fast/regions/layers/accelerated-compositing/region-as-layer-in-another-flowthread.html
fast/regions/layers/accelerated-compositing/transform-transparent-positioned-video-inside-region.html
fast/regions/layers/accelerated-compositing/transformed-layer-inside-transformed-layer.html
fast/regions/layers/accelerated-compositing/z-index.html: Added.
fast/regions/layers/accelerated-compositing/z-index-update.html: Added.

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout): When the layout of the flow thread is over (including the 2 phase layout),
we update all the mappings between the layers inside the flow thread and the regions where those layers will be
painted.
(WebCore::RenderFlowThread::hasCompositingRegionDescendant): Whether any of the regions has a compositing descendant.
(WebCore::RenderFlowThread::getLayerListForRegion):
(WebCore::RenderFlowThread::regionForCompositedLayer):
(WebCore::RenderFlowThread::cachedRegionForCompositedLayer):
(WebCore::RenderFlowThread::updateLayerToRegionMappings): Triggers an update of the layers if a layer has moved
from a region to another since the last update.
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):

  • rendering/RenderFlowThread.h:
  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::pushRenderFlowThread):

  • rendering/RenderGeometryMap.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds): The RenderNamedFlowThread is ignored when we calculate the bounds
of the RenderView.

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::shouldClipCompositedBounds): Not if it's inside an out of flow Flow Thread.
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Now adjusts the ancestorCompositingBounds for the FlowThread.
(WebCore::enclosingFlowThreadAncestor):
(WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread): Make sure that the region propagates
its borders, paddings, outlines or box-shadows to layers inside it.

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements): Now calls computeRegionCompositingRequirements.
(WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Do not iterate the RenderFlowThread directly. We
are going to collect composited layers as part of regions.
(WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree):
(WebCore::RenderLayerCompositor::canBeComposited): CSS Regions flow threads do not need to be composited as we
use composited RenderRegions to render the background of the RenderFlowThread.
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason): If it's a region.

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect):

  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderObject::propagateStyleToAnonymousChildren): Not for RenderFlowThreads, as they are updated
through the RenderView::styleDidChange function.

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::setRequiresLayerForCompositing):
(WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect):

  • rendering/RenderRegion.h:

(WebCore::toRenderRegion):

  • rendering/RenderRegionSet.h:

(WebCore::RenderRegionSet::requiresLayer): Never.

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):

LayoutTests:

  • fast/regions/layers/accelerated-compositing/crash-transform-inside-region.html: Added.
  • fast/regions/layers/accelerated-compositing/crash-transform-inside-region-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/floated-region-with-transformed-child.html: Added.
  • fast/regions/layers/accelerated-compositing/floated-region-with-transformed-child-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/move-layer-from-one-region-to-another.html: Added.
  • fast/regions/layers/accelerated-compositing/move-layer-from-one-region-to-another-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding.html: Added.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-for-video.html: Added.
  • fast/regions/layers/accelerated-compositing/propagate-region-box-shadow-border-padding-for-video-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/region-as-layer-in-another-flowthread.html: Added.
  • fast/regions/layers/accelerated-compositing/region-as-layer-in-another-flowthread-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/transformed-layer-inside-transformed-layer.html: Added.
  • fast/regions/layers/accelerated-compositing/transformed-layer-inside-transformed-layer-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/transform-transparent-positioned-video-inside-region.html: Added.
  • fast/regions/layers/accelerated-compositing/transform-transparent-positioned-video-inside-region-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/z-index.html: Added.
  • fast/regions/layers/accelerated-compositing/z-index-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/z-index-update-expected.html: Added.
  • fast/regions/layers/accelerated-compositing/z-index-update.html: Added.
12:58 AM Changeset in webkit [156450] by mihnea@adobe.com
  • 3 edits
    4 adds in trunk

[CSSRegions] Unable to collect html element in a named flow
https://bugs.webkit.org/show_bug.cgi?id=121878

Reviewed by Antti Koivisto.

Source/WebCore:

Tests: fast/regions/collect-html-in-named-flow.html

fast/regions/iframe-html-collected.html

It should be possible to collect the html element in a named flow.
However, before we check whether adding a child is not restricted
by its original parent, we have to make sure that the original parent
is an element to safely perform the check.

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::isChildAllowed):

LayoutTests:

Use an iframe with a html element collected in a named flow
to test that is does not crash or assert.

  • fast/regions/collect-html-in-named-flow-expected.txt: Added.
  • fast/regions/collect-html-in-named-flow.html: Added.
  • fast/regions/iframe-html-collected-expected.txt: Added.
  • fast/regions/iframe-html-collected.html: Added.

Sep 25, 2013:

11:33 PM Changeset in webkit [156449] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

8 bytes memory leaks in WebProcessMainQt.cpp when proxy is initialized
https://bugs.webkit.org/show_bug.cgi?id=118515

Patch by Minju Kim <pmuarteo@gmail.com> on 2013-09-25
Reviewed by Christophe Dumez.

  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::initializeProxy): Handled EnvHttpProxyFactory by using OwnPtr
to avoid memory leak when it isn't handled by NetworkProxyFactory

9:50 PM Changeset in webkit [156448] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, blind attempt at a build fix.

  • inspector/InspectorIndexedDBAgent.cpp: Don’t include the keyPathFromIDBKeyPath method for PLATFORM(MAC) as it is unused.
9:15 PM Changeset in webkit [156447] by beidson@apple.com
  • 11 edits in trunk/Source

Enable the IndexedDB build on Mac, but leave the feature non-functional
https://bugs.webkit.org/show_bug.cgi?id=121918

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

(WebCore::IDBFactory::create): If the IDBFactoryBackend is null (which it is for on-levelDB platforms),

don't create an IDBFactory. This hides the feature from javascript even though upport code is in the build.

  • inspector/InspectorIndexedDBAgent.cpp: Empty out DatabaseLoader::execute on Mac until the inspector build gurus can figure out a 32bit-vs-64bit issue that there is no obvious solution for.
  • WebCore.xcodeproj/project.pbxproj: Remove the Modules/indexedDB/leveldb directory now that Mac has no further use for it.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
8:54 PM Changeset in webkit [156446] by ryuan.choi@samsung.com
  • 4 edits in trunk/Source/WebCore

Unreviewed build fix for EFL port.

IDBCursorBackendImpl and IDBDatabaseBackendImpl are renamed after r156406.

  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:

(WebCore::IDBTransactionBackendLevelDB::create):
(WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
(WebCore::IDBTransactionBackendLevelDB::registerOpenCursor):
(WebCore::IDBTransactionBackendLevelDB::unregisterOpenCursor):
(WebCore::IDBTransactionBackendLevelDB::closeOpenCursors):

  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:

(WebCore::IDBTransactionBackendLevelDB::database):

8:51 PM Changeset in webkit [156445] by ap@apple.com
  • 3 edits in trunk/LayoutTests

fast/css/font-face-data-uri.html is failing
https://bugs.webkit.org/show_bug.cgi?id=82744

Reviewed by Darin Adler.

This test used to wait for one font to load, but not for another, which made no sense.

  • fast/css/font-face-data-uri.html: Wait for both fonts. Increased the number of tries,

it's not that long. Use an async test idiom that doesn't conflict with js-test-post.js.

  • fast/css/font-face-data-uri-expected.txt: Updated the results for proper async

test usage.

7:30 PM Changeset in webkit [156444] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

Do not reenter Document from its destructor
https://bugs.webkit.org/show_bug.cgi?id=121933

Reviewed by Darin Adler.

Following r156422, there are cases where we would reenter Document
during its destruction.

The flow was the following:
-Document's destructor is executed.
-DocumentStyleSheetCollection being part of Document, its destructor

is executed.

-DocumentStyleSheetCollection's destructor detach the owner node of all

its stylesheets avoid keeping stale references to a dead Document.

-CSSStyleSheet::clearOwnerNode() would fetch the dying document

and invoke Document::styleResolverChanged().

This would not fail because the document is detached and Document::styleResolverChanged()
would fail early. This is complicated and error prone so this patch attempt to clear
the process a bit.

With the patch, Document detach all the stylesheets early in the destruction.
Clearing the stylesheet is also changed to avoid re-entering the document.

  • css/CSSStyleSheet.h:
  • dom/Document.cpp:

(WebCore::Document::~Document):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::detachFromDocument):

  • dom/DocumentStyleSheetCollection.h:
7:03 PM Changeset in webkit [156443] by Patrick Gansterer
  • 3 edits in trunk/Source/WTF

Fix compilation with new MSVC compiler for Windows CE
https://bugs.webkit.org/show_bug.cgi?id=121914

Reviewed by Darin Adler.

Remove code to support older Windows CE versions, since those old
versions do not support C+11, which is required in the meantime.

  • wtf/Atomics.h:
  • wtf/Platform.h:
7:01 PM Changeset in webkit [156442] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

htmlediting.cpp: unnecessary local variable cleanup
https://bugs.webkit.org/show_bug.cgi?id=121903

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-09-25
Reviewed by Darin Adler.

Code cleanup.

  • editing/htmlediting.cpp:

(WebCore::lowestEditableAncestor):

6:49 PM Changeset in webkit [156441] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed Build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
6:05 PM Changeset in webkit [156440] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Tools

Removed check for Apple Application Support directory in WinCairo port.
https://bugs.webkit.org/show_bug.cgi?id=121869

Patch by Alex Christensen <achristensen@webkit.org> on 2013-09-25
Reviewed by Brent Fulgham.

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:

Use DLLLauncherWinCairo.props for WinCairo ports.

  • win/DLLLauncher/DLLLauncherMain.cpp:

(wWinMain):
Don't call modifyPath to check for AAS in the WinCairo port.

  • win/DLLLauncher/DLLLauncherWinCairo.props: Added to define WIN_CAIRO.
6:03 PM Changeset in webkit [156439] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Unreviewed, rolling out r156432.
http://trac.webkit.org/changeset/156432
https://bugs.webkit.org/show_bug.cgi?id=121932

some integer conversion things that need brady to fix
(Requested by thorton on #webkit).

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • Modules/indexeddb/IDBFactory.h:

(WebCore::IDBFactory::create):

  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
5:53 PM Changeset in webkit [156438] by andersca@apple.com
  • 4 edits in trunk/Source

Move KeyValuePairTraits inside HashMap
https://bugs.webkit.org/show_bug.cgi?id=121931

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • tools/ProfileTreeNode.h:

Source/WTF:

Also rename the ValueType typedef to KeyValuePairType since it's always a key value pair.

  • wtf/HashMap.h:

(WTF::HashMap::KeyValuePairTraits::isEmptyValue):
(WTF::HashMap::find):
(WTF::HashMap::contains):

5:48 PM Changeset in webkit [156437] by commit-queue@webkit.org
  • 7 edits in trunk

Enabled AssembleBuildLogs on WinCairo port.
https://bugs.webkit.org/show_bug.cgi?id=121923

Patch by Alex Christensen <achristensen@webkit.org> on 2013-09-25
Reviewed by Brent Fulgham.

Source/WebKit:

  • WebKit.vcxproj/WebKit.sln:

Build AssembleBuildLogs in WinCairo port.

Tools:

  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj:

Fixed reference to README, added WinCairo configurations.

  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj.filters:

Fixed reference to README.

  • win/AssembleBuildLogs/AssembleLogs.cmd:

Added ANGLE projects, skipped QTMovieWin for WinCairo, use PlatformArchitecture for Win64.

  • win/AssembleBuildLogs/README: Fixed spelling.
5:41 PM Changeset in webkit [156436] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebCore

Win64 compile fix after r155226.
https://bugs.webkit.org/show_bug.cgi?id=120969

Reviewed by Brent Fulgham.

  • WebCore.vcxproj/WebCore.vcxproj:

Disable building StructuredExceptionHandlerSuppressor.cpp and makesafeseh.asm on Win64.

4:51 PM Changeset in webkit [156435] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Flaky Test: platform/mac/fonts/han-disunification.html
https://bugs.webkit.org/show_bug.cgi?id=114207

Reviewed by Anders Carlsson.

This test was affected by preceding tests changing font settings.

Save original font if it's changed, and restore it in Backup::restoreTo().

  • WebCore.exp.in:
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setStandardFontFamily):
(WebCore::InternalSettings::setSerifFontFamily):
(WebCore::InternalSettings::setSansSerifFontFamily):
(WebCore::InternalSettings::setFixedFontFamily):
(WebCore::InternalSettings::setCursiveFontFamily):
(WebCore::InternalSettings::setFantasyFontFamily):
(WebCore::InternalSettings::setPictographFontFamily):

  • testing/InternalSettings.h:
4:26 PM Changeset in webkit [156434] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Un-indent HashMap.h.

Rubber-stamped by Andreas Kling.

  • wtf/HashMap.h:
4:24 PM Changeset in webkit [156433] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit/win

[Windows] Attempting to scroll from a non-scrollable layer results the main document getting scrolled.
https://bugs.webkit.org/show_bug.cgi?id=121889.
<rdar://problem/15072441>

  • WebView.cpp:

(WebView::gesture):
Call scrollByRecursively on the current RenderLayer's enclosingScrollableLayer to make sure that the method
doesn't bail early and end up just scrolling the main document instead of the next scrollable layer in the RenderLayer tree.

4:21 PM Changeset in webkit [156432] by beidson@apple.com
  • 10 edits in trunk/Source

Enable the IndexedDB build on Mac, but leave the feature non-functional
https://bugs.webkit.org/show_bug.cgi?id=121918

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig: Enable the feature.
  • Modules/indexeddb/IDBFactory.h:

(WebCore::IDBFactory::create): If the IDBFactoryBackend is null (which it is for on-levelDB platforms),

don't create an IDBFactory. This hides the feature from javascript even though upport code is in the build.

  • WebCore.xcodeproj/project.pbxproj: Remove the Modules/indexedDB/leveldb directory now that Mac has no further use for it.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
4:18 PM Changeset in webkit [156431] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Flaky Test: fast/history/history-subframe-with-name.html
https://bugs.webkit.org/show_bug.cgi?id=51039

Reviewed by Brady Eidson.

  • fast/history/history-subframe-with-name.html: In state 3, there was a race between

history.forward() and navigating to a new URL. Not sure how this resulted in an
extra load, but let's get rid of that. Also, extended failure logging.

  • fast/history/resources/history-subframe-with-name-2.html: No longer do the

navigation unconditionally. We need it in state 1, but not in state 3.

4:18 PM Changeset in webkit [156430] by Patrick Gansterer
  • 3 edits in trunk/Source/WebKit/win

[WIN] Replace CF time functions with Windows API functions in WebHistory
https://bugs.webkit.org/show_bug.cgi?id=121599

Reviewed by Brent Fulgham.

This reduces the dependencies on the CoreFoundation library.

  • WebHistory.cpp:

(addDayToSystemTime):
(getDayBoundaries):
(beginningOfDay):
(dateKey):
(WebHistory::orderedLastVisitedDays):

  • WebHistory.h:
3:54 PM Changeset in webkit [156429] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Un-indent HashTraits.h.

Rubber-stamped by Andreas Kling.

  • wtf/HashTraits.h:
3:51 PM Changeset in webkit [156428] by timothy@apple.com
  • 1 edit in trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp

Fix the build.

3:42 PM Changeset in webkit [156427] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Make EventTarget::hasEventListeners() a const method.

This class needs a lot of love in the const correctness department
but for now let's limit ourselves to fixing the IndexedDB build.

  • dom/EventTarget.h:

(WebCore::EventTarget::hasEventListeners):

3:35 PM Changeset in webkit [156426] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Disable more CSS_SHAPES tests on AppleWin port.

  • platform/win/TestExpectations:
3:18 PM Changeset in webkit [156425] by rniwa@webkit.org
  • 3 edits
    99 adds in trunk/PerformanceTests

DoYouEvenBench: Add a test case for FlightJS
https://bugs.webkit.org/show_bug.cgi?id=121926

Reviewed by Antti Koivisto.

Add a FlightJS test case.

  • DoYouEvenBench/benchmark.html:
  • DoYouEvenBench/benchmark.js:
  • DoYouEvenBench/flightjs-example-app: Added.
  • DoYouEvenBench/flightjs-example-app/LICENSE.md: Added.
  • DoYouEvenBench/flightjs-example-app/README.md: Added.
  • DoYouEvenBench/flightjs-example-app/app: Added.
  • DoYouEvenBench/flightjs-example-app/app/boot: Added.
  • DoYouEvenBench/flightjs-example-app/app/boot/page.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_data: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_data/compose_box.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_data/mail_items.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_data/move_to.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/compose_box.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/folders.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/mail_controls.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/mail_items.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/move_to_selector.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/component_ui/with_select.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/css: Added.
  • DoYouEvenBench/flightjs-example-app/app/css/custom.css: Added.
  • DoYouEvenBench/flightjs-example-app/app/data.js: Added.
  • DoYouEvenBench/flightjs-example-app/app/templates.js: Added.
  • DoYouEvenBench/flightjs-example-app/components: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/css: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.css: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.min.css: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.css: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.min.css: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/img: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings-white.png: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings.png: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/js: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.min.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/.gitignore: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/CHANGES: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/CONTRIBUTORS.md: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/LICENSE: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/README.md: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/component.json: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.min.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.min.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/package.json: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-kill.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-matchers.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/index.html: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine-html.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.css: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine_favicon.png: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/json2.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-array.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-date.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-function.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-object.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-string.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/.travis.yml: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/advice.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/component.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/compose.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/index.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/logger.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/registry.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/lib/utils.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/tools: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/tools/debug: Added.
  • DoYouEvenBench/flightjs-example-app/components/flight/tools/debug/debug.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight/LICENSE.md: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight/README.md: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight/bower.json: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib/jasmine-flight.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-jquery: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib: Added.
  • DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib/jasmine-jquery.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/jquery: Added.
  • DoYouEvenBench/flightjs-example-app/components/jquery/component.json: Added.
  • DoYouEvenBench/flightjs-example-app/components/jquery/composer.json: Added.
  • DoYouEvenBench/flightjs-example-app/components/jquery/jquery.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/jquery/jquery.min.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/mustache: Added.
  • DoYouEvenBench/flightjs-example-app/components/mustache/mustache.js: Added.
  • DoYouEvenBench/flightjs-example-app/components/requirejs: Added.
  • DoYouEvenBench/flightjs-example-app/components/requirejs/require.js: Added.
  • DoYouEvenBench/flightjs-example-app/index.html: Added.
  • DoYouEvenBench/flightjs-example-app/karma.conf.js: Added.
  • DoYouEvenBench/flightjs-example-app/package.json: Added.
  • DoYouEvenBench/flightjs-example-app/requireMain.js: Added.
3:18 PM Changeset in webkit [156424] by Brent Fulgham
  • 47 edits in trunk/Source

../WebCore: [Windows] Refactor RuntimeEnabledFeatures as a Singleton
https://bugs.webkit.org/show_bug.cgi?id=121883

Windows is experiencing crashes when client programs (such as
DumpRenderTree) attemp to change settings on the RuntimeEnabledFeatures
object. The inlined static accessor methods are not accessing
memory safely (when compiled by Visual Studio) resulting in
crashes.

Reviewed by Jer Noble.

  • WebCore.exp.in: Remove static accessors for RuntimeEnabledFeatures.
  • bindings/generic/RuntimeEnabledFeatures.cpp: Switch methods to

conform to a singleton pattern.
(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::sharedRuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::fileSystemEnabled):
(WebCore::RuntimeEnabledFeatures::javaScriptI18NAPIEnabled):
(WebCore::RuntimeEnabledFeatures::audioEnabled):
(WebCore::RuntimeEnabledFeatures::htmlMediaElementEnabled):
(WebCore::RuntimeEnabledFeatures::htmlAudioElementEnabled):
(WebCore::RuntimeEnabledFeatures::htmlVideoElementEnabled):
(WebCore::RuntimeEnabledFeatures::htmlSourceElementEnabled):
(WebCore::RuntimeEnabledFeatures::mediaControllerEnabled):
(WebCore::RuntimeEnabledFeatures::mediaErrorEnabled):
(WebCore::RuntimeEnabledFeatures::timeRangesEnabled):
(WebCore::RuntimeEnabledFeatures::sharedWorkerEnabled):
(WebCore::RuntimeEnabledFeatures::webSocketEnabled):
(WebCore::RuntimeEnabledFeatures::openDatabaseEnabled):
(WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled):

  • bindings/generic/RuntimeEnabledFeatures.h: Ditto.

(WebCore::RuntimeEnabledFeatures::setLocalStorageEnabled):
(WebCore::RuntimeEnabledFeatures::localStorageEnabled):
(WebCore::RuntimeEnabledFeatures::setSessionStorageEnabled):
(WebCore::RuntimeEnabledFeatures::sessionStorageEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitNotificationsEnabled):
(WebCore::RuntimeEnabledFeatures::webkitNotificationsEnabled):
(WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled):
(WebCore::RuntimeEnabledFeatures::applicationCacheEnabled):
(WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled):
(WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled):
(WebCore::RuntimeEnabledFeatures::setGeolocationEnabled):
(WebCore::RuntimeEnabledFeatures::geolocationEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled):
(WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled):
(WebCore::RuntimeEnabledFeatures::indexedDBEnabled):
(WebCore::RuntimeEnabledFeatures::setCanvasPathEnabled):
(WebCore::RuntimeEnabledFeatures::canvasPathEnabled):
(WebCore::RuntimeEnabledFeatures::setCSSExclusionsEnabled):
(WebCore::RuntimeEnabledFeatures::cssExclusionsEnabled):
(WebCore::RuntimeEnabledFeatures::setCSSShapesEnabled):
(WebCore::RuntimeEnabledFeatures::cssShapesEnabled):
(WebCore::RuntimeEnabledFeatures::setCSSRegionsEnabled):
(WebCore::RuntimeEnabledFeatures::cssRegionsEnabled):
(WebCore::RuntimeEnabledFeatures::setCSSCompositingEnabled):
(WebCore::RuntimeEnabledFeatures::cssCompositingEnabled):
(WebCore::RuntimeEnabledFeatures::setFontLoadEventsEnabled):
(WebCore::RuntimeEnabledFeatures::fontLoadEventsEnabled):
(WebCore::RuntimeEnabledFeatures::webkitFullScreenAPIEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitFullScreenAPIEnabled):
(WebCore::RuntimeEnabledFeatures::webkitRequestFullScreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitIsFullScreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitFullScreenKeyboardInputAllowedEnabled):
(WebCore::RuntimeEnabledFeatures::webkitCurrentFullScreenElementEnabled):
(WebCore::RuntimeEnabledFeatures::webkitCancelFullScreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitFullscreenEnabledEnabled):
(WebCore::RuntimeEnabledFeatures::webkitFullscreenElementEnabled):
(WebCore::RuntimeEnabledFeatures::webkitExitFullscreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitRequestFullscreenEnabled):
(WebCore::RuntimeEnabledFeatures::touchEnabled):
(WebCore::RuntimeEnabledFeatures::setTouchEnabled):
(WebCore::RuntimeEnabledFeatures::setDeviceMotionEnabled):
(WebCore::RuntimeEnabledFeatures::deviceMotionEnabled):
(WebCore::RuntimeEnabledFeatures::deviceMotionEventEnabled):
(WebCore::RuntimeEnabledFeatures::ondevicemotionEnabled):
(WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled):
(WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled):
(WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled):
(WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled):
(WebCore::RuntimeEnabledFeatures::setSpeechInputEnabled):
(WebCore::RuntimeEnabledFeatures::speechInputEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechEnabled):
(WebCore::RuntimeEnabledFeatures::webkitGrammarEnabled):
(WebCore::RuntimeEnabledFeatures::setScriptedSpeechEnabled):
(WebCore::RuntimeEnabledFeatures::scriptedSpeechEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionErrorEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionEventEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechGrammarEnabled):
(WebCore::RuntimeEnabledFeatures::webkitSpeechGrammarListEnabled):
(WebCore::RuntimeEnabledFeatures::setFileSystemEnabled):
(WebCore::RuntimeEnabledFeatures::setJavaScriptI18NAPIEnabled):
(WebCore::RuntimeEnabledFeatures::mediaStreamEnabled):
(WebCore::RuntimeEnabledFeatures::setMediaStreamEnabled):
(WebCore::RuntimeEnabledFeatures::webkitGetUserMediaEnabled):
(WebCore::RuntimeEnabledFeatures::webkitMediaStreamEnabled):
(WebCore::RuntimeEnabledFeatures::peerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::setPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::webkitRTCPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::setLegacyCSSVendorPrefixesEnabled):
(WebCore::RuntimeEnabledFeatures::legacyCSSVendorPrefixesEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitGetGamepadsEnabled):
(WebCore::RuntimeEnabledFeatures::webkitGetGamepadsEnabled):
(WebCore::RuntimeEnabledFeatures::quotaEnabled):
(WebCore::RuntimeEnabledFeatures::setQuotaEnabled):
(WebCore::RuntimeEnabledFeatures::mediaSourceEnabled):
(WebCore::RuntimeEnabledFeatures::setMediaSourceEnabled):
(WebCore::RuntimeEnabledFeatures::encryptedMediaEnabled):
(WebCore::RuntimeEnabledFeatures::setEncryptedMediaEnabled):
(WebCore::RuntimeEnabledFeatures::webkitVideoTrackEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitVideoTrackEnabled):
(WebCore::RuntimeEnabledFeatures::shadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::setShadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::authorShadowDOMForAnyElementEnabled):
(WebCore::RuntimeEnabledFeatures::setAuthorShadowDOMForAnyElementEnabled):
(WebCore::RuntimeEnabledFeatures::customDOMElementsEnabled):
(WebCore::RuntimeEnabledFeatures::setCustomDOMElements):
(WebCore::RuntimeEnabledFeatures::styleScopedEnabled):
(WebCore::RuntimeEnabledFeatures::setStyleScopedEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeDateEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeDateEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeDateTimeEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeDateTimeEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeDateTimeLocalEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeDateTimeLocalEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeMonthEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeMonthEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeTimeEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeTimeEnabled):
(WebCore::RuntimeEnabledFeatures::inputTypeWeekEnabled):
(WebCore::RuntimeEnabledFeatures::setInputTypeWeekEnabled):
(WebCore::RuntimeEnabledFeatures::experimentalContentSecurityPolicyFeaturesEnabled):
(WebCore::RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled):
(WebCore::RuntimeEnabledFeatures::seamlessIFramesEnabled):
(WebCore::RuntimeEnabledFeatures::setSeamlessIFramesEnabled):
(WebCore::RuntimeEnabledFeatures::langAttributeAwareFormControlUIEnabled):
(WebCore::RuntimeEnabledFeatures::setLangAttributeAwareFormControlUIEnabled):

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::getCSSPropertyNamePrefix): Use singleton accessors.
(WebCore::cssPropertyIDForJSCSSPropertyName): Ditto.

  • bindings/scripts/CodeGeneratorJS.pm:

(GetRuntimeEnableFunctionName): Generate singleton version of
accessors.

  • css/CSSFontFace.cpp:

(WebCore::CSSFontFace::fontLoaded): Use singleton accessors.
(WebCore::CSSFontFace::getFontData): Ditto.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule): Ditto.

  • css/CSSParser.cpp:

(WebCore::isSimpleLengthPropertyID): Ditto.
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::rewriteSpecifiers):

  • css/CSSSegmentedFontFace.cpp:

(WebCore::CSSSegmentedFontFace::fontLoaded): Ditto.

  • css/StyleResolver.h:

(WebCore::StyleResolver::ensureScopeResolver): Ditto.

  • dom/Document.cpp:

(WebCore::Document::cssRegionsEnabled): Ditto.
(WebCore::Document::cssCompositingEnabled):
(WebCore::Document::shouldDisplaySeamlesslyWithParent):
(WebCore::Document::getCachedLocale):

  • dom/Element.cpp:

(WebCore::Element::createShadowRoot): Ditto.

  • dom/Position.cpp:

(WebCore::Position::Position): Ditto.
(WebCore::Position::findParent):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::getSelection): Ditto.

  • dom/make_names.pl:

(printConstructorInterior): Generate singleton version of accessors.
(printWrapperFunctions): Ditto.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::isSpeechEnabled): Use singleton accessors.
(WebCore::HTMLInputElement::setupDateTimeChooserParameters): Ditto.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::finishParsingChildren): Ditto.
(WebCore::HTMLMediaElement::scheduleDelayedAction):
(WebCore::HTMLMediaElement::loadTimerFired):
(WebCore::HTMLMediaElement::prepareForLoad):
(WebCore::HTMLMediaElement::loadInternal):
(WebCore::HTMLMediaElement::setReadyState):
(WebCore::HTMLMediaElement::playbackProgressTimerFired):
(WebCore::HTMLMediaElement::mediaPlayerDidAddAudioTrack):
(WebCore::HTMLMediaElement::mediaPlayerDidAddTextTrack):
(WebCore::HTMLMediaElement::mediaPlayerDidAddVideoTrack):
(WebCore::HTMLMediaElement::addAudioTrack):
(WebCore::HTMLMediaElement::addTextTrack):
(WebCore::HTMLMediaElement::addVideoTrack):
(WebCore::HTMLMediaElement::removeAudioTrack):
(WebCore::HTMLMediaElement::removeTextTrack):
(WebCore::HTMLMediaElement::removeVideoTrack):
(WebCore::HTMLMediaElement::audioTracks):
(WebCore::HTMLMediaElement::textTracks):
(WebCore::HTMLMediaElement::videoTracks):
(WebCore::HTMLMediaElement::didAddTextTrack):
(WebCore::HTMLMediaElement::didRemoveTextTrack):
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
(WebCore::HTMLMediaElement::userCancelledLoad):
(WebCore::HTMLMediaElement::hasClosedCaptions):
(WebCore::HTMLMediaElement::setClosedCaptionsVisible):
(WebCore::HTMLMediaElement::configureTextTrackDisplay):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::parseAttribute): Ditto.
(WebCore::HTMLStyleElement::scopedAttributeChanged):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):
(WebCore::HTMLStyleElement::scoped):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::parseAttribute): Ditto.
(WebCore::HTMLTrackElement::scheduleLoad):
(WebCore::HTMLTrackElement::canLoadUrl):

  • html/InputType.cpp:

(WebCore::createInputTypeFactoryMap): Ditto.

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::experimentalFeaturesEnabled): Ditto.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener): Ditto.

  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks): Ditto.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup): Ditto.
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setShadowDOMEnabled):
(WebCore::InternalSettings::setAuthorShadowDOMForAnyElementEnabled):
(WebCore::InternalSettings::setStyleScopedEnabled):
(WebCore::InternalSettings::setCSSExclusionsEnabled):
(WebCore::InternalSettings::setCSSShapesEnabled):
(WebCore::InternalSettings::setLangAttributeAwareFormControlUIEnabled):

../WebKit: [Windows] Refactor RuntimeEnabledFeatures as a Singleton
https://bugs.webkit.org/show_bug.cgi?id=121883

Reviewed by Jer Noble.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Expose singleton accessor for DLL clients.

../WebKit/blackberry: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • WebKitSupport/DumpRenderTreeSupport.cpp:

(DumpRenderTreeSupport::setStyleScopedEnabled): use
singleton accessor.

../WebKit/efl: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::setCSSRegionsEnabled): Use singleton.
(DumpRenderTreeSupportEfl::setSeamlessIFramesEnabled): Ditto.

  • ewk/ewk_settings.cpp:

(ewk_settings_shadow_dom_enable_get): Ditto.
(ewk_settings_shadow_dom_enable_set):

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new): Ditto.

../WebKit/gtk: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setCSSRegionsEnabled): Use singleton.
(DumpRenderTreeSupportGtk::setExperimentalContentSecurityPolicyFeaturesEnabled):
(DumpRenderTreeSupportGtk::setSeamlessIFramesEnabled):
(DumpRenderTreeSupportGtk::setShadowDOMEnabled):
(DumpRenderTreeSupportGtk::setStyleScopedEnabled):

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings): Ditto.

../WebKit/mac: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Use singleton accessor.
(-[WebView _setDashboardBehavior:to:]): Ditto.

../WebKit/qt: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply): Use singleton accessor.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setSeamlessIFramesEnabled): Ditto.

../WebKit/win: [Windows] Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883

Reviewed by Jer Noble.

  • WebView.cpp:

(WebView::notifyPreferencesChanged): Use singleton accessor

../WebKit2: Refactor RuntimeEnabledFeatures as a Singleton.
https://bugs.webkit.org/show_bug.cgi?id=121883.

Reviewed by Jer Noble.

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner): Use
Singleton accessor.
(WebKit::InjectedBundle::setShadowDOMEnabled):
(WebKit::InjectedBundle::setCSSRegionsEnabled):
(WebKit::InjectedBundle::setCSSCompositingEnabled):
(WebKit::InjectedBundle::setSeamlessIFramesEnabled):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Ditto.

  • WebProcess/qt/WebProcessQt.cpp:

(WebKit::WebProcess::platformInitializeWebProcess): Ditto.

3:08 PM Changeset in webkit [156423] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for IDBDatabase.

Turns out there was a much cleaner way to express this.

2:13 PM Changeset in webkit [156422] by benjamin@webkit.org
  • 34 edits in trunk/Source/WebCore

Tie the life of DocumentStyleSheetCollection and Document together
https://bugs.webkit.org/show_bug.cgi?id=121892

Reviewed by Andreas Kling.

DocumentStyleSheetCollection had an odd destruction pattern for no apparent reason.

The two objects strictly depend on eachother, this patch make that explicit by making
DocumentStyleSheetCollection a plain object in Document's memory space.

  • css/CSSStyleSheet.cpp:

(WebCore::CSSStyleSheet::didMutateRules):

  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::initUserStyle):

  • css/DocumentRuleSets.h:
  • css/InspectorCSSOMWrappers.cpp:

(WebCore::InspectorCSSOMWrappers::collectFromDocumentStyleSheetCollection):
(WebCore::InspectorCSSOMWrappers::getWrapperForRuleInSheets):

  • css/InspectorCSSOMWrappers.h:
  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matchRecursively):
(WebCore::SelectorChecker::checkOne):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):

  • css/StyleSheetList.cpp:

(WebCore::StyleSheetList::styleSheets):
(WebCore::StyleSheetList::detachFromDocument):

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::setCompatibilityMode):
(WebCore::Document::recalcStyle):
(WebCore::Document::createStyleResolver):
(WebCore::Document::processHttpEquiv):
(WebCore::Document::preferredStylesheetSet):
(WebCore::Document::selectedStylesheetSet):
(WebCore::Document::setSelectedStylesheetSet):
(WebCore::Document::scheduleOptimizedStyleSheetUpdate):
(WebCore::Document::styleResolverChanged):
(WebCore::Document::haveStylesheetsLoaded):

  • dom/Document.h:

(WebCore::Document::styleSheetCollection):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::combineCSSFeatureFlags):
(WebCore::DocumentStyleSheetCollection::resetCSSFeatureFlags):
(WebCore::DocumentStyleSheetCollection::pageUserSheet):
(WebCore::DocumentStyleSheetCollection::clearPageUserSheet):
(WebCore::DocumentStyleSheetCollection::updatePageUserSheet):
(WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::addAuthorSheet):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::removePendingSheet):
(WebCore::DocumentStyleSheetCollection::addStyleSheetCandidateNode):
(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::analyzeStyleSheetChange):
(WebCore::collectActiveCSSStyleSheetsFromSeamlessParents):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

  • dom/DocumentStyleSheetCollection.h:
  • dom/Element.cpp:

(WebCore::Element::createPseudoElementIfNeeded):

  • dom/InlineStyleSheetOwner.cpp:

(WebCore::InlineStyleSheetOwner::insertedIntoDocument):
(WebCore::InlineStyleSheetOwner::removedFromDocument):
(WebCore::InlineStyleSheetOwner::clearDocumentData):
(WebCore::InlineStyleSheetOwner::createSheet):
(WebCore::InlineStyleSheetOwner::sheetLoaded):
(WebCore::InlineStyleSheetOwner::startLoadingDynamicSheet):

  • dom/ProcessingInstruction.cpp:

(WebCore::ProcessingInstruction::~ProcessingInstruction):
(WebCore::ProcessingInstruction::checkStyleSheet):
(WebCore::ProcessingInstruction::sheetLoaded):
(WebCore::ProcessingInstruction::insertedInto):
(WebCore::ProcessingInstruction::removedFrom):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::~HTMLLinkElement):
(WebCore::HTMLLinkElement::insertedInto):
(WebCore::HTMLLinkElement::removedFrom):
(WebCore::HTMLLinkElement::addPendingSheet):
(WebCore::HTMLLinkElement::removePendingSheet):

  • html/HTMLQuoteElement.cpp:

(WebCore::HTMLQuoteElement::insertedInto):

  • html/HTMLViewSourceDocument.cpp:

(WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):

  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willMatchRuleImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::willMatchRule):

  • mathml/MathMLMathElement.cpp:

(WebCore::MathMLMathElement::insertedInto):

  • page/Page.cpp:

(WebCore::Page::userStyleSheetLocationChanged):

  • page/PageGroup.cpp:

(WebCore::PageGroup::invalidateInjectedStyleSheetCacheInAllFrames):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::lineHeight):
(WebCore::RenderBlock::updateFirstLetter):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
(WebCore::RenderInline::lineHeight):

  • rendering/RenderLineBreak.cpp:

(WebCore::RenderLineBreak::lineHeight):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::uncachedFirstLineStyle):
(WebCore::RenderObject::cachedFirstLineStyle):

  • rendering/RenderObject.h:

(WebCore::RenderObject::firstLineStyle):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::verticalPositionForBox):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveLocal):

  • testing/Internals.cpp:

(WebCore::Internals::insertAuthorCSS):
(WebCore::Internals::insertUserCSS):

1:58 PM Changeset in webkit [156421] by beidson@apple.com
  • 8 edits in trunk/Source

FeatureDefine.xcconfig cleanup (They should all be identical).
https://bugs.webkit.org/show_bug.cgi?id=121921

Reviewed by Mark Rowe.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
1:57 PM Changeset in webkit [156420] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Use tuples for encoding IPC messages
https://bugs.webkit.org/show_bug.cgi?id=121924

Reviewed by Andreas Kling.

Yet another step towards getting rid of the Arguments hierarchy.

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::handleMessage):
(CoreIPC::handleMessageVariadic):
(CoreIPC::handleMessageDelayed):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):

  • Scripts/webkit2/messages.py:

(arguments_type_old):
(arguments_type):
(reply_type):
(decode_type):
(delayed_reply_type):
(message_to_struct_declaration):

  • Scripts/webkit2/messages_unittest.py:

(LoadURL):
(std):
(TouchEvent):
(DidReceivePolicyDecision):
(Close):
(PreferencesDidChange):
(SendDoubleAndFloat):
(SendInts):
(CreatePlugin):
(RunJavaScriptAlert):
(GetPlugins):
(GetPluginProcessConnection):
(TestMultipleAttributes):
(TestParameterAttributes):
(TemplateTest):
(DidCreateWebProcessConnection):
(InterpretKeyEvent):
(DeprecatedOperation):
(ExperimentalOperation):

  • Shared/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::send):

1:01 PM Changeset in webkit [156419] by akling@apple.com
  • 45 edits in trunk/Source/WebCore

JS wrappers should have strongly typed impl() functions.
<https://webkit.org/b/121919>

Reviewed by Geoffrey Garen.

Generate strongly typed JSFoo::impl() functions for all wrappers,
not just those marked with JSGenerateToNativeObject.

Removed 8.8 million static_casts that are no longer needed.

12:22 PM Changeset in webkit [156418] by Patrick Gansterer
  • 3 edits in trunk/Tools

[WIN] Fix MSVC C4146 compiler warning
https://bugs.webkit.org/show_bug.cgi?id=121838

Reviewed by Brent Fulgham.

Fix some variables from unsinged to int to fix the compiler warning
"unary minus operator applied to unsigned type, result still unsigned".

  • DumpRenderTree/WorkQueueItem.h:

(BackItem::BackItem):
(ForwardItem::ForwardItem):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(createWebViewAndOffscreenWindow):

12:13 PM Changeset in webkit [156417] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[GTK] Switch the 64-bit Release builder to testing layout tests under WK2
https://bugs.webkit.org/show_bug.cgi?id=121256

Reviewed by Martin Robinson.

Switch the GTK 64-bit Release builder to testing the layout tests under WebKit2.
The GTK 64-bit Release WK2 testing builder is switched to now run layout tests under WebKit1.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
12:04 PM Changeset in webkit [156416] by roger_fong@apple.com
  • 5 edits in trunk/Source

https://bugs.webkit.org/show_bug.cgi?id=121885.
<rdar://problem/15072332>.

Reviewed by Brent Fulgham.

No new functionality added.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollByRecursively):

  • rendering/RenderLayer.h:
  • WebView.cpp:

(WebView::gestureNotify):
(WebView::gesture):

12:02 PM Changeset in webkit [156415] by zandobersek@gmail.com
  • 4 edits in trunk/LayoutTests

Unreviewed GTK gardening. Moving WK1-specific failure expectations into the WK1-specific TestExpectations.
Also adding expectations for the currently failing tests on WK2.

  • platform/gtk-wk1/TestExpectations:
  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
11:56 AM Changeset in webkit [156414] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed build fix: Add new syntax of function declaration to
Windows export definition file.

11:52 AM Changeset in webkit [156413] by akling@apple.com
  • 69 edits in trunk/Source/WebCore

Reduce repetitive EventTarget subclassing.
<https://webkit.org/b/121915>

Reviewed by Antti Koivisto.

Add a EventTargetWithInlineData helper class to EventTarget.h.
It's a simple subclass with an EventTargetData member and FINAL
eventTargetData()/ensureEventTargetData() overrides.

Turns out that this fits almost every use case except Node and
SVGElementInstance.

Inlined most of the FINAL EventTarget overrides since they will
be called on tight pointers by generated bindings code and this
removes the need for virtual dispatch.

Spammed OVERRIDE FINAL as appropriate, we can't make the whole
classes FINAL until bug 121747 is fixed, so added FIXMEs.

11:51 AM Changeset in webkit [156412] by zandobersek@gmail.com
  • 1 edit
    42 adds
    12 deletes in trunk/LayoutTests

Unreviewed GTK gardening. Moving around and updating the GTK baselines that are
either specific to WK1 or WK2 or can be shared by both.

  • platform/gtk-wk1/http: Added.
  • platform/gtk-wk1/http/tests: Added.
  • platform/gtk-wk1/http/tests/cache: Added.
  • platform/gtk-wk1/http/tests/cache/cancel-multiple-post-xhrs-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-only-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt: Added.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt: Added.
  • platform/gtk-wk2/http: Added.
  • platform/gtk-wk2/http/tests: Added.
  • platform/gtk-wk2/http/tests/loading: Added.
  • platform/gtk-wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Added.
  • platform/gtk-wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Added.
  • platform/gtk-wk2/http/tests/misc: Added.
  • platform/gtk-wk2/http/tests/misc/401-alternative-content-expected.txt: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-1: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-2: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-4: Added.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Added.
  • platform/gtk-wk2/http/tests/security: Added.
  • platform/gtk-wk2/http/tests/security/401-logout: Added.
  • platform/gtk-wk2/http/tests/security/401-logout/401-logout-expected.txt: Added.
  • platform/gtk-wk2/http/tests/xmlhttprequest: Added.
  • platform/gtk-wk2/http/tests/xmlhttprequest/failed-auth-expected.txt: Added.
  • platform/gtk-wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Added.
  • platform/gtk-wk2/js: Added.
  • platform/gtk-wk2/js/dom: Added.
  • platform/gtk-wk2/js/dom/constructor-length-expected.txt: Added.
  • platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt: Added.
  • platform/gtk/http/tests/cache: Removed.
  • platform/gtk/http/tests/cache/cancel-multiple-post-xhrs-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-only-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt: Removed.
  • platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt: Removed.
  • platform/gtk/userscripts: Added.
  • platform/gtk/userscripts/script-run-at-end-expected.txt: Added.
11:43 AM Changeset in webkit [156411] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed build fix after r156408.

11:29 AM Changeset in webkit [156410] by ap@apple.com
  • 2 edits in trunk/LayoutTests

loader/go-back-to-different-window-size.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=96642

  • platform/mac/TestExpectations: Marking it as flaky on Mac. I think that it's

a general issue with the tools that window resizing doesn't work well.

11:21 AM Changeset in webkit [156409] by commit-queue@webkit.org
  • 6 edits in trunk

AX: WebKit doesn't map aria-sort=other on OS X
https://bugs.webkit.org/show_bug.cgi?id=118511

Patch by Sam White <Samuel White> on 2013-09-25
Reviewed by Chris Fleizach.

Source/WebCore:

No new tests, updated existing aria-sort test to validate addition of "other"
sort order per http://www.w3.org/TR/wai-aria/complete#aria-sort.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::sortDirection):

  • accessibility/AccessibilityObject.h:

LayoutTests:

Updated test to check "other" aria-sort order. Also added additional checks to
determine which elements expose aria-sort so our "none" case is more clear.

  • accessibility/aria-sort-expected.txt:
  • accessibility/aria-sort.html:
11:09 AM Changeset in webkit [156408] by weinig@apple.com
  • 65 edits in trunk/Source/WebCore

CTTE: More Document references please
https://bugs.webkit.org/show_bug.cgi?id=121893

Reviewed by Anders Carlsson.

  • Thread even more Document&s around. *
11:07 AM Changeset in webkit [156407] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

HasMemoryCostMemberFunction should work for final classes
https://bugs.webkit.org/show_bug.cgi?id=121747

Reviewed by Sam Weinig.

Use decltype to check for the memoryCost() member function. This doesn't check that the return type is size_t, but
the build will fail anyway if that's the case (or if the return type is not convertible to size_t).

  • bindings/js/JSDOMBinding.h:
11:02 AM Changeset in webkit [156406] by beidson@apple.com
  • 11 edits
    13 moves
    1 delete in trunk/Source/WebCore

More refactoring to make the LevelDB dependencies of IDB more obvious.
https://bugs.webkit.org/show_bug.cgi?id=121880

Reviewed by Alexey Proskuryakov.

This patch does three things:
1 - Moves some files to the indexeddb/leveldb subdirectory, renaming them in the process.
2 - Renames some classes.
3 - Adds "USE(LEVELDB)" guards in addition to the ENABLE(INDEXED_DATABASE) guard for those files.

Project file updates:

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCore.vcxproj/WebCore.vcxproj:

File renames, class renames, and USE(LEVELDB) guards:

  • Modules/indexeddb/IDBBackingStore.cpp: Removed.
  • Modules/indexeddb/IDBFactoryBackendInterface.cpp:

(WebCore::IDBFactoryBackendInterface::create): Add a null return if USE(LEVELDB) is disabled as a stop gap measure until

there is a non-LevelDB impl.

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBBackingStore.h.
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp.
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h.
  • Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp.
  • Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h.
  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
  • Modules/indexeddb/leveldb/IDBLevelDBCoding.h:
  • Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp.
  • Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h.
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp.
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h.
  • Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp.
  • Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h.
11:00 AM Changeset in webkit [156405] by Patrick Gansterer
  • 3 edits in trunk/Tools

Add style checker for CMake lists
https://bugs.webkit.org/show_bug.cgi?id=121764

Reviewed by Ryosuke Niwa.

Add an additional check to make sure that list of files are sorted.
Exclude lists of include directories for now, since the order
can be importent for compilation of some files.

  • Scripts/webkitpy/style/checkers/cmake.py:

(CMakeChecker.check):
(CMakeChecker._check_indent):
(CMakeChecker):
(CMakeChecker._check_list_order):
(CMakeChecker._list_item_path):

  • Scripts/webkitpy/style/checkers/cmake_unittest.py:

(CMakeCheckerTest.test_check):

10:45 AM Changeset in webkit [156404] by Antti Koivisto
  • 4 edits
    2 adds in trunk

REGRESSION (r156355) Links / interactive elements inside nested tables are unclickable
https://bugs.webkit.org/show_bug.cgi?id=121904

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/table/hittest-self-painting.html

Original reduction by Philippe Wittenbergh.

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::styleDidChange):

Tighten a bit.

(WebCore::RenderTableRow::nodeAtPoint):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::nodeAtPoint):

These flipped accidentally in r156355.

LayoutTests:

  • fast/table/hittest-self-painting-expected.txt: Added.
  • fast/table/hittest-self-painting.html: Added.
10:40 AM Changeset in webkit [156403] by Patrick Gansterer
  • 5 edits in trunk/Tools

CMakeChecker takes unusually long time to run
https://bugs.webkit.org/show_bug.cgi?id=105662

Reviewed by Ryosuke Niwa.

Move the caching mechanism for regular expression of the C++ checker into
a common file and use it for the CMake and ChangeLog checkers too.

  • Scripts/webkitpy/style/checkers/changelog.py:

(ChangeLogChecker.check_entry):

  • Scripts/webkitpy/style/checkers/cmake.py:

(CMakeChecker._process_line):
(CMakeChecker._check_no_space_cmds):
(CMakeChecker._check_one_space_cmds):
(CMakeChecker._check_non_lowercase_cmd):

  • Scripts/webkitpy/style/checkers/common.py:

(match):
(search):
(searchIgnorecase):
(sub):
(subn):

  • Scripts/webkitpy/style/checkers/cpp.py:
9:33 AM Changeset in webkit [156402] by Patrick Gansterer
  • 2 edits in trunk/Source/JavaScriptCore

Build fix for WinCE after r155098.

Windows CE does not support getenv().

  • jsc.cpp:

(main):

9:32 AM Changeset in webkit [156401] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

Fix template deduction for CollatorDefault

  • wtf/unicode/CollatorDefault.cpp:

(WTF::Collator::userDefault): Use nullptr instead of 0.

9:08 AM Changeset in webkit [156400] by berto@igalia.com
  • 2 edits in trunk/Source/WebCore

Fix warning in makeprop.pl
https://bugs.webkit.org/show_bug.cgi?id=121900

Reviewed by Ryosuke Niwa.

%nameIsInherited and %nameToId were incorrectly initialized using
references instead of lists.

Anyway there's no need to initialize those variables explicitly,
they're already empty by default.

  • css/makeprop.pl:
9:02 AM Changeset in webkit [156399] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r156393): Build with !ENABLE(SVG_FONTS) broken

Unreviewed build-fix.

Protect SVG font code with #ifdef ENABLE(SVG_FONTS).

  • platform/graphics/WidthIterator.cpp:

(WebCore::applyFontTransforms):

8:41 AM Changeset in webkit [156398] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r156272.
http://trac.webkit.org/changeset/156272
https://bugs.webkit.org/show_bug.cgi?id=121909

Has no real effect (Requested by carewolf on #webkit).

  • platform/graphics/qt/TileQt.cpp:

(WebCore::TileQt::updateBackBuffer):

8:40 AM Changeset in webkit [156397] by akling@apple.com
  • 16 edits in trunk/Source/WebCore

Move wheel event dispatch from Node to Element.
<https://webkit.org/b/121908>

Reviewed by Anders Carlsson.

Wheel events are only ever dispatched on Elements, so move the logic out of Node.

Had to make RenderBox::scroll() and friends return a stopElement instead of a
stopNode (out argument) to make this work, though it was only ever returning
Elements there anyway.

8:06 AM Changeset in webkit [156396] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening. Unskip passing fast/text/font-kerning.html
https://bugs.webkit.org/show_bug.cgi?id=121907

Unreviewed EFL gardening. Passes after r152411.

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2013-09-25

  • platform/efl/TestExpectations:
7:57 AM Changeset in webkit [156395] by allan.jensen@digia.com
  • 13 edits in trunk

[Qt] Fix build with Qt 5.2 QtPosition module
https://bugs.webkit.org/show_bug.cgi?id=121089

Reviewed by Simon Hausmann.

.:

QtLocation -> QtPositioning

  • Source/sync.profile:

Source/WebKit:

QtLocation -> QtPositioning

  • WebKit1.pri:

Source/WebKit/qt:

QtLocation -> QtPositioning

  • WebCoreSupport/GeolocationClientQt.cpp:

Source/WebKit2:

QtLocation -> QtPositioning

  • Target.pri:
  • UIProcess/qt/WebGeolocationProviderQt.cpp:
  • WebKit2.pri:

Tools:

QtLocation -> QtPositioning. Make sure we set build type before doing configure checks
that might depend on them.

  • qmake/mkspecs/features/default_pre.prf:
  • qmake/mkspecs/features/features.prf:
7:50 AM Changeset in webkit [156394] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Fix build with !ENABLE(BLOB) after r156330

Unreviewed build-fix.

  • platform/network/qt/ResourceRequestQt.cpp:

(WebCore::ResourceRequest::toNetworkRequest):

7:19 AM Changeset in webkit [156393] by allan.jensen@digia.com
  • 13 edits
    3 adds in trunk

Support kerning with SVG web fonts
https://bugs.webkit.org/show_bug.cgi?id=117540

Source/WebCore:

Reviewed by Stephen Chenney.

Adds the glue to WidthIterator to take advantage of kerning in SVG web fonts.
To supply SVG font kerning with its required text input, the signature of
applyFontTransforms has been extended.

Since SVG font kerning was extremely slow, it has been sped up by replacing
the iteration over all possible kerning definitions with a hash-map based
lookup of the leading symbol to be kerned. The new algorithm provides a
roughly 100x speed-up in SVG font kerning.

Test: fast/text/svg-font-face-with-kerning.html

  • platform/graphics/TextRun.h:

(WebCore::TextRun::string):

  • platform/graphics/WidthIterator.cpp:

(WebCore::applyFontTransforms):
(WebCore::WidthIterator::advanceInternal):

  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGTextRunRenderingContext::applySVGKerning):

  • rendering/svg/SVGTextRunRenderingContext.h:
  • svg/SVGFontElement.cpp:

(WebCore::SVGFontElement::invalidateGlyphCache):
(WebCore::SVGFontElement::ensureGlyphCache):
(WebCore::SVGKerningMap::clear):
(WebCore::SVGKerningMap::insert):
(WebCore::stringMatchesUnicodeRange):
(WebCore::stringMatchesGlyphName):
(WebCore::stringMatchesUnicodeName):
(WebCore::matches):
(WebCore::kerningForPairOfStringsAndGlyphs):
(WebCore::SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs):
(WebCore::SVGFontElement::verticalKerningForPairOfStringsAndGlyphs):

  • svg/SVGFontElement.h:

(WebCore::SVGKerning::SVGKerning):
(WebCore::SVGKerningMap::isEmpty):

  • svg/SVGHKernElement.cpp:

(WebCore::SVGHKernElement::buildHorizontalKerningPair):

  • svg/SVGHKernElement.h:
  • svg/SVGVKernElement.cpp:

(WebCore::SVGVKernElement::buildVerticalKerningPair):

  • svg/SVGVKernElement.h:

LayoutTests:

Added test of SVG web font kerning.

Reviewed by Stephen Chenney.

  • fast/text/svg-font-face-with-kerning-expected.png: Added.
  • fast/text/svg-font-face-with-kerning-expected.txt: Added.
  • fast/text/svg-font-face-with-kerning.html: Added.
7:16 AM Changeset in webkit [156392] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Update test expectations. Mark fast/images/exif-orientation.html as failing.
https://bugs.webkit.org/show_bug.cgi?id=121906

Unreviewed GTK gardening.

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-09-25

  • platform/gtk/TestExpectations: Mark fast/images/exif-orientation.html as failing,

as reported in webkit.org/b/121905.

6:53 AM Changeset in webkit [156391] by commit-queue@webkit.org
  • 10 edits
    9 adds in trunk

<https://webkit.org/b/120476> [CSS Masking] Implement luminance masking

Source/WebCore:

Added implementation for luminance masking. A luminance mask is applied by transforming its RGB values into
an alpha value, using luminance-to-alpha coefficients. Because this conversion is already implemented in
the ImageBuffer class, we used it in our implementation.

Patch by Andrei Parvu <parvu@adobe.com> on 2013-09-25
Reviewed by Dirk Schulze.

Tests: css3/masking/mask-luminance-gradient.html

css3/masking/mask-luminance-png.html
css3/masking/mask-luminance-svg.html

  • platform/graphics/BitmapImage.cpp: Add a drawPattern method, in which an ImageBuffer is created and converted from alpha to luminance, if there is a luminance mask.

(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::drawPattern):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/GeneratorGeneratedImage.cpp: Convert the ImageBuffer to luminance, if necessary.

(WebCore::GeneratorGeneratedImage::drawPattern):

  • platform/graphics/GraphicsContext.cpp: Add methods which set and check if a luminance mask is drawn.

(WebCore::GraphicsContext::setDrawLuminanceMask):
(WebCore::GraphicsContext::drawLuminanceMask):

  • platform/graphics/GraphicsContext.h: Add property to ContextState for luminance drawing.

(WebCore::GraphicsContextState::GraphicsContextState):

  • rendering/RenderBoxModelObject.cpp: Set the luminance property of the mask, if the layer has a mask source type of luminance.

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • svg/graphics/SVGImage.cpp: Convert the ImageBuffer to luminance, if necessary.

(WebCore::SVGImage::drawPatternForContainer):

  • svg/graphics/SVGImageForContainer.cpp: Pass the luminance property to the SVG image.

(WebCore::SVGImageForContainer::drawPattern):

LayoutTests:

Added tests to verify the implementation of luminance masking.

Patch by Andrei Parvu <parvu@adobe.com> on 2013-09-25
Reviewed by Dirk Schulze.

  • css3/masking/mask-luminance-gradient-expected.html: Added.
  • css3/masking/mask-luminance-gradient.html: Added.
  • css3/masking/mask-luminance-png.html: Added.
  • css3/masking/mask-luminance-svg-expected.html: Added.
  • css3/masking/mask-luminance-svg.html: Added.
  • css3/masking/resources/circle-alpha.svg: Added.
  • css3/masking/resources/circle2.svg: Added.
  • css3/masking/resources/dice.png: Added.
  • platform/mac/css3/masking/mask-luminance-png-expected.txt: Added.
6:02 AM Changeset in webkit [156390] by akling@apple.com
  • 10 edits
    2 deletes in trunk/Source/WebCore

Remove EventPathWalker.
<https://webkit.org/b/121890>

Reviewed by Antti Koivisto.

Purge some more leftover Shadow DOM code.

  • dom/EventPathWalker.cpp:
  • dom/EventPathWalker.h:

Removed.

  • dom/EventRetargeter.cpp:

(WebCore::nodeOrHostIfPseudoElement):
(WebCore::EventRetargeter::calculateEventPath):
(WebCore::EventRetargeter::buildRelatedNodeMap):

If starting at a pseudo element, e.g for events originating from
a transition on :before/:after, retarget to the pseudo element's
host as appropriate. This was the only real "feature" we were
using in EventPathWalker.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::handleWheelEvent):
(WebCore::EventHandler::handleTouchEvent):

Replace use of EventPathWalker with parentOrShadowHostElement()
parent chain climbing.

5:50 AM Changeset in webkit [156389] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Updated accessibility expectations after r154781 and r155599
https://bugs.webkit.org/show_bug.cgi?id=121901

Unreviewed EFL gardening.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-25

  • platform/efl/accessibility/menu-list-sends-change-notification-expected.txt:
  • platform/efl/accessibility/notification-listeners-expected.txt:
5:33 AM Changeset in webkit [156388] by mario@webkit.org
  • 3 edits in trunk/Tools

[ATK] Fix style issues in AccessibilityUIElementAtk
https://bugs.webkit.org/show_bug.cgi?id=121898

Reviewed by Chris Fleizach.

Avoid the '.f' suffix for float literals and use G_VALUE_INIT
instead of { 0, { { 0 } } } to initialize a GValue.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::clickPointX): Remove suffix.
(AccessibilityUIElement::clickPointY): Ditto.
(AccessibilityUIElement::intValue): Use G_VALUE_INIT and remove suffix.
(AccessibilityUIElement::minValue): Ditto.
(AccessibilityUIElement::maxValue): Ditto.
(AccessibilityUIElement::numberAttributeValue): Remove suffix.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::numberAttributeValue): Remove suffix.
(WTR::AccessibilityUIElement::x): Ditto.
(WTR::AccessibilityUIElement::y): Ditto.
(WTR::AccessibilityUIElement::width): Ditto.
(WTR::AccessibilityUIElement::height): Ditto.
(WTR::AccessibilityUIElement::clickPointX): Ditto.
(WTR::AccessibilityUIElement::clickPointY): Ditto.
(WTR::AccessibilityUIElement::intValue): Ditto.
(WTR::AccessibilityUIElement::minValue): Ditto.
(WTR::AccessibilityUIElement::maxValue): Ditto.

5:21 AM Changeset in webkit [156387] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

:read-write pseudo-class should not be applied on <input type="text" disabled>
https://bugs.webkit.org/show_bug.cgi?id=118236

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-25
Reviewed by Darin Adler.

Source/WebCore:

The :read-write pseudo-class must match any element falling into one
of the following categories i.e
input elements to which the readonly attribute applies, and that are mutable
(i.e. that do not have the readonly attribute specified and that are not disabled)
textarea elements that do not have a readonly attribute, and that are not disabled
elements that are editing hosts or editable and are neither input elements nor
textarea elements.

Test: fast/css/readwrite-pseudoclass-input.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::matchesReadWritePseudoClass):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
Checking for both readonly and disabled attribute on input ane textarea element.

LayoutTests:

  • fast/css/readwrite-pseudoclass-input-expected.txt: Added.
  • fast/css/readwrite-pseudoclass-input.html: Added.

Added test case to verify that :read-write pseudo-class properties are
are not applied to disabled input and textarea elements.

4:02 AM Changeset in webkit [156386] by commit-queue@webkit.org
  • 9 edits in trunk

[EFL] accessibility/loading-iframe-sends-notification.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112003

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-25
Reviewed by Mario Sanchez Prada.

Source/WebCore:

Enabled AXLayoutComplete on EFL platform.

  • dom/Document.cpp:

(WebCore::Document::implicitClose):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

Tools:

Enabled addNotificationListener and removeNotificationListener for EFL port.

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:

(WTR::AccessibilityController::removeNotificationListener):

LayoutTests:

  • platform/efl-wk1/TestExpectations: Removed loading-iframe-sends-notification.html.
  • platform/efl-wk2/TestExpectations: Removed loading-iframe-sends-notification.html.

Sep 24, 2013:

10:38 PM Changeset in webkit [156385] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove erroneous reference to libWTF.a in the WebKit2 Xcode project file.

Rubber-stamped by Alexey Proskuryakov.

  • WebKit2.xcodeproj/project.pbxproj:
10:37 PM Changeset in webkit [156384] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove the Windows-specific rules from WebKit2's DerivedSources.make, Windows is not supported anymore
https://bugs.webkit.org/show_bug.cgi?id=121895

Reviewed by Alexey Proskuryakov.

  • DerivedSources.make:

Remove Windows-specific rules, and, now that only the Mac is using this file, remove the
Mac checks.

10:22 PM Changeset in webkit [156383] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

Unreviewed, rolling out r156379.
http://trac.webkit.org/changeset/156379
https://bugs.webkit.org/show_bug.cgi?id=121894

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

  • css/CSSValue.cpp:

(WebCore::CSSValue::destroy):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
(WebCore::StyleResolver::createFilterOperations):

  • css/TransformFunctions.cpp:

(WebCore::transformsForValue):

  • css/WebKitCSSArrayFunctionValue.h:
  • css/WebKitCSSFilterValue.h:
  • css/WebKitCSSMatFunctionValue.h:
  • css/WebKitCSSMixFunctionValue.h:
  • css/WebKitCSSSVGDocumentValue.h:
  • css/WebKitCSSShaderValue.h:

(WebCore::toWebKitCSSShaderValue):

  • css/WebKitCSSTransformValue.h:
8:34 PM Changeset in webkit [156382] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Crash in Document::setFocusedElement
https://bugs.webkit.org/show_bug.cgi?id=121888

Reviewed by Andreas Kling.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/4a594a3de7d9761462b55fb27a6850d767419af2

The crash was caused by attempting to call Chrome:focusedNodeChanged() after m_page had already
been cleared. This could happen when blur's event handler removes the iframe from which
the focus had been moved. Fixed the bug by adding a null pointer check.

Test: fast/events/blur-remove-parent-crash.html

  • dom/Document.cpp:

(WebCore::Document::setFocusedElement):

LayoutTests:

  • fast/events/blur-remove-parent-crash-expected.txt: Added.
  • fast/events/blur-remove-parent-crash.html: Added.
8:09 PM Changeset in webkit [156381] by Antti Koivisto
  • 19 edits
    3 deletes in trunk/Source/WebCore

Remove HTMLContentElement
https://bugs.webkit.org/show_bug.cgi?id=121891

Reviewed by Andreas Kling.

Remove an unsused Shadow DOM type.

  • DerivedSources.make:
  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLDetailsElement.cpp:
  • html/HTMLSummaryElement.cpp:
  • html/HTMLTagNames.in:
  • html/shadow/ContentDistributor.cpp:
  • html/shadow/HTMLContentElement.cpp: Removed.
  • html/shadow/HTMLContentElement.h: Removed.
  • html/shadow/HTMLContentElement.idl: Removed.
  • html/shadow/InsertionPoint.h:

(WebCore::InsertionPoint::matchTypeFor):

  • testing/Internals.cpp:
  • testing/Internals.h:
  • testing/Internals.idl:
6:18 PM Changeset in webkit [156380] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove a contradiction from SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=121881

Reviewed by Andreas Kling.

The matching code for PseudoHover and PseudoActive is done on the current
selector pseudo type. The current selector match type must be CSSSelector::PseudoClass
in order to reach this code. Consequently, selector->m_match == CSSSelector::Tag can
never be true.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

6:17 PM Changeset in webkit [156379] by gyuyoung.kim@samsung.com
  • 11 edits in trunk/Source/WebCore

Add toWebKitCSS*Value functions to cast from CSSValue
https://bugs.webkit.org/show_bug.cgi?id=121776

Reviewed by Darin Adler.

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):

6:03 PM Changeset in webkit [156378] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Only allow rvalues to be passed as synchronous message replies
https://bugs.webkit.org/show_bug.cgi?id=121870

Reviewed by Andreas Kling.

This lets us get rid of a nasty const cast and is more logical.

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::sendSync):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):
(CoreIPC::MessageSender::sendSync):

  • Shared/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::sendSync):

6:01 PM Changeset in webkit [156377] by Antti Koivisto
  • 12 edits in trunk/Source/WebCore

Clean up some uses of first/lastChildSlow
https://bugs.webkit.org/show_bug.cgi?id=121882

Reviewed by Andreas Kling.

Tighten typing and use first/lastChild instead.

  • dom/Position.cpp:

(WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
(WebCore::Position::isCandidate):
(WebCore::Position::getInlineBoxAndOffset):

  • dom/Position.h:
  • dom/PositionIterator.cpp:

(WebCore::PositionIterator::isCandidate):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):

  • rendering/RenderBlock.cpp:

(WebCore::canMergeAnonymousBlock):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::RenderBlock::updateFirstLetter):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::setRegionObjectsRegionStyle):
(WebCore::RenderRegion::computeChildrenStyleInRegion):

  • rendering/RenderRegion.h:
  • rendering/RenderRuby.cpp:

(WebCore::rubyBeforeBlock):
(WebCore::rubyAfterBlock):
(WebCore::lastRubyRun):

  • rendering/RenderTreeAsText.cpp:

(WebCore::write):
(WebCore::writeCounterValuesFromChildren):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::findPreviousAndNextAttributes):

  • style/StyleResolveTree.cpp:

(WebCore::Style::textRendererIsNeeded):

5:37 PM Changeset in webkit [156376] by mhahnenberg@apple.com
  • 13 edits
    6 adds in trunk

op_get_callee shouldn't use value profiling
https://bugs.webkit.org/show_bug.cgi?id=121821

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Currently it's one of the two opcodes that uses m_singletonValue, which is unnecessary.
Our current plan is to remove m_singletonValue so that GenGC can have a simpler story
for handling CodeBlocks/FunctionExecutables during nursery collections.

Instead of using a ValueProfile op_get_callee now has a simple inline cache of the most
recent JSFunction that we saw.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCreateThis):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_get_callee):
(JSC::JIT::emitSlow_op_get_callee):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_get_callee):
(JSC::JIT::emitSlow_op_get_callee):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:

LayoutTests:

Added two tests to make sure we didn't regress the performance of op_get_callee.

  • js/regress/get_callee_monomorphic-expected.txt: Added.
  • js/regress/get_callee_monomorphic.html: Added.
  • js/regress/get_callee_polymorphic-expected.txt: Added.
  • js/regress/get_callee_polymorphic.html: Added.
  • js/regress/script-tests/get_callee_monomorphic.js: Added.
  • js/regress/script-tests/get_callee_polymorphic.js: Added.
5:14 PM Changeset in webkit [156375] by betravis@adobe.com
  • 5 edits in trunk

initial commit

4:52 PM Changeset in webkit [156374] by mark.lam@apple.com
  • 25 edits in trunk/Source

Change JSC debug hooks to pass a CallFrame* instead of a DebuggerCallFrame.
https://bugs.webkit.org/show_bug.cgi?id=121867.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  1. Removed the need for passing the line and column info to the debug hook callbacks. We now get the line and column info from the CallFrame.
  1. Simplify BytecodeGenerator::emitDebugHook() to only take 1 line number argument. The caller can determine whether to pass in the first or last line number of the block of source code as appropriate. Note: we still need to pass in the line and column info to emitDebugHook() because it uses this info to emit expression info which is later used by the StackVisitor to determine the line and column info for its "pc".
  1. Pass the exceptionValue explicitly to the exception() debug hook callback. It should not be embedded in the CallFrame / DebuggerCallFrame.
  1. Change the op_debug opcode size to 2 (from 5) since we've removing 3 arg values. Update the LLINT and JIT code to handle this.
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitDebugHook):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::ConstStatementNode::emitBytecode):
(JSC::EmptyStatementNode::emitBytecode):
(JSC::DebuggerStatementNode::emitBytecode):
(JSC::ExprStatementNode::emitBytecode):
(JSC::VarStatementNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):
(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):
(JSC::ThrowNode::emitBytecode):
(JSC::TryNode::emitBytecode):
(JSC::ProgramNode::emitBytecode):
(JSC::EvalNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):

  • debugger/Debugger.h:
  • debugger/DebuggerCallFrame.cpp:

(JSC::LineAndColumnFunctor::operator()):
(JSC::LineAndColumnFunctor::line):
(JSC::LineAndColumnFunctor::column):
(JSC::DebuggerCallFrame::DebuggerCallFrame):
(JSC::DebuggerCallFrame::clear):

  • debugger/DebuggerCallFrame.h:

(JSC::DebuggerCallFrame::line):
(JSC::DebuggerCallFrame::column):

  • interpreter/Interpreter.cpp:

(JSC::unwindCallFrame):
(JSC::UnwindFunctor::UnwindFunctor):
(JSC::UnwindFunctor::operator()):
(JSC::Interpreter::unwind):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:

Source/WebCore:

No new tests.

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::createCallFrame):
(WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::callEvent):
(WebCore::ScriptDebugServer::atStatement):
(WebCore::ScriptDebugServer::returnEvent):
(WebCore::ScriptDebugServer::exception):
(WebCore::ScriptDebugServer::willExecuteProgram):
(WebCore::ScriptDebugServer::didExecuteProgram):
(WebCore::ScriptDebugServer::didReachBreakpoint):

  • bindings/js/ScriptDebugServer.h:
  • bindings/js/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::willExecuteProgram):

  • bindings/js/WorkerScriptDebugServer.h:

Source/WebKit/mac:

  • WebView/WebScriptDebugDelegate.mm:

(-[WebScriptCallFrame _initWithGlobalObject:debuggerCallFrame:exceptionValue:JSC::]):
(-[WebScriptCallFrame exception]):

  • WebView/WebScriptDebugger.h:
  • WebView/WebScriptDebugger.mm:

(WebScriptDebugger::exception):

4:47 PM Changeset in webkit [156373] by dino@apple.com
  • 3 edits in trunk/LayoutTests

webgl/conformance/extensions/oes-element-index-uint.html failing after r156351 or 156352
https://bugs.webkit.org/show_bug.cgi?id=121863
<rdar://problem/15069481>

Reviewed by Beth Dakin.

This test was not querying the vertex attribute locations
before binding data to them. When we enabled symbol mangling
we started seeing attributes appear in a different order
than the order defined in the shader source. Update this test
to ask getAttribLocation first.

Note that there are two important issues.

Firstly, this is updating our local copy of the Khronos test.
I've opened pull request #377 to get it addressed in the source.
https://github.com/KhronosGroup/WebGL/pull/377

Secondly, this indicates that we might have a lot of problems
with existing content that does not expect the order of
attributes to change.

  • webgl/resources/webgl_test_files/conformance/extensions/oes-element-index-uint.html:
  • TestExpectations: Unskip test.
4:39 PM Changeset in webkit [156372] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Move keyboard event dispatch from Node to Element.
<https://webkit.org/b/121873>

Reviewed by Antti Koivisto.

We only dispatch keyboard events on Elements so that logic shouldn't be in Node.

  • dom/Document.cpp:

(WebCore::eventTargetElementForDocument):

Reworked to return Element instead of Node.

  • dom/Document.h:
  • dom/Element.h:
  • dom/Element.cpp:

(WebCore::Element::dispatchKeyEvent):

Moved from Node to Element.

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::insertDictatedText):

  • page/EventHandler.cpp:

(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::handleTextInputEvent):

Adjusted for above changes.

4:27 PM Changeset in webkit [156371] by fpizlo@apple.com
  • 7 edits
    6 adds in trunk

Crashing under JSC::DFG::SpeculativeJIT::spill visiting citicards.com
https://bugs.webkit.org/show_bug.cgi?id=121844

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

Fix some int52 bugs that caused this.

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::dumpInContext): There's no such thing as int53.

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::spill): Actually spill int52's, instead of hitting an assert and crashing.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal): Use the right format (from before when we clobber it).

Tools:

Reviewed by Mark Hahnenberg.

  • Scripts/run-javascriptcore-tests: Be more clear about what test suite failed.

LayoutTests:

Reviewed by Mark Hahnenberg.

  • js/dfg-int52-spill-expected.txt: Added.
  • js/dfg-int52-spill-trickier-expected.txt: Added.
  • js/dfg-int52-spill-trickier.html: Added.
  • js/dfg-int52-spill.html: Added.
  • js/script-tests/dfg-int52-spill-trickier.js: Added.

(foo):

  • js/script-tests/dfg-int52-spill.js: Added.

(foo):

4:18 PM Changeset in webkit [156370] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Flaky Test: compositing/reflections/load-video-in-reflection.html
https://bugs.webkit.org/show_bug.cgi?id=117427

  • platform/mac/TestExpectations: Marking the test accordingly.
4:00 PM Changeset in webkit [156369] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Unreviewed buildfix.

  • UIProcess/WebNetworkInfoManagerProxy.h:
3:57 PM Changeset in webkit [156368] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix Mac build now.

  • UIProcess/WebContext.messages.in:
3:45 PM Changeset in webkit [156367] by ap@apple.com
  • 2 edits in trunk/LayoutTests

SVG Animations are flaky
https://bugs.webkit.org/show_bug.cgi?id=107018

  • platform/mac-wk2/TestExpectations: Marked some frequently failing tests
3:40 PM Changeset in webkit [156366] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Unreviewed buildfix after r156350.

  • UIProcess/WebContext.messages.in:
3:35 PM Changeset in webkit [156365] by ap@apple.com
  • 2 edits in trunk/Tools

[Mac][WK2] Multiple font tests fail is there is a global setting for font antialiasing threshold
https://bugs.webkit.org/show_bug.cgi?id=121854

Reviewed by Anders Carlsson.

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize): Post a notification to update cached
settings in underlying frameworks.

3:24 PM Changeset in webkit [156364] by zoltan@webkit.org
  • 5 edits
    2 adds in trunk

[CSS Shapes] Modify updateSegmentsForShapes function to use logical coordinates
https://bugs.webkit.org/show_bug.cgi?id=121864

Reviewed by David Hyatt.

When I landed updateSegmentsForShapes in r156022, I didn't use logical coordinates. This change modifies the
code to use coordinates for positioning the float and the content around the float in a shape-inside. Now I
added only one writing mode tests, but I will add more later in bug #121866.

Source/WebCore:

Test: fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content.html

  • rendering/FloatingObjects.h:

(WebCore::FloatingObject::logicalHeight):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeLogicalLocationForFloat):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::updateSegmentsForShapes):

LayoutTests:

  • fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content.html: Added.
3:18 PM Changeset in webkit [156363] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Unreviewed buildfix after r156354 and r156360.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::Connection::processMessage):
(CoreIPC::Connection::sendOutgoingMessage):

3:09 PM Changeset in webkit [156362] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Flaky Test: fast/history/history-subframe-with-name.html
https://bugs.webkit.org/show_bug.cgi?id=51039

Reviewed by Anders Carlsson.

Speculative fix, I could not reproduce locally.

  • fast/history/resources/history-subframe-with-name-container.html: Added a check

that onunload trick worked.

  • fast/history/resources/history-subframe-with-name-2.html: Starting the navigation

used to race with loading another iframe in the parent. Wait until the parent loads.

2:51 PM Changeset in webkit [156361] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Unreviewed buildfix after r156349.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::Connection::processMessage):

2:46 PM Changeset in webkit [156360] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Use std::unique_ptr for decoders as well
https://bugs.webkit.org/show_bug.cgi?id=121868

Reviewed by Andreas Kling.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::SyncMessageState::dispatchMessages):
(CoreIPC::Connection::waitForMessage):
(CoreIPC::Connection::sendSyncMessage):
(CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
(CoreIPC::Connection::waitForSyncReply):
(CoreIPC::Connection::processIncomingSyncReply):
(CoreIPC::Connection::processIncomingMessage):
(CoreIPC::Connection::enqueueIncomingMessage):
(CoreIPC::Connection::dispatchMessage):
(CoreIPC::Connection::dispatchOneMessage):

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::sendSync):
(CoreIPC::Connection::waitForAndDispatchImmediately):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::createMessageDecoder):
(CoreIPC::Connection::receiveSourceEventHandler):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postSynchronousMessage):

2:25 PM Changeset in webkit [156359] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Remove IDBTransactionCallbacks.h from the .xcodeproj, as it's gone from the repository.

Rubberstamped by Anders Carlsson and Alexey Proskuryakov.

  • WebCore.xcodeproj/project.pbxproj:
2:23 PM Changeset in webkit [156358] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Using Breakpoint Actions Breaks iOS inspection
https://bugs.webkit.org/show_bug.cgi?id=121862

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-09-24
Reviewed by Timothy Hatcher.

Only use DebuggerAgent.BreakpointActionType if it is available.
Otherwise leave options undefined for breakpoints since the backend
does not support it.

  • UserInterface/DebuggerManager.js:

(WebInspector.DebuggerManager.prototype._setBreakpoint):

2:19 PM Changeset in webkit [156357] by commit-queue@webkit.org
  • 1 edit
    3 adds in trunk/Source/WebInspectorUI

Web Inspector: Include iOS 7 Inspector.json Version
https://bugs.webkit.org/show_bug.cgi?id=121852

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-09-24
Reviewed by Timothy Hatcher.

  • UserInterface/Legacy/7.0/InspectorBackendCommands.js: Added.
  • Versions/Inspector-iOS-7.0.json: Added.
1:50 PM Changeset in webkit [156356] by dino@apple.com
  • 2 edits in trunk/LayoutTests

webgl/conformance/extensions/oes-element-index-uint.html failing after r156351 or 156352
https://bugs.webkit.org/show_bug.cgi?id=121863
<rdar://problem/15069481>

Temporarily skipped while investigating.

1:47 PM Changeset in webkit [156355] by Antti Koivisto
  • 9 edits in trunk/Source/WebCore

Tighten table rendering code
https://bugs.webkit.org/show_bug.cgi?id=121860

Reviewed by Andreas Kling.

Hide firstChild/lastChild/nextSibling/previousSibling in table renderers,
expose correctly typed firstRow/nextCell etc instead.

1:41 PM Changeset in webkit [156354] by andersca@apple.com
  • 48 edits in trunk/Source/WebKit2

Move MessageEncoder and ArgumentEncoder to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=121861

Reviewed by Andreas Kling.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkProcess.h:
  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::dispatchWorkQueueMessageReceiverMessage):
(CoreIPC::Connection::createSyncMessageEncoder):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::sendSyncReply):
(CoreIPC::Connection::sendSyncMessage):
(CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
(CoreIPC::Connection::sendOutgoingMessages):
(CoreIPC::Connection::dispatchSyncMessage):

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::handleMessageDelayed):

  • Platform/CoreIPC/MessageReceiver.h:

(CoreIPC::MessageReceiver::didReceiveSyncMessage):

  • Platform/CoreIPC/MessageReceiverMap.cpp:

(CoreIPC::MessageReceiverMap::dispatchSyncMessage):

  • Platform/CoreIPC/MessageReceiverMap.h:
  • Platform/CoreIPC/MessageSender.cpp:

(CoreIPC::MessageSender::sendMessage):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::open):
(CoreIPC::Connection::sendOutgoingMessage):

  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveSyncMessage):

  • PluginProcess/WebProcessConnection.h:
  • Scripts/webkit2/messages.py:

(message_to_struct_declaration):
(generate_message_handler):

  • Scripts/webkit2/messages_unittest.py:
  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::dispatchSyncMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):

  • Shared/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::send):

  • Shared/Plugins/NPObjectMessageReceiver.h:
  • Shared/Plugins/NPRemoteObjectMap.cpp:

(WebKit::NPRemoteObjectMap::didReceiveSyncMessage):

  • Shared/Plugins/NPRemoteObjectMap.h:
  • Shared/WebConnection.cpp:

(WebKit::WebConnection::postMessage):

  • UIProcess/Downloads/DownloadProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveSyncMessage):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/Storage/StorageManager.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::dispatchSyncMessage):
(WebKit::WebContext::didReceiveSyncMessage):

  • UIProcess/WebContext.h:
  • UIProcess/WebFullScreenManagerProxy.h:
  • UIProcess/WebIconDatabase.h:
  • UIProcess/WebInspectorProxy.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage):

  • UIProcess/WebProcessProxy.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postMessage):
(WebKit::InjectedBundle::postSynchronousMessage):

  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveSyncMessage):

  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didReceiveSyncMessage):

  • WebProcess/Plugins/PluginProcessConnection.h:
  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveSyncMessage):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveSyncMessage):

  • WebProcess/WebProcess.h:
12:59 PM Changeset in webkit [156353] by andersca@apple.com
  • 17 edits in trunk/Source

Remove encoder create functions
https://bugs.webkit.org/show_bug.cgi?id=121853

Reviewed by Sam Weinig.

Source/WebKit2:

  • Platform/CoreIPC/ArgumentEncoder.cpp:
  • Platform/CoreIPC/ArgumentEncoder.h:
  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::dispatchWorkQueueMessageReceiverMessage):
(CoreIPC::Connection::createSyncMessageEncoder):
(CoreIPC::Connection::dispatchSyncMessage):

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::send):

  • Platform/CoreIPC/MessageEncoder.cpp:

(CoreIPC::MessageEncoder::setIsSyncMessage):

  • Platform/CoreIPC/MessageEncoder.h:
  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::open):

  • Shared/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::send):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::postMessage):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::postMessageToInjectedBundle):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postMessage):

  • WebProcess/WebPage/EncoderAdapter.cpp:

(WebKit::EncoderAdapter::EncoderAdapter):
(WebKit::EncoderAdapter::dataReference):
(WebKit::EncoderAdapter::encodeBytes):
(WebKit::EncoderAdapter::encodeBool):
(WebKit::EncoderAdapter::encodeUInt16):
(WebKit::EncoderAdapter::encodeUInt32):
(WebKit::EncoderAdapter::encodeUInt64):
(WebKit::EncoderAdapter::encodeInt32):
(WebKit::EncoderAdapter::encodeInt64):
(WebKit::EncoderAdapter::encodeFloat):
(WebKit::EncoderAdapter::encodeDouble):
(WebKit::EncoderAdapter::encodeString):

  • WebProcess/WebPage/EncoderAdapter.h:

Source/WTF:

Add a variadic version of createOwned.

  • wtf/OwnPtr.h:

(WTF::createOwned):

12:43 PM Changeset in webkit [156352] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Implement symbol name hashing for WebGL shaders
https://bugs.webkit.org/show_bug.cgi?id=121849

Reviewed by Anders Carlsson.

Turn on ANGLE's symbol name mapping for shader programs.
This avoids compilation failures (or worse, crashers)
on some hardware that doesn't like it when shaders redefine
symbols like "sin", even though that is valid.

The way ANGLE exposes this is via setting a pointer
to a char* -> uint64_t hash function. Since we only have
a 32-bit hash in WebKit, I combine the 32-bit value with
a counter value that exists over the lifetime of a GC3D context.
Before calling ANGLE, I point the global hash map to the local
hash map, and then clean up after we're done. This introduces
a memory hit, in that the symbol table will build up until
the context is released.

Covered by Khronos WebGL tests, including
conformance/glsl/misc/shader-with-non-reserved-words.html

  • platform/graphics/GraphicsContext3D.h: Define a ShaderNameHash type,

and add an OwnPtr to one as a member variable.

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::nameHashForShader): Global function used for ANGLE hashing.
(WebCore::GraphicsContext3D::compileShader): Set up the ANGLE properties,
point to the local hash map, and call compile/translate.

12:43 PM Changeset in webkit [156351] by dino@apple.com
  • 4 edits
    2 adds in trunk

Use mapped name in attribute location binding
https://bugs.webkit.org/show_bug.cgi?id=121847
<rdar://problem/15067526>

Reviewed by Eric Carlson.

Source/WebCore:

The shader that we send down to OpenGL to compile
may have been translated by ANGLE, so we keep a
table around that maps input symbols to output symbols.
We used the table when binding to and looking up
uniforms, and when looking up attributes, but not
when actually binding to attribute locations.

Test: fast/canvas/webgl/gl-bind-attrib-mapped-names.html

  • platform/graphics/ANGLEWebKitBridge.cpp:

(WebCore::getSymbolInfo): Add logging of symbol mapping.

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::bindAttribLocation): Used the mapped name.
(WebCore::GraphicsContext3D::getAttribLocation): Remove comment since
we do the lookup everywhere.
(WebCore::GraphicsContext3D::getUniformLocation): Ditto.

LayoutTests:

New test that has an attribute name long enough
to trigger symbol mapping in all cases.

  • fast/canvas/webgl/gl-bind-attrib-mapped-names-expected.txt: Added.
  • fast/canvas/webgl/gl-bind-attrib-mapped-names.html: Added.
12:35 PM Changeset in webkit [156350] by enrica@apple.com
  • 20 edits
    1 add in trunk/Source

Upstream changes to Pasteboard implementation for iOS.
https://bugs.webkit.org/show_bug.cgi?id=121818

Reviewed by Darin Adler.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • editing/Editor.cpp:

(WebCore::Editor::cut):
(WebCore::Editor::copyImage):

  • editing/ios/EditorIOS.mm:

(WebCore::attributedStringForRange):
(WebCore::dataInRTFDFormat):
(WebCore::dataInRTFFormat):
(WebCore::Editor::stringSelectionForPasteboardWithImageAltText):
(WebCore::Editor::selectionInWebArchiveFormat):
(WebCore::Editor::writeSelectionToPasteboard):
(WebCore::getImage):
(WebCore::Editor::writeImageToPasteboard):

  • platform/Pasteboard.h:
  • platform/PasteboardStrategy.h:
  • platform/PlatformPasteboard.h:
  • platform/ios/PasteboardIOS.mm:
  • platform/ios/PlatformPasteboardIOS.mm: Added.

(WebCore::PlatformPasteboard::PlatformPasteboard):
(WebCore::PlatformPasteboard::getTypes):
(WebCore::PlatformPasteboard::bufferForType):
(WebCore::PlatformPasteboard::getPathnamesForType):
(WebCore::PlatformPasteboard::stringForType):
(WebCore::PlatformPasteboard::color):
(WebCore::PlatformPasteboard::url):
(WebCore::PlatformPasteboard::copy):
(WebCore::PlatformPasteboard::addTypes):
(WebCore::PlatformPasteboard::setTypes):
(WebCore::PlatformPasteboard::setBufferForType):
(WebCore::PlatformPasteboard::setPathnamesForType):
(WebCore::PlatformPasteboard::setStringForType):
(WebCore::PlatformPasteboard::changeCount):
(WebCore::PlatformPasteboard::uniqueName):
(WebCore::PlatformPasteboard::write):

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::writeToPasteboard):

Source/WebKit2:

  • Scripts/webkit2/messages.py:

(struct_or_class):
(headers_for_type):

  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC::encodeSharedBuffer):
(CoreIPC::decodeSharedBuffer):
(CoreIPC::::encode):
(CoreIPC::::decode):

  • Shared/WebCoreArgumentCoders.h:
  • UIProcess/WebContext.h:
  • UIProcess/WebContext.messages.in:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::writeWebContentToPasteboard):
(WebKit::WebContext::writeImageToPasteboard):
(WebKit::WebContext::writeStringToPasteboard):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::writeToPasteboard):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
12:23 PM Changeset in webkit [156349] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Remove create functions from MessageDecoder and ArgumentDecoder
https://bugs.webkit.org/show_bug.cgi?id=121850

Reviewed by Antti Koivisto.

  • Platform/CoreIPC/ArgumentDecoder.cpp:

(CoreIPC::ArgumentDecoder::ArgumentDecoder):

  • Platform/CoreIPC/ArgumentDecoder.h:
  • Platform/CoreIPC/MessageDecoder.cpp:

(CoreIPC::MessageDecoder::MessageDecoder):

  • Platform/CoreIPC/MessageDecoder.h:
  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::createMessageDecoder):

  • WebProcess/WebPage/DecoderAdapter.cpp:

(WebKit::DecoderAdapter::DecoderAdapter):
(WebKit::DecoderAdapter::decodeBytes):
(WebKit::DecoderAdapter::decodeBool):
(WebKit::DecoderAdapter::decodeUInt16):
(WebKit::DecoderAdapter::decodeUInt32):
(WebKit::DecoderAdapter::decodeUInt64):
(WebKit::DecoderAdapter::decodeInt32):
(WebKit::DecoderAdapter::decodeInt64):
(WebKit::DecoderAdapter::decodeFloat):
(WebKit::DecoderAdapter::decodeDouble):
(WebKit::DecoderAdapter::decodeString):

  • WebProcess/WebPage/DecoderAdapter.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::postInjectedBundleMessage):

12:18 PM Changeset in webkit [156348] by mrowe@apple.com
  • 20 edits in trunk

<rdar://problem/14971518> WebKit should build against the Xcode default toolchain when targeting OS X 10.8

Reviewed by Dan Bernstein.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:

Source/ThirdParty/ANGLE:

  • Configurations/Base.xcconfig:

Source/WebCore:

  • Configurations/Base.xcconfig:

Source/WebInspectorUI:

  • Configurations/Base.xcconfig:

Source/WebKit/mac:

  • Configurations/Base.xcconfig:

Source/WebKit2:

  • Configurations/Base.xcconfig:

Source/WTF:

  • Configurations/Base.xcconfig:

Tools:

  • DumpRenderTree/mac/Configurations/Base.xcconfig:
  • MiniBrowser/Configurations/Base.xcconfig:
  • TestWebKitAPI/Configurations/Base.xcconfig:
  • WebKitLauncher/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/Base.xcconfig:
12:14 PM Changeset in webkit [156347] by dbates@webkit.org
  • 10 edits in trunk/Source/WebCore

[iOS] Upstream -webkit-touch-callout
https://bugs.webkit.org/show_bug.cgi?id=121507

Reviewed by Antti Koivisto.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPropertyNames.in: Added -webkit-touch-callout.
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::willRespondToMouseClickEvents): Added.

  • html/HTMLImageElement.h:
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

  • rendering/style/StyleRareInheritedData.h:
12:02 PM Changeset in webkit [156346] by Bem Jones-Bey
  • 8 edits
    5 adds in trunk

Properly handle bottom margin on float with shape-outside
https://bugs.webkit.org/show_bug.cgi?id=121808

Reviewed by David Hyatt.

Source/WebCore:

When a float has a shape-outside, inline content must conform to the
shape, not to the margin box. Thus, if a float with shape-outside has
a bottom margin and the shape does not intrude into that margin, then
the inline content should ignore the margin. Before this patch, inline
content would drop below the margin box instead of obeying the shape.

Note that content that should clear the float still clears the margin
box, not the shape's contour.

Tests: csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-002.html

csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-003.html
csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-004.html

  • rendering/LineWidth.cpp:

(WebCore::LineWidth::fitBelowFloats): Compute the logical bottom based
on the shape.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nextFloatLogicalBottomBelow): Add option to
compute the logical bottom based on the shape instead of on the margin
box.

  • rendering/RenderBlock.h:

LayoutTests:

Import new tests for floats wish shape-outside and bottom margins.

  • csswg/contributors/adobe/submitted/shapes/shape-outside/resources/w3c-import.log:
  • csswg/contributors/adobe/submitted/shapes/shape-outside/resources/rounded-rectangle.js: Remove whitespace at ends of lines.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-002.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-003-expected.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-003.html: Added.
  • csswg/contributors/adobe/submitted/shapes/shape-outside/w3c-import.log:
11:58 AM Changeset in webkit [156345] by commit-queue@webkit.org
  • 9 edits in trunk/Source

[GTK] Fix compilation problems when setting ENABLE_DRAG_SUPPORT = FALSE
https://bugs.webkit.org/show_bug.cgi?id=121782

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2013-09-24
Reviewed by Martin Robinson.

Disabled drag functions.

Source/WebCore:

  • page/gtk/EventHandlerGtk.cpp:
  • platform/gtk/PasteboardGtk.cpp:

Source/WebKit/gtk:

  • WebCoreSupport/DragClientGtk.cpp:
  • WebCoreSupport/DragClientGtk.h:

Source/WebKit2:

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkit_web_view_base_class_init):

  • WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
11:42 AM Changeset in webkit [156344] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit/win

[Windows] Unreviewed crash fix after r156321.

Fix a few mistakes in the use of Vectors and counting that introduced test crashes.

  • WebHistory.cpp:

(WebHistory::removeAllItems): Loop termination tried to test an unsigned for negative size.
(WebHistory::removeItemFromDateCaches): Vector was being created with empty entries.
(WebHistory::addItemToDateCaches): Ditto.

11:38 AM Changeset in webkit [156343] by Lucas Forschler
  • 2 edits in branches/safari-537.60-branch/Source/WebCore

Merged r156315. <rdar://problem/15063134>

11:20 AM Changeset in webkit [156342] by Lucas Forschler
  • 1 edit in branches/safari-537.60-branch/Source/WebCore/rendering/RenderLayer.cpp

build fix.

11:16 AM Changeset in webkit [156341] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Begin adopting std::tuple for IPC decoding
https://bugs.webkit.org/show_bug.cgi?id=121848

Reviewed by Sam Weinig.

This is the first step towards getting rid of the horrible Arguments class hierarchy.

  • Platform/CoreIPC/Arguments.h:

(CoreIPC::TupleCoder::encode):
(CoreIPC::TupleCoder::decode):

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction):
(CoreIPC::handleMessage):
(CoreIPC::handleMessageVariadic):
(CoreIPC::handleMessageDelayed):

11:11 AM Changeset in webkit [156340] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Breakpoint Actions input should disable spellchecking
https://bugs.webkit.org/show_bug.cgi?id=121846

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-09-24
Reviewed by Timothy Hatcher.

  • UserInterface/BreakpointActionView.js:
10:57 AM Changeset in webkit [156339] by commit-queue@webkit.org
  • 15 edits in trunk/Source/WebCore

AX: Replace AXObjectCache postNotification method boolean arguments with enum values.
https://bugs.webkit.org/show_bug.cgi?id=121504

Patch by Samuel White <Samuel White> on 2013-09-24
Reviewed by Chris Fleizach.

No new tests, no functional changes. Changed argument type from bool
to enum per "Names" rule #10 in the WebKit coding style guidelines.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::textChanged):
(WebCore::AXObjectCache::postNotification):
(WebCore::AXObjectCache::checkedStateChanged):
(WebCore::AXObjectCache::selectedChildrenChanged):
(WebCore::AXObjectCache::handleAttributeChanged):

  • accessibility/AXObjectCache.h:

(WebCore::AXObjectCache::postNotification):

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::didUpdateActiveOption):

  • accessibility/AccessibilityMenuListPopup.cpp:

(WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::childrenChanged):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::handleAriaExpandedChanged):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::AccessibilityRenderObject::textChanged):

  • dom/Document.cpp:

(WebCore::Document::implicitClose):

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedContents):
(WebCore::Editor::markAndReplaceFor):

  • editing/mac/FrameSelectionMac.mm:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::setInnerTextValue):

  • html/InputType.cpp:

(WebCore::InputType::applyStep):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::handleKeydownEvent):

  • page/FocusController.cpp:

(WebCore::FocusController::setInitialFocus):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

10:51 AM Changeset in webkit [156338] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

Make hoverAncestor() a RenderElement concept.
<https://webkit.org/b/121845>

Reviewed by Antti Koivisto.

The hover ancestor renderer is always a RenderElement, we only ever
ask RenderElements for their hover ancestors.

Updated Document::updateHoverActiveState() to take advantage of the
tighter typing, removing a few isElementNode() checks.

10:12 AM Changeset in webkit [156337] by dbates@webkit.org
  • 3 edits in trunk/Source/WebCore

[iOS] Initialize settings mediaPlayback{AllowsInline, RequiresUserGesture} and
shouldRespectImageOrientation as appropriate
https://bugs.webkit.org/show_bug.cgi?id=121792

Reviewed by Darin Adler.

On iOS we explicitly want to disable mediaPlaybackAllowsInline, and enable
mediaPlaybackRequiresUserGesture and shouldRespectImageOrientation by default.
This differs from other platforms. We need to extract the initialization logic
for these settings into constants whose definition is conditioned on the platform.

  • page/Settings.cpp:
  • page/Settings.in:
9:45 AM Changeset in webkit [156336] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=121839

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-09-24
Reviewed by Brent Fulgham.

  • platform/graphics/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate): Added missing guard.

9:22 AM Changeset in webkit [156335] by Lucas Forschler
  • 2 edits in branches/safari-537.60-branch/Source/WebCore

Merge patch for <rdar://problem/15056974>. Build fix after r156221.

9:20 AM Changeset in webkit [156334] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Cache continuation() in a local to avoid repeat hash lookups.
<https://webkit.org/b/121840>

Reviewed by Geoffrey Garen.

RenderBoxModelObject::continuation() does a hash lookup every time.
Cache the result in a local instead of calling it repeatedly.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::isAnonymousBlockContinuation):

Reorder to check bitfield before hash map.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateDragState):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::absoluteRects):
(WebCore::RenderInline::absoluteQuads):
(WebCore::RenderInline::clippedOverflowRectForRepaint):
(WebCore::RenderInline::updateDragState):
(WebCore::RenderInline::addFocusRingRects):

Cache continuation() in locals where it's used more than once.

7:25 AM Changeset in webkit [156333] by ChangSeok Oh
  • 2 edits in trunk/Source/WebKit2

[EFL] Build failed at ProcessLauncherEfl.cpp
https://bugs.webkit.org/show_bug.cgi?id=121826

Reviewed by Gyuyoung Kim.

Fixed a build failure with adding socket.h.

  • UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
7:24 AM Changeset in webkit [156332] by commit-queue@webkit.org
  • 5 edits in trunk

[ATK] Missing WTR AccessibilityController::addNotificationListener implementation
https://bugs.webkit.org/show_bug.cgi?id=121674

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

Tools:

Implemented the global notification listener for
AccessibilityController. The signal is generated by
AXObjectCache::postPlatformNotification() and received by
axObjectEventListener(). axObjectEventListener will then invoke
JSObjectCallAsFunction() with the respective callback function.

There is no additional test for this patch since its implementation will
be tested by an accessibility layout test that is currently failing
(accessibility/loading-iframe-sends-notification.html).

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp: Removed

stub implementations of addNotificationListener and
removeNotificationListener for the GTK port.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:

(WTR::AccessibilityController::addNotificationListener): Creates the
notification handler and sets the notification function callback.
(WTR::AccessibilityController::removeNotificationListener): Removes the
global handler.

LayoutTests:

Updated the expectation of loading-iframe-sends-notification.html test,
which was failing before this fix.

  • platform/gtk-wk2/TestExpectations: Removed

loading-iframe-sends-notification.html because it now passes with this
fix.

7:18 AM Changeset in webkit [156331] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] fast/images/exif-orientation-composited.html is failing
https://bugs.webkit.org/show_bug.cgi?id=119731

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-09-24
Reviewed by Carlos Garcia Campos.

Tools:

Add handling respect image orientation property in DRT.

  • DumpRenderTree/gtk/TestRunnerGtk.cpp:

(TestRunner::overridePreference):

LayoutTests:

Unskip fast/images/exif-orientation-composited.html for GTK WK1 and WK2.

  • platform/gtk/TestExpectations:
7:16 AM Changeset in webkit [156330] by allan.jensen@digia.com
  • 6 edits in trunk

[Qt] Crash when trying to download blob url
https://bugs.webkit.org/show_bug.cgi?id=121681

Reviewed by Simon Hausmann.

Source/WebCore:

Resolve any blob URLs before creating a QUrl.

  • platform/network/qt/ResourceRequestQt.cpp:

(WebCore::appendBlobResolved):
(WebCore::resolveBlobUrl):
(WebCore::ResourceRequest::toNetworkRequest):

Source/WebKit/qt:

Do not crash if a download was triggered on a resource WebCore handles internally.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::convertMainResourceLoadToDownload):

LayoutTests:

Unskip two tests that downloads blob URLs. Note the two tests do not use the download attribute feature.

  • platform/qt/TestExpectations:
7:10 AM Changeset in webkit [156329] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] RepaintRequested signal sometimes not emitted
https://bugs.webkit.org/show_bug.cgi?id=121790

Reviewed by Simon Hausmann.

We should also emit repaintRequested after calling PageClient::update().

  • WidgetSupport/PageClientQt.cpp:

(WebCore::PageClientQWidget::repaintViewport):
(WebCore::PageClientQGraphicsWidget::repaintViewport):

6:14 AM Changeset in webkit [156328] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] Enable the Wayland target if GTK+ dependency is found
https://bugs.webkit.org/show_bug.cgi?id=121704

Reviewed by Gustavo Noronha Silva.

The Wayland target should be enabled by default if the GTK+ dependency is of version 3.9.14 or later.

  • Source/autotools/FindDependencies.m4: If the Wayland target was not strictly disabled, the GTK+ dependency

is tested if it can provide the Wayland GDK backend, and that the version of that backend matches the version
of the master GTK+ dependency for which we already tested. If found, the target is enabled, otherwise we either
warn or error out, depending on whether the build target was set to auto or completely disabled through configuration.

  • Source/autotools/ReadCommandLineArguments.m4: Switch the default Wayland target status to 'auto', meaning

it will be disabled if the GTK+ dependency is not found.

  • Source/autotools/Versions.m4: Require GTK+ 3.9.14 for the Wayland target only.
6:09 AM Changeset in webkit [156327] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] Fix accelerated compositing disabling under Wayland displays
https://bugs.webkit.org/show_bug.cgi?id=121788

Reviewed by Gustavo Noronha Silva.

  • webkit/webkitwebview.cpp:

(updateAcceleratedCompositingSetting): Fix a ridiculous early return in the case of disabling the accelerated
compositing setting. There's no need to re-disable the setting if it was already disabled, but it should
definitely be disabled if the setting was previously enabled.

6:08 AM Changeset in webkit [156326] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[GTK] Bump the GTK+ dependency in the Wayland-specific Jhbuild moduleset
https://bugs.webkit.org/show_bug.cgi?id=121787

Reviewed by Gustavo Noronha Silva.

  • gtk/jhbuild-wayland.modules: Bump the GTK+ dependency that's intended for use when building

with the Wayland target enabled to version 3.10.0.

5:22 AM Changeset in webkit [156325] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Move more style change code from RenderObject to RenderElement
https://bugs.webkit.org/show_bug.cgi?id=121822

Reviewed by Darin Adler.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::~RenderElement):

RenderTexts are no longer registered as image clients. They don't need be unregistered either.

(WebCore::RenderElement::adjustStyleDifference):
(WebCore::RenderElement::hasImmediateNonWhitespaceTextChild):
(WebCore::RenderElement::shouldRepaintForStyleDifference):
(WebCore::RenderElement::updateFillImages):
(WebCore::RenderElement::updateImage):
(WebCore::RenderElement::updateShapeImage):
(WebCore::RenderElement::setStyle):

Move from RenderObject and remove the text specific bits.

  • rendering/RenderElement.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setStyle):
(WebCore::RenderObject::arenaDelete):

  • rendering/RenderObject.h:


Remove styleWill/DidChange which move to subclasses.

  • rendering/RenderText.cpp:

(WebCore::RenderText::setStyle):

Add simple text specific setStyle.

  • rendering/RenderText.h:
3:41 AM WebKitGTK/2.2.x edited by zandobersek@gmail.com
Strike out a merged proposal. (diff)
3:36 AM Changeset in webkit [156324] by zandobersek@gmail.com
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit/gtk

Merge r156261 - Unreviewed, GTK build fix when building with GTK+ 2.0.
Patch provided by Dominique Leuenberger <dimstar@opensuse.org>.

  • WebCoreSupport/AcceleratedCompositingContextGL.cpp: Include GtkVersioning.h to set up

the mock GDK_IS_X11_DISPLAY macro if it's not provided by the GTK+ headers.

3:25 AM Changeset in webkit [156323] by zandobersek@gmail.com
  • 1 edit in releases/WebKitGTK/webkit-2.2/Source/autotools/Versions.m4

Bump the GTK+ Wayland dependency to 3.10.0 for the forthcoming 2.2 release.

12:47 AM Changeset in webkit [156322] by commit-queue@webkit.org
  • 15 edits in trunk

[CSS Background] repeat: round should round the number of tiles to the nearest natural number
https://bugs.webkit.org/show_bug.cgi?id=120668

Source/WebCore:

Patch by Andrei Parvu <parvu@adobe.com> on 2013-09-24
Reviewed by Darin Adler.

Tests already available in css3/masking and css3/background

  • rendering/RenderBoxModelObject.cpp: Rounded the number of tiles to the nearest natural number.

(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):

LayoutTests:

Changed the sizes of the images/masks in the tests to be compliant with the new behaviour.

Patch by Andrei Parvu <parvu@adobe.com> on 2013-09-24
Reviewed by Darin Adler.

  • css3/background/background-repeat-round-auto1-expected.html:
  • css3/background/background-repeat-round-auto2-expected.html:
  • css3/background/background-repeat-round-border-expected.html:
  • css3/background/background-repeat-round-content-expected.html:
  • css3/background/background-repeat-round-padding-expected.html:
  • css3/background/background-repeat-round-padding.html:
  • css3/masking/mask-repeat-round-auto1-expected.html:
  • css3/masking/mask-repeat-round-auto2-expected.html:
  • css3/masking/mask-repeat-round-border-expected.html:
  • css3/masking/mask-repeat-round-content-expected.html:
  • css3/masking/mask-repeat-round-padding-expected.html:
  • css3/masking/mask-repeat-round-padding.html:
12:33 AM Changeset in webkit [156321] by Patrick Gansterer
  • 3 edits in trunk/Source/WebKit/win

Make WebHistory more type safe
https://bugs.webkit.org/show_bug.cgi?id=121801

Reviewed by Brent Fulgham.

Use a WTF::Vector instead of a CFMutableArray to avoid
casting from void* all the time when accessing the entries.
This reduces the dependencies on CoreFoundation too.

  • WebHistory.cpp:

(getDayBoundaries):
(beginningOfDay):
(dateKey):
(WebHistory::orderedItemsLastVisitedOnDay):
(WebHistory::removeItemFromDateCaches):
(WebHistory::addItemToDateCaches):

  • WebHistory.h:
12:30 AM Changeset in webkit [156320] by ryuan.choi@samsung.com
  • 4 edits
    1 delete in trunk/Source/WebCore

Remove ScrollView::platformInit() and ScrollView::platformDestroy()
https://bugs.webkit.org/show_bug.cgi?id=121824

Reviewed by Darin Adler.

ScrollView::platformInit() and ScrollView::platformDestroy() are just
empty functions for all ports after removed WX port at r149186.

  • PlatformEfl.cmake: Removed ScrollViewEfl.cpp from source list.
  • platform/ScrollView.cpp: Removed platformInit and PlatformDestroy.

(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::~ScrollView):

  • platform/ScrollView.h: Ditto.
  • platform/efl/ScrollViewEfl.cpp: Removed.

Sep 23, 2013:

10:53 PM Changeset in webkit [156319] by Darin Adler
  • 8 edits in trunk/Source/WebCore

Use unique_ptr instead of deleteAllValues in FloatingObject code
https://bugs.webkit.org/show_bug.cgi?id=121823

Reviewed by Sam Weinig.

  • rendering/FloatingObjects.cpp:

(WebCore::FloatingObject::create): Return a unique_ptr instead of PassOwnPtr.
Use auto and a word for the local variable instead of an abbreviation. Also
changed to take a reference instead of a pointer.
(WebCore::FloatingObject::copyToNewContainer): Ditto.
(WebCore::FloatingObject::unsafeClone): Ditto.
(WebCore::FloatingObjects::~FloatingObjects): Removed call to deleteAllValues.
(WebCore::FloatingObjects::clearLineBoxTreePointers): Use auto to make this
read clearly.
(WebCore::FloatingObjects::clear): Removed call to deleteAllValues.
(WebCore::FloatingObjects::moveAllToFloatInfoMap): Use std::move to move values
out of the set, into the map. Removed code to clear the set, since it was a
trick to prevent the values from being deleted when they were not moved.
(WebCore::FloatingObjects::add): Changed to take a unique_ptr and to move the
pointer into the set instead of using leakPtr.
(WebCore::FloatingObjects::remove): Rearranged code so that the remove is at
the end of the function rather than the beginning. Also had to use a hash
translator and a find/remove combo since we don't have hash translator version
of the remove function.
(WebCore::FloatingObjects::computePlacedFloatsTree): Updated for changes to
the types.
(WebCore::FloatingObjects::placedFloatsTree): Moved this function here instead
of having it in the header, since it's only used within the file.

  • rendering/FloatingObjects.h: Changed functions to take references instead

of pointers and return unique_ptr instead of PassOwnPtr. Also made
constructors public so we can use them with make_unique. Changed types to
use unique_ptr instead of raw pointers, and made the FloatingObjectHashTranslator
work for both RenderBox& and FloatingObject&.

  • rendering/LineWidth.cpp:

(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
Updated for changes to types.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::moveAllChildrenIncludingFloatsTo):
(WebCore::RenderBlock::addOverflowFromFloats):
(WebCore::RenderBlock::repaintOverhangingFloats):
(WebCore::RenderBlock::paintFloats):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::removeFloatingObject):
(WebCore::RenderBlock::removeFloatingObjectsBelow):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::nextFloatLogicalBottomBelow):
(WebCore::RenderBlock::lowestFloatLogicalBottom):
(WebCore::RenderBlock::addOverhangingFloats):
(WebCore::RenderBlock::hasOverhangingFloat):
(WebCore::RenderBlock::addIntrudingFloats):
(WebCore::RenderBlock::containsFloat):
(WebCore::RenderBlock::markSiblingsWithFloatsForLayout):
(WebCore::RenderBlock::updateLocalFloatingObjectsForPaintingContainer):
(WebCore::RenderBlock::hitTestFloats):
(WebCore::RenderBlock::adjustForBorderFit):
Updated for changes to types.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::clearFloats): Updated to use take instead of
a combination of remove and delete.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloats):
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
(WebCore::RenderBlock::positionNewFloatOnLine):
Updated for changes to types.

9:00 PM Changeset in webkit [156318] by commit-queue@webkit.org
  • 7 edits
    10 adds in trunk

CSS Unit vh, vw, vmin and vmax in box-shadow are not applied.
https://bugs.webkit.org/show_bug.cgi?id=121422

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-23
Reviewed by Darin Adler.

Source/WebCore:

Box-shadow properties were not applied incase its values
were given in vh, vw, vmax, vmin unit.

Tests: fast/css/box-shadow-negative-viewportlength.html

fast/css/box-shadow-viewport-height.html
fast/css/box-shadow-viewport-vmax.html
fast/css/box-shadow-viewport-vmin.html
fast/css/box-shadow-viewport-width.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseShadow):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::MatchedProperties::~MatchedProperties):
(WebCore::StyleResolver::viewportPercentageHeight):
(WebCore::StyleResolver::viewportPercentageWidth):
(WebCore::StyleResolver::viewportPercentageMax):
(WebCore::StyleResolver::viewportPercentageMin):

  • css/StyleResolver.h:

Parsing and calculating the shadow values which has been specified
in viewport units.The vh/vw units are calcultated as percent of
viewport height and viewport width respectively. 1vmax: 1vw or 1vh,
whatever is largest.1vmin: 1vw or 1vh, whatever is smallest.

LayoutTests:

  • fast/css/box-shadow-negative-viewportlength-expected-mismatch.html: Added.
  • fast/css/box-shadow-negative-viewportlength.html: Added.
  • fast/css/box-shadow-viewport-height-expected-mismatch.html: Added.
  • fast/css/box-shadow-viewport-height.html: Added.
  • fast/css/box-shadow-viewport-vmax-expected-mismatch.html: Added.
  • fast/css/box-shadow-viewport-vmax.html: Added.
  • fast/css/box-shadow-viewport-vmin-expected-mismatch.html: Added.
  • fast/css/box-shadow-viewport-vmin.html: Added.
  • fast/css/box-shadow-viewport-width-expected-mismatch.html: Added.
  • fast/css/box-shadow-viewport-width.html: Added.

Added new tests for verifying that box-shadow properties are
applied when its values are viewport units.

  • fast/css/shadow-viewport-units-expected.txt:
  • fast/css/shadow-viewport-units.html:

Rebaselining existing tests as per the new behavior. Support for shadow
properties with viewport units is added so modified the test case.

7:48 PM Changeset in webkit [156317] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for CMake ports with INDEXED_DATABASE after r156296

  • CMakeLists.txt: Removed IDBBackingStore.cpp from source list.
7:09 PM Changeset in webkit [156316] by andersca@apple.com
  • 7 edits in trunk/Source

Remove WTF_USE_SCROLLBAR_PAINTER #define
https://bugs.webkit.org/show_bug.cgi?id=121819

Reviewed by Sam Weinig.

Source/WebCore:

Remove unnecessary if checks and dead code.

  • platform/mac/NSScrollerImpDetails.h:
  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
(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::finishCurrentScrollAnimations):
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::shouldScrollbarParticipateInHitTesting):
(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
(WebCore::ScrollAnimatorMac::cancelAnimations):
(WebCore::ScrollAnimatorMac::setIsActive):
(WebCore::ScrollAnimatorMac::updateScrollerStyle):
(WebCore::ScrollAnimatorMac::initialScrollbarPaintTimerFired):

  • platform/mac/ScrollViewMac.mm:

(WebCore::toNSScrollerKnobStyle):
(WebCore::ScrollView::platformSetScrollbarOverlayStyle):

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::updateArrowPlacement):
(WebCore::ScrollbarThemeMac::registerScrollbar):
(WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
(WebCore::ScrollbarThemeMac::scrollbarThickness):
(WebCore::ScrollbarThemeMac::usesOverlayScrollbarsChanged):
(WebCore::ScrollbarThemeMac::hasThumb):
(WebCore::ScrollbarThemeMac::minimumThumbLength):
(WebCore::ScrollbarThemeMac::updateEnabledState):
(WebCore::ScrollbarThemeMac::paint):

Source/WTF:

All our supported systems use the scrollbar painter now, so get rid of the #ifdef.

  • wtf/Platform.h:
6:56 PM Changeset in webkit [156315] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Windows] Moving back in history from a page with <video>, then moving forward causes crash.
https://bugs.webkit.org/show_bug.cgi?id=120475

Reviewed by Anders Carlsson.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::AVFWrapper): Add assertion that creation is on main thread.
(WebCore::AVFWrapper::~AVFWrapper): Add assertion that destruction is on main thread.
(WebCore::destroyAVFWrapper): Helper function to dispatch on main queue.
(WebCore::AVFWrapper::disconnectAndDeleteAVFWrapper): Spawn AVFoundationCF destruction to
main queue.

6:44 PM Changeset in webkit [156314] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

RenderTextControlSingleLine::updateFromElement() override not needed.
<https://webkit.org/b/121815>

Reviewed by Anders Carlsson.

  • rendering/RenderTextControlSingleLine.cpp:
  • rendering/RenderTextControlSingleLine.h:
5:57 PM Changeset in webkit [156313] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source/WebCore

Introduce CSS_VALUE_TYPE_CASTS macro in order to cast CSSValue type
https://bugs.webkit.org/show_bug.cgi?id=121462

Reviewed by Darin Adler.

As r155429 introduced ELEMENT_TYPE_CASTS, CSS_VALUE_TYPE_CASTS can be used
by css value type casting as well. This type cast macros will help to detect
bad-cast bugs as well as improve a code readibility.

This patch adds the following methods,

  • CSSFooValue* toCSSFooValue(CSSValue*)
  • const CSSFooValue* toCSSFooValue(const CSSValue*)

This patch support CSSImageSetValue and CSSReflectValue first. Other CSS*Values
will use this macro step by step.

Besides this patch will remove unnecessary local variables.

No new tests, no behavior change.

  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::cachedImage):
(WebCore::CSSCursorImageValue::cachedOrPendingImage):

  • css/CSSImageSetValue.h:
  • css/CSSReflectValue.h:
  • css/CSSValue.cpp:

(WebCore::CSSValue::destroy):

  • css/CSSValue.h:
  • css/StyleResolver.cpp:

(WebCore::hasVariableReference):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::styleImage):

  • rendering/style/StylePendingImage.h:

(WebCore::StylePendingImage::cssImageSetValue):

5:55 PM Changeset in webkit [156312] by Antti Koivisto
  • 10 edits in trunk/Source/WebCore

Move style change analysis code to RenderElement
https://bugs.webkit.org/show_bug.cgi?id=121812

Reviewed by Andreas Kling.

Text renderers don't need this. There is no text renderer specific invalidation and text
style never changes independent from the containing RenderElement.

5:51 PM Changeset in webkit [156311] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r156307.
http://trac.webkit.org/changeset/156307
https://bugs.webkit.org/show_bug.cgi?id=121817

Broke the build, and crashes the compiler (Requested by ap on
#webkit).

Source/WebCore:

  • css/MediaQuery.cpp:

(WebCore::expressionCompare):
(WebCore::MediaQuery::MediaQuery):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::ObserverLessThan::operator()):
(WebCore::MutationObserver::deliverAllMutations):

  • page/CaptionUserPreferences.cpp:

(WebCore::textTrackCompare):
(WebCore::CaptionUserPreferences::sortedTrackListForMenu):

Source/WTF:

  • wtf/ListDump.h:

(WTF::lessThan):
(WTF::sortedListDump):

5:34 PM Changeset in webkit [156310] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

Move rendererForRootBackground() to RenderElement.
<http://webkit.org/b/121813>

Reviewed by Antti Koivisto.

Move this to RenderElement (and make it return one, too) since the
document element renderer will always be a RenderElement.

5:14 PM Changeset in webkit [156309] by beidson@apple.com
  • 7 edits
    1 add in trunk/Source/WebCore

Make the Mac build work with IndexedDB enabled.
https://bugs.webkit.org/show_bug.cgi?id=121814

Reviewed by Alexey Proskuryakov.

This patch makes the Mac build work if one were to enable the IndexedDB feature flag.
This patch does not actually enable the flag for everyone.

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IDBBackingStore.cpp: Added.

(WebCore::IDBBackingStore::open):
(WebCore::IDBBackingStore::openInMemory):
(WebCore::IDBBackingStore::getObjectStores):
(WebCore::IDBBackingStore::Cursor::advance):
(WebCore::IDBBackingStore::Cursor::continueFunction):
(WebCore::IDBBackingStore::Transaction::Transaction):
(WebCore::IDBBackingStore::Transaction::begin):
(WebCore::IDBBackingStore::Transaction::commit):
(WebCore::IDBBackingStore::Transaction::rollback):

  • Modules/indexeddb/IDBBackingStore.h:

(WebCore::LevelDBFactory::~LevelDBFactory):
(WebCore::IDBBackingStore::Transaction::reset):
(WebCore::IDBBackingStore::Transaction::levelDBTransactionFrom):

  • Modules/indexeddb/IDBKeyPath.cpp:

(WebCore::IDBIsValidKeyPath):

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromValue):

  • bindings/js/JSIDBAnyCustom.cpp:

(WebCore::toJS):

4:55 PM Changeset in webkit [156308] by akling@apple.com
  • 10 edits in trunk/Source/WebCore

CTTE: RenderObject::container() should return a RenderElement*.
<https://webkit.org/b/121811>

Reviewed by Antti Koivisto.

The containing renderer is always a RenderElement.

4:53 PM Changeset in webkit [156307] by andersca@apple.com
  • 6 edits in trunk/Source

Test the waters and begin using lambdas
https://bugs.webkit.org/show_bug.cgi?id=121809

Reviewed by Andreas Kling.

Source/WebCore:

Use lambdas instead of static functions and function objects.

  • css/MediaQuery.cpp:

(WebCore::MediaQuery::MediaQuery):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::deliverAllMutations):

  • page/CaptionUserPreferences.cpp:

(WebCore::CaptionUserPreferences::sortedTrackListForMenu):

Source/WTF:

  • wtf/ListDump.h:

(WTF::sortedListDump):
Use std::less instead of a custom lessThan function.

4:26 PM Changeset in webkit [156306] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

[WIN] Add implementation for WebCore::readFromFile()
https://bugs.webkit.org/show_bug.cgi?id=119210

Reviewed by Brent Fulgham.

  • platform/win/FileSystemWin.cpp:

(WebCore::readFromFile):

3:41 PM Changeset in webkit [156305] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

ListHashSet::removeLast should only remove one element.

  • wtf/ListHashSet.h:

(WTF::ListHashSet::removeLast):

3:39 PM Changeset in webkit [156304] by andersca@apple.com
  • 5 edits in trunk/Source/WTF

Add hash traits for std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=121807

Reviewed by Antti Koivisto.

Also, convert the thread map over to using std::unique_ptr instead of OwnPtr.

  • wtf/HashMap.h:

Remove unnecessary typedefs and add missing calls to std::forward.

  • wtf/HashTraits.h:

Add hash trait for std::unique_ptr.

  • wtf/RefPtrHashMap.h:

Use std::add_lvalue_reference.

  • wtf/ThreadingPthreads.cpp:

(WTF::establishIdentifierForPthreadHandle):
Change ThreadMap to be a hash map from ThreadIdentifier to std::unique_ptr<PthreadState>.

3:35 PM Changeset in webkit [156303] by Patrick Gansterer
  • 5 edits in trunk/Source

[WIN] Implement WebMutableURLRequest::setHTTPBody()
https://bugs.webkit.org/show_bug.cgi?id=91920

Reviewed by Brent Fulgham.

Source/WebCore:

Add a method to FormData for growing the internal buffer with a given size.

  • platform/network/FormData.cpp:

(WebCore::FormData::appendData):
(WebCore::FormData::expandDataStore):

  • platform/network/FormData.h:

Source/WebKit/win:

  • WebMutableURLRequest.cpp:

(WebMutableURLRequest::setHTTPBody):
(WebMutableURLRequest::setHTTPBodyStream):

3:25 PM Changeset in webkit [156302] by Patrick Gansterer
  • 20 edits in trunk

use NOMINMAX instead of #define min min
https://bugs.webkit.org/show_bug.cgi?id=73563

Reviewed by Brent Fulgham.

Use NOMINMAX instead of #define min/max as a cleaner
way of ensuring that Windows system header files don't
define min/max as macro in the first place.

Source/JavaScriptCore:

  • config.h:

Source/WebCore:

  • WebCorePrefix.h:
  • config.h:

Source/WebKit/win:

  • WebKitPrefix.h:

Source/WebKit2:

  • config.h:

Source/WTF:

  • config.h:

Tools:

  • DumpRenderTree/DumpRenderTreePrefix.h:
  • DumpRenderTree/cg/ImageDiffCG.cpp:
  • DumpRenderTree/config.h:
  • DumpRenderTree/win/ImageDiffCairo.cpp:
  • WebKitTestRunner/WebKitTestRunnerPrefix.h:
  • WebKitTestRunner/config.h:

WebKitLibraries:

  • win/tools/vsprops/common.props:
3:16 PM Changeset in webkit [156301] by Simon Fraser
  • 8 edits in trunk

REGRESSION (r155998): when zooming in, tiles are too small
https://bugs.webkit.org/show_bug.cgi?id=121765

Source/WebCore:

Reviewed by Dean Jackson.

In r155998 I made GraphicsLayerCA take root-relative transforms
into account when computing contentsScale, and landed a bunch of
new results which should actually have told me that I broke page
scaling.

We don't want to take page scale into account when computing contentsScale,
because we already do so, so ignore the transform on the layer that
applies page scale (the only transform it should ever has is the page scale).

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateRootRelativeScale):

LayoutTests:

Reviewed by Dean Jackson.

Fix results of tests that showed that we had incorrect tiling
behavior on zooming.

  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
  • platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
  • platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
3:09 PM Changeset in webkit [156300] by fpizlo@apple.com
  • 28 edits
    2 adds in trunk/Source/JavaScriptCore

Never use ReturnPC for exception handling and quit using exception check indices as a lame replica of the CodeOrigin index
https://bugs.webkit.org/show_bug.cgi?id=121734

Reviewed by Mark Hahnenberg.

Exception handling can deduce where the exception was thrown from by looking at the
code origin that was stored into the call frame header. There is no need to pass any
additional meta-data into the exception throwing logic. But the DFG was still doing it
anyway.

This removes all of the logic to pass extra meta-data into lookupExceptionHandler()
and friends. It simplifies a lot of code.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::shrinkToFit):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::codeOrigins):
(JSC::CodeBlock::hasCodeOrigins):
(JSC::CodeBlock::canGetCodeOrigin):
(JSC::CodeBlock::codeOrigin):

  • bytecode/CodeOrigin.h:

(JSC::InlineCallFrame::InlineCallFrame):

  • bytecode/InlineCallFrameSet.cpp: Added.

(JSC::InlineCallFrameSet::InlineCallFrameSet):
(JSC::InlineCallFrameSet::~InlineCallFrameSet):
(JSC::InlineCallFrameSet::add):
(JSC::InlineCallFrameSet::shrinkToFit):

  • bytecode/InlineCallFrameSet.h: Added.

(JSC::InlineCallFrameSet::isEmpty):
(JSC::InlineCallFrameSet::size):
(JSC::InlineCallFrameSet::at):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::addCodeOrigin):
(JSC::DFG::CommonData::shrinkToFit):

  • dfg/DFGCommonData.h:
  • dfg/DFGDesiredWriteBarriers.cpp:

(JSC::DFG::DesiredWriteBarrier::DesiredWriteBarrier):
(JSC::DFG::DesiredWriteBarrier::trigger):

  • dfg/DFGDesiredWriteBarriers.h:

(JSC::DFG::DesiredWriteBarriers::add):
(JSC::DFG::initializeLazyWriteBarrierForInlineCallFrameExecutable):
(JSC::DFG::initializeLazyWriteBarrierForInlineCallFrameCallee):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):

  • dfg/DFGGraph.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::JITCompiler):
(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::emitStoreCodeOrigin):
(JSC::DFG::JITCompiler::exceptionCheck):
(JSC::DFG::JITCompiler::fastExceptionCheck):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):
(JSC::DFG::SpeculativeJIT::appendCall):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGVirtualRegisterAllocationPhase.cpp:

(JSC::DFG::VirtualRegisterAllocationPhase::run):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::callPreflight):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitExceptionCheck):

3:07 PM Changeset in webkit [156299] by ap@apple.com
  • 5 edits in trunk/Tools

Delete TestWebKitAPI domain or some keys before running TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=121715 & <rdar://problem/14269434>

Patch by Benjamin Poulain <benjamin@webkit.org> on 2013-09-23
Reviewed by Alexey Proskuryakov.

Previously, initalizing a WebPreference would change the cache model
to WebCacheModelDocumentBrowser. That behavior was due to a stale
preference file on disk.

This patch fixes the tests by resetting the default, and using the proper
default values after initializing WebPreference.

  • TestWebKitAPI/Tests/mac/SetAndUpdateCacheModel.mm:

(TestWebKitAPI::TEST): Use the proper initial value, unrelated
to the previous runs.

  • TestWebKitAPI/Tests/mac/SetAndUpdateCacheModel.mm:

(TestWebKitAPI::TEST): This test needs b/f cache to be enabled, so change
cache model to the one required.

  • TestWebKitAPI/ios/mainIOS.mm:

(main): Reset the preferences before testing.

  • TestWebKitAPI/mac/mainMac.mm:

(main): Ditto.

2:53 PM Changeset in webkit [156298] by andersca@apple.com
  • 6 edits
    1 delete in trunk/Source/WTF

Remove PassTraits.h
https://bugs.webkit.org/show_bug.cgi?id=121805

Reviewed by Andreas Kling.

We no longer need PassTraits.h, get rid of it.

  • GNUmakefile.list.am:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/PassTraits.h: Removed.
2:50 PM Changeset in webkit [156297] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

iframe and scrollbar with "overflow:auto" should support autoscroll with mousedrag
https://bugs.webkit.org/show_bug.cgi?id=40981

Patch by Antonio Gomes <a1.gomes@sisa.samsung.com> on 2013-09-23
Reviewed by Darin Adler.

Source/WebCore:

RenderBox::calculateAutoscrollDirection does not properly translate
inner frames' coordinates in order to determine its auto-scrollability.
By coincidence, if the inner frame box it placed near to page's 0, 0 position
(upper left corner), it might work.

Patch fixes it by changing ::calculateAutoscrollDirection algorithm to operate
with window coordinates, taking inner frames offset and scroll position into account.
The behavior of auto-scrollable non-frame overflow boxes, including divs, still works
as it is used to.

Test: fast/events/drag-and-drop-autoscroll-inner-frame.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::calculateAutoscrollDirection):

LayoutTests:

Test ensures that dragging an element close to the boundary of
scrollable Frames, scroll its content in that direction.

  • fast/events/drag-and-drop-autoscroll-inner-frame-expected.txt: Added.
  • fast/events/drag-and-drop-autoscroll-inner-frame.html: Added.
2:45 PM Changeset in webkit [156296] by beidson@apple.com
  • 4 edits
    3 moves
    1 add in trunk/Source/WebCore

Move LevelDB specific IDB files into their own subdirectory.
https://bugs.webkit.org/show_bug.cgi?id=121804

Rubberstamped by Alexey Proskuryakov.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp.

(WebCore::recordInternalError):
(WebCore::putBool):
(WebCore::getInt):
(WebCore::putInt):
(WebCore::getVarInt):
(WebCore::putVarInt):
(WebCore::getString):
(WebCore::putString):
(WebCore::putIDBKeyPath):
(WebCore::compareKeys):
(WebCore::compareIndexKeys):
(WebCore::Comparator::compare):
(WebCore::Comparator::name):
(WebCore::isSchemaKnown):
(WebCore::setUpMetadata):
(WebCore::getMaxObjectStoreId):
(WebCore::DefaultLevelDBFactory::openLevelDB):
(WebCore::DefaultLevelDBFactory::destroyLevelDB):
(WebCore::IDBBackingStore::IDBBackingStore):
(WebCore::IDBBackingStore::~IDBBackingStore):
(WebCore::IDBBackingStore::open):
(WebCore::IDBBackingStore::openInMemory):
(WebCore::IDBBackingStore::create):
(WebCore::IDBBackingStore::getDatabaseNames):
(WebCore::IDBBackingStore::getIDBDatabaseMetaData):
(WebCore::getNewDatabaseId):
(WebCore::IDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBBackingStore::updateIDBDatabaseIntVersion):
(WebCore::IDBBackingStore::updateIDBDatabaseMetaData):
(WebCore::deleteRange):
(WebCore::IDBBackingStore::deleteDatabase):
(WebCore::checkObjectStoreAndMetaDataType):
(WebCore::IDBBackingStore::getObjectStores):
(WebCore::setMaxObjectStoreId):
(WebCore::IDBBackingStore::createObjectStore):
(WebCore::IDBBackingStore::deleteObjectStore):
(WebCore::IDBBackingStore::getRecord):
(WebCore::getNewVersionNumber):
(WebCore::IDBBackingStore::putRecord):
(WebCore::IDBBackingStore::clearObjectStore):
(WebCore::IDBBackingStore::deleteRecord):
(WebCore::IDBBackingStore::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::keyExistsInObjectStore):
(WebCore::checkIndexAndMetaDataKey):
(WebCore::IDBBackingStore::getIndexes):
(WebCore::setMaxIndexId):
(WebCore::IDBBackingStore::createIndex):
(WebCore::IDBBackingStore::deleteIndex):
(WebCore::IDBBackingStore::putIndexDataForRecord):
(WebCore::findGreatestKeyLessThanOrEqual):
(WebCore::versionExists):
(WebCore::IDBBackingStore::findKeyInIndex):
(WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStore::keyExistsInIndex):
(WebCore::IDBBackingStore::Cursor::Cursor):
(WebCore::IDBBackingStore::Cursor::firstSeek):
(WebCore::IDBBackingStore::Cursor::advance):
(WebCore::IDBBackingStore::Cursor::continueFunction):
(WebCore::IDBBackingStore::Cursor::haveEnteredRange):
(WebCore::IDBBackingStore::Cursor::isPastBounds):
(WebCore::ObjectStoreKeyCursorImpl::create):
(WebCore::ObjectStoreKeyCursorImpl::clone):
(WebCore::ObjectStoreKeyCursorImpl::value):
(WebCore::ObjectStoreKeyCursorImpl::encodeKey):
(WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
(WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
(WebCore::ObjectStoreCursorImpl::create):
(WebCore::ObjectStoreCursorImpl::clone):
(WebCore::ObjectStoreCursorImpl::value):
(WebCore::ObjectStoreCursorImpl::encodeKey):
(WebCore::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::create):
(WebCore::IndexKeyCursorImpl::clone):
(WebCore::IndexKeyCursorImpl::value):
(WebCore::IndexKeyCursorImpl::primaryKey):
(WebCore::IndexKeyCursorImpl::recordIdentifier):
(WebCore::IndexKeyCursorImpl::encodeKey):
(WebCore::IndexKeyCursorImpl::IndexKeyCursorImpl):
(WebCore::IndexKeyCursorImpl::loadCurrentRow):
(WebCore::IndexCursorImpl::create):
(WebCore::IndexCursorImpl::clone):
(WebCore::IndexCursorImpl::value):
(WebCore::IndexCursorImpl::primaryKey):
(WebCore::IndexCursorImpl::recordIdentifier):
(WebCore::IndexCursorImpl::encodeKey):
(WebCore::IndexCursorImpl::IndexCursorImpl):
(WebCore::IndexCursorImpl::loadCurrentRow):
(WebCore::objectStoreCursorOptions):
(WebCore::indexCursorOptions):
(WebCore::IDBBackingStore::openObjectStoreCursor):
(WebCore::IDBBackingStore::openObjectStoreKeyCursor):
(WebCore::IDBBackingStore::openIndexKeyCursor):
(WebCore::IDBBackingStore::openIndexCursor):
(WebCore::IDBBackingStore::Transaction::Transaction):
(WebCore::IDBBackingStore::Transaction::begin):
(WebCore::IDBBackingStore::Transaction::commit):
(WebCore::IDBBackingStore::Transaction::rollback):

  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp.

(WebCore::IDBLevelDBCoding::encodeByte):
(WebCore::IDBLevelDBCoding::decodeByte):
(WebCore::IDBLevelDBCoding::maxIDBKey):
(WebCore::IDBLevelDBCoding::minIDBKey):
(WebCore::IDBLevelDBCoding::encodeBool):
(WebCore::IDBLevelDBCoding::decodeBool):
(WebCore::IDBLevelDBCoding::encodeInt):
(WebCore::IDBLevelDBCoding::decodeInt):
(WebCore::IDBLevelDBCoding::compareInts):
(WebCore::IDBLevelDBCoding::encodeVarInt):
(WebCore::IDBLevelDBCoding::decodeVarInt):
(WebCore::IDBLevelDBCoding::encodeString):
(WebCore::IDBLevelDBCoding::decodeString):
(WebCore::IDBLevelDBCoding::encodeStringWithLength):
(WebCore::IDBLevelDBCoding::decodeStringWithLength):
(WebCore::IDBLevelDBCoding::compareEncodedStringsWithLength):
(WebCore::IDBLevelDBCoding::encodeDouble):
(WebCore::IDBLevelDBCoding::decodeDouble):
(WebCore::IDBLevelDBCoding::encodeIDBKey):
(WebCore::IDBLevelDBCoding::decodeIDBKey):
(WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
(WebCore::IDBLevelDBCoding::keyTypeByteToKeyType):
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
(WebCore::IDBLevelDBCoding::encodeIDBKeyPath):
(WebCore::IDBLevelDBCoding::decodeIDBKeyPath):
(WebCore::IDBLevelDBCoding::compare):
(WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
(WebCore::IDBLevelDBCoding::KeyPrefix::createWithSpecialIndex):
(WebCore::IDBLevelDBCoding::KeyPrefix::isValidDatabaseId):
(WebCore::IDBLevelDBCoding::KeyPrefix::isValidObjectStoreId):
(WebCore::IDBLevelDBCoding::KeyPrefix::isValidIndexId):
(WebCore::IDBLevelDBCoding::KeyPrefix::decode):
(WebCore::IDBLevelDBCoding::KeyPrefix::encodeEmpty):
(WebCore::IDBLevelDBCoding::KeyPrefix::encode):
(WebCore::IDBLevelDBCoding::KeyPrefix::encodeInternal):
(WebCore::IDBLevelDBCoding::KeyPrefix::compare):
(WebCore::IDBLevelDBCoding::KeyPrefix::type):
(WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
(WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
(WebCore::IDBLevelDBCoding::DataVersionKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::DatabaseFreeListKey):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::databaseId):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::compare):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeMinKeyForOrigin):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeStopKeyForOrigin):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::compare):
(WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::ObjectStoreMetaDataKey):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::objectStoreId):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::metaDataType):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::IndexMetaDataKey):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::compare):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::indexId):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::ObjectStoreFreeListKey):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::objectStoreId):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::compare):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::IndexFreeListKey):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::compare):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::objectStoreId):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::indexId):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::compare):
(WebCore::IDBLevelDBCoding::IndexNamesKey::IndexNamesKey):
(WebCore::IDBLevelDBCoding::IndexNamesKey::decode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::compare):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::userKey):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::decode):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::compare):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::userKey):
(WebCore::IDBLevelDBCoding::IndexDataKey::IndexDataKey):
(WebCore::IDBLevelDBCoding::IndexDataKey::decode):
(WebCore::IDBLevelDBCoding::IndexDataKey::encode):
(WebCore::IDBLevelDBCoding::IndexDataKey::encodeMinKey):
(WebCore::IDBLevelDBCoding::IndexDataKey::encodeMaxKey):
(WebCore::IDBLevelDBCoding::IndexDataKey::compare):
(WebCore::IDBLevelDBCoding::IndexDataKey::databaseId):
(WebCore::IDBLevelDBCoding::IndexDataKey::objectStoreId):
(WebCore::IDBLevelDBCoding::IndexDataKey::indexId):
(WebCore::IDBLevelDBCoding::IndexDataKey::userKey):
(WebCore::IDBLevelDBCoding::IndexDataKey::primaryKey):

  • Modules/indexeddb/leveldb/IDBLevelDBCoding.h: Renamed from Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h.

(WebCore::IDBLevelDBCoding::encodeIntSafely):
(WebCore::IDBLevelDBCoding::KeyPrefix::validIds):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::origin):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::databaseName):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::metaDataType):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::objectStoreName):
(WebCore::IDBLevelDBCoding::IndexNamesKey::indexName):

2:39 PM Changeset in webkit [156295] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Try to fix GTK build.

Not reviewed.

  • accessibility/atk/AccessibilityObjectAtk.cpp:

(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(textForRenderer):

2:39 PM Changeset in webkit [156294] by andersca@apple.com
  • 4 edits in trunk

ListHashSet should work with move-only types
https://bugs.webkit.org/show_bug.cgi?id=121802

Reviewed by Andreas Kling.

Source/WTF:

Add rvalue reference overloads and calls to std::forward and std::move where appropriate.

  • wtf/ListHashSet.h:

(WTF::::removeFirst):
Implement this in terms of takeFirst.

(WTF::::takeFirst):
Look up the iterator before we move out the value so we won't break the hash invariant.

(WTF::::removeLast):
Implement this in terms of takeLast.

(WTF::::takeLast):
Look up the iterator before we move out the value so we won't break the hash invariant.

Tools:

  • TestWebKitAPI/Tests/WTF/ListHashSet.cpp:

(TestWebKitAPI::TEST):
Add a test for move-only types.

2:20 PM Changeset in webkit [156293] by ap@apple.com
  • 4 edits in trunk/LayoutTests

video-object-fit tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=121803

Rubber-stamped by Simon Fraser.

Removing an ad hoc 1.5 second timeout that these tests had. Loading video can take
longer.

  • compositing/video/video-object-fit.html:
  • media/video-object-fit-change.html:
  • media/video-object-fit.html:
1:45 PM Changeset in webkit [156292] by Alexandru Chiculita
  • 8 edits in trunk

Web Inspector: [CSS Regions] Display CSS Regions flow name in the inspector overlay
https://bugs.webkit.org/show_bug.cgi?id=121794

Reviewed by Joseph Pecoraro.

Source/WebCore:

No new tests, the previous test for CSS Regions highlighting covers the flow name.

This patch adds the "Flow" property in the inspector overlay. The region
chain is already displayed with numbers, so it makes sense to have the flow
name around when a CSS region is highlighted.

I've consolidated the flow information into "elementInfo.flowInfo".
Flow info has two properties: "name" and "regions".

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForCSSRegionsHighlight):
(WebCore::InspectorOverlay::buildObjectForHighlightedNode):

  • inspector/InspectorOverlayPage.css:

(.css-property): Added the CSS property font color that the Inspector uses.

  • inspector/InspectorOverlayPage.html: Added a new element to be used to display the flow-from property.
  • inspector/InspectorOverlayPage.js:

(_drawElementTitle):
(drawNodeHighlight):

LayoutTests:

Updated the expected results after moving the regions to the elementInfo.flowInfo property.
Also, the test is now logging the name of the flow container in the output.

  • http/tests/inspector/elements-test.js:
  • inspector/elements/highlight-node-regions-expected.txt:
1:43 PM Changeset in webkit [156291] by Simon Fraser
  • 10 edits in trunk/Source/WebCore

Rapidly loading pages can result in !needsLayout() assertions in FrameView::paintContents() and RenderView::paint()
https://bugs.webkit.org/show_bug.cgi?id=121725
<rdar://problem/13982161> ASSERT(!needsLayout()) in WebCore::RenderView::paint (121196)

Reviewed by Dean Jackson.

Layout has to be up-to-date before we paint, and when composited we rely on a
CFRunLoopObserver owned by LayerFlushScheduler to enforce this. The contract is
that changes to GraphicsLayers accumulate in those layers, and are all pushed to
CALayers only inside of flushCompositingState(). CALayers must not be touched
directly outside of flushCompositingState(), since this may trigger a CA commit
and resultant painting without us having updated layout.

In addition, we rely on the CA commits only happening after our runloop observer
has fired in order for LayerFlushScheduler's suspend/resume to work (these are used
for freezing the layer tree during page transitions).

However, TileController was violating this contract. It called revalidateTiles()
at random times, and on a timer. This would result in CA commits happening when
layer flushing was suspended at the LayerFlushScheduler level, and thus before
we'd had a chance to do layout.

Fix by only ever revalidatingTiles inside of flushCompositingState(). Calls
that used to result in revalidateTiles() at other times now just set a bit
on GraphicsLayerCA to indicate that revalidation is required, and this triggers
a later flush like any other GraphicsLayerCA change.

There is one exception to the revalidate-inside-flush rule: when purging
files for background tabs on a timer, we are only dealing with an unparented
layer tree, so CALayer manipulation is safe at any time.

Very timing dependent, so hard to test.

  • platform/graphics/TiledBacking.h: Expose revalidateTiles()
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: Remove

platformCALayerDidCreateTiles() override.

  • platform/graphics/ca/GraphicsLayerCA.h: Keep track of m_isCommittingChanges

so we can assert. Add TilingAreaChanged flag.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::GraphicsLayerCA):
(WebCore::GraphicsLayerCA::recursiveCommitChanges): noteSublayersChanged() is
used inside of a commit in some cases to trigger a parent layer to update
children after the children have been processed. To avoid trying to pointlessly
schedule the flusher inside a flush, and for strong assertions, use a new flag
that indicates that flushing is not required in this situation.
Set the m_isCommittingChanges flag around committing state.
(WebCore::GraphicsLayerCA::platformCALayerSetNeedsToRevalidateTiles): We used
to use platformCALayerDidCreateTiles() to ensure that we would flush after adding
new tiles to avoid garbage flashes. Now that we only ever create tiles inside
a flush, this is no longer necessary.
The new platformCALayerSetNeedsToRevalidateTiles() function just sets the
TilingAreaChanged flag and triggers a flush.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): After updating
visible rect, we look for the TilingAreaChanged flag to tell us whether to
revalidate TiledBacking tiles.
(WebCore::GraphicsLayerCA::ensureStructuralLayer): Use DontScheduleFlush when
telling a parent layer that it needs to reconsider sublayers.
(WebCore::GraphicsLayerCA::updateTiles): The caller of revalidateTiles().
(WebCore::GraphicsLayerCA::updateContentsRects): DontScheduleFlush again.
(WebCore::GraphicsLayerCA::noteSublayersChanged): Pass scheduleFlush along.
(WebCore::GraphicsLayerCA::noteLayerPropertyChanged): Handle scheduleFlush.

  • platform/graphics/ca/PlatformCALayerClient.h:

(WebCore::PlatformCALayerClient::platformCALayerSetNeedsToRevalidateTiles): Added
so that TileController can call back out to GraphicsLayerCA.
(WebCore::PlatformCALayerClient::isCommittingChanges):

  • platform/graphics/ca/mac/TileController.h: Need to keep track of secondary

coverage rects in m_secondaryTileCoverageRects.

  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::tileCacheLayerBoundsChanged): Just trigger a tile revalidate,
which will happen later in this same commit.
(WebCore::TileController::setScale): This is called inside the commit. Does an extra
revalidate, which is needed to prune tiles. This could be optimized in future.
(WebCore::TileController::setVisibleRect): Assert that we're inside a commit,
and trigger a revalidate.
(WebCore::TileController::setExposedRect): Trigger a revalidate.
(WebCore::TileController::setClipsToExposedRect): Ditto.
(WebCore::TileController::prepopulateRect): Save the rect and trigger a revalidate.
(WebCore::TileController::setIsInWindow): If we're in the window, trigger a revalidate
otherwise schedule the timer.
(WebCore::TileController::revalidateTiles): Wrapper for the real revalidateTiles().
(WebCore::TileController::tileRevalidationTimerFired): If we're in the window,
schedule a revalidate. Otherwise our layer tree is disconnected, and it's OK to call revalidateTiles().
(WebCore::TileController::setNeedsRevalidateTiles): Call through the client to GraphicsLayerCA
which will schedule a layer tree flush.
(WebCore::TileController::revalidateTiles):
(WebCore::TileController::ensureTilesForRect): Move code from prepopulateRect
into here; ensureTilesForRect() for each secondary rect, then clear the rects.
No need to call platformCALayerDidCreateTiles() at the end.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Remove

platformCALayerDidCreateTiles() override.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::scheduleLayerFlush): This should only be
called when we're not inside a flush, otherwise it will fail to schedule
another one.

1:38 PM Changeset in webkit [156290] by alex.christensen@flexsim.com
  • 2 edits in trunk/Tools

Added --64-bit option for Windows build.
https://bugs.webkit.org/show_bug.cgi?id=121799

Reviewed by Brent Fulgham.

  • Scripts/webkitdirs.pm:

(determinePassedConfiguration): Add "|x64" for 64-bit configuration.
(isWin64): Added.
(determineIsWin64): Added.

1:24 PM Changeset in webkit [156289] by weinig@apple.com
  • 21 edits in trunk/Source/WebCore

CTTE: htmlediting.h Element creation function should take a Document&
https://bugs.webkit.org/show_bug.cgi?id=121800

Reviewed by Antti Koivisto.

Thread the Document&!

1:23 PM Changeset in webkit [156288] by zhajiang@rim.com
  • 5 edits in trunk/Source

[BlackBerry] Poor rendering opening a Google map short link
https://bugs.webkit.org/show_bug.cgi?id=121687

Source/WebCore:

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-09-23.
Reviewed by Yong Li.
Internally reviewed by Liam Quinn and Joe Mason.

Fix a regression. It turns out that LayerCompositingThread already has
an API named isVisible() which by default returns false. So rename the
one in the LayerData to isLayerVisible().

  • platform/graphics/blackberry/LayerData.h:

(WebCore::LayerData::isLayerVisible):

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::compositeLayersRecursive):

Source/WebKit/blackberry:

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-09-23.
Reviewed by Yong Li.
Internally reviewed by Arvid Nilsson.

Clean up m_isAcceleratedCompositingActive as it has been deprecated.

  • Api/WebPage_p.h:
1:09 PM Changeset in webkit [156287] by ChangSeok Oh
  • 2 edits in trunk/Source/WebKit2

[GTK][WK2] A plugin dirtyRect within iframe remains after moving to a different page.
https://bugs.webkit.org/show_bug.cgi?id=121600

Reviewed by Gustavo Noronha Silva.

Nowhere to destroy NetscapePlugin::m_platformPluginWidget even after destroying
an instance of NetscapePlugin. So the created GtkWidget remains visible.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePlugin::platformDestroy):

12:46 PM Changeset in webkit [156286] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

CodeLoad performance regression

Reviewed by Filip Pizlo.

Temporarily remove the ExpressionInfo compression until we can
work out how to make it not clobber performance.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::expressionRangeForBytecodeOffset):
(JSC::UnlinkedCodeBlock::addExpressionInfo):

  • bytecode/UnlinkedCodeBlock.h:
12:32 PM Changeset in webkit [156285] by Antti Koivisto
  • 38 edits in trunk/Source

Rename RenderObject::first/lastChild to RenderObject::first/lastChildSlow
https://bugs.webkit.org/show_bug.cgi?id=121784

Reviewed by Andreas Kling.

This will make it obvious in code where typing should be tightened.
Handled some simple cases by tightening the code instead of renaming.

12:27 PM Changeset in webkit [156284] by timothy@apple.com
  • 5 edits in trunk/Source/WebInspectorUI

Hook up the initiator info and show it in the Resource details sidebar.

https://bugs.webkit.org/show_bug.cgi?id=121741

Reviewed by Joseph Pecoraro.

  • UserInterface/FrameResourceManager.js:

(WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
(WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache):
(WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
(WebInspector.FrameResourceManager.prototype._initiatorSourceCodeLocationFromPayload):

  • UserInterface/NetworkObserver.js:

(WebInspector.NetworkObserver.prototype.requestWillBeSent):
(WebInspector.NetworkObserver.prototype.requestServedFromMemoryCache):

  • UserInterface/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.prototype.get initiatorSourceCodeLocation):

  • UserInterface/ResourceDetailsSidebarPanel.js:

(WebInspector.ResourceDetailsSidebarPanel):
(WebInspector.ResourceDetailsSidebarPanel.prototype._refreshURL):

12:27 PM Changeset in webkit [156283] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Clean up ListHashSet
https://bugs.webkit.org/show_bug.cgi?id=121797

Reviewed by Antti Koivisto.

  • wtf/ListHashSet.h:
12:02 PM Changeset in webkit [156282] by ChangSeok Oh
  • 5 edits
    2 adds in trunk

[Texmap] Reloading a webgl page doesn't work
https://bugs.webkit.org/show_bug.cgi?id=120593

Reviewed by Noam Rosenthal.

Source/WebCore:

Let GraphicsLayerTextureMapper know it needs to detach the platform layer when a GraphicsContext3D is destroyed.

Test: fast/canvas/webgl/webgl-reload-crash.html

  • platform/graphics/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/TextureMapperPlatformLayer.h:

LayoutTests:

Add a new test case to check if a crash occurs while reloading a page which contains webgl.

  • fast/canvas/webgl/webgl-reload-crash-expected.txt: Added.
  • fast/canvas/webgl/webgl-reload-crash.html: Added.
11:21 AM Changeset in webkit [156281] by andersca@apple.com
  • 4 edits in trunk

ListHashSet should use std::reverse_iterator for reverse iterators
https://bugs.webkit.org/show_bug.cgi?id=121795

Reviewed by Antti Koivisto.

Source/WTF:

Get rid of the custom reverse iterators and just use std::reverse_iterator instead.

  • wtf/ListHashSet.h:

Tools:

Add test for reverse iterators.

  • TestWebKitAPI/Tests/WTF/ListHashSet.cpp:

(TestWebKitAPI::TEST):

10:54 AM Changeset in webkit [156280] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Audio object garbage collection is incorrect (media/audio-garbage-collect.html test is flaky)
https://bugs.webkit.org/show_bug.cgi?id=72698

Skipping the test. It frequently times out, and when it doesn't, that's only
because if fails to detect incorrect behavior.

10:50 AM Changeset in webkit [156279] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

Add back the SharedWorkerStrategy to prevent crashing.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::createSharedWorkerStrategy):
(WebKit::WebPlatformStrategies::isAvailable):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
10:43 AM Changeset in webkit [156278] by Antti Koivisto
  • 40 edits
    2 deletes in trunk/Source/WebCore

Remove RenderObjectChildList
https://bugs.webkit.org/show_bug.cgi?id=121771

Reviewed by Darin Adler.

Most RenderElement subclasses have m_children member (>90% of instances on typical page). It is not worth optimising
for memory for the few cases that don't (RenderImage, RenderLineBreak mostly) in expense of performance.

This patch moves child handling to RenderElement. This gets rid of virtual children() calls and simplifies the code.

10:39 AM Changeset in webkit [156277] by weinig@apple.com
  • 15 edits
    11 deletes in trunk/Source/WebKit2

SharedWorkerProcess code is dead
https://bugs.webkit.org/show_bug.cgi?id=121563

Reviewed by Alexey Proskuryakov.

Remove SharedWorkerProcess code.

10:33 AM Changeset in webkit [156276] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

De-indent ListHashSet in preparation of more changes.

Rubber-stamped by Sam Weinig.

  • wtf/ListHashSet.h:
10:15 AM Changeset in webkit [156275] by Lucas Forschler
  • 2 edits in branches/safari-537.60-branch/Source/WebCore

Merged r156223. <rdar://problem/15048898>

9:32 AM Changeset in webkit [156274] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Document::destroyRenderTree() shouldn't do anything but.
<https://webkit.org/b/121786>

Reviewed by Anders Carlsson.

Move everything in destroyRenderTree() that doesn't actually destroy
render trees to prepareForDestruction() instead.

Destroying the render tree is now a reparable operation.

8:47 AM Changeset in webkit [156273] by commit-queue@webkit.org
  • 6 edits in trunk

[EFL] accessibility/aria-invalid is failing
https://bugs.webkit.org/show_bug.cgi?id=111986

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-23
Reviewed by Mario Sanchez Prada.

Tools:

Adds possibility to retrieve JS context.
This is part of the implementation of AccessibilityUIElement::addNotificationListener
from 119883 and 120421.

  • DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:

(axObjectEventListener):
(addAccessibilityNotificationHandler):
(removeAccessibilityNotificationHandler):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:

(WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
(WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):

LayoutTests:

Test passes on both efk-wk2 and efl-wk1, because of the patches from bugs: 119883 and 120421.

  • platform/efl-wk1/TestExpectations: Removed accessibility/aria-invalid.html
  • platform/efl-wk2/TestExpectations: Removed accessibility/aria-invalid.html
8:40 AM Changeset in webkit [156272] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Tiled backing-store causes wrong translation
https://bugs.webkit.org/show_bug.cgi?id=121789

Reviewed by Noam Rosenthal.

Move the translation inside save/restore of the GraphicsContext.

  • platform/graphics/qt/TileQt.cpp:

(WebCore::TileQt::updateBackBuffer):

8:09 AM Changeset in webkit [156271] by zandobersek@gmail.com
  • 8 edits
    1 add in trunk

[Autotools] Rework the build target selection
https://bugs.webkit.org/show_bug.cgi?id=121703

Reviewed by Gustavo Noronha Silva.

Replace the --with-target configuration flag with target-specific --enable-*-target flags:

  • --enable-x11-target
  • --enable-wayland-target
  • --enable-win32-target
  • --enable-quartz-target
  • --enable-directfb-target

By default, the X11 target is enabled. This default is preserved only if no --enable-*-target flag
is passed on the command line. When that occurs, the newly-constructed list of build targets is
used to determine what build targets should actually be built. So for instance, executing just
./configure would only enable the X11 target as that's the default, and executing
./configure --enable-wayland-target would only enable the Wayland target, as the defaults are
completely ignored.

  • Source/autotools/CheckSystemAndBasicDependencies.m4: Abort if grep was not found, just in case.
  • Source/autotools/CustomMacros.m4: The new file that contains helpful custom macros.
  • Source/autotools/FindDependencies.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
  • Source/autotools/PrintBuildConfiguration.m4: Use the new AM_APPEND_TO_DESCRIPTION macro to construct a pretty-looking

description string of what targets will be built.

  • Source/autotools/ReadCommandLineArguments.m4: Replace the --with-target configuration flag and the related

hacks with the set of --enable-*-target flags. The new AM_DETERMINE_BUILD_TARGET_STATUS macro is used to determine
whether to enable specific build targets, based indirectly on the passed-in --enable-*-target flags.

  • Source/autotools/SetupAutoconfHeader.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
  • Source/autotools/SetupAutomake.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
  • configure.ac: Include the new CustomMacros.m4 file.
6:04 AM Changeset in webkit [156270] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Unify code paths leading to render tree teardown.
<https://webkit.org/b/121785>

Reviewed by Antti Koivisto.

Make Document::prepareForDestruction() fit all the call sites that were
doing destroyRenderTree() + disconnectFromFrame().

  • disconnectDescendantFrames() is already a no-op if there are no frames.
  • willDetachDocumentFromFrame() will only run if there is a frame.

This is another step towards making tree rebuild possible.

Removed some age-old FIXMEs about why we aren't calling willRemove(),
a long-gone function.

5:23 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
5:03 AM Changeset in webkit [156269] by Claudio Saavedra
  • 2 edits in trunk

[GTK] Bump version

Reviewed by Carlos Garcia Campos.

  • Source/autotools/Versions.m4: Bump to 2.3.0
4:04 AM QtWebKitBuildBots edited by zarvai@inf.u-szeged.hu
Updating EWS info to Qt 5.1.1 (diff)
2:51 AM Changeset in webkit [156268] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] accessibility/selection-states.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112007

Unreviewed EFL gardening. Passes after r156149.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-23

  • platform/efl-wk2/TestExpectations:
1:26 AM Changeset in webkit [156267] by Patrick Gansterer
  • 7 edits in trunk/Source/WebCore

Cleanup CMake files in WebCore
https://bugs.webkit.org/show_bug.cgi?id=119262

Reviewed by Gyuyoung Kim.

Sort files and unify style.

  • CMakeLists.txt:
  • PlatformBlackBerry.cmake:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • PlatformWin.cmake:
  • PlatformWinCE.cmake:
1:09 AM Changeset in webkit [156266] by Patrick Gansterer
  • 4 edits in trunk/Source/WebKit

Cleanup CMake files in WebKit
https://bugs.webkit.org/show_bug.cgi?id=121763

Reviewed by Gyuyoung Kim.

Sort files and unify style.

  • PlatformBlackBerry.cmake:
  • PlatformEfl.cmake:
  • PlatformWinCE.cmake:
1:07 AM Changeset in webkit [156265] by Patrick Gansterer
  • 4 edits in trunk/Source/WebKit2

Cleanup CMake files in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=121767

Reviewed by Gyuyoung Kim.

Sort files and unify style.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
1:03 AM Changeset in webkit [156264] by Patrick Gansterer
  • 4 edits in trunk/Source/WTF

Cleanup CMake files in WTF
https://bugs.webkit.org/show_bug.cgi?id=121761

Reviewed by Gyuyoung Kim.

Sort files and unify the style.

  • wtf/CMakeLists.txt:
  • wtf/PlatformEfl.cmake:
  • wtf/PlatformGTK.cmake:
1:02 AM Changeset in webkit [156263] by Patrick Gansterer
  • 5 edits in trunk/Source/JavaScriptCore

Cleanup CMake files in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=121762

Reviewed by Gyuyoung Kim.

Sort files and unify style.

  • CMakeLists.txt:
  • shell/CMakeLists.txt:
  • shell/PlatformBlackBerry.cmake:
  • shell/PlatformEfl.cmake:
Note: See TracTimeline for information about the timeline view.