{"push_id":1066608118,"size":122,"distinct_size":0,"ref":"refs/heads/master","head":"377ca5d8eb2c88dd9a4faab0dfc3bbf5aab00ad4","before":"11866a4352b81e6d3db8c1cff5226a3cd1b5f398","commits":[{"sha":"db8aa02969f5b029d49dc32cd3b2f0454e065de2","author":{"email":"2efb5d4516de6a364ebf87f7de212180cf1e5c23@free.fr","name":"fred.wang@free.fr"},"message":"Refactor RenderMathMLFraction layout to avoid using flexbox\nhttps://bugs.webkit.org/show_bug.cgi?id=153917\n\nPatch by Frederic Wang <fwang@igalia.com> on 2016-04-11\nReviewed by Sergio Villar Senin.\n\nSource/WebCore:\n\nBased on a patch by Alejandro G. Castro <alex@igalia.com>\n\nImplement the layoutBlock method to handle the layout calculations\ndirectly in the class. This also fixes parsing of absolute values for\nlinethickness attribute (e.g. 10px) and adds support for the AxisHeight\nand FractionRuleThickness MATH parameters.\n\nTest: mathml/opentype/fraction-line.html\n\n* accessibility/AccessibilityRenderObject.cpp:\n(WebCore::AccessibilityRenderObject::mathLineThickness): Use the thickness relative to the\ndefault line thickness since that's really what is expected by mathml-line-fraction.html\n* css/mathml.css: Remove flexbox properties for mfrac.\n(mfrac): Deleted.\n(mfrac > *): Deleted.\n(mfrac[numalign=\"left\"] > :first-child): Deleted.\n(mfrac[numalign=\"right\"] > :first-child): Deleted.\n(mfrac[denomalign=\"left\"] > :last-child): Deleted.\n(mfrac[denomalign=\"right\"] > :last-child): Deleted.\n(mfrac > :first-child): Deleted.\n(mfrac > :last-child): Deleted.\n(mfrac): Deleted.\n* rendering/mathml/RenderMathMLBlock.cpp: Introduce a helper function to retrieve the math\naxis height.\n(WebCore::RenderMathMLBlock::mathAxisHeight):\n* rendering/mathml/RenderMathMLBlock.h: Declare mathAxisHeight.\n* rendering/mathml/RenderMathMLFraction.cpp:\n(WebCore::RenderMathMLFraction::RenderMathMLFraction):\n(WebCore::RenderMathMLFraction::parseAlignmentAttribute): Helper function to parse the align\nattribute.\n(WebCore::RenderMathMLFraction::isValid): Helper function to verify whether the child list\nis valid with respect to the MathML specificitation.\n(WebCore::RenderMathMLFraction::numerator): Helper function to retrieve the numerator.\n(WebCore::RenderMathMLFraction::denominator): Helper function to retrieve the denominator.\n(WebCore::RenderMathMLFraction::updateFromElement): Use the FractionRuleThickness parameter\nwhen avaiable to calculate the default linethickness.\nFix computation of linethickness for absolute values (e.g. 10px), the default linethickness\nmust not be involved for such values.\nWe no longer need to manage style of anonymous wrappers.\n(WebCore::RenderMathMLFraction::unembellishedOperator): Use the helper function and we no\nlonger care about anonymous wrappers.\n(WebCore::RenderMathMLFraction::computePreferredLogicalWidths): Implement this function\nwithout using flexbox.\n(WebCore::RenderMathMLFraction::horizontalOffset): Helper function to get the horizontal\noffsets of children depending of the alignment.\n(WebCore::RenderMathMLFraction::layoutBlock): Implement this function without using flexbox.\n(WebCore::RenderMathMLFraction::paint): Do not paint if the fraction is invalid. Use helper\nfunction. Use the width of the renderer (instead of the one of the denominator) as the\nlength of the fraction bar.\n(WebCore::RenderMathMLFraction::firstLineBaseline): Use the helper functions to get children\nand axis height.\n(WebCore::RenderMathMLFraction::paintChildren): Temporary function to remove in a\nfollow-up patch.\n(WebCore::RenderMathMLFraction::fixChildStyle): Deleted. We no longer need to manage style\nof anonymous wrappers.\n(WebCore::RenderMathMLFraction::addChild): Deleted. We no longer need to manage\nanonymous wrappers.\n(WebCore::RenderMathMLFraction::styleDidChange): We no longer need to manage style of\nanonymous wrappers.\n(WebCore::RenderMathMLFraction::layout): Deleted.\n* rendering/mathml/RenderMathMLFraction.h: Replace lineThickness with relativeLineThickness,\nas needed by the accessibility code. Update function and members declarations.\n\nLayoutTests:\n\n* TestExpectations: No longer skip mathml/presentation/fractions-positions.html\n* mathml/opentype/fraction-line-expected.html: Added. New test to verify AxisHeight and\nFractionRuleThickness parameters.\n* mathml/opentype/fraction-line.html: Added. New test to verify axis height and rule\nthickness parameters.\n* mathml/presentation/fractions-linethickness-expected.html: Adjust the test to be sure that\nthe default rule thickness is 1px.\n* mathml/presentation/fractions-linethickness.html: Adjust the test to be sure that the\ndefault rule thickness is 1px.\n* platform/gtk/mathml/presentation/roots-expected.txt: Update reference to take into account\nchanges in the render tree.\n* platform/ios-simulator/mathml/presentation/roots-expected.txt: Ditto\n* platform/mac/TestExpectations: Mark fraction-line and fractions-linethickness as\npossibly failing since these tests require Latin Modern Math to work reliably.\n* platform/ios-simulator/TestExpectations: Ditto\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199295 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/db8aa02969f5b029d49dc32cd3b2f0454e065de2"},{"sha":"918abf6931e3e7e3fa081ad1eea9421fbdfc8bd1","author":{"email":"083d44ce61b1f946a3aa6fbd704954e0195d0658@apple.com","name":"cdumez@apple.com"},"message":"DOMTokenList.contains() should not throw\nhttps://bugs.webkit.org/show_bug.cgi?id=156453\n\nReviewed by Ryosuke Niwa.\n\nLayoutTests/imported/w3c:\n\nRe-sync dom/nodes/Element-classlist.html with upstream @26308720.\n\n* web-platform-tests/dom/nodes/Element-classlist-expected.txt:\n* web-platform-tests/dom/nodes/Element-classlist.html:\n\nSource/WebCore:\n\nDOMTokenList.contains() should not throw if the input token is invalid:\nhttps://github.com/whatwg/dom/commit/6d3076e3cbcba662489b272a718bc6b8c0082a74\n\nWe now return false in such cases, instead of throwing, which should be\nsafe with regards to backward compatibility.\n\nNo new tests, already covered by existing tests.\n\n* html/DOMTokenList.cpp:\n(WebCore::DOMTokenList::contains):\n* html/DOMTokenList.h:\n* html/DOMTokenList.idl:\n\nLayoutTests:\n\nUpdate existing layout tests now that DOMTokenList.contains() no longer\nthrows when called with an invalid token.\n\n* fast/dom/HTMLElement/class-list-expected.txt:\n* fast/dom/HTMLElement/class-list-quirks-expected.txt:\n* fast/dom/HTMLElement/script-tests/class-list.js:\n(shouldThrowDOMException): Deleted.\n* fast/dom/HTMLOutputElement/dom-settable-token-list-expected.txt:\n* fast/dom/HTMLOutputElement/script-tests/dom-settable-token-list.js:\n(shouldThrowDOMException): Deleted.\n* fast/dom/rel-list-expected.txt:\n* fast/dom/rel-list.html:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199296 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/918abf6931e3e7e3fa081ad1eea9421fbdfc8bd1"},{"sha":"57aea1c3fa8d4a575f1a42f2cb33670a8d49e484","author":{"email":"99f346658a335f564f87a5db55db57b4f8371bfa@apple.com","name":"fpizlo@apple.com"},"message":"Clean up how we reason about the states of AccessCases\nhttps://bugs.webkit.org/show_bug.cgi?id=156454\n\nReviewed by Mark Lam.\n        \nCurrently when we add an AccessCase to a PolymorphicAccess stub, we regenerate the stub.\nThat means that as we grow a stub to have N cases, we will do O(N^2) generation work. I want\nto explore buffering AccessCases so that we can do O(N) generation work instead. But to\nbefore I go there, I want to make sure that the statefulness of AccessCase makes sense. So,\nI broke it down into three different states and added assertions about the transitions. I\nalso broke out a separate operation called AccessCase::commit(), which is the work that\ncannot be buffered since there cannot be any JS effects between when the AccessCase was\ncreated and when we do the work in commit().\n        \nThis opens up a fairly obvious path to buffering AccessCases: add them to the list without\nregenerating. Then when we do eventually trigger regeneration, those cases will get cloned\nand generated automagically. This patch doesn't implement this technique yet, but gives us\nan opportunity to independently test the scaffolding necessary to do it.\n\nThis is perf-neutral on lots of tests.\n\n* bytecode/PolymorphicAccess.cpp:\n(JSC::AccessGenerationResult::dump):\n(JSC::AccessCase::clone):\n(JSC::AccessCase::commit):\n(JSC::AccessCase::guardedByStructureCheck):\n(JSC::AccessCase::dump):\n(JSC::AccessCase::generateWithGuard):\n(JSC::AccessCase::generate):\n(JSC::AccessCase::generateImpl):\n(JSC::PolymorphicAccess::regenerateWithCases):\n(JSC::PolymorphicAccess::regenerate):\n(WTF::printInternal):\n* bytecode/PolymorphicAccess.h:\n(JSC::AccessCase::type):\n(JSC::AccessCase::state):\n(JSC::AccessCase::offset):\n(JSC::AccessCase::viaProxy):\n(JSC::AccessCase::callLinkInfo):\n* bytecode/StructureStubInfo.cpp:\n(JSC::StructureStubInfo::addAccessCase):\n* bytecode/Watchpoint.h:\n* dfg/DFGOperations.cpp:\n* jit/Repatch.cpp:\n(JSC::repatchGetByID):\n(JSC::repatchPutByID):\n(JSC::repatchIn):\n* runtime/VM.cpp:\n(JSC::VM::dumpRegExpTrace):\n(JSC::VM::ensureWatchpointSetForImpureProperty):\n(JSC::VM::registerWatchpointForImpureProperty):\n(JSC::VM::addImpureProperty):\n* runtime/VM.h:\n\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199297 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/57aea1c3fa8d4a575f1a42f2cb33670a8d49e484"},{"sha":"786d889d275c591c85bfceeb759efc3ecf4bb845","author":{"email":"083d44ce61b1f946a3aa6fbd704954e0195d0658@apple.com","name":"cdumez@apple.com"},"message":"Merge AttributedDOMTokenList into DOMTokenList\nhttps://bugs.webkit.org/show_bug.cgi?id=156468\n\nReviewed by Ryosuke Niwa.\n\nMerge AttributedDOMTokenList into DOMTokenList to simplify the code.\nDOMTokenList is not constructible and AttributedDOMTokenList is its\nonly constructible subclass after r196123.\n\n* CMakeLists.txt:\n* WebCore.xcodeproj/project.pbxproj:\n* dom/Element.cpp:\n(WebCore::Element::classList):\n* dom/ElementRareData.h:\n(WebCore::ElementRareData::classList):\n(WebCore::ElementRareData::setClassList):\n* html/AttributeDOMTokenList.cpp: Removed.\n* html/AttributeDOMTokenList.h: Removed.\n* html/DOMTokenList.cpp:\n(WebCore::DOMTokenList::DOMTokenList):\n(WebCore::DOMTokenList::attributeValueChanged):\n(WebCore::DOMTokenList::updateAfterTokenChange):\n* html/DOMTokenList.h:\n(WebCore::DOMTokenList::ref):\n(WebCore::DOMTokenList::deref):\n(WebCore::DOMTokenList::element):\n(WebCore::DOMTokenList::~DOMTokenList): Deleted.\n(WebCore::DOMTokenList::updateAfterTokenChange): Deleted.\n* html/HTMLAnchorElement.cpp:\n(WebCore::HTMLAnchorElement::relList):\n* html/HTMLAnchorElement.h:\n* html/HTMLIFrameElement.cpp:\n(WebCore::HTMLIFrameElement::sandbox):\n* html/HTMLIFrameElement.h:\n* html/HTMLLinkElement.cpp:\n(WebCore::HTMLLinkElement::sizes):\n(WebCore::HTMLLinkElement::relList):\n* html/HTMLLinkElement.h:\n* html/HTMLOutputElement.cpp:\n(WebCore::HTMLOutputElement::htmlFor):\n* html/HTMLOutputElement.h:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199298 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/786d889d275c591c85bfceeb759efc3ecf4bb845"},{"sha":"3243ddf36c2d106f97b85baeaea02a6a88218624","author":{"email":"c539153ba1f947bd4b6f910263b967c4a0a62357@apple.com","name":"oliver@apple.com"},"message":"Remove compile time define for SEPARATED_HEAP\nhttps://bugs.webkit.org/show_bug.cgi?id=155508\n\nReviewed by Mark Lam.\n\nSource/JavaScriptCore:\n\nRemove the SEPARATED_HEAP compile time flag. The separated\nheap is available, but off by default, on x86_64, ARMv7, and\nARM64.\n\nWorking through the issues that happened last time essentially\nrequired implementing the ARMv7 path for the separated heap\njust so I could find all the ways it was going wrong.\n\nWe fixed all the logic by making the branch and jump logic in\nthe linker and assemblers take two parameters, the location to\nwrite to, and the location we'll actually be writing to. We\nneed to do this because it's no longer sufficient to compute\njumps relative to region the linker is writing to.\n\nThe repatching jump, branch, and call functions only need the\nexecutable address as the patching is performed directly using\nperformJITMemcpy function which works in terms of the executable\naddress.\n\nThere is no performance impact on jsc-benchmarks with the separate\nheap either emabled or disabled.\n\n* Configurations/FeatureDefines.xcconfig:\n* assembler/ARM64Assembler.h:\n(JSC::ARM64Assembler::linkJump):\n(JSC::ARM64Assembler::linkCall):\n(JSC::ARM64Assembler::relinkJump):\n(JSC::ARM64Assembler::relinkCall):\n(JSC::ARM64Assembler::link):\n(JSC::ARM64Assembler::linkJumpOrCall):\n(JSC::ARM64Assembler::linkCompareAndBranch):\n(JSC::ARM64Assembler::linkConditionalBranch):\n(JSC::ARM64Assembler::linkTestAndBranch):\n(JSC::ARM64Assembler::relinkJumpOrCall):\n* assembler/ARMv7Assembler.h:\n(JSC::ARMv7Assembler::revertJumpTo_movT3movtcmpT2):\n(JSC::ARMv7Assembler::revertJumpTo_movT3):\n(JSC::ARMv7Assembler::link):\n(JSC::ARMv7Assembler::linkJump):\n(JSC::ARMv7Assembler::relinkJump):\n(JSC::ARMv7Assembler::repatchCompact):\n(JSC::ARMv7Assembler::replaceWithJump):\n(JSC::ARMv7Assembler::replaceWithLoad):\n(JSC::ARMv7Assembler::replaceWithAddressComputation):\n(JSC::ARMv7Assembler::setInt32):\n(JSC::ARMv7Assembler::setUInt7ForLoad):\n(JSC::ARMv7Assembler::isB):\n(JSC::ARMv7Assembler::isBX):\n(JSC::ARMv7Assembler::isMOV_imm_T3):\n(JSC::ARMv7Assembler::isMOVT):\n(JSC::ARMv7Assembler::isNOP_T1):\n(JSC::ARMv7Assembler::isNOP_T2):\n(JSC::ARMv7Assembler::linkJumpT1):\n(JSC::ARMv7Assembler::linkJumpT2):\n(JSC::ARMv7Assembler::linkJumpT3):\n(JSC::ARMv7Assembler::linkJumpT4):\n(JSC::ARMv7Assembler::linkConditionalJumpT4):\n(JSC::ARMv7Assembler::linkBX):\n(JSC::ARMv7Assembler::linkConditionalBX):\n(JSC::ARMv7Assembler::linkJumpAbsolute):\n* assembler/LinkBuffer.cpp:\n(JSC::LinkBuffer::copyCompactAndLinkCode):\n* assembler/MacroAssemblerARM64.h:\n(JSC::MacroAssemblerARM64::link):\n* assembler/MacroAssemblerARMv7.h:\n(JSC::MacroAssemblerARMv7::link):\n* jit/ExecutableAllocator.h:\n(JSC::performJITMemcpy):\n* jit/ExecutableAllocatorFixedVMPool.cpp:\n(JSC::FixedVMPoolExecutableAllocator::initializeSeparatedWXHeaps):\n(JSC::FixedVMPoolExecutableAllocator::jitWriteThunkGenerator):\n(JSC::FixedVMPoolExecutableAllocator::genericWriteToJITRegion):\n(JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): Deleted.\n* runtime/Options.cpp:\n(JSC::recomputeDependentOptions):\n* runtime/Options.h:\n\nSource/WebCore:\n\n* Configurations/FeatureDefines.xcconfig:\n\nSource/WebKit/mac:\n\n* Configurations/FeatureDefines.xcconfig:\n\nSource/WebKit2:\n\n* Configurations/FeatureDefines.xcconfig:\n\nSource/WTF:\n\n* wtf/FeatureDefines.h:\n* wtf/Platform.h:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199299 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/3243ddf36c2d106f97b85baeaea02a6a88218624"},{"sha":"42c2642ff80c4cbf52989a36581e5a4d200fd0f1","author":{"email":"8b5fd91f29a7013935f141368acb8097c2ea44a0@gmail.com","name":"gskachkov@gmail.com"},"message":"Remove NewArrowFunction from DFG IR\nhttps://bugs.webkit.org/show_bug.cgi?id=156439\n\nReviewed by Saam Barati.\n\nIt seems that NewArrowFunction was left in DFG IR during refactoring by mistake.\n\n* dfg/DFGAbstractInterpreterInlines.h:\n* dfg/DFGClobberize.h:\n(JSC::DFG::clobberize):\n* dfg/DFGClobbersExitState.cpp:\n* dfg/DFGDoesGC.cpp:\n* dfg/DFGFixupPhase.cpp:\n* dfg/DFGMayExit.cpp:\n* dfg/DFGNode.h:\n(JSC::DFG::Node::convertToPhantomNewFunction):\n* dfg/DFGNodeType.h:\n* dfg/DFGObjectAllocationSinkingPhase.cpp:\n* dfg/DFGPredictionPropagationPhase.cpp:\n* dfg/DFGSafeToExecute.h:\n* dfg/DFGSpeculativeJIT.cpp:\n(JSC::DFG::SpeculativeJIT::compileNewFunction):\n* dfg/DFGSpeculativeJIT32_64.cpp:\n* dfg/DFGSpeculativeJIT64.cpp:\n* dfg/DFGStoreBarrierInsertionPhase.cpp:\n* dfg/DFGStructureRegistrationPhase.cpp:\n* ftl/FTLCapabilities.cpp:\n* ftl/FTLLowerDFGToB3.cpp:\n(JSC::FTL::DFG::LowerDFGToB3::compileNewFunction):\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199300 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/42c2642ff80c4cbf52989a36581e5a4d200fd0f1"},{"sha":"1275e3d9380c8916dec270c19345bfaaaf60b6dc","author":{"email":"b4ec39de7a032f72cb5bb9b534bb9152488f03c2@webkit.org","name":"dbates@webkit.org"},"message":"REGRESSION (r198933): Unable to login to Google account from Internet Accounts preference pane\nhttps://bugs.webkit.org/show_bug.cgi?id=156447\n<rdar://problem/25628133>\n\nReviewed by Anders Carlsson.\n\nTemporarily perform code signing verification only for Mac App Store- and Apple Developer- signed apps.\n\n* Shared/mac/ChildProcessMac.mm:\n(WebKit::codeSigningIdentifierForProcess):\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199301 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/1275e3d9380c8916dec270c19345bfaaaf60b6dc"},{"sha":"d5f9946a0ac71403a89e56ae784c3c5741e8c111","author":{"email":"99f346658a335f564f87a5db55db57b4f8371bfa@apple.com","name":"fpizlo@apple.com"},"message":"It should be possible to edit StructureStubInfo without recompiling the world\nhttps://bugs.webkit.org/show_bug.cgi?id=156470\n\nReviewed by Keith Miller.\n\nThis change makes it less painful to make changes to the IC code. It used to be that any\nchange to StructureStubInfo caused every JIT-related file to get recompiled. Now only a\nsmaller set of files - ones that actually peek into StructureStubInfo - will recompile. This\nis mainly because CodeBlock.h no longer includes StructureStubInfo.h.\n\n* bytecode/ByValInfo.h:\n* bytecode/CodeBlock.cpp:\n* bytecode/CodeBlock.h:\n* bytecode/GetByIdStatus.cpp:\n* bytecode/GetByIdStatus.h:\n* bytecode/PutByIdStatus.cpp:\n* bytecode/PutByIdStatus.h:\n* bytecode/StructureStubInfo.h:\n(JSC::getStructureStubInfoCodeOrigin):\n* dfg/DFGByteCodeParser.cpp:\n* dfg/DFGJITCompiler.cpp:\n* dfg/DFGOSRExitCompilerCommon.cpp:\n* dfg/DFGSpeculativeJIT.h:\n* ftl/FTLLowerDFGToB3.cpp:\n* ftl/FTLSlowPathCall.h:\n* jit/IntrinsicEmitter.cpp:\n* jit/JITInlineCacheGenerator.cpp:\n* jit/JITInlineCacheGenerator.h:\n* jit/JITOperations.cpp:\n* jit/JITPropertyAccess.cpp:\n* jit/JITPropertyAccess32_64.cpp:\n\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199303 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/d5f9946a0ac71403a89e56ae784c3c5741e8c111"},{"sha":"bf0aaeedb51ddad85140bff897d2f7c8beda4c91","author":{"email":"d85155df5f11c7dea01135ad65d46852edb35997@apple.com","name":"zalan@apple.com"},"message":"REGRESSION (r193857): Text selection causes text to disappear.\nhttps://bugs.webkit.org/show_bug.cgi?id=156448\nrdar://problem/25578952\n\nReviewed by Simon Fraser.\n\nApparently when the end position of the selection range is smaller than the start position, we need\nto repaint the entire text as it indicates selection clearing.\n\nSource/WebCore:\n\nTest: fast/text/text-disappear-on-deselect.html\n\n* rendering/TextPainter.cpp:\n(WebCore::TextPainter::paintText):\n\nLayoutTests:\n\n* fast/text/text-disappear-on-deselect-expected.html: Added.\n* fast/text/text-disappear-on-deselect.html: Added.\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199304 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/bf0aaeedb51ddad85140bff897d2f7c8beda4c91"},{"sha":"eb93fe7647f7861928fb4fbd50a5a140b5362137","author":{"email":"d85155df5f11c7dea01135ad65d46852edb35997@apple.com","name":"zalan@apple.com"},"message":"Simplify InlineTextBox::selectionStartEnd()\nhttps://bugs.webkit.org/show_bug.cgi?id=156459\n\nReviewed by Darin Adler.\n\nNo change in functionality.\n\n* rendering/InlineTextBox.cpp:\n(WebCore::InlineTextBox::selectionState):\n(WebCore::InlineTextBox::paint):\n(WebCore::InlineTextBox::selectionStartEnd):\n(WebCore::InlineTextBox::paintSelection):\n(WebCore::InlineTextBox::paintCompositionBackground):\n* rendering/InlineTextBox.h:\n* rendering/svg/SVGInlineTextBox.cpp:\n(WebCore::SVGInlineTextBox::paintSelectionBackground):\n(WebCore::SVGInlineTextBox::paintText):\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199307 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/eb93fe7647f7861928fb4fbd50a5a140b5362137"},{"sha":"d267925947161c615ddadf20f63f32f148642a20","author":{"email":"10e9cf00654b96e207b0048d60c4681488a29178@webkit.org","name":"joepeck@webkit.org"},"message":"Web Inspector: HeapSnapshot instance property path popover should include a descriptive header\nhttps://bugs.webkit.org/show_bug.cgi?id=156431\n<rdar://problem/25633594>\n\nReviewed by Timothy Hatcher.\n\n* Localizations/en.lproj/localizedStrings.js:\n* UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:\n(WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendTitle):\nTitle for the popover. Because localization may change the location of the @1234\nin the string, localize first with a placeholder, and then replace the placeholder\nwith the @1234 link.\n\n(WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPath):\nGive the table a container for extra padding.\n\n(WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPathRow):\nDo not include the space before @1234 as part of the clickable link.\n\n(WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler):\nInclude a title when the popover shows a root path.\n\n* UserInterface/Views/HeapSnapshotInstancesContentView.css:\n(.heap-snapshot-instance-popover-content > .title):\n(.heap-snapshot-instance-popover-content):\n(.heap-snapshot-instance-popover-content > .table-container):\n(.heap-snapshot-instance-popover-content table):\nProvide styles for the title. Let the title extend across the entire\npopover horizontally, but pad the table so that it appears more\ncentered under the title. Because the table has border collapse we have\nto wrap it in a container to give it back the padding we want.\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199308 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/d267925947161c615ddadf20f63f32f148642a20"},{"sha":"d208538782bf444788d7e64a3616db1a2b547d04","author":{"email":"a943777007588e0f3b2c0a0bf4128c657d071733@apple.com","name":"barraclough@apple.com"},"message":"WebKit should adopt journal_mode=wal for all SQLite databases.\nhttps://bugs.webkit.org/show_bug.cgi?id=133496\n\nReviewed by Darin Adler.\n\nSource/WebCore:\n\nThe statement intended to enable WAL mode is always failing because it is missing a\nprepare(). Fix this. We were also previously permitting SQLITE_OK results - this\nwas in error (we were only getting these because stepping the unprepared statement\nreturned SQLITE_OK). Also set the SQLITE_OPEN_AUTOPROXY flag when opening the\ndatabase - this will improve perfomance when the database is accessed via an AFP\nmount.\n\nThis exposed a bug, that deleteAllDatabases does not actually delete the databases on\niOS, for testing to reset back to a known state between tests it should be doing so.\n\n* Modules/webdatabase/DatabaseTracker.cpp:\n(WebCore::DatabaseTracker::deleteAllDatabases):\n    - force databases to actually be deleted on iOS.\n      This method is only used from testing code (DumpRenderTree / WebKitTestRunner).\n(WebCore::DatabaseTracker::deleteOrigin):\n    - added IOSDeletionMode.\n(WebCore::DatabaseTracker::deleteDatabaseFile):\n    - added IOSDeletionMode, modified to actually delete if this is set.\n* Modules/webdatabase/DatabaseTracker.h:\n    - added IOSDeletionMode.\n* platform/sql/SQLiteDatabase.cpp:\n(WebCore::SQLiteDatabase::open):\n    - call prepareAndStep(), only check for SQLITE_ROW result.\n* platform/sql/SQLiteFileSystem.cpp:\n(WebCore::SQLiteFileSystem::openDatabase):\n    - should set SQLITE_OPEN_AUTOPROXY flag when opening database.\n\nSource/WebKit/mac:\n\n* Storage/WebDatabaseManagerPrivate.h:\n    - renamed deleteAllDatabases -> deleteAllDatabasesImmediately.\n\nSource/WebKit/win:\n\n* WebDatabaseManager.cpp:\n(WebDatabaseManager::deleteAllDatabases):\n    - renamed deleteAllDatabases -> deleteAllDatabasesImmediately.\n\nSource/WebKit2:\n\n* WebProcess/InjectedBundle/API/c/WKBundle.cpp:\n(WKBundleClearAllDatabases):\n    - renamed deleteAllDatabases -> deleteAllDatabasesImmediately.\n\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199309 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/d208538782bf444788d7e64a3616db1a2b547d04"},{"sha":"982c853ce06bf0aaebe950d7a2a6dafe918b1f37","author":{"email":"4f11a7be697eb6b745758b6d1ce6147e341a0128@apple.com","name":"beidson@apple.com"},"message":"Clean up IDBBindingUtilities.\nhttps://bugs.webkit.org/show_bug.cgi?id=156472\n\nReviewed by Alex Christensen.\n\nNo new tests (No change in behavior).\n\n- Get rid of a whole bunch of unused functions (since we got rid of Legacy IDB).\n- Make more functions deal in ExecState/ScriptExecutionContexts instead of DOMRequestState.\n- Make more functions deal in JSValue instead of Deprecated::ScriptValue.\n\n* bindings/scripts/IDLAttributes.txt: Add a new attribute to signify that an implementation returns\n  JSValues instead of Deprecated::ScriptState\n* bindings/scripts/CodeGeneratorJS.pm:\n(NativeToJSValue): Use that new attribute.\n\n* Modules/indexeddb/IDBAny.cpp:\n(WebCore::IDBAny::IDBAny):\n(WebCore::IDBAny::scriptValue):\n* Modules/indexeddb/IDBAny.h:\n(WebCore::IDBAny::create):\n* Modules/indexeddb/IDBCursor.cpp:\n(WebCore::IDBCursor::key):\n(WebCore::IDBCursor::primaryKey):\n(WebCore::IDBCursor::value):\n(WebCore::IDBCursor::update):\n(WebCore::IDBCursor::continueFunction):\n(WebCore::IDBCursor::deleteFunction):\n(WebCore::IDBCursor::setGetResult):\n* Modules/indexeddb/IDBCursor.h:\n* Modules/indexeddb/IDBCursor.idl:\n* Modules/indexeddb/IDBCursorWithValue.idl:\n* Modules/indexeddb/IDBFactory.cpp:\n(WebCore::IDBFactory::cmp):\n* Modules/indexeddb/IDBIndex.cpp:\n(WebCore::IDBIndex::count):\n(WebCore::IDBIndex::get):\n(WebCore::IDBIndex::getKey):\n* Modules/indexeddb/IDBKeyRange.cpp:\n(WebCore::IDBKeyRange::lowerValue):\n(WebCore::IDBKeyRange::upperValue):\n(WebCore::IDBKeyRange::only):\n(WebCore::IDBKeyRange::lowerBound):\n(WebCore::IDBKeyRange::upperBound):\n(WebCore::IDBKeyRange::bound):\n* Modules/indexeddb/IDBKeyRange.h:\n* Modules/indexeddb/IDBKeyRange.idl:\n* Modules/indexeddb/IDBObjectStore.cpp:\n(WebCore::IDBObjectStore::get):\n(WebCore::IDBObjectStore::modernDelete):\n(WebCore::IDBObjectStore::count):\n* Modules/indexeddb/IDBRequest.cpp:\n(WebCore::IDBRequest::setResult):\n(WebCore::IDBRequest::setResultToStructuredClone):\n* Modules/indexeddb/server/MemoryObjectStore.cpp:\n(WebCore::IDBServer::MemoryObjectStore::updateIndexesForPutRecord):\n(WebCore::IDBServer::MemoryObjectStore::populateIndexWithExistingRecords):\n* bindings/js/IDBBindingUtilities.cpp:\n(WebCore::idbKeyPathFromValue):\n(WebCore::deserializeIDBValueDataToJSValue):\n(WebCore::scriptValueToIDBKey):\n(WebCore::idbKeyDataToScriptValue):\n(WebCore::idbKeyDataToJSValue): Deleted.\n(WebCore::injectIDBKeyIntoScriptValue): Deleted.\n(WebCore::createIDBKeyFromScriptValueAndKeyPath): Deleted.\n(WebCore::maybeCreateIDBKeyFromScriptValueAndKeyPath): Deleted.\n(WebCore::canInjectIDBKeyIntoScriptValue): Deleted.\n(WebCore::deserializeIDBValue): Deleted.\n(WebCore::deserializeIDBValueData): Deleted.\n(WebCore::deserializeIDBValueBuffer): Deleted.\n(WebCore::idbValueDataToJSValue): Deleted.\n(WebCore::idbKeyToScriptValue): Deleted.\n* bindings/js/IDBBindingUtilities.h:\n* bindings/js/JSIDBAnyCustom.cpp:\n(WebCore::toJS):\n* bindings/js/JSIDBDatabaseCustom.cpp:\n(WebCore::JSIDBDatabase::createObjectStore):\n* bindings/js/JSIDBObjectStoreCustom.cpp:\n(WebCore::JSIDBObjectStore::createIndex):\n* dom/ScriptExecutionContext.cpp:\n(WebCore::ScriptExecutionContext::execState):\n* dom/ScriptExecutionContext.h:\n* inspector/InspectorIndexedDBAgent.cpp:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199310 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/982c853ce06bf0aaebe950d7a2a6dafe918b1f37"},{"sha":"c5e280c18809a9e0dfc2f7119ae10dda66a7dbab","author":{"email":"af664bbd4d5aee5df9352ca181b40e17255c4a06@apple.com","name":"andersca@apple.com"},"message":"Rename WKOpenPanelParameters files to WKOpenPanelParametersRef\nhttps://bugs.webkit.org/show_bug.cgi?id=156473\n\nReviewed by Alex Christensen.\n\n* UIProcess/API/C/WKOpenPanelParameters.cpp:\n(WKOpenPanelParametersGetTypeID): Deleted.\n(WKOpenPanelParametersGetAllowsMultipleFiles): Deleted.\n(WKOpenPanelParametersCopyAcceptedMIMETypes): Deleted.\n(WKOpenPanelParametersCopyCapture): Deleted.\n(WKOpenPanelParametersGetCaptureEnabled): Deleted.\n(WKOpenPanelParametersCopySelectedFileNames): Deleted.\n* UIProcess/API/C/WKOpenPanelParametersRef.cpp: Renamed from Source/WebKit2/UIProcess/API/C/WKOpenPanelParameters.cpp.\n(WKOpenPanelParametersGetTypeID):\n(WKOpenPanelParametersGetAllowsMultipleFiles):\n(WKOpenPanelParametersCopyAcceptedMIMETypes):\n(WKOpenPanelParametersCopyCapture):\n(WKOpenPanelParametersGetCaptureEnabled):\n(WKOpenPanelParametersCopySelectedFileNames):\n* UIProcess/API/C/WKOpenPanelParametersRef.h: Renamed from Source/WebKit2/UIProcess/API/C/WKOpenPanelParameters.h.\n* UIProcess/API/C/WebKit2_C.h:\n* UIProcess/API/efl/ewk_file_chooser_request.cpp:\n* UIProcess/mac/WebInspectorProxyMac.mm:\n* WebKit2.xcodeproj/project.pbxproj:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199311 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/c5e280c18809a9e0dfc2f7119ae10dda66a7dbab"},{"sha":"d6926f0612482a39a5fed6cffc9de728efc943db","author":{"email":"a82ad16292c9f3b890b7b13c336ff95f6bd02623@webkit.org","name":"commit-queue@webkit.org"},"message":"Merge CG ImageSource and non CG ImageSource implementation in one file\nhttps://bugs.webkit.org/show_bug.cgi?id=155456\n\nPatch by Said Abou-Hallawa <sabouhallawa@apple,com> on 2016-04-11\nReviewed by Darin Adler.\nSource/WebCore:\n\nImageSource for CG and CG code paths look very similar. All the platform\nspecific code can be moved to ImageDecoder classes for CG and non CG. And\nwe can have the ImageSource be platform independent and we get rid of\nImageSourceCG.cpp.\n\nTest: fast/images/image-subsampling.html\n\n* CMakeLists.txt:\n* PlatformAppleWin.cmake:\n* PlatformMac.cmake:\n* WebCore.xcodeproj/project.pbxproj:\nDelete ImageSourceCG.cpp form all make files and add ImageSource.cpp to\nCMakeLists.txt.\n\n* platform/Cursor.cpp:\n(WebCore::determineHotSpot):\n* platform/graphics/BitmapImage.cpp:\n(WebCore::BitmapImage::hotSpot):\n(WebCore::BitmapImage::getHotSpot): Deleted.\n* platform/graphics/BitmapImage.h:\n* platform/graphics/Image.h:\n(WebCore::Image::hotSpot):\n(WebCore::Image::getHotSpot): Deleted.\nRename getHotSpot() to hotSpot() and change it to return Optional<IntPoint>.\n\n* platform/graphics/ImageSource.cpp:\n(WebCore::ImageSource::~ImageSource): Remove clear(true) call. It does nothing.\n(WebCore::ImageSource::clearFrameBufferCache): A wrapper which calls ImageDecoder::clearFrameBufferCache().\n(WebCore::ImageSource::clear): Calls clearFrameBufferCache() which will do nothing for CG.\n\n(WebCore::ImageSource::ensureDecoderIsCreated): Change SharedBuffer* to\nconst SharedBuffer& and remove the call to ImageDecoder::setMaxNumPixels().\nThe value of const static int CG ImageDecoder::m_maxNumPixels will be set\nbased on IMAGE_DECODER_DOWN_SAMPLING.\n\n(WebCore::ImageSource::setData): Pass SharedBuffer& to the underlying functions.\n\n(WebCore::ImageSource::calculateMaximumSubsamplingLevel): Returns the maximum\nsubsampling level allowed for an image.\n\n(WebCore::ImageSource::subsamplingLevelForScale): Converts from a scale to\nSubsamplingLevel taking into consideration the maximumSubsamplingLevel for\na particular image.\n\n(WebCore::ImageSource::bytesDecodedToDetermineProperties): Returns the number\nof encoded bytes which can determine the image properties. For non CG it's\nzero. For CG it is a maximum value which can be corrected later.\n\n(WebCore::ImageSource::isSizeAvailable):\n(WebCore::ImageSource::sizeRespectingOrientation):\n(WebCore::ImageSource::frameCount):\n(WebCore::ImageSource::repetitionCount):\n(WebCore::ImageSource::filenameExtension):\n(WebCore::ImageSource::getHotSpot):\n(WebCore::ImageSource::frameIsCompleteAtIndex):\n(WebCore::ImageSource::frameHasAlphaAtIndex):\n(WebCore::ImageSource::allowSubsamplingOfFrameAtIndex):\n(WebCore::ImageSource::frameSizeAtIndex):\n(WebCore::ImageSource::frameBytesAtIndex):\n(WebCore::ImageSource::frameDurationAtIndex):\n(WebCore::ImageSource::orientationAtIndex):\n(WebCore::ImageSource::createFrameImageAtIndex):\nThese are wrappers for the ImageDecoder APIs. The purpose of these functions\nis to ensure the ImageDecoder is created.\n\n(WebCore::ImageSource::dump): Called from BitmapImage::dump().\n\n(WebCore::ImageSource::getHotSpot): Deleted.\n\n* platform/graphics/ImageSource.h:\n(WebCore::ImageSource::setAllowSubsampling): Called from BitmapImage::setAllowSubsampling().\n\n(WebCore::ImageSource::maxPixelsPerDecodedImage): Deleted.\n(WebCore::ImageSource::setMaxPixelsPerDecodedImage): Deleted.\nSetting maxPixelsPerDecodedImage was moved to the non CG ImageDecoder.\n\n* platform/graphics/cg/ImageDecoderCG.cpp:\n(WebCore::ImageDecoder::setData): Change SharedBuffer* to SharedBuffer&.\n\n(WebCore::ImageDecoder::subsamplingLevelForScale): Deleted.\nThe code was moved to ImageSource::subsamplingLevelForScale().\n\n* platform/graphics/cg/ImageDecoderCG.h:\n(WebCore::ImageDecoder::create): Make the prototype of this function\nsuitable for CG and non CG cases.\n(WebCore::ImageDecoder::clearFrameBufferCache): Empty functions for CG.\n\n* platform/graphics/cg/ImageSourceCG.cpp: Removed.\n\n* platform/image-decoders/ImageDecoder.cpp:\n(WebCore::ImageDecoder::frameIsCompleteAtIndex): A mew function to return\nwhether the frame decoding is complete or not.\n\n(WebCore::ImageDecoder::frameHasAlphaAtIndex): Simplify the logic.\n\n(WebCore::ImageDecoder::frameDurationAtIndex): The code was moved from\nImageSource::frameDurationAtIndex() in ImageSource.cpp.\n\n(WebCore::ImageDecoder::createFrameImageAtIndex): The code was moved from\nImageSource::createFrameImageAtIndex() in ImageSource.cpp.\n\n* platform/image-decoders/ImageDecoder.h:\n(WebCore::ImageDecoder::ImageDecoder): Initialize the members in class.\n(WebCore::ImageDecoder::~ImageDecoder): Fix the braces style.\n(WebCore::ImageDecoder::setData): Change the type of the argument from\nSharedBuffer* to SharedBuffer&.\n(WebCore::ImageDecoder::frameSizeAtIndex): Add the argument SubsamplingLevel\nso it can have the same prototype as CG.\n(WebCore::ImageDecoder::orientationAtIndex): Rename it to the same of CG.\n\n(WebCore::ImageDecoder::allowSubsamplingOfFrameAtIndex):\n(WebCore::ImageDecoder::bytesDecodedToDetermineProperties):\n(WebCore::ImageDecoder::subsamplingLevelForScale): Add these functions\nand return the default values so we do not have to add directive compiled\nnon CG blocks in ImageSource.cpp.\n\n(WebCore::ImageDecoder::hotSpot): Return Optional<IntPoint>.\n\n(WebCore::ImageDecoder::orientation): Deleted.\n(WebCore::ImageDecoder::setMaxNumPixels): Deleted.\n\n* platform/image-decoders/bmp/BMPImageDecoder.cpp:\n(WebCore::BMPImageDecoder::setData):\n* platform/image-decoders/bmp/BMPImageDecoder.h:\n* platform/image-decoders/gif/GIFImageDecoder.cpp:\n(WebCore::GIFImageDecoder::setData):\n(WebCore::GIFImageDecoder::decode):\n* platform/image-decoders/gif/GIFImageDecoder.h:\n* platform/image-decoders/gif/GIFImageReader.h:\n(GIFImageReader::setData):\n* platform/image-decoders/ico/ICOImageDecoder.cpp:\n(WebCore::ICOImageDecoder::setData):\nUse reference SharedBuffer instead of pointer SharedBuffer.\n\n(WebCore::ICOImageDecoder::hotSpot):\n(WebCore::ICOImageDecoder::hotSpotAtIndex):\nChange hotSpot() to return Optional<IntPoint>.\n* platform/image-decoders/ico/ICOImageDecoder.h:\n\n(WebCore::ICOImageDecoder::setDataForPNGDecoderAtIndex):\nPass reference SharedBuffer instead of pointer SharedBuffer.\n\nSource/WebKit2:\n\n* UIProcess/API/efl/EwkView.cpp:\n(EwkView::setCursor):\nReplace the call to Image::getHotSpot() by Image::hotSpot().\n\nLayoutTests:\n\nAdd a test for image sub-sampling. The image subsampling is enabled by\ndefault for iOS platform only. But it can be explicitly enabled through\nthe setting ImageSubsamplingEnabled.\n\n* fast/images/image-subsampling-expected.html: Added.\n* fast/images/image-subsampling.html: Added.\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199312 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/d6926f0612482a39a5fed6cffc9de728efc943db"},{"sha":"c6e55e9735c9e326a40814ba1997800347c1a2de","author":{"email":"5ace1b55ce8a15f02fdfbc9d1286e497540ee5e0@apple.com","name":"jiewen_tan@apple.com"},"message":"fast/loader/opaque-base-url.html crashing during mac and ios debug tests\nhttps://bugs.webkit.org/show_bug.cgi?id=156179\n<rdar://problem/25507719>\n\nReviewed by Ryosuke Niwa.\n\nSource/WebCore:\n\nNavigate to about:blank if the provided src of an iframe/frame cannot be\nresolved to a valid URL.\n\nTest: fast/loader/iframe-src-invalid-url.html\n\n* loader/SubframeLoader.cpp:\n(WebCore::SubframeLoader::requestFrame):\n\nLayoutTests:\n\n* fast/loader/iframe-src-invalid-url-expected.txt: Added.\n* fast/loader/iframe-src-invalid-url.html: Added.\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199313 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/c6e55e9735c9e326a40814ba1997800347c1a2de"},{"sha":"7a44e8381028b993dd2c374d5ff58bb053278fe5","author":{"email":"a82ad16292c9f3b890b7b13c336ff95f6bd02623@webkit.org","name":"commit-queue@webkit.org"},"message":"[WebGL2] Use Open GL ES 3.0 to back WebGL2 contexts\nhttps://bugs.webkit.org/show_bug.cgi?id=141178\n\nPatch by Antoine Quint <graouts@apple.com> on 2016-04-11\nReviewed by Dean Jackson.\n\nWe add a new `useGLES3` attribute when creating a GraphicsContext3D in the event that the\ncontext type is \"webgl2\". This attribute is then read by the GraphicsContext3D constructor\nto request an Open GL ES 3.0 backend when creating the EAGLContext on iOS.\n\n* html/canvas/WebGLRenderingContextBase.cpp:\n(WebCore::WebGLRenderingContextBase::create):\n* platform/graphics/GraphicsContext3D.h:\n(WebCore::GraphicsContext3D::Attributes::Attributes):\n* platform/graphics/mac/GraphicsContext3DMac.mm:\n(WebCore::GraphicsContext3D::GraphicsContext3D):\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199314 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/7a44e8381028b993dd2c374d5ff58bb053278fe5"},{"sha":"ab46b46bf2425b146ed40c99a2ae91d023227731","author":{"email":"a82ad16292c9f3b890b7b13c336ff95f6bd02623@webkit.org","name":"commit-queue@webkit.org"},"message":"When clearing cache, also clear AVFoundation cache.\nhttps://bugs.webkit.org/show_bug.cgi?id=155783\nrdar://problem/25252541\n\nPatch by Jeremy Jones <jeremyj@apple.com> on 2016-04-11\nReviewed by Darin Adler.\n\nSource/WebCore:\n\nUse AVAssetCache at a specified location on disk for all AVURLAssets. This AVAssetCache\ncan then be used to manage the cache storage used by AVFoundation. It is used to query the\ncontents of the cache in originsInMediaCache() and to clear the cache completely or partially in\nclearMediaCache() and clearMediaCacheForOrigins().\n\nUse SecurityOrigin instead of the less formal site String to represent origins in the cache.\n\n* html/HTMLMediaElement.cpp:\n(WebCore::sharedMediaCacheDirectory): Added.\n(WebCore::HTMLMediaElement::setMediaCacheDirectory): Added.\n(WebCore::HTMLMediaElement::mediaCacheDirectory): Added.\n(WebCore::HTMLMediaElement::originsInMediaCache): Added.\n(WebCore::HTMLMediaElement::clearMediaCache): Added parameter.\n(WebCore::HTMLMediaElement::clearMediaCacheForOrigins): Added.\n(WebCore::HTMLMediaElement::mediaPlayerMediaCacheDirectory): Added.\n(WebCore::HTMLMediaElement::getSitesInMediaCache): Deleted.\n(WebCore::HTMLMediaElement::clearMediaCacheForSite): Deleted.\n* html/HTMLMediaElement.h:\n(WebCore::HTMLMediaElement::clearMediaCache): Added parameter.\n* platform/graphics/MediaPlayer.cpp:\n(WebCore::addMediaEngine): Add new cache methods.\n(WebCore::addToHash): Added.\n(WebCore::MediaPlayer::originsInMediaCache): Added.\n(WebCore::MediaPlayer::clearMediaCache): Added parameter.\n(WebCore::MediaPlayer::clearMediaCacheForOrigins): Added.\n(WebCore::MediaPlayer::getSitesInMediaCache): Deleted.\n(WebCore::MediaPlayer::clearMediaCacheForSite): Deleted.\n* platform/graphics/MediaPlayer.h:\n(WebCore::MediaPlayerClient::mediaPlayerMediaCacheDirectory): Added.\n* platform/graphics/MediaPlayerPrivate.h:\n(WebCore::MediaPlayerPrivateInterface::originsInMediaCache): Added.\n(WebCore::MediaPlayerPrivateInterface::clearMediaCache): Added parameter.\n(WebCore::MediaPlayerPrivateInterface::clearMediaCacheForOrigins): Added.\n(WebCore::MediaPlayerPrivateInterface::getSitesInMediaCache): Deleted.\n(WebCore::MediaPlayerPrivateInterface::clearMediaCacheForSite): Deleted.\n* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:\n* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:\n(WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine): Added cache methods.\n(WebCore::assetCacheForPath): Added.\n(WebCore::MediaPlayerPrivateAVFoundationObjC::originsInMediaCache): Added.\n(WebCore::toSystemClockTime): Added.\n(WebCore::MediaPlayerPrivateAVFoundationObjC::clearMediaCache): Added parameter.\n(WebCore::MediaPlayerPrivateAVFoundationObjC::clearMediaCacheForOrigins): Added.\n(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Added.\n* platform/graphics/mac/MediaPlayerPrivateQTKit.h:\n* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:\n(WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Added cache methods.\n(WebCore::MediaPlayerPrivateQTKit::originsInMediaCache): Added.\n(WebCore::MediaPlayerPrivateQTKit::clearMediaCache): Added parameter.\n(WebCore::MediaPlayerPrivateQTKit::clearMediaCacheForOrigins): Added.\n(WebCore::MediaPlayerPrivateQTKit::getSitesInMediaCache): Deleted.\n(WebCore::MediaPlayerPrivateQTKit::clearMediaCacheForSite): Deleted.\n* platform/spi/mac/AVFoundationSPI.h:\n\nSource/WebKit2:\n\nInclude the HTMLMediaElement media cache when doing disk cache operations.\nAdd a sandbox extension for media cache directory. This allows the UI process and the web process\nto access the same cache.\n\n* Shared/WebProcessCreationParameters.cpp:\n(WebKit::WebProcessCreationParameters::encode): Add media cache directory.\n(WebKit::WebProcessCreationParameters::decode): Add media cache directory.\n* Shared/WebProcessCreationParameters.h:\n* UIProcess/API/APIProcessPoolConfiguration.cpp:\n(API::ProcessPoolConfiguration::createWithLegacyOptions):\n(API::ProcessPoolConfiguration::ProcessPoolConfiguration): Add media cache directory.\n(API::ProcessPoolConfiguration::copy): Add media cache directory.\n* UIProcess/API/APIProcessPoolConfiguration.h:\n* UIProcess/API/APIWebsiteDataStore.cpp:\n(API::WebsiteDataStore::defaultMediaCacheDirectory): Default implementation.\n* UIProcess/API/APIWebsiteDataStore.h:\n* UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:\n(API::WebsiteDataStore::defaultMediaCacheDirectory): Media cache is in temporary directory.\n(API::WebsiteDataStore::tempDirectoryFileSystemRepresentation): For resources in temporary directory.\n(API::WebsiteDataStore::defaultDataStoreConfiguration): Init media cache directory.\n* UIProcess/Cocoa/WebProcessPoolCocoa.mm:\n(WebKit::WebProcessPool::legacyPlatformDefaultMediaCacheDirectory):\n* UIProcess/WebProcessPool.cpp:\n(WebKit::legacyWebsiteDataStoreConfiguration): Add mediaCacheDirectory.\n(WebKit::WebProcessPool::createNewWebProcess): Add mediaCacheDirectory.\n* UIProcess/WebProcessPool.h:\n* UIProcess/WebsiteData/WebsiteDataStore.cpp:\n(WebKit::WebsiteDataStore::WebsiteDataStore):\n(WebKit::WebsiteDataStore::fetchData): Implement for mediaCacheDirectory.\n(WebKit::WebsiteDataStore::removeData): Implement for mediaCacheDirectory.\n* UIProcess/WebsiteData/WebsiteDataStore.h:\n* UIProcess/efl/WebProcessPoolEfl.cpp:\n(WebKit::WebProcessPool::legacyPlatformDefaultMediaCacheDirectory): Added.\n* UIProcess/gtk/WebProcessPoolGtk.cpp:\n(WebKit::WebProcessPool::legacyPlatformDefaultMediaCacheDirectory): Added.\n* WebProcess/WebProcess.cpp:\n(WebKit::WebProcess::initializeWebProcess): Initialize media cache directory.\n* WebProcess/cocoa/WebProcessCocoa.mm:\n(WebKit::WebProcess::platformInitializeWebProcess): Consume sandbox extension.\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199315 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/ab46b46bf2425b146ed40c99a2ae91d023227731"},{"sha":"7b596e72feb8f0da220245440a745f2295a8a1ae","author":{"email":"083d44ce61b1f946a3aa6fbd704954e0195d0658@apple.com","name":"cdumez@apple.com"},"message":"[WebIDL] Add support for [ImplementedAs] for EventHandler attributes\nhttps://bugs.webkit.org/show_bug.cgi?id=156421\n\nReviewed by Darin Adler.\n\nAdd support for [ImplementedAs] for EventHandler attributes so we can\nget rid of some ugly name hard-coding in the bindings generator.\n\n* Modules/notifications/Notification.idl:\n* bindings/scripts/CodeGeneratorJS.pm:\n(EventHandlerAttributeEventName):\n* bindings/scripts/test/JS/JSTestObj.cpp:\n(WebCore::jsTestObjOnwebkitfoo):\n(WebCore::setJSTestObjOnwebkitfoo):\n* bindings/scripts/test/TestObj.idl:\n* dom/Element.idl:\n* page/DOMWindow.idl:\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199316 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/7b596e72feb8f0da220245440a745f2295a8a1ae"},{"sha":"cc2a93bdce036bef62054e36d87e78d1a6b22f20","author":{"email":"ee265a39ce1096c7aa719c384cf7e22c626df10a@apple.com","name":"achristensen@apple.com"},"message":"Unreviewed, rolling out r198909.\nhttps://bugs.webkit.org/show_bug.cgi?id=156479\n\nmade double-click-and-drag on text drag instead of\nhighlighting (Requested by alexchristensen_ on #webkit).\n\nReverted changeset:\n\n\"eventMayStartDrag() does not check for shiftKey or\nisOverLink\"\nhttps://bugs.webkit.org/show_bug.cgi?id=155746\nhttp://trac.webkit.org/changeset/198909\n\nPatch by Commit Queue <commit-queue@webkit.org> on 2016-04-11\n\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@199317 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":false,"url":"https://api.github.com/repos/em-/webkit/commits/cc2a93bdce036bef62054e36d87e78d1a6b22f20"}]}