Timeline



Nov 17, 2013:

11:51 PM Changeset in webkit [159400] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[sh4] Fix revertJumpReplacementToBranchPtrWithPatch in MacroAssembler.
https://bugs.webkit.org/show_bug.cgi?id=124468

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-17
Reviewed by Michael Saboff.

Current implementation of revertJumpReplacementToBranchPtrWithPatch is wrong in
the sh4 MacroAssembler part, leading to random instabilities. This patch fixes it
and also renames the bad-named revertJumpToMove to revertJumpReplacementToBranchPtrWithPatch
in the SH4Assembler.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::revertJumpReplacementToBranchPtrWithPatch):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::replaceWithJump):
(JSC::SH4Assembler::revertJumpReplacementToBranchPtrWithPatch):

11:37 PM Changeset in webkit [159399] by fpizlo@apple.com
  • 3 edits in trunk/WebKitLibraries

Update binary drops to include atrick's "Ran out of registers" fix in r194942.

  • LLVMIncludesMountainLion.tar.bz2:
  • LLVMLibrariesMountainLion.tar.bz2:
11:06 PM Changeset in webkit [159398] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Unreviewed, fix this script for older Rubies where Pathname doesn't coerce to String
quite as easily.

With help from Andy Trick.

  • Scripts/export-llvm-build:
9:42 PM Changeset in webkit [159397] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening. Add webgl crash tests because webgl is not supported
by EFL WK2 fully yet as well as not fully supported by Intel and AMD hardware.

  • platform/efl-wk2/TestExpectations:
8:18 PM Changeset in webkit [159396] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test platform/mac-wk2/plugins/slow/asynchronous-plugin-initialization-multiple.html is extremely flaky on Mac WK2 bots, especially debug
https://bugs.webkit.org/show_bug.cgi?id=124476

  • platform/mac-wk2/TestExpectations:

Mark test as flaky.

6:10 PM Changeset in webkit [159395] by fpizlo@apple.com
  • 18 edits in trunk/Source/JavaScriptCore

Simplify WatchpointSet state tracking
https://bugs.webkit.org/show_bug.cgi?id=124465

Reviewed by Sam Weinig.

We previously represented the state of watchpoint sets using two booleans. But that
makes it awkward to case over the state.

We also previously supported a watchpoint set being both watched and invalidated. We
never used that capability, and its presence was just purely confusing.

This turns the whole thing into an enum.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::branch8):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::branch8):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::branch8):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::branch8):

  • bytecode/Watchpoint.cpp:

(JSC::WatchpointSet::WatchpointSet):
(JSC::WatchpointSet::add):
(JSC::WatchpointSet::notifyWriteSlow):
(JSC::InlineWatchpointSet::inflateSlow):

  • bytecode/Watchpoint.h:

(JSC::WatchpointSet::state):
(JSC::WatchpointSet::isStillValid):
(JSC::WatchpointSet::startWatching):
(JSC::WatchpointSet::notifyWrite):
(JSC::WatchpointSet::addressOfState):
(JSC::InlineWatchpointSet::InlineWatchpointSet):
(JSC::InlineWatchpointSet::hasBeenInvalidated):
(JSC::InlineWatchpointSet::startWatching):
(JSC::InlineWatchpointSet::notifyWrite):
(JSC::InlineWatchpointSet::decodeState):
(JSC::InlineWatchpointSet::encodeState):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitVarInjectionCheck):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitVarInjectionCheck):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):

  • runtime/JSFunctionInlines.h:

(JSC::JSFunction::JSFunction):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::JSGlobalObject):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):

  • runtime/SymbolTable.cpp:

(JSC::SymbolTableEntry::attemptToWatch):

  • runtime/SymbolTable.h:
5:46 PM Changeset in webkit [159394] by fpizlo@apple.com
  • 39 edits
    9 adds
    2 deletes in trunk

FTL should have an explicit notion of bytecode liveness
https://bugs.webkit.org/show_bug.cgi?id=124181

Source/JavaScriptCore:

Reviewed by Sam Weinig.

This makes FTL OSR exit use bytecode liveness analysis to determine which variables
to include values for. The decision of how to get the values of variables is based on
forward propagation of MovHints and SetLocals.

This fixes a bunch of bugs (like https://bugs.webkit.org/show_bug.cgi?id=124138 but
also others that I noticed when I started writing more targetted tests) and allows us
to remove some sketchy code.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeBasicBlock.h:
  • bytecode/BytecodeLivenessAnalysis.cpp:

(JSC::isValidRegisterForLiveness):
(JSC::setForOperand):
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
(JSC::stepOverInstruction):
(JSC::computeLocalLivenessForBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::runLivenessFixpoint):
(JSC::BytecodeLivenessAnalysis::operandIsLiveAtBytecodeOffset):
(JSC::getLivenessInfo):
(JSC::BytecodeLivenessAnalysis::getLivenessInfoAtBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::computeFullLiveness):

  • bytecode/BytecodeLivenessAnalysis.h:
  • bytecode/BytecodeLivenessAnalysisInlines.h: Added.

(JSC::operandIsAlwaysLive):
(JSC::operandThatIsNotAlwaysLiveIsLive):
(JSC::operandIsLive):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::captureCount):
(JSC::CodeBlock::captureStart):
(JSC::CodeBlock::captureEnd):

  • bytecode/CodeOrigin.cpp:

(JSC::InlineCallFrame::dumpInContext):

  • bytecode/FullBytecodeLiveness.h: Added.

(JSC::FullBytecodeLiveness::FullBytecodeLiveness):
(JSC::FullBytecodeLiveness::getOut):
(JSC::FullBytecodeLiveness::operandIsLive):
(JSC::FullBytecodeLiveness::getLiveness):

  • dfg/DFGAvailability.cpp: Added.

(JSC::DFG::Availability::dump):
(JSC::DFG::Availability::dumpInContext):

  • dfg/DFGAvailability.h: Added.

(JSC::DFG::Availability::Availability):
(JSC::DFG::Availability::unavailable):
(JSC::DFG::Availability::withFlush):
(JSC::DFG::Availability::withNode):
(JSC::DFG::Availability::withUnavailableNode):
(JSC::DFG::Availability::nodeIsUndecided):
(JSC::DFG::Availability::nodeIsUnavailable):
(JSC::DFG::Availability::hasNode):
(JSC::DFG::Availability::node):
(JSC::DFG::Availability::flushedAt):
(JSC::DFG::Availability::operator!):
(JSC::DFG::Availability::operator==):
(JSC::DFG::Availability::merge):
(JSC::DFG::Availability::mergeNodes):
(JSC::DFG::Availability::unavailableMarker):

  • dfg/DFGBasicBlock.h:
  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::Disassembler):

  • dfg/DFGFlushFormat.cpp:

(WTF::printInternal):

  • dfg/DFGFlushFormat.h:

(JSC::DFG::resultFor):
(JSC::DFG::useKindFor):
(JSC::DFG::dataFormatFor):

  • dfg/DFGFlushedAt.cpp:

(JSC::DFG::FlushedAt::dump):

  • dfg/DFGFlushedAt.h:

(JSC::DFG::FlushedAt::FlushedAt):
(JSC::DFG::FlushedAt::merge):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::livenessFor):
(JSC::DFG::Graph::isLiveInBytecode):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::baselineCodeBlockFor):

  • dfg/DFGOSRAvailabilityAnalysisPhase.cpp:

(JSC::DFG::OSRAvailabilityAnalysisPhase::run):

  • dfg/DFGOSRAvailabilityAnalysisPhase.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

  • dfg/DFGResurrectionForValidationPhase.cpp: Added.

(JSC::DFG::ResurrectionForValidationPhase::ResurrectionForValidationPhase):
(JSC::DFG::ResurrectionForValidationPhase::run):
(JSC::DFG::performResurrectionForValidation):

  • dfg/DFGResurrectionForValidationPhase.h: Added.
  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::run):

  • dfg/DFGValueSource.h:

(JSC::DFG::ValueSource::forFlushFormat):

  • dfg/DFGVariableAccessData.h:
  • ftl/FTLExitValue.cpp:

(JSC::FTL::ExitValue::dumpInContext):

  • ftl/FTLInlineCacheSize.cpp:

(JSC::FTL::sizeOfGetById):

  • ftl/FTLLocation.cpp:

(JSC::FTL::Location::gpr):
(JSC::FTL::Location::fpr):
(JSC::FTL::Location::directGPR):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileBlock):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileSetLocal):
(JSC::FTL::LowerDFGToLLVM::compileZombieHint):
(JSC::FTL::LowerDFGToLLVM::compilePutById):
(JSC::FTL::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::LowerDFGToLLVM::initializeOSRExitStateForBlock):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::emitOSRExitCall):
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode):
(JSC::FTL::LowerDFGToLLVM::observeMovHint):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::alloca):

  • ftl/FTLValueSource.cpp: Removed.
  • ftl/FTLValueSource.h: Removed.
  • llvm/LLVMAPIFunctions.h:
  • runtime/DumpContext.cpp:

(JSC::DumpContext::DumpContext):

  • runtime/DumpContext.h:
  • runtime/Options.h:
  • runtime/SymbolTable.h:

(JSC::SharedSymbolTable::captureStart):
(JSC::SharedSymbolTable::captureEnd):
(JSC::SharedSymbolTable::captureCount):

Tools:

Reviewed by Mark Hahnenberg.

  • Scripts/run-jsc-stress-tests:

LayoutTests:

Reviewed by Mark Hahnenberg or Sam Weinig.

I totally added this test after the rest of the patch was r+'d. Under the right tier-up
modes this triggers one of the bugs that the rest of the patch is trying to avoid.

  • js/regress/script-tests/weird-inlining-const-prop.js: Added.

(foo):
(bar):
(fuzz):
(testImpl):
(test):

  • js/regress/weird-inlining-const-prop-expected.txt: Added.
  • js/regress/weird-inlining-const-prop.html: Added.
5:18 PM Changeset in webkit [159393] by ap@apple.com
  • 4 edits
    2 adds in trunk

RSASSA-PKCS1-v1_5 JWK import doesn't check key size
https://bugs.webkit.org/show_bug.cgi?id=124472

Reviewed by Sam Weinig.

Source/WebCore:

Test: crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-small-key.html

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::keySizeIsValid): Added the checks.
(WebCore::JSCryptoKeySerializationJWK::keyDataRSAComponents): Check key size when
importing.
(WebCore::JSCryptoKeySerializationJWK::serialize): Updated a comment.

  • crypto/keys/CryptoKeySerializationRaw.cpp: (WebCore::CryptoKeySerializationRaw::serialize):

Updated a comment.

LayoutTests:

  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-small-key-expected.txt: Added.
  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-small-key.html: Added.
5:17 PM Changeset in webkit [159392] by ap@apple.com
  • 6 edits in trunk

JWK crypto key export result is a DOM string instead of an array buffer
https://bugs.webkit.org/show_bug.cgi?id=124473

Reviewed by Sam Weinig.

Source/WebCore:

  • bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::JSSubtleCrypto::exportKey):

Fix it.

LayoutTests:

  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/hmac-export-key.html:
  • crypto/subtle/resources/common.js: (bytesToASCIIString): Added a function that

converts an ArrayBuffer to a string, assuming it's all ASCII.

5:12 PM Changeset in webkit [159391] by weinig@apple.com
  • 20 edits in trunk/Source/WebCore

LayoutStateMaintainer should use references where possible
https://bugs.webkit.org/show_bug.cgi?id=124471

Reviewed by Dan Bernstein.

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/LayoutState.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::simplifiedLayout):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlock):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::layout):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::pushFlowThreadLayoutState):

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

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::layout):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::layout):

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::layout):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layout):
(WebCore::RenderTableSection::layoutRows):

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::layout):

  • rendering/RenderView.cpp:

(WebCore::RenderView::pushLayoutState):
(WebCore::RenderView::pushLayoutStateForCurrentFlowThread):

  • rendering/RenderView.h:

(WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
(WebCore::LayoutStateMaintainer::push):
(WebCore::LayoutStateMaintainer::pop):

1:41 PM Changeset in webkit [159390] by ap@apple.com
  • 32 edits in trunk/Source

Use uint8_t vectors for WebCrypto data
https://bugs.webkit.org/show_bug.cgi?id=124466

Reviewed by Sam Weinig.

Source/WebCore:

Using Vector<char> for crypto key data is somewhat non-idiomatic, and it gets simply
dangerous for bignums, because signed arithmetic is not appropriate for bignum digits.

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::generateSecWebSocketKey):
(WebCore::WebSocketHandshake::getExpectedWebSocketAccept):
No longer need to cast data to char* here.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:
  • bindings/js/JSCryptoKeySerializationJWK.h:
  • crypto/CryptoDigest.h:
  • crypto/CryptoKey.h:
  • crypto/keys/CryptoKeyAES.cpp:
  • crypto/keys/CryptoKeyAES.h:
  • crypto/keys/CryptoKeyDataOctetSequence.h:
  • crypto/keys/CryptoKeyDataRSAComponents.cpp:
  • crypto/keys/CryptoKeyDataRSAComponents.h:
  • crypto/keys/CryptoKeyHMAC.cpp:
  • crypto/keys/CryptoKeyHMAC.h:
  • crypto/keys/CryptoKeyRSA.h:
  • crypto/keys/CryptoKeySerializationRaw.cpp:
  • crypto/keys/CryptoKeySerializationRaw.h:
  • crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:
  • crypto/mac/CryptoAlgorithmHMACMac.cpp:
  • crypto/mac/CryptoDigestMac.cpp:
  • crypto/mac/CryptoKeyMac.cpp:
  • crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:

Switched to Vector<uint8_t>.

  • crypto/mac/CryptoKeyRSAMac.cpp:

(WebCore::getPublicKeyComponents): Extracted from buildAlgorithmDescription() and simplified.
(WebCore::CryptoKeyRSA::create): Switched to Vector<uint8_t>.
(WebCore::CryptoKeyRSA::buildAlgorithmDescription): No longer need to copy data just
to change type from Vector<char> to Vector<unsigned char>.
(WebCore::bigIntegerToUInt32): Ditto. No longer need to cast types when dealing with the bignum.
(WebCore::CryptoKeyRSA::generatePair): Improved an error message a little.

  • fileapi/FileReaderLoader.cpp: (WebCore::FileReaderLoader::convertToDataURL):
  • inspector/DOMPatchSupport.cpp: (WebCore::DOMPatchSupport::createDigest):
  • inspector/InspectorPageAgent.cpp: (WebCore::InspectorPageAgent::archive):
  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::CGImageToDataURL):

No longer need to cast data to char* here.

Source/WTF:

Binary data can be UTF-8, in which case "char*" is idiomatic, or it can be arbitrary
binary data, in which case "uint8_t*" is more common.

Changed encode functions that took "const char *" to "const void*", and decode
functions that took "Vector<char>&" now take an adapter class.

The adapter relies on Vector<char> and Vector<uint8_t> classes having an identical layout.

  • wtf/text/Base64.cpp:

(WTF::base64Encode):
(WTF::base64URLEncode):
(WTF::base64DecodeInternal):
(WTF::base64Decode):
(WTF::base64URLDecode):

  • wtf/text/Base64.h:

(WTF::SignedOrUnsignedCharVectorAdapter):
(WTF::ConstSignedOrUnsignedCharVectorAdapter):
(WTF::base64Encode):
(WTF::base64URLEncode):

1:37 PM Changeset in webkit [159389] by Antti Koivisto
  • 3 edits
    2 adds in trunk

REGRESSION (r158774): Iteration over element children is broken
https://bugs.webkit.org/show_bug.cgi?id=124145

Source/WebCore:

Reviewed by Anders Carlsson.

Mutation during traversal invalidates the position cache. After the mid-point we start
traversing backwards as it the shortest path. However backward traversal of children-only
HTMLCollection was wrong and would end up going to descendants.

Reduction by yannick.poirier@inverto.tv.

Test: fast/dom/htmlcollection-children-mutation.html

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::collectionTraverseBackward):

Traverse direct children only when m_shouldOnlyIncludeDirectChildren bit is set.

LayoutTests:

Reviewed by Anders Carlsson.

  • fast/dom/htmlcollection-children-mutation-expected.txt: Added.
  • fast/dom/htmlcollection-children-mutation.html: Added.
1:00 PM Changeset in webkit [159388] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the EFL build.

  • UIProcess/efl/PagePolicyClientEfl.cpp:

(WebKit::PagePolicyClientEfl::decidePolicyForResponseCallback): No need to call
WKFrameCanShowMIMEType now that this information is passed in as a parameter.

12:30 PM Changeset in webkit [159387] by mitz@apple.com
  • 19 edits in trunk

No way for policy client to determine if a the response’s MIME type can be shown
https://bugs.webkit.org/show_bug.cgi?id=124445

Reviewed by Sam Weinig.

Source/WebKit2:

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction): Added a fifth message parameter to this template.

  • UIProcess/API/C/WKPage.h: Added a canShowMIMEType parameter to

WKPageDecidePolicyForResponseCallback and deprecated the old version.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(setUpPagePolicyClient): Include whether the response MIME type can be shown under a new key
in the action information dictionary.

  • UIProcess/API/mac/WKBrowsingContextPolicyDelegate.h: Declared

WKActionCanShowMIMETypeKey.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::createInspectorPage): Updated for changes in the policy client.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::decidePolicyForResponse): Added canShowMIMEType parameter, which is
passed to the policy client.
(WebKit::WebPageProxy::decidePolicyForResponseSync): Added canShowMIMEType parameter, which
is passed to the above function.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in: Added canShowMIMEType paramter to

DecidePolicyForResponseSync.

  • UIProcess/WebPolicyClient.cpp:

(WebKit::WebPolicyClient::decidePolicyForResponse): Added canShowMIMEType parameter, which
is passed to the client callback.

  • UIProcess/WebPolicyClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): Determine if the response
MIME type can be shown and pass this information along in the message to the UI process.

Tools:

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(decidePolicyForResponse): Added canShowMIMEType parameter.
(-[WK2BrowserWindowController awakeFromNib]): Updated for changes in the policy client.

  • TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:

(TestWebKitAPI::decidePolicyForResponse): Added canShowMIMEType parameter.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Updated for changes in the policy client.
(WTR::TestController::decidePolicyForResponse): Added canShowMIMEType parameter.

  • WebKitTestRunner/TestController.h:
10:25 AM Changeset in webkit [159386] by zoltan@webkit.org
  • 4 edits
    1 move in trunk/Source/WebCore

Move LineLayoutState.h into rendering/line
<https://webkit.org/b/124458>

Reviewed by Mihnea Ovidenie.

LineLayoutState is a helper class of RenderBlockLineLayout, so I'm moving it into line subdirectory.

No new tests, no behavior change.

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/line/LineLayoutState.h: Renamed from Source/WebCore/rendering/LineLayoutState.h.

(WebCore::FloatWithRect::FloatWithRect):
(WebCore::LineLayoutState::LineLayoutState):
(WebCore::LineLayoutState::lineInfo):
(WebCore::LineLayoutState::endLineLogicalTop):
(WebCore::LineLayoutState::setEndLineLogicalTop):
(WebCore::LineLayoutState::endLine):
(WebCore::LineLayoutState::setEndLine):
(WebCore::LineLayoutState::lastFloat):
(WebCore::LineLayoutState::setLastFloat):
(WebCore::LineLayoutState::floats):
(WebCore::LineLayoutState::floatIndex):
(WebCore::LineLayoutState::setFloatIndex):
(WebCore::LineLayoutState::adjustedLogicalLineTop):
(WebCore::LineLayoutState::setAdjustedLogicalLineTop):
(WebCore::LineLayoutState::flowThread):
(WebCore::LineLayoutState::setFlowThread):
(WebCore::LineLayoutState::endLineMatched):
(WebCore::LineLayoutState::setEndLineMatched):
(WebCore::LineLayoutState::checkForFloatsFromLastLine):
(WebCore::LineLayoutState::setCheckForFloatsFromLastLine):
(WebCore::LineLayoutState::markForFullLayout):
(WebCore::LineLayoutState::isFullLayout):
(WebCore::LineLayoutState::usesRepaintBounds):
(WebCore::LineLayoutState::setRepaintRange):
(WebCore::LineLayoutState::updateRepaintRangeFromBox):

9:29 AM Changeset in webkit [159385] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Simple line path does not respect visibility:hidden
https://bugs.webkit.org/show_bug.cgi?id=124467

Reviewed by Anders Carlsson.

Source/WebCore:

Test: fast/text/text-visibility.html

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::paintFlow):

LayoutTests:

  • fast/text/text-visibility-expected.html: Added.
  • fast/text/text-visibility.html: Added.

Nov 16, 2013:

7:49 PM Changeset in webkit [159384] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix indentation of JSActivation.h.

Rubber stamped by Mark Hahnenberg.

  • runtime/JSActivation.h:
7:41 PM Changeset in webkit [159383] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix indentation of JSVariableObject.h.

Rubber stamped by Mark Hahnenberg.

I'm about to do some damage to this file. I wanted to give it some sanity first.

  • runtime/JSVariableObject.h:
3:19 PM Changeset in webkit [159382] by timothy_horton@apple.com
  • 3 edits
    1 add in trunk/Tools

Checkmarks are shifted down on iPhone at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122909

Reviewed by Timothy Hatcher.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/checkmark.svg: Added.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:

(StatusLineView.prototype.set repeatCount):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:

(.status-line.good .bubble.pictogram):
Use an SVG image instead of an obscure font for the checkboxes so they
render identically on all platforms.

2:28 PM Changeset in webkit [159381] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] Fix build (broken since r159346).
https://bugs.webkit.org/show_bug.cgi?id=124455

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-16
Reviewed by Oliver Hunt.

Fix LLINT implementation for sh4 architecture to handle properly load and store operations with pr register.

  • offlineasm/sh4.rb:
11:14 AM Changeset in webkit [159380] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

WebCrypto no longer uses sequences of ArrayBuffers
https://bugs.webkit.org/show_bug.cgi?id=124451

Build fix.

  • crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::calculateSignature):

Now that the function became shorter, clang realized that a variable was used
uninitialized in an impossible code path.

10:58 AM Changeset in webkit [159379] by ap@apple.com
  • 48 edits in trunk

WebCrypto no longer uses sequences of ArrayBuffers
https://bugs.webkit.org/show_bug.cgi?id=124451

Reviewed by Sam Weinig.

Source/WebCore:

Covered by existing tests.

Changed all operations to take single CryptoOperationData objects.

  • bindings/js/JSCryptoOperationData.cpp:
  • bindings/js/JSCryptoOperationData.h:
  • bindings/js/JSSubtleCryptoCustom.cpp:

(WebCore::JSSubtleCrypto::encrypt):
(WebCore::JSSubtleCrypto::decrypt):
(WebCore::JSSubtleCrypto::sign):
(WebCore::JSSubtleCrypto::verify):
(WebCore::JSSubtleCrypto::digest):

  • crypto/CryptoAlgorithm.cpp:

(WebCore::CryptoAlgorithm::encrypt):
(WebCore::CryptoAlgorithm::decrypt):
(WebCore::CryptoAlgorithm::sign):
(WebCore::CryptoAlgorithm::verify):
(WebCore::CryptoAlgorithm::digest):

  • crypto/CryptoAlgorithm.h:
  • crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):

  • crypto/algorithms/CryptoAlgorithmAES_CBC.h:
  • crypto/algorithms/CryptoAlgorithmHMAC.h:
  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
  • crypto/algorithms/CryptoAlgorithmSHA1.cpp:

(WebCore::CryptoAlgorithmSHA1::digest):

  • crypto/algorithms/CryptoAlgorithmSHA1.h:
  • crypto/algorithms/CryptoAlgorithmSHA224.cpp:

(WebCore::CryptoAlgorithmSHA224::digest):

  • crypto/algorithms/CryptoAlgorithmSHA224.h:
  • crypto/algorithms/CryptoAlgorithmSHA256.cpp:

(WebCore::CryptoAlgorithmSHA256::digest):

  • crypto/algorithms/CryptoAlgorithmSHA256.h:
  • crypto/algorithms/CryptoAlgorithmSHA384.cpp:

(WebCore::CryptoAlgorithmSHA384::digest):

  • crypto/algorithms/CryptoAlgorithmSHA384.h:
  • crypto/algorithms/CryptoAlgorithmSHA512.cpp:

(WebCore::CryptoAlgorithmSHA512::digest):

  • crypto/algorithms/CryptoAlgorithmSHA512.h:
  • crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:

(WebCore::transformAES_CBC):
(WebCore::CryptoAlgorithmAES_CBC::encrypt):
(WebCore::CryptoAlgorithmAES_CBC::decrypt):

  • crypto/mac/CryptoAlgorithmHMACMac.cpp:

(WebCore::calculateSignature):
(WebCore::CryptoAlgorithmHMAC::sign):
(WebCore::CryptoAlgorithmHMAC::verify):

  • crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:

LayoutTests:

Updated tests accordingly.

  • crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-import-jwk.html:
  • crypto/subtle/aes-cbc-wrong-key-class-expected.txt:
  • crypto/subtle/aes-cbc-wrong-key-class.html:
  • crypto/subtle/argument-conversion-expected.txt:
  • crypto/subtle/argument-conversion.html:
  • crypto/subtle/hmac-import-jwk.html:
  • crypto/subtle/hmac-sign-verify-empty-key.html:
  • crypto/subtle/hmac-sign-verify.html:
  • crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html:
  • crypto/subtle/sha-1-expected.txt:
  • crypto/subtle/sha-1.html:
  • crypto/subtle/sha-224-expected.txt:
  • crypto/subtle/sha-224.html:
  • crypto/subtle/sha-256-expected.txt:
  • crypto/subtle/sha-256.html:
  • crypto/subtle/sha-384-expected.txt:
  • crypto/subtle/sha-384.html:
  • crypto/subtle/sha-512-expected.txt:
  • crypto/subtle/sha-512.html:
2:08 AM Changeset in webkit [159378] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove the include of LineWidth.h from SimpleLineLayoutFunctions.cpp
<https://webkit.org/b/124449>

Reviewed by Antti Koivisto.

I removed the include of LineWidth, since SimpleLineLayoutFunctions.cpp doesn't use it.

No new tests, no behavior change.

  • rendering/SimpleLineLayoutFunctions.cpp:

Nov 15, 2013:

11:10 PM Changeset in webkit [159377] by ap@apple.com
  • 18 edits in trunk

Support exporting symmetric keys as JWK
https://bugs.webkit.org/show_bug.cgi?id=124442

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • runtime/JSONObject.h: Export JSONStringify.

Source/WebCore:

Error handling is not consistent yet - some errors cause exceptions, and others
result in rejected promises. This part of spec is incomplete, so I basically did
what was most straightforward in each case.

  • bindings/js/JSCryptoKeySerializationJWK.h:
  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileUsages): Updated a comment with a better link.
(WebCore::JSCryptoKeySerializationJWK::buildJSONForOctetSequence): A helper to building JWK.
(WebCore::JSCryptoKeySerializationJWK::addToJSON): Ditto.
(WebCore::JSCryptoKeySerializationJWK::addBoolToJSON): Ditto.
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): Ditto. The code for
mapping is my best guess, this all needs to be specified.
(WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON): A helper to building JWK.
(WebCore::JSCryptoKeySerializationJWK::serialize): Build a JSON string for the key.

  • bindings/js/JSSubtleCryptoCustom.cpp:

(WebCore::JSSubtleCrypto::importKey): Updated a comment.
(WebCore::JSSubtleCrypto::exportKey): Use CryptoKeySerialization (also for raw keys,
for consistency).

  • crypto/CryptoKey.h:

(WebCore::CryptoKey::algorithmIdentifier):
(WebCore::CryptoKey::usagesBitmap):
Exposed data needed for building JWK (it used to be only exposed in a form suitable
for DOM accessors).

  • crypto/keys/CryptoKeyHMAC.h: Ditto, added an accessor for JWK.
  • crypto/keys/CryptoKeySerializationRaw.cpp: (WebCore::CryptoKeySerializationRaw::serialize):
  • crypto/keys/CryptoKeySerializationRaw.h:

Moved from JSSubtleCryptoCustom.cpp for consistency.

Source/WTF:

Base64URL encoding doesn't use '=' padding, and doesn't need any other options.
Added this mode for encode, and removed policy arguments from exposed functions.

  • wtf/text/Base64.cpp:

(WTF::base64EncodeInternal):
(WTF::base64URLEncode):
(WTF::base64URLDecode):

  • wtf/text/Base64.h:

(WTF::base64URLEncode):

LayoutTests:

  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/hmac-export-key-expected.txt:
  • crypto/subtle/hmac-export-key.html:
7:25 PM Changeset in webkit [159376] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[Win] JavaScript crashes on 64-bit with JIT enabled.
https://bugs.webkit.org/show_bug.cgi?id=124409

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-15
Reviewed by Michael Saboff.

These are issues found with JIT on 64-bit:

  • The registers rsi and rdi in callToJavaScript needs to be saved and restored. This is required by the Windows 64-bit ABI.
  • The getHostCallReturnValue function needs to be updated according to it's GCC counterpart.
  • The poke argument offset needs to be 20h, because Windows 64-bit ABI requires stack space allocated for the 4 argument registers.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Re-added JITStubsMSVC64.asm to project.
  • jit/CCallHelpers.h: Set poke argument offset.

(JSC::CCallHelpers::setupArguments): Compile fix, added needed method.

  • jit/JITStubsMSVC64.asm: Save and restore registers rsi and rdi.

Update getHostCallReturnValue according to the GCC version.

5:32 PM Changeset in webkit [159375] by roger_fong@apple.com
  • 2 edits in trunk/Source/ThirdParty

Unreviewed, gtest project file cleanup.

  • gtest/msvc/gtest-md.vcxproj:
5:28 PM Changeset in webkit [159374] by Simon Fraser
  • 3 edits
    1 delete in trunk/LayoutTests

Make results.html more sane
https://bugs.webkit.org/show_bug.cgi?id=124446

Reviewed by Sam Weinig.

Fix various issues with results.html:

  • make it use page scrolling, not overflow scrolling
  • remove -webkit-flex stuff that wasn't doing anything
  • prettify the floating overlay for flagged tests
  • pull some markup out of the JS and into the HTML
  • remove the self-testing, which provides very little reward.
  • fast/harness/resources/results-test.js: Removed.
  • fast/harness/results-expected.txt:
  • fast/harness/results.html:
5:16 PM Changeset in webkit [159373] by beidson@apple.com
  • 6 edits
    2 adds in trunk/Source/WebCore

Move IDBCursorBackend operations into their own files
https://bugs.webkit.org/show_bug.cgi?id=124444

Reviewed by Tim Horton.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IDBCursorBackend.cpp:
  • Modules/indexeddb/IDBCursorBackend.h:

(WebCore::IDBCursorBackend::cursorType):
(WebCore::IDBCursorBackend::deprecatedBackingStoreCursor):
(WebCore::IDBCursorBackend::deprecatedSetBackingStoreCursor):
(WebCore::IDBCursorBackend::deprecatedSetSavedBackingStoreCursor):

  • Modules/indexeddb/IDBCursorBackendOperations.cpp: Added.

(WebCore::CallOnDestruct::CallOnDestruct):
(WebCore::CallOnDestruct::~CallOnDestruct):
(WebCore::CursorAdvanceOperation::perform):
(WebCore::CursorIterationOperation::perform):
(WebCore::CursorPrefetchIterationOperation::perform):

  • Modules/indexeddb/IDBCursorBackendOperations.h: Added.

(WebCore::CursorIterationOperation::create):
(WebCore::CursorIterationOperation::CursorIterationOperation):
(WebCore::CursorAdvanceOperation::create):
(WebCore::CursorAdvanceOperation::CursorAdvanceOperation):
(WebCore::CursorPrefetchIterationOperation::create):
(WebCore::CursorPrefetchIterationOperation::CursorPrefetchIterationOperation):

5:10 PM Changeset in webkit [159372] by timothy_horton@apple.com
  • 3 edits in trunk/LayoutTests

results.html should have a link to historical results for a test/all failing tests
https://bugs.webkit.org/show_bug.cgi?id=124402

Reviewed by Simon Fraser.

  • fast/harness/results.html:
  • fast/harness/resources/results-test.js:

Add the link to timeout/crash results too.

4:55 PM Changeset in webkit [159371] by ryuan.choi@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed EFL build fix after r159358.

  • UIProcess/efl/PagePolicyClientEfl.cpp:

(WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):

  • UIProcess/efl/PagePolicyClientEfl.h:
4:22 PM Changeset in webkit [159370] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html is slow, frequently > 30 second timeout
https://bugs.webkit.org/show_bug.cgi?id=124373

  • platform/mac/TestExpectations:

Mark test as timeout as well, since that happens sometimes too.

4:11 PM Changeset in webkit [159369] by dfarler@apple.com
  • 4 edits in trunk/Source

Copy ASAN flag settings to WebCore and JavaScriptCore intermediate build tools
https://bugs.webkit.org/show_bug.cgi?id=124362

Reviewed by David Kilzer.

Source/JavaScriptCore:

  • Configurations/ToolExecutable.xcconfig:

Use ASAN_C*FLAGS.

Source/WebCore:

No new tests needed.

  • WebCore.xcodeproj/project.pbxproj:

Use ASAN_C*FLAGS for WebCoreExportFileGenerator.

4:01 PM Changeset in webkit [159368] by jer.noble@apple.com
  • 7 edits in trunk/Source/WebCore

[Mac][AVF] Allow video and audio tracks to be initialized with an AVAssetTrack.
https://bugs.webkit.org/show_bug.cgi?id=124421

Reviewed by Eric Carlson.

Currently, VideoTrackPrivateAVFObjC and AudioTrackPrivateAVFObjC are initialized with an
AVPlayerItemTrack, but most of its methods use the AVAssetTrack wrapped by the
AVPlayerItemTrack. Allow these objects to be alternatively initialized with an AVAssetTrack.

Add factory methods taking an AVAssetTrack:

  • platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:

(WebCore::AudioTrackPrivateAVFObjC::create):

  • platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:

(WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC):
(WebCore::AudioTrackPrivateAVFObjC::setAssetTrack):
(WebCore::AudioTrackPrivateAVFObjC::assetTrack):

  • platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:

(WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC):
(WebCore::VideoTrackPrivateAVFObjC::setAssetTrack):
(WebCore::VideoTrackPrivateAVFObjC::assetTrack):

  • platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h:

Use m_assetTrack instead of [m_playerItemTrack assetTrack]:

  • platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h:

(WebCore::AVTrackPrivateAVFObjCImpl::assetTrack):

  • platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:

(WebCore::AVTrackPrivateAVFObjCImpl::AVTrackPrivateAVFObjCImpl):
(WebCore::AVTrackPrivateAVFObjCImpl::enabled):
(WebCore::AVTrackPrivateAVFObjCImpl::setEnabled):
(WebCore::AVTrackPrivateAVFObjCImpl::audioKind):
(WebCore::AVTrackPrivateAVFObjCImpl::videoKind):
(WebCore::AVTrackPrivateAVFObjCImpl::id):
(WebCore::AVTrackPrivateAVFObjCImpl::label):
(WebCore::AVTrackPrivateAVFObjCImpl::language):
(WebCore::AVTrackPrivateAVFObjCImpl::trackID):

3:50 PM Changeset in webkit [159367] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit/win

Unreviewed Win build fix; setCurrentTime() no longer takes an exception parameter.

  • FullscreenVideoController.cpp:

(FullscreenVideoController::setCurrentTime):

3:47 PM Changeset in webkit [159366] by mhahnenberg@apple.com
  • 2 edits
    2 deletes in trunk/Source/JavaScriptCore

Remove JSChunk
https://bugs.webkit.org/show_bug.cgi?id=124435

Reviewed by Geoffrey Garen.

It's empty and has been since it was added 3 years ago.

  • CMakeLists.txt:
  • runtime/JSChunk.cpp: Removed.
  • runtime/JSChunk.h: Removed.
3:44 PM Changeset in webkit [159365] by beidson@apple.com
  • 9 edits in trunk/Source

Let IDBDatabaseBackend create IDBTransactionBackend's directly
https://bugs.webkit.org/show_bug.cgi?id=124438

Reviewed by Beth Dakin.

Source/WebCore:

Create IDBTransactionBackends directly:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::createTransaction):

  • Modules/indexeddb/IDBDatabaseBackend.h:

Remove maybeCreateTransactionBackend():

  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:

Source/WebKit2:

Remove maybeCreateTransactionBackend():

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
3:42 PM Changeset in webkit [159364] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

Occasionally, hundreds of tests fail with small text diffs on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=124312

Reviewed by Alexey Proskuryakov.

Try reverting the part of r158652 that deleted all of the persistent
defaults, in the thought that there might be some sort of race between
processes causing some settings to be left in the wrong state.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(setDefaultsToConsistentValuesForTesting):

  • WebKitTestRunner/mac/main.mm:

(setDefaultsToConsistentValuesForTesting):

3:38 PM Changeset in webkit [159363] by jer.noble@apple.com
  • 12 edits
    2 deletes in trunk

HTMLMediaElement should not throw an exception from setCurrentTime or fastSeek.
https://bugs.webkit.org/show_bug.cgi?id=124294

Reviewed by Eric Carlson.

Source/WebCore:

Update the seek logic to match the current specification. This means removing exception
throwing from both the .idl and the implementation.

Remove the ExceptionCode parameter from setCurrentTime and fastSeek:

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::fastSeek):
(HTMLMediaElement::seek):
(HTMLMediaElement::seekWithTolerance):
(HTMLMediaElement::setCurrentTime):

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElement.idl:
  • html/MediaController.cpp:

(MediaController::setCurrentTime):

  • html/MediaController.h:
  • html/MediaController.idl:
  • html/MediaControllerInterface.h:

Do not pass in an ExceptionCode placeholder when calling seek:

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::rewind):
(HTMLMediaElement::returnToRealtime):
(HTMLMediaElement::finishSeek):
(HTMLMediaElement::playInternal):
(HTMLMediaElement::mediaPlayerTimeChanged):
(HTMLMediaElement::mediaPlayerDurationChanged):
(HTMLMediaElement::applyMediaFragmentURI):

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElement.idl:
  • html/MediaController.cpp:

(MediaController::bringElementUpToSpeed):

  • html/MediaController.h:
  • html/MediaController.idl:
  • html/MediaControllerInterface.h:
  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::MediaControlSeekButtonElement::seekTimerFired):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlRewindButtonElement::defaultEventHandler):
(WebCore::MediaControlTimelineElement::defaultEventHandler):

  • platform/mac/WebVideoFullscreenHUDWindowController.mm:

(-[WebVideoFullscreenHUDWindowController setCurrentTime:]):

LayoutTests:

  • media/video-seek-no-src-exception-expected.txt: Removed.
  • media/video-seek-no-src-exception.html: Removed.
3:22 PM Changeset in webkit [159362] by beidson@apple.com
  • 11 edits in trunk/Source

Remove last vestiges of IDBBackingStore* from IDBTransactionBackend.
https://bugs.webkit.org/show_bug.cgi?id=124436

Reviewed by Tim Horton.

Source/WebCore:

  • Modules/indexeddb/IDBFactoryBackendInterface.h: Removed createCursorBackend.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Removed createCursorBackend.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Removed createCursorBackend.
  • Modules/indexeddb/IDBCursorBackend.h:
  • Modules/indexeddb/IDBTransactionBackend.cpp:
  • Modules/indexeddb/IDBTransactionBackend.h:
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::openCursor):

Source/WebKit2:

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: Removed createCursorBackend.
  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
3:21 PM Changeset in webkit [159361] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test editing/selection/5057506.html frequently times out on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=124437

  • platform/mac-wk2/TestExpectations:

Mark aforementioned test as a flaky-timeout.

2:47 PM Changeset in webkit [159360] by mhahnenberg@apple.com
  • 15 edits
    2 deletes in trunk/Source

Remove VTableSpectrum
https://bugs.webkit.org/show_bug.cgi?id=124427

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

(JSC::Heap::lastChanceToFinalize):

  • heap/Heap.h:
  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor):

  • heap/SlotVisitor.cpp:

(JSC::visitChildren):

  • heap/SlotVisitor.h:
  • heap/VTableSpectrum.cpp: Removed.
  • heap/VTableSpectrum.h: Removed.

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Source/WTF:

  • wtf/Platform.h:
2:24 PM Changeset in webkit [159359] by beidson@apple.com
  • 9 edits
    2 moves in trunk/Source/WebCore

Make IDBIndexWriter a LevelDB specific concept
https://bugs.webkit.org/show_bug.cgi?id=124434

Reviewed by Tim Horton.

This includes renaming the class and moving it into the leveldb subdirectory.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IDBBackingStoreInterface.h:
  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::IDBBackingStoreLevelDB::makeIndexWriters):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
  • Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBIndexWriter.cpp.

(WebCore::IDBIndexWriterLevelDB::IDBIndexWriterLevelDB):
(WebCore::IDBIndexWriterLevelDB::writeIndexKeys):
(WebCore::IDBIndexWriterLevelDB::verifyIndexKeys):
(WebCore::IDBIndexWriterLevelDB::addingKeyAllowed):

  • Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBIndexWriter.h.

(WebCore::IDBIndexWriterLevelDB::create):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::setIndexKeys):
(WebCore::IDBServerConnectionLevelDB::put):

2:22 PM Changeset in webkit [159358] by mitz@apple.com
  • 20 edits in trunk

Give the policy client the originating frame of a navigation action
https://bugs.webkit.org/show_bug.cgi?id=124431

Reviewed by Anders Carlsson.

Source/WebKit2:

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction): Added a seventh message parameter to this template.

  • Shared/APIClientTraits.cpp: Defined API traits for WKPagePolicyClient, which now has two

versions.

  • Shared/APIClientTraits.h: Declared APIClientTraits<WKPagePolicyClient>.
  • UIProcess/API/C/WKPage.h: Added an originatingFrame parameter to

WKPageDecidePolicyForNavigationActionCallback and deprecated the old version. Bumped the
policy client version to 1.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(setUpPagePolicyClient): Include the originating frame’s URL under the a new key in the
action information dictionary.

  • UIProcess/API/mac/WKBrowsingContextPolicyDelegate.h: Declared

WKActionOriginatingFrameURLKey.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::decidePolicyForNavigationAction): Added originatingFrame parameter.
(WebKit::WebInspectorProxy::createInspectorPage): Updated to the new version of the policy
client interface.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::decidePolicyForNavigationAction): Added originatingFrameID parameter
and passing the originating frame to the policy client.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in: Added originatingFrameID paremeter to

DecidePolicyForNavigationAction.

  • UIProcess/WebPolicyClient.cpp:

(WebKit::WebPolicyClient::decidePolicyForNavigationAction): Added originatingFrame
parameter, which is passed to the client callback.

  • UIProcess/WebPolicyClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Determine the
originating frame for link activation and form submission actions and send its ID in the
DecidePolicyForNavigationAction message.

Tools:

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(decidePolicyForNavigationAction): Added originatingFrame parameter.
(-[WK2BrowserWindowController awakeFromNib]): Updated for the new version of the policy
client.

  • TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp:

(TestWebKitAPI::decidePolicyForNavigationAction): Added originatingFrame parameter.
(TestWebKitAPI::setPagePolicyClient): Updated for the new version of the policy client.

  • TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:

(TestWebKitAPI::decidePolicyForNavigationAction): Added originatingFrame parameter.
(TestWebKitAPI::TEST): Updated for the new version of the policy client.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Updated for the new version of the policy
client.
(WTR::TestController::decidePolicyForNavigationAction): Added originatingFrame parameter.

  • WebKitTestRunner/TestController.h:
2:08 PM Changeset in webkit [159357] by Alexandru Chiculita
  • 12 edits
    13 adds in trunk

Web Inspector: DOM.performSearch should accept a list of context nodes
https://bugs.webkit.org/show_bug.cgi?id=124390

Reviewed by Timothy Hatcher.

Source/WebCore:

Extracted the code in InspectorDOMAgent::performSearch into its own helper class
called InspectorNodeFinder. Also added a new array parameter called "nodeIds"
that can be used to limit the search results to just partial subtrees.

Tests: inspector-protocol/dom/dom-search-crash.html

inspector-protocol/dom/dom-search-with-context.html
inspector-protocol/dom/dom-search.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/protocol/DOM.json:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::performSearch):

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorNodeFinder.cpp: Added.

(WebCore::stripCharacters):
(WebCore::InspectorNodeFinder::InspectorNodeFinder):
(WebCore::InspectorNodeFinder::performSearch):
(WebCore::InspectorNodeFinder::searchUsingDOMTreeTraversal):
(WebCore::InspectorNodeFinder::matchesAttribute):
(WebCore::InspectorNodeFinder::matchesElement):
(WebCore::InspectorNodeFinder::searchUsingXPath):
(WebCore::InspectorNodeFinder::searchUsingCSSSelectors):

  • inspector/InspectorNodeFinder.h: Added.

(WebCore::InspectorNodeFinder::results):

LayoutTests:

Added new inspector-protocol tests to check for the DOM.performSearch implementation.
Also, ported an existing test from the old "inspector" format.

  • http/tests/inspector-protocol/resources/InspectorDOMListener.js: Added boilerplate code that

can be used to track node ids and class names.
(createDOMListener.createNodeAttributesMap):
(createDOMListener.collectNode):
(createDOMListener.onSetChildNodes):
(createDOMListener.onChildNodeRemoved):
(createDOMListener.onChildNodeInserted):
(createDOMListener.return.getNodeById):
(createDOMListener.return.getNodeIdentifier):

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorFrontendAPI.dispatchMessageAsync): Added a way to catch all the messages received in the inspector.
It is useful for debugging the test file.
(InspectorTest.addEventListener): Helper method to register multiple handlers for the same event.

  • inspector-protocol/dom/dom-search-crash-expected.txt: Added.
  • inspector-protocol/dom/dom-search-crash.html: Added.
  • inspector-protocol/dom/dom-search-expected.txt: Added.
  • inspector-protocol/dom/dom-search-with-context-expected.txt: Added.
  • inspector-protocol/dom/dom-search-with-context.html: Added.
  • inspector-protocol/dom/dom-search.html: Added.
  • inspector-protocol/dom/resources/dom-search-crash-iframe.html: Cloned from inspector/dom/resources/dom-search-crash-iframe.html
  • inspector-protocol/dom/resources/dom-search-iframe.html: Added.
  • inspector-protocol/dom/resources/dom-search-queries.js: Added.
2:07 PM Changeset in webkit [159356] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Make lint-test-expectations pass for platform/win

  • platform/win/TestExpectations:

I always kept the stronger expectation in the case of duplicates.

1:59 PM Changeset in webkit [159355] by beidson@apple.com
  • 5 edits in trunk/Source/WebCore

Remove IDBBackingStoreInterface.h includes that are no longer needed
https://bugs.webkit.org/show_bug.cgi?id=124433

Reviewed by Tim Horton.

  • Modules/indexeddb/IDBCursorBackend.cpp:
  • Modules/indexeddb/IDBCursorBackend.h:
  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/IDBTransactionBackend.h:
1:40 PM Changeset in webkit [159354] by zoltan@webkit.org
  • 8 edits
    1 move
    6 adds in trunk/Source/WebCore

Move BreakingContext and LineBreaker into their own files
<https://webkit.org/b/124336>

Reviewed by David Hyatt.

In this change I introduced 'line' subdirectory inside 'rendering', this directory will contain all the classes
which have been refactored from RenderBlockLineLayout.cpp. This change contains the separation of BreakingContext,
and the separation of LineBreaker classes. Since I wanted to keep the helper functions organized, I also added a
new file called LineInlineHeaders.h, which contains the functions which used in LineBreaker.h and BreakingContext.h.
I moved LineInfo class into line directory. It was necessary this time, since I added a cpp for it. I'll move the
rest of the line layout related helper classes later. (I wanted to minimize merge conflicts.)

No new tests, no behavior change.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCoreCommon.props:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::createRun):

  • rendering/line/BreakingContextInlineHeaders.h: Added.

(WebCore::WordMeasurement::WordMeasurement):
(WebCore::TrailingObjects::TrailingObjects):
(WebCore::TrailingObjects::setTrailingWhitespace):
(WebCore::TrailingObjects::clear):
(WebCore::TrailingObjects::appendBoxIfNeeded):
(WebCore::deprecatedAddMidpoint):
(WebCore::startIgnoringSpaces):
(WebCore::stopIgnoringSpaces):
(WebCore::ensureLineBoxInsideIgnoredSpaces):
(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
(WebCore::BreakingContext::BreakingContext):
(WebCore::BreakingContext::currentObject):
(WebCore::BreakingContext::lineBreak):
(WebCore::BreakingContext::lineBreakRef):
(WebCore::BreakingContext::lineWidth):
(WebCore::BreakingContext::atEnd):
(WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
(WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
(WebCore::BreakingContext::initializeForCurrentObject):
(WebCore::BreakingContext::increment):
(WebCore::BreakingContext::handleBR):
(WebCore::borderPaddingMarginStart):
(WebCore::borderPaddingMarginEnd):
(WebCore::shouldAddBorderPaddingMargin):
(WebCore::previousInFlowSibling):
(WebCore::inlineLogicalWidth):
(WebCore::BreakingContext::handleOutOfFlowPositioned):
(WebCore::BreakingContext::handleFloat):
(WebCore::shouldSkipWhitespaceAfterStartObject):
(WebCore::BreakingContext::handleEmptyInline):
(WebCore::BreakingContext::handleReplaced):
(WebCore::firstPositiveWidth):
(WebCore::updateSegmentsForShapes):
(WebCore::iteratorIsBeyondEndOfRenderCombineText):
(WebCore::nextCharacter):
(WebCore::updateCounterIfNeeded):
(WebCore::measureHyphenWidth):
(WebCore::textWidth):
(WebCore::ensureCharacterGetsLineBox):
(WebCore::tryHyphenating):
(WebCore::BreakingContext::handleText):
(WebCore::textBeginsWithBreakablePosition):
(WebCore::BreakingContext::canBreakAtThisPosition):
(WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
(WebCore::checkMidpoints):
(WebCore::BreakingContext::handleEndOfLine):

  • rendering/line/LineBreaker.cpp: Added.

(WebCore::LineBreaker::reset):
(WebCore::LineBreaker::skipTrailingWhitespace):
(WebCore::LineBreaker::skipLeadingWhitespace):

  • rendering/line/LineBreaker.h: Added.

(WebCore::LineBreaker::LineBreaker):
(WebCore::LineBreaker::lineWasHyphenated):
(WebCore::LineBreaker::positionedObjects):
(WebCore::LineBreaker::clear):

  • rendering/line/LineInfo.cpp: Added.

(WebCore::LineInfo::setEmpty):

  • rendering/line/LineInfo.h: Renamed from Source/WebCore/rendering/LineInfo.h.

(WebCore::LineInfo::LineInfo):
(WebCore::LineInfo::isFirstLine):
(WebCore::LineInfo::isLastLine):
(WebCore::LineInfo::isEmpty):
(WebCore::LineInfo::previousLineBrokeCleanly):
(WebCore::LineInfo::floatPaginationStrut):
(WebCore::LineInfo::runsFromLeadingWhitespace):
(WebCore::LineInfo::resetRunsFromLeadingWhitespace):
(WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
(WebCore::LineInfo::setFirstLine):
(WebCore::LineInfo::setLastLine):
(WebCore::LineInfo::setPreviousLineBrokeCleanly):
(WebCore::LineInfo::setFloatPaginationStrut):

  • rendering/line/LineInlineHeaders.h: Added.

(WebCore::hasInlineDirectionBordersPaddingOrMargin):
(WebCore::lineStyle):
(WebCore::requiresLineBoxForContent):
(WebCore::shouldCollapseWhiteSpace):
(WebCore::skipNonBreakingSpace):
(WebCore::alwaysRequiresLineBox):
(WebCore::requiresLineBox):
(WebCore::setStaticPositions):

12:57 PM Changeset in webkit [159353] by beidson@apple.com
  • 16 edits in trunk/Source

Move execution of IDBTransactionBackendOperations to the IDBServerConnection
https://bugs.webkit.org/show_bug.cgi?id=124385

Reviewed by Tim Horton.

Source/WebCore:

Each IDBOperation has it’s ::perform() moved to a method on IDBServerConnection.
This almost removes all knowledge of the backing stores from the front end.

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::clearObjectStore):
(WebCore::IDBDatabaseBackend::runIntVersionChangeTransaction):

  • Modules/indexeddb/IDBDatabaseBackend.h:
  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::clear):

Add methods to reflect each transaction backend operation:

  • Modules/indexeddb/IDBServerConnection.h:

Schedule certain operations with callbacks:

  • Modules/indexeddb/IDBTransactionBackend.cpp:

(WebCore::IDBTransactionBackend::scheduleVersionChangeOperation):
(WebCore::IDBTransactionBackend::schedulePutOperation):
(WebCore::IDBTransactionBackend::scheduleOpenCursorOperation):
(WebCore::IDBTransactionBackend::scheduleCountOperation):
(WebCore::IDBTransactionBackend::scheduleDeleteRangeOperation):
(WebCore::IDBTransactionBackend::scheduleClearObjectStoreOperation):

  • Modules/indexeddb/IDBTransactionBackend.h:

Make each operation’s perform() method defer to the IDBServerConnection (with a callback):

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::CreateObjectStoreOperation::perform):
(WebCore::CreateIndexOperation::perform):
(WebCore::CreateIndexAbortOperation::perform):
(WebCore::DeleteIndexOperation::perform):
(WebCore::DeleteIndexAbortOperation::perform):
(WebCore::GetOperation::perform):
(WebCore::PutOperation::perform):
(WebCore::SetIndexesReadyOperation::perform):
(WebCore::OpenCursorOperation::perform):
(WebCore::CountOperation::perform):
(WebCore::DeleteRangeOperation::perform):
(WebCore::ClearObjectStoreOperation::perform):
(WebCore::DeleteObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform):
(WebCore::CreateObjectStoreAbortOperation::perform):

Add accessors to each operation’s data members so the IDBServerConnection has everything it needs:

  • Modules/indexeddb/IDBTransactionBackendOperations.h:

(WebCore::CreateObjectStoreOperation::objectStoreMetadata):
(WebCore::DeleteObjectStoreOperation::objectStoreMetadata):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::create):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::version):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::callbacks):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::databaseCallbacks):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::VersionChangeOperation):
(WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
(WebCore::CreateIndexOperation::objectStoreID):
(WebCore::CreateIndexOperation::idbIndexMetadata):
(WebCore::CreateIndexOperation::CreateIndexOperation):
(WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
(WebCore::DeleteIndexOperation::objectStoreID):
(WebCore::DeleteIndexOperation::idbIndexMetadata):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
(WebCore::GetOperation::objectStoreID):
(WebCore::GetOperation::indexID):
(WebCore::GetOperation::cursorType):
(WebCore::GetOperation::keyRange):
(WebCore::GetOperation::callbacks):
(WebCore::GetOperation::autoIncrement):
(WebCore::GetOperation::keyPath):
(WebCore::GetOperation::GetOperation):
(WebCore::PutOperation::create):
(WebCore::PutOperation::putMode):
(WebCore::PutOperation::objectStore):
(WebCore::PutOperation::key):
(WebCore::PutOperation::indexIDs):
(WebCore::PutOperation::indexKeys):
(WebCore::PutOperation::callbacks):
(WebCore::PutOperation::value):
(WebCore::PutOperation::PutOperation):
(WebCore::OpenCursorOperation::create):
(WebCore::OpenCursorOperation::objectStoreID):
(WebCore::OpenCursorOperation::indexID):
(WebCore::OpenCursorOperation::direction):
(WebCore::OpenCursorOperation::cursorType):
(WebCore::OpenCursorOperation::taskType):
(WebCore::OpenCursorOperation::keyRange):
(WebCore::OpenCursorOperation::cursorDirection):
(WebCore::OpenCursorOperation::callbacks):
(WebCore::OpenCursorOperation::OpenCursorOperation):
(WebCore::CountOperation::create):
(WebCore::CountOperation::objectStoreID):
(WebCore::CountOperation::indexID):
(WebCore::CountOperation::keyRange):
(WebCore::CountOperation::callbacks):
(WebCore::CountOperation::CountOperation):
(WebCore::DeleteRangeOperation::create):
(WebCore::DeleteRangeOperation::objectStoreID):
(WebCore::DeleteRangeOperation::callbacks):
(WebCore::DeleteRangeOperation::keyRange):
(WebCore::DeleteRangeOperation::DeleteRangeOperation):
(WebCore::ClearObjectStoreOperation::create):
(WebCore::ClearObjectStoreOperation::objectStoreID):
(WebCore::ClearObjectStoreOperation::callbacks):
(WebCore::ClearObjectStoreOperation::ClearObjectStoreOperation):

Implement each operation in terms of the appropriate backing store, then perform the callback:

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::createObjectStore):
(WebCore::IDBServerConnectionLevelDB::createIndex):
(WebCore::IDBServerConnectionLevelDB::deleteIndex):
(WebCore::IDBServerConnectionLevelDB::get):
(WebCore::IDBServerConnectionLevelDB::put):
(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::count):
(WebCore::IDBServerConnectionLevelDB::deleteRange):
(WebCore::IDBServerConnectionLevelDB::clearObjectStore):
(WebCore::IDBServerConnectionLevelDB::deleteObjectStore):
(WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
12:28 PM Changeset in webkit [159352] by timothy_horton@apple.com
  • 5 edits
    1 add in trunk/Tools

build.webkit.org/dashboard should provide a way to focus on a subset of bots
https://bugs.webkit.org/show_bug.cgi?id=122676

Reviewed by Timothy Hatcher.

Add a small 'hide' button next to every platform logo, and a 'show all'
button which only appears when at least one platform is hidden. Hidden
platforms persist using localStorage.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:

(updateHiddenPlatforms):
(documentReady.unhideButton):
(documentReady.hideButton):
(documentReady):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js: Added.

(Settings.prototype.setObject):
(Settings.prototype.getObject):
(Settings.prototype.addSettingListener):
(Settings.prototype.fireSettingListener):
(Settings.prototype.toggleHiddenPlatform):
(Settings.prototype.clearHiddenPlatforms):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

(div.cellButton):
(div.cellButton.hide):
(.hidden):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
11:53 AM Changeset in webkit [159351] by mhahnenberg@apple.com
  • 14 edits
    1 add in trunk/Source/JavaScriptCore

-dealloc callbacks from wrapped Objective-C objects can happen at bad times
https://bugs.webkit.org/show_bug.cgi?id=123821

Reviewed by Darin Adler.

Currently with the JSC Obj-C API, JS wrappers for client Obj-C objects retain their associated Obj-C
object. When they are swept, they release their Obj-C objects which can trigger a call to that
object's -dealloc method. These -dealloc methods can then call back into the same VM, which is not
allowed during sweeping or VM shutdown.

We can handle this case by creating our own pool of Obj-C objects to be released when it is safe to do so.
This is accomplished by using DelayedReleaseScope, an RAII-style object that will retain all objects
that are unsafe to release until the end of the DelayedReleaseScope.

  • API/APIShims.h:

(JSC::APICallbackShim::APICallbackShim):
(JSC::APICallbackShim::vmForDropAllLocks):
(JSC::APICallbackShim::execForDropAllLocks):

  • API/JSAPIWrapperObject.mm:

(JSAPIWrapperObjectHandleOwner::finalize):

  • API/ObjCCallbackFunction.mm:

(JSC::ObjCCallbackFunctionImpl::destroy):
(JSC::ObjCCallbackFunction::destroy):

  • API/tests/testapi.mm:

(-[TinyDOMNode initWithVirtualMachine:]):
(-[TinyDOMNode dealloc]):
(-[TinyDOMNode appendChild:]):
(-[TinyDOMNode removeChildAtIndex:]):
(-[EvilAllocationObject initWithContext:]):
(-[EvilAllocationObject dealloc]):
(-[EvilAllocationObject doEvilThingsWithContext:]):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • heap/DelayedReleaseScope.h: Added.

(JSC::DelayedReleaseScope::DelayedReleaseScope):
(JSC::DelayedReleaseScope::~DelayedReleaseScope):
(JSC::DelayedReleaseScope::releaseSoon):
(JSC::MarkedSpace::releaseSoon):

  • heap/Heap.cpp:

(JSC::Heap::collectAllGarbage):

  • heap/Heap.h:

(JSC::Heap::releaseSoon):

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::allocateSlowCase):

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):
(JSC::MarkedSpace::lastChanceToFinalize):
(JSC::MarkedSpace::sweep):

  • heap/MarkedSpace.h:
11:51 AM Changeset in webkit [159350] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test fast/dom/Geolocation/notimer-after-unload.html is flaky and crashy on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=124425

  • platform/mac-wk2/TestExpectations:

Mark as crash/pass/fail, since it does all three :(

11:34 AM Changeset in webkit [159349] by commit-queue@webkit.org
  • 11 edits
    1 add in trunk

Modifying RTCIceCandidate object construction to match the spec
https://bugs.webkit.org/show_bug.cgi?id=124369

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

According to the spec the RTCIceCandidateInit parameter in RTCSessionDescription constructor is optional,
which must not be nullable, and, if passed, must be a valid Dictionary. If the keys are not present, the string
object that stores them in the RTCIceCandidate class, must be null in those cases. Also, if a key is present
and its value is not valid an exception must be raised.

Source/WebCore:

Existing test was updated.

  • GNUmakefile.list.am:
  • Modules/mediastream/RTCIceCandidate.cpp:

(WebCore::RTCIceCandidate::create):

  • Modules/mediastream/RTCIceCandidate.idl:
  • UseJSC.cmake:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSRTCIceCandidateCustom.cpp: Added.

(WebCore::JSRTCIceCandidateConstructor::constructJSRTCIceCandidate):

LayoutTests:

  • fast/mediastream/RTCIceCandidate-expected.txt:
  • fast/mediastream/RTCIceCandidate.html:
11:30 AM Changeset in webkit [159348] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test webgl/1.0.2/conformance/ogles/GL/tan/tan_001_to_006.html fails on Intel
https://bugs.webkit.org/show_bug.cgi?id=124424

  • platform/mac/TestExpectations:

Mark as flaky everywhere, since I have no way to mark it as failing on Intel
and passing elsewhere.

11:21 AM Changeset in webkit [159347] by commit-queue@webkit.org
  • 49 edits
    6 adds
    19 deletes in trunk

Unreviewed, rolling out r159337.
http://trac.webkit.org/changeset/159337
https://bugs.webkit.org/show_bug.cgi?id=124423

broke a bunch of fast/regions tests on EFL/GTK (Requested by
philn on #webkit).

Source/WebCore:

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::setLayoutOverflow):
(WebCore::InlineFlowBox::setVisualOverflow):

  • rendering/InlineFlowBox.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addOverflowFromChildren):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::estimateRegionRangeForBoxChild):
(WebCore::RenderBlock::updateRegionRangeForBoxChild):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::hasNextPage):
(WebCore::RenderBlockFlow::relayoutForPagination):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::positionNewFloatOnLine):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::borderBoxRectInRegion):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::addLayoutOverflow):
(WebCore::RenderBox::addVisualOverflow):
(WebCore::RenderBox::isUnsplittableForPagination):
(WebCore::RenderBox::overflowRectForPaintRejection):

  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderBoxRegionInfo.h:

(WebCore::RenderBoxRegionInfo::createOverflow):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::paintFlowThreadPortionInRegion):
(WebCore::RenderFlowThread::hitTestFlowThreadPortionInRegion):
(WebCore::RenderFlowThread::checkRegionsWithStyling):
(WebCore::RenderFlowThread::mapFromLocalToFlowThread):
(WebCore::RenderFlowThread::mapFromFlowThreadToLocal):
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):
(WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):

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

(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::calculateRects):
(WebCore::RenderLayer::intersectsDamageRect):
(WebCore::RenderLayer::repaintIncludingDescendants):

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

(WebCore::RenderLayerCompositor::computeCompositingRequirements):

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::addOverflowFromChildren):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
(WebCore::RenderMultiColumnSet::repaintFlowThreadContent):

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

(WebCore::RenderNamedFlowFragment::createStyle):

  • rendering/RenderNamedFlowFragment.h:
  • rendering/RenderOverflow.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::flowThreadPortionOverflowRect):
(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
(WebCore::shouldPaintRegionContentsInPhase):
(WebCore::RenderRegion::paintObject):
(WebCore::RenderRegion::hitTestContents):
(WebCore::RenderRegion::computeOverflowFromFlowThread):
(WebCore::RenderRegion::repaintFlowThreadContent):
(WebCore::RenderRegion::repaintFlowThreadContentRectangle):
(WebCore::RenderRegion::insertedIntoTree):
(WebCore::RenderRegion::ensureOverflowForBox):
(WebCore::RenderRegion::rectFlowPortionForBox):
(WebCore::RenderRegion::addLayoutOverflowForBox):
(WebCore::RenderRegion::addVisualOverflowForBox):
(WebCore::RenderRegion::layoutOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):

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

(WebCore::RenderReplaced::shouldPaint):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::paint):

LayoutTests:

  • fast/regions/bottom-overflow-out-of-first-region-expected.html:
  • fast/regions/bottom-overflow-out-of-first-region.html:
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html:
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html:
  • fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt:
  • fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt:
  • fast/regions/element-inflow-fixed-from-outflow-static-expected.txt:
  • fast/regions/element-outflow-static-from-inflow-fixed-expected.txt:
  • fast/regions/float-pushed-width-change-2-expected.html:
  • fast/regions/float-pushed-width-change-2.html:
  • fast/regions/float-pushed-width-change-expected.html:
  • fast/regions/float-pushed-width-change.html:
  • fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Removed.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Removed.
  • fast/regions/outline-sides-in-region-expected.html:
  • fast/regions/outline-sides-in-region.html:
  • fast/regions/overflow-first-and-last-regions-expected.html: Removed.
  • fast/regions/overflow-first-and-last-regions-in-container-hidden-expected.html: Removed.
  • fast/regions/overflow-first-and-last-regions-in-container-hidden.html: Removed.
  • fast/regions/overflow-first-and-last-regions.html: Removed.
  • fast/regions/overflow-last-region-expected.html: Added.
  • fast/regions/overflow-last-region.html: Added.
  • fast/regions/overflow-nested-regions-expected.html: Removed.
  • fast/regions/overflow-nested-regions.html: Removed.
  • fast/regions/overflow-region-float-expected.html: Removed.
  • fast/regions/overflow-region-float.html: Removed.
  • fast/regions/overflow-region-inline-expected.html: Removed.
  • fast/regions/overflow-region-inline.html: Removed.
  • fast/regions/overflow-region-transform-expected.html: Removed.
  • fast/regions/overflow-region-transform.html: Removed.
  • fast/regions/overflow-scrollable-rotated-fragment-expected.html:
  • fast/regions/overflow-scrollable-rotated-fragment.html:
  • fast/regions/top-overflow-out-of-second-region-expected.html: Removed.
  • fast/regions/top-overflow-out-of-second-region.html:
  • fast/regions/webkit-flow-float-unable-to-push-expected.html:
  • fast/regions/webkit-flow-float-unable-to-push.html:
  • fast/repaint/increasing-region-content-height-expected.txt:
  • fast/repaint/increasing-region-content-height.html:
  • platform/gtk/fast/regions/text-region-split-vertical-rl-expected.txt: Added.
  • platform/mac-wk2/TestExpectations:
  • platform/mac/fast/regions/top-overflow-out-of-second-region-expected.png: Added.
  • platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt: Added.
11:07 AM Changeset in webkit [159346] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

REGRESSION (r158586): callToJavaScript needs to save return PC to Sentinel frame
https://bugs.webkit.org/show_bug.cgi?id=124420

Reviewed by Filip Pizlo.

Save the return PC into the sentinel frame.

  • jit/JITStubsMSVC64.asm:
  • jit/JITStubsX86.h:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
10:32 AM Changeset in webkit [159345] by Antti Koivisto
  • 6 edits
    2 adds in trunk

Hovering over text using simple line path should not cause switch to line boxes
https://bugs.webkit.org/show_bug.cgi?id=124418

Reviewed by Anders Carlsson.

Source/WebCore:

Test: fast/text/simple-lines-hover.html

  • rendering/RenderText.cpp:

(WebCore::RenderText::absoluteRects):
(WebCore::RenderText::absoluteQuadsClippedToEllipsis):
(WebCore::RenderText::absoluteQuads):

Collect quads and rects directly from simple lines without requiring the line box switch.

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::collectTextAbsoluteRects):
(WebCore::SimpleLineLayout::collectTextAbsoluteQuads):

Add these.

  • rendering/SimpleLineLayoutFunctions.h:
  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::RunResolver::Run::start):
(WebCore::SimpleLineLayout::RunResolver::Run::end):

For future use.

LayoutTests:

  • fast/text/simple-lines-hover-expected.html: Added.
  • fast/text/simple-lines-hover.html: Added.
10:06 AM Changeset in webkit [159344] by zoltan@webkit.org
  • 3 edits in trunk/LayoutTests

[CSS Shapes][CSS Regions] Simplify shape-inside-on-multiple-regions-with-negative-shape-top.html
https://bugs.webkit.org/show_bug.cgi?id=123808

Reviewed by Mihnea Ovidenie.

Use a rectangle instead of a complex polygon in the test.

  • fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top-expected.html:
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html:
10:03 AM Changeset in webkit [159343] by jer.noble@apple.com
  • 5 edits in trunk

MediaTime addition and subtraction operators have errors when the rhs is infinite.
https://bugs.webkit.org/show_bug.cgi?id=124413

Reviewed by Eric Carlson.

Source/WTF:

Correctly account for infinities that can occur on the right-hand side of addition or
subtraction operators.

  • wtf/MediaTime.cpp:

(WTF::MediaTime::operator+):
(WTF::MediaTime::operator-):

Tools:

Add a test for operator+ and operator- where an infinite value appears
on the right-hand side:

  • TestWebKitAPI/Tests/WTF/MediaTime.cpp:

(TestWebKitAPI::TEST):

Add a LLDB summary provider for MediaTime which displays the rational
time as well as the value in seconds:

  • lldb/lldb_webkit.py:

(lldb_init_module):
(WTFMediaTime_SummaryProvider):
(WTFHashTableProvider.has_children):
(WTFMediaTimeProvider):
(WTFMediaTimeProvider.
init):
(WTFMediaTimeProvider.timeValue):
(WTFMediaTimeProvider.timeScale):
(WTFMediaTimeProvider.isInvalid):
(WTFMediaTimeProvider.isPositiveInfinity):
(WTFMediaTimeProvider.isNegativeInfinity):
(WTFMediaTimeProvider.isIndefinite):

9:47 AM Changeset in webkit [159342] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

Make it possible to select revision numbers on build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=124400

Reviewed by Timothy Hatcher.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

(BuildbotQueueView.prototype.revisionLinksForIteration):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

(.selectable):
Add a child span to the trac link, which has '-webkit-user-select: all' on it.
This way, a Dashboard user can highlight revision numbers for easy copying,
and doesn't even have to be precise about the selection.

9:44 AM Changeset in webkit [159341] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Add failure test expectations for failing tests.

  • platform/efl/TestExpectations:
9:42 AM Changeset in webkit [159340] by timothy_horton@apple.com
  • 3 edits in trunk/LayoutTests

results.html should have a link to historical results for a test/all failing tests
https://bugs.webkit.org/show_bug.cgi?id=124402

Reviewed by Simon Fraser.

  • fast/harness/results.html:

Add a new rightmost column, 'history'.
Clicking on the column header will open the flakiness dashboard
for the entire set of failing tests; clicking on the link
in a particular test's row will open it just for that single test.

  • fast/harness/resources/results-test.js:

Update the harness test to expect the new number of columns.

9:32 AM Changeset in webkit [159339] by timothy_horton@apple.com
  • 4 edits
    2 adds in trunk/Tools

Adjust and add retina versions of EFL and GTK build.webkit.org/dashboard icons
https://bugs.webkit.org/show_bug.cgi?id=124399

Reviewed by Gustavo Noronha Silva.

Add new EFL and GTK icons (derived from Wikipedia's SVGs) to make new 1x and 2x icons,
with the icons adjusted to have solid backgrounds, to not be squished, and to not
intersect the ring, similar to the Mac icons.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL.png:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL@2x.png: Added.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK.png:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK@2x.png: Added.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:

(documentReady.hideButton):
(documentReady):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

(table.queue-grid tr.platform.linux-gtk img.logo):
(table.queue-grid tr.platform.linux-efl img.logo):

8:15 AM Changeset in webkit [159338] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fixed incorrectly placed NETWORK_PROCESS guard in NetworkConnectionToWebProcess.cpp
https://bugs.webkit.org/show_bug.cgi?id=124398

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-15
Reviewed by Brady Eidson.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:
7:34 AM Changeset in webkit [159337] by stavila@adobe.com
  • 49 edits
    1 copy
    18 adds
    5 deletes in trunk

[CSS Regions] Implement visual overflow for first & last regions
https://bugs.webkit.org/show_bug.cgi?id=118665

Source/WebCore:

In order to properly propagate the visual overflow of elements flowed inside regions,
the responsiblity of painting and hit-testing content inside flow threads has been
moved to the flow thread layer's level.
Each region keeps the associated overflow with each box in the RenderBoxRegionInfo
structure, including one for the flow thread itself. This data is used during
painting and hit-testing.

Reviewed by David Hyatt.

Tests: fast/regions/overflow-first-and-last-regions-in-container-hidden.html

fast/regions/overflow-first-and-last-regions.html
fast/regions/overflow-nested-regions.html
fast/regions/overflow-region-float.html
fast/regions/overflow-region-inline.html
fast/regions/overflow-region-transform.html

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::setLayoutOverflow):
(WebCore::InlineFlowBox::setVisualOverflow):

  • rendering/InlineFlowBox.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addOverflowFromChildren):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::estimateRegionRangeForBoxChild):
(WebCore::RenderBlock::updateRegionRangeForBoxChild):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::hasNextPage):
(WebCore::RenderBlockFlow::relayoutForPagination):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::positionNewFloatOnLine):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::borderBoxRectInRegion):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::addLayoutOverflow):
(WebCore::RenderBox::addVisualOverflow):
(WebCore::RenderBox::isUnsplittableForPagination):
(WebCore::RenderBox::overflowRectForPaintRejection):

  • rendering/RenderBox.h:

(WebCore::RenderBox::canHaveOutsideRegionRange):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderBoxRegionInfo.h:

(WebCore::RenderBoxRegionInfo::createOverflow):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::objectShouldPaintInFlowRegion):
(WebCore::RenderFlowThread::mapFromLocalToFlowThread):
(WebCore::RenderFlowThread::mapFromFlowThreadToLocal):
(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
(WebCore::RenderFlowThread::flipForWritingModeLocalCoordinates):
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):
(WebCore::RenderFlowThread::addRegionsVisualOverflow):
(WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):

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

(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForRegionAndReflection):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::calculateRects):
(WebCore::RenderLayer::intersectsDamageRect):
(WebCore::RenderLayer::updateDescendantsLayerListsIfNeeded):
(WebCore::RenderLayer::repaintIncludingDescendants):
(WebCore::RenderLayer::paintNamedFlowThreadInsideRegion):
(WebCore::RenderLayer::paintFlowThreadIfRegion):
(WebCore::RenderLayer::hitTestFlowThreadIfRegion):

  • rendering/RenderLayer.h:

(WebCore::ClipRect::inflateX):
(WebCore::ClipRect::inflateY):
(WebCore::ClipRect::inflate):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::addOverflowFromChildren):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
(WebCore::RenderMultiColumnSet::repaintFlowThreadContent):

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

(WebCore::RenderNamedFlowFragment::createStyle):
(WebCore::RenderNamedFlowFragment::namedFlowThread):

  • rendering/RenderNamedFlowFragment.h:
  • rendering/RenderOverflow.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::flowThreadPortionOverflowRect):
(WebCore::RenderRegion::flowThreadPortionLocation):
(WebCore::RenderRegion::regionContainerLayer):
(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
(WebCore::RenderRegion::computeOverflowFromFlowThread):
(WebCore::RenderRegion::repaintFlowThreadContent):
(WebCore::RenderRegion::repaintFlowThreadContentRectangle):
(WebCore::RenderRegion::insertedIntoTree):
(WebCore::RenderRegion::ensureOverflowForBox):
(WebCore::RenderRegion::rectFlowPortionForBox):
(WebCore::RenderRegion::addLayoutOverflowForBox):
(WebCore::RenderRegion::addVisualOverflowForBox):
(WebCore::RenderRegion::layoutOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):

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

(WebCore::RenderReplaced::shouldPaint):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::paint):

LayoutTests:

Rebased some tests due to regions layers changes.
Updated some tests to increase clarity. Some of them were only passing because two
regions were close together and the fact that an element was being painted
inside the wrong region was not visible. Floats are now also unsplittable.

  • bottom-overflow-out-of-first-region
  • float-pushed-width-change-2
  • float-pushed-width-change
  • webkit-flow-float-unable-to-push

Changed top-overflow-out-of-second-region to reftest.

Added new tests for testing the visual overflow in different situations
(transformed, inline, opacity, floating).

Reviewed by David Hyatt.

  • fast/regions/bottom-overflow-out-of-first-region-expected.html:
  • fast/regions/bottom-overflow-out-of-first-region.html:
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html:
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html:
  • fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt:
  • fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt:
  • fast/regions/element-inflow-fixed-from-outflow-static-expected.txt:
  • fast/regions/element-outflow-static-from-inflow-fixed-expected.txt:
  • fast/regions/float-pushed-width-change-2-expected.html:
  • fast/regions/float-pushed-width-change-2.html:
  • fast/regions/float-pushed-width-change-expected.html:
  • fast/regions/float-pushed-width-change.html:
  • fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Added.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Added.
  • fast/regions/outline-sides-in-region-expected.html:
  • fast/regions/outline-sides-in-region.html:
  • fast/regions/overflow-first-and-last-regions-expected.html: Added.
  • fast/regions/overflow-first-and-last-regions-in-container-hidden-expected.html: Added.
  • fast/regions/overflow-first-and-last-regions-in-container-hidden.html: Added.
  • fast/regions/overflow-first-and-last-regions.html: Added.
  • fast/regions/overflow-last-region-expected.html: Removed.
  • fast/regions/overflow-last-region.html: Removed.
  • fast/regions/overflow-nested-regions-expected.html: Added.
  • fast/regions/overflow-nested-regions.html: Added.
  • fast/regions/overflow-region-float-expected.html: Added.
  • fast/regions/overflow-region-float.html: Added.
  • fast/regions/overflow-region-inline-expected.html: Added.
  • fast/regions/overflow-region-inline.html: Added.
  • fast/regions/overflow-region-transform-expected.html: Added.
  • fast/regions/overflow-region-transform.html: Added.
  • fast/regions/overflow-scrollable-rotated-fragment-expected.html:
  • fast/regions/overflow-scrollable-rotated-fragment.html:
  • fast/regions/top-overflow-out-of-second-region-expected.html: Copied from LayoutTests/fast/regions/top-overflow-out-of-second-region.html.
  • fast/regions/top-overflow-out-of-second-region.html:
  • fast/regions/webkit-flow-float-unable-to-push-expected.html:
  • fast/regions/webkit-flow-float-unable-to-push.html:
  • platform/gtk/fast/regions/text-region-split-vertical-rl-expected.txt: Removed.
  • platform/mac-wk2/TestExpectations:
  • platform/mac/fast/regions/top-overflow-out-of-second-region-expected.png: Removed.
  • platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
7:31 AM Changeset in webkit [159336] by Michał Pakuła vel Rutka
  • 3 edits in trunk/LayoutTests

Unreviewed EFL gardening

Update TestExpectations files with failing tests.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
7:05 AM Changeset in webkit [159335] by commit-queue@webkit.org
  • 9 edits
    6 adds in trunk

[GStreamer] Add support for Media Source API
https://bugs.webkit.org/show_bug.cgi?id=99065

Source/WebCore:

The patch integrate a Media Source player for the GStreamer backend. The implementented architecture is:

  • MediaPlayerPrivateGStreamer engine is modified to support Media Source URIs (change blob:// to mediasourceblob://), in addition to the existing support for web (http/https/blob) URIs
  • Similar to the existing WebKitWebSrc gstreamer element that handles web URIs, a new gstreamer element named WebKitMediaSrc is implemented to handle Media Source URIs
  • WebKitMediaSrc registers its URI protocol handler, allowing uridecodebin to dynamically create the appropriate source element.
  • The WebKitMediaSrc element creates a bin with 2 appsrc: One for Audio and One for Video. Pads are dynamically linked at the reception of first video and audio buffers.

Patch by Stephane Jadaud <sjadaud@sii.fr> on 2013-11-15
Reviewed by Philippe Normand.

Tests: Activate http/tests/media/media-source and media/media-source tests

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::initializeGStreamerAndRegisterWebKitElements):
(WebCore::MediaPlayerPrivateGStreamer::load):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  • platform/graphics/gstreamer/MediaSourceGStreamer.cpp: Added.

(WebCore::MediaSourceGStreamer::open):
(WebCore::MediaSourceGStreamer::MediaSourceGStreamer):
(WebCore::MediaSourceGStreamer::~MediaSourceGStreamer):
(WebCore::MediaSourceGStreamer::addSourceBuffer):
(WebCore::MediaSourceGStreamer::setDuration):
(WebCore::MediaSourceGStreamer::markEndOfStream):
(WebCore::MediaSourceGStreamer::unmarkEndOfStream):

  • platform/graphics/gstreamer/MediaSourceGStreamer.h: Added.
  • platform/graphics/gstreamer/SourceBufferPrivateGStreamer.cpp: Added.

(WebCore::SourceBufferPrivateGStreamer::SourceBufferPrivateGStreamer):
(WebCore::SourceBufferPrivateGStreamer::append):
(WebCore::SourceBufferPrivateGStreamer::abort):
(WebCore::SourceBufferPrivateGStreamer::removedFromMediaSource):

  • platform/graphics/gstreamer/SourceBufferPrivateGStreamer.h: Added.
  • platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp: Added.

(webKitMediaSrcAddSrc):
(webkit_media_src_init):
(webKitMediaSrcFinalize):
(webKitMediaSrcSetProperty):
(webKitMediaSrcGetProperty):
(webKitMediaVideoSrcStop):
(webKitMediaAudioSrcStop):
(webKitMediaVideoSrcStart):
(webKitMediaAudioSrcStart):
(webKitMediaSrcChangeState):
(webKitMediaSrcQueryWithParent):
(webKitMediaSrcUriGetType):
(webKitMediaSrcGetProtocols):
(webKitMediaSrcGetUri):
(webKitMediaSrcSetUri):
(webKitMediaSrcUriHandlerInit):
(webKitMediaVideoSrcNeedDataMainCb):
(webKitMediaAudioSrcNeedDataMainCb):
(webKitMediaVideoSrcNeedDataCb):
(webKitMediaAudioSrcNeedDataCb):
(webKitMediaVideoSrcEnoughDataMainCb):
(webKitMediaAudioSrcEnoughDataMainCb):
(webKitMediaVideoSrcEnoughDataCb):
(webKitMediaAudioSrcEnoughDataCb):
(webKitMediaVideoSrcSeekMainCb):
(webKitMediaAudioSrcSeekMainCb):
(webKitMediaVideoSrcSeekDataCb):
(webKitMediaAudioSrcSeekDataCb):
(webKitMediaSrcSetMediaPlayer):
(webKitMediaSrcSetPlayBin):
(MediaSourceClientGstreamer::MediaSourceClientGstreamer):
(MediaSourceClientGstreamer::~MediaSourceClientGstreamer):
(MediaSourceClientGstreamer::didReceiveDuration):
(MediaSourceClientGstreamer::didReceiveData):
(MediaSourceClientGstreamer::didFinishLoading):
(MediaSourceClientGstreamer::didFail):

  • platform/graphics/gstreamer/WebKitMediaSourceGStreamer.h: Added.

Tools:

Patch by Stephane Jadaud <sjadaud@sii.fr> on 2013-11-15
Reviewed by Philippe Normand.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Patch by Stephane Jadaud <sjadaud@sii.fr> on 2013-11-15
Reviewed by Philippe Normand.

  • platform/gtk/TestExpectations:
6:08 AM Changeset in webkit [159334] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Leak in ewk_frame_certificate_status_get()
https://bugs.webkit.org/show_bug.cgi?id=124401

Reviewed by Carlos Garcia Campos.

The SoupMessage object is being leaked. In in this case that
object is not even necessary since ResourceRequest already
provides a way to get the soup flags directly.

  • ewk/ewk_frame.cpp:

(ewk_frame_certificate_status_get):

5:09 AM Changeset in webkit [159333] by Csaba Osztrogonác
  • 16 edits in trunk/Source/WebKit2

Cleanup the build from unused parameters in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=124201

Patch by Tibor Meszaros <mtibor@inf.u-szeged.hu> on 2013-11-15
Reviewed by Darin Adler.

  • Shared/Plugins/Netscape/PluginInformation.cpp:

(WebKit::getPluginModuleInformation):

  • UIProcess/API/C/WKBatteryManager.cpp:

(WKBatteryManagerSetProvider):
(WKBatteryManagerProviderDidChangeBatteryStatus):
(WKBatteryManagerProviderUpdateBatteryStatus):

  • UIProcess/API/C/WKBatteryStatus.cpp:

(WKBatteryStatusCreate):

  • UIProcess/API/C/WKColorPickerResultListener.cpp:

(WKColorPickerResultListenerSetColor):

  • UIProcess/API/C/WKContext.cpp:

(WKContextGetBatteryManager):
(WKContextGetDatabaseManager):
(WKContextGetNetworkInfoManager):

  • UIProcess/API/C/WKDatabaseManager.cpp:

(WKDatabaseManagerSetClient):
(WKDatabaseManagerGetDatabasesByOrigin):
(WKDatabaseManagerGetDatabaseOrigins):
(WKDatabaseManagerDeleteDatabasesWithNameForOrigin):
(WKDatabaseManagerDeleteDatabasesForOrigin):
(WKDatabaseManagerDeleteAllDatabases):
(WKDatabaseManagerSetQuotaForOrigin):

  • UIProcess/API/C/WKNetworkInfo.cpp:

(WKNetworkInfoCreate):

  • UIProcess/API/C/WKNetworkInfoManager.cpp:

(WKNetworkInfoManagerSetProvider):
(WKNetworkInfoManagerProviderDidChangeNetworkInformation):

  • UIProcess/API/C/WKOpenPanelParameters.cpp:

(WKOpenPanelParametersCopyCapture):

  • UIProcess/API/C/WKVibration.cpp:

(WKVibrationSetProvider):

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::createNewPage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::setVisibilityState):
(WebKit::WebPageProxy::unavailablePluginButtonClicked):

  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::didChangeContentsPosition):
(WebKit::ViewClientEfl::didRenderFrame):
(WebKit::ViewClientEfl::didChangeViewportAttributes):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setDatabaseQuota):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

3:03 AM Changeset in webkit [159332] by Antoine Quint
  • 6 edits
    10 adds
    2 deletes in trunk/Source/WebInspectorUI

Web Inspector: New color picker
https://bugs.webkit.org/show_bug.cgi?id=124354

Reviewed by Timothy Hatcher.

Beginning of a new color picker. The focus of this new picker is to let you pick from
a color wheel as the primary mean of color picking, with additional slider controls for
the brightness and the opacity, better matching the default OS X color picker. This is the
basis for a color picker that will evolve to support the following:

Note also that the color wheel has not been tested on Retina displays
(see http://webkit.org/b/124355).

  • UserInterface/CSSColorPicker.css: Removed.
  • UserInterface/CSSColorPicker.js: Removed.

Previous color picker, now removed in favor of the new ColorPicker class.

  • UserInterface/CSSStyleDeclarationTextEditor.js:

Adopt new class name for the color picker, add a little padding to the popover
target frame and set the base color after the picker has been presented.

  • UserInterface/Color.js:

(WebInspector.Color.prototype._hslToRGB):
Simplified math.

(WebInspector.Color.rgb2hsv):
(WebInspector.Color.hsv2rgb):
New utilities to deal with HSV colors used in the ColorWheel.

  • UserInterface/ColorPicker.css: Added.
  • UserInterface/ColorPicker.js: Added.

(WebInspector.ColorPicker):
(WebInspector.ColorPicker.prototype.get element):
(WebInspector.ColorPicker.prototype.set brightness):
(WebInspector.ColorPicker.prototype.set opacity):
(WebInspector.ColorPicker.prototype.get color):

(WebInspector.ColorPicker.prototype.set color):
We set the _dontUpdateColor flag here such that we don't attempt to
notify about a color change at this point in case the selected color
is too saturated to be represented accurately on the color wheel and
we would end up changing the color by virtue of presenting the popover.

(WebInspector.ColorPicker.prototype.colorWheelColorDidChange):
(WebInspector.ColorPicker.prototype.sliderValueDidChange):
(WebInspector.ColorPicker.prototype._updateColor):
(WebInspector.ColorPicker.prototype._updateSliders):

  • UserInterface/ColorWheel.css: Added.
  • UserInterface/ColorWheel.js: Added.

The ColorWheel makes use of three different <canvas> elements to draw itself.
The "raw" canvas is used to draw the raw, un-tinted color wheel with poor
aliasing. The "raw" canvas is only drawn when the dimension is changed.
The "tinted" canvas is used to draw the "raw" canvas with a black overlay
based on the brightness set on the wheel. The "final" canvas, the only <canvas>
element attached to the DOM, is used to draw the "tinted" canvas into a circle
clip of a slightly narrower radius so that the drawn image is visually more pleasing
and can be displayed above virtually any background color.

We use color math to generate the color wheel, courtesy of Dean Jackson, and also to
figure out where to position the crosshair for the provided base color as well as
the opposite operation where we get the color under the mouse pointer.

The color wheel fires a single delegate method call colorWheelColorDidChange(colorWheel),
the colors themselves being retrieved via the public properties tintedColor and rawColor.

(WebInspector.ColorWheel):
(WebInspector.ColorWheel.prototype.set dimension):
(WebInspector.ColorWheel.prototype.get element):
(WebInspector.ColorWheel.prototype.get brightness):
(WebInspector.ColorWheel.prototype.set brightness):
(WebInspector.ColorWheel.prototype.get tintedColor):
(WebInspector.ColorWheel.prototype.set tintedColor):
(WebInspector.ColorWheel.prototype.get rawColor):
(WebInspector.ColorWheel.prototype.handleEvent):
(WebInspector.ColorWheel.prototype._handleMousedown):
(WebInspector.ColorWheel.prototype._handleMousemove):
(WebInspector.ColorWheel.prototype._handleMouseup):
(WebInspector.ColorWheel.prototype._pointInCircleForEvent):
(WebInspector.ColorWheel.prototype._pointInCircleForEvent.angleFromCenterToPoint):
(WebInspector.ColorWheel.prototype._pointInCircleForEvent.pointOnCircumference):
(WebInspector.ColorWheel.prototype._updateColorForMouseEvent):
(WebInspector.ColorWheel.prototype._setCrosshairPosition):
(WebInspector.ColorWheel.prototype._tintedColorToPointAndBrightness):
(WebInspector.ColorWheel.prototype._drawRawCanvas):
(WebInspector.ColorWheel.prototype._colorAtPointWithBrightness):
(WebInspector.ColorWheel.prototype._drawTintedCanvas):
(WebInspector.ColorWheel.prototype._draw):

  • UserInterface/Images/SliderThumb.png: Added.
  • UserInterface/Images/SliderThumb@2x.png: Added.
  • UserInterface/Images/SliderThumbPressed.png: Added.
  • UserInterface/Images/SliderThumbPressed@2x.png: Added.

Supporting artwork for the new Slider class.

  • UserInterface/Main.html:

Remove the previous color picker class and add the new one, as well as the new Slider class.

  • UserInterface/Slider.css: Added.
  • UserInterface/Slider.js: Added.

New slider to match the look of the sliders used in the native OS X color picker. The most
interesting feature of these sliders is that they can be transformed using CSS in any way
and will still operate correctly due to always converting the mouse coordinates in the page
coordinate system to the coordinate system local to the backing element. For instance, the
color picker uses two sliders transformed to be displayed vertically.

As it stands these slides only support values between 0 and 1 and fire a single delegate
method call sliderValueDidChange(slider, newValue).

(WebInspector.Slider):
(WebInspector.Slider.prototype.get element):
(WebInspector.Slider.prototype.get value):
(WebInspector.Slider.prototype.set value):
(WebInspector.Slider.prototype.handleEvent):
(WebInspector.Slider.prototype._handleMousedown):
(WebInspector.Slider.prototype._handleMousemove):
(WebInspector.Slider.prototype._handleMouseup):
(WebInspector.Slider.prototype._localPointForEvent):
(WebInspector.Slider.prototype.get _maxX):

  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:

Update file names for the new color picker.

2:35 AM Changeset in webkit [159331] by Michał Pakuła vel Rutka
  • 3 edits
    1 delete in trunk/LayoutTests

Unreviewed EFL gardening

Mark flaky and incorrectly passing tests.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/ietestcenter/css3/bordersbackgrounds/background-repeat-space-padding-box-expected.txt: Removed wrong test expectation.
2:23 AM Changeset in webkit [159330] by calvaris@igalia.com
  • 4 edits in trunk

[GTK] Bumping GStreamer version to 1.2.1 for the dependencies
https://bugs.webkit.org/show_bug.cgi?id=124360

Reviewed by Philippe Normand.

Tools:

  • gtk/jhbuild.modules: Bumped GStreamer version up to 1.2.1

LayoutTests:

  • platform/gtk/TestExpectations: Flagged

media/video-canvas-drawing-output.html

1:21 AM Changeset in webkit [159329] by commit-queue@webkit.org
  • 3 edits
    2 moves
    2 deletes in trunk/LayoutTests

[EFL] Layout tests with international text properties need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124389

Unreviewed, EFL rabaseline.

EFL international text rebaselined after r147668.
Move some expectation files to efl common place because those files in wk1 are
in exact accordance with files in wk2, and then delete the files in wk1 and wk2.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-15

  • platform/efl-wk1/fast/text/international/003-expected.txt: Removed.
  • platform/efl-wk1/fast/text/international/bidi-layout-across-linebreak-expected.txt: Removed.
  • platform/efl-wk2/TestExpectations:
  • platform/efl/fast/text/international/002-expected.txt:
  • platform/efl/fast/text/international/003-expected.txt:

Renamed from LayoutTests/platform/efl-wk2/fast/text/international/003-expected.txt.

  • platform/efl/fast/text/international/bidi-layout-across-linebreak-expected.txt:

Renamed from LayoutTests/platform/efl-wk2/fast/text/international/bidi-layout-across-linebreak-expected.txt.

Nov 14, 2013:

8:58 PM Changeset in webkit [159328] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Improve support for command line builds of 64-bit JSC
https://bugs.webkit.org/show_bug.cgi?id=124380

Patch by Brent Fulgham <Brent Fulgham> on 2013-11-14
Reviewed by David Kilzer.

  • Scripts/webkitdirs.pm:

(argumentsForConfiguration): Recognize all flavors of Debug and Release (i.e., 'Debug',
'Debug|Win32', 'Debug|x64') when passing arguments to child processes.
(determinePassedConfiguration): Don't suffix configuration with "|Win32" or "|x64". That's
what the "$configurationForVisualStudio" value is for.

6:50 PM Changeset in webkit [159327] by ap@apple.com
  • 47 edits in trunk/LayoutTests

Update WebCrypto tests
https://bugs.webkit.org/show_bug.cgi?id=124388

Reviewed by Anders Carlsson.

Updated tests for newer common.js. Changed some tests from just dumping results
to comparing them to known expected ones. Fixed a syntax error in
aes-cbc-invalid-length.html, so it now actually runs.

  • crypto/subtle/resources/common.js: Update to a new version from Blink, because

it's much nicer than the old one, and it's good to be compatible at test level.
Moved crypto.subtle definition from webkitSubtle here to avoid repeating it in all
tests. Added a quick and dirty Promise.all implementation.

  • crypto/subtle/aes-cbc-192-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-256-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-encrypt-decrypt-with-padding-expected.txt:
  • crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-generate-key.html:
  • crypto/subtle/aes-cbc-import-jwk-expected.txt:
  • crypto/subtle/aes-cbc-import-jwk.html:
  • crypto/subtle/aes-cbc-invalid-length-expected.txt:
  • crypto/subtle/aes-cbc-invalid-length.html:
  • crypto/subtle/aes-cbc-wrong-key-class.html:
  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/argument-conversion-expected.txt:
  • crypto/subtle/argument-conversion.html:
  • crypto/subtle/hmac-export-key-expected.txt:
  • crypto/subtle/hmac-export-key.html:
  • crypto/subtle/hmac-generate-key.html:
  • crypto/subtle/hmac-import-jwk-expected.txt:
  • crypto/subtle/hmac-import-jwk.html:
  • crypto/subtle/hmac-sign-verify-empty-key-expected.txt:
  • crypto/subtle/hmac-sign-verify-empty-key.html:
  • crypto/subtle/hmac-sign-verify-expected.txt:
  • crypto/subtle/hmac-sign-verify.html:
  • crypto/subtle/import-jwk-expected.txt:
  • crypto/subtle/import-jwk.html:
  • crypto/subtle/rsassa-pkcs1-v1_5-generate-key-expected.txt:
  • crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html:
  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-expected.txt:
  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html:
  • crypto/subtle/rsassa-pkcs1-v1_5-sign-verify-expected.txt:
  • crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html:
  • crypto/subtle/sha-1-expected.txt:
  • crypto/subtle/sha-1.html:
  • crypto/subtle/sha-224-expected.txt:
  • crypto/subtle/sha-224.html:
  • crypto/subtle/sha-256-expected.txt:
  • crypto/subtle/sha-256.html:
  • crypto/subtle/sha-384-expected.txt:
  • crypto/subtle/sha-384.html:
  • crypto/subtle/sha-512-expected.txt:
  • crypto/subtle/sha-512.html:
6:27 PM Changeset in webkit [159326] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

XMLSerializer escapes < > & correctly inside <script> and <style> tags.
https://bugs.webkit.org/show_bug.cgi?id=123914

Patch by Victor Costan <costan@gmail.com> on 2013-11-14
Reviewed by Darin Adler.

Source/WebCore:

Test: fast/dom/XMLSerializer-entities.html

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::serializeNodesWithNamespaces): vim removed some whitespace.
(WebCore::MarkupAccumulator::entityMaskForText): Fixed the returned value for <script> etc in XML.

LayoutTests:

  • fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt: fix incorrect expectations.
  • fast/dom/SelectorAPI/resig-SelectorsAPI-test.xhtml: use CDATA consistently.
  • fast/dom/XMLSerializer-entities-expected.txt: Added.
  • fast/dom/XMLSerializer-entities.html: Added.
6:11 PM Changeset in webkit [159325] by Brent Fulgham
  • 12 edits in branches/safari-537.73-branch/LayoutTests

Rebaseline branch after r158468.

5:34 PM Changeset in webkit [159324] by Bem Jones-Bey
  • 2 edits in trunk/Source/WebCore

ASSERTION FAILED: rangesIntersect(m_renderer.pixelSnappedLogicalTopForFloat(floatingObject), m_renderer.pixelSnappedLogicalBottomForFloat(floatingObject), m_lineTop, m_lineBottom) ../../Source/WebCore/rendering/FloatingObjects.cpp(463)
https://bugs.webkit.org/show_bug.cgi?id=124375

Reviewed by Alexandru Chiculita.

When moving the placed floats tree over to LayoutUnit, I forgot to
update these asserts, which causes issues on ports with subpixel
layout enabled.

No new tests, no behavior change.

  • rendering/FloatingObjects.cpp:

(WebCore::FindNextFloatLogicalBottomAdapter::collectIfNeeded):
(WebCore::::collectIfNeeded):

4:55 PM Changeset in webkit [159323] by commit-queue@webkit.org
  • 5 edits in trunk

Clean up sequence handling in Blob constructor
https://bugs.webkit.org/show_bug.cgi?id=124343

Patch by Victor Costan <costan@gmail.com> on 2013-11-14
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Added test case to LayoutTests/fast/files/blob-constructor.html

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):

Handle exceptions in sequences, eliminate double type-checking for
ArrayBuffer, ArrayBufferView and Blob parts.

LayoutTests:

  • fast/files/blob-constructor-expected.txt:
  • fast/files/script-tests/blob-constructor.js:

Add test with sequence that throws an error on property access.

(get Object):

4:28 PM Changeset in webkit [159322] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[Cocoa] WKBrowsingContextController's policy client implementation over-releases WKURLRequests and WKURLResponses
https://bugs.webkit.org/show_bug.cgi?id=124386

Reviewed by Sam Weinig.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(setUpPagePolicyClient): Changed to release the Cocoa objects we copy out of the WK objects
passed into the client callbacks, but not the WK objects themselves, which are not owned by
the callbacks.

4:12 PM Changeset in webkit [159321] by oliver@apple.com
  • 19 edits in trunk

Make CLoop easier to build, and make it work
https://bugs.webkit.org/show_bug.cgi?id=124359

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add --cloop to build-jsc, build-webkit and friends.

Also make CLoop build and work again - This meant adding a
couple of missing ENABLE(DFG_JIT) blocks, and fixing a few
other references.

  • Configurations/FeatureDefines.xcconfig:
  • bytecode/BytecodeLivenessAnalysis.cpp:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/DFGExitProfile.cpp:
  • dfg/DFGCapabilities.cpp:
  • dfg/DFGCompilationKey.cpp:
  • dfg/DFGCompilationMode.cpp:
  • jit/JITExceptions.cpp:

(JSC::genericUnwind):

Source/WebCore:

Add cloop configuration info to WebCore FeatureDefines
so that it's consistent with JSC

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

Make building with the CLoop forcibly enabled manually
disable the JITs

  • wtf/Platform.h:

Tools:

Add --cloop support to forcibly enable to CLoop build

  • Scripts/build-jsc:
  • Scripts/build-webkit:
4:11 PM Changeset in webkit [159320] by Lucas Forschler
  • 5 edits in branches/safari-537.73-branch/Source

Versioning.

4:11 PM Changeset in webkit [159319] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace calls to deprecated CFPropertyList functions in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=124384

Reviewed by Anders Carlsson.

  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::sessionStateData): Replaced CFPropertyListWriteToStream() with CFPropertyListWrite().
(WebKit::WebPageProxy::restoreFromSessionStateData): Replaced CFPropertyListCreateFromXMLData() with CFPropertyListCreateWithData().

4:10 PM Changeset in webkit [159318] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.10

New Tag.

3:37 PM WebKitGTK/2.2.x edited by Martin Robinson
(diff)
3:33 PM WikiStart edited by Martin Robinson
Removed defunct links (including links to non-upstream ports) and spam (diff)
3:27 PM Changeset in webkit [159317] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Change Fail->Failure in some recent expectations.

Suddenly, everything is clear.

3:26 PM Changeset in webkit [159316] by Lucas Forschler
  • 2 edits in trunk/Tools

Add webkit slave.

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
3:23 PM Changeset in webkit [159315] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html is slow, frequently > 30 second timeout
https://bugs.webkit.org/show_bug.cgi?id=124373

  • platform/mac/TestExpectations:

Mark test as flaky on Mountain Lion Release bot.
Marking as slow seems to have no effect on the notifyDone timeout, just the outer timeouts.

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

[Cairo] Avoid extra copy when drawing images
https://bugs.webkit.org/show_bug.cgi?id=124209

Patch by Aloisio Almeida Jr <aloisio.almeida@openbossa.org> on 2013-11-14
Reviewed by Martin Robinson.

To solve the bug #58309 a cairo subsurface is being used to limit the
source image boundaries.
In many cases, when a cairo subsurface is used for drawing an image,
it occurs an image copy, causing performance penalty. In the case of
the function PlatformContextCairo::drawSurfaceToContext, the image
copy always happens.
So, we should use the subsurface only when it's really necessary.
In cases where we're drawing the whole image, the subsurface is
unnecessary.

The proposed patch avoid the use of subsurfaces when sampling the whole
image.

No new tests. It's an enhancement. Already covered by existing tests.

  • platform/graphics/cairo/PlatformContextCairo.cpp:

(WebCore::PlatformContextCairo::drawSurfaceToContext):

3:03 PM Changeset in webkit [159313] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

build.webkit.org/dashboard can’t open different results in two new tabs
https://bugs.webkit.org/show_bug.cgi?id=124383

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

(BuildbotQueueView.prototype.revisionLinksForIteration):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:

(StatusLineView.prototype._clicked):
Use _blank (which is effectively open-in-new-tab, in Safari) instead of _new (which isn't a
real pseudo-target and instead acts as a named target and will end up causing all link clicks
to open in the same secondary tab).

2:20 PM Changeset in webkit [159312] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

generate-message-receiver.py can't handle nested #ifs
https://bugs.webkit.org/show_bug.cgi?id=121877

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-11-14
Reviewed by Darin Adler.

parser.py was modifieded to collect and combine conditions of nested #ifs.
messages_unittest.py extended to check these modifications.

  • Scripts/webkit2/messages_unittest.py:

(LoadSomething):
(std):
(AddEvent):
(LoadSomethingElse):

  • Scripts/webkit2/parser.py:

(combine_condition):
(bracket_if_needed):
(parse):

2:02 PM Changeset in webkit [159311] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Reimplement getDayBoundaries using NSCalendar on 10.9
https://bugs.webkit.org/show_bug.cgi?id=124379

Reviewed by Dan Bernstein.

  • History/WebHistory.mm:

(getDayBoundaries):

1:44 PM Changeset in webkit [159310] by ap@apple.com
  • 11 edits
    4 adds in trunk

Implement raw format for WebCrypto key export
https://bugs.webkit.org/show_bug.cgi?id=124376

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: crypto/subtle/aes-export-key.html

crypto/subtle/hmac-export-key.html

A CryptoKey just exports its native CryptoKeyData, which will also work nicely for
JWK format soon. For spki and pkcs8, we'll need to figure out the best way to
utilize platform library support for ASN.1, but we are not there yet.

  • bindings/js/JSSubtleCryptoCustom.cpp:

(WebCore::JSSubtleCrypto::exportKey):

  • crypto/CryptoKey.h:
  • crypto/SubtleCrypto.idl:
  • crypto/keys/CryptoKeyAES.cpp:

(WebCore::CryptoKeyAES::exportData):

  • crypto/keys/CryptoKeyAES.h:
  • crypto/keys/CryptoKeyHMAC.cpp:

(WebCore::CryptoKeyHMAC::exportData):

  • crypto/keys/CryptoKeyHMAC.h:
  • crypto/keys/CryptoKeyRSA.h:
  • crypto/mac/CryptoKeyRSAMac.cpp:

(WebCore::CryptoKeyRSA::exportData):
Added a dummy implementation for RSA.

LayoutTests:

  • crypto/subtle/aes-export-key-expected.txt: Added.
  • crypto/subtle/aes-export-key.html: Added.
  • crypto/subtle/hmac-export-key-expected.txt: Added.
  • crypto/subtle/hmac-export-key.html: Added.
1:40 PM Changeset in webkit [159309] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] WKAction keys are not exported
https://bugs.webkit.org/show_bug.cgi?id=124378

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKBrowsingContextController.mm: Made the keys constant pointers.
  • UIProcess/API/mac/WKBrowsingContextPolicyDelegate.h: Exported the keys.
1:30 PM Changeset in webkit [159308] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Simply generated domain dispatch methods for domains with few commands
https://bugs.webkit.org/show_bug.cgi?id=124374

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-11-14
Reviewed by Timothy Hatcher.

  • inspector/CodeGeneratorInspector.py:

(Generator.go):
(Generator.process_command):

  • inspector/CodeGeneratorInspectorStrings.py:
1:26 PM Changeset in webkit [159307] by betravis@adobe.com
  • 18 edits
    6 adds in trunk

[CSS Shapes] Accept the new <box> value for shape-outside
https://bugs.webkit.org/show_bug.cgi?id=124227

Reviewed by David Hyatt.

Source/WebCore:

The shape-outside property can now be set to the box values [margin/border/padding/content]-box.
This patch adds the parsing code required to accept the new values, and the layout code
to create a rectangle shape that has the size and position of the appropriate box.

Tests: fast/shapes/shape-outside-floats/shape-outside-boxes-001.html

fast/shapes/shape-outside-floats/shape-outside-boxes-002.html
fast/shapes/shape-outside-floats/shape-outside-boxes-003.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue): Output the new box values.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Accept the new box values.

  • css/CSSValueKeywords.in: Add margin-box value.
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyShape::applyValue): Accept the new box values.

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::borderLogicalWidth): Added new utility methods to help
with box sizing.
(WebCore::RenderBoxModelObject::borderLogicalHeight): Ditto.
(WebCore::RenderBoxModelObject::paddingLogicalWidth): Ditto.
(WebCore::RenderBoxModelObject::paddingLogicalHeight): Ditto.

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): You can create a shape from a box's dimensions, rather
than always using a BasicShape or RasterShape value.

  • rendering/shapes/Shape.h:
  • rendering/shapes/ShapeInfo.cpp:

(WebCore::::computedShape): Create the appropriate shape based on the box values.

  • rendering/shapes/ShapeInfo.h:

(WebCore::ShapeInfo::setShapeSize): Adjust for the box size when using a box value.
(WebCore::ShapeInfo::logicalTopOffset): Ditto.
(WebCore::ShapeInfo::logicalLeftOffset): Ditto.

  • rendering/shapes/ShapeInsideInfo.cpp:

(WebCore::ShapeInsideInfo::isEnabledFor): Enable for the box values.

  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::isEnabledFor): Disable for shape-inside.

  • rendering/style/ShapeValue.h:

(WebCore::ShapeValue::createBoxValue): Create the appropriate shape value for a box.
(WebCore::ShapeValue::box): Return the box value for this ShapeValue.
(WebCore::ShapeValue::ShapeValue): Create a ShapeValue from a box value.

LayoutTests:

Test the different box values with different writing modes.

  • fast/shapes/parsing/parsing-shape-inside-expected.html: Adding box values as invalid.
  • fast/shapes/parsing/parsing-shape-inside.html: Ditto.
  • fast/shapes/parsing/parsing-shape-outside-expected.html: Adding box values as valid.
  • fast/shapes/parsing/parsing-shape-outside.html: Ditto.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-boxes-003.html: Added.
1:26 PM Changeset in webkit [159306] by jer.noble@apple.com
  • 3 edits in trunk/LayoutTests

Flaky Test: media/video-fast-seek.html
https://bugs.webkit.org/show_bug.cgi?id=124298

Reviewed by Eric Carlson.

Don't check for the precise results of currentTime, as MediaTime -> double
rounding will occasionally result in errors.

  • media/video-fast-seek-expected.txt:
  • media/video-fast-seek.html:
1:14 PM Changeset in webkit [159305] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit/mac

Stop using deprecated NSPropertyListSerialization methods
https://bugs.webkit.org/show_bug.cgi?id=124377

Reviewed by Mark Rowe.

  • History/WebHistory.mm:

(-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):

  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::spawnPluginHost):
(WebKit::NetscapePluginHostManager::instantiatePlugin):

  • Plugins/Hosted/NetscapePluginHostProxy.mm:

(WKPCIdentifierInfo):

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::marshalValue):
(WebKit::NetscapePluginInstanceProxy::marshalValues):
(WebKit::NetscapePluginInstanceProxy::demarshalValue):
(WebKit::NetscapePluginInstanceProxy::demarshalValues):

  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyInstance::getPropertyNames):

12:13 PM Changeset in webkit [159304] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

fullscreen/anonymous-block-merge-crash.html often times out in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=124318

  • platform/mac/TestExpectations:

Used the wrong kind of failure for a notifyDone timeout.

12:12 PM Changeset in webkit [159303] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Rubber-stamped by Tim Horton.

Post-checkin review comment! StickToViewportBounds sounds better and more accurate
than StickToWindowBounds.

  • platform/ScrollTypes.h:
12:10 PM Changeset in webkit [159302] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

Unreviewed build failure; update MediaPlayerPrivateAVFFoundationCF::seekToTime after r159208.

After r159208, seekToTime takes tolerance parameters.

Patch by Jer Noble <jer.noble@apple.com> on 2013-11-13

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::seekToTime):
(WebCore::AVFWrapper::seekToTime):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
12:05 PM Changeset in webkit [159301] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html is slow, frequently > 30 second timeout
https://bugs.webkit.org/show_bug.cgi?id=124373

  • platform/mac/TestExpectations:

Mark test as slow on Mountain Lion Release bot.

12:03 PM Changeset in webkit [159300] by Beth Dakin
  • 12 edits in trunk/Source/WebCore

Add a new mode where fixed elements don't constrain their positions during a
rubber band
https://bugs.webkit.org/show_bug.cgi?id=124260

Reviewed by Tim Horton.

This patch adds a new enum called ScrollBehaviorForFixedElements, which has
two values, StickToDocumentBounds or StickToWindowBounds. StickToDocumentBounds
corresponds to our current behavior, where fixed elements constrain
their positions during a rubber-band so that they stay stuck to the document.
The new mode, StickToWindowBounds, will cause fixed elements to always stay
fixed relative to the window.

scrollOffsetForFixedPosition() now takes a new parameter for the fixed behavior
so that it knows whether or not to constrain the position.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollOffsetForFixedPosition):

Right now, just return StickToDocumentBounds and retain existing behavior.
(WebCore::FrameView::scrollBehaviorForFixedElements):

  • page/FrameView.h:

The scrolling thread needs to know about the fixed element scroll behavior,
so this code makes ScrollingStateScrollingNodes keep track of that
information to pass over to the scrolling thread.

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements):

  • page/scrolling/ScrollingStateScrollingNode.h:
  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):

  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::scrollBehaviorForFixedElements):

  • page/scrolling/mac/ScrollingCoordinatorMac.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinatorMac::setScrollBehaviorForFixedElementsForNode):

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

Here is the new enum.

  • platform/ScrollTypes.h:


Another place where we only want to constrain scroll position if that is the
mode we are in.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::customPositionForVisibleRectComputation):

11:56 AM Changeset in webkit [159299] by ap@apple.com
  • 3 edits
    2 adds in trunk

[Mac] HMAC sign/verify crashes when key is empty
https://bugs.webkit.org/show_bug.cgi?id=124372

Reviewed by Sam Weinig.

Source/WebCore:

Test: crypto/subtle/hmac-sign-verify-empty-key.html

  • crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::calculateSignature): Give it

a non-null pointer then.

LayoutTests:

  • crypto/subtle/hmac-sign-verify-empty-key-expected.txt: Added.
  • crypto/subtle/hmac-sign-verify-empty-key.html: Added.
11:43 AM Changeset in webkit [159298] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION (r159276): Fix lots of crashes for arm_traditional architecture.
https://bugs.webkit.org/show_bug.cgi?id=124365

Reviewed by Oliver Hunt.

Crashes were caused by a mixup between regular registers and temporary registers in ARM_EXTRA_GPRS.

  • llint/LowLevelInterpreter32_64.asm: Warning, t3 != a3. It's safer to use an implementation using aX

registers like the MIPS one for cCallX macros.

  • offlineasm/arm.rb: Rearrange ARM_EXTRA_GPRS according to the new register distribution in LLINT.
11:16 AM Changeset in webkit [159297] by andersca@apple.com
  • 2 edits in trunk/Tools

Remove duplicate entry.

  • Scripts/webkitpy/common/config/contributors.json:
11:00 AM Changeset in webkit [159296] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Implement RSASSA-PKCS1-v1_5 sign/verify
https://bugs.webkit.org/show_bug.cgi?id=124335

Build fix.

  • crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
10:57 AM Changeset in webkit [159295] by Samuel White
  • 5 edits
    2 adds in trunk

AX: Calling NSAccessibilityColumnsAttribute and NSAccessibilityRowsAttribute simply to get column/row count can be very expensive.
https://bugs.webkit.org/show_bug.cgi?id=124293

Reviewed by Chris Fleizach.

Source/WebCore:

Added ability to get accessibility table column or row count without fetching all columns or rows.

Test: platform/mac/accessibility/table-column-and-row-count.html

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

Added test to ensure NSAccessibilityColumnsAttribute and NSAccessibilityRowsAttribute
behave as expected. Also updated existing table tests to reflect this additional API.

  • platform/mac/accessibility/table-column-and-row-count-expected.txt: Added.
  • platform/mac/accessibility/table-column-and-row-count.html: Added.
  • platform/mac/accessibility/table-detection-expected.txt:
  • platform/mac/accessibility/table-with-rules-expected.txt:
10:51 AM Changeset in webkit [159294] by Lucas Forschler
  • 6 edits in trunk

Versioning.

10:49 AM Changeset in webkit [159293] by Lucas Forschler
  • 1 copy in tags/Safari-538.6

New Tag.

10:26 AM Changeset in webkit [159292] by ap@apple.com
  • 9 edits
    1 copy
    3 adds
    5 deletes in trunk

Implement RSASSA-PKCS1-v1_5 sign/verify
https://bugs.webkit.org/show_bug.cgi?id=124335

Reviewed by Sam Weinig.

Source/WebCore:

Test: crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html

  • WebCore.xcodeproj/project.pbxproj: Added new files, removed Mac SHA algorithm files.
  • crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:

(WebCore::getCommonCryptoDigestAlgorithm):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
Implemented. These take two steps, first a digest is computed, and then it's signed.

  • crypto/CryptoDigest.h: Added.
  • crypto/mac/CryptoDigestMac.cpp: Added.

(WebCore::CryptoDigest::CryptoDigest):
(WebCore::CryptoDigest::~CryptoDigest):
(WebCore::CryptoDigest::create):
(WebCore::CryptoDigest::addBytes):
(WebCore::CryptoDigest::computeHash):
Added a cross-platform interface and Mac implementation to compute a digest. It
should be possible to use it outside WebCrypto if we need to (perhaps even merge
with WTF SHA-1 class).
The Mac implementation is kind of ugly, but at least it encapsulates the ugliness.

  • crypto/algorithms/CryptoAlgorithmSHA1.cpp: (WebCore::CryptoAlgorithmSHA1::digest):
  • crypto/algorithms/CryptoAlgorithmSHA224.cpp: (WebCore::CryptoAlgorithmSHA224::digest):
  • crypto/algorithms/CryptoAlgorithmSHA256.cpp: (WebCore::CryptoAlgorithmSHA256::digest):
  • crypto/algorithms/CryptoAlgorithmSHA384.cpp: (WebCore::CryptoAlgorithmSHA384::digest):
  • crypto/algorithms/CryptoAlgorithmSHA512.cpp: (WebCore::CryptoAlgorithmSHA512::digest):
  • crypto/mac/CryptoAlgorithmSHA1Mac.cpp: Removed.
  • crypto/mac/CryptoAlgorithmSHA224Mac.cpp: Removed.
  • crypto/mac/CryptoAlgorithmSHA256Mac.cpp: Removed.
  • crypto/mac/CryptoAlgorithmSHA384Mac.cpp: Removed.
  • crypto/mac/CryptoAlgorithmSHA512Mac.cpp: Removed.

These are all cross-platform now.

LayoutTests:

  • crypto/subtle/rsassa-pkcs1-v1_5-sign-verify-expected.txt: Added.
  • crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html: Added.
10:21 AM Changeset in webkit [159291] by hmuller@adobe.com
  • 3 edits
    4 adds in trunk

[CSS Shapes] Empty polygons with non-zero shape-padding cause an ASSERT crash
https://bugs.webkit.org/show_bug.cgi?id=124324

Reviewed by Andreas Kling.

Source/WebCore:

PolygonShape::shapePaddingBounds() and PolygonShape::shapeMarginBounds() no
longer attempt to compute a new FloatPolygon when the original is empty, i.e.
when it has less than three vertices.

Tests: fast/shapes/shape-inside/shape-inside-empty-polygon-crash.html

fast/shapes/shape-outside-floats/shape-outside-floats-empty-polygon-crash.html

  • rendering/shapes/PolygonShape.cpp:

(WebCore::PolygonShape::shapePaddingBounds): Don't compute a padding FloatPolygon if the original polygon is empty.
(WebCore::PolygonShape::shapeMarginBounds): Don't compute a margin FloatPolygon if the original polygon is empty.

LayoutTests:

  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash-expected.txt: Added.
  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-empty-polygon-crash-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-empty-polygon-crash.html: Added.
10:13 AM Changeset in webkit [159290] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION (r159276): rbp register overwritten in Win 64 version of callToJavascript stub
https://bugs.webkit.org/show_bug.cgi?id=124361

Reviewed by Oliver Hunt.

Swapped operand ordering to: mov rax, rbp

  • jit/JITStubsMSVC64.asm:
9:45 AM Changeset in webkit [159289] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Cleaner Backend Method Calling Code Generation
https://bugs.webkit.org/show_bug.cgi?id=124333

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-11-14
Reviewed by Timothy Hatcher.

No change in functionality, just improved generated code.

  • inspector/CodeGeneratorInspector.py:

(Generator.process_command):

  • inspector/CodeGeneratorInspectorStrings.py:
  • inspector/InspectorBackendDispatcher.cpp:
  • inspector/InspectorBackendDispatcher.h:
8:52 AM Changeset in webkit [159288] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

REGRESSION (r159276): Fix lots of crashes for sh4 architecture.
https://bugs.webkit.org/show_bug.cgi?id=124347

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-14
Reviewed by Michael Saboff.

Since r159276, we have (t4 == a0 == r4) and (t5 == a1 == r5) in LLINT for sh4.
This leads to argument register trampling in cCallX macros, especially with cCall2
macro when arg1 == t4.

  • llint/LowLevelInterpreter32_64.asm: Use a new "setargs" pseudo-op to setup arguments for sh4.
  • offlineasm/instructions.rb:
  • offlineasm/sh4.rb: Lower "setargs" pseudo-op to setup argument registers and prevent register trampling issues.
8:49 AM Changeset in webkit [159287] by commit-queue@webkit.org
  • 7 edits in trunk/Tools

[ATK] Change WKTR/DRT AX methods to use nullptr
https://bugs.webkit.org/show_bug.cgi?id=124352

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-11-14
Reviewed by Anders Carlsson.

Change WKTR/DRT accessibility related methods to use nullptr.

  • DumpRenderTree/atk/AccessibilityControllerAtk.cpp:

(AccessibilityController::AccessibilityController):
(AccessibilityController::elementAtPoint):
(AccessibilityController::removeNotificationListener):
(AccessibilityController::childElementById):

  • DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.cpp:

(AccessibilityNotificationHandler::AccessibilityNotificationHandler):

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::elementAtPoint):
(AccessibilityUIElement::linkedUIElementAtIndex):
(AccessibilityUIElement::getChildAtIndex):
(AccessibilityUIElement::titleUIElement):
(AccessibilityUIElement::parentElement):
(AccessibilityUIElement::subrole):
(AccessibilityUIElement::roleDescription):
(AccessibilityUIElement::orientation):
(AccessibilityUIElement::ariaDropEffects):
(AccessibilityUIElement::uiElementForSearchPredicate):
(AccessibilityUIElement::cellForColumnAndRow):
(AccessibilityUIElement::disclosedRowAtIndex):
(AccessibilityUIElement::ariaOwnsElementAtIndex):
(AccessibilityUIElement::ariaFlowToElementAtIndex):
(AccessibilityUIElement::selectedRowAtIndex):
(AccessibilityUIElement::rowAtIndex):
(AccessibilityUIElement::disclosedByRow):
(AccessibilityUIElement::removeNotificationListener):
(AccessibilityUIElement::classList):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:

(WTR::AccessibilityController::logAccessibilityEvents):
(WTR::AccessibilityController::resetToConsistentState):
(WTR::childElementById):
(WTR::AccessibilityController::accessibleElementById):
(WTR::AccessibilityController::removeNotificationListener):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:

(WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
(WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::rowAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::uiElementAttributeValue):
(WTR::AccessibilityUIElement::orientation):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar):
(WTR::AccessibilityUIElement::verticalScrollbar):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::textMarkerForIndex):
(WTR::AccessibilityUIElement::supportedActions):
(WTR::AccessibilityUIElement::pathDescription):
(WTR::AccessibilityUIElement::mathPostscriptsDescription):
(WTR::AccessibilityUIElement::mathPrescriptsDescription):
(WTR::AccessibilityUIElement::classList):

8:03 AM Changeset in webkit [159286] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Popovers may shrink unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=124350

Reviewed by Timothy Hatcher.

Because we always get the intersection of the preferred frame and the container frame to
ensure the popover fits within its container based on a preferred frame that would place
the arrow within the center of the attachment edge, we get in situations where we may
shrink the popover instead of shifting it to fit within the container frame. We now first
shift the preferred frame before getting its intersection with the container frame to
avoid such situations.

  • UserInterface/Popover.js:

(WebInspector.Popover.prototype._bestMetricsForEdge):

7:38 AM Changeset in webkit [159285] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

run-perf-tests should warn loudly if you're using a Debug build.
https://bugs.webkit.org/show_bug.cgi?id=105236

Patch by Éva Balázsfalvi <balazsfalvi.eva@stud.u-szeged.hu> on 2013-11-14
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.run):

5:48 AM Changeset in webkit [159284] by Seokju Kwon
  • 3 edits in trunk/Source/WebCore

Use [ImplementedAs=defaultStatus] for Window.defaultstatus
https://bugs.webkit.org/show_bug.cgi?id=124334

Reviewed by Christophe Dumez.

No new tests, this is just refactoring.

Use [ImplementedAs=defaultStatus] for Window.defaultstatus
and remove unnecessary code from DOMWindow.
Because 'defaultstatus' is an alias of defaultStatus.

  • page/DOMWindow.h:
  • page/DOMWindow.idl:
5:28 AM Changeset in webkit [159283] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix build for sh4 architectures (broken since r159276).
https://bugs.webkit.org/show_bug.cgi?id=124344

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-14
Reviewed by Csaba Osztrogonác.

  • offlineasm/sh4.rb: There is no fp alias for r14 register for sh4.
4:50 AM Changeset in webkit [159282] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix Tools/Scripts/webkitpy/port/factory.py --help to display which configuration is default
https://bugs.webkit.org/show_bug.cgi?id=124143

Patch by Éva Balázsfalvi <balazsfalvi.eva@stud.u-szeged.hu> on 2013-11-14
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/port/factory.py:

(configuration_options):

3:25 AM Changeset in webkit [159281] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebCore

Generate toSVGPolyline|gonElement() to replace static_cast<>
https://bugs.webkit.org/show_bug.cgi?id=124341

Reviewed by Andreas Kling.

toSVGFoo() supports more plenty helper functions. So, toSVGFoo() needs
to be used instead of static_cast<>.

Additionally, cleanup other static_cast<> as well.

No new tests, no behavior changes.

  • rendering/svg/SVGPathData.cpp:

(WebCore::updatePathFromEllipseElement):
(WebCore::updatePathFromLineElement):
(WebCore::updatePathFromPolygonElement):
(WebCore::updatePathFromPolylineElement):

  • svg/SVGPolygonElement.h:
  • svg/SVGPolylineElement.h:
  • svg/svgtags.in: Add *generateTypeHelpers* keyword to polygon, polyline
3:07 AM Changeset in webkit [159280] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] Layout tests with text areas need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124337

Unreviewed, EFL gatdening.

EFL text areas rebaselined after r129492.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-14

  • platform/efl/TestExpectations:
  • platform/efl/fast/forms/basic-textareas-expected.txt:
  • platform/efl/fast/forms/basic-textareas-quirks-expected.txt:
3:01 AM Changeset in webkit [159279] by akling@apple.com
  • 6 edits in trunk/Source

FontDescription copies should share families list, not duplicate it.
<https://webkit.org/b/124338>

Source/WebCore:

Turn FontDescription::m_families into a RefCountedArray<AtomicString>
instead of a Vector<AtomicString, 1>. This allows FontDescription to
share the families list between copies, instead of each object having
its own Vector.

Also, FontDescription itself shrinks by 16 bytes.

Reviewed by Antti Koivisto.

Source/WTF:

Add RefCountedArray::operator==.

Reviewed by Antti Koivisto.

1:12 AM Changeset in webkit [159278] by ryuan.choi@samsung.com
  • 9 edits
    2 moves in trunk/Source/WebKit2

[WK2] Move Coordinated Graphics related code out of DrawingAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=124328

Reviewed by Andreas Kling.

Refactored for DrawingAreaProxy not to include Coordinated Graphics specific code.

  • PlatformEfl.cmake:
  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp: Moved from DrawingAreaProxy.cpp.

(WebKit::CoordinatedDrawingAreaProxy::updateViewport):
(WebKit::CoordinatedDrawingAreaProxy::contentsRect):

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h: Ditto.

(WebKit::CoordinatedDrawingAreaProxy::coordinatedLayerTreeHostProxy): Refactored to return reference instead of pointer.
(WebKit::CoordinatedDrawingAreaProxy::viewportVisibleRect):
(WebKit::CoordinatedDrawingAreaProxy::page):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
  • UIProcess/CoordinatedGraphics/PageViewportController.cpp:

Renamed from Source/WebKit2/UIProcess/PageViewportController.cpp because it depends on Coordinated Graphics.
(WebKit::fuzzyCompare):
(WebKit::PageViewportController::PageViewportController):
(WebKit::PageViewportController::innerBoundedViewportScale):
(WebKit::PageViewportController::outerBoundedViewportScale):
(WebKit::PageViewportController::deviceScaleFactor):
(WebKit::isIntegral):
(WebKit::PageViewportController::pixelAlignedFloatPoint):
(WebKit::PageViewportController::boundContentsPositionAtScale):
(WebKit::PageViewportController::boundContentsPosition):
(WebKit::PageViewportController::didCommitLoad):
(WebKit::PageViewportController::didChangeContentsSize):
(WebKit::PageViewportController::didRenderFrame):
(WebKit::PageViewportController::pageTransitionViewportReady):
(WebKit::PageViewportController::pageDidRequestScroll):
(WebKit::PageViewportController::didChangeViewportSize):
(WebKit::PageViewportController::didChangeContentsVisibility):
(WebKit::PageViewportController::syncVisibleContents): Added cast to access CoordinatedDrawingAreaProxy method.
(WebKit::PageViewportController::didChangeViewportAttributes):
(WebKit::PageViewportController::visibleContentsSize):
(WebKit::PageViewportController::applyScaleAfterRenderingContents):
(WebKit::PageViewportController::applyPositionAfterRenderingContents):
(WebKit::PageViewportController::updateMinimumScaleToFit):

  • UIProcess/CoordinatedGraphics/PageViewportController.h:

Renamed from Source/WebKit2/UIProcess/PageViewportController.cpp because it depends on Coordinated Graphics.
(WebKit::PageViewportController::~PageViewportController):
(WebKit::PageViewportController::hadUserInteraction):
(WebKit::PageViewportController::allowsUserScaling):
(WebKit::PageViewportController::contentsLayoutSize):
(WebKit::PageViewportController::minimumScale):
(WebKit::PageViewportController::maximumScale):
(WebKit::PageViewportController::currentScale):
(WebKit::PageViewportController::setHadUserInteraction):

  • UIProcess/CoordinatedGraphics/WebView.cpp: Added some casts to access CoordinatedDrawingAreaProxy methods.

(WebKit::WebView::coordinatedGraphicsScene): Simplified code using reference.
(WebKit::WebView::updateViewportSize):

  • UIProcess/DrawingAreaProxy.cpp: Removed Coordinated Graphics macro and related codes.
  • UIProcess/DrawingAreaProxy.h: Ditto.
1:04 AM Changeset in webkit [159277] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebCore

Introduce FILTER_TYPE_CASTS for child filter class
https://bugs.webkit.org/show_bug.cgi?id=124332

Reviewed by Andreas Kling.

To use TYPE_CASTS_BASE, define FILTER_TYPE_CASTS macro. Thanks to
it, static_cast<SVGFilter*> can be replaced by toSVGFilter().

No new tests, no behavior changes.

  • platform/graphics/filters/Filter.h:

Add isSVGFilter() to check if casting object is SVGFilter object.

(WebCore::Filter::isSVGFilter):

  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:

(WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::determineAbsolutePaintRect):
(WebCore::FEImage::platformApplySoftware):

  • svg/graphics/filters/SVGFilter.h:

Nov 13, 2013:

11:39 PM Changeset in webkit [159276] by msaboff@apple.com
  • 23 edits in trunk/Source/JavaScriptCore

Change callToJavaScript thunk into an offline assembled stub
https://bugs.webkit.org/show_bug.cgi?id=124251

Reviewed by Geoffrey Garen.

Changed callToJavaScript and throwNotCaught into stubs generated by the offline assembler.
Added popCalleeSaves and pushCalleeSaves pseudo ops to the offline assembler to handle
the saving and restoring of callee save registers. Fixed callFrameRegister differences
between arm traditional (r11) and arm Thumb2 (r7) in GPRInfo.h. Also fixed implementation
of pop & push in arm.rb.

Since the offline assembler and therefore the LLInt don't work on Windows, the Windows stubs
are handled as inline assembly in JITStubsX86.h and JITStubsMSVC64.asm.

  • dfg/DFGDriver.cpp:

(JSC::DFG::compileImpl):

  • jit/GPRInfo.h:

(JSC::GPRInfo::toIndex):
(JSC::GPRInfo::debugName):

  • jit/JITCode.cpp:

(JSC::JITCode::execute):

  • jit/JITExceptions.cpp:

(JSC::genericUnwind):

  • jit/JITStubs.h:
  • jit/JITStubsMSVC64.asm:
  • jit/JITStubsX86.h:
  • jit/ThunkGenerators.cpp:
  • jit/ThunkGenerators.h:
  • llint/LLIntThunks.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/arm.rb:
  • offlineasm/arm64.rb:
  • offlineasm/instructions.rb:
  • offlineasm/mips.rb:
  • offlineasm/registers.rb:
  • offlineasm/sh4.rb:
  • offlineasm/x86.rb:
  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:
9:46 PM Changeset in webkit [159275] by commit-queue@webkit.org
  • 12 edits in trunk

Source/WebCore: Blob constructor accepts a sequence (array-like object) as first arg.
https://bugs.webkit.org/show_bug.cgi?id=124175

Patch by Victor Costan <costan@gmail.com> on 2013-11-13
Reviewed by Christophe Dumez.

Added test cases to fast/files/script-tests/blob-constructor.js.

  • bindings/js/JSBlobCustom.cpp: Make the constructor work with sequences.

(WebCore::JSBlobConstructor::constructJSBlob):

  • bindings/js/JSDOMBinding.h:

(WebCore::toJSSequence): Slightly better error message when conversion fails.
(WebCore::toJS): Whitespace.
(WebCore::jsArray): Whitespace.

LayoutTests: Blob constructor accepts a sequence (array-like object) as first arg.
https://bugs.webkit.org/show_bug.cgi?id=124175

Patch by Victor Costan <costan@gmail.com> on 2013-11-13
Reviewed by Christophe Dumez.

  • crypto/subtle/argument-conversion-expected.txt: Updated sequence error expectations.
  • fast/dom/Window/window-postmessage-args-expected.txt: Updated sequence error expectations.
  • fast/events/constructors/message-event-constructor-expected.txt: Updated sequence error expectations.
  • fast/events/message-port-multi-expected.txt: Updated sequence error expectations.
  • fast/files/blob-constructor-expected.txt: Updated error text and added expectations.
  • fast/files/script-tests/blob-constructor.js: Added sequence test cases.
  • fast/workers/worker-context-multi-port-expected.txt: Updated sequence error expectations.
  • fast/workers/worker-multi-port-expected.txt: Updated sequence error expectations.
9:06 PM Changeset in webkit [159274] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

[EFL] Layout tests with css3 selectors3 properties need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124266

Unreviewed, EFL gardening.

EFL css3 rebaselined after r111644.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-13

  • platform/efl-wk2/TestExpectations:
  • platform/efl/css3/selectors3/html/css3-modsel-1-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-1-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-1-expected.txt:
7:08 PM Changeset in webkit [159273] by Joseph Pecoraro
  • 5 edits in trunk/Source/WebKit

Unreviewed rollout of r159271, broke Mountain Lion build.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

  • History/WebHistory.h:
  • History/WebHistory.mm:
7:01 PM Changeset in webkit [159272] by Joseph Pecoraro
  • 3 edits in trunk/Source/WebCore

Web Inspector: InspectorBackendDispatcher improvements
https://bugs.webkit.org/show_bug.cgi?id=124330

Reviewed by Timothy Hatcher.

  • inspector/InspectorBackendDispatcher.cpp:

(WebCore::InspectorBackendDispatcher::sendResponse):
(WebCore::InspectorBackendDispatcher::reportProtocolError):

  • inspector/InspectorBackendDispatcher.h:

(WebCore::InspectorSupplementalBackendDispatcher::InspectorSupplementalBackendDispatcher):

6:58 PM Changeset in webkit [159271] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit

Deprecate WebHistory methods that use NSCalendarDate
https://bugs.webkit.org/show_bug.cgi?id=124329
<rdar://problem/15441122>

Reviewed by Mark Rowe.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Add a shell script phase that uses unifdef to remove the NSd_10_9 #define from
WebHistory on Mavericks.

Source/WebKit/mac:

  • History/WebHistory.h:

Add NS_DEPRECATED_MAC to orderedLastVisitedDays and orderedItemsLastVisitedOnDay:.
In order to not break the Mountain Lion build, define NSd_10_9 if necessary.

  • History/WebHistory.mm:

Ignore deprecation warnings in methods where NSCalendarDate is used.

6:39 PM Changeset in webkit [159270] by Joseph Pecoraro
  • 3 edits in trunk/Source/WebCore

Unreviewed Windows Build Fix after r159268.

Missed adding InspectorBackendDispatcher.h and cpp to the Windows build.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
6:28 PM Changeset in webkit [159269] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebKit2

Rename some ImmutableArray leftovers
https://bugs.webkit.org/show_bug.cgi?id=124320

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-13
Reviewed by Anders Carlsson.

ImmutableArray has been renamed to API::Array in r159234.

  • Shared/API/c/WKContextMenuItem.cpp:
  • Shared/WebContextMenuItem.cpp:
  • Shared/WebContextMenuItem.h:
  • UIProcess/API/C/WKBackForwardListRef.cpp:
  • UIProcess/API/Cocoa/WKBackForwardList.mm:
  • UIProcess/API/gtk/WebKitBackForwardList.cpp:
  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:
  • UIProcess/WebBackForwardList.cpp:
  • UIProcess/WebBackForwardList.h:
6:24 PM Changeset in webkit [159268] by Joseph Pecoraro
  • 52 edits
    2 adds in trunk/Source/WebCore

Web Inspector: Generate Individual InspectorBackendDispatchers, add base InspectorBackendDispatcher
https://bugs.webkit.org/show_bug.cgi?id=124296

Reviewed by Timothy Hatcher.

No new tests, this is just refactoring without changing functionality.
Set of changes made:

  • Add inspector/InspectorBackendDispatcher.{h,cpp}. This used to be almost entirely written in the code generator strings file, but make it actual source files because there is nothing changing in the code. Also clean this up a bit.
  • Give the base dispatcher a list of domain dispatchers and a way to register.
  • Make InspectorBackendDispatcher::dispatch read the domain of incoming request and pass the request on to the domain dispatcher.
  • Create per-domain dispatcher classes named "InspectorFooBackendDispatcher"
  • Convert "InspectorBackendDispatcher::FooCommandHandler" interfaces to "InspectorFooBackendDispatcherHandler" interfaces.
  • Convert all "InspectorBackendDispatcherImpl::FooDomain_fooMethod" methods to "InspectorFooBackendDispatcher::fooMethod" methods. These can also remove their "if (!agent)" checks because that can never be the case anymore.
  • Remove InspectorBackendDispatcherImpl, now that there are base and domain dispatchers.
  • Add ASCIILiteral in many places in generated code where possible.
  • In all agents, create dispatchers in didCreateFrontendAndBackend and clear them in willDestroyFrontendAndBackend, right alongside frontend dispatchers.
  • inspector/CodeGeneratorInspector.py:

(DomainNameFixes.get_fixed_data.Res):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
(Generator):
(Generator.go):
(Generator.process_command):
(Generator.generate_send_method):

  • inspector/CodeGeneratorInspectorStrings.py:

(void):
(HashMap):
(InspectorBackendDispatchers_h):

  • inspector/InspectorAgent.cpp:

(WebCore::InspectorAgent::didCreateFrontendAndBackend):
(WebCore::InspectorAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorAgent.h:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::didCreateFrontendAndBackend):
(WebCore::InspectorApplicationCacheAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorApplicationCacheAgent.h:
  • inspector/InspectorBackendDispatcher.cpp: Added.

(WebCore::InspectorBackendDispatcher::CallbackBase::CallbackBase):
(WebCore::InspectorBackendDispatcher::CallbackBase::isActive):
(WebCore::InspectorBackendDispatcher::CallbackBase::sendFailure):
(WebCore::InspectorBackendDispatcher::CallbackBase::sendIfActive):
(WebCore::InspectorBackendDispatcher::create):
(WebCore::InspectorBackendDispatcher::registerDispatcherForDomain):
(WebCore::InspectorBackendDispatcher::dispatch):
(WebCore::InspectorBackendDispatcher::sendResponse):
(WebCore::InspectorBackendDispatcher::reportProtocolError):
(WebCore::InspectorBackendDispatcher::getPropertyValue):
(WebCore::AsMethodBridges::asInt):
(WebCore::AsMethodBridges::asDouble):
(WebCore::AsMethodBridges::asString):
(WebCore::AsMethodBridges::asBoolean):
(WebCore::AsMethodBridges::asObject):
(WebCore::AsMethodBridges::asArray):
(WebCore::InspectorBackendDispatcher::getInt):
(WebCore::InspectorBackendDispatcher::getDouble):
(WebCore::InspectorBackendDispatcher::getString):
(WebCore::InspectorBackendDispatcher::getBoolean):
(WebCore::InspectorBackendDispatcher::getObject):
(WebCore::InspectorBackendDispatcher::getArray):

  • inspector/InspectorBackendDispatcher.h: Added.

(WebCore::InspectorSupplementalBackendDispatcher::InspectorSupplementalBackendDispatcher):
(WebCore::InspectorSupplementalBackendDispatcher::~InspectorSupplementalBackendDispatcher):
(WebCore::InspectorBackendDispatcher::~InspectorBackendDispatcher):
(WebCore::InspectorBackendDispatcher::clearFrontend):
(WebCore::InspectorBackendDispatcher::isActive):
(WebCore::InspectorBackendDispatcher::InspectorBackendDispatcher):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCSSAgent::willDestroyFrontendAndBackend):

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

(WebCore::InspectorCanvasAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCanvasAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorCanvasAgent.h:
  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::didCreateFrontendAndBackend):
(WebCore::InspectorConsoleAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDOMDebuggerAgent.cpp:

(WebCore::InspectorDOMDebuggerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMDebuggerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDOMDebuggerAgent.h:
  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMStorageAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDOMStorageAgent.h:
  • inspector/InspectorDatabaseAgent.cpp:

(WebCore::InspectorDatabaseAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDatabaseAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDatabaseAgent.h:
  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDebuggerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorHeapProfilerAgent.cpp:

(WebCore::InspectorHeapProfilerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorHeapProfilerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorHeapProfilerAgent.h:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore::InspectorIndexedDBAgent::didCreateFrontendAndBackend):
(WebCore::InspectorIndexedDBAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorIndexedDBAgent.h:
  • inspector/InspectorInputAgent.cpp:

(WebCore::InspectorInputAgent::didCreateFrontendAndBackend):
(WebCore::InspectorInputAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorInputAgent.h:
  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::didCreateFrontendAndBackend):
(WebCore::InspectorLayerTreeAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorLayerTreeAgent.h:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::didCreateFrontendAndBackend):
(WebCore::InspectorMemoryAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorMemoryAgent.h:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorPageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorPageAgent::getScriptExecutionStatus):

  • inspector/InspectorPageAgent.h:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorProfilerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didCreateFrontendAndBackend):
(WebCore::InspectorResourceAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorRuntimeAgent.h:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend):
(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWorkerAgent.cpp:

(WebCore::InspectorWorkerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorWorkerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorWorkerAgent.h:
  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::PageRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/PageRuntimeAgent.h:
  • inspector/WorkerRuntimeAgent.cpp:

(WebCore::WorkerRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::WorkerRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/WorkerRuntimeAgent.h:
5:59 PM Changeset in webkit [159267] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r159263): caused 50+ crashes on all mac webkit2 bots
https://bugs.webkit.org/show_bug.cgi?id=124327

Reviewed by Tim Horton.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject): Allocate extra memory for the WebError inside the WKNSError.

5:20 PM Changeset in webkit [159266] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test animations/resume-after-page-cache.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=124321

  • platform/mac/TestExpectations:
5:18 PM Changeset in webkit [159265] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

Use NSCalendarIdentifierGregorian instead of NSGregorianCalendar on OS X 10.9 and iOS
https://bugs.webkit.org/show_bug.cgi?id=124323

Reviewed by Mark Rowe.

NSGregorianCalendar was deprecated in OS X 10.9 and iOS 7.

  • platform/text/mac/LocaleMac.mm:

(WebCore::LocaleMac::LocaleMac):

4:53 PM Changeset in webkit [159264] by Joseph Pecoraro
  • 13 edits in trunk/Source/WebCore

Web Inspector: Rename InspectorBackendDispatcher.h to InspectorBackendDispatchers.h
https://bugs.webkit.org/show_bug.cgi?id=124257

Reviewed by Timothy Hatcher.

Soon each domain will generate its own dispatcher, and the generic
InspectorBackendDispatcher will no longer be generated, it will just
live in WebCore/inspector.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/CodeGeneratorInspector.py:
  • inspector/CodeGeneratorInspectorStrings.py:

(InspectorBackendDispatchers_h):

  • inspector/InspectorBaseAgent.h:
  • inspector/InspectorController.cpp:
  • inspector/InspectorFrontendClientLocal.cpp:
  • inspector/WorkerInspectorController.cpp:
4:49 PM Changeset in webkit [159263] by mitz@apple.com
  • 3 edits
    2 adds in trunk/Source/WebKit2

[Cocoa] Add WKNSError
https://bugs.webkit.org/show_bug.cgi?id=124295

Reviewed by Anders Carlsson.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject): Allocate a WKNSError if the object is a WebError.

  • Shared/Cocoa/WKNSError.h: Added.

(WebKit::wrapper): Added. Returns a WebError’s wrapper as an NSError.

  • Shared/Cocoa/WKNSError.mm: Added.

(-[WKNSError _web_createTarget]): Override this WKObject method to return a copy of the
underlying CFError.
(-[WKNSError copyWithZone:]): Retains self.

  • WebKit2.xcodeproj/project.pbxproj: Added new files.
4:46 PM Changeset in webkit [159262] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Tweak the property syntax after https://bugs.webkit.org/show_bug.cgi?id=124317

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKViewPrivate.h:
4:44 PM Changeset in webkit [159261] by aestes@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Fix the ARM64 build after recent JavaScriptCore changes
https://bugs.webkit.org/show_bug.cgi?id=124315

Reviewed by Michael Saboff.

Based on patches by myself, Filip Pizlo, Benjamin Poulain, and Michael Saboff.

  • Configurations/JavaScriptCore.xcconfig: Hid the symbol for

std::bad_function_call.

MacroAssemblerARM64.h and ARM64Assembler.h as Private headers.

  • assembler/ARM64Assembler.h:

(JSC::ARM64Assembler::executableOffsetFor):

  • assembler/MacroAssemblerARM64.h: Removed ARM64's executableCopy(),

which was removed from other assembler backends in r157690.
(JSC::MacroAssemblerARM64::shouldBlindForSpecificArch): Added.
(JSC::MacroAssemblerARM64::lshift64): Added.
(JSC::MacroAssemblerARM64::mul64): Added.
(JSC::MacroAssemblerARM64::rshift64): Added.
(JSC::MacroAssemblerARM64::convertInt64ToDouble): Added.
(JSC::MacroAssemblerARM64::branchMul64): Added.
(JSC::MacroAssemblerARM64::branchNeg64): Added.
(JSC::MacroAssemblerARM64::scratchRegisterForBlinding): Added.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithDiv): Changed
SpeculateIntegerOperand to SpeculateInt32Operand,
nodeCanIgnoreNegativeZero() to bytecodeCanIgnoreNegativeZero(), and
nodeUsedAsNumber() to bytecodeUsesAsNumber().
(JSC::DFG::SpeculativeJIT::compileArithMod): Changed
nodeCanIgnoreNegativeZero() to bytecodeCanIgnoreNegativeZero().

4:22 PM Changeset in webkit [159260] by Lucas Forschler
  • 5 edits in branches/safari-537.73-branch/Source

Versioning.

4:20 PM Changeset in webkit [159259] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.9

New Tag.

4:07 PM Changeset in webkit [159258] by Lucas Forschler
  • 2 edits in branches/safari-537.73-branch/Source/WebKit2

Merged r159248. <rdar://problem/15464319>

3:57 PM Changeset in webkit [159257] by timothy_horton@apple.com
  • 3 edits in trunk/LayoutTests

fullscreen/anonymous-block-merge-crash.html often times out in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=124318

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:

Mark test as timing out on WebKit1 only.

3:55 PM Changeset in webkit [159256] by Lucas Forschler
  • 1 copy in tags/Safari-537.60.6

New Tag.

3:55 PM Changeset in webkit [159255] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Move more state tracking to FrameLoadState
https://bugs.webkit.org/show_bug.cgi?id=124316

Reviewed by Simon Fraser.

  • UIProcess/FrameLoadState.cpp:

(WebKit::FrameLoadState::didStartProvisionalLoad):
(WebKit::FrameLoadState::didReceiveServerRedirectForProvisionalLoad):
(WebKit::FrameLoadState::didFailProvisionalLoad):
(WebKit::FrameLoadState::didCommitLoad):
(WebKit::FrameLoadState::didFinishLoad):
(WebKit::FrameLoadState::didFailLoad):
(WebKit::FrameLoadState::didSameDocumentNotification):
(WebKit::FrameLoadState::setUnreachableURL):

  • UIProcess/FrameLoadState.h:
  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::didCommitLoad):
(WebKit::WebFrameProxy::didFinishLoad):
(WebKit::WebFrameProxy::didFailLoad):
(WebKit::WebFrameProxy::didSameDocumentNavigation):
(WebKit::WebFrameProxy::setUnreachableURL):

3:53 PM Changeset in webkit [159254] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Expose a private flag on WKView to indicate whether it's using a remote layer tree drawing area
https://bugs.webkit.org/show_bug.cgi?id=124317

Reviewed by Anders Carlsson.

Expose isUsingUISideCompositing on WKView in the private header,
which returns YES if the view is using a DrawingAreaTypeRemoteLayerTree.

  • UIProcess/API/mac/WKView.mm:

(-[WKView isUsingUISideCompositing]):

  • UIProcess/API/mac/WKViewPrivate.h:
3:36 PM Changeset in webkit [159253] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebKit2

Maybe the last attempt to fix the GTK build.

  • UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
  • UIProcess/API/gtk/WebKitContextMenuPrivate.h:
3:30 PM Changeset in webkit [159252] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

One more attempt to fix the GTK build.

  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
3:26 PM Changeset in webkit [159251] by Lucas Forschler
  • 1 delete in tags/Safari-537.73.8/safari-537.73-branch

Remove Duplicate Tag.

3:25 PM Changeset in webkit [159250] by Lucas Forschler
  • 1 delete in tags/Safari-537.73.7/safari-537.73-branch

Remove Duplicate Tag.

3:20 PM Changeset in webkit [159249] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

Removed deprecated download delegates.
https://bugs.webkit.org/show_bug.cgi?id=124309
<rdar://problem/13570414>

Patch by Gordon Sheridan <gordon_sheridan@apple.com> on 2013-11-13
Reviewed by Anders Carlsson.

  • Misc/WebDownload.mm:

(-[WebDownloadInternal respondsToSelector:]):
Removed download:shouldBeginChildDownloadOfSource:delegate and
download:didBeginChildDownload.

3:18 PM Changeset in webkit [159248] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Plug-in processes hang around for 10 sec after Safari quits
https://bugs.webkit.org/show_bug.cgi?id=124314
<rdar://problem/15460613>

Reviewed by Simon Fraser.

Call stopRunLoop instead of instead of RunLoop::stop().

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::didClose):

3:11 PM Changeset in webkit [159247] by Csaba Osztrogonác
  • 20 edits in trunk/Source/WebKit2

URTBF after r159234.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/efl/WebEventFactory.cpp:

(WebKit::WebEventFactory::createWebTouchEvent):

  • UIProcess/API/C/WKGrammarDetail.cpp:
  • UIProcess/API/C/efl/WKEventEfl.cpp:
  • UIProcess/API/gtk/WebKitBackForwardList.cpp:

(webkitBackForwardListCreateList):
(webkitBackForwardListChanged):
(webkit_back_forward_list_get_back_list_with_limit):
(webkit_back_forward_list_get_forward_list_with_limit):

  • UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
  • UIProcess/API/gtk/WebKitContextMenu.cpp:

(webkitContextMenuCreate):

  • UIProcess/API/gtk/WebKitContextMenuItem.cpp:

(webkitContextMenuItemCreate):

  • UIProcess/API/gtk/WebKitContextMenuPrivate.h:
  • UIProcess/API/gtk/WebKitCookieManager.cpp:

(webkitCookieManagerGetDomainsWithCookiesCallback):

  • UIProcess/API/gtk/WebKitFileChooserRequest.cpp:

(webkit_file_chooser_request_get_mime_types):
(webkit_file_chooser_request_get_mime_types_filter):
(webkit_file_chooser_request_select_files):
(webkit_file_chooser_request_get_selected_files):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewPopulateContextMenu):

  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:

(toImmutableArray):
(webkit_web_view_group_add_user_style_sheet):

  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/WebGrammarDetail.cpp:

(WebKit::WebGrammarDetail::create):
(WebKit::WebGrammarDetail::WebGrammarDetail):
(WebKit::WebGrammarDetail::guesses):

  • UIProcess/WebGrammarDetail.h:
  • UIProcess/WebTextCheckerClient.cpp:

(WebKit::WebTextCheckerClient::checkGrammarOfString):
(WebKit::WebTextCheckerClient::guessesForWord):

  • UIProcess/efl/WebUIPopupMenuClient.cpp:

(WebUIPopupMenuClient::showPopupMenu):

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

Remove Document::m_savedRenderView pointer.
<https://webkit.org/b/124310>

This pointer held a copy of m_renderView while the document was in
page cache, and null while it wasn't. It was not used for anything.

Reviewed by Anders Carlsson.

3:08 PM Changeset in webkit [159245] by beidson@apple.com
  • 9 edits in trunk/Source/WebCore

Move setIndexKeys() to the IDBServerConnection
https://bugs.webkit.org/show_bug.cgi?id=124301

Reviewed by Anders Carlsson.

This is a big step towards moving knowledge of the backing store out of the frontend.

  • Modules/indexeddb/IDBBackingStoreInterface.h:
  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::setIndexKeys):

  • Modules/indexeddb/IDBServerConnection.h:
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::setIndexKeys):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::PutOperation::perform):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::IDBBackingStoreLevelDB::makeIndexWriters):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
3:04 PM Changeset in webkit [159244] by Lucas Forschler
  • 5 edits in branches/safari-537.73-branch/Source

Versioning.

2:58 PM Changeset in webkit [159243] by Joseph Pecoraro
  • 63 edits in trunk/Source/WebCore

Web Inspector: Extract InspectorFrontendDispatchers from InspectorFrontend
https://bugs.webkit.org/show_bug.cgi?id=124246

Reviewed by NOBODY (OOPS!).

No new tests, this is just refactoring without changing functionality.
Set of changes made:

  • Remove "class InspectorFrontend" that currently does nothing but hold sub-frontend dispatcher classes. Catches some stale code.
  • Generate individual "class InspectorFooFrontendDispatcher" classes for domains that have events. Catches some unnecessary classes.
  • Simplify the Base Agent interface from optional set/clearFrontend/register to required didCreateFrontendAndBackend/willDestroyFrontendAndBackend. New agents must implement this and this will be their cue to setup frontend and backend dispatchers.
  • Base Agent no longer needs to be templated or have an Interface class.
  • While we are changing subclass BaseAgent superclass calls, use ASCIILiteral
  • In agents with events, convert "InspectorFrontend::Foo* m_frontend" to "unique_ptr<InspectorFooFrontendDispatcher> m_frontendDispatcher" and update uses as appropriate within the classes.
  • In agents with events, create dispatchers in didCreateFrontendAndBackend and clear them in willDestroyFrontendAndBackend.
  • inspector/CodeGeneratorInspector.py:

(Generator):
(Generator.go):
(Generator.process_event):

  • inspector/CodeGeneratorInspectorStrings.py:

(InspectorFrontendChannel):

  • inspector/ConsoleMessage.cpp:

(WebCore::ConsoleMessage::addToFrontend):
(WebCore::ConsoleMessage::updateRepeatCountInConsole):

  • inspector/ConsoleMessage.h:
  • inspector/InjectedScriptHost.h:
  • inspector/InspectorAgent.cpp:

(WebCore::InspectorAgent::InspectorAgent):
(WebCore::InspectorAgent::didCreateFrontendAndBackend):
(WebCore::InspectorAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::evaluateForTestInFrontend):
(WebCore::InspectorAgent::inspect):

  • inspector/InspectorAgent.h:

(WebCore::InspectorAgent::hasFrontend):

  • inspector/InspectorAgentRegistry.cpp:

(WebCore::InspectorAgentRegistry::append):
(WebCore::InspectorAgentRegistry::didCreateFrontendAndBackend):
(WebCore::InspectorAgentRegistry::willDestroyFrontendAndBackend):

  • inspector/InspectorAgentRegistry.h:
  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
(WebCore::InspectorApplicationCacheAgent::didCreateFrontendAndBackend):
(WebCore::InspectorApplicationCacheAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
(WebCore::InspectorApplicationCacheAgent::networkStateChanged):

  • inspector/InspectorApplicationCacheAgent.h:
  • inspector/InspectorBaseAgent.h:

(WebCore::InspectorBaseAgent::discardAgent):
(WebCore::InspectorBaseAgent::InspectorBaseAgent):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCSSAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorCSSAgent::mediaQueryResultChanged):
(WebCore::InspectorCSSAgent::didCreateNamedFlow):
(WebCore::InspectorCSSAgent::willRemoveNamedFlow):
(WebCore::InspectorCSSAgent::regionLayoutUpdated):
(WebCore::InspectorCSSAgent::regionOversetChanged):
(WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
(WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
(WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
(WebCore::InspectorCSSAgent::styleSheetChanged):

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

(WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
(WebCore::InspectorCanvasAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCanvasAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorCanvasAgent::notifyRenderingContextWasWrapped):
(WebCore::InspectorCanvasAgent::findFramesWithUninstrumentedCanvases):
(WebCore::InspectorCanvasAgent::frameNavigated):

  • inspector/InspectorCanvasAgent.h:
  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
(WebCore::InspectorConsoleAgent::enable):
(WebCore::InspectorConsoleAgent::clearMessages):
(WebCore::InspectorConsoleAgent::didCreateFrontendAndBackend):
(WebCore::InspectorConsoleAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorConsoleAgent::addMessageToConsole):
(WebCore::InspectorConsoleAgent::didFinishXHRLoading):
(WebCore::InspectorConsoleAgent::addConsoleMessage):

  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::show):
(WebCore::InspectorController::close):

  • inspector/InspectorController.h:

(WebCore::InspectorController::hasFrontend):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::InspectorDOMAgent):
(WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMAgent::setDocument):
(WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
(WebCore::InspectorDOMAgent::pushNodePathToFrontend):
(WebCore::InspectorDOMAgent::focusNode):
(WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
(WebCore::InspectorDOMAgent::didCommitLoad):
(WebCore::InspectorDOMAgent::didInsertDOMNode):
(WebCore::InspectorDOMAgent::didRemoveDOMNode):
(WebCore::InspectorDOMAgent::didModifyDOMAttr):
(WebCore::InspectorDOMAgent::didRemoveDOMAttr):
(WebCore::InspectorDOMAgent::styleAttributeInvalidated):
(WebCore::InspectorDOMAgent::characterDataModified):
(WebCore::InspectorDOMAgent::didPushShadowRoot):
(WebCore::InspectorDOMAgent::willPopShadowRoot):

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDOMDebuggerAgent.cpp:

(WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
(WebCore::InspectorDOMDebuggerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMDebuggerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
(WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
(WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
(WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):

  • inspector/InspectorDOMDebuggerAgent.h:
  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
(WebCore::InspectorDOMStorageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMStorageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):

  • inspector/InspectorDOMStorageAgent.h:
  • inspector/InspectorDatabaseAgent.cpp:

(WebCore::InspectorDatabaseAgent::didOpenDatabase):
(WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
(WebCore::InspectorDatabaseAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDatabaseAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDatabaseAgent::enable):

  • inspector/InspectorDatabaseAgent.h:
  • inspector/InspectorDatabaseResource.cpp:

(WebCore::InspectorDatabaseResource::bind):

  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::InspectorDebuggerAgent::enable):
(WebCore::InspectorDebuggerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDebuggerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDebuggerAgent::addMessageToConsole):
(WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
(WebCore::InspectorDebuggerAgent::scriptExecutionBlockedByCSP):
(WebCore::InspectorDebuggerAgent::didParseSource):
(WebCore::InspectorDebuggerAgent::failedToParseSource):
(WebCore::InspectorDebuggerAgent::didPause):
(WebCore::InspectorDebuggerAgent::didContinue):
(WebCore::InspectorDebuggerAgent::breakProgram):
(WebCore::InspectorDebuggerAgent::clearBreakDetails):
(WebCore::InspectorDebuggerAgent::reset):

  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorHeapProfilerAgent.cpp:

(WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
(WebCore::InspectorHeapProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorHeapProfilerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorHeapProfilerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorHeapProfilerAgent::getHeapSnapshot):
(WebCore::InspectorHeapProfilerAgent::takeHeapSnapshot):

  • inspector/InspectorHeapProfilerAgent.h:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
(WebCore::InspectorIndexedDBAgent::didCreateFrontendAndBackend):
(WebCore::InspectorIndexedDBAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorIndexedDBAgent.h:
  • inspector/InspectorInputAgent.cpp:

(WebCore::InspectorInputAgent::InspectorInputAgent):
(WebCore::InspectorInputAgent::didCreateFrontendAndBackend):
(WebCore::InspectorInputAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorInputAgent.h:
  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
(WebCore::InspectorLayerTreeAgent::didCreateFrontendAndBackend):
(WebCore::InspectorLayerTreeAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorLayerTreeAgent::layerTreeDidChange):

  • inspector/InspectorLayerTreeAgent.h:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::didCreateFrontendAndBackend):
(WebCore::InspectorMemoryAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorPageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::domContentEventFired):
(WebCore::InspectorPageAgent::loadEventFired):
(WebCore::InspectorPageAgent::frameNavigated):
(WebCore::InspectorPageAgent::frameDetached):
(WebCore::InspectorPageAgent::frameStartedLoading):
(WebCore::InspectorPageAgent::frameStoppedLoading):
(WebCore::InspectorPageAgent::frameScheduledNavigation):
(WebCore::InspectorPageAgent::frameClearedScheduledNavigation):
(WebCore::InspectorPageAgent::willRunJavaScriptDialog):
(WebCore::InspectorPageAgent::didRunJavaScriptDialog):
(WebCore::InspectorPageAgent::scriptsEnabled):

  • inspector/InspectorPageAgent.h:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::addProfile):
(WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
(WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
(WebCore::InspectorProfilerAgent::getHeapSnapshot):
(WebCore::InspectorProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorProfilerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorProfilerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorProfilerAgent::takeHeapSnapshot):
(WebCore::InspectorProfilerAgent::toggleRecordButton):

  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didCreateFrontendAndBackend):
(WebCore::InspectorResourceAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::markResourceAsCached):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didReceiveData):
(WebCore::InspectorResourceAgent::didFinishLoading):
(WebCore::InspectorResourceAgent::didFailLoading):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorResourceAgent::didCreateWebSocket):
(WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorResourceAgent::didCloseWebSocket):
(WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
(WebCore::InspectorResourceAgent::didSendWebSocketFrame):
(WebCore::InspectorResourceAgent::didReceiveWebSocketFrameError):
(WebCore::InspectorResourceAgent::enable):
(WebCore::InspectorResourceAgent::InspectorResourceAgent):

  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorRuntimeAgent.cpp:

(WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):

  • inspector/InspectorRuntimeAgent.h:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend):
(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::sendEvent):

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWorkerAgent.cpp:

(WebCore::InspectorWorkerAgent::WorkerFrontendChannel::WorkerFrontendChannel):
(WebCore::InspectorWorkerAgent::WorkerFrontendChannel::dispatchMessageFromWorker):
(WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
(WebCore::InspectorWorkerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorWorkerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorWorkerAgent::enable):
(WebCore::InspectorWorkerAgent::disable):
(WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
(WebCore::InspectorWorkerAgent::workerGlobalScopeTerminated):
(WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):

  • inspector/InspectorWorkerAgent.h:
  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::PageRuntimeAgent):
(WebCore::PageRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::PageRuntimeAgent::willDestroyFrontendAndBackend):
(WebCore::PageRuntimeAgent::didCreateMainWorldContext):
(WebCore::PageRuntimeAgent::didCreateIsolatedContext):
(WebCore::PageRuntimeAgent::notifyContextCreated):

  • inspector/PageRuntimeAgent.h:
  • inspector/TimelineRecordFactory.h:
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::connectFrontend):
(WebCore::WorkerInspectorController::disconnectFrontend):

  • inspector/WorkerInspectorController.h:

(WebCore::WorkerInspectorController::hasFrontend):

  • inspector/WorkerRuntimeAgent.cpp:

(WebCore::WorkerRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::WorkerRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/WorkerRuntimeAgent.h:
  • inspector/protocol/Input.json:
2:56 PM Changeset in webkit [159242] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.8/safari-537.73-branch

New Tag.

2:56 PM Changeset in webkit [159241] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.8

New Tag.

2:52 PM Changeset in webkit [159240] by oliver@apple.com
  • 2 edits in branches/safari-537.73-branch/LayoutTests

Change testcase to not rely on functions that are only available on trunk

2:25 PM Changeset in webkit [159239] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

compositing/regions/transform-transparent-positioned-video-inside-region.html is flaky on all bots
https://bugs.webkit.org/show_bug.cgi?id=124311

  • platform/mac/TestExpectations:

Mark as flaky image fail.

2:22 PM Changeset in webkit [159238] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Rename FrameView's repaintFixedElementsAfterScrolling and updateFixedElementsAfterScrolling
https://bugs.webkit.org/show_bug.cgi?id=124306

Reviewed by Tim Horton.

FrameView::repaintFixedElementsAfterScrolling() didn't do any repainting, and didn't
just apply to fixed elements. Rename it to updateLayerPositionsAfterScrolling().

updateFixedElementsAfterScrolling() was also confusingly named; rename it
to updateCompositingLayersAfterScrolling().

  • page/FrameView.cpp:

(WebCore::FrameView::setFixedVisibleContentRect):
(WebCore::FrameView::scrollPositionChangedViaPlatformWidget):
(WebCore::FrameView::updateLayerPositionsAfterScrolling):
(WebCore::FrameView::shouldUpdateCompositingLayersAfterScrolling):
(WebCore::FrameView::updateCompositingLayersAfterScrolling):

  • page/FrameView.h:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::scrollTo):

  • platform/ScrollView.h:

(WebCore::ScrollView::updateLayerPositionsAfterScrolling):
(WebCore::ScrollView::updateCompositingLayersAfterScrolling):

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

Generate casting helpers for SVGPaint and SVGColor.
<https://webkit.org/b/124285>

Use CSS_VALUE_TYPE_CASTS to generate type casting helpers for the
SVGPaint and SVGColor classes.

Reviewed by Anders Carlsson.

2:17 PM Changeset in webkit [159236] by andersca@apple.com
  • 1 edit
    2 adds in trunk/Source/WebKit2

Fix build.

Not sure why these weren't added.

  • Shared/APIArray.cpp: Added.
  • Shared/APIArray.h: Added.
2:06 PM Changeset in webkit [159235] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Update ResourceHandleCF to use the didReceiveBuffer() callback
https://bugs.webkit.org/show_bug.cgi?id=124256

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-11-13
Reviewed by Alexey Proskuryakov.

Use didReceiveBuffer() instead of didReceiveData() to pass data back to
the ResourceHandleClient. This unify the update code with the NSURLConnection loader.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::didReceiveData):
(WebCore::ResourceHandle::handleDataArray):

2:05 PM Changeset in webkit [159234] by andersca@apple.com
  • 84 edits
    2 deletes in trunk/Source/WebKit2

Rename ImmutableArray to API::Array
https://bugs.webkit.org/show_bug.cgi?id=124307

Reviewed by Andreas Kling.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(ensureObjectStream):
(-[WKRemoteObjectDecoder initWithInterface:rootObjectDictionary:WebKit::]):

  • Shared/API/c/WKArray.cpp:

(WKArrayGetTypeID):
(WKArrayCreate):
(WKArrayCreateAdoptingValues):

  • Shared/API/c/WKContextMenuItem.cpp:
  • Shared/API/c/WKDictionary.cpp:

(WKDictionaryCopyKeys):

  • Shared/API/c/WKMutableArray.cpp:

(WKMutableArrayCreate):

  • Shared/API/c/WKRenderObject.cpp:

(WKRenderObjectGetChildren):

  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toImpl):

  • Shared/API/c/mac/WKWebArchive.cpp:

(WKWebArchiveCopySubresources):
(WKWebArchiveCopySubframeArchives):

  • Shared/APIArray.cpp: Renamed from Source/WebKit2/Shared/ImmutableArray.cpp.

(API::Array::create):
(API::Array::createStringArray):
(API::Array::Array):
(API::Array::~Array):

  • Shared/APIArray.h: Renamed from Source/WebKit2/Shared/ImmutableArray.h.
  • Shared/Cocoa/WKNSArray.h:

(wrapper):

  • Shared/Cocoa/WKNSArray.mm:

(-[WKNSArray dealloc]):
(-[WKNSArray count]):
(-[WKNSArray objectAtIndex:]):
(-[WKNSArray API::]):

  • Shared/ImmutableDictionary.cpp:

(WebKit::ImmutableDictionary::keys):

  • Shared/ImmutableDictionary.h:
  • Shared/SecurityOriginData.cpp:

(WebKit::performAPICallbackWithSecurityOriginDataVector):

  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):

  • Shared/WebArchive.cpp:

(WebKit::WebArchive::create):
(WebKit::WebArchive::WebArchive):
(WebKit::WebArchive::subresources):
(WebKit::WebArchive::subframeArchives):

  • Shared/WebArchive.h:
  • Shared/WebContextMenuItem.cpp:

(WebKit::WebContextMenuItem::create):
(WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):

  • Shared/WebContextMenuItem.h:
  • Shared/WebOpenPanelParameters.cpp:

(WebKit::WebOpenPanelParameters::acceptMIMETypes):
(WebKit::WebOpenPanelParameters::selectedFileNames):

  • Shared/WebOpenPanelParameters.h:
  • Shared/WebRenderLayer.cpp:

(WebKit::WebRenderLayer::create):
(WebKit::WebRenderLayer::createArrayFromLayerList):
(WebKit::WebRenderLayer::WebRenderLayer):

  • Shared/WebRenderLayer.h:

(WebKit::WebRenderLayer::negativeZOrderList):
(WebKit::WebRenderLayer::normalFlowList):
(WebKit::WebRenderLayer::positiveZOrderList):

  • Shared/WebRenderObject.cpp:

(WebKit::WebRenderObject::create):
(WebKit::WebRenderObject::WebRenderObject):
(WebKit::WebRenderObject::~WebRenderObject):

  • Shared/WebRenderObject.h:

(WebKit::WebRenderObject::children):
(WebKit::WebRenderObject::elementClassNames):

  • UIProcess/API/C/WKBackForwardListRef.cpp:
  • UIProcess/API/C/WKOpenPanelParameters.cpp:
  • UIProcess/API/C/WKPage.cpp:
  • UIProcess/API/C/mac/WKContextPrivateMac.mm:

(WKContextGetInfoForInstalledPlugIns):

  • UIProcess/API/Cocoa/WKBackForwardList.mm:

(-[WKBackForwardList backListWithLimit:]):
(-[WKBackForwardList forwardListWithLimit:]):

  • UIProcess/API/mac/WKBrowsingContextGroup.mm:

(createWKArray):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions):
(WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationProvider.cpp:

(WebKit::WebNotificationProvider::clearNotifications):

  • UIProcess/Plugins/PlugInAutoStartProvider.cpp:

(WebKit::PlugInAutoStartProvider::setAutoStartOriginsArray):

  • UIProcess/Plugins/PlugInAutoStartProvider.h:
  • UIProcess/Plugins/WebPluginSiteDataManager.cpp:

(WebKit::WebPluginSiteDataManager::didGetSitesWithData):
(WebKit::WebPluginSiteDataManager::clearSiteData):

  • UIProcess/Plugins/WebPluginSiteDataManager.h:
  • UIProcess/StatisticsRequest.cpp:

(WebKit::StatisticsRequest::completedRequest):

  • UIProcess/WebApplicationCacheManagerProxy.h:
  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):

  • UIProcess/WebBackForwardList.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setPlugInAutoStartOrigins):
(WebKit::WebContext::pluginInfoStoreDidLoadPlugins):

  • UIProcess/WebContext.h:
  • UIProcess/WebContextClient.cpp:

(WebKit::WebContextClient::plugInInformationBecameAvailable):

  • UIProcess/WebContextClient.h:
  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies):

  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):

  • UIProcess/WebFindClient.cpp:

(WebKit::WebFindMatchesClient::didFindStringMatches):

  • UIProcess/WebFindClient.h:
  • UIProcess/WebFrameProxy.h:
  • UIProcess/WebKeyValueStorageManager.cpp:

(WebKit::didGetKeyValueStorageOrigins):

  • UIProcess/WebKeyValueStorageManager.h:
  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didChangeBackForwardList):

  • UIProcess/WebMediaCacheManagerProxy.cpp:

(WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache):

  • UIProcess/WebMediaCacheManagerProxy.h:
  • UIProcess/WebOpenPanelResultListenerProxy.cpp:

(WebKit::WebOpenPanelResultListenerProxy::chooseFiles):

  • UIProcess/WebOpenPanelResultListenerProxy.h:
  • UIProcess/WebOriginDataManagerProxy.h:
  • UIProcess/WebPageContextMenuClient.cpp:

(WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
(WebKit::WebPageContextMenuClient::showContextMenu):

  • UIProcess/WebPageGroup.cpp:

(WebKit::toStringVector):
(WebKit::WebPageGroup::addUserStyleSheet):
(WebKit::WebPageGroup::addUserScript):

  • UIProcess/WebPageGroup.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::relatedPages):
(WebKit::WebPageProxy::didFindStringMatches):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebResourceCacheManagerProxy.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleCopyOriginsWithApplicationCache):

  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(contextMenuItems):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::originsWithApplicationCache):
(WebKit::toStringVector):
(WebKit::InjectedBundle::addUserScript):
(WebKit::InjectedBundle::addUserStyleSheet):

  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:

(WebKit::InjectedBundleBackForwardListItem::children):

  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:

(WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):

  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:

(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::didAssociateFormControls):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::findLargestFrameInFrameSet):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::childFrames):

  • WebProcess/WebPage/WebFrame.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::trackedRepaintRects):

  • WebProcess/WebPage/WebPage.h:
1:40 PM Changeset in webkit [159233] by Joseph Pecoraro
  • 26 edits
    24 adds
    1 delete in trunk/Source

Web Inspector: Split Inspector.json into individual domain json files
https://bugs.webkit.org/show_bug.cgi?id=124098

Reviewed by Timothy Hatcher.

Source/WebCore:

Split the Inspector domains into their own json file. Generate a
combined Inspector.json from all of the json files at build time
so that the CodeGenerator is unchanged.

  • .gitattributes:
  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/CodeGeneratorInspector.py:

(TypeMap.init):

  • inspector/Inspector.json: Removed.
  • inspector/Scripts/generate-combined-inspector-json.py: Added.
  • inspector/protocol/ApplicationCache.json: Added.
  • inspector/protocol/CSS.json: Added.
  • inspector/protocol/Canvas.json: Added.
  • inspector/protocol/Console.json: Added.
  • inspector/protocol/DOM.json: Added.
  • inspector/protocol/DOMDebugger.json: Added.
  • inspector/protocol/DOMStorage.json: Added.
  • inspector/protocol/Database.json: Added.
  • inspector/protocol/Debugger.json: Added.
  • inspector/protocol/FileSystem.json: Added.
  • inspector/protocol/HeapProfiler.json: Added.
  • inspector/protocol/IndexedDB.json: Added.
  • inspector/protocol/Input.json: Added.
  • inspector/protocol/InspectorDomain.json: Added.
  • inspector/protocol/LayerTree.json: Added.
  • inspector/protocol/Memory.json: Added.
  • inspector/protocol/Network.json: Added.
  • inspector/protocol/Page.json: Added.
  • inspector/protocol/Profiler.json: Added.
  • inspector/protocol/Runtime.json: Added.
  • inspector/protocol/Timeline.json: Added.
  • inspector/protocol/Worker.json: Added.

Source/WebInspectorUI:

Removed now stale comments referring to the combined Inspector.json.
Make update-InspectorBackendCommands helper script generate a
combined Inspector.json to still work for tip of tree.

  • Scripts/update-InspectorBackendCommands.rb:
  • UserInterface/ApplicationCacheObserver.js:
  • UserInterface/CSSObserver.js:
  • UserInterface/CanvasObserver.js:
  • UserInterface/ConsoleObserver.js:
  • UserInterface/DOMObserver.js:
  • UserInterface/DOMStorageObserver.js:
  • UserInterface/DatabaseObserver.js:
  • UserInterface/DebuggerObserver.js:
  • UserInterface/InspectorBackendCommands.js:
  • UserInterface/InspectorObserver.js:
  • UserInterface/LayerTreeObserver.js:
  • UserInterface/NetworkObserver.js:
  • UserInterface/PageObserver.js:
  • UserInterface/ProfilerObserver.js:
  • UserInterface/Resource.js:
  • UserInterface/RuntimeObserver.js:
  • UserInterface/TimelineObserver.js:
1:33 PM Changeset in webkit [159232] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Remove a crash expectation from a test that seems fixed by r159218.

  • platform/mac/TestExpectations:
1:28 PM Changeset in webkit [159231] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Code cleanup: change FrameView::doLayoutWithFrameFlattening() to make it more explicit.
https://bugs.webkit.org/show_bug.cgi?id=124238

Reviewed by Simon Fraser.

Rename doLayoutWithFrameFlattening() and change its signature so that it's inline with
what it does.

Covered by existing tests.

  • page/FrameView.cpp:

(WebCore::FrameView::layout):
(WebCore::FrameView::startLayoutAtMainFrameViewIfNeeded):

  • page/FrameView.h:
1:26 PM Changeset in webkit [159230] by commit-queue@webkit.org
  • 11 edits
    1 add in trunk

Modifying RTCSessionDescription object construction to match the spec
https://bugs.webkit.org/show_bug.cgi?id=124212

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

According to the spec the RTCSessionDescriptionInit parameter in RTCSessionDescription constructor is optional,
which must not be nullable. If the 'type' and/or 'sdp' keys are not present, the string object that stores
them in the RTCSessionDescription class, must be null in those cases. Also, if an object that is not a
Dictionary is passed as argument to the constructor, an exception must be raised.

Source/WebCore:

Existing test was updated.

  • GNUmakefile.list.am:
  • Modules/mediastream/RTCSessionDescription.cpp:

(WebCore::RTCSessionDescription::create):

  • Modules/mediastream/RTCSessionDescription.idl:
  • UseJSC.cmake:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSRTCSessionDescriptionCustom.cpp: Added.

(WebCore::JSRTCSessionDescriptionConstructor::constructJSRTCSessionDescription):

LayoutTests:

  • fast/mediastream/RTCSessionDescription-expected.txt:
  • fast/mediastream/RTCSessionDescription.html:
1:26 PM Changeset in webkit [159229] by commit-queue@webkit.org
  • 2 edits
    2 deletes in trunk/Source/WebKit2

[GTK] Fix build after r159222
https://bugs.webkit.org/show_bug.cgi?id=124305

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-13
Reviewed by Tim Horton.

WebGraphicsContext and its API has been removed.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/API/c/gtk/WKGraphicsContextGtk.cpp: Removed.
  • Shared/API/c/gtk/WKGraphicsContextGtk.h: Removed.
1:22 PM Changeset in webkit [159228] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove redundant return after r159173
https://bugs.webkit.org/show_bug.cgi?id=124303

Reviewed by Geoff Garen.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::loadResourceSynchronously):
Remove redundant return.

12:58 PM Changeset in webkit [159227] by Michał Pakuła vel Rutka
  • 2 edits in trunk/Source/WebKit2

Unreviewed EFL build fix after r159222.

  • CMakeLists.txt:
12:54 PM Changeset in webkit [159226] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Fix release build after r159224.

  • WebCore.exp.in:
12:44 PM Changeset in webkit [159225] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix debug build.

12:44 PM Changeset in webkit [159224] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Remove ChromeClient::paintCustomOverhangArea
https://bugs.webkit.org/show_bug.cgi?id=124304

Reviewed by Beth Dakin.

This function always returns false now; get rid of it.

  • page/Chrome.cpp:
  • page/ChromeClient.h:
  • page/FrameView.cpp:

(WebCore::FrameView::paintOverhangAreas):

12:30 PM Changeset in webkit [159223] by Lucas Forschler
  • 5 edits in branches/safari-537.73-branch/Source

Versioning.

12:29 PM Changeset in webkit [159222] by andersca@apple.com
  • 6 edits
    6 deletes in trunk/Source/WebKit2

Remove WebGraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=124302

Reviewed by Dan Bernstein.

WebGraphicsContext and its API "object", WKGraphicsContextRef was only used
for the overhang paint callback which has been removed.

  • Shared/API/c/WKDeprecatedFunctions.cpp:

(WKGraphicsContextGetCGContext):

  • Shared/API/c/WKGraphicsContext.cpp: Removed.
  • Shared/API/c/WKGraphicsContext.h: Removed.
  • Shared/API/c/cg/WKGraphicsContextCG.cpp: Removed.
  • Shared/API/c/cg/WKGraphicsContextCG.h: Removed.
  • Shared/APIObject.h:
  • Shared/WebGraphicsContext.cpp: Removed.
  • Shared/WebGraphicsContext.h: Removed.
  • UIProcess/API/C/WebKit2_C.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
12:29 PM Changeset in webkit [159221] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.7/safari-537.73-branch

New Tag.

12:29 PM Changeset in webkit [159220] by Lucas Forschler
  • 1 copy in tags/Safari-537.73.7

New Tag.

12:23 PM Changeset in webkit [159219] by Martin Robinson
  • 7 edits in trunk

[MathML] The double bar vertical delimiter does not stretch properly
https://bugs.webkit.org/show_bug.cgi?id=123543

Reviewed by Chris Fleizach.

Source/WebCore:

  • rendering/mathml/RenderMathMLOperator.cpp: Add stretching support for U+2225, which

is another version of the vertical bar.

LayoutTests:

  • mathml/presentation/mo-stretch.html: Add &DoubleVerticalBar; to this test,

which covers the other version of the vertical bar.

  • platform/gtk/mathml/presentation/mo-stretch-expected.png:
  • platform/gtk/mathml/presentation/mo-stretch-expected.txt:
12:03 PM Changeset in webkit [159218] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

ASSERTION FAILED: m_repaintRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint()) after r135816
https://bugs.webkit.org/show_bug.cgi?id=103432

Reviewed by Dave Hyatt.

RenderLayer caches repaint rects in m_repaintRect, and on updating layer
positions after scrolling, asserts that the cached rect is correct. However,
this assertion would sometimes fail if we were scrolling as a result of
doing adjustViewSize() in the middle of layout, because we haven't updated
layer positions post-layout yet.

Fix by having the poorly named FrameView::repaintFixedElementsAfterScrolling()
skip the layer updating if this FrameView is inside of adjusetViewSize() in
layout.

In order to know if we're inside view size adjusting, add a LayoutPhase
member to FrameView, replacing two existing bools that track laying out state.

Investigative work showed that there are many, many ways to re-enter FrameView::layout(),
which makes it hard (but desirable) to more assertions about state changes, but
indicated that saving and restoring the state (via TemporaryChange<LayoutPhase>)
was a good idea.

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::updateCompositingLayersAfterStyleChange):
(WebCore::FrameView::layout):
(WebCore::FrameView::repaintFixedElementsAfterScrolling):

  • page/FrameView.h:
12:03 PM Changeset in webkit [159217] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

WKArrayIsMutable should not be mangled
https://bugs.webkit.org/show_bug.cgi?id=124299

Reviewed by Andreas Kling.

  • Shared/API/c/WKDeprecatedFunctions.cpp:
12:01 PM Changeset in webkit [159216] by timothy_horton@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

r159210 added a period where there previously wasn't one, breaking >100 tests

Rubber-stamped by Oliver Hunt.

  • parser/Parser.cpp:

(JSC::::logError):
Remove the extra period.

11:54 AM Changeset in webkit [159215] by roger_fong@apple.com
  • 10 edits in trunk/LayoutTests

[Windows] Unreviewed gardening of some canvas tests.

  • platform/win/fast/canvas/canvas-draw-canvas-on-canvas-shadow-expected.txt:
  • platform/win/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt:
  • platform/win/fast/canvas/canvas-render-layer-expected.txt:
  • platform/win/fast/canvas/canvas-scale-shadowBlur-expected.txt:
  • platform/win/fast/canvas/canvas-scale-strokePath-shadow-expected.txt:
  • platform/win/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt:
  • platform/win/fast/canvas/canvas-strokeRect-alpha-shadow-expected.txt:
  • platform/win/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt:
  • platform/win/fast/forms/range/slider-mouse-events-expected.txt:
11:44 AM Changeset in webkit [159214] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Delete unused TextPainter function
https://bugs.webkit.org/show_bug.cgi?id=124292

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-11-13
Reviewed by Tim Horton.

New tests are unnecessary since there is no behavior change

  • rendering/TextPainter.cpp:

(WebCore::TextPainter::paintText):

  • rendering/TextPainter.h:
11:33 AM Changeset in webkit [159213] by ap@apple.com
  • 25 edits in trunk/Source/WebCore

Check WebCrypto parameter types when casting
https://bugs.webkit.org/show_bug.cgi?id=124297

Reviewed by Sam Weinig.

Also changed existing toCryptoXXX functions to use TYPE_CASTS_BASE mechanism.

  • bindings/js/JSCryptoAlgorithmDictionary.cpp:

(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
And sure enough, there was a bug caught by the added checks.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):

  • crypto/CryptoAlgorithmParameters.h:

(WebCore::CryptoAlgorithmParameters::ENUM_CLASS):
(WebCore::CryptoAlgorithmParameters::parametersClass):

  • crypto/CryptoKey.h:
  • crypto/CryptoKeyData.h:
  • crypto/CryptoKeySerialization.h:
  • crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:

(WebCore::CryptoAlgorithmAES_CBC::generateKey):

  • crypto/algorithms/CryptoAlgorithmHMAC.cpp:

(WebCore::CryptoAlgorithmHMAC::generateKey):
(WebCore::CryptoAlgorithmHMAC::importKey):

  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::importKey):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::generateKey):

  • crypto/keys/CryptoKeyAES.h:
  • crypto/keys/CryptoKeyDataOctetSequence.h:

(WebCore::isCryptoKeyDataOctetSequence):

  • crypto/keys/CryptoKeyDataRSAComponents.h:

(WebCore::isCryptoKeyDataRSAComponents):

  • crypto/keys/CryptoKeyHMAC.h:
  • crypto/keys/CryptoKeyRSA.h:
  • crypto/keys/CryptoKeySerializationRaw.h:
  • crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:

(WebCore::CryptoAlgorithmAES_CBC::encrypt):
(WebCore::CryptoAlgorithmAES_CBC::decrypt):

  • crypto/mac/CryptoAlgorithmHMACMac.cpp:

(WebCore::CryptoAlgorithmHMAC::sign):
(WebCore::CryptoAlgorithmHMAC::verify):

  • crypto/parameters/CryptoAlgorithmAesCbcParams.h:
  • crypto/parameters/CryptoAlgorithmAesKeyGenParams.h:
  • crypto/parameters/CryptoAlgorithmHmacKeyParams.h:
  • crypto/parameters/CryptoAlgorithmHmacParams.h:
  • crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:
  • crypto/parameters/CryptoAlgorithmRsaSsaKeyParams.h:
  • crypto/parameters/CryptoAlgorithmRsaSsaParams.h:
11:23 AM Changeset in webkit [159212] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Remove failure tests expectations after r159116.

  • platform/efl/TestExpectations:
11:19 AM Changeset in webkit [159211] by ap@apple.com
  • 4 edits in trunk

crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html is failing on Maverics release bot
https://bugs.webkit.org/show_bug.cgi?id=124280

Reviewed by Anders Carlsson.

Source/WebCore:

  • crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::CryptoKeyRSA::buildAlgorithmDescription):

Don't be a muppet, initialize your variables.

LayoutTests:

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

REGRESSION (r158014): Many webpages throw stack overflow exceptions on iOS (because Parser::parseMemberExpression uses ~130K more stack)
https://bugs.webkit.org/show_bug.cgi?id=124177

Reviewed by Michael Saboff.

This patch pushes error handling into NEVER_INLINE functions to perform
the actual error message construction. This dramatically reduces the
stack usage of the Parser. For the large functions (such as parseMemberExpression)
the improvement is on the order of 2.5x reduction in stack usage. For
smaller functions the reduction is in the order of 5-6x.

  • parser/Parser.cpp:

(JSC::::logError):

  • parser/Parser.h:
10:51 AM Changeset in webkit [159209] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Move provisional load state handling to FrameLoadState
https://bugs.webkit.org/show_bug.cgi?id=124291

Reviewed by Dan Bernstein.

  • UIProcess/FrameLoadState.cpp:

(WebKit::FrameLoadState::didStartProvisionalLoad):
(WebKit::FrameLoadState::didReceiveServerRedirectForProvisionalLoad):
(WebKit::FrameLoadState::didFailProvisionalLoad):

  • UIProcess/FrameLoadState.h:
  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::didStartProvisionalLoad):
(WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
(WebKit::WebFrameProxy::didFailProvisionalLoad):

10:30 AM Changeset in webkit [159208] by jer.noble@apple.com
  • 13 edits
    2 adds in trunk

Add support for HTMLMediaElement.fastSeek()
https://bugs.webkit.org/show_bug.cgi?id=124262

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/video-fast-seek.html

Add the fastSeek() method to HTMLMediaElement, and use fastSeek() in
the JavaScript media controls.

Add the new fastSeek() method:

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::fastSeek): Call seekWithTolerance.
(HTMLMediaElement::seek): Call seekWithTolerance with 0 tolerance.
(HTMLMediaElement::seekWithTolerance): Renamed from seek().

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElement.idl:

Add seekWithTolerance() to MediaPlayer:

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::seekWithTolerance): Pass to MediaPlayerPrivate.

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::seekWithTolerance): Default implementation which

calls seek().

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::seek): Call seekWithTolerance with 0 tolerance.
(WebCore::MediaPlayerPrivateAVFoundation::seekWithTolerance): Renamed from seek().

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime): Take tolerance parameters.

Use the new fastSeek() method while actively scrubbing.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.createControls): Add mouse up and down handlers.
(Controller.prototype.handleTimeUpdate): Only update the timeline when not scrubbing.
(Controller.prototype.handleTimelineChange): Use fastSeek().
(Controller.prototype.handleTimelineMouseDown): Start scrubbing.
(Controller.prototype.handleTimelineMouseUp): Stop scrubbing.

LayoutTests:

  • media/video-fast-seek-expected.txt: Added.
  • media/video-fast-seek.html: Added.
10:17 AM Changeset in webkit [159207] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Generate casting helpers for scrolling tree classes.
<https://webkit.org/b/124286>

Added SCROLLING_STATE_NODE_TYPE_CASTS and used it to replace the
hand-written toFoo() casts for ScrollingStateNode subclasses.

Reviewed by Anders Carlsson.

9:59 AM Changeset in webkit [159206] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebKit2

One more fix after r159197.

  • UIProcess/efl/EwkTouchEvent.h:
  • UIProcess/efl/EwkTouchPoint.h:
9:47 AM Changeset in webkit [159205] by hmuller@adobe.com
  • 4 edits in trunk/Source/WebCore

[CSS Shapes] Determining if a line is inside of a shape should only happen in one place
https://bugs.webkit.org/show_bug.cgi?id=121708

Reviewed by Andreas Kling.

The ShapeInfo::lineOverlapsShapeBounds() methods now delegate to the Shape object. The
logic for the Shape overlap test is now the same for ShapeInsideInfo and ShapeOutsideInfo.

No new tests, this is just a refactoring of existing code.

  • rendering/shapes/Shape.h:

(WebCore::Shape::lineOverlapsShapeMarginBounds): Apply lineOverlapsLayoutRect() to the shape-margin bounds LayoutRect.
(WebCore::Shape::lineOverlapsShapePaddingBounds): Apply lineOverlapsLayoutRect() to the shape-padding bounds LayoutRect.
(WebCore::Shape::lineOverlapsLayoutRect): The common code for checking if a line and a LayoutRect overlap.

  • rendering/shapes/ShapeInsideInfo.h: Use lineOverlapsShapePaddingBounds() for lineOverlapShapeBounds().
  • rendering/shapes/ShapeOutsideInfo.h: Use lineOverlapsShapeMarginBounds() for lineOverlapShapeBounds().
9:43 AM Changeset in webkit [159204] by Csaba Osztrogonác
  • 14 edits in trunk/Source/WebKit2

[Gtk][EFL] Fix builds by updating Object::TypeX to Object::Type::X
https://bugs.webkit.org/show_bug.cgi?id=124289

Patch by Brendan Long <b.long@cablelabs.com> on 2013-11-13
Reviewed by Alexey Proskuryakov.

  • Shared/API/c/WKContextMenuItem.cpp:

(WKContextMenuItemGetTypeID):

  • Shared/WebBatteryStatus.h:
  • Shared/WebNetworkInfo.h:
  • UIProcess/API/C/WKGrammarDetail.cpp:

(WKGrammarDetailGetTypeID):

  • UIProcess/API/C/WKPluginSiteDataManager.cpp:

(WKPluginSiteDataManagerGetTypeID):

  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/WebBatteryManagerProxy.h:
  • UIProcess/WebNetworkInfoManagerProxy.h:
  • UIProcess/WebTextChecker.h:
  • UIProcess/WebVibrationProxy.h:
  • UIProcess/WebViewportAttributes.h:
  • UIProcess/efl/WebPopupItemEfl.h:
  • UIProcess/soup/WebSoupRequestManagerProxy.h:
9:39 AM Changeset in webkit [159203] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] Protect repatchCompact from flushConstantPool.
https://bugs.webkit.org/show_bug.cgi?id=124278

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-13
Reviewed by Michael Saboff.

Random crashes may occur with sh4 architecture, when a flushConstantPool occurs in
movlMemRegCompact. As in this case a branch opcode and the constant pool are put
before the movlMemRegCompact, the branch itself is patched when calling repatchCompact
instead of the mov instruction, which is really bad.

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::repatchCompact): Handle this specific case and add an ASSERT.

9:35 AM Changeset in webkit [159202] by andersca@apple.com
  • 5 edits in trunk

Add a Vector constructor that takes an std::initializer_list
https://bugs.webkit.org/show_bug.cgi?id=124287

Reviewed by Antti Koivisto.

Source/WTF:

  • wtf/Compiler.h:
  • wtf/Vector.h:

(WTF::Vector::Vector):

Tools:

  • TestWebKitAPI/Tests/WTF/Vector.cpp:

(TestWebKitAPI::TEST):

9:26 AM Changeset in webkit [159201] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

Remove prefixed template class processing from message receiver generator.
https://bugs.webkit.org/show_bug.cgi?id=123095

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-11-13
Reviewed by Anders Carlsson.

There was a FIXME in messages.py to remove unprefixed WTF template classes,
but in the discussion of the bug report we concluded that in the messages.in
files we should follow the C++ naming convention where none of the WTF
classes require the WTF prefix.

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • Scripts/webkit2/messages.py:

(class_template_headers):

  • Scripts/webkit2/messages_unittest.py:

(std):

  • UIProcess/Storage/StorageManager.messages.in:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.messages.in:
9:13 AM Changeset in webkit [159200] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebKit2

URTBF after r159199 to make cmake and GTK build happy.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
9:01 AM Changeset in webkit [159199] by andersca@apple.com
  • 4 edits
    1 copy in trunk/Source/WebKit2

Add WKDeprecatedFunctions.cpp and move WKArrayIsMutable there
https://bugs.webkit.org/show_bug.cgi?id=124284

Reviewed by Andreas Kling.

  • Shared/API/c/WKDeprecatedFunctions.cpp: Copied from Source/WebKit2/Shared/API/c/WKMutableArray.h.

(WKArrayIsMutable):

  • Shared/API/c/WKMutableArray.cpp:
  • Shared/API/c/WKMutableArray.h:
  • WebKit2.xcodeproj/project.pbxproj:
8:23 AM Changeset in webkit [159198] by jochen@chromium.org
  • 3 edits in trunk/Source/WebCore

Restrict UserGestureIndicator to main thread
https://bugs.webkit.org/show_bug.cgi?id=124277

Reviewed by Andreas Kling.

Certain classes that interact with UserGestureIndicators, e.g.
the DOMTimer, can also live on worker threads. Since a
background thread cannot possible get a user gesture in the
first place, and to avoid races, we turn a UserGestureIndicator
on a background thread into a no-op.

  • dom/UserGestureIndicator.cpp:

(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::~UserGestureIndicator):
(WebCore::UserGestureIndicator::processingUserGesture):

  • dom/UserGestureIndicator.h:
8:19 AM Changeset in webkit [159197] by andersca@apple.com
  • 84 edits in trunk/Source/WebKit2

API::Object::Type should be a strongly typed enum
https://bugs.webkit.org/show_bug.cgi?id=124258

Reviewed by Tim Horton.

  • Shared/API/Cocoa/WKRemoteObjectRegistry.mm:

(-[WKRemoteObjectRegistry _handleMessageWithName:body:]):

  • Shared/APIObject.h:
  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • Shared/ImmutableArray.h:
  • Shared/ImmutableDictionary.h:
  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):

  • Shared/WebArchive.h:
  • Shared/WebArchiveResource.h:
  • Shared/WebBackForwardListItem.h:
  • Shared/WebCertificateInfo.h:
  • Shared/WebConnection.h:
  • Shared/WebContextMenuItem.h:
  • Shared/WebData.h:
  • Shared/WebError.h:
  • Shared/WebGeolocationPosition.h:
  • Shared/WebGeometry.h:
  • Shared/WebGraphicsContext.h:
  • Shared/WebHitTestResult.h:
  • Shared/WebImage.h:
  • Shared/WebNumber.h:
  • Shared/WebOpenPanelParameters.h:
  • Shared/WebRenderLayer.h:
  • Shared/WebRenderObject.h:
  • Shared/WebSecurityOrigin.h:
  • Shared/WebSerializedScriptValue.h:
  • Shared/WebString.h:
  • Shared/WebURL.h:
  • Shared/WebURLRequest.h:
  • Shared/WebURLResponse.h:
  • Shared/WebUserContentURLPattern.h:
  • Shared/mac/ObjCObjectGraph.h:
  • UIProcess/Authentication/AuthenticationChallengeProxy.h:
  • UIProcess/Authentication/AuthenticationDecisionListener.h:
  • UIProcess/Authentication/WebCredential.h:
  • UIProcess/Authentication/WebProtectionSpace.h:
  • UIProcess/Downloads/DownloadProxy.h:
  • UIProcess/GeolocationPermissionRequestProxy.h:
  • UIProcess/Notifications/NotificationPermissionRequest.h:
  • UIProcess/Notifications/WebNotification.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Plugins/WebPluginSiteDataManager.h:
  • UIProcess/WebApplicationCacheManagerProxy.h:
  • UIProcess/WebBackForwardList.h:
  • UIProcess/WebColorPickerResultListenerProxy.h:
  • UIProcess/WebContext.h:
  • UIProcess/WebContextUserMessageCoders.h:

(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):

  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebDatabaseManagerProxy.h:
  • UIProcess/WebEditCommandProxy.h:
  • UIProcess/WebFormSubmissionListenerProxy.h:
  • UIProcess/WebFramePolicyListenerProxy.h:
  • UIProcess/WebFrameProxy.h:
  • UIProcess/WebGeolocationManagerProxy.h:
  • UIProcess/WebGrammarDetail.h:
  • UIProcess/WebIconDatabase.h:
  • UIProcess/WebInspectorProxy.h:
  • UIProcess/WebKeyValueStorageManager.h:
  • UIProcess/WebMediaCacheManagerProxy.h:
  • UIProcess/WebNavigationData.h:
  • UIProcess/WebOpenPanelResultListenerProxy.h:
  • UIProcess/WebOriginDataManagerProxy.h:
  • UIProcess/WebPageGroup.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPreferences.h:
  • UIProcess/WebResourceCacheManagerProxy.h:
  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.h:
  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
  • WebProcess/InjectedBundle/InjectedBundleNavigationAction.h:
  • WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
  • WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:

(WebKit::InjectedBundleUserMessageEncoder::encode):
(WebKit::InjectedBundleUserMessageDecoder::decode):

  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:

(WebKit::InjectedBundle::load):

  • WebProcess/WebPage/PageBanner.h:
  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebPage/WebFrame.h:
  • WebProcess/WebPage/WebInspector.h:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPageGroupProxy.h:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

(-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):

8:10 AM Changeset in webkit [159196] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Remove custom overhang area painting code
https://bugs.webkit.org/show_bug.cgi?id=124282

Reviewed by Andreas Kling.

This code was only used by the Mac port, to draw the linen background color on Lion.
We now do that on the GPU instead so get rid of this code.

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
8:06 AM Changeset in webkit [159195] by dino@apple.com
  • 3 edits in branches/safari-537.73-branch/Source/WebCore

<rdar://problem/15292359>
Fix incorrect merge of r157299 made in r158605.

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::removeClient): Remember to remove clients
from m_clientsToBeNotified.

  • platform/graphics/DisplayRefreshMonitor.h: Might as well make the code

more consistent with ToT while I'm here.

7:34 AM Changeset in webkit [159194] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Factor simple line creation loop to function
https://bugs.webkit.org/show_bug.cgi?id=124279

Reviewed by Andreas Kling.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::Style::Style):

Capture style that affects line layout to a struct.

(WebCore::SimpleLineLayout::textWidth):
(WebCore::SimpleLineLayout::measureWord):
(WebCore::SimpleLineLayout::createLineRuns):

Factor the line loop here.

(WebCore::SimpleLineLayout::createTextRuns):

7:32 AM Changeset in webkit [159193] by Antti Koivisto
  • 2 edits in trunk/LayoutTests
5:25 AM Changeset in webkit [159192] by Antti Koivisto
  • 12 edits
    8 adds in trunk

Support overflow-wrap:break-word on simple line path
https://bugs.webkit.org/show_bug.cgi?id=124206

Source/WebCore:

Reviewed by Andreas Kling.

Pure text documents are rendered with break-word. It is also common in discussion board type sites.

This also makes many <textarea>'s rendered using the simple line path.

Tests: fast/forms/basic-textareas-quirks-simple-lines.html

fast/forms/linebox-overflow-in-textarea-padding-simple-lines.html
fast/forms/negativeLineHeight-simple-lines.html
fast/forms/textAreaLineHeight-simple-lines.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange):
(WebCore::RenderBlock::markShapeInsideDescendantsForLayout):

Invalidate the cached line layout mode on shape-inside style change.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseForText):
(WebCore::SimpleLineLayout::canUseFor):
(WebCore::SimpleLineLayout::createTextRuns):

LayoutTests:

Reviewed by Andreas Kling.

Force these to use line boxes, add ref test versions comparing the paths.

  • fast/forms/basic-textareas-quirks-simple-lines-expected.html: Added.
  • fast/forms/basic-textareas-quirks-simple-lines.html: Added.
  • fast/forms/basic-textareas-quirks.html:
  • fast/forms/linebox-overflow-in-textarea-padding-simple-lines-expected.html: Added.
  • fast/forms/linebox-overflow-in-textarea-padding-simple-lines.html: Added.
  • fast/forms/linebox-overflow-in-textarea-padding.html:
  • fast/forms/negativeLineHeight-simple-lines-expected.html: Added.
  • fast/forms/negativeLineHeight-simple-lines.html: Added.
  • fast/forms/negativeLineHeight.html:
  • fast/forms/textAreaLineHeight-simple-lines-expected.html: Added.
  • fast/forms/textAreaLineHeight-simple-lines.html: Added.
  • fast/forms/textAreaLineHeight.html:
  • fast/parser/entity-comment-in-textarea.html: Made this independent of line layout mode.
  • fast/replaced/width100percent-textarea.html:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.txt:
5:17 AM Changeset in webkit [159191] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Turn some not-so-rare ElementRareData bits into Node flags.
<https://webkit.org/b/124275>

The following 4 bits seem to be the most commonly set:

  • childrenAffectedByHover()
  • childrenAffectedByFirstChildRules()
  • childrenAffectedByLastChildRules()
  • childrenAffectedByDirectAdjacentRules()

Turning them into Node flags means we don't have to allocate full
ElementRareData object in many cases. I also took this opportunity
to make Node's flag twiddling functions available to subclasses.

1.38 MB progression on HTML5-8266 locally.

Reviewed by Antti Koivisto.

4:42 AM Changeset in webkit [159190] by commit-queue@webkit.org
  • 43 edits in trunk/Source/WebKit2

[EFL][WK2] Convert some more OwnPtr/PassOwnPtr to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=124241

Patch by Sergio Correia <Sergio Correia> on 2013-11-13
Reviewed by Gyuyoung Kim.

The modified files are located under UIProcess/{efl,API/efl}.

  • UIProcess/API/efl/EwkView.cpp:
  • UIProcess/API/efl/EwkView.h:
  • UIProcess/API/efl/GestureRecognizer.cpp:
  • UIProcess/API/efl/GestureRecognizer.h:
  • UIProcess/API/efl/ewk_back_forward_list_private.h:
  • UIProcess/API/efl/ewk_color_picker_private.h:
  • UIProcess/API/efl/ewk_context.cpp:
  • UIProcess/API/efl/ewk_context_menu.cpp:
  • UIProcess/API/efl/ewk_context_menu_item.cpp:
  • UIProcess/API/efl/ewk_context_menu_item_private.h:
  • UIProcess/API/efl/ewk_context_private.h:
  • UIProcess/API/efl/ewk_cookie_manager.cpp:
  • UIProcess/API/efl/ewk_cookie_manager_private.h:
  • UIProcess/API/efl/ewk_database_manager_private.h:
  • UIProcess/API/efl/ewk_favicon_database_private.h:
  • UIProcess/API/efl/ewk_popup_menu.cpp:
  • UIProcess/API/efl/ewk_popup_menu_item_private.h:
  • UIProcess/API/efl/ewk_popup_menu_private.h:
  • UIProcess/API/efl/ewk_settings_private.h:
  • UIProcess/API/efl/ewk_storage_manager.cpp:
  • UIProcess/API/efl/ewk_storage_manager_private.h:
  • UIProcess/API/efl/ewk_view.cpp:
  • UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
  • UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
  • UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
  • UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
  • UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
  • UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
  • UIProcess/API/efl/tests/test_ewk2_view.cpp:
  • UIProcess/efl/ContextHistoryClientEfl.h:
  • UIProcess/efl/ContextMenuClientEfl.h:
  • UIProcess/efl/DownloadManagerEfl.h:
  • UIProcess/efl/FindClientEfl.h:
  • UIProcess/efl/FormClientEfl.h:
  • UIProcess/efl/PageLoadClientEfl.h:
  • UIProcess/efl/PagePolicyClientEfl.h:
  • UIProcess/efl/PageUIClientEfl.h:
  • UIProcess/efl/PageViewportControllerClientEfl.h:
  • UIProcess/efl/RequestManagerClientEfl.h:
  • UIProcess/efl/VibrationClientEfl.cpp:
  • UIProcess/efl/VibrationClientEfl.h:
  • UIProcess/efl/ViewClientEfl.h:
4:26 AM Changeset in webkit [159189] by Antti Koivisto
  • 2 edits in trunk/PerformanceTests

This was supposed to test overflow-wrap:break-word instead of word-break:break-all.

Rubber-stamped by Andreas Kling.

  • Layout/line-layout-simple.html:
3:59 AM Changeset in webkit [159188] by Csaba Osztrogonác
  • 15 edits in trunk/Source/WebCore

Cleanup the build from unused parameters in WebCore
https://bugs.webkit.org/show_bug.cgi?id=124199.

Patch by Tibor Meszaros <mtibor@inf.u-szeged.hu> on 2013-11-13
Reviewed by Csaba Osztrogonác.

  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::cachedOrPendingImage):

  • dom/Document.cpp:

(WebCore::Document::scriptedAnimationControllerSetThrottled):

  • fileapi/ThreadableBlobRegistry.cpp:

(WebCore::ThreadableBlobRegistry::registerBlobURL):

  • html/HTMLAnchorElement.cpp:

(WebCore::shouldProhibitLinks):

  • html/parser/XSSAuditor.cpp:

(WebCore::isSemicolonSeparatedAttribute):

  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::didReceiveData):
(WebCore::DocumentThreadableLoader::didFail):
(WebCore::DocumentThreadableLoader::preflightFailure):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::imageSizeForRenderer):

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::animate):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::animate):

  • platform/graphics/WidthIterator.cpp:

(WebCore::applyFontTransforms):

  • rendering/RenderView.cpp:

(WebCore::RenderView::setIsInWindow):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):
(WebCore::RenderStyle::changeRequiresLayerRepaint):
(WebCore::RenderStyle::changeRequiresRecompositeLayer):

  • testing/Internals.cpp:

(WebCore::Internals::setHeaderHeight):
(WebCore::Internals::setCaptionsStyleSheetOverride):

3:51 AM Changeset in webkit [159187] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

Refalize CSSCursorImageValue.
<https://webkit.org/b/124272>

Make CSSCursorImageValue constructor return a PassRef, and have it
take the image CSSValue as a PassRef (and store it internally in a
Ref<CSSValue>.)

Had to add a Ref version of compareCSSValuePtr() to make this work.

Reviewed by Antti Koivisto.

3:46 AM Changeset in webkit [159186] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

RenderTableSection: Cell structures don't need allocation padding.
<https://webkit.org/b/124263>

The row structure data gets shrunk-to-fit once we get to layout,
but per-row cell structures get no such luxury. Fortuntely we know
ahead of time how many cells a row needs to accomodate, so we can
just use Vector::resizeToFit() instead of Vector::grow().

1.25 MB progression on HTML5-8266 locally.

Reviewed by Antti Koivisto.

3:45 AM Changeset in webkit [159185] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Avoid unnecessarily padding the FontDescription families vector.
<https://webkit.org/b/124267>

Use a bit of reserveInitialCapacity+uncheckedAppend grease to avoid
jumping all the way to capacity=16 when a style has more than just
a single font-family in it.

130 kB progression on HTML5-8266 locally.

Reviewed by Antti Koivisto.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyFontFamily::applyValue):

3:38 AM Changeset in webkit [159184] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Make remaining CSSPrimitiveValue constructors return PassRef.
<https://webkit.org/b/124270>

..and same with the corresponding CSSValuePool functions.

Reviewed by Antti Koivisto.

3:25 AM Changeset in webkit [159183] by commit-queue@webkit.org
  • 1 edit
    2 deletes in trunk/LayoutTests

Removing fast/mediastream/constructors.html LayoutTest
https://bugs.webkit.org/show_bug.cgi?id=124259

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-11-13
Reviewed by Philippe Normand.

Apart from being wrong, it was testing the mediastream WebRTC objects constructors, which are already being
tested in each particular mediastream WebRTC object LayoutTest.

  • fast/mediastream/constructors-expected.txt: Removed.
  • fast/mediastream/constructors.html: Removed.
3:07 AM Changeset in webkit [159182] by mario@webkit.org
  • 2 edits in trunk/Tools

Unreviewed GTK gardening. Updated rebaseline unit tests to include WK2 bot.

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaselineTest.test_baseline_directory): Updated.

2:02 AM Changeset in webkit [159181] by commit-queue@webkit.org
  • 17 edits in trunk/Tools

[ATK] Support compilation of EFL/GTK without accessibility
https://bugs.webkit.org/show_bug.cgi?id=122448

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-11-13
Reviewed by Chris Fleizach.

Added missing HAVE(ACCESSIBILITY) guards and stubs to ATK's related files,
so that in case of turning off the HAVE_ACCESSIBILITY macro EFL/GTK would compile properly.

  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/atk/AccessibilityCallbacks.h:
  • DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.cpp:
  • DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.h:
  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:

(WTR::AccessibilityController::rootElement):
(WTR::AccessibilityController::focusedElement):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.h:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/PlatformEfl.cmake:
1:31 AM Changeset in webkit [159180] by ap@apple.com
  • 21 edits
    7 copies
    7 adds in trunk

Implement key generation and JWK import for RSASSA-PKCS1-v1_5
https://bugs.webkit.org/show_bug.cgi?id=124236

Reviewed by Sam Weinig.

Source/WebCore:

Tests: crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html

crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html

  • WebCore.xcodeproj/project.pbxproj: Added new files.
  • bindings/js/JSCryptoAlgorithmBuilder.cpp:

(WebCore::JSCryptoAlgorithmBuilder::add):

  • bindings/js/JSCryptoAlgorithmBuilder.h:
  • crypto/CryptoAlgorithmDescriptionBuilder.h:

Added a way to add an Uint8Array, as needed for RSA key.algorithm.publicExponent.

  • bindings/js/JSCryptoAlgorithmDictionary.cpp:

(WebCore::createAesCbcParams): Removed unneeded JSC prefixes.
(WebCore::createAesKeyGenParams): Ditto.
(WebCore::createHmacParams): Ditto.
(WebCore::createHmacKeyParams): Ditto.
(WebCore::createRsaKeyGenParams): Added.
(WebCore::createRsaSsaKeyParams): Added. WebCrypto currently doesn't specify any
parameters for importKey, so the structure remains blank (unlike with JWK).
(WebCore::createRsaSsaParams): Added (currently unused, will be sued for sign/verify soon).
(WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt): Removed unneeded JSC prefixes.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForSign): Added support for RSAES_PKCS1_v1_5.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest): Removed unneeded JSC prefixes.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey): Added support for RSAES_PKCS1_v1_5.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey): Removed unneeded JSC prefixes.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForWrapKey): Ditto.
(WebCore::JSCryptoAlgorithmDictionary::createParametersForUnwrapKey): Ditto.

  • bindings/js/JSCryptoKeySerializationJWK.h:
  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::getJSArrayFromJSON): Added.
(WebCore::getBigIntegerVectorFromJSON): Added.
(WebCore::createRSASSAKeyParameters): Create parameters for key import. The key
will remember which algorithm it's allowed to be used with.
(WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm): Added support for
RS256...RS512 (tha is, RSAES_PKCS1_v1_5 with SHA-256...SHA-512).
(WebCore::JSCryptoKeySerializationJWK::keyDataOctetSequence): Split out of keyData().
(WebCore::JSCryptoKeySerializationJWK::keyDataRSAComponents): Added code to read
RSA key components from JWK.
(WebCore::JSCryptoKeySerializationJWK::keyData): Call one of the above functions.

  • crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp: Added.

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
Placeholders.

  • crypto/CryptoKey.h: (WebCore::CryptoKeyClass): Added RSA key class for poor man's RTTI.
  • crypto/CryptoKeyData.h: (WebCore::CryptoKeyData::FormatRSAComponents): Added RSAComponents

for poor man's RTTI.

  • crypto/algorithms/CryptoAlgorithmAES_CBC.cpp: (WebCore::CryptoAlgorithmAES_CBC::importKey):
  • crypto/algorithms/CryptoAlgorithmHMAC.cpp: (WebCore::CryptoAlgorithmHMAC::importKey):
  • crypto/keys/CryptoKeyAES.h:

(WebCore::isCryptoKeyAES):
(WebCore::toCryptoKeyAES):

  • crypto/keys/CryptoKeyDataOctetSequence.h:

(WebCore::toCryptoKeyDataOctetSequence):

  • crypto/keys/CryptoKeyHMAC.h:

(WebCore::isCryptoKeyHMAC):
(WebCore::toCryptoKeyHMAC):

  • crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:

(WebCore::CryptoAlgorithmAES_CBC::encrypt):
(WebCore::CryptoAlgorithmAES_CBC::decrypt):

  • crypto/mac/CryptoAlgorithmHMACMac.cpp:

(WebCore::CryptoAlgorithmHMAC::sign):
(WebCore::CryptoAlgorithmHMAC::verify):
Switched from "as" functions to "is" and "to" ones, as that's more idiomatic.

  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp: Added.
  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h: Added.

Glue code for importKey/generateKey for now.

  • crypto/keys/CryptoKeyDataRSAComponents.cpp: Added.

(WebCore::CryptoKeyDataRSAComponents::CryptoKeyDataRSAComponents):
(WebCore::CryptoKeyDataRSAComponents::~CryptoKeyDataRSAComponents):

  • crypto/keys/CryptoKeyDataRSAComponents.h: Added.

(WebCore::toCryptoKeyDataRSAComponents):
Added a structure to hold RSA key components, extracted from JWK or another format.

  • crypto/keys/CryptoKeyRSA.h: Added.
  • crypto/mac/CryptoKeyRSAMac.cpp: Added.
  • crypto/mac/CryptoAlgorithmRegistryMac.cpp:

(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
Register RSASSA_PKCS1_v1_5.

  • crypto/parameters/CryptoAlgorithmHmacKeyParams.h: Added a constructor to make

sure that hasLength is never left uninitialized, even when reading formats that
don't contain a length.

  • crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h: Added.
  • crypto/parameters/CryptoAlgorithmRsaSsaKeyParams.h: Added.
  • crypto/parameters/CryptoAlgorithmRsaSsaParams.h: Added.

Added parameter structures that are needed for RSASSA_PKCS1_v1_5.

LayoutTests:

  • crypto/subtle/resources/common.js:

(hexToArrayBuffer): Fixed a typo
(Base64URL.stringify):
(Base64URL.parse):
Added helpers to deal with Base64URL, as needed for JWK.

  • crypto/subtle/rsassa-pkcs1-v1_5-generate-key-expected.txt: Added.
  • crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html: Added.
  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-expected.txt: Added.
  • crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html: Added.
Note: See TracTimeline for information about the timeline view.