Timeline
Jun 10, 2014:
- 10:44 PM Changeset in webkit [169796] by
-
- 2 edits in trunk/Source/WebCore
Actually only generate tables for History and Location.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
- 9:52 PM Changeset in webkit [169795] by
-
- 54 edits4 adds in branches/ftlopt/Source/JavaScriptCore
[ftlopt] DFG should use its own notion of JSValue, which we should call FrozenValue, that will carry around a copy of its structure
https://bugs.webkit.org/show_bug.cgi?id=133426
Reviewed by Geoffrey Garen.
The impetus for this was to provide some sense and reason to race conditions arising from
cell constants having their structure changed on the main thread - this is harmess because
we defend against it, but when it goes wrong, it can be difficult to reproduce because it
requires a race. Giving the DFG the ability to "freeze" a cell's structure fixes this.
But this patch goes quite a bit further, and completely rationalizes how the DFG reasons
about constants. It no longer relies on the CodeBlock constant pool at all, which allows
for a more object-oriented approach: for example a Node that has a constant can tell you
what constant it has without needing a CodeBlock.
- CMakeLists.txt:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeExitSiteData):
- bytecode/ExitKind.cpp:
(JSC::exitKindToString):
(JSC::exitKindIsCountable):
- bytecode/ExitKind.h:
(JSC::isWatchpoint): Deleted.
- bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::hasExitSite):
- bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::hasExitSite):
- dfg/DFGAbstractInterpreter.h:
(JSC::DFG::AbstractInterpreter::filterByValue):
(JSC::DFG::AbstractInterpreter::setBuiltInConstant):
(JSC::DFG::AbstractInterpreter::setConstant):
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::filterByValue):
- dfg/DFGAbstractValue.cpp:
(JSC::DFG::AbstractValue::setOSREntryValue):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::filterByValue):
(JSC::DFG::AbstractValue::setMostSpecific): Deleted.
- dfg/DFGAbstractValue.h:
- dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
- dfg/DFGBackwardsPropagationPhase.cpp:
(JSC::DFG::BackwardsPropagationPhase::isNotNegZero):
(JSC::DFG::BackwardsPropagationPhase::isNotPosZero):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwoForConstant):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwo):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::getDirect):
(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::jsConstant):
(JSC::DFG::ByteCodeParser::weakJSConstant):
(JSC::DFG::ByteCodeParser::cellConstantWithStructureCheck):
(JSC::DFG::ByteCodeParser::InlineStackEntry::remapOperand):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::prepareToParseBlock):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::buildOperandMapsIfNecessary):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::ByteCodeParser::addConstant): Deleted.
(JSC::DFG::ByteCodeParser::getJSConstantForValue): Deleted.
(JSC::DFG::ByteCodeParser::getJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::isJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::isInt32Constant): Deleted.
(JSC::DFG::ByteCodeParser::valueOfJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::valueOfInt32Constant): Deleted.
(JSC::DFG::ByteCodeParser::constantUndefined): Deleted.
(JSC::DFG::ByteCodeParser::constantNull): Deleted.
(JSC::DFG::ByteCodeParser::one): Deleted.
(JSC::DFG::ByteCodeParser::constantNaN): Deleted.
(JSC::DFG::ByteCodeParser::cellConstant): Deleted.
(JSC::DFG::ByteCodeParser::inferredConstant): Deleted.
(JSC::DFG::ByteCodeParser::ConstantRecord::ConstantRecord): Deleted.
- dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::constantCSE):
(JSC::DFG::CSEPhase::checkFunctionElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::CSEPhase::weakConstantCSE): Deleted.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGCommon.h:
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitGetByOffset):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupMakeRope):
(JSC::DFG::FixupPhase::truncateConstantToInt32):
(JSC::DFG::FixupPhase::attemptToMakeGetTypedArrayByteLength):
(JSC::DFG::FixupPhase::injectTypeConversionsForEdge):
- dfg/DFGFrozenValue.cpp: Added.
(JSC::DFG::FrozenValue::emptySingleton):
(JSC::DFG::FrozenValue::dumpInContext):
(JSC::DFG::FrozenValue::dump):
- dfg/DFGFrozenValue.h: Added.
(JSC::DFG::FrozenValue::FrozenValue):
(JSC::DFG::FrozenValue::operator!):
(JSC::DFG::FrozenValue::value):
(JSC::DFG::FrozenValue::structure):
(JSC::DFG::FrozenValue::strengthenTo):
(JSC::DFG::FrozenValue::strength):
(JSC::DFG::FrozenValue::freeze):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::tryGetActivation):
(JSC::DFG::Graph::tryGetFoldableView):
(JSC::DFG::Graph::registerFrozenValues):
(JSC::DFG::Graph::visitChildren):
(JSC::DFG::Graph::freezeFragile):
(JSC::DFG::Graph::freeze):
(JSC::DFG::Graph::freezeStrong):
(JSC::DFG::Graph::convertToConstant):
(JSC::DFG::Graph::convertToStrongConstant):
(JSC::DFG::Graph::assertIsWatched):
- dfg/DFGGraph.h:
(JSC::DFG::Graph::addImmediateShouldSpeculateInt32):
(JSC::DFG::Graph::convertToConstant): Deleted.
(JSC::DFG::Graph::constantRegisterForConstant): Deleted.
(JSC::DFG::Graph::getJSConstantSpeculation): Deleted.
(JSC::DFG::Graph::isConstant): Deleted.
(JSC::DFG::Graph::isJSConstant): Deleted.
(JSC::DFG::Graph::isInt32Constant): Deleted.
(JSC::DFG::Graph::isDoubleConstant): Deleted.
(JSC::DFG::Graph::isNumberConstant): Deleted.
(JSC::DFG::Graph::isBooleanConstant): Deleted.
(JSC::DFG::Graph::isCellConstant): Deleted.
(JSC::DFG::Graph::isFunctionConstant): Deleted.
(JSC::DFG::Graph::isInternalFunctionConstant): Deleted.
(JSC::DFG::Graph::valueOfJSConstant): Deleted.
(JSC::DFG::Graph::valueOfInt32Constant): Deleted.
(JSC::DFG::Graph::valueOfNumberConstant): Deleted.
(JSC::DFG::Graph::valueOfBooleanConstant): Deleted.
(JSC::DFG::Graph::valueOfFunctionConstant): Deleted.
(JSC::DFG::Graph::mulImmediateShouldSpeculateInt32): Deleted.
- dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::initialize):
- dfg/DFGInsertionSet.h:
(JSC::DFG::InsertionSet::insertConstant):
(JSC::DFG::InsertionSet::insertConstantForUse):
- dfg/DFGIntegerCheckCombiningPhase.cpp:
(JSC::DFG::IntegerCheckCombiningPhase::rangeKeyAndAddend):
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
- dfg/DFGLazyJSValue.cpp:
(JSC::DFG::LazyJSValue::getValue):
(JSC::DFG::LazyJSValue::strictEqual):
(JSC::DFG::LazyJSValue::dumpInContext):
- dfg/DFGLazyJSValue.h:
(JSC::DFG::LazyJSValue::LazyJSValue):
(JSC::DFG::LazyJSValue::tryGetValue):
(JSC::DFG::LazyJSValue::value):
(JSC::DFG::LazyJSValue::switchLookupValue):
- dfg/DFGMinifiedNode.cpp:
(JSC::DFG::MinifiedNode::fromNode):
- dfg/DFGMinifiedNode.h:
(JSC::DFG::belongsInMinifiedGraph):
(JSC::DFG::MinifiedNode::hasConstant):
(JSC::DFG::MinifiedNode::constant):
(JSC::DFG::MinifiedNode::hasConstantNumber): Deleted.
(JSC::DFG::MinifiedNode::constantNumber): Deleted.
(JSC::DFG::MinifiedNode::hasWeakConstant): Deleted.
(JSC::DFG::MinifiedNode::weakConstant): Deleted.
- dfg/DFGNode.h:
(JSC::DFG::Node::hasConstant):
(JSC::DFG::Node::constant):
(JSC::DFG::Node::convertToConstant):
(JSC::DFG::Node::asJSValue):
(JSC::DFG::Node::isInt32Constant):
(JSC::DFG::Node::asInt32):
(JSC::DFG::Node::asUInt32):
(JSC::DFG::Node::isDoubleConstant):
(JSC::DFG::Node::isNumberConstant):
(JSC::DFG::Node::asNumber):
(JSC::DFG::Node::isMachineIntConstant):
(JSC::DFG::Node::asMachineInt):
(JSC::DFG::Node::isBooleanConstant):
(JSC::DFG::Node::asBoolean):
(JSC::DFG::Node::isCellConstant):
(JSC::DFG::Node::asCell):
(JSC::DFG::Node::dynamicCastConstant):
(JSC::DFG::Node::function):
(JSC::DFG::Node::isWeakConstant): Deleted.
(JSC::DFG::Node::constantNumber): Deleted.
(JSC::DFG::Node::convertToWeakConstant): Deleted.
(JSC::DFG::Node::weakConstant): Deleted.
(JSC::DFG::Node::valueOfJSConstant): Deleted.
- dfg/DFGNodeType.h:
- dfg/DFGOSRExitCompiler.cpp:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::silentSavePlanForFPR):
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::SpeculativeJIT::compileIn):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBooleanBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleInt32Branch):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::compileDoubleRep):
(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileAdd):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileArithMod):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::valueOfJSConstantAsImm64):
(JSC::DFG::SpeculativeJIT::initConstantInfo):
(JSC::DFG::SpeculativeJIT::isConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isJSConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isInt32Constant): Deleted.
(JSC::DFG::SpeculativeJIT::isDoubleConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isNumberConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isBooleanConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isFunctionConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfInt32Constant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfNumberConstant): Deleted.
(JSC::DFG::SpeculativeJIT::addressOfDoubleConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfJSConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfBooleanConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfFunctionConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isNullConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isInteger): Deleted.
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
- dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
- dfg/DFGValueStrength.cpp: Added.
(WTF::printInternal):
- dfg/DFGValueStrength.h: Added.
(JSC::DFG::merge):
- dfg/DFGVariableEventStream.cpp:
(JSC::DFG::VariableEventStream::tryToSetConstantRecovery):
(JSC::DFG::VariableEventStream::reconstruct):
- dfg/DFGVariableEventStream.h:
- dfg/DFGWatchableStructureWatchingPhase.cpp:
(JSC::DFG::WatchableStructureWatchingPhase::run):
(JSC::DFG::WatchableStructureWatchingPhase::tryWatch):
- dfg/DFGWatchpointCollectionPhase.cpp:
(JSC::DFG::WatchpointCollectionPhase::handle):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLink.cpp:
(JSC::FTL::link):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileDoubleConstant):
(JSC::FTL::LowerDFGToLLVM::compileInt52Constant):
(JSC::FTL::LowerDFGToLLVM::compileCheckStructure):
(JSC::FTL::LowerDFGToLLVM::compileCheckFunction):
(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):
(JSC::FTL::LowerDFGToLLVM::lowInt32):
(JSC::FTL::LowerDFGToLLVM::lowCell):
(JSC::FTL::LowerDFGToLLVM::lowBoolean):
(JSC::FTL::LowerDFGToLLVM::lowJSValue):
(JSC::FTL::LowerDFGToLLVM::tryToSetConstantExitArgument):
(JSC::FTL::LowerDFGToLLVM::compileWeakJSConstant): Deleted.
- ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):
- runtime/JSCJSValue.cpp:
(JSC::JSValue::dumpInContext):
(JSC::JSValue::dumpInContextAssumingStructure):
- runtime/JSCJSValue.h:
- 9:32 PM Changeset in webkit [169794] by
-
- 2 edits in trunk/Tools
Unreviewed, update my list of email addresses in contributors.json.
- Scripts/webkitpy/common/config/contributors.json:
- 9:31 PM Changeset in webkit [169793] by
-
- 15 edits in branches/ftlopt/Source/JavaScriptCore
Unreviewed, roll out http://trac.webkit.org/changeset/169786.
It broke a lot of tests on 32-bit.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasHeapPrediction):
(JSC::DFG::Node::canBeKnownFunction):
(JSC::DFG::Node::hasKnownFunction):
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall):
(JSC::FTL::LowerDFGToLLVM::didOverflowStack):
(JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct): Deleted.
- runtime/JSCJSValue.h:
- 9:19 PM Changeset in webkit [169792] by
-
- 2 edits in trunk/Source/WebCore
Attempt to fix the tests.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
Keep generating HashTables for History and Location, since they use them in
their custom getOwnPropertySlot delegates.
- 8:52 PM Changeset in webkit [169791] by
-
- 17 edits in trunk/Source
[iOS][WK2] ScrollingTreeOverflowScrollingNode does not use asynchronous touch dispatch
https://bugs.webkit.org/show_bug.cgi?id=133702
Source/WebCore:
Reviewed by Simon Fraser.
- page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::scrollingTreeNodeWillStartPanGesture):
Source/WebKit2:
<rdar://problem/17259261>
Reviewed by Simon Fraser.
Notify the WKWebView and the TouchGestureRecognizer when on of the internal UIScrollView
starts scrolling in response to a gesture.
- UIProcess/PageClient.h:
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
- UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::scrollingTreeNodeWillStartPanGesture):
- UIProcess/Scrolling/RemoteScrollingTree.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewWillStartPanGesture):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::scrollViewWillStartPanGesture):
- UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeWillStartPanGesture):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::scrollViewWillStartPanGesture):
- 8:35 PM Changeset in webkit [169790] by
-
- 6 edits in trunk/Source/WebCore
Reduce the overhead of updating the animatable style on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=133618
Reviewed by Simon Fraser.
While updating the style for animations, most of the time spent was pure calling overhead.
This patch should reduce this a bit on ARMv7:
1) Get the frame directly from the document instead of document->view->framview->frame.
2) Inline RenderObject::animation(). This is just 3 loads, setting up the registers on the call
site is more expensive than loading the values directly.
3) Inline RenderElement::setAnimatableStyle(). It has only one call site and the call is mostly
overhead.
- css/CSSComputedStyleDeclaration.cpp:
- rendering/RenderElement.cpp:
(WebCore::RenderElement::setAnimatableStyle): Deleted.
- rendering/RenderElement.h:
(WebCore::RenderElement::setAnimatableStyle):
- rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustRectForOutlineAndShadow):
(WebCore::RenderObject::animation): Deleted.
- rendering/RenderObject.h:
(WebCore::RenderObject::animation):
- rendering/RenderView.h:
(WebCore::RenderObject::frame):
- 8:09 PM Changeset in webkit [169789] by
-
- 21 edits in trunk/Source
Don't create a HashTable for JSObjects that use eager reification
https://bugs.webkit.org/show_bug.cgi?id=133705
Reviewed by Geoffrey Garen.
- runtime/Lookup.h:
(JSC::reifyStaticProperties):
Add a version of reifyStaticProperties that takes an array of HashTableValues
rather than a HashTable.
../WebCore:
It is unnecessary to create the CompactHashIndex or HashTable for JSObjects
that use eager reification, since we will never look up properties directly.
Instead, we can iterate the HashTableValue array directly during reification.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
Only generate the value array for prototypes that use eager reification.
(GenerateHashTableValueArray):
Extract out into a helper.
(GenerateHashTable):
Add a parameter, $justGenerateValueArray, that if true, means we only
should generate the value array.
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
- bindings/scripts/test/JS/JSTestException.cpp:
- bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
- bindings/scripts/test/JS/JSTestInterface.cpp:
- bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
- bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
- bindings/scripts/test/JS/JSTestNode.cpp:
- bindings/scripts/test/JS/JSTestNondeterministic.cpp:
- bindings/scripts/test/JS/JSTestObj.cpp:
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
- bindings/scripts/test/JS/JSattribute.cpp:
- bindings/scripts/test/JS/JSreadonly.cpp:
- 7:28 PM Changeset in webkit [169788] by
-
- 3 edits in trunk/Tools
Always switch to an sRGB screen color profile when running tests
https://bugs.webkit.org/show_bug.cgi?id=133712
Reviewed by Tim Horton.
Switch the screen color profile to sRGB when running tests, because even ref
tests need the screen to use the correct color profile.
- DumpRenderTree/mac/LayoutTestHelper.m:
(installLayoutTestColorProfile):
- Scripts/webkitpy/port/mac.py:
(MacPort.start_helper):
- 6:53 PM Changeset in webkit [169787] by
-
- 4 edits1 add in trunk/Source/JavaScriptCore
Prediction propagator should make sure everyone knows that a variable that is in an argument position where other versions of that variable are not MachineInts cannot possibly be flushed as Int52
https://bugs.webkit.org/show_bug.cgi?id=133698
Reviewed by Geoffrey Garen and Mark Hahnenberg.
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate): Use the new utility to figure out if a variable could ever represent an Int52.
- dfg/DFGVariableAccessData.cpp:
(JSC::DFG::VariableAccessData::couldRepresentInt52): Add a new utility to detect early on if a variable could possibly be Int52.
(JSC::DFG::VariableAccessData::couldRepresentInt52Impl):
(JSC::DFG::VariableAccessData::flushFormat):
- dfg/DFGVariableAccessData.h:
- tests/stress/int52-inlined-call-argument.js: Added.
(foo):
(bar):
- 6:51 PM Changeset in webkit [169786] by
-
- 15 edits in branches/ftlopt/Source/JavaScriptCore
Added native calling to the FTL and Split the DFG nodes
Call and Construct into NativeCall and NativeConstruct
to better represent their semantics.
https://bugs.webkit.org/show_bug.cgi?id=133660
Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-09
Reviewed by Filip Pizlo.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
Added NativeCall and NativeConstruct case
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall): added NativeCall case.
(JSC::DFG::ByteCodeParser::handleCall):
set to return NativeCall or NativeConstruct instead of Call or Construct
in the presence of a native function.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize): added NativeCall and NativeConstruct case.
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC): added NativeCall and NativeConstruct case.
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode): added NativeCall and NativeConstruct case.
- dfg/DFGNode.h:
(JSC::DFG::Node::hasHeapPrediction): added NativeCall and NativeConstruct case.
(JSC::DFG::Node::canBeKnownFunction): changed to NativeCall and NativeConstruct.
(JSC::DFG::Node::hasKnownFunction): changed to NativeCall and NativeConstruct.
- dfg/DFGNodeType.h: added NativeCall and NativeConstruct.
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate): added NativeCall and NativeConstruct case.
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute): added NativeCall and NativeConstruct case.
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall): ditto
(JSC::DFG::SpeculativeJIT::compile): ditto
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall): ditto
(JSC::DFG::SpeculativeJIT::compile): ditto
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile): ditto
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::lower): ditto
(JSC::FTL::LowerDFGToLLVM::compileNode): ditto.
(JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct): Added.
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct): removed NativeCall and NativeConstruct functionality.
(JSC::FTL::LowerDFGToLLVM::didOverflowStack): added NativeCall and NativeConstruct case.
- runtime/JSCJSValue.h: added JS_EXPORT_PRIVATE to toInteger as it is apparently needed.
- 6:38 PM Changeset in webkit [169785] by
-
- 6 edits in trunk/Tools
[EFL] Bump EFL libraries to 1.9
https://bugs.webkit.org/show_bug.cgi?id=125479
Patch by Martin Hodovan <mhodovan@partner.samsung.com> on 2014-06-10
Reviewed by Gyuyoung Kim.
Based on the work of Ryuan Choi <ryuan.choi@samsung.com>
and László Langó <llango.u-szeged@partner.samsung.com>.
- ImageDiff/CMakeLists.txt:
- MiniBrowser/efl/CMakeLists.txt:
- efl/install-dependencies:
- efl/jhbuild.modules:
- efl/jhbuildrc:
- 6:04 PM Changeset in webkit [169784] by
-
- 2 edits in trunk/Source/WebCore
AX: iOS: Return the language for attributed text marker queries
https://bugs.webkit.org/show_bug.cgi?id=133682
Reviewed by Mario Sanchez Prada.
Add language to the list of objects being returned for attributed text.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(AXAttributeStringSetLanguage):
(AXAttributedStringAppendText):
- 5:06 PM Changeset in webkit [169783] by
-
- 3 edits in trunk/Tools
old-run-webkit-tests: Create CoreSimulator device on demand and find it by name
https://bugs.webkit.org/show_bug.cgi?id=133663
Reviewed by David Kilzer.
- Scripts/old-run-webkit-tests:
(installAndLaunchDumpToolAppUsingNotification):
- Remove obsolete notification keys
- Key off of mandatory device UDID (a UUID)
- Create a device on demand via CoreSimulator if necessary
-- Grab the UDID from the created device plist.
- Scripts/webkitdirs.pm:
(iOSSimulatorDevicesPath): Added
(iOSSimulatorDevices): Added
(createiOSSimulatorDevice): Added
(deleteiOSSimulatorDevice): Added
- 5:01 PM Changeset in webkit [169782] by
-
- 33 edits in trunk/Source
Source/WebCore: WebCore part of [Cocoa] Handling authentication challenges should not require multiple delegate methods
https://bugs.webkit.org/show_bug.cgi?id=133697
Reviewed by Anders Carlsson.
- platform/network/AuthenticationClient.h: Declared new virtual member functions for
requesting default handling of a challenge and rejecting a challenge.
- platform/network/ResourceHandle.h: Override new AuthenticationClient functions.
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::receivedRequestToPerformDefaultHandling): Added. Calls
CFURLConnectionPerformDefaultHandlingForChallenge.
(WebCore::ResourceHandle::receivedChallengeRejection): Added. Calls
CFURLConnectionRejectChallenge.
- platform/network/cf/SocketStreamHandle.h: Override new AuthenticationClient functions.
- platform/network/cf/SocketStreamHandleCFNet.cpp:
(WebCore::SocketStreamHandle::receivedRequestToPerformDefaultHandling): Added empty
override.
(WebCore::SocketStreamHandle::receivedChallengeRejection): Ditto.
Source/WebKit2: WebKit2 part of [Cocoa] Handling authentication challenges should not require multiple delegate methods
https://bugs.webkit.org/show_bug.cgi?id=133697
Reviewed by Anders Carlsson.
- Shared/Authentication/AuthenticationManager.cpp:
(WebKit::AuthenticationManager::performDefaultHandling): Added. Calls the new
AuthenticationClient function receivedRequestToPerformDefaultHandling.
(WebKit::AuthenticationManager::rejectProtectionSpaceAndContinue): Added. Calls the new
AuthenticationClient function receivedChallengeRejection.
- Shared/Authentication/AuthenticationManager.h:
- Shared/Authentication/AuthenticationManager.messages.in: Added new messages
PerformDefaultHandling and RejectProtectionSpaceAndContinue.
- Shared/Downloads/DownloadAuthenticationClient.h: Override new AuthenticationClient member
functions.
- Shared/Downloads/ios/DownloadIOS.mm:
(WebKit::Download::receivedRequestToPerformDefaultHandling): Added empty implementation.
(WebKit::Download::receivedChallengeRejection): Ditto.
- Shared/Downloads/mac/DownloadMac.mm:
(WebKit::Download::receivedRequestToPerformDefaultHandling): Added. Forwards to the sender.
(WebKit::Download::receivedChallengeRejection): Ditto.
- UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm:
(checkChallenge): Factored out a bit of code into this helper function.
(-[WKNSURLAuthenticationChallengeSender cancelAuthenticationChallenge:]): Use new helper.
(-[WKNSURLAuthenticationChallengeSender continueWithoutCredentialForAuthenticationChallenge:]):
Ditto.
(-[WKNSURLAuthenticationChallengeSender useCredential:forAuthenticationChallenge:]): Ditto.
(-[WKNSURLAuthenticationChallengeSender performDefaultHandlingForAuthenticationChallenge:]):
Implemented this optional NSURLAuthenticationChallengeSender protocol method by forwarding
to the decision listener.
(-[WKNSURLAuthenticationChallengeSender rejectProtectionSpaceAndContinueWithChallenge:]):
Ditto.
- UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Declared new delegate method.
- UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::performDefaultHandling): Added. Sends a message to
the authentication manager.
(WebKit::AuthenticationChallengeProxy::rejectProtectionSpaceAndContinue): Ditto.
- UIProcess/Authentication/AuthenticationChallengeProxy.h:
- UIProcess/Authentication/AuthenticationDecisionListener.cpp:
(WebKit::AuthenticationDecisionListener::performDefaultHandling): Added. Forwards to the
authentication challenge proxy.
(WebKit::AuthenticationDecisionListener::rejectProtectionSpaceAndContinue): Ditto.
- UIProcess/Authentication/AuthenticationDecisionListener.h:
- UIProcess/Cocoa/NavigationState.h: Added flag in m_navigationDelegateMethods struct.
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate): Initialize
webViewWillSendRequestForAuthenticationChallenge flag in the delegate methods struct.
(WebKit::NavigationState::LoaderClient::canAuthenticateAgainstProtectionSpaceInFrame): If
the delegate implements -_webView:willSendRequestForAuthenticationChallenge:, return true
here; the delegate will respond with -rejectProtectionSpaceAndContinueWithChallenge: if
it cannot authenticate.
(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame): If the
delegate implements -_webView:willSendRequestForAuthenticationChallenge:, send that message.
- 4:30 PM Changeset in webkit [169781] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION (r167962): Out of bounds read in JSC::StructureIDTable::get()
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>
Reviewed by Geoffrey Garen.
Revise MediaControllerHost implementation so that instead of holding its
own pointer to the JS Controller object, it uses new properties added to
the internal media controls DOM hierarchy. This allows the GC to see the
needed lifecycle of the various media control objects and avoids the
premature deallocation that caused this bug.
- Modules/mediacontrols/MediaControlsHost.h:
(WebCore::MediaControlsHost::controllerJSValue): Deleted.
(WebCore::MediaControlsHost::setControllerJSValue): Deleted.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::controllerJSValue): Added convenience function
to share logic for retrieving the controller object.
(WebCore::HTMLMediaElement::updateCaptionContainer): Revise to use new method
for accessing the controller.
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Connect the media
elements JS wrapper object to the MediaControlsHost JS wrapper. Then connect
the MediaControlsHost JS wrapper to the Controller JS object.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): Revise to use new method
for accessing the controller.
- 4:23 PM Changeset in webkit [169780] by
-
- 7 edits2 deletes in trunk
Japanese text in Google search is rendered too low and clipped
https://bugs.webkit.org/show_bug.cgi?id=133595
Reviewed by Simon Fraser.
This is a revert of r155324.
Source/WebCore:
By forcing line-height to be normal, r155324 was forcing WebKit to inspect font metrics
to determine the height of a line. This means that if a fallback font was required to
draw a line of text, and the fallback font had a higher ascent than the primary font,
the entire line of text would be pushed down. If we don't force line-height to be normal,
then we use the line-height value instead, which short circuits this mechanism, thereby
not pushing text down.
No new tests (because this is simply a revert)
- css/html.css:
(input): Deleted.
LayoutTests:
- fast/dom/HTMLInputElement/input-line-height-expected.txt: Removed.
- fast/dom/HTMLInputElement/input-line-height.html: Removed.
- fast/forms/placeholder-position-expected.txt:
- platform/mac/fast/forms/placeholder-position-expected.png:
- platform/mac/fast/forms/placeholder-position-expected.txt:
- platform/mac-mountainlion/fast/forms/placeholder-position-expected.txt:
- 4:13 PM Changeset in webkit [169779] by
-
- 9 edits2 adds in trunk
REGRESSION (r167937): Do not use effective zoom factor while resolving media query's min-, max-(device)width/height values.
https://bugs.webkit.org/show_bug.cgi?id=133681
Reviewed by Simon Fraser.
We lost the default multiplier(zoom) value of 1 with r167937 at template<typename T> T computeLength().
Now MediaQueryEvaluator takes the current page zoom factor into account while resolving min-, max- width values.
This patch explicitly sets the multiplier value to 1 to ensure zoom independent media query value resolving.
Source/WebCore:
Test: fast/media/media-query-with-scaled-content.html
- css/CSSToLengthConversionData.cpp:
(WebCore::CSSToLengthConversionData::viewportWidthFactor):
(WebCore::CSSToLengthConversionData::viewportHeightFactor):
- css/CSSToLengthConversionData.h:
- css/MediaQueryEvaluator.cpp:
(WebCore::MediaQueryEvaluator::eval):
- testing/Internals.cpp:
(WebCore::Internals::setPageZoomFactor):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- fast/media/media-query-with-scaled-content-expected.html: Added.
- fast/media/media-query-with-scaled-content.html: Added.
- 3:50 PM Changeset in webkit [169778] by
-
- 5 edits in tags/Safari-538.39.40/Source/WebCore
Merge r169681. <rdar://problem/16850492>
- 3:47 PM Changeset in webkit [169777] by
-
- 4 edits in trunk
https://bugs.webkit.org/show_bug.cgi?id=133694
Revert the part of r169733 that caused this test to start failing.
Source/WebCore:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
LayoutTests:
- platform/mac/TestExpectations:
- 3:39 PM Changeset in webkit [169776] by
-
- 2 edits in tags/Safari-538.39.40/Source/WebCore
Merge r169685. <rdar://problem/16478676>
- 3:30 PM Changeset in webkit [169775] by
-
- 10 edits2 adds in trunk/Source
Factor repeated CFRunLoopObserver code out
https://bugs.webkit.org/show_bug.cgi?id=133690
Reviewed by Simon Fraser.
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
- platform/cf/RunLoopObserver.cpp: Added.
(WebCore::RunLoopObserver::create):
(WebCore::RunLoopObserver::~RunLoopObserver):
(WebCore::RunLoopObserver::runLoopObserverFired):
(WebCore::RunLoopObserver::schedule):
(WebCore::RunLoopObserver::invalidate):
- platform/cf/RunLoopObserver.h: Added.
(WebCore::RunLoopObserver::isScheduled):
(WebCore::RunLoopObserver::RunLoopObserver):
Factor CFRunLoopObserver management code out of LayerFlushScheduler and WebKit2.
- platform/graphics/ca/LayerFlushScheduler.h:
- platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
(WebCore::LayerFlushScheduler::LayerFlushScheduler):
(WebCore::LayerFlushScheduler::~LayerFlushScheduler):
(WebCore::LayerFlushScheduler::layerFlushCallback):
(WebCore::LayerFlushScheduler::schedule):
(WebCore::LayerFlushScheduler::invalidate):
(WebCore::LayerFlushScheduler::runLoopObserverCallback): Deleted.
Make use of WebCore::RunLoopObserver.
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::showDebugIndicator):
(WebKit::coreAnimationDidCommitLayersCallback): Deleted.
(WebKit::RemoteLayerTreeDrawingAreaProxy::scheduleCoreAnimationLayerCommitObserver): Deleted.
(WebKit::RemoteLayerTreeDrawingAreaProxy::coreAnimationDidCommitLayers): Deleted.
Make use of WebCore::RunLoopObserver.
- WebView/WebViewData.h:
- 3:25 PM Changeset in webkit [169774] by
-
- 1 edit in tags/Safari-538.39.40/Source/WebCore/ChangeLog
Merge r167907. <rdar://problem/16478676>
- 3:14 PM Changeset in webkit [169773] by
-
- 4 edits in trunk/Source/WebCore
Modernize loop code in scrolling tree code
https://bugs.webkit.org/show_bug.cgi?id=133688
Reviewed by Anders Carlsson.
Use new loop syntax for walking children.
- page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::cloneAndResetChildren):
(WebCore::ScrollingStateNode::removeChild):
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
(WebCore::ScrollingStateNode::dump):
- page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::removeChild):
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
- 3:10 PM Changeset in webkit [169772] by
-
- 5 edits in tags/Safari-538.39.40/Source
Versioning.
- 2:56 PM Changeset in webkit [169771] by
-
- 2 edits in trunk/LayoutTests
Use [ Pass Failure ] instead of [ Skip ] for the tests skipped in r169767.
- platform/mac/TestExpectations:
- 2:53 PM Changeset in webkit [169770] by
-
- 1 copy in tags/Safari-538.39.40
New Tag.
- 2:41 PM Changeset in webkit [169769] by
-
- 2 edits in trunk/Source/WebKit2
Fix availability declaration.
- UIProcess/API/Cocoa/WKError.h:
- 2:40 PM Changeset in webkit [169768] by
-
- 2 edits in trunk/Tools
[GTK][gtkdoc] remove -Wcast-align
https://bugs.webkit.org/show_bug.cgi?id=133640
Apparently gcc warns that GParamSpec is not castable to
GParamSpecInt64/GParamSpecUInt64/GParamSpecDouble due they are 64bit, even
though ARM hackers claim that those only need 4byte alignment. As long as gcc
behaves that way, this warning is not very useful, also they break the Debian
packaging.
This patch appends the compiler flag -Wno-align-cast for the gtkdoc
scanner compilation, thus the compiler ignores the previous
-Waling-cast flag.
Reviewed by Martin Robinson.
- gtk/generate-gtkdoc:
(get_generator_for_config):
- 2:36 PM Changeset in webkit [169767] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (6/9/2014): Several TextTrackCue tests became very flaky
https://bugs.webkit.org/show_bug.cgi?id=133686
- platform/mac/TestExpectations: Skipped the flaky tests
- 2:36 PM Changeset in webkit [169766] by
-
- 2 edits in trunk/Source/WebKit2
Address a comment about a comment.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):
- 2:25 PM Changeset in webkit [169765] by
-
- 10 edits1 copy in trunk/Source
Add -[WKWebView evaluateJavaScript:completionHandler:]
https://bugs.webkit.org/show_bug.cgi?id=133689
<rdar://problem/17152685>
Reviewed by Geoffrey Garen.
Source/WebCore:
- English.lproj/Localizable.strings:
Add new localizable strings.
Source/WebKit2:
- Shared/API/c/WKErrorRef.h:
Remove WKErrorCode typedef from here.
- UIProcess/API/C/WKPageLoaderClient.h:
Use uint32_t instead of WKErrorCode.
- UIProcess/API/Cocoa/WKError.h:
(NS_ENUM):
Add a WKErrorDomain and a WKErrorCode enum.
- UIProcess/API/Cocoa/WKError.mm:
(localizedDescriptionForErrorCode):
Helper that returns the localized description given an error code.
(createNSError):
Helper that creates an NSError with the correct localized description given an error code.
- UIProcess/API/Cocoa/WKErrorInternal.h:
Add helpers.
- UIProcess/API/Cocoa/WKWebView.h:
Add evaluateJavaScript:completionHandler: method.
- UIProcess/API/Cocoa/WKWebView.mm:
(callbackErrorCode):
Helper that returns a WKErrorCode from a WebKit::CallbackBase::Error enum.
(-[WKWebView evaluateJavaScript:completionHandler:]):
Run the JavaScript code and handle all the error cases.
(-[WKWebView _runJavaScriptInMainFrame:]):
Reimplement this using the API method.
- WebKit2.xcodeproj/project.pbxproj:
Add new files.
- 2:20 PM Changeset in webkit [169764] by
-
- 2 edits in trunk/LayoutTests
[WK2] http/tests/navigation/new-window-redirect-history.html crashes
https://bugs.webkit.org/show_bug.cgi?id=127683
- platform/wk2/TestExpectations: Changed expectation from Crash to Skip, because
it crashes every time, and generating more crash logs only makes other tests more
flaky without providing useful information.
- 1:56 PM Changeset in webkit [169763] by
-
- 2 edits in trunk/Source/WebKit2
Don't call Connection::terminateSoon if the connection is null
https://bugs.webkit.org/show_bug.cgi?id=133695
<rdar://problem/17069024>
Reviewed by Tim Horton.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::removeWebPage):
- 1:54 PM Changeset in webkit [169762] by
-
- 2 edits in trunk/LayoutTests
Skip some more flaky tests.
https://bugs.webkit.org/show_bug.cgi?id=133696
<rdar://problem/17257097>
- platform/wk2/TestExpectations:
- 1:47 PM Changeset in webkit [169761] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (r169733): compositing/iframes/become-composited-nested-iframes.html fails on WebKit1 bots
https://bugs.webkit.org/show_bug.cgi?id=133694
- platform/mac/TestExpectations: Marked the test as failing
- 1:41 PM Changeset in webkit [169760] by
-
- 2 edits in trunk/LayoutTests
fast/dom/beforeload/remove-frame-in-beforeload-listener.html and related tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=133685
- platform/wk2/TestExpectations: Skipped more affected tests.
- 1:33 PM Changeset in webkit [169759] by
-
- 6 edits1 copy in trunk/Source/WebKit2
Add process entitlements
https://bugs.webkit.org/show_bug.cgi?id=133693
Reviewed by Alexey Proskuryakov.
Add entitlements description for Database process, and
ensure that we reference the correct seatbelt profiles.
- Configurations/DatabaseService.Development.xcconfig:
- Configurations/DatabaseService.xcconfig:
- Configurations/Databases-iOS.entitlements:
- Configurations/Network-iOS.entitlements:
- Configurations/WebContent-iOS.entitlements:
- WebKit2.xcodeproj/project.pbxproj:
- 1:29 PM Changeset in webkit [169758] by
-
- 4 edits in trunk
Assertion failure at JSC::Structure::checkOffsetConsistency() const + 234.
<https://webkit.org/b/133356>
Reviewed by Mark Hahnenberg.
Source/JavaScriptCore:
The root cause of this issue is that a nonPropertyTransition can transition
a pinned dictionary structure to an unpinned dictionary structure. The new
structure will get a copy of the property table from the original structure.
However, when a GC occurs, the property table in the new structure will be
cleared because it is unpinned. This leads to complications in subsequent
derivative structures when flattening occurs, which eventually leads to the
assertion failure in this bug.
The fix is to ensure that the new dictionary structure generated by the
nonPropertyTransition will have a copy of its predecessor's property table
and is pinned.
- runtime/Structure.cpp:
(JSC::Structure::nonPropertyTransition):
LayoutTests:
- TestExpectations:
- Undoing expectation for js/primitive-property-access-edge-cases.html now that the bug is fixed.
- 1:00 PM Changeset in webkit [169757] by
-
- 2 edits in trunk/Source/WebKit2
Fix crashes on some plug-in tests.
https://bugs.webkit.org/show_bug.cgi?id=133691
<rdar://problem/17255836>
Reviewed by Anders Carlsson.
- PluginProcess/PluginControllerProxy.cpp: (WebKit::PluginControllerProxy::initialize):
Cannot use TemporaryChange here, because the object may go away before stack unwinds.
- 12:56 PM Changeset in webkit [169756] by
-
- 2 edits in trunk/LayoutTests
platform/mac-wk2/plugins/destroy-during-async-npp-new.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133692
- platform/mac-wk2/TestExpectations: Skipped the test.
- 12:07 PM Changeset in webkit [169755] by
-
- 5 edits in trunk/Source
Serialize ResourceRequests without platform request
https://bugs.webkit.org/show_bug.cgi?id=133679
Reviewed by Alexey Proskuryakov.
Source/WebCore:
We create platform requests in the web process just so we can serialize them. This is unnecessary work.
- platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::encodingRequiresPlatformData):
(WebCore::ResourceRequestBase::encodeWithoutPlatformData):
(WebCore::ResourceRequestBase::decodeWithoutPlatformData):
Add encoding and decoding functions here to avoid exposing internals.
- platform/network/cf/ResourceRequest.h:
(WebCore::ResourceRequest::encodingRequiresPlatformData):
Allow encoding without platform data if it hasn't been created yet and there is no request body.
Source/WebKit2:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ResourceRequest>::encode):
(IPC::ArgumentCoder<ResourceRequest>::decode):
Encode ResourceRequest directly if possible.
- 11:47 AM Changeset in webkit [169754] by
-
- 6 edits in trunk/Source/WebInspectorUI
Web Inspector: recording is overused as both noun and verb in TimelineManager
https://bugs.webkit.org/show_bug.cgi?id=132878
Reviewed by Joseph Pecoraro.
Rename most uses of the verb 'recording' to the verb 'capturing' for timelines.
Rename getter for the recording to activeRecording, and recordingEnabled to isCapturing().
When the timeline manager can handle multiple timeline data sets (i.e., 'recordings'),
it will be very confusing to have 'recording' as a plural noun and verb in the model.
- UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager):
(WebInspector.TimelineManager.prototype.get activeRecording):
(WebInspector.TimelineManager.prototype.isCapturing):
(WebInspector.TimelineManager.prototype.startCapturing):
(WebInspector.TimelineManager.prototype.stopCapturing):
(WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
(WebInspector.TimelineManager.prototype.eventRecorded):
(WebInspector.TimelineManager.prototype._addRecord):
(WebInspector.TimelineManager.prototype._startAutoCapturing):
(WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
(WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
(WebInspector.TimelineManager.prototype._mainResourceDidChange):
(WebInspector.TimelineManager.prototype._resourceWasAdded):
(WebInspector.TimelineManager.prototype.get recording): Deleted.
(WebInspector.TimelineManager.prototype.get recordingEnabled): Deleted.
(WebInspector.TimelineManager.prototype.startRecording): Deleted.
(WebInspector.TimelineManager.prototype.stopRecording): Deleted.
(WebInspector.TimelineManager.prototype._startAutoRecording): Deleted.
- UserInterface/Models/DefaultDashboard.js:
(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._capturingStopped):
(WebInspector.DefaultDashboard.prototype._recordingStopped): Deleted.
- UserInterface/Protocol/InspectorFrontendAPI.js:
(InspectorFrontendAPI.isTimelineProfilingEnabled):
(InspectorFrontendAPI.setTimelineProfilingEnabled):
- UserInterface/Views/TimelineContentView.js:
(WebInspector.TimelineContentView.prototype._capturingStarted):
(WebInspector.TimelineContentView.prototype._capturingStopped):
(WebInspector.TimelineContentView.prototype._recordingStarted): Deleted.
(WebInspector.TimelineContentView.prototype._recordingStopped): Deleted.
- UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype.initialize):
(WebInspector.TimelineSidebarPanel.prototype._capturingStarted):
(WebInspector.TimelineSidebarPanel.prototype._capturingStopped):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOver):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOut):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphClicked):
(WebInspector.TimelineSidebarPanel.prototype._replayCaptureButtonClicked):
(WebInspector.TimelineSidebarPanel.prototype._recordingStarted): Deleted.
(WebInspector.TimelineSidebarPanel.prototype._recordingStopped): Deleted.
- 11:33 AM Changeset in webkit [169753] by
-
- 2 edits in branches/ftlopt/Source/JavaScriptCore
[ftlopt] Structure::dfgShouldWatchIfPossible() is unsound
https://bugs.webkit.org/show_bug.cgi?id=133624
Reviewed by Mark Hahnenberg.
- runtime/Structure.h:
(JSC::Structure::dfgShouldWatchIfPossible): Make it sound and add some verbiage.
- 11:03 AM Changeset in webkit [169752] by
-
- 2 edits in trunk/LayoutTests
fast/dom/beforeload/remove-frame-in-beforeload-listener.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133685
- platform/wk2/TestExpectations: Skipped the test.
- 10:58 AM Changeset in webkit [169751] by
-
- 4 edits3 adds in trunk
In a certain app state, Array.prototype.filter() returns incorrect results
https://bugs.webkit.org/show_bug.cgi?id=133577
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Fixed the LLInt processing of op_put_by_val_direct to have the same hole check as op_put_by_val.
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
LayoutTests:
New test to check that the llint handles writing to an array hole from a built-in
function.
- js/regress/put-by-val-direct-expected.txt: Added.
- js/regress/put-by-val-direct.html: Added.
- js/regress/script-tests/put-by-val-direct.js: Added.
(test):
- 10:52 AM Changeset in webkit [169750] by
-
- 4 edits in trunk/Source/WebCore
Send more context about text selection to telephone number scanner
<rdar://problem/16874385> and https://bugs.webkit.org/show_bug.cgi?id=133684
Reviewed by Enrica Casucci.
- dom/Range.cpp:
(WebCore::rangesOverlap):Add a utility to check if two ranges overlap.
- dom/Range.h:
- editing/Editor.cpp:
(WebCore::Editor::scanSelectionForTelephoneNumbers): Create a range that is wider than the
actual selection to search for phone numbers that are not completely selected yet.
- 10:42 AM Changeset in webkit [169749] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Another unreviewed build fix after r169746.
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
Prevent another unused value error.
- 10:37 AM Changeset in webkit [169748] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Unreviewed build fix after r169746.
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::respondToMemoryPressure):
Protect startTime with !PLATFORM(IOS) to prevent a unused variable build error.
- 10:19 AM Changeset in webkit [169747] by
-
- 4 edits in trunk/Source/WebCore
AX: WK2: iOS: text editing does not work
https://bugs.webkit.org/show_bug.cgi?id=133666
Reviewed by Mario Sanchez Prada.
In WK2, all the text editing is handled by the WebProcess, so selectedTextRange and setSelectedTextRange
need to be implemented, as well as posting the right value change notification.
- accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::postPlatformNotification):
- accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper postValueChangedNotification]):
(-[WebAccessibilityObjectWrapper _accessibilitySelectedTextRange]):
(-[WebAccessibilityObjectWrapper _accessibilitySetSelectedTextRange:]):
- 9:02 AM Changeset in webkit [169746] by
-
- 4 edits in trunk/Source/WebCore
[iOS WebKit2] Stay in "memory pressure" mode until told otherwise.
<https://webkit.org/b/133671>
When we receive the first memory pressure signal, flip the flag in
MemoryPressureHandler so that isUnderMemoryPressure() returns true
from then on, until the system tells us pressure levels are back
to normal.
The hold-off mechanism is disabled for iOS, that wasn't actually
needed in the first place, since the system is not going to spam
you with tons of notifications.
Also propagate the "critical" flag all the way from the system
to the pressure handler. Note that we don't actually do anything
differently based on the flag yet.
Reviewed by Sam Weinig.
- platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::respondToMemoryPressure):
- platform/MemoryPressureHandler.h:
(WebCore::MemoryPressureHandler::setUnderMemoryPressure):
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::install):
(WebCore::MemoryPressureHandler::respondToMemoryPressure):
- 8:46 AM Changeset in webkit [169745] by
-
- 8 edits in trunk
Fix logging of sticky scrolling tree nodes
https://bugs.webkit.org/show_bug.cgi?id=133670
Reviewed by Sam Weinig.
Source/WebCore:
ScrollingStateStickyNode::dumpProperties() dumped stickyBoxRect() twice and
didn't dump constrainingRectAtLastLayout(), so fix that.
- page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::dumpProperties):
LayoutTests:
Rebaselined.
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/sticky/negative-scroll-offset-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-horizontal-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-vertical-expected.txt:
- 3:23 AM Changeset in webkit [169744] by
-
- 6 edits2 adds in trunk
[CSS Grid Layout] Simplify the named grid lines resolution algorithm
https://bugs.webkit.org/show_bug.cgi?id=133543
Reviewed by Darin Adler.
Source/WebCore:
Named grid lines resolution algorithm can be heavily simplified by
inserting the implicit named grid lines generated by each grid
area (<area-name>-{start|end} for rows and columns), into the list
of user defined named grid lines. This way we would only have to
deal with named grid lines and forget about the named grid areas
(as described in the specs
http://dev.w3.org/csswg/css-grid/#grid-placement-slot).
As a nice side effect, we'll get for free the implementation of the
use case described in section 5.2.2 Implicit Named Areas.
Test: fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set.html
- css/StyleResolver.cpp:
(WebCore::createImplicitNamedGridLinesFromGridArea):
(WebCore::StyleResolver::applyProperty):
- rendering/RenderGrid.cpp:
(WebCore::isStartSide):
(WebCore::gridLinesForSide):
(WebCore::implicitNamedGridLineForSide):
(WebCore::isNonExistentNamedLineOrArea):
(WebCore::RenderGrid::adjustGridPositionsFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionFromStyle):
(WebCore::RenderGrid::resolveGridPositionFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):
(WebCore::gridLineDefinedBeforeGridArea): Deleted.
(WebCore::setNamedLinePositionIfDefinedBeforeArea): Deleted.
(WebCore::RenderGrid::adjustNamedGridItemPosition): Deleted.
LayoutTests:
Added a new test that checks that named grid lines and areas are
correctly set after dynamically changing them with JS. It also
verifies that we properly recompute the resolution of named grid
lines/areas when the positioning properties change.
Also appended a new test case to verify that explicitly adding
named lines of the form <foo-start>/<foo-end> effectively creates
implicit named grid areas so that we could use them in grid
placement properties (for example -webkit-grid-column: foo).
No need to add more tests for named grid lines/areas resolution as
we already have a quite good coverage (the feature was already
there, we're simplifying/improving the implementation).
- fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set-expected.txt: Added.
- fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set.html: Added.
- fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution-expected.txt:
- fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution.html:
- 3:17 AM Changeset in webkit [169743] by
-
- 5 edits2 adds in trunk
[MediaStream] Add getTracks() support to MediaStream.
https://bugs.webkit.org/show_bug.cgi?id=133641
Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-10
Reviewed by Eric Carlson.
Source/WebCore:
A new method named getTracks is proposed to retrieve all the tracks
of a MediaStream irrespective of the type. This method has been implementd.
Test: fast/mediastream/MediaStream-getTracks.html
- Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::getTracks):
- Modules/mediastream/MediaStream.h:
- Modules/mediastream/MediaStream.idl:
LayoutTests:
- fast/mediastream/MediaStream-getTracks-expected.txt: Added.
- fast/mediastream/MediaStream-getTracks.html: Added.
Jun 9, 2014:
- 10:49 PM Changeset in webkit [169742] by
-
- 2 edits in trunk/Source/WebCore
Remove use of view() in RenderView code
https://bugs.webkit.org/show_bug.cgi?id=133669
Reviewed by Andreas Kling.
view() in RenderView just returns *this, so no need to use it.
- rendering/RenderView.cpp:
(WebCore::RenderView::setSelection):
- 10:23 PM Changeset in webkit [169741] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Wireless route picker control should use touch event handlers
https://bugs.webkit.org/show_bug.cgi?id=133672
Reviewed by Brent Fulgham.
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.createControls): Listen for touch events.
(ControllerIOS.prototype.handleWirelessPickerButtonTouchStart): New, handle touch start.
(ControllerIOS.prototype.handleWirelessPickerButtonTouchEnd): New, handle touch end.
(ControllerIOS.prototype.handleWirelessPickerButtonTouchCancel): New, handle touch cancel.
(ControllerIOS.prototype.handleWirelessPickerButtonClicked): Deleted.
- 8:01 PM Changeset in webkit [169740] by
-
- 4 edits in trunk/Source/JavaScriptCore
Global HashTables contain references to atomic StringImpls
https://bugs.webkit.org/show_bug.cgi?id=133661
Reviewed by Geoffrey Garen.
This was a long-standing bug revealed by bug 133558. The issue is that the global static HashTables
cache their set of keys as StringImpls that are associated with a particular VM. This is obviously
incompatible with using multiple VMs on multiple threads (e.g. when using workers). The fix is to
change the "keys" field of the static HashTables to be char instead of StringImpl.
- runtime/JSObject.cpp:
(JSC::getClassPropertyNames):
- runtime/Lookup.cpp:
(JSC::HashTable::createTable):
(JSC::HashTable::deleteTable):
- runtime/Lookup.h:
(JSC::HashTable::ConstIterator::key):
(JSC::HashTable::entry):
- 7:31 PM Changeset in webkit [169739] by
-
- 3 edits in trunk/Source/WebCore
Do not use a mask when matching the return value of a function call on ARM
https://bugs.webkit.org/show_bug.cgi?id=133614
Reviewed by Andreas Kling.
On ARM, we cannot have garbage on the top bits of booleans. It is faster to check the whole
register for nullity.
- cssjit/FunctionCall.h:
(WebCore::FunctionCall::callAndBranchOnBooleanReturnValue):
(WebCore::FunctionCall::callAndBranchOnCondition):
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementAttributeValueExactMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementAttributeFunctionCallValueMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementFunctionCallTest):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
- 6:14 PM Changeset in webkit [169738] by
-
- 2 edits in trunk/Source/WebCore
Remove the bogus assertion that didn't even build.
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue):
- 5:54 PM Changeset in webkit [169737] by
-
- 2 edits in trunk/Source/WebKit2
Fix build.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetState):
- 5:49 PM Changeset in webkit [169736] by
-
- 2 edits in trunk/Source/WebCore
Commit the right fix.
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue):
- 5:46 PM Changeset in webkit [169735] by
-
- 2 edits in trunk/Source/WebInspectorUI
REGRESSION: Web Inspector: Exception showing the DOM tree for a node with too many children
https://bugs.webkit.org/show_bug.cgi?id=129696
Fix issue where sometimes inspecting an element will try to attach the "show all nodes" button
before the expand function is called in TreeElement before _childrenListNode has been set.
Patch by Jono Wells <jonowells@apple.com> on 2014-06-09
Reviewed by Joseph Pecoraro.
- UserInterface/Views/TreeOutline.js:
(TreeOutline.prototype.appendChild):
(TreeOutline.prototype.insertChild):
Added check for existance of this._childrenListNode.
- 5:46 PM Changeset in webkit [169734] by
-
- 2 edits in trunk/Source/WebCore
Debug build fix after r169731.
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue):
- 5:37 PM Changeset in webkit [169733] by
-
- 20 edits7 adds in trunk
Work towards having frames in the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=133665
Reviewed by Tim Horton.
Source/WebCore:
Optionally (based on Setting) create nodes in the scrolling tree for frames which
contain async-scrollable content. This will be used on iOS/WK2 to support accelerated
overflow-scroll in iframes. The setting allows for testing on OS X.
The change breaks an assumption in ScrollingCoordinator/AsyncScrollingCoordinator
that we're always dealing with the main frame, and changes logic in RenderLayerCompositor
so that we can connect the scrolling tree across frame boundaries. RenderLayerCompositor
maintains a m_subframeScrollLayersNeedReattach flag that gets set whenever we add or remove
scroll-coordinated layers in the current frame. When set, after updating compositing
layers we walk child frames, and, if they have scrolling nodes, re-attach them to the
scrolling tree (which will find the new ancestor node).
Tests: platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed.html
platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame.html
- WebCore.exp.in:
- page/FrameView.cpp:
(WebCore::FrameView::scrollLayerID): Use the new "for role" way of getting the node ID.
- page/Settings.cpp:
- page/Settings.in: Add scrollingTreeIncludesFrames.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::frameViewNonFastScrollableRegionChanged): Only set
the region for the main frame.
(WebCore::AsyncScrollingCoordinator::frameViewForScrollingNode): updateScrollPositionAfterAsyncScroll()
needs to know which FrameView a given nodeID is hosted in; doing a walk of the frame tree for
non-main frames seems to be the safest way.
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
(WebCore::AsyncScrollingCoordinator::syncChildPositions):
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView): Consult the new setting.
(WebCore::ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewFixedObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinator::synchronousScrollingReasons):
(WebCore::ScrollingCoordinator::updateSynchronousScrollingReasons):
(WebCore::ScrollingCoordinator::setForceSynchronousScrollLayerPositionUpdates):
(WebCore::ScrollingCoordinator::shouldUpdateScrollLayerPositionSynchronously):
(WebCore::ScrollingCoordinator::replaySessionStateDidChange):
(WebCore::ScrollingCoordinator::synchronousScrollingReasonsAsText):
- page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::shouldUpdateScrollLayerPositionSynchronously): Deleted.
- rendering/RenderLayerBacking.h: Rather than separate functions to get the two scrolling
node IDs, having one scrollingNodeIDForRole() makes calling code cleaner.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::RenderLayerCompositor):
(WebCore::RenderLayerCompositor::updateCompositingLayers): call reattachSubframeScrollLayers()
after a compositing tree update.
(WebCore::RenderLayerCompositor::isAsyncScrollableStickyLayer): Deals with the various configurations
in which we can do async scrolling of sticky elements.
(WebCore::RenderLayerCompositor::isViewportConstrainedFixedOrStickyLayer):
(WebCore::useCoordinatedScrollingForLayer):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
(WebCore::RenderLayerCompositor::requiresCompositingForScrolling): Moved.
(WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): This is a bug fix;
we only need to notify child frames, not all descendant frames.
(WebCore::RenderLayerCompositor::updateScrollCoordinatedStatus):
(WebCore::RenderLayerCompositor::removeFromScrollCoordinatedLayers):
(WebCore::enclosingScrollingNodeID):
(WebCore::scrollCoordinatedAncestorInParentOfFrame):
(WebCore::RenderLayerCompositor::reattachSubframeScrollLayers):
(WebCore::RenderLayerCompositor::attachScrollingNode):
(WebCore::RenderLayerCompositor::updateScrollCoordinationForThisFrame):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers):
(WebCore::RenderLayerCompositor::willRemoveScrollingLayer):
(WebCore::isStickyInAcceleratedScrollingLayerOrViewport): Deleted.
(WebCore::isViewportConstrainedFixedOrStickyLayer): Deleted.
(WebCore::isMainFrameScrollingOrOverflowScrolling): Deleted.
(WebCore::nearestScrollCoordinatedAncestor): Deleted.
- rendering/RenderLayerCompositor.h:
- rendering/RenderView.cpp:
(WebCore::RenderView::setSelection): Added comment.
- testing/InternalSettings.cpp:
(WebCore::InternalSettings::setScrollingTreeIncludesFrames):
- testing/InternalSettings.h: Removed some useless parameter names.
- testing/InternalSettings.idl: Added setScrollingTreeIncludesFrames() setting.
Source/WebKit2:
Override coordinatesScrollingForFrameView() to always return true for composited
frames, for iOS WK2 (eventually this class will have to be specialized for iOS and OS X).
- WebProcess/Scrolling/RemoteScrollingCoordinator.h:
- WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
(WebKit::RemoteScrollingCoordinator::coordinatesScrollingForFrameView):
LayoutTests:
Tests that dump the scrolling tree with subframes.
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed.html: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame.html: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/resources/doc-with-sticky.html: Added.
- 5:26 PM Changeset in webkit [169732] by
-
- 4 edits in trunk/Source/WebKit2
Give callbacks real status codes
https://bugs.webkit.org/show_bug.cgi?id=133668
Reviewed by Dan Bernstein.
This makes it possible to know whether a callback was invalidated due to the webpage being closed,
or whether it was due the a web process crash.
- UIProcess/GenericCallback.h:
(WebKit::GenericCallback::create):
(WebKit::GenericCallback::performCallbackWithReturnValue):
(WebKit::GenericCallback::invalidate):
(WebKit::invalidateCallbackMap):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
- UIProcess/WebPageProxy.h:
- 5:22 PM Changeset in webkit [169731] by
-
- 6 edits in trunk/Source
Improve CSSPrimitiveValue::customCSSText for ARMv7
https://bugs.webkit.org/show_bug.cgi?id=133597
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-09
Reviewed by Andreas Kling.
Source/WebCore:
On imgur, some script is updating some layout on timers and on scroll.
It looks like CSSPrimitiveValue::customCSSText() is a little constrained
by the instruction cache on ARMv7. This patch improve the situation a bit.
First, the creation of the string itself is changed to go from two allocation to one.
Previously, we would allocate a StringBuffer and adopt it. Now we allocate a StringImpl
directly with the inline buffer.
The second issue is that the compiler was generating a real copy constructor for every
assignment of the "text" variable (likely because the variable span is so large).
This was solved by moving the string creating into a separate function (to fix the span)
and being careful with passing PassRef<StringImpl> around.
Then there was the problem that the compiler was a little too aggressive with inlining
which caused each "case" to repeat the same prologue and epilogue before formatValue().
This was solved by adding formatNumberValue() with NEVER_INLINE to have the prologue/epilogue
in a single place.
On older device, that's about 3% improvement on style access. On modern ARM64/x86_64
there is no noticeable difference.
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue):
(WebCore::CSSPrimitiveValue::formatNumberForcustomCSSText):
(WebCore::CSSPrimitiveValue::customCSSText):
(WebCore::formatNumber): Deleted.
- css/CSSPrimitiveValue.h:
Source/WTF:
- wtf/RefPtr.h:
(WTF::RefPtr<T>::RefPtr):
- wtf/text/WTFString.h:
(WTF::String::String):
- 4:32 PM Changeset in webkit [169730] by
-
- 2 edits in trunk/Source/WebCore
[iOS WebGL] Fix EXT_shader_texture_lod.
https://bugs.webkit.org/show_bug.cgi?id=133633
Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-09
Reviewed by Brady Eidson.
Covered by the Khronos test (and in LayoutTests):
conformance/extensions/ext-shader-texture-lod.html
- html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
Added shader texture lod name to match value from glGetString(GL_EXTENSIONS) on iOS.
- 4:29 PM Changeset in webkit [169729] by
-
- 2 edits in trunk/Source/WebCore
Document::updateStyleIfNeededForNode can get very expensive
https://bugs.webkit.org/show_bug.cgi?id=133599
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-09
Reviewed by Andreas Kling.
When pages are querying their style, we first run through
Document::updateStyleIfNeededForNode() to find if that particular node needs style recalc.
The problem was that updateStyleIfNeededForNode() could get really expensive. For each node,
it needs to check the whole parent chain to find if any needs style recalc.
When web pages get a bunch of nodes and querying their style, we ended up going over a lot
of nodes just to find there is nothing to do.
This patch adds two tweaks to reduce the problem:
First, before querying nodeOrItsAncestorNeedsStyleRecalc() we check if the Document is dirty at all.
The other part is making nodeOrItsAncestorNeedsStyleRecalc() faster by removing useless elements check.
- dom/Document.cpp:
(WebCore::nodeOrItsAncestorNeedsStyleRecalc):
(WebCore::Document::updateStyleIfNeededForNode):
- 4:20 PM Changeset in webkit [169728] by
-
- 4 edits in trunk/Source
iOS WebKit: Crash in charactersAroundPosition.
https://bugs.webkit.org/show_bug.cgi?id=133659
<rdar://problem/17220870>
Reviewed by Benjamin Poulain.
Source/WebCore:
Ensure that we stay within the vector boundaries
when returning the characters around the position.
- editing/VisibleUnits.cpp:
(WebCore::charactersAroundPosition):
Source/WebKit2:
We only need to compute charactersAroundPosition when we are in
editable content.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):
- 4:12 PM Changeset in webkit [169727] by
-
- 8 edits2 moves in trunk/Source/WebKit2
[iOS] Expose _WKWebViewPrintFormatter and -_webView:printFrame: as SPI
https://bugs.webkit.org/show_bug.cgi?id=133600
Reviewed by David Kilzer.
Expose -_webView:printFrame: in WKUIDelegatePrivate so that clients can implement support for window.print().
Since window.print() can be called from a subframe, expose _WKWebViewPrintFormatter (renamed from
WKWebViewPrintFormatter to reflect its new SPI status) as SPI and add a frameToPrint property.
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Forward-declared _WKFrameHandle and declared -_webView:printFrame:.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _webViewPrintFormatter]): Added to get a _WKWebViewPrintFormatter.
(-[WKWebView _printFormatterClass]): Updated the class name to _WKWebViewPrintFormatter.
(-[WKWebView _computePageCountAndStartDrawingToPDFForFrame:printInfo:WebKit::firstPage:computedTotalScaleFactor:]):
Added a frame argument. If frame is nil, print the main frame.
(-[WKWebView _computePageCountAndStartDrawingToPDFWithPrintInfo:WebKit::firstPage:computedTotalScaleFactor:]): Deleted.
- UIProcess/API/Cocoa/WKWebViewInternal.h: Forward-declared _WKFrameHandle; removed an unneccessary
forward-declaration of WKWebViewPrintFormatter.
- UIProcess/API/Cocoa/WKWebViewPrivate.h: Added a _webViewPrintFormatter property.
- UIProcess/Cocoa/UIDelegate.h:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::printFrame): Called -_webView:printFrame:.
- UIProcess/_WKWebViewPrintFormatter.h: Renamed from Source/WebKit2/UIProcess/WKWebViewPrintFormatter.h.
- UIProcess/_WKWebViewPrintFormatter.mm: Renamed from Source/WebKit2/UIProcess/WKWebViewPrintFormatter.mm.
- WebKit2.xcodeproj/project.pbxproj:
- 3:59 PM Changeset in webkit [169726] by
-
- 2 edits in trunk/Source/WebCore
Properly reset UStringSearch object in SearchBuffer constructor.
https://bugs.webkit.org/show_bug.cgi?id=133662
<rdar://problem/17240136>
Reviewed by Tim Horton.
- editing/TextIterator.cpp: (WebCore::SearchBuffer::~SearchBuffer):
- 3:56 PM Changeset in webkit [169725] by
-
- 5 edits2 adds in trunk
Automatic text track selection can select more than one track
https://bugs.webkit.org/show_bug.cgi?id=133590
Reviewed by Brent Fulgham.
Source/WebCore:
Test: media/video-trackmenu-selection.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::configureTextTrack): Consider the currently selected
track, if any.
- page/CaptionUserPreferencesMediaAF.cpp:
(WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu): Drive-by change
to make sure no non-visible text tracks are included in the track menu.
LayoutTests:
- media/video-trackmenu-selection-expected.txt: Added.
- media/video-trackmenu-selection.html: Added.
- platform/efl/TestExpectations: New test skipped.
- 3:30 PM Changeset in webkit [169724] by
-
- 4 edits in trunk/Source/WebKit2
Flash video controls hit-test incorrectly after changing topContentInset
https://bugs.webkit.org/show_bug.cgi?id=133658
-and corresponding-
<rdar://problem/16978590>
Reviewed by Anders Carlsson.
When the topContent changes, the PluginView needs to be informed.
New function PluginView::topContentInsetDidChange() calls viewGeometryDidChange().
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::topContentInsetDidChange):
- WebProcess/Plugins/PluginView.h:
Call topContentInsetDidChange() after setting an inset only if it is a new inset.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setTopContentInset):
- 3:27 PM Changeset in webkit [169723] by
-
- 2 edits in tags/Safari-538.39.2/Source/WebKit2
Merged r169663.
- 3:21 PM Changeset in webkit [169722] by
-
- 5 edits in tags/Safari-538.39.2/Source
Versioning.
- 3:19 PM Changeset in webkit [169721] by
-
- 1 copy in tags/Safari-538.39.2
New tag.
- 2:48 PM Changeset in webkit [169720] by
-
- 2 edits in trunk/Source/WebCore
[Mac] Hang when painting media before compositing mode activated
https://bugs.webkit.org/show_bug.cgi?id=133655
Reviewed by Eric Carlson.
When asked to paint(), MediaPlayerPrivateAVFoundationObjC should not create an image generator
or a video output. These operations are synchronous, and will block the drawing thread and cause
a spin. paint() as opposed to paintImageInContext() is only called when painting the layer tree
and MediaPlayerPrivateAVFoundationObjC will paint by creating a AVPlayerLayer, not by painting
frames directly into the tree.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paint):
- 2:45 PM Changeset in webkit [169719] by
-
- 4 edits in trunk/Source/WebKit2
Another attempt to fix the EFL and GTK builds after <http://trac.webkit.org/changeset/169711>
(https://bugs.webkit.org/show_bug.cgi?id=133657)
Substitute WKErrorRef.h for WKError.h.
- UIProcess/API/efl/ewk_error.cpp:
- WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
- WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
- 2:32 PM Changeset in webkit [169718] by
-
- 2 edits in trunk/Source/WebCore
[Mac][MSE] Exception thrown from ~MediaPlayerPrivateMediaSourceAVFObjC().
https://bugs.webkit.org/show_bug.cgi?id=133656
Reviewed by Eric Carlson.
AVSampleBufferRenderSynchronizer can't handle being passed a NULL observer, so only attempt
to remove the time jumped or duration observer if one was actually created.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC):
- 2:23 PM Changeset in webkit [169717] by
-
- 2 edits in trunk/Source/WebKit2
Attempt to fix the EFL and GTK builds after <http://trac.webkit.org/changeset/169711>
(https://bugs.webkit.org/show_bug.cgi?id=133657)
Rename Shared/API/c/WKError.cpp to Shared/API/c/WKErrorRef.cpp.
- CMakeLists.txt:
- 2:19 PM Changeset in webkit [169716] by
-
- 2 edits in trunk/Source/WebCore
Subpixel rendering: Pixelsnapping empty rounded rect results in NaN radii width/height.
https://bugs.webkit.org/show_bug.cgi?id=133654
Reviewed by Simon Fraser.
Empty rounded rects don't need snapping.
Not testable.
- platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::pixelSnappedRoundedRectForPainting):
- 2:18 PM Changeset in webkit [169715] by
-
- 13 edits2 adds in trunk
REGRESSION: missing underline under CJK text
https://bugs.webkit.org/show_bug.cgi?id=128145
Reviewed by Darin Adler.
Source/WebCore:
This patch refactors the GlyphToPathTranslator which is used to find intersections of
glyphs and underlines. It was modified to allow for querying these pieces of
information:
1) The extents of the glyph. This can be used to make the underlines skip an entire
glyph, wholesale
2) What kind of skipping behavior should be used
3) The Path which represents the glyph
There are three skipping behaviors:
1) (SkipDescenders) The previous behavior
2) (SkipGlyph) Make the underline skip over the entire glyph, using the extents() function
3) (DrawOverGlyph) Make the underline plow through the glyph, ignoring any descenders
Calculating which underlining behavior to use depends on what the base codepoint that
originated that glyph is. This means that we have to map from glyphs to characters,
something which is nontrivial to do. In order to solve this problem, this patch adds
an optional vector to GlyphBuffer which represents the location in the original string
from which a particular glyph originated. Then, when our WidthIterator code adds
glyphs to the GlyphBuffer, we can include the extra information about where we are
in the input string. Once this data is available, the GlyphPathTranslator can look up
the base codepoint from which this glyph originates, and can run ICU functions on that
codepoint.
We can use the ICU ublock_getCode() function to find which Unicode block a particular
codepoint comes from. If the codepoint comes from a CJK block, we will use
DrawOverGlyph; otherwise, we will use SkipDescenders.
Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-cjk.html
- platform/graphics/Font.cpp:
(WebCore::sharedUnderlineType): Look up the base codepoint from which this glyph
originates, call ublock_getCode to get its Unicode block, then return
a GlyphUnderlineType accordingly. This code is shared between SVG and non-SVG.
- platform/graphics/Font.h: New virtual functions in GlyphToPathTranslator, as well as
function signatures for the above two functions.
- platform/graphics/GlyphBuffer.h: Add an optional instance member for the location
from within the original string from which a particular glyph originates.
(WebCore::GlyphBuffer::clear): Updated for new member.
(WebCore::GlyphBuffer::add): Ditto.
(WebCore::GlyphBuffer::saveOffsetsInString): Opt-in to using the new variable
(WebCore::GlyphBuffer::offsetInString): New variable accessor.
- platform/graphics/TextRun.h: SVG needs the TextRun to use sharedUnderlineType.
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advanceInternal): Use GlyphBuffer's new variable (if present).
- platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::advance): Use GlyphBuffer's new variable (if present).
- platform/graphics/mac/FontMac.mm: Implement new GlyphToPathTranslator functions.
(WebCore::MacGlyphToPathTranslator::path):
(WebCore::MacGlyphToPathTranslator::extents):
(WebCore::MacGlyphToPathTranslator::underlineType): Calls sharedUnderlineType().
(WebCore::MacGlyphToPathTranslator::moveToNextValidGlyph):
(WebCore::MacGlyphToPathTranslator::increment):
(WebCore::Font::dashesForIntersectionsWithRect): Ask the translator what kind of underline
behavior should be used. React accordingly.
(WebCore::MacGlyphToPathTranslator::nextPath): Deleted.
(WebCore::MacGlyphToPathTranslator::incrementIndex): Deleted.
- platform/graphics/win/UniscribeController.cpp:
(WebCore::UniscribeController::shapeAndPlaceItem): Update to new signature of GlyphBuffer::add()
- rendering/svg/SVGTextRunRenderingContext.cpp: Implement new GlyphToPathTranslator functions.
(WebCore::SVGGlyphToPathTranslator::SVGGlyphToPathTranslator):
(WebCore::SVGGlyphToPathTranslator::getCurrentTransform):
(WebCore::SVGGlyphToPathTranslator::path):
(WebCore::SVGGlyphToPathTranslator::extents):
(WebCore::MacGlyphToPathTranslator::underlineType): Calls sharedUnderlineType().
(WebCore::SVGGlyphToPathTranslator::moveToNextValidGlyph):
(WebCore::SVGGlyphToPathTranslator::increment):
(WebCore::SVGTextRunRenderingContext::createGlyphToPathTranslator):
(WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
(WebCore::SVGGlyphToPathTranslator::nextPath): Deleted.
(WebCore::SVGGlyphToPathTranslator::incrementIndex): Deleted.
- rendering/svg/SVGTextRunRenderingContext.h: SVG needs the TextRun to use sharedUnderlineType.
LayoutTests:
This test makes sure that underlines under CJK text don't skip over descenders.
- fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-cjk-expected.html: Added.
- fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-cjk.html: Added.
- 2:09 PM Changeset in webkit [169714] by
-
- 4 edits in trunk/Source/WebCore
[iOS WebGL] Implement OES_vertex_array_object for iOS.
https://bugs.webkit.org/show_bug.cgi?id=133629
Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-09
Reviewed by Brady Eidson.
Covered by the Khronos test (and in LayoutTests):
conformance/extensions/oes-vertex-array-object.html
- platform/graphics/ios/GraphicsContext3DIOS.h:
Added OpenGL vertex array function renaming for iOS adding the OES suffix.
- platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::createVertexArrayOES):
(WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
(WebCore::Extensions3DOpenGL::isVertexArrayOES):
(WebCore::Extensions3DOpenGL::bindVertexArrayOES):
Added isVertexArrayObjectSupported and support for iOS.
(WebCore::Extensions3DOpenGL::supportsExtension):
Added iOS name for GL_OES_vertex_array_object extension.
- platform/graphics/opengl/Extensions3DOpenGL.h:
Added isVertexArrayObjectSupported for iOS.
- 2:03 PM Changeset in webkit [169713] by
-
- 4 edits in trunk/Source/WebCore
[Mac] caption size is not update immediately when system preferences change
https://bugs.webkit.org/show_bug.cgi?id=133598
Reviewed by Brent Fulgham.
- Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::updateCaptionDisplaySizes): New.
- Modules/mediacontrols/MediaControlsHost.h:
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::captionPreferencesChanged): Tell the controls host to update sizes.
- 1:58 PM Changeset in webkit [169712] by
-
- 2 edits in trunk/Source/WebKit2
Address review feedback.
- UIProcess/API/Cocoa/WKWebView.h:
- 1:53 PM Changeset in webkit [169711] by
-
- 8 edits2 copies2 moves1 add in trunk/Source/WebKit2
Add a WKError.h header and rename the existing WKError.h to WKErrorRef.h
https://bugs.webkit.org/show_bug.cgi?id=133657
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/WebKit.h:
- Shared/API/c/WKErrorRef.cpp: Renamed from Source/WebKit2/Shared/API/c/WKError.cpp.
(WKErrorGetTypeID):
(WKErrorCopyWKErrorDomain):
(WKErrorCopyDomain):
(WKErrorGetErrorCode):
(WKErrorCopyFailingURL):
(WKErrorCopyLocalizedDescription):
- Shared/API/c/WKErrorRef.h: Renamed from Source/WebKit2/Shared/API/c/WKError.h.
- UIProcess/API/C/WKPage.h:
- UIProcess/API/C/WKPageLoaderClient.h:
- UIProcess/API/C/WebKit2_C.h:
- UIProcess/API/Cocoa/WKError.h: Copied from Source/WebKit2/Shared/API/Cocoa/WebKit.h.
- UIProcess/API/Cocoa/WKError.mm: Copied from Source/WebKit2/Shared/API/Cocoa/WebKit.h.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
- 1:39 PM Changeset in webkit [169710] by
-
- 3 edits3 adds in trunk
[iOS] Amazon app: Cannot interact with product page after tapping on product image
https://bugs.webkit.org/show_bug.cgi?id=133559
<rdar://problem/16332749>
Reviewed by Oliver Hunt.
Source/WebCore:
As a workaround for issues in the Amazon app, mark the attribute navigator.geolocation as
replaceable so that we don't throw a JavaScript type error when assigning to an instance
attribute that shadows it. At the time of writing the first such assignment to is ignored.
See <https://bugs.webkit.org/show_bug.cgi?id=133648> for more details.
When loading a product page in the Amazon app it overwrites the readonly property geolocation
on an object that extends the Navigator object. In strict mode, this operation is not honored
and is treated as a JavaScript type error, which stops JavaScript execution. Therefore, the
product page does not behave as intended. In contrast, this operation would not be honored in
non-strict mode and would not be treated as a JavaScript type error.
Test: js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw.html
- Modules/geolocation/NavigatorGeolocation.idl:
LayoutTests:
Add a test to ensure that assigning to an instance attribute in strict mode that shadows
navigator.geolocation doesn't cause a JavaScript type error.
- js/dom/script-tests/shadow-navigator-geolocation-in-strict-mode-does-not-throw.js: Added.
(createObjectWithPrototype.F):
(createObjectWithPrototype):
- js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw-expected.txt: Added.
- js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw.html: Added.
- 1:18 PM Changeset in webkit [169709] by
-
- 2 edits in trunk/Source/WebCore
HTML*ListElement wrappers have custom getOwnPropertySlot()s for no good reason.
<https://webkit.org/b/133653>
The JavaScript bindings generator was a bit overzealous in forcing every
interface with "List" in the name to have its attributes on the instance.
This caused some elements (HTMLUListElement, etc.) to automatically opt out
of eager prototype attribute reification.
Reviewed by Mark Hahnenberg.
- bindings/scripts/CodeGeneratorJS.pm:
(InterfaceRequiresAttributesOnInstance):
- 1:10 PM Changeset in webkit [169708] by
-
- 2 edits in trunk/Source/WebCore
ASSERT(!m_inRemovedLastRefFunction) in Element::addShadowRoot while destroying a document
https://bugs.webkit.org/show_bug.cgi?id=133450
Reviewed by Eric Carlson.
ensureUserAgentShadowRoot() is being called when a media element is removed from its document
in HTMLMediaElement::removedFrom() because Node::removedFrom() has not yet run and removed the
InDocument flag from the node. Rather than calling configureMediaControls() at this point
just expilictly remove the media controls if present.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- 12:30 PM Changeset in webkit [169707] by
-
- 35 edits in trunk/Source/WebCore
Rebaseline bindings tests after r169703
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::JSTestActiveDOMObjectPrototype::finishCreation):
(WebCore::JSTestActiveDOMObjectPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::JSTestCustomNamedGetterPrototype::finishCreation):
(WebCore::JSTestCustomNamedGetterPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::JSTestEventConstructorPrototype::finishCreation):
(WebCore::JSTestEventConstructorPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestEventConstructor::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestEventConstructor.h:
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTargetPrototype::finishCreation):
(WebCore::JSTestEventTargetPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestEventTarget.h:
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::JSTestExceptionPrototype::finishCreation):
(WebCore::JSTestExceptionPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestException.h:
- bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::JSTestGenerateIsReachablePrototype::finishCreation):
(WebCore::JSTestGenerateIsReachablePrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestGenerateIsReachable::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfacePrototype::finishCreation):
(WebCore::JSTestInterfacePrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestInterface.h:
- bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListenerPrototype::finishCreation):
(WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
- bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructorPrototype::finishCreation):
(WebCore::JSTestNamedConstructorPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestNamedConstructor::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestNamedConstructor.h:
- bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::JSTestNodePrototype::finishCreation):
(WebCore::JSTestNodePrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestNode::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestNode.h:
- bindings/scripts/test/JS/JSTestNondeterministic.cpp:
(WebCore::JSTestNondeterministicPrototype::finishCreation):
(WebCore::JSTestNondeterministicPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestNondeterministic::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestNondeterministic.h:
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjPrototype::finishCreation):
(WebCore::JSTestObjPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestObj.h:
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::JSTestOverloadedConstructorsPrototype::finishCreation):
(WebCore::JSTestOverloadedConstructorsPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestOverloadedConstructors::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfacePrototype::finishCreation):
(WebCore::JSTestSerializedScriptValueInterfacePrototype::getOwnPropertySlot): Deleted.
(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefsPrototype::finishCreation):
(WebCore::JSTestTypedefsPrototype::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSTestTypedefs.h:
- bindings/scripts/test/JS/JSattribute.cpp:
(WebCore::JSattributePrototype::finishCreation):
(WebCore::JSattributePrototype::getOwnPropertySlot): Deleted.
(WebCore::JSattribute::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSattribute.h:
- bindings/scripts/test/JS/JSreadonly.cpp:
(WebCore::JSreadonlyPrototype::finishCreation):
(WebCore::JSreadonlyPrototype::getOwnPropertySlot): Deleted.
(WebCore::JSreadonly::getOwnPropertySlot): Deleted.
- bindings/scripts/test/JS/JSreadonly.h:
- 12:06 PM Changeset in webkit [169706] by
-
- 2 edits in trunk/Source/WebCore
Group the methods in InternalSettings.idl
https://bugs.webkit.org/show_bug.cgi?id=133652
Reviewed by Tim Horton.
Group methods by topic.
- testing/InternalSettings.idl:
- 12:02 PM Changeset in webkit [169705] by
-
- 2 edits in trunk/Source/JavaScriptCore
Build fix after r169703
- JavaScriptCore.xcodeproj/project.pbxproj:
- 11:57 AM Changeset in webkit [169704] by
-
- 2 edits in trunk/Tools
Disable button animations in regression tests
https://bugs.webkit.org/show_bug.cgi?id=133647
<rdar://problem/16677530>
Reviewed by Tim Horton.
- WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
(WTR::InjectedBundle::platformInitialize):
- 11:53 AM Changeset in webkit [169703] by
-
- 36 edits2 adds in trunk
Eagerly reify DOM prototype attributes
https://bugs.webkit.org/show_bug.cgi?id=133558
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
This allows us to get rid of a lot of the additional overhead of pushing DOM attributes up into the prototype.
By eagerly reifying the custom getters and setters into the actual JSObject we avoid having to override
getOwnPropertySlot for all of the DOM prototypes, which is a lot of the overhead of doing property lookups on
DOM wrappers.
- CMakeLists.txt:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
- JavaScriptCore.xcodeproj/project.pbxproj:
- llint/LLIntData.cpp:
(JSC::LLInt::Data::performAssertions):
- llint/LowLevelInterpreter.asm:
- runtime/BatchedTransitionOptimizer.h:
(JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):
- runtime/CustomGetterSetter.cpp: Added.
(JSC::callCustomSetter):
- runtime/CustomGetterSetter.h: Added.
(JSC::CustomGetterSetter::create):
(JSC::CustomGetterSetter::getter):
(JSC::CustomGetterSetter::setter):
(JSC::CustomGetterSetter::createStructure):
(JSC::CustomGetterSetter::CustomGetterSetter):
- runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitive):
- runtime/JSCJSValue.h:
- runtime/JSCJSValueInlines.h:
(JSC::JSValue::isCustomGetterSetter):
- runtime/JSCell.h:
- runtime/JSCellInlines.h:
(JSC::JSCell::isCustomGetterSetter):
(JSC::JSCell::canUseFastGetOwnProperty):
- runtime/JSFunction.cpp:
(JSC::JSFunction::isHostOrBuiltinFunction): Deleted.
(JSC::JSFunction::isBuiltinFunction): Deleted.
- runtime/JSFunction.h:
- runtime/JSFunctionInlines.h: Inlined some random functions that appeared hot during profiling.
(JSC::JSFunction::isBuiltinFunction):
(JSC::JSFunction::isHostOrBuiltinFunction):
- runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::putDirectCustomAccessor):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::JSObject::fillCustomGetterPropertySlot):
(JSC::JSObject::getOwnPropertySlotSlow): Deleted.
- runtime/JSObject.h:
(JSC::JSObject::hasCustomGetterSetterProperties):
(JSC::JSObject::convertToDictionary):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::getOwnPropertySlotSlow): Inlined because it looked hot during profiling.
(JSC::JSObject::putOwnDataProperty):
(JSC::JSObject::putDirect):
(JSC::JSObject::putDirectWithoutTransition):
- runtime/JSType.h:
- runtime/Lookup.h:
(JSC::reifyStaticProperties):
- runtime/PropertyDescriptor.h:
(JSC::PropertyDescriptor::PropertyDescriptor):
- runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::nextOutOfLineStorageCapacity): Deleted.
(JSC::Structure::suggestedNewOutOfLineStorageCapacity): Deleted.
(JSC::Structure::get): Deleted.
- runtime/Structure.h:
(JSC::Structure::hasCustomGetterSetterProperties):
(JSC::Structure::setHasCustomGetterSetterProperties):
- runtime/StructureInlines.h:
(JSC::Structure::get): Inlined due to hotness.
(JSC::nextOutOfLineStorageCapacity): Inlined due to hotness.
(JSC::Structure::suggestedNewOutOfLineStorageCapacity): Inlined due to hotness.
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
- runtime/WriteBarrier.h:
(JSC::WriteBarrierBase<Unknown>::isCustomGetterSetter):
Source/WebCore:
No new tests.
This allows us to get rid of a lot of the additional overhead of pushing DOM attributes up into the prototype.
By eagerly reifying the custom getters and setters into the actual JSObject we avoid having to override
getOwnPropertySlot for all of the DOM prototypes, which is a lot of the overhead of doing property lookups on
DOM wrappers.
- bindings/scripts/CodeGeneratorJS.pm:
(prototypeHashTableAccessor): Changed to pass along the VM.
(AttributeShouldBeOnInstanceForCompatibility): We were being overly conservative in regard to touch events.
This caused us to store the touch event handler getters and setters on the JSElement instance, which caused
us to override getOwnPropertySlot for every JSElement subclass.
(InstanceOverridesGetOwnPropertySlot): This was being overly paranoid about generate a getOwnPropertySlot if
there was going to be a "constructor" property, even though we handled this in another place already.
(GenerateHeader): Generate a finishCreation for prototypes unless it's the JSDOMWindow. We can't correctly
handle the DOMWindow in this version of the patch because reifying the static properties requires a global object,
which hasn't been created yet when the prototype for the window object is being created.
(GenerateImplementation): Generate the finishCreation calls to reifyStaticProperties.
LayoutTests:
Updating a test expectation after this fix.
- js/dom/constructor-attributes-expected.txt:
- 11:49 AM Changeset in webkit [169702] by
-
- 4 edits in trunk/LayoutTests
Unreviewed, rolling out r169693.
https://bugs.webkit.org/show_bug.cgi?id=133651
This was wrong, just wrong (Requested by ap on #webkit).
Reverted changeset:
"Rebaseline some tests after r169681."
http://trac.webkit.org/changeset/169693
- 11:43 AM Changeset in webkit [169701] by
-
- 2 edits in trunk/Source/WebKit2
Use different AppKit API for all services menus
<rdar://problem/16874403> and https://bugs.webkit.org/show_bug.cgi?id=133649
Reviewed by Tim Horton.
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
- 11:43 AM Changeset in webkit [169700] by
-
- 4 edits102 moves4 adds in trunk
Move scrolling-related tests to tiled-drawing/scrolling subdirectory, and minor cleanup
https://bugs.webkit.org/show_bug.cgi?id=133650
Reviewed by Tim Horton.
Tools:
No point checking for a Windows-style path in Cocoa code.
- WebKitTestRunner/TestInvocation.cpp:
(WTR::shouldUseThreadedScrolling):
LayoutTests:
Moved files, fixed up relative paths to js-test-pre.js/js-test-post.js and unskipped a couple of fixed/sticky tests.
- platform/mac-wk2/tiled-drawing/scrolling/clamp-out-of-bounds-scrolls-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/clamp-out-of-bounds-scrolls.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-with-handler-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-with-handler.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html.
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-composited-html-expected.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html-expected.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-composited-html.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-negative-z-index-fixed-expected.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed-expected.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-negative-z-index-fixed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-no-image.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-removal-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-removal-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-background-removal.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-removal.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-html-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-html-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-html.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-transformed-html-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-transformed-html-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-transformed-html.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-zoomed-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-zoomed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background-zoomed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-body-background.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-html-background.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.png: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.png.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/absolute-inside-fixed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/absolute-inside-fixed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/absolute-inside-out-of-view-fixed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/absolute-inside-out-of-view-fixed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-in-overflow-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-in-overflow.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-position-out-of-view-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-position-out-of-view-negative-zindex-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-position-out-of-view-negative-zindex.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-position-out-of-view.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars-with-header-and-footer-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars-with-header-and-footer-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars-with-header-and-footer.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars-with-header-and-footer.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars-zoomed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars-zoomed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars-zoomed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/four-bars.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/four-bars.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/negative-scroll-offset-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/negative-scroll-offset-in-view-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/negative-scroll-offset-in-view.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/negative-scroll-offset.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/nested-fixed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/nested-fixed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/nested-fixed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/nested-fixed.html.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/percentage-inside-fixed-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/fixed/percentage-inside-fixed.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed.html.
- platform/mac-wk2/tiled-drawing/scrolling/null-parent-back-crash-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/null-parent-back-crash-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/null-parent-back-crash.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/null-parent-back-crash.html.
- platform/mac-wk2/tiled-drawing/scrolling/scrolling-tree-after-scroll-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/scrolling-tree-after-scroll.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll.html.
- platform/mac-wk2/tiled-drawing/scrolling/scrolling-tree-slow-scrolling-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/scrolling-tree-slow-scrolling.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling.html.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling-background-toggle-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling-background-toggle.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle.html.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling-hidden-background-toggle-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling-hidden-background-toggle.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle.html.
- platform/mac-wk2/tiled-drawing/scrolling/slow-scrolling.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/slow-scrolling.html.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/negative-scroll-offset-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/negative-scroll-offset.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset.html.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-horizontal-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-horizontal.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal.html.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-layers-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-layers-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-layers.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-layers.html.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-vertical-expected.txt: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-vertical-expected.txt.
- platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-vertical.html: Renamed from LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-vertical.html.
- platform/mac/TestExpectations:
- 11:43 AM Changeset in webkit [169699] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION (r169681): Three tests are broken
https://bugs.webkit.org/show_bug.cgi?id=133646
Reviewed by Tim Horton.
r169681 removed platformFocusRingMaxWidth() override, which returned either 0 or 9
on Mac. But the cross-platform default is 3, so this changed Mac behavior.
I'm not entirely sure why the cross-platform default is 3 (it was also added in r168397),
but restoring the override to return 0 fixes test cases.
While at it, also added final/override, and removed some functions that were only
needed by subclasses, which we now have none.
- rendering/RenderThemeMac.h:
(WebCore::RenderThemeMac::supportsControlTints): Deleted.
(WebCore::RenderThemeMac::scrollbarControlSizeForPart): Deleted.
(WebCore::RenderThemeMac::supportsSelectionForegroundColors): Deleted.
(WebCore::RenderThemeMac::supportsClosedCaptioning): Deleted.
(WebCore::RenderThemeMac::updateActiveState): Deleted.
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::platformFocusRingMaxWidth):
(WebCore::RenderThemeMac::setPopupButtonCellState):
(WebCore::RenderThemeMac::paintSliderThumb):
(WebCore::RenderThemeMac::setSearchCellState):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeMac::paintSearchFieldResultsButton):
- 11:17 AM Changeset in webkit [169698] by
-
- 2 edits in trunk/Source/WebKit2
Add WKWindowFeatures.h to the umbrella header.
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/WebKit.h:
- 11:16 AM Changeset in webkit [169697] by
-
- 2 edits in trunk/Source/WebCore
[CSS Shapes] Bound RasterShapeInterval size to int
https://bugs.webkit.org/show_bug.cgi?id=133576
Reviewed by Simon Fraser.
Everything in the code assumes that the interval size will always fit
in an int. However, to make sure there are no negatives, the
RasterShapeInterval constructor takes an unsigned. This clamps that
value to make sure we can't overflow an int later.
- rendering/shapes/RasterShape.h:
(WebCore::RasterShapeIntervals::RasterShapeIntervals):
- 11:09 AM Changeset in webkit [169696] by
-
- 10 edits in trunk/Source/WebKit2
Add -[WKWebView loadHTMLString:baseURL:]
https://bugs.webkit.org/show_bug.cgi?id=133645
<rdar://problem/17170649>
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView loadHTMLString:baseURL:]):
- UIProcess/Cocoa/NavigationState.h:
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::createLoadDataNavigation):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
- UIProcess/WebPageProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::loadString):
(WebKit::WebPage::loadData):
(WebKit::WebPage::loadHTMLString):
(WebKit::WebPage::loadAlternateHTMLString):
(WebKit::WebPage::loadPlainTextString):
(WebKit::WebPage::loadWebArchiveData):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 11:07 AM Changeset in webkit [169695] by
-
- 4 edits in trunk/Source/JavaScriptCore
Structure should initialize its previousID in its constructor.
<https://webkit.org/b/133606>
Reviewed by Mark Hahnenberg.
Currently, the Structure constructor that takes a previous structure will
initialize its previousID to point to the previous structure's previousID.
This is incorrect. However, the caller of the Structure::create() factory
method (which instantiated the Structure) will later call setPreviousID()
to set the previousID to the correct previous structure. This makes the
code confusing to read and more error prone in that the structure relies
on client code to fix its invalid previousID.
This patch fixes this by making the Structure constructor initialize
previousID correctly.
- runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::nonPropertyTransition):
- runtime/Structure.h:
- runtime/StructureInlines.h:
(JSC::Structure::create):
- 11:07 AM Changeset in webkit [169694] by
-
- 1 edit3 adds in trunk/LayoutTests
Add results for MathML tests added by https://bugs.webkit.org/show_bug.cgi?id=72828.
- platform/mac/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
- platform/mac/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
- platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
- 11:04 AM Changeset in webkit [169693] by
-
- 4 edits in trunk/LayoutTests
Rebaseline some tests after r169681.
- compositing/geometry/ancestor-overflow-change-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed-expected.txt:
- platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt:
- 10:49 AM Changeset in webkit [169692] by
-
- 22 edits in trunk
Fix more latched scrolling test flakiness and slowness
https://bugs.webkit.org/show_bug.cgi?id=133601
Reviewed by Brent Fulgham.
Source/WebKit2:
Latched scrolling tests were flakey for two reasons. First, the EventSender
wheel events were async from the web to the UI process, and the resulting
synthetic events also async from the UI to the web process. Make them sync
for testing.
Secondly, the timer-based scrolling tree commit could result in the scrolling
tree (specifically the frame node's notion of the scrollable area and content
size) not being updated before the scrolling thread starts getting wheel events.
Fix by having WebPage::wheelEventSyncForTesting() commit if necessary.
Finally remove all the now-unnecessary timeouts from the tests.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::wheelEventSyncForTesting):
Tools:
Latched scrolling tests were flakey for two reasons. First, the EventSender
wheel events were async from the web to the UI process, and the resulting
synthetic events also async from the UI to the web process. Make them sync
for testing.
Secondly, the timer-based scrolling tree commit could result in the scrolling
tree (specifically the frame node's notion of the scrollable area and content
size) not being updated before the scrolling thread starts getting wheel events.
Fix by having WebPage::wheelEventSyncForTesting() commit if necessary.
Finally remove all the now-unnecessary timeouts from the tests.
- WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
LayoutTests:
Latched scrolling tests were flakey for two reasons. First, the EventSender
wheel events were async from the web to the UI process, and the resulting
synthetic events also async from the UI to the web process. Make them sync
for testing.
Secondly, the timer-based scrolling tree commit could result in the scrolling
tree (specifically the frame node's notion of the scrollable area and content
size) not being updated before the scrolling thread starts getting wheel events.
Fix by having WebPage::wheelEventSyncForTesting() commit if necessary.
Finally remove all the now-unnecessary timeouts from the tests.
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:
- 10:01 AM Changeset in webkit [169691] by
-
- 2 edits4 adds in trunk/LayoutTests
[EFL] Change expectations for four layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133643
Unreviewed EFL gardening.
Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-09
- platform/efl-wk2/TestExpectations:
- platform/efl/fullscreen/video-controls-override-expected.txt: Added.
- platform/efl/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Added.
- 9:04 AM Changeset in webkit [169690] by
-
- 4 edits2 adds in trunk
[iOS] Gaps below and to the right of the video controls on devour.com
https://bugs.webkit.org/show_bug.cgi?id=133607
Reviewed by Simon Fraser.
Non-toplevel compositing layers are device pixel aligned. In order to render the content
to the same position as if the layer was not aligned, the graphics layer needs to be translated.
CALayer::bounds is set to compensate for the shifted layer. However, we should not change the layer's
size as that stretches the content and results in overlaps/gaps/extra fuzziness.
Source/WebCore:
Test: compositing/contents-scale/hidpi-compositing-layer-positioned-on-scaled-context.html
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateGeometry):
(WebCore::GraphicsLayerCA::computePixelAlignment): remove old epsilon adjustment code.
- platform/graphics/ca/GraphicsLayerCA.h:
LayoutTests:
- compositing/contents-scale/hidpi-compositing-layer-positioned-on-scaled-context-expected.html: Added.
- compositing/contents-scale/hidpi-compositing-layer-positioned-on-scaled-context.html: Added.
- 9:01 AM Changeset in webkit [169689] by
-
- 4 edits2 adds in trunk
[SVG] Subpixel rendering: Mask with transformed text does not render.
https://bugs.webkit.org/show_bug.cgi?id=133626
<rdar://problem/17123070>
Reviewed by Simon Fraser.
Replace IntRect::infiniteRect() with Layout::infiniteRect(). A transformed IntRect::infiniteRect()
overflows and produces invalid repaint rect. -also remove IntRect::infiniteRect() as no one calls
it anymore.
Source/WebCore:
Tests: svg/masking/mask-transformed-text-missing-expected.svg
svg/masking/mask-transformed-text-missing.svg
- platform/graphics/IntRect.h:
(WebCore::IntRect::infiniteRect): Deleted.
- rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::renderSubtreeToImageBuffer):
LayoutTests:
- svg/masking/mask-transformed-text-missing-expected.svg: Added.
- svg/masking/mask-transformed-text-missing.svg: Added.
- 6:13 AM WebKitGTK/2.4.x edited by
- (diff)
- 3:29 AM Changeset in webkit [169688] by
-
- 6 edits in trunk
[EFL] Add parameter to MiniBrowser to disable web security
https://bugs.webkit.org/show_bug.cgi?id=121095
Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-09
Reviewed by Gyuyoung Kim.
-w (--web-security) commandline allows to disable/enable web security (enabled by default).
The reason for this is to test and debug (using, for example, MiniBrowser) scripts accessing
resources from other domains (cross-domain requests) such as access map location on another server.
Another possibility is to launch in a webkit browser local file tests that will refer to the links
in the http website loaded in an iframe. It will not be possible without deactivation of web security.
Source/WebKit2:
- UIProcess/API/efl/ewk_settings.cpp:
(ewk_settings_web_security_enabled_set):
(ewk_settings_web_security_enabled_get):
- UIProcess/API/efl/ewk_settings.h:
- UIProcess/API/efl/tests/test_ewk2_settings.cpp:
(TEST_F):
Tools:
- MiniBrowser/efl/main.c:
(window_create):
(elm_main):
Jun 8, 2014:
- 11:58 PM Changeset in webkit [169687] by
-
- 4 edits2 adds2 deletes in trunk/LayoutTests
Share mac/editing/spelling/editing-word-with-marker-2.html with other platforms
https://bugs.webkit.org/show_bug.cgi?id=133544
Reviewed by Darin Adler.
Move mac/editing/spelling/editing-word-with-marker-2.html into
common editing/spelling to be available for other platforms.
Additionally, verify spelling markers asynchronously as the sync
path it's likely to be removed.
Add test case which tests spelling markers without any
selection change.
- editing/spelling/editing-word-with-marker-2-expected.txt:
Renamed from platform/mac/editing/spelling/editing-word-with-marker-2-expected.txt.
- editing/spelling/editing-word-with-marker-2.html:
Renamed from platform/mac/editing/spelling/editing-word-with-marker-2.html.
- platform/gtk/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/win/TestExpectations:
Mark editing/spelling/editing-word-with-marker-2.html as failing since those
platforms didn't turn on asynchronous spellchecking.
- 11:26 PM Changeset in webkit [169686] by
-
- 2 edits in trunk/LayoutTests
Unreviewed EFL gardening. Skip a test which generates "No bad fd found." error.
- platform/efl-wk1/TestExpectations:
- platform/efl/http/tests/misc/slow-loading-mask-expected.txt:
- 5:02 PM Changeset in webkit [169685] by
-
- 2 edits in trunk/Source/WebCore
[Mac] checkboxes and radio buttons animate incorrectly
https://bugs.webkit.org/show_bug.cgi?id=133619
<rdar://problem/16478676>
Reviewed by Sam Weinig.
As many people have noticed, the new checkboxes and radio
buttons jump around during their animation. To fix this
I've added yet another magic set of numbers to our
native form positioning - this time the placement
of the controls when rendering on the animated path.
This is quite annoying, since there doesn't appear
to be any pattern to the offsets (or margins) given
a control size, and this case also needed a sub-pixel
offset to display correctly on retina machines.
- platform/mac/ThemeMac.mm:
(WebCore::checkboxMargins): Add comment so I know what the values mean.
(WebCore::checkboxOffsets): Add the magic translation values for animated states.
(WebCore::radioMargins): Ditto.
(WebCore::radioOffsets):
(WebCore::paintToggleButton): Paint with these new offsets.
- 4:21 PM Changeset in webkit [169684] by
-
- 5 edits in trunk/Source/WebKit2
[Cocoa] WKScriptMessage should include the frame the message is from
<rdar://problem/17210226>
https://bugs.webkit.org/show_bug.cgi?id=133623
Reviewed by Dan Bernstein.
- UIProcess/API/Cocoa/WKScriptMessage.h:
Add WKFrameInfo property.
- UIProcess/API/Cocoa/WKScriptMessage.mm:
(-[WKScriptMessage _initWithBody:webView:frameInfo:name:]):
Add WKFrameInfo to the initializer.
(-[WKScriptMessage frameInfo]):
Implement frameInfo accessor.
- UIProcess/API/Cocoa/WKScriptMessageInternal.h:
Add WKFrameInfo to the initializer.
- UIProcess/API/Cocoa/WKUserContentController.mm:
Pass the WKFrameInfo to the WKScriptMessage initializer.
- 3:58 PM Changeset in webkit [169683] by
-
- 2 edits in trunk/Source/WebKit2
[Cococa] WKWindowFeatures.h is missing from WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=133622
Reviewed by Sam Weinig.
- WebKit2.xcodeproj/project.pbxproj: Promoted WKWindowFeatures.h to Public.
- 12:28 PM Changeset in webkit [169682] by
-
- 4 edits in trunk/Source/WebKit2
<rdar://problem/17208234> [Mac] Client-certificate authentication isn’t working when using the modern API
https://bugs.webkit.org/show_bug.cgi?id=133617
Reviewed by Sam Weinig.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<Credential>::encode): Encode certificate credentials on Mac as well.
(IPC::ArgumentCoder<Credential>::decode): Decode certificate credentials on Mac as well.
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::encode): Use OS X API for getting a persistent reference to a key.
(IPC::decode): Use OS X API for getting a key from a persistent reference.
- Shared/cf/ArgumentCodersCF.h: Make identity coding available on Mac as well.
Jun 7, 2014:
- 4:25 PM Changeset in webkit [169681] by
-
- 5 edits in trunk/Source/WebCore
Regression r168397 - Form layout is incorrect on OS X Yosemite
https://bugs.webkit.org/show_bug.cgi?id=133612
<rdar://problem/16850492>
<rdar://problem/17016914>
Reviewed by Anders Carlson.
Revision 168397 introduced a new animated style of form controls. Part of
it included extending the margins for the controls to take into account the
focus ring that animates in from a large radius to a small radius. This
caused two problems:
- the incorrect margins broke many layouts
- despite increased margins, there were still some areas that did not repaint correctly.
Restore the old margins and (temporarily) turn off focus ring animation.
Bad layout is much worse than a missing animation. Another benefit
of this is that we will use less memory.
- platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::drawFocusRingToContextAtTime): Pass in a time far far far in the future to
get the static rendering.
- platform/mac/ThemeMac.mm:
(WebCore::checkboxMargins): Restore correct margins.
(WebCore::radioMargins): Ditto.
(WebCore::drawCellFocusRing): New method that calls WKSI with a future time.
(WebCore::paintToggleButton): Call the new wrapper.
(WebCore::buttonMargins): Restore correct margins.
(WebCore::paintButton): Call the new wrapper.
- rendering/RenderThemeMac.h:
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintMenuList): Use a future time.
(WebCore::RenderThemeMac::platformFocusRingMaxWidth): Deleted. Use old outline value.
- 1:32 PM Changeset in webkit [169680] by
-
- 3 edits2 deletes in trunk/Source/WebKit2
Get rid of _WKScriptWorld
https://bugs.webkit.org/show_bug.cgi?id=133610
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/WebKitPrivate.h:
- UIProcess/API/Cocoa/_WKScriptWorld.h: Removed.
- UIProcess/API/Cocoa/_WKScriptWorld.mm: Removed.
- WebKit2.xcodeproj/project.pbxproj:
- 1:17 PM Changeset in webkit [169679] by
-
- 16 edits in trunk/Source
HTTPHeaderMap should not derive from HashMap
https://bugs.webkit.org/show_bug.cgi?id=133392
Reviewed by Darin Adler.
Source/WebCore:
Use a HashMap member variable instead.
- WebCore.exp.in:
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::responseReceived):
- platform/network/HTTPHeaderMap.cpp:
(WebCore::HTTPHeaderMap::copyData):
(WebCore::HTTPHeaderMap::adopt):
(WebCore::HTTPHeaderMap::get):
(WebCore::HTTPHeaderMap::set):
(WebCore::HTTPHeaderMap::add):
(WebCore::HTTPHeaderMap::contains):
(WebCore::HTTPHeaderMap::find):
(WebCore::HTTPHeaderMap::remove):
(WebCore::HTTPHeaderMap::keys):
- platform/network/HTTPHeaderMap.h:
(WebCore::HTTPHeaderMap::isEmpty):
(WebCore::HTTPHeaderMap::size):
(WebCore::HTTPHeaderMap::clear):
(WebCore::HTTPHeaderMap::begin):
(WebCore::HTTPHeaderMap::end):
(WebCore::HTTPHeaderMap::operator==):
(WebCore::HTTPHeaderMap::operator!=):
- platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::adopt):
- platform/network/ResourceRequestBase.h:
- platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::adopt):
- platform/network/ResourceResponseBase.h:
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createRequest):
Source/WebKit2:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<HTTPHeaderMap>::encode):
(IPC::ArgumentCoder<HTTPHeaderMap>::decode):
- 12:56 PM Changeset in webkit [169678] by
-
- 2 edits in tags/Safari-538.39.1/Source/WebKit2
Merged r169672.
- 12:51 PM Changeset in webkit [169677] by
-
- 5 edits in tags/Safari-538.39.1/Source
Versioning.
- 12:49 PM Changeset in webkit [169676] by
-
- 1 copy in tags/Safari-538.39.1
New tag.
- 6:29 AM Changeset in webkit [169675] by
-
- 5 edits in trunk/Source/WebCore
Use C++11 lambdas to construct FileThread::Task objects
https://bugs.webkit.org/show_bug.cgi?id=133079
Reviewed by Darin Adler.
Have FileThread::Task constructor take in a std::function<void ()>-like object
as the second parameter. Much like with ScriptExecutionContext::Task, the idea here
is to use inlined C++11 lambdas in FileThread::postTask() calls. Because FileThread::Task
also requires an instance pointer, a brace-init list is passed to these calls, passing
in the instance pointer as the first parameter and the C++11 lambda as the second.
FileThread::postTask() now takes in a FileThread::Task rvalue and moves it onto the heap
and into the queue.
In AsyncFileStream.cpp, calls to FileThread::postTask() are updated to use C++11 lambdas.
Uses of MainThreadTask are also replaced by C++11 lambdas. This modernizes the code and
removes a lot of helper functions.
FileThread::Task doesn't use CrossThreadCopier anymore. Instead, we manually produce
thread-safe copies as necessary. At the moment this approach produces another copy when
passing the freshly-copied object into the lambda, but this will be avoidable once we
make C++14 and the lambda capture expression support mandatory.
- fileapi/AsyncFileStream.cpp:
(WebCore::AsyncFileStream::create):
(WebCore::AsyncFileStream::stop):
(WebCore::AsyncFileStream::getSize):
(WebCore::AsyncFileStream::openForRead):
(WebCore::AsyncFileStream::openForWrite):
(WebCore::AsyncFileStream::close):
(WebCore::AsyncFileStream::read):
(WebCore::AsyncFileStream::write):
(WebCore::AsyncFileStream::truncate):
(WebCore::didStart): Deleted.
(WebCore::AsyncFileStream::startOnFileThread): Deleted.
(WebCore::derefProxyOnMainThread): Deleted.
(WebCore::AsyncFileStream::stopOnFileThread): Deleted.
(WebCore::didGetSize): Deleted.
(WebCore::AsyncFileStream::getSizeOnFileThread): Deleted.
(WebCore::didOpen): Deleted.
(WebCore::AsyncFileStream::openForReadOnFileThread): Deleted.
(WebCore::AsyncFileStream::openForWriteOnFileThread): Deleted.
(WebCore::AsyncFileStream::closeOnFileThread): Deleted.
(WebCore::didRead): Deleted.
(WebCore::AsyncFileStream::readOnFileThread): Deleted.
(WebCore::didWrite): Deleted.
(WebCore::AsyncFileStream::writeOnFileThread): Deleted.
(WebCore::didTruncate): Deleted.
(WebCore::AsyncFileStream::truncateOnFileThread): Deleted.
- fileapi/AsyncFileStream.h:
- fileapi/FileThread.cpp:
(WebCore::FileThread::postTask):
- fileapi/FileThread.h:
(WebCore::FileThread::Task::Task):
- 6:10 AM Changeset in webkit [169674] by
-
- 3 edits in trunk/Source/WebCore
Pass C++11 lambdas to callOnMainThread() calls in IconDatabase
https://bugs.webkit.org/show_bug.cgi?id=133374
Reviewed by Darin Adler.
Use C++11 lambads to inline the main thread tasks into the calling code,
modernizing the look of the code and removing a few static methods and
classes that were used as helpers.
- loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::scheduleOrDeferSyncTimer):
(WebCore::IconDatabase::performURLImport):
(WebCore::IconDatabase::dispatchDidImportIconURLForPageURLOnMainThread):
(WebCore::IconDatabase::dispatchDidImportIconDataForPageURLOnMainThread):
(WebCore::IconDatabase::dispatchDidRemoveAllIconsOnMainThread):
(WebCore::IconDatabase::dispatchDidFinishURLImportOnMainThread):
(WebCore::IconDatabase::notifyPendingLoadDecisionsOnMainThread): Deleted.
(WebCore::IconDatabase::performScheduleOrDeferSyncTimer): Deleted.
(WebCore::IconDatabase::performScheduleOrDeferSyncTimerOnMainThread): Deleted.
(WebCore::ClientWorkItem::ClientWorkItem): Deleted.
(WebCore::ClientWorkItem::~ClientWorkItem): Deleted.
(WebCore::ImportedIconURLForPageURLWorkItem::ImportedIconURLForPageURLWorkItem): Deleted.
(WebCore::ImportedIconURLForPageURLWorkItem::~ImportedIconURLForPageURLWorkItem): Deleted.
(WebCore::ImportedIconURLForPageURLWorkItem::performWork): Deleted.
(WebCore::ImportedIconDataForPageURLWorkItem::ImportedIconDataForPageURLWorkItem): Deleted.
(WebCore::ImportedIconDataForPageURLWorkItem::~ImportedIconDataForPageURLWorkItem): Deleted.
(WebCore::ImportedIconDataForPageURLWorkItem::performWork): Deleted.
(WebCore::RemovedAllIconsWorkItem::RemovedAllIconsWorkItem): Deleted.
(WebCore::RemovedAllIconsWorkItem::performWork): Deleted.
(WebCore::FinishedURLImport::FinishedURLImport): Deleted.
(WebCore::FinishedURLImport::performWork): Deleted.
(WebCore::performWorkItem): Deleted.
- loader/icon/IconDatabase.h:
- 6:06 AM Changeset in webkit [169673] by
-
- 4 edits in trunk/Source/WebCore
Replace uses of CrossThreadTask in DefaultSharedWorkerRepository, WorkerMessagingProxy with C++11 lambdas
https://bugs.webkit.org/show_bug.cgi?id=133375
Reviewed by Darin Adler.
Uses of CrossThreadTask in the two classes are replaced with C++11 lambdas.
The necessary cross-thread copies are created manually and passed into the
lambdas by value, removing the need for CrossThreadTask and its use of CrossThreadCopier.
Remove the explicit use of this pointer in some lambdas -- it is captured automatically when
capturing by value, so enforcing its capturing through explicit use is not necessary.
- workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
(WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
(WebCore::postExceptionTask): Deleted.
(WebCore::postConsoleMessageTask): Deleted.
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::workerObjectDestroyed):
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
(WebCore::WorkerMessagingProxy::connectToInspector):
(WebCore::WorkerMessagingProxy::disconnectFromInspector):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector):
(WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
(WebCore::WorkerMessagingProxy::reportPendingActivity):
(WebCore::postConsoleMessageTask): Deleted.
(WebCore::WorkerMessagingProxy::workerObjectDestroyedInternal): Deleted.
(WebCore::connectToWorkerGlobalScopeInspectorTask): Deleted.
(WebCore::disconnectFromWorkerGlobalScopeInspectorTask): Deleted.
(WebCore::dispatchOnInspectorBackendTask): Deleted.
- workers/WorkerMessagingProxy.h:
- 2:21 AM Changeset in webkit [169672] by
-
- 2 edits in trunk/Source/WebKit2
[iOS] Fix a path used for sandbox profiles
https://bugs.webkit.org/show_bug.cgi?id=133602
<rdar://problem/17212011>
Reviewed by David Kilzer.
- WebKit2.xcodeproj/project.pbxproj:
- 1:10 AM Changeset in webkit [169671] by
-
- 2 edits4 adds in trunk/LayoutTests
Add tests for dynamic changes in msqrt/mroot
https://bugs.webkit.org/show_bug.cgi?id=133557
Reviewed by Chris Fleizach.
This patch adds some tests to verify that a MathML msqrt/mroot element to which we applied dynamic additions and removals of children renders the same as its static equivalent and that no crashes happen.
Unfortunately, the existing code does not handle them very well so they are skipped until we do the refactoring of bug 119038.
- TestExpectations: skip the tests.
- mathml/roots-addChild-expected.html: Added.
- mathml/roots-addChild.html: Added.
- mathml/roots-removeChild-expected.html: Added.
- mathml/roots-removeChild.html: Added.
Jun 6, 2014:
- 6:29 PM Changeset in webkit [169670] by
-
- 9 edits in trunk
Scheme of content utils should be compared in an ASCII case-insensitive manner
https://bugs.webkit.org/show_bug.cgi?id=133502
Reviewed by Darin Adler.
Source/WebCore:
According to spec, scheme must be compared in an ASCII case-insensitive manner by user agents.
Covered by existing tests.
- Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::isProtocolWhitelisted):
LayoutTests:
Tests are updated to compare protocol in ASCII case-insensitive manner.
- fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
- fast/dom/NavigatorContentUtils/register-protocol-handler.html:
- fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:
- fast/dom/NavigatorContentUtils/unregister-protocol-handler.html:
- platform/efl/fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
- platform/efl/fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:
- 5:30 PM Changeset in webkit [169669] by
-
- 7 edits in trunk/Source/WebKit2
REGRESSION (iOS WebKit2): backspace key does not repeat beyond a single word.
https://bugs.webkit.org/show_bug.cgi?id=133593
<rdar://problem/16352228>
Reviewed by Benjamin Poulain.
We need to provide a way for the keyboard layer to select from
the current position to the beginning of the word moving backwards
and implement the method to know when we have reached the beginning of the document.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView selectWordBackward]):
(-[WKContentView _selectionAtDocumentStart]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::selectWordBackward):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::selectWordBackward):
- 4:56 PM Changeset in webkit [169668] by
-
- 11 edits in trunk/Source
Indexed getters should return values directly on the PropertySlot.
<https://webkit.org/b/133586>
Source/JavaScriptCore:
Remove PropertySlot's custom index mode.
Reviewed by Darin Adler.
- runtime/JSObject.h:
(JSC::PropertySlot::getValue):
- runtime/PropertySlot.h:
(JSC::PropertySlot::setCustomIndex): Deleted.
Source/WebCore:
Make indexed getters more efficient by using PropertySlot::setValue()
to pass the value directly back through the slot, instead of giving it
a function pointer that JSC would then immediately call back through
to retrieve the value.
The function pointer approach would make sense if we did inline caching
of indexed getters but since we currently don't, this is pure overhead.
Reviewed by Darin Adler.
- bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::getOwnPropertySlotDelegate):
(WebCore::cssPropertyGetterPixelOrPosPrefixCallback): Deleted.
(WebCore::cssPropertyGetterCallback): Deleted.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::indexGetter): Deleted.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateHeader):
(GetIndexedGetterExpression):
(GenerateImplementation):
- bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::getOwnPropertySlotByIndex):
(JSC::RuntimeArray::indexGetter): Deleted.
- bridge/runtime_array.h:
- 4:32 PM Changeset in webkit [169667] by
-
- 2 edits in tags/Safari-538.39/Source/WebCore
Merge r169665. <rdar://problem/15840022>
- 4:18 PM Changeset in webkit [169666] by
-
- 3 edits in trunk/Source/WebCore
GenericCueData elements prematurely removed
https://bugs.webkit.org/show_bug.cgi?id=133588
Reviewed by Eric Carlson.
Add a 'removeCompletedCues' method instead of using the 'resetCueValues' method
after processing new cues. We do not want to reset cue state if we have pending
cues that are being extended by future updates (such as paint-on cues).
- platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processCue): Call new 'removeCompletedCues' method.
(WebCore::InbandTextTrackPrivateAVF::removeCompletedCues): Added.
- platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
- 4:07 PM Changeset in webkit [169665] by
-
- 2 edits in trunk/Source/WebCore
Initialize a char* that needs to be initialized.
<rdar://problem/15840022> and https://bugs.webkit.org/show_bug.cgi?id=133585
Reviewed by Mark Rowe.
r152134 (erroneously) removed this initialization.
- platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::prepare): tail should start out initialized to 0.
- 3:06 PM Changeset in webkit [169664] by
-
- 8 edits in trunk/Source/WebKit2
Adopt the new UIAlertController API to replace UIActionSheet.
https://bugs.webkit.org/show_bug.cgi?id=133582
<rdar://problem/16845223>
Reviewed by Joseph Pecoraro.
UIActionSheet is deprecated. We need to move out action sheets
implementation to UIAlertView.
- UIProcess/API/Cocoa/_WKElementAction.h:
- UIProcess/API/Cocoa/_WKElementAction.mm:
- UIProcess/ios/WKActionSheet.h:
- UIProcess/ios/WKActionSheet.mm:
(-[WKActionSheet presentSheetFromRect:]):
(-[WKActionSheet doneWithSheet]):
(-[WKActionSheet willRotate]):
(-[WKActionSheet updateSheetPosition]):
(-[WKActionSheet _didRotateAndLayout]):
(-[WKActionSheet didRotate]):
- UIProcess/ios/WKActionSheetAssistant.h:
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):
(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]): Deleted.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _longPressRecognized:]):
- 2:43 PM Changeset in webkit [169663] by
-
- 2 edits in trunk/Source/WebKit2
Should boost ChildProcesses on iOS
https://bugs.webkit.org/show_bug.cgi?id=133583
Reviewed by Sam Weinig.
- UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
- boost all child processes on iOS.
- 2:08 PM Changeset in webkit [169662] by
-
- 2 edits in trunk/Tools
32-bit build fix.
- WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
- 2:07 PM Changeset in webkit [169661] by
-
- 7 edits in tags/Safari-538.39/Source
Rollout r169656. <rdar://problem/17095692>
- 2:04 PM Changeset in webkit [169660] by
-
- 3 edits in trunk/Source/WebCore
[iOS] Support pasting HTML
https://bugs.webkit.org/show_bug.cgi?id=133581
<rdar://problem/17070305>
Reviewed by Enrica Casucci.
We can probably share a lot of code between Mac and iOS here, but for now, just
implement the unimplemented functions.
- editing/ios/EditorIOS.mm: (WebCore::Editor::WebContentReader::readHTML):
Implemented based on WebArchive reading code above, and on Mac version of readHTML.
Unlike on Mac, we don't need to support Microsoft CF_HTML format, as nothing
generates it.
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::supportedPasteboardTypes):
Added HTML support, as the second preferred format after WebArchive.
- 1:59 PM Changeset in webkit [169659] by
-
- 4 edits in trunk/Tools
Fix builds on 10.8; -firstObject isn't declared on NSArray there.
- DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
- DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
- WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
- 1:34 PM Changeset in webkit [169658] by
-
- 5 edits in trunk/Source/WebKit2
Build fix after <http://trac.webkit.org/changeset/169655>.
The SPIs used do not exist on Mac, limit the code to iOS.
- Shared/Authentication/mac/AuthenticationManager.mac.mm:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<Credential>::encode):
(IPC::ArgumentCoder<Credential>::decode):
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::typeFromCFTypeRef):
(IPC::encode):
(IPC::decode):
- Shared/cf/ArgumentCodersCF.h:
- 1:07 PM Changeset in webkit [169657] by
-
- 2 edits in trunk/Source/WebCore
Try to fix the build after http://trac.webkit.org/changeset/169655
Unfortunately, the fix is very fragile, and will likely not work for some SDKs
or possibly local headers - all OS versions have multiple SecBase.h headers with
different definitions for SecIdentityRef.
We'll see.
- WebCore.exp.in:
- 12:57 PM Changeset in webkit [169656] by
-
- 7 edits in tags/Safari-538.39/Source
Merge r169655. <rdar://problem/17095692>
- 12:04 PM Changeset in webkit [169655] by
-
- 7 edits in trunk/Source
Source/WebCore: WebCore part of <rdar://problem/17095692> [iOS] Client-certificate authentication isn’t working
https://bugs.webkit.org/show_bug.cgi?id=133527
Reviewed by Darin Adler.
- WebCore.exp.in: Exported some Credential member functions.
Source/WebKit2: <rdar://problem/17095692> [iOS] Client-certificate authentication isn’t working
https://bugs.webkit.org/show_bug.cgi?id=133527
Reviewed by Darin Adler.
- Configurations/Network-iOS.entitlements: Enabled the Network process to access the keys
needed to create identities to authenticate with.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<Credential>::encode): Encode the credential type, and if it is a client
certificate, encode the identity and the certificates.
(IPC::ArgumentCoder<Credential>::decode): Decode the credential type. If it is a client
certificate, decode the identity and the certificates and use the proper Credential
constructor.
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::typeFromCFTypeRef): Handle SecIdentityRef.
(IPC::encode): Encode an identity by encoding its certificate and a persistent reference to
its key.
(IPC::decode): Decode a certificate and a persistent reference to a key, find the key, and
create an identity.
- Shared/cf/ArgumentCodersCF.h:
- 11:37 AM Changeset in webkit [169654] by
-
- 3 edits in trunk/Source/WebCore
[iOS WebGL] Float texture extension has a slightly different name
https://bugs.webkit.org/show_bug.cgi?id=133580
<rdar://problem/17113451>
Reviewed by Brady Eidson.
Floating point textures were not available on iOS, because we were
looking for the wrong extension.
Covered by the Khronos test (and in LayoutTests):
conformance/extensions/oes-texture-float.html
- platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::supportsExtension): Look for GL_OES_texture_float
as well as GL_ARB_texture_float.
- platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::texImage2D): Increase the set of things skipped
on PLATFORM(IOS) since they are supported natively there.
- 11:00 AM Changeset in webkit [169653] by
-
- 5 edits in trunk/Source
Versioning.
- 10:59 AM Changeset in webkit [169652] by
-
- 2 edits in tags/Safari-538.39/Source/WebCore
Add UNUSED_PARAM when GRID is off.
- 10:57 AM Changeset in webkit [169651] by
-
- 7 edits in trunk
REGRESSION: Hit testing of composited elements is broken in new multicolumn layout.
https://bugs.webkit.org/show_bug.cgi?id=133522 (<rdar://problem/17060556>)
Reviewed by Simon Fraser.
Source/WebCore:
Hit testing for the new columns doesn't care about compositing but does still
need a pagination layer set to work. The old column code didn't care about this
because it was top down (and wrong). The new code lets each layer paint and hit
test its own fragments, so having a pagination layer set suddenly becomes relevant
for composited layers.
The solution is to cache whether or not the pagination layer crosses a compositing
boundary, and then to force call sites of enclosingPaginationLayer to pass an argument
indicating whether compositing layers should be included. Typically painting wants to
exclude them but hit testing wants to include them.
- page/FrameView.cpp:
(WebCore::updateLayerPositionFlags):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updatePagination):
(WebCore::transparencyClipBox):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::enclosingPaginationLayerInSubtree):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayer.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
LayoutTests:
- compositing/columns/hittest-composited-in-paginated-expected.txt:
- 10:41 AM Changeset in webkit [169650] by
-
- 18 edits in trunk
Latched scrolling tests are flakey on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=133578
<rdar://problem/17180591>
Reviewed by Brent Fulgham.
Tools:
The latched scrolling tests rely on synthetic mousewheel events whose coordinates can
be wrong on machines with more than one screen. This is because we use
[NSScreen mainScreen] when computing the global coordinates of the events, but
[NSScreen mainScreen] returns the screen with the key window, not the first screen.
So replace calls to [NSScreen mainScreen] with [[NSScreen screens] firstObject]. Also
add comments clarifying why the coordinate math works (which is not obvious given
the events have no target window).
Some scrolling tests also dispatched events outside the 800x600 test window, so
fix those tests, and add logging that will appear in test output when this happens.
- DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
- DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
- WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::continuousMouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
LayoutTests:
Fix these tests to not dispatch events outside the window, and correct some of the wording
in the tests.
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:
- 9:54 AM Changeset in webkit [169649] by
-
- 2 edits in trunk/LayoutTests
Run passing WebGL tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=133563
Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-06
Reviewed by Brent Fulgham.
- platform/win/TestExpectations:
Replaced all WebGL tests with lists of failing and crashing tests to fix.
- 9:33 AM Changeset in webkit [169648] by
-
- 7 edits in trunk
[MediaStream] 'get' prefix is missing for capabilities and constraints.
https://bugs.webkit.org/show_bug.cgi?id=133573
Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-06
Reviewed by Eric Carlson.
Source/WebCore:
Modified the existing MediaStreamTrack.html to test the changes.
As per the Media Capture and Streams spec method names constreaints and
capabilities should be prefixed by 'get'. So updated the method names.
- Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::getConstraints):
(WebCore::MediaStreamTrack::getCapabilities):
(WebCore::MediaStreamTrack::constraints): Deleted.
(WebCore::MediaStreamTrack::capabilities): Deleted.
- Modules/mediastream/MediaStreamTrack.h:
- Modules/mediastream/MediaStreamTrack.idl:
LayoutTests:
- fast/mediastream/MediaStreamTrack-expected.txt:
- fast/mediastream/MediaStreamTrack.html:
- 9:20 AM Changeset in webkit [169647] by
-
- 4 edits in trunk/Source/WebCore
REGRESSION(169440): Repro crash when playing a video with captions
https://bugs.webkit.org/show_bug.cgi?id=133459
<rdar://problem/17079081>
Reviewed by Eric Carlson.
The change I made in r169440 introduced a crash for paint-on captions. This
resolves the problem as follows:
- No longer attempt to modify the start/endTime in the TextTrack implementation.
- Check for extensions to existing cues when we are about to add new arriving cues. If they extend a current pending cue, don't set an end-time for the pending cue, and throw away the new duplicate. Otherwise set the end time as previously and continue.
- html/track/TextTrack.cpp:
(WebCore::TextTrack::hasCue): Remove 'doesExtendCue' case since this is
no longer possible.
- platform/graphics/InbandTextTrackPrivateClient.h:
(WebCore::GenericCueData::doesExtendCueData): Added.
- platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processCue): Check for cues extending
other cues and handle appropriately.
- 9:19 AM Changeset in webkit [169646] by
-
- 4 edits1 copy in trunk/LayoutTests
[GTK] Layout Test accessibility/table-fallback-roles-expose-element-attributes.html is failing
https://bugs.webkit.org/show_bug.cgi?id=133519
Reviewed by Chris Fleizach.
Adapted test to play nicely with the different types of
accessibility hierarchies exposed for Mac and ATK.
- accessibility/table-fallback-roles-expose-element-attributes.html:
Updated text to print information of cells from every platform but
only print information of their children in the Mac.
- accessibility/table-fallback-roles-expose-element-attributes-expected.txt:
Updated expectation to match ATK platforms (GTK & EFL).
- platform/mac/accessibility/table-fallback-roles-expose-element-attributes-expected.txt:
Copied from LayoutTests/accessibility/table-fallback-roles-expose-element-attributes-expected.txt.
- platform/gtk/TestExpectations: Removed expected failure.
- 8:49 AM Changeset in webkit [169645] by
-
- 4 edits in trunk/Source/WebCore
ROLLOUT: r169630: Caused a retain cycle.
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>
Rolling out this change as it introduced a retain cycle.
- Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::setControllerJSObject): Deleted.
- Modules/mediacontrols/MediaControlsHost.h:
(WebCore::MediaControlsHost::controllerJSValue):
(WebCore::MediaControlsHost::setControllerJSValue):
(WebCore::MediaControlsHost::controllerJSObject): Deleted.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- 12:37 AM Changeset in webkit [169644] by
-
- 1 edit7 adds in trunk/LayoutTests
Add test references for horizontal stretchy operators.
https://bugs.webkit.org/show_bug.cgi?id=72828
Unreviewed Win and EFL gardening.
- platform/efl/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
- platform/efl/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
- platform/efl/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
- platform/win/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
- platform/win/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
- platform/win/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
- 12:26 AM Changeset in webkit [169643] by
-
- 1 edit3 adds in trunk/LayoutTests
Add test references for horizontal stretchy operators.
https://bugs.webkit.org/show_bug.cgi?id=72828
Unreviewed Mac gardening.
- platform/mac/mathml/horizontal-LatinModern-expected.txt: Added.
- platform/mac/mathml/horizontal-LatinModern-munderover-expected.txt: Added.
- platform/mac/mathml/opentype-stretchy-horizontal-expected.txt: Added.
- 12:19 AM Changeset in webkit [169642] by
-
- 8 edits in tags/Safari-538.39/Source
Custom patch for <rdar://problem/16650338>.
- 12:08 AM Changeset in webkit [169641] by
-
- 6 edits in releases/WebKitGTK/webkit-2.2
Merge r154727 - [Soup] WebTiming information not shown in the inspector
https://bugs.webkit.org/show_bug.cgi?id=118395
Reviewed by Martin Robinson.
Source/WebCore:
WebTiming information was not correctly provided to WebCore
because the gotHeadersCallback was incorrectly resetting the
original ResourceResponse (which had the ResourceLoadTiming
object) instead of simply updating their contents using the
SoupMessage.
No new test required as this feature is already covered by the
existing webtiming tests. In any case this change includes a fix
for the http/tests/misc/webtiming-ssl.php test which was not
failing even if it should because it was not correct.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::gotHeadersCallback):
(WebCore::restartedCallback): restartedCallback should be
available only if WEB_TIMING is defined.
(WebCore::createSoupMessageForHandleAndRequest): Ditto.
LayoutTests:
Fixed the webiming-ssl.php test that was incorrectly considering a
FAIL as the expected result. It was probably just a legacy
decision which came from the times where DRT was responsible of
reporting WebTiming information.
Also added a new test that fails due to wkb.ug/103927. It was not
detected before because there were no timing information in the
response.
- http/tests/misc/resources/webtiming-ssl.html:
- http/tests/misc/webtiming-ssl-expected.txt:
- platform/gtk/TestExpectations: added
http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order.html.
Jun 5, 2014:
- 11:53 PM Changeset in webkit [169640] by
-
- 2 edits in trunk/Source/WebCore
StyleResolver doesn't compile without CSS_GRID_LAYOUT enabled
https://bugs.webkit.org/show_bug.cgi?id=133568
Reviewed by Tim Horton.
- css/StyleResolver.cpp:
(WebCore::isDisplayGridBox): Add UNUSED_PARAM.
- 11:44 PM Changeset in webkit [169639] by
-
- 3 edits2 adds in trunk
[CSSRegions] Region box incorrectly overlaps floating box
https://bugs.webkit.org/show_bug.cgi?id=133545
Reviewed by David Hyatt.
Source/WebCore:
A region box creates a BFC and it should not overlap a floating box in the same formatting context: http://www.w3.org/TR/CSS21/visuren.html#bfc-next-to-float
Test: fast/regions/region-as-bfc-avoids-float.html
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::avoidsFloats):
LayoutTests:
Add test to check that a region does not incorrectly overlap a floating
element in the same formatting context.
- fast/regions/region-as-bfc-avoids-float-expected.html: Added.
- fast/regions/region-as-bfc-avoids-float.html: Added.
- 11:43 PM Changeset in webkit [169638] by
-
- 1 copy in tags/Safari-538.39
Create the Safari-538.39 tag.
- 11:06 PM Changeset in webkit [169637] by
-
- 17 edits1 move2 deletes in trunk
Align srcset parser with recent spec changes
https://bugs.webkit.org/show_bug.cgi?id=133504
Reviewed by Darin Adler.
Source/WebCore:
New tests were added to fast/hidpi/image-srcset-invalid-descriptor.html
The srcset parser changes align it with the spec:
http://picture.responsiveimages.org/#parse-srcset-attr.
The spec changes are meant to give the parser better future
compatibility, and enable it to work well with the 'w' descriptor, the
soon to be added 'h' descriptor and function descriptors (e.g.
future-descriptor(a, b, c) ).
- CMakeLists.txt:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::setBestFitURLAndDPRFromImageCandidate):
(WebCore::HTMLImageElement::parseAttribute):
- html/HTMLImageElement.h:
- html/parser/HTMLParserIdioms.h:
(WebCore::isHTMLSpace):
(WebCore::isComma):
(WebCore::isHTMLSpaceOrComma):
- html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
- html/parser/HTMLSrcsetParser.cpp:
(WebCore::compareByDensity):
(WebCore::appendDescriptorAndReset):
(WebCore::appendCharacter):
(WebCore::isEOF):
(WebCore::tokenizeDescriptors):
(WebCore::stringViewToFloat):
(WebCore::stringViewToInt):
(WebCore::parseDescriptors):
(WebCore::parseImageCandidatesFromSrcsetAttribute):
(WebCore::pickBestImageCandidate):
(WebCore::bestFitSourceForImageAttributes):
(WebCore::compareByScaleFactor): Deleted.
(WebCore::parseImagesWithScaleFromSrcsetAttribute): Deleted.
- html/parser/HTMLSrcsetParser.h:
(WebCore::DescriptorParsingResult::DescriptorParsingResult):
(WebCore::DescriptorParsingResult::hasDensity):
(WebCore::DescriptorParsingResult::hasWidth):
(WebCore::DescriptorParsingResult::hasHeight):
(WebCore::DescriptorParsingResult::density):
(WebCore::DescriptorParsingResult::resourceWidth):
(WebCore::DescriptorParsingResult::resourceHeight):
(WebCore::DescriptorParsingResult::setResourceWidth):
(WebCore::DescriptorParsingResult::setResourceHeight):
(WebCore::DescriptorParsingResult::setDensity):
(WebCore::ImageCandidate::ImageCandidate):
(WebCore::ImageCandidate::toString):
(WebCore::ImageCandidate::url):
(WebCore::ImageCandidate::setDensity):
(WebCore::ImageCandidate::density):
(WebCore::ImageCandidate::resourceWidth):
(WebCore::ImageCandidate::srcOrigin):
(WebCore::ImageCandidate::isEmpty):
(WebCore::ImageWithScale::ImageWithScale): Deleted.
(WebCore::ImageWithScale::imageURL): Deleted.
(WebCore::ImageWithScale::scaleFactor): Deleted.
- html/parser/ParsingUtilities.h: Renamed from Source/WebCore/html/track/ParsingUtilities.h.
(skipExactly):
(skipUntil):
(skipWhile):
(reverseSkipWhile):
Source/WTF:
I've added toInt and toFloat methods to StringView, and exposed
charactersToInt so that they can be used by
HTMLSrcsetParser.cpp.
- wtf/text/WTFString.h:
- wtf/text/StringView.h:
(WTF::StringView::toInt):
(WTF::StringView::toFloat):
LayoutTests:
I have changed the "invalid-descriptor" test and removed the "invalid
inputs correct src" test to reflect the fact that invalid descriptors
are now treated identically to null descriptors. That is according to
the spec.
I've also added new tests that make sure that the spec's future
compatible changes are working.
- fast/hidpi/image-srcset-invalid-descriptor-expected.txt:
- fast/hidpi/image-srcset-invalid-descriptor.html:
- fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.txt: Removed.
- fast/hidpi/image-srcset-invalid-inputs-correct-src.html: Removed.
- 10:11 PM Changeset in webkit [169636] by
-
- 3 edits2 adds in trunk
Source/WebCore: Current media controls look different from previous media controls. Adjusted CSS to make media elements more similar by adding padding, adjusting hues/svg, resizing elements, etc.
https://bugs.webkit.org/show_bug.cgi?id=133521
Patch by Wenson Hsieh <Wenson Hsieh> on 2014-06-05
Reviewed by Eric Carlson.
The main issues:
- The widths between elements of both audio and video players are incorrect.
- The hues of audio player elements are incorrect.
- The hues of video player elements are content dependent (refer to full-screen mode), and this cannot be exactly replicated using just css. This patch only attempts to make them more similar.
- The height of the audio player is incorrect.
Test: platform/ios-sim/media/audio-width.html
- Modules/mediacontrols/mediaControlsiOS.css: Updated style elements for audio/video elements.
(::-webkit-media-controls): Enforce a minimum width on audio/video controls.
(audio): Enforce a minimum width on audio elements.
(audio::-webkit-media-controls): see below
(audio::-webkit-media-controls-wireless-playback-picker-button): modified SVG, hue and width/height.
(audio::-webkit-media-controls-panel): adjusted hue, added left/right padding.
(audio::-webkit-media-controls-fullscreen-button): removed. There's no fullscreen for audio anyways.
(audio::-webkit-media-controls-current-time-display): adjusted font size, added left padding.
(audio::-webkit-media-controls-time-remaining-display): adjusted font size, added right padding.
(video::-webkit-media-controls-panel): adjusted hue, added left/right padding.
(video::-webkit-media-controls-current-time-display): added left padding.
(video::-webkit-media-controls-time-remaining-display): added right padding.
(video::-webkit-media-controls-wireless-playback-picker-button): modified SVG, hue, opacity and width/height.
(video::-webkit-media-controls-fullscreen-button): modified SVG, hue, opacity, and width/height. In particular, made the svg seem sharper.
(video::-webkit-media-controls-play-button): modified SVG, hue, opacity, and width/height.
LayoutTests: REGRESSION (Pluginless): Media controls look different from iOS7 media controls.
https://bugs.webkit.org/show_bug.cgi?id=133521
Patch by Wenson Hsieh <Wenson Hsieh> on 2014-06-05
Reviewed by Eric Carlson.
Tests that audio elements are properly sized. Will add tests for video players in the (near) future.
- platform/ios-sim/media/audio-width-expected.txt: Checks that audio width tests were OK'd
- platform/ios-sim/media/audio-width.html: Checks that minimum audio width is properly enforced
- 7:22 PM Changeset in webkit [169635] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, rolling out r169570.
https://bugs.webkit.org/show_bug.cgi?id=133565
It breaks Baidu (Requested by benjaminp on #webkit).
Reverted changeset:
"[iOS] Start ignoring common bogus viewport parameters"
https://bugs.webkit.org/show_bug.cgi?id=133466
http://trac.webkit.org/changeset/169570
- 7:02 PM Changeset in webkit [169634] by
-
- 5 edits in branches/safari-538.34-branch/Source
Bump versioning
- 6:45 PM Changeset in webkit [169633] by
-
- 1 copy in tags/Safari-538.34.49
Tagging Safari-538.34.49
- 5:23 PM Changeset in webkit [169632] by
-
- 3 edits2 adds in trunk
AX: Add support for ARIA 1.1 'none' role
https://bugs.webkit.org/show_bug.cgi?id=133367
Patch by Michael Timbrook <timbrook@apple.com> on 2014-06-05
Reviewed by Chris Fleizach.
Source/WebCore:
Added support for the 'none' role by added a lookup for it to go to PresentationalRole
Test: accessibility/aria-none-role.html
- accessibility/AccessibilityObject.cpp:
(WebCore::initializeRoleMap):
LayoutTests:
Added the tests to cover the behavior of the 'none' role
- accessibility/aria-none-role-expected.txt: Added.
- accessibility/aria-none-role.html: Added.
- 4:53 PM Changeset in webkit [169631] by
-
- 6 edits3 adds in trunk
AX: [ATK] Children of tables and lists with role='presentation' should each be exposed as if they were div elements
https://bugs.webkit.org/show_bug.cgi?id=133133
Reviewed by Chris Fleizach.
Source/WebCore:
When a table or list has role='presentation', accessibility is "ignored"
for that element, but not for the required children. The default roles
for the children (CellRole and ListItemRole) do not make sense without
the parent, therefore map them to DivRole in ATK if they inherit the
presentational role.
Test: accessibility/aria-inherits-presentational.html
- accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::inheritsPresentationalRole):
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
- accessibility/AccessibilityRenderObject.h:
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
LayoutTests:
Added a new test with platform-specific expectations due to differences
in accessible hierarchies.
- accessibility/aria-inherits-presentational.html: Added.
- platform/gtk/accessibility/aria-inherits-presentational-expected.txt: Added.
- platform/mac/accessibility/aria-inherits-presentational-expected.txt: Added.
- 4:46 PM Changeset in webkit [169630] by
-
- 4 edits in trunk/Source/WebCore
REGRESSION (r167962): Out of bounds read in JSC::StructureIDTable::get()
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>
Reviewed by Dean Jackson.
Revise MediaControllerHost implementation so that it holds a Strong
reference to the JavaScript 'Controller' object it mirrors. The
MediaControllerHost is constructed when we create an HTMLMediaElement,
and is the logical place to retain ownership of the JS object so that
it does not get garbage collected as long as HTMLMediaElement exists.
- Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::setControllerJSObject): Create a strong
reference to the JavaScript Controller object.
- Modules/mediacontrols/MediaControlsHost.h: Use JSC::Strong to hold a
JSObject, rather than a bare JSValue.
(WebCore::MediaControlsHost::controllerJSObject): Change name to reflect
that we are working with JSObjects, not JSValues.
(WebCore::MediaControlsHost::controllerJSValue): Deleted.
(WebCore::MediaControlsHost::setControllerJSValue): Deleted.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute): Revise for changed method
signature.
- 4:19 PM Changeset in webkit [169629] by
-
- 4 edits2 adds2 deletes in trunk/LayoutTests
Share platform/mac/editing/spelling/move-cursor-around-misspelled-word.html with other platforms
https://bugs.webkit.org/show_bug.cgi?id=133208
Reviewed by Darin Adler.
Move the test to common editing/spelling since it just verifies spelling
markers and other platforms might be interested in running it as well.
Due to bug 125688, the test starts using asynchronous spellchecking.
Add additional test case which checks spelling marker after typing
the text, before any caret change.
- editing/spelling/move-cursor-around-misspelled-word-expected.txt:
Renamed from platform/mac/editing/spelling/move-cursor-around-misspelled-word-expected.txt
- editing/spelling/move-cursor-around-misspelled-word.html:
Renamed from platform/mac/editing/spelling/move-cursor-around-misspelled-word.html
- platform/gtk/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/win/TestExpectations:
Add failing expectation for platforms which didn't switch to
asynchronous spellchecking.
- 3:54 PM Changeset in webkit [169628] by
-
- 29 edits4 adds1 delete in branches/ftlopt/Source/JavaScriptCore
Added system for inlining native functions via the FTL.
https://bugs.webkit.org/show_bug.cgi?id=131515
Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-04
Reviewed by Filip Pizlo.
Also fixed the build to not compress the bitcode and to
include all of the relevant runtime. With GCC_GENERATE_DEBUGGING_SYMBOLS = NO,
the produced bitcode files are a 100th the size they were before.
Now we can include all of the relevant runtime files with only a 3mb overhead.
This is the same overhead as for two compressed files before,
but done more efficiently (on both ends) and with less code.
Deciding whether to inline native functions is left up to LLVM.
The entire module containing the function is linked into the current
compiled JS so that inlining the native functions shouldn't make them smaller.
Rather than loading Runtime.symtbl at runtime FTLState.cpp now generates a file
InlineRuntimeSymbolTable.h which statically builds the symbol table hash table.
- JavaScriptCore.xcodeproj/project.pbxproj: Added back runtime files to compile.
- build-symbol-table-index.py: Changed bitcode suffix.
Added inclusion of only tested symbols.
Added output to InlineRuntimeSymbolTable.h.
- build-symbol-table-index.sh: Changed bitcode suffix.
- copy-llvm-ir-to-derived-sources.sh: Removed gzip compression.
- tested-symbols.symlst: Added.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleCall):
Now sets the knownFunction of the call node if such a function exists
and emits a check that during runtime the callee is in fact known.
- dfg/DFGNode.h:
Added functions to set the known function of a call node.
(JSC::DFG::Node::canBeKnownFunction): Added.
(JSC::DFG::Node::hasKnownFunction): Added.
(JSC::DFG::Node::knownFunction): Added.
(JSC::DFG::Node::giveKnownFunction): Added.
- ftl/FTLAbbreviatedTypes.h: Added a typedef for LLVMMemoryBufferRef
- ftl/FTLAbbreviations.h: Added some abbreviations.
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::isInlinableSize): Added. Hardcoded threshold to 275.
(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol): Added.
(JSC::FTL::LowerDFGToLLVM::getFunctionBySymbol): Added.
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall): Added.
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
Added call to possiblyCompileInlineableNativeCall
- ftl/FTLOutput.h:
(JSC::FTL::Output::allocaName): Added. Useful for debugging.
- ftl/FTLState.cpp:
(JSC::FTL::State::State): Added an include for InlineRuntimeSymbolTable.h
- ftl/FTLState.h: Added symbol table hash table.
- ftl/FTLCompile.cpp:
(JSC::FTL::compile): Added inlining and dead function elimination passes.
- heap/HandleStack.h: Added JS_EXPORT_PRIVATE to a few functions to get inlining to compile.
- llvm/InitializeLLVMMac.mm: Deleted.
- llvm/InitializeLLVMMac.cpp: Added.
- llvm/LLVMAPIFunctions.h: Added macros to include Bitcode parsing and linking functions.
- llvm/LLVMHeaders.h: Added includes for Bitcode parsing and linking.
- runtime/BundlePath.h: Added.
- runtime/BundlePath.mm: Added.
- runtime/DateInstance.h: Added JS_EXPORT_PRIVATE to a few functions to get inlining to compile.
- runtime/DateInstance.h: ditto.
- runtime/DateConversion.h: ditto.
- runtime/ExceptionHelpers.h: ditto.
- runtime/JSCJSValue.h: ditto.
- runtime/JSArray.h: ditto.
- runtime/JSDateMath.h: ditto.
- runtime/JSObject.h: ditto.
- runtime/JSObject.h: ditto.
- runtime/RegExp.h: ditto.
- runtime/Structure.h: ditto.
- runtime/Options.h: Added maximumLLVMInstructionCountForNativeInlining.
- 2:40 PM Changeset in webkit [169627] by
-
- 3 edits in trunk/Source/WebKit/mac
Remove unsused method _setAcceleratedImageDecoding
https://bugs.webkit.org/show_bug.cgi?id=133554
Reviewed by Jon Honeycutt.
- WebView/WebView.mm:
(+[WebView _setAcceleratedImageDecoding:]): Deleted.
- WebView/WebViewPrivate.h:
- 2:36 PM Changeset in webkit [169626] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] WebPage sometimes forces two resize events on animated resize
https://bugs.webkit.org/show_bug.cgi?id=133534
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Enrica Casucci.
When I updated the patch for resize events (r168556) to use the unobscured rect in scrollview coordinates,
I forgot to update a snippet of code in dynamicViewportSizeUpdate(). Since that code was still using
the scaled unobscured rect, there was sometimes a difference of 1 pixel between the size set by that
call site and the others.
This path nukes the bad code and use the unobscured rect in scrollview coordinates given by the UIProcess.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 2:14 PM Changeset in webkit [169625] by
-
- 26 edits in trunk/Source
[iOS][WK2] Add device orientation
https://bugs.webkit.org/show_bug.cgi?id=133530
Source/WebCore:
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.
Previously, WebCore was getting the orientation directly from the WebKit layer.
This had to be done during the frame creation and was very fragile.
Frame is changed to pull the value from the chrome client. That way we avoid races
and we can maintain a single value for all frames.
Sending the values to all the subframes is aslo done here so that we do not have to repeat
it in both WebKit layers.
- WebCore.exp.in:
- loader/EmptyClients.h:
- page/ChromeClient.h:
- page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::orientationChanged):
(WebCore::Frame::orientation):
(WebCore::Frame::sendOrientationChangeEvent): Deleted.
- page/Frame.h:
(WebCore::Frame::orientation): Deleted.
Source/WebKit/ios:
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.
Change WebKit1 to provide the deviceOrientation as pull instead of push.
- DefaultDelegates/WebDefaultUIKitDelegate.m:
(-[WebDefaultUIKitDelegate deviceOrientation]):
- WebCoreSupport/WebChromeClientIOS.h:
- WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::deviceOrientation):
- WebView/WebUIKitDelegate.h:
Source/WebKit/mac:
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.
- WebView/WebFrame.mm:
(-[WebFrame deviceOrientationChanged]):
(-[WebFrame sendOrientationChangeEvent:]):
- WebView/WebFramePrivate.h:
Source/WebKit2:
<rdar://problem/16680041>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.
Add device orientation for WebKit2.
For the public API, WKWebView get the updates through the notification UIWindowDidRotateNotification.
We do not have any control over how the API is used, but we can expect the size will be updated before
the end of rotation in most cases and the events should be sent in the right order.
For Safari, we use an override to support animated resize (and some tabs corner cases).
On the WebProcess side, we just get the new orientation directly or on DynamicViewportSizeUpdate.
- UIProcess/API/Cocoa/WKWebView.mm:
(deviceOrientationForUIInterfaceOrientation):
(deviceOrientation):
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _windowDidRotate:]):
(-[WKWebView _setInterfaceOrientationOverride:]):
(-[WKWebView _interfaceOrientationOverride]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::deviceOrientation):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::setDeviceOrientation):
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
(WebKit::WebChromeClient::deviceOrientation):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::deviceOrientation):
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::setDeviceOrientation):
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 2:10 PM Changeset in webkit [169624] by
-
- 2 edits in trunk/LayoutTests
media/video-rtl.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133363
- platform/mac/TestExpectations: Marked as such.
- 2:00 PM Changeset in webkit [169623] by
-
- 2 edits in trunk/Source/WebCore
Fix the !CACHE_SUBIMAGES build
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawNativeImage):
- 12:49 PM Changeset in webkit [169622] by
-
- 2 edits in trunk/Source/WebKit2
Enable SANDBOX_EXTENSIONS build flag universally on cocoa
https://bugs.webkit.org/show_bug.cgi?id=133556
Reviewed by Alexey Proskuryakov.
Remove unnecessary iOS exception.
- WebKit2Prefix.h:
- 11:40 AM Changeset in webkit [169621] by
-
- 2 edits in trunk/Source/WebCore
CSS JIT: Clean up StackAllocator
https://bugs.webkit.org/show_bug.cgi?id=133506
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-06-05
Reviewed by Benjamin Poulain.
Cleaning up CSS JIt StackAllocator code. Sharing push / pop code and
using information provided by MacroAssembler more aggressively
to drop ifdefs.
- cssjit/StackAllocator.h:
(WebCore::StackAllocator::allocateUninitialized):
(WebCore::StackAllocator::push):
(WebCore::StackAllocator::pop):
(WebCore::StackAllocator::popAndDiscard):
(WebCore::StackAllocator::popAndDiscardUpTo):
(WebCore::StackAllocator::alignStackPreFunctionCall):
(WebCore::StackAllocator::unalignStackPostFunctionCall):
(WebCore::StackAllocator::stackUnitInBytes):
- 11:18 AM Changeset in webkit [169620] by
-
- 4 edits2 adds in trunk
Subpixel rendering: border-radius painting falls back to rectangle when the snapped rounded rect becomes non-renderable.
https://bugs.webkit.org/show_bug.cgi?id=133491
Reviewed by Simon Fraser.
Pixel snapping can change the rectangle's size when it is on a certain subpixel position. (usually it does not)
This patch ensures that the snapped rect is still renderable by adjusting the radii as well.
Source/WebCore:
Test: fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable.html
- platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::Radii::scale):
(WebCore::RoundedRect::pixelSnappedRoundedRectForPainting):
- platform/graphics/RoundedRect.h:
LayoutTests:
- fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable-expected.html: Added.
- fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable.html: Added.
- 10:21 AM Changeset in webkit [169619] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, rolling out r169587.
https://bugs.webkit.org/show_bug.cgi?id=133552
Calls a pure virtual method, crashes (Requested by ap on
#webkit).
Reverted changeset:
"WebKit should adopt journal_mode=wal for all SQLite
databases."
https://bugs.webkit.org/show_bug.cgi?id=133496
http://trac.webkit.org/changeset/169587
- 10:21 AM Changeset in webkit [169618] by
-
- 3 edits in trunk/Source/WebKit2
[Mac] Tweak plug-in sandbox profiles
https://bugs.webkit.org/show_bug.cgi?id=133549
Fix <rdar://problem/17068055> and <rdar://problem/17148837>.
Reviewed by Sam Weinig and Simon Cooper.
- Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
- Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:
- 9:23 AM Changeset in webkit [169617] by
-
- 3 edits2 adds in trunk
Apply Character-level mirroring to stretchy operators in RTL mode.
https://bugs.webkit.org/show_bug.cgi?id=130839
Reviewed by Chris Fleizach.
Source/WebCore:
We add support for character-level mirroring for stretchy MathML operators in RTL mode.
Glyph-level mirroring (via the rtlm OpenType feature) will be handled in bug 130840.
Test: mathml/presentation/stretchy-rtl.html
- rendering/mathml/RenderMathMLOperator.cpp: reorganize the Unicode stretchyCharacters table to make mirroring easy.
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): pass the right boolean to glyphDataForCharacter.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): ditto
(WebCore::RenderMathMLOperator::findStretchyData): ditto and change the index for the stretchyCharacters fallback.
(WebCore::RenderMathMLOperator::updateStyle): pass the right boolean to glyphDataForCharacter.
(WebCore::RenderMathMLOperator::paint): remove the FIXME comment.
(WebCore::RenderMathMLOperator::paintVerticalGlyphAssembly): switch the leading/trailing space in RTL mode.
LayoutTests:
Add some tests to verify that stretchy operators are correctly mirrored in RTL mode.
- mathml/presentation/stretchy-rtl-expected.html: Added.
- mathml/presentation/stretchy-rtl.html: Added.
- 9:16 AM Changeset in webkit [169616] by
-
- 1 edit2 adds in trunk/LayoutTests
[CSS Regions][CSS Shapes] Add Shapes tests which flow through multiple regions
https://bugs.webkit.org/show_bug.cgi?id=133487
Reviewed by Mihnea Ovidenie.
The test verifies if the content with the shape wraps correctly through a region chain.
- fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions-expected.html: Added.
- fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions.html: Added.
- 8:59 AM Changeset in webkit [169615] by
-
- 6 edits2 adds in trunk
Subpixel rendering: Buttons in default media controls shift vertically when controls fade in or out.
https://bugs.webkit.org/show_bug.cgi?id=133488
Reviewed by Simon Fraser.
Filter effects are not subpixel aware yet. They paint to integrally sized image buffers.
In order to ensure that the content is rendered to the the same position on the filter
source context as if there was no filter, the repaint rects need to be adjusted to match with
the internal filter snapping (enclosingIntRect).
This is a temporary change until after filter effects get subpixelized.
However, this changeset regresses RenderNameFlow clipping when the content is on subpixel position
and filter effect is present. Instead of adding the failing test cases to TestExpectations, I removed
the video controls from the <video> to make the tests pass, when possible (they just happen to have <video>)
and filed webkit.org/b/133523 to track the regression.
Source/WebCore:
Test: css3/filters/filter-is-on-subpixel-position.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setupFilters):
LayoutTests:
- css3/filters/filter-is-on-subpixel-position-expected.html: Added.
- css3/filters/filter-is-on-subpixel-position.html: Added.
- fast/regions/inline-block-inside-anonymous-overflow.html:
- fast/regions/inline-block-overflow.html:
- 6:45 AM Changeset in webkit [169614] by
-
- 4 edits in trunk/Tools
[GTK] run-perf-tests should run the tests inside the jhbuild shell.
https://bugs.webkit.org/show_bug.cgi?id=133533
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-05
Reviewed by Carlos Garcia Campos.
- Scripts/webkitpy/common/multiprocessing_bootstrap.py:
(run): Remove the jhbuild-wrapper wrapper from here. It should be
on Scripts/webkitpy/port/gtk.py.
- Scripts/webkitpy/port/base.py:
(Port.set_option): Add a set_option(name, value) function to set
the optparse parameter "name" to the value "value", even if the
parameter "name" is already initialized.
- Scripts/webkitpy/port/gtk.py:
(GtkPort.init): Set the default wrapper to jhbuild-wrapper.
If another wrapper is specified via the option "-l --wrapper=x",
then prepend the jhbuild-wrapper to the one specified.
- 5:47 AM Changeset in webkit [169613] by
-
- 2 edits in trunk/LayoutTests
[EFL] Change expectations for three layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133538
Unreviewed EFL gardening.
Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-05
- platform/efl-wk2/TestExpectations:
- 4:30 AM Changeset in webkit [169612] by
-
- 2 edits in trunk/Source/WebKit2
Resolve compiler error (call of overloaded 'schedule' function is ambiguous)
https://bugs.webkit.org/show_bug.cgi?id=133467
Patch by Tanay C <tanay.c@samsung.com> on 2014-06-05
Reviewed by Carlos Garcia Campos.
- Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::handleResponseLater): Explicitly casting second parameter to std::function<void()>
- 2:41 AM Changeset in webkit [169611] by
-
- 3 edits2 adds in trunk
[MediaStream] MediaStream.addTrack should not check for tracks ended state.
https://bugs.webkit.org/show_bug.cgi?id=133510
Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-05
Reviewed by Eric Carlson.
Source/WebCore:
Adding and removing of tracks to a MediaStream should not have dependency
on tracks state. So the check for MediaStreamTrack's ended state has been
removed while adding a track in MediaStreamPrivate.cpp.
Test: fast/mediastream/MediaStream-add-ended-tracks.html
- platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::addTrack):
LayoutTests:
- fast/mediastream/MediaStream-add-ended-tracks-expected.txt: Added.
- fast/mediastream/MediaStream-add-ended-tracks.html: Added.
- 2:25 AM Changeset in webkit [169610] by
-
- 3 edits1 delete in trunk/Source/WebCore
[GTK] Remove ScrollViewGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=133535
Reviewed by Carlos Garcia Campos.
Because GTK+ WK1 was removed, we don't have to consider special cases
handled in ScrollViewGtk.cpp.
No new tests are necessary because there is no behavior change.
- PlatformGTK.cmake:
- platform/ScrollView.cpp:
(WebCore::ScrollView::setScrollbarModes):
(WebCore::ScrollView::visibleContentRectInternal):
- platform/gtk/ScrollViewGtk.cpp: Removed.
- 2:23 AM Changeset in webkit [169609] by
-
- 3 edits in trunk/LayoutTests
[EFL] Add expectations for two accessibility layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133485
Unreviewed EFL gardening.
Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-05
- platform/efl-wk2/TestExpectations:
- platform/efl-wk2/accessibility/lists-expected.txt:
- 12:31 AM Changeset in webkit [169608] by
-
- 5 edits in trunk/Source
Versioning.
Jun 4, 2014:
- 11:35 PM Changeset in webkit [169607] by
-
- 9 edits9 adds in trunk
MathML operators not stretched horizontally
https://bugs.webkit.org/show_bug.cgi?id=72828
Reviewed by Chris Fleizach.
Source/WebCore:
This patch adds basic horizontal stretching rules for operators inside
an <munder>, <mover> or <munderover> elements. The stretchy operators
in such an element stretch to cover the size of the non-stretchy
operators. This only works when fonts that have an OpenType MATH table
are used.
Tests: mathml/opentype/horizontal-LatinModern.html
mathml/opentype/opentype-stretchy-horizontal.html
mathml/opentype/horizontal-LatinModern-munderover.html
- rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::MathMLOperatorDictionary::ExtractKeyHorizontal): We add an ordered list of operators that have horizontal stretch direction.
(WebCore::RenderMathMLOperator::RenderMathMLOperator): init m_Vertical
(WebCore::RenderMathMLOperator::SetOperatorProperties): set m_Vertical by checking whether the operator is in the horizontalOperators list.
(WebCore::RenderMathMLOperator::stretchTo): We do not stretch vertically
if the operator has horizontal direction.
We also add a new version stretchTo(LayoutUnit width) for horizontal stretching only.
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): Handle horizontal stretching: the maximumGlyphWidth is the maximum of
the base size or of the stretch size.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): Add an ASSERT to ensure that this function is only called for vertical stretching.
(WebCore::RenderMathMLOperator::findStretchyData): Add an ASSERT to ensure that this function is not called to get the maximum width of a horizontal stretchy operator.
We take into account m_isVertical when calling getMathVariants or computing sizes.
There is not any Unicode-only construction for horizontal stretching, so a MATH table is required for horizontal stretching.
(WebCore::RenderMathMLOperator::updateStyle): Ignore some code paths specific to vertical stretching and take into account the m_Vertical parameters.
For horizontal stretching, the m_stretch*Baseline parameters are now updated to match the metrics of the size variant or of the maximum of the parts in the glyph assembly.
(WebCore::RenderMathMLOperator::computeLogicalHeight): logicalHeight is now explicitely the sum of m_stretchHeightAboveBaseline and m_stretchDepthBelowBaseline, since it can be different from the stretchSize() in horizontal stretching.
(WebCore::RenderMathMLOperator::paintGlyph): handle trimming for horizontal stretching.
(WebCore::RenderMathMLOperator::fillWithVerticalExtensionGlyph): rename the function and ensure it is only call for m_isVertical.
(WebCore::RenderMathMLOperator::fillWithHorizontalExtensionGlyph): same as fillWithVerticalExtensionGlyph, but for horizontal stretching.
(WebCore::RenderMathMLOperator::paint): For glyph assembly, choose between paintVerticalGlyphAssembly or paintHorizontalGlyphAssembly.
(WebCore::RenderMathMLOperator::paintVerticalGlyphAssembly): rename the function and ensure it is only call for m_isVertical.
(WebCore::RenderMathMLOperator::paintHorizontalGlyphAssembly): same as paintVerticalGlyphAssembly but for horizontal stretching.
- rendering/mathml/RenderMathMLOperator.h: we add a m_isVertical member to indicate the stretch direction and a m_stretchWidth to indicate the width of the stretchy character.
We define the horizontal counterparts of fillWith*ExtensionGlyph, paint*GlyphAssembly, GlyphPaintTrimming StretchyData.
Finally stretchSize() takes into account the stretch direction.
- rendering/mathml/RenderMathMLUnderOver.cpp: We override the layout() function to stretch munderover children horizontally.
(WebCore::RenderMathMLUnderOver::layout):
- rendering/mathml/RenderMathMLUnderOver.h: we declare layout().
LayoutTests:
Add some tests to verify horizontal stretching with the MATH data.
- mathml/opentype/horizontal-LatinModern-munderover.html: Added.
- mathml/opentype/horizontal-LatinModern.html: Added.
- mathml/opentype/opentype-stretchy-horizontal.html: Added.
- platform/efl/TestExpectations: mark tests as failing.
- platform/gtk/mathml/opentype/horizontal-LatinModern-expected.png: Added.
- platform/gtk/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
- platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.png: Added.
- platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
- platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.png: Added.
- platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
- platform/mac/TestExpectations: mark tests as failing.
- platform/win/TestExpectations: ditto.
- 9:52 PM Changeset in webkit [169606] by
-
- 4 edits2 adds in trunk
[CSS Shapes] Image lifetime is not properly handled for gradient shapes
https://bugs.webkit.org/show_bug.cgi?id=133414
Reviewed by Simon Fraser.
Source/WebCore:
Refactor computedShape() and it's helpers to be able to properly
manage the lifetime of the image returned from StyleImage.
This is a port of a Blink patch by Hans Muller.
Test: fast/shapes/shape-outside-floats/shape-outside-uncached-gradient.html
- rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::createShapeForImage): Properly handle the
lifetime of the image. Changed to use StyleImage::image() to get
the image in all cases there's no need to special case cached
images.
(WebCore::ShapeOutsideInfo::computedShape): Call createShapeForImage.
(WebCore::getShapeImageAndRect): Deleted.
- rendering/shapes/ShapeOutsideInfo.h:
LayoutTests:
- fast/shapes/shape-outside-floats/shape-outside-uncached-gradient-expected.txt: Added.
- fast/shapes/shape-outside-floats/shape-outside-uncached-gradient.html: Added.
- 6:55 PM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 6:05 PM Changeset in webkit [169605] by
-
- 2 edits in trunk/Source/JavaScriptCore
iOS Debug build fix
Rubber-stamped by Filip Pizlo.
- Configurations/LLVMForJSC.xcconfig:
Dead-code strip the llvmForJSC library unconditionally, to work around <rdar://problem/16920916>.
- 5:45 PM Changeset in webkit [169604] by
-
- 3 edits2 adds in trunk
[CSS Shapes] Fix off by one in creating a RasterShape
https://bugs.webkit.org/show_bug.cgi?id=133499
Reviewed by Darin Adler.
Source/WebCore:
Test: fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash.html
- rendering/shapes/RasterShape.cpp:
(WebCore::RasterShapeIntervals::computeShapeMarginIntervals):
marginY1 is supposed to be an inclusive endpoint, however, maxY()
is an exclusive endpoint. This simply changes marginY1 into an
exclusive endpoint.
LayoutTests:
- fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash-expected.txt: Added.
- fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash.html: Added.
- 4:41 PM Changeset in webkit [169603] by
-
- 9 edits in trunk/Source
[iOS][WK2] Restore the visual scroll position instead of the dom scroll position when restoring states from the history
https://bugs.webkit.org/show_bug.cgi?id=133490
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-04
Reviewed by Tim Horton.
Source/WebCore:
Expose the WebKit1 parameter "ScaleIsInitial". It is used for a similar concept in WebKit2 (userHasChangedPageScaleFactor).
Add "exposedContentPosition", which is the scroll position of the exposed rect.
- history/HistoryItem.h:
(WebCore::HistoryItem::exposedContentPosition):
(WebCore::HistoryItem::setExposedContentPosition):
(WebCore::HistoryItem::setScaleIsInitial):
- loader/HistoryController.cpp:
(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
Source/WebKit2:
Instead of restoring the scroll position, restore the visual position. This makes pages appear at the same position
on screen ignoring changes in the obscured top inset.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
- WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
(WebKit::WebFrameLoaderClient::saveViewStateToItem):
(WebKit::WebFrameLoaderClient::restoreViewState):
Save and restore userHasChangedPageScaleFactor to handle rescaling correctly.
Limit the scale into valid viewport limits in case the viewport meta tag has changed or the device has rotated.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::userHasChangedPageScaleFactor):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::restorePageState):
(WebKit::WebPage::updateVisibleContentRects):
In updateVisibleContentRects, we keep track or the current difference between the exposed rect and the unobscured rect.
When restoring the page position, we use the current top inset and the saved exposed rect to restore the visual
scroll position.
It is not very robust as it does not resolve races between the two processes, but that is not worse than what we is there now.
- 3:37 PM Changeset in webkit [169602] by
-
- 5 edits in branches/safari-537.77-branch/Source
Fix versioning.
- 3:22 PM Changeset in webkit [169601] by
-
- 19 edits2 adds in trunk/Source
Enable WebGL on Windows.
https://bugs.webkit.org/show_bug.cgi?id=133503
Reviewed by Brent Fulgham.
Source/ThirdParty/ANGLE:
- changes.diff
Recorded additional changes from ANGLE.
- ANGLE.vcxproj/libEGL.vcxproj:
- ANGLE.vcxproj/libEGL.vcxproj.filters:
- ANGLE.vcxproj/libGLESv2.vcxproj:
- ANGLE.vcxproj/libGLESv2.vcxproj.filters:
- include/EGL/egl.h:
- include/EGL/eglsoftlinking.h: Added.
- include/GLES2/gl2.h:
- include/GLES2/gl2softlinking.h: Added.
Resurrected soft linking headers from r153664.
- src/libGLESv2/renderer/VertexBuffer.cpp:
(rx::VertexBufferInterface::directStoragePossible):
Compile fix for Win64.
Source/WebCore:
No new tests, but we should enable the webgl tests soon.
- html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::markContextChanged):
Check if the context and RenderBox are accelerated to use accelerated code path.
- html/canvas/WebGLRenderingContext.h:
Disable accelerated compositing on WebGL canvases until that works.
- platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
Compile fix after r166563.
Source/WebKit:
- WebKit.vcxproj/WebKit.sln:
Build ANGLE projects and add them as a dependency for linking WebKit.dll.
- WebKit.vcxproj/WebKit/WebKitCommon.props:
Link to ANGLE libraries to get EGL, GLESv2, and GLSL translator symbols.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Added 64-bit linker symbol.
Source/WTF:
- wtf/FeatureDefines.h:
Enable WebGL for AppleWin and WinCairo ports.
- 3:19 PM Changeset in webkit [169600] by
-
- 4 edits2 copies in tags/Safari-538.38
Merge r169599. <rdar://problem/17154371>
- 3:08 PM Changeset in webkit [169599] by
-
- 4 edits2 adds in trunk
Regression(r169547): Crash in WebCore::styleForFirstLetter() while loading http://thenextweb.com/apple/2014/02/21/apple-confirms-acquired-testflight-creator-burstly/
https://bugs.webkit.org/show_bug.cgi?id=133500
Reviewed by Antti Koivisto.
Source/WebCore:
Unlike the other tree marking optimization, adding HasPseudoStyle() on an element style
during style resolution must be conservative and not set the flag unless every other filter
matched first.
After r169547, the SelectorChecker was setting flags on HasPseudoStyle() during the pseudo
element matching. If that passed but the remaining filter did not match, the element style
could have the flag "FIRST_LETTER" while not being able to resolve a style for "FIRST_LETTER".
When the layout code was creating the renderer, it would find the FIRST_LETTER flag on the main style
and try to get the specific style for FIRST_LETTER. Since no rule would resolve for FIRST_LETTER,
the style would be null and the code would be crashing when accessing its parameters.
This patch fixes the issue by moving the style marking for pseudo element at the end of the matching.
Test: fast/css/first-letter-on-non-matching-selectors.html
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::match):
(WebCore::SelectorChecker::matchRecursively):
- css/SelectorChecker.h:
(WebCore::SelectorChecker::match): Deleted.
LayoutTests:
- fast/css/first-letter-on-non-matching-selectors-expected.txt: Added.
- fast/css/first-letter-on-non-matching-selectors.html: Added.
- 2:54 PM Changeset in webkit [169598] by
-
- 4 edits3 adds in trunk
ArrayIterator should not be exposed in Safari 8
https://bugs.webkit.org/show_bug.cgi?id=133494
Reviewed by Michael Saboff.
Source/JavaScriptCore:
Separate out types that require constructor objects, and don't
include the iterator types in that list.
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
- runtime/JSGlobalObject.h:
LayoutTests:
Add tests.
- js/no-iterator-constructors.html: Added.
- js/script-tests/no-iterator-constructors.js: Added.
- 2:44 PM Changeset in webkit [169597] by
-
- 2 edits in branches/ftlopt/Source/JavaScriptCore
[ftlopt] Unreviewed, fix 32-bit.
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- 2:40 PM Changeset in webkit [169596] by
-
- 6 edits in trunk/Source/WebCore
[iOS] allow UA to specify network interface
https://bugs.webkit.org/show_bug.cgi?id=133396
Reviewed by Jer Noble.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerInterfaceName): Return settings->networkInterfaceName.
- html/HTMLMediaElement.h:
- platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::mediaPlayerNetworkInterfaceName): Pass through the media element.
- platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerNetworkInterfaceName):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): If the media player
wants to use a specific netork interface name, pass it to the AVAsset allocator.
- 2:28 PM Changeset in webkit [169595] by
-
- 2 edits in trunk/Source/JavaScriptCore
DFG::Safepoint::begin() should set m_didCallBegin before releasing the rightToRun lock, because otherwise, Safepoint::checkLivenessAndVisitChildren() may assert due to a race
https://bugs.webkit.org/show_bug.cgi?id=133525
<rdar://problem/16790296>
Reviewed by Oliver Hunt.
- dfg/DFGSafepoint.cpp:
(JSC::DFG::Safepoint::begin):
- 1:46 PM Changeset in webkit [169594] by
-
- 2 edits in trunk/Source/WebCore
Pasting multiple photos on iOS only pastes one photo
<https://bugs.webkit.org/show_bug.cgi?id=133495>
<rdar://problem/16138616>
Reviewed by Alexey Proskuryakov.
- editing/ios/EditorIOS.mm:
(WebCore::Editor::pasteWithPasteboard):
Create a WebContentReader. For each pasteboard item, get the document
fragment for that item, and add it to the reader. If we fail to get
the fragment from the delegate, fall back to using
webContentFromPasteboard() as before.
- 1:42 PM Changeset in webkit [169593] by
-
- 5 edits in trunk/Source/WebCore
Use references instead of pointers for non-optional arguments during text layout
https://bugs.webkit.org/show_bug.cgi?id=133501
Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-06-04
Reviewed by Tim Horton.
This patch applies some cleanup to InlineBox layout functions to take
references instead of pointers where appropriate.
No new tests are necessary because there is no behavior change.
- rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::computeLogicalBoxHeights): Make the function take a
reference to the RootInlineBox instead of a pointer. This function does some
rounding.
(WebCore::InlineFlowBox::addTextBoxVisualOverflow): Make the function take a
reference to the InlineTextBox instead of a pointer.
(WebCore::InlineFlowBox::computeOverflow): Update call to addTextBoxVisualOverflow
to pass a reference instead of a pointer.
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::alignBoxesInBlockDirection): Update call to
computeLogicalBoxHeights to pass a reference instead of a pointer.
(WebCore::RootInlineBox::ascentAndDescentForBox): Make the function take a
reference to the InlineBox instead of a pointer.
(WebCore::RootInlineBox::includeLeadingForBox): Make the function take a reference
instead of a pointer.
(WebCore::RootInlineBox::includeFontForBox): Ditto.
(WebCore::RootInlineBox::includeGlyphsForBox): Ditto.
(WebCore::RootInlineBox::includeMarginForBox): Ditto.
- rendering/RootInlineBox.h: Move functions that are not externally called into
a private: section. In addition, update function signatures to take references
instead of pointers.
- 1:25 PM Changeset in webkit [169592] by
-
- 9 edits in branches/safari-538.34-branch/Source
Merged r168763.
- 1:22 PM Changeset in webkit [169591] by
-
- 6 edits5 adds in trunk
Lists styled with SVG fonts are not rendered as expected
https://bugs.webkit.org/show_bug.cgi?id=133198
Reviewed by Simon Fraser.
Source/WebCore:
There were a couple places in RenderListMarker and RenderMenuList that were
implicitly creating TextRuns by passing a String to a function which
expected a TextRun. Because TextRun has a constructor which takes a single
String and isn't marked explicit, TextRuns were being created without
any of the associated code that initializes the TextRun (such as creating
a RenderingContext if necessary).
There is currently one more client of this code that needs to be fixed.
This is in RenderThemeIOS::adjustMenuListButtonStyle(). However, fixing
this will be a somewhat large change, and is out of scope for this patch.
I will submit a follow-up patch that fixes this permanently. Once this is
fixed, I can mark TextRun's constructors as explicit.
Test: svg/custom/list-items-with-svg-font-family.html
- platform/graphics/TextRun.h:
(WebCore::TextRun::TextRun): Mark constructors as explicit.
- rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::computePreferredLogicalWidths): Call
RenderBlock::constructTextRun.
(WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
- rendering/RenderMenuList.cpp:
(RenderMenuList::updateOptionsWidth): Ditto.
- rendering/RenderThemeIOS.mm:
(WebCore::adjustInputElementButtonStyle): Instead of crashing, mark
form controls rendered with SVG fonts as having 0 width. This isn't
perfect, but fixing this is out of scope for this patch.
LayoutTests:
See per-file comments.
- platform/ios-sim/fonts/input-style-with-svg-font-crash.html: Added. Make sure
that iOS input elements don't crash when styled with SVG fonts.
- platform/ios-sim/fonts/resources/graffiti.svg: Added. SVG font for above test.
- svg/custom/list-items-with-svg-font-family-expected.txt: Added.
- svg/custom/list-items-with-svg-font-family.html: Added. Make sure there is
no crash when styling list elements with SVG fonts.
- 12:25 PM Changeset in webkit [169590] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed GTK gardening.
Add the new HiDPI tests to the bug that tracks support for this
feature on GTK.
Mark and report the new tests introduced on r169407 that timeout.
Mark and report the new accesibility test introduced on r169427
that fails.
Move the reported timeout tests to the timeout section of the
TestExpectations file.
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-04
- platform/gtk/TestExpectations:
- 11:57 AM HackingWebInspector edited by
- (diff)
- 11:18 AM Changeset in webkit [169589] by
-
- 4 edits in trunk/Tools
Build ASan WebKit for iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=133489
Reviewed by Darin Adler.
- DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
- DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
- Add missing ASan LDFLAGS.
- asan/asan.xcconfig:
- Split compiler-rt linker flags for OS X and iOS Simulator
- 11:03 AM Changeset in webkit [169588] by
-
- 57 edits23 adds in branches/ftlopt
[ftlopt] AI should be able track structure sets larger than 1
https://bugs.webkit.org/show_bug.cgi?id=128073
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
This makes two major changes to how AI (abstract interpreter) proves that a value has
some structure:
- StructureAbstractValue can now track an arbitrary number of structures. A set whose size is greater than one means that the value may have any of the structures, and we don't know which - but we do know that it cannot be any structure not in the set. The structure abstract value can still be TOP, which means the set of all structures. We artificially limit the set size to StructureAbstractValue::polymorphismLimit to guard memory explosion on pathological programs. This limit is big enough that it wouldn't kick in for normal code, since we have other heuristics that limit the number of structures that we would allow an inline cache to know about.
- We eagerly set watchpoints on all watchable structures and then we assume that watchable structures are being watched, and that the watchpoint will jettison the code. This allows tracking of watchable structures to be far simpler than before. Previously, a structure being tracked as "future possible" was predicated on it being watchable but we might not actually watch it. This makes algebra over sets of future possible structures quite weird. But watching all watchable structures means that we simple say that a structure set can be in the following states: unclobbered, which means it's just a set of structures and it doesn't matter what is watchable or what isn't because we've proven that the value must have one of these structures right now; and clobbered, which means that we have a set of structures, plus all possible structures temporarily, with invalidation removing the "plus all possible structures". Clobbering a set means that if any of its structures are unwatchable, the set just becomes TOP; but if all structures in the set are watchable then we just set the clobbered bit to add the "plus all possible structures temporarily" thing. This precisely tracks the exact meaning of watchability and invalidation points.
Slight SunSpider slow-down, neutral on Octane, slight AsmBench speed-up. I believe that
we will ultimately undo the SunSpider slow-down by making further improvements to the set
representation. I believe that Octane perfromance will ultimately improve once we remove
remaining singleton special-cases. The ultimate goal of this is to remove the need to
try quite so desperately hard to make everything monomorphic as we do currently.
- CMakeLists.txt:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- bytecode/StructureSet.cpp:
(JSC::StructureSet::clear):
(JSC::StructureSet::remove):
(JSC::StructureSet::filter):
(JSC::StructureSet::copyFromOutOfLine):
(JSC::StructureSet::StructureSet): Deleted.
(JSC::StructureSet::operator=): Deleted.
(JSC::StructureSet::copyFrom): Deleted.
- bytecode/StructureSet.h:
(JSC::StructureSet::StructureSet):
(JSC::StructureSet::operator=):
(JSC::StructureSet::isEmpty):
(JSC::StructureSet::genericFilter):
(JSC::StructureSet::ContainsOutOfLine::ContainsOutOfLine):
(JSC::StructureSet::ContainsOutOfLine::operator()):
(JSC::StructureSet::copyFrom):
(JSC::StructureSet::deleteStructureListIfNecessary):
(JSC::StructureSet::setEmpty):
(JSC::StructureSet::getReservedFlag):
(JSC::StructureSet::setReservedFlag):
- dfg/DFGAbstractInterpreter.h:
(JSC::DFG::AbstractInterpreter::setBuiltInConstant):
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::booleanResult):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::verifyEdge):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::clobberCapturedVars):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::forAllValues):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::clobberStructures):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::observeTransition):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::observeTransitions):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::setDidClobber):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::dump):
- dfg/DFGAbstractValue.cpp:
(JSC::DFG::AbstractValue::observeTransitions):
(JSC::DFG::AbstractValue::setMostSpecific):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::filter):
(JSC::DFG::AbstractValue::shouldBeClear):
(JSC::DFG::AbstractValue::normalizeClarity):
(JSC::DFG::AbstractValue::checkConsistency):
(JSC::DFG::AbstractValue::assertIsWatched):
(JSC::DFG::AbstractValue::dumpInContext):
(JSC::DFG::AbstractValue::setFuturePossibleStructure): Deleted.
- dfg/DFGAbstractValue.h:
(JSC::DFG::AbstractValue::clear):
(JSC::DFG::AbstractValue::clobberStructures):
(JSC::DFG::AbstractValue::clobberStructuresFor):
(JSC::DFG::AbstractValue::observeInvalidationPoint):
(JSC::DFG::AbstractValue::observeInvalidationPointFor):
(JSC::DFG::AbstractValue::observeTransition):
(JSC::DFG::AbstractValue::TransitionObserver::TransitionObserver):
(JSC::DFG::AbstractValue::TransitionObserver::operator()):
(JSC::DFG::AbstractValue::TransitionsObserver::TransitionsObserver):
(JSC::DFG::AbstractValue::TransitionsObserver::operator()):
(JSC::DFG::AbstractValue::isHeapTop):
(JSC::DFG::AbstractValue::setType):
(JSC::DFG::AbstractValue::operator==):
(JSC::DFG::AbstractValue::merge):
(JSC::DFG::AbstractValue::validate):
(JSC::DFG::AbstractValue::hasClobberableState):
(JSC::DFG::AbstractValue::assertIsWatched):
(JSC::DFG::AbstractValue::observeIndexingTypeTransition):
(JSC::DFG::AbstractValue::makeTop):
(JSC::DFG::AbstractValue::bestProvenStructure): Deleted.
- dfg/DFGAllocator.h:
- dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
- dfg/DFGArrayMode.cpp:
(JSC::DFG::ArrayMode::alreadyChecked):
- dfg/DFGAtTailAbstractState.h:
(JSC::DFG::AtTailAbstractState::structureClobberState):
(JSC::DFG::AtTailAbstractState::setStructureClobberState):
(JSC::DFG::AtTailAbstractState::setFoundConstants):
(JSC::DFG::AtTailAbstractState::haveStructures): Deleted.
(JSC::DFG::AtTailAbstractState::setHaveStructures): Deleted.
- dfg/DFGBasicBlock.cpp:
(JSC::DFG::BasicBlock::BasicBlock):
- dfg/DFGBasicBlock.h:
- dfg/DFGBranchDirection.h:
(JSC::DFG::branchDirectionToString):
(WTF::printInternal):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handlePutById):
- dfg/DFGCFAPhase.cpp:
(JSC::DFG::CFAPhase::performBlockCFA):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGCommon.cpp:
(JSC::DFG::startCrashing):
(JSC::DFG::isCrashing):
- dfg/DFGCommon.h:
- dfg/DFGCommonData.cpp:
(JSC::DFG::CommonData::notifyCompilingStructureTransition):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitGetByOffset):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
- dfg/DFGDesiredWatchpoints.cpp:
(JSC::DFG::DesiredWatchpoints::consider):
(JSC::DFG::DesiredWatchpoints::addLazily): Deleted.
- dfg/DFGDesiredWatchpoints.h:
(JSC::DFG::GenericDesiredWatchpoints::reallyAdd):
(JSC::DFG::GenericDesiredWatchpoints::areStillValid):
(JSC::DFG::GenericDesiredWatchpoints::isWatched):
(JSC::DFG::DesiredWatchpoints::isWatched):
(JSC::DFG::WatchpointForGenericWatchpointSet::WatchpointForGenericWatchpointSet): Deleted.
(JSC::DFG::GenericDesiredWatchpoints::addLazily): Deleted.
(JSC::DFG::GenericDesiredWatchpoints::isStillValid): Deleted.
(JSC::DFG::GenericDesiredWatchpoints::shouldAssumeMixedState): Deleted.
(JSC::DFG::GenericDesiredWatchpoints::isValidOrMixed): Deleted.
(JSC::DFG::DesiredWatchpoints::isStillValid): Deleted.
(JSC::DFG::DesiredWatchpoints::shouldAssumeMixedState): Deleted.
(JSC::DFG::DesiredWatchpoints::isValidOrMixed): Deleted.
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::canOptimizeStringObjectAccess):
(JSC::DFG::FixupPhase::injectTypeConversionsForEdge):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::~Graph):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::dumpBlockHeader):
(JSC::DFG::Graph::tryGetFoldableView):
(JSC::DFG::Graph::visitChildren):
(JSC::DFG::Graph::assertIsWatched):
(JSC::DFG::Graph::handleAssertionFailure):
- dfg/DFGGraph.h:
(JSC::DFG::Graph::convertToConstant):
(JSC::DFG::Graph::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::DFG::Graph::addStructureTransitionData): Deleted.
- dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::beginBasicBlock):
(JSC::DFG::InPlaceAbstractState::initialize):
(JSC::DFG::InPlaceAbstractState::endBasicBlock):
(JSC::DFG::InPlaceAbstractState::reset):
(JSC::DFG::InPlaceAbstractState::merge):
- dfg/DFGInPlaceAbstractState.h:
(JSC::DFG::InPlaceAbstractState::structureClobberState):
(JSC::DFG::InPlaceAbstractState::setStructureClobberState):
(JSC::DFG::InPlaceAbstractState::setFoundConstants):
(JSC::DFG::InPlaceAbstractState::haveStructures): Deleted.
(JSC::DFG::InPlaceAbstractState::setHaveStructures): Deleted.
- dfg/DFGLivenessAnalysisPhase.cpp:
(JSC::DFG::LivenessAnalysisPhase::run):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasTransition):
(JSC::DFG::Node::transition):
(JSC::DFG::Node::hasStructure):
(JSC::DFG::StructureTransitionData::StructureTransitionData): Deleted.
(JSC::DFG::Node::convertToStructureTransitionWatchpoint): Deleted.
(JSC::DFG::Node::hasStructureTransitionData): Deleted.
(JSC::DFG::Node::structureTransitionData): Deleted.
- dfg/DFGNodeType.h:
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThreadImpl):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::speculateStringObjectForStructure):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGStructureAbstractValue.cpp: Added.
(JSC::DFG::StructureAbstractValue::assertIsWatched):
(JSC::DFG::StructureAbstractValue::clobber):
(JSC::DFG::StructureAbstractValue::observeTransition):
(JSC::DFG::StructureAbstractValue::observeTransitions):
(JSC::DFG::StructureAbstractValue::add):
(JSC::DFG::StructureAbstractValue::merge):
(JSC::DFG::StructureAbstractValue::mergeSlow):
(JSC::DFG::StructureAbstractValue::mergeNotTop):
(JSC::DFG::StructureAbstractValue::filter):
(JSC::DFG::StructureAbstractValue::filterSlow):
(JSC::DFG::StructureAbstractValue::contains):
(JSC::DFG::StructureAbstractValue::isSubsetOf):
(JSC::DFG::StructureAbstractValue::isSupersetOf):
(JSC::DFG::StructureAbstractValue::overlaps):
(JSC::DFG::StructureAbstractValue::equalsSlow):
(JSC::DFG::StructureAbstractValue::dumpInContext):
(JSC::DFG::StructureAbstractValue::dump):
- dfg/DFGStructureAbstractValue.h:
(JSC::DFG::StructureAbstractValue::StructureAbstractValue):
(JSC::DFG::StructureAbstractValue::operator=):
(JSC::DFG::StructureAbstractValue::clear):
(JSC::DFG::StructureAbstractValue::makeTop):
(JSC::DFG::StructureAbstractValue::assertIsWatched):
(JSC::DFG::StructureAbstractValue::observeInvalidationPoint):
(JSC::DFG::StructureAbstractValue::top):
(JSC::DFG::StructureAbstractValue::isClear):
(JSC::DFG::StructureAbstractValue::isTop):
(JSC::DFG::StructureAbstractValue::isNeitherClearNorTop):
(JSC::DFG::StructureAbstractValue::isClobbered):
(JSC::DFG::StructureAbstractValue::merge):
(JSC::DFG::StructureAbstractValue::filter):
(JSC::DFG::StructureAbstractValue::operator==):
(JSC::DFG::StructureAbstractValue::size):
(JSC::DFG::StructureAbstractValue::at):
(JSC::DFG::StructureAbstractValue::operator[]):
(JSC::DFG::StructureAbstractValue::onlyStructure):
(JSC::DFG::StructureAbstractValue::isSupersetOf):
(JSC::DFG::StructureAbstractValue::makeTopWhenThin):
(JSC::DFG::StructureAbstractValue::setClobbered):
(JSC::DFG::StructureAbstractValue::add): Deleted.
(JSC::DFG::StructureAbstractValue::addAll): Deleted.
(JSC::DFG::StructureAbstractValue::contains): Deleted.
(JSC::DFG::StructureAbstractValue::isSubsetOf): Deleted.
(JSC::DFG::StructureAbstractValue::doesNotContainAnyOtherThan): Deleted.
(JSC::DFG::StructureAbstractValue::isClearOrTop): Deleted.
(JSC::DFG::StructureAbstractValue::last): Deleted.
(JSC::DFG::StructureAbstractValue::speculationFromStructures): Deleted.
(JSC::DFG::StructureAbstractValue::isValidOffset): Deleted.
(JSC::DFG::StructureAbstractValue::hasSingleton): Deleted.
(JSC::DFG::StructureAbstractValue::singleton): Deleted.
(JSC::DFG::StructureAbstractValue::dumpInContext): Deleted.
(JSC::DFG::StructureAbstractValue::dump): Deleted.
(JSC::DFG::StructureAbstractValue::topValue): Deleted.
- dfg/DFGStructureClobberState.h: Added.
(JSC::DFG::merge):
(WTF::printInternal):
- dfg/DFGTransition.cpp: Added.
(JSC::DFG::Transition::dumpInContext):
(JSC::DFG::Transition::dump):
- dfg/DFGTransition.h: Added.
(JSC::DFG::Transition::Transition):
- dfg/DFGTypeCheckHoistingPhase.cpp:
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):
- dfg/DFGWatchableStructureWatchingPhase.cpp: Added.
(JSC::DFG::WatchableStructureWatchingPhase::WatchableStructureWatchingPhase):
(JSC::DFG::WatchableStructureWatchingPhase::run):
(JSC::DFG::WatchableStructureWatchingPhase::tryWatch):
(JSC::DFG::performWatchableStructureWatching):
- dfg/DFGWatchableStructureWatchingPhase.h: Added.
- dfg/DFGWatchpointCollectionPhase.cpp:
(JSC::DFG::WatchpointCollectionPhase::handle):
(JSC::DFG::WatchpointCollectionPhase::handleEdge): Deleted.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::ftlUnreachable):
(JSC::FTL::LowerDFGToLLVM::createPhiVariables):
(JSC::FTL::LowerDFGToLLVM::compileBlock):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileUpsilon):
(JSC::FTL::LowerDFGToLLVM::compilePhi):
(JSC::FTL::LowerDFGToLLVM::compileDoubleRep):
(JSC::FTL::LowerDFGToLLVM::compileValueRep):
(JSC::FTL::LowerDFGToLLVM::compileValueToInt32):
(JSC::FTL::LowerDFGToLLVM::compileGetArgument):
(JSC::FTL::LowerDFGToLLVM::compileGetLocal):
(JSC::FTL::LowerDFGToLLVM::compileSetLocal):
(JSC::FTL::LowerDFGToLLVM::compileArithAddOrSub):
(JSC::FTL::LowerDFGToLLVM::compileArithMul):
(JSC::FTL::LowerDFGToLLVM::compileArithDiv):
(JSC::FTL::LowerDFGToLLVM::compileArithMod):
(JSC::FTL::LowerDFGToLLVM::compileArithMinOrMax):
(JSC::FTL::LowerDFGToLLVM::compileArithAbs):
(JSC::FTL::LowerDFGToLLVM::compileArithNegate):
(JSC::FTL::LowerDFGToLLVM::compileArrayifyToStructure):
(JSC::FTL::LowerDFGToLLVM::compilePutStructure):
(JSC::FTL::LowerDFGToLLVM::compileGetById):
(JSC::FTL::LowerDFGToLLVM::compileGetMyArgumentsLength):
(JSC::FTL::LowerDFGToLLVM::compileGetMyArgumentByVal):
(JSC::FTL::LowerDFGToLLVM::compileGetArrayLength):
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
(JSC::FTL::LowerDFGToLLVM::compileArrayPush):
(JSC::FTL::LowerDFGToLLVM::compileArrayPop):
(JSC::FTL::LowerDFGToLLVM::compileNewArray):
(JSC::FTL::LowerDFGToLLVM::compileNewArrayBuffer):
(JSC::FTL::LowerDFGToLLVM::compileAllocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::compileReallocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::compileToString):
(JSC::FTL::LowerDFGToLLVM::compileMakeRope):
(JSC::FTL::LowerDFGToLLVM::compileMultiGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compileMultiPutByOffset):
(JSC::FTL::LowerDFGToLLVM::compileCompareEq):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEq):
(JSC::FTL::LowerDFGToLLVM::compileSwitch):
(JSC::FTL::LowerDFGToLLVM::compare):
(JSC::FTL::LowerDFGToLLVM::boolify):
(JSC::FTL::LowerDFGToLLVM::terminate):
(JSC::FTL::LowerDFGToLLVM::lowInt32):
(JSC::FTL::LowerDFGToLLVM::lowInt52):
(JSC::FTL::LowerDFGToLLVM::opposite):
(JSC::FTL::LowerDFGToLLVM::lowCell):
(JSC::FTL::LowerDFGToLLVM::lowBoolean):
(JSC::FTL::LowerDFGToLLVM::lowDouble):
(JSC::FTL::LowerDFGToLLVM::lowJSValue):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::isArrayType):
(JSC::FTL::LowerDFGToLLVM::speculateStringObjectForStructureID):
(JSC::FTL::LowerDFGToLLVM::callCheck):
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode):
(JSC::FTL::LowerDFGToLLVM::setInt52):
(JSC::FTL::LowerDFGToLLVM::crash):
(JSC::FTL::LowerDFGToLLVM::compileStructureTransitionWatchpoint): Deleted.
- ftl/FTLOutput.cpp:
(JSC::FTL::Output::crashNonTerminal): Deleted.
- ftl/FTLOutput.h:
(JSC::FTL::Output::crash): Deleted.
- jit/JITOperations.h:
- jsc.cpp:
(WTF::jscExit):
(functionQuit):
(main):
(printUsageStatement):
(CommandLine::parseArguments):
- runtime/Structure.h:
(JSC::Structure::dfgShouldWatchIfPossible):
(JSC::Structure::dfgShouldWatch):
- tests/stress/arrayify-to-structure-contradiction.js: Added.
(foo):
- tests/stress/ftl-getmyargumentslength-inline.js: Added.
(foo):
- tests/stress/multi-put-by-offset-multiple-transitions.js: Added.
(foo):
(Foo):
- tests/stress/throw-from-ftl-in-loop.js: Added.
- tests/stress/throw-from-ftl.js: Added.
(foo):
Source/WTF:
- wtf/Bag.h:
(WTF::Bag::Node::Node):
(WTF::Bag::add):
LayoutTests:
- js/regress/get-by-id-bimorphic-check-structure-elimination-expected.txt: Added.
- js/regress/get-by-id-bimorphic-check-structure-elimination-simple-expected.txt: Added.
- js/regress/get-by-id-bimorphic-check-structure-elimination-simple.html: Added.
- js/regress/get-by-id-bimorphic-check-structure-elimination.html: Added.
- js/regress/get-by-id-check-structure-elimination-expected.txt: Added.
- js/regress/get-by-id-check-structure-elimination.html: Added.
- js/regress/get-by-id-quadmorphic-check-structure-elimination-simple-expected.txt: Added.
- js/regress/get-by-id-quadmorphic-check-structure-elimination-simple.html: Added.
- js/regress/script-tests/get-by-id-bimorphic-check-structure-elimination-simple.js: Added.
- js/regress/script-tests/get-by-id-bimorphic-check-structure-elimination.js: Added.
- js/regress/script-tests/get-by-id-check-structure-elimination.js: Added.
- js/regress/script-tests/get-by-id-quadmorphic-check-structure-elimination-simple.js: Added.
- 10:10 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 9:24 AM Changeset in webkit [169587] by
-
- 2 edits in trunk/Source/WebCore
WebKit should adopt journal_mode=wal for all SQLite databases.
<https://webkit.org/b/133496>
<rdar://problem/15600186>
We already had code to enable write-ahead logging, but it didn't work
since calling SQLiteStatement::step() without first calling prepare()
is a no-op.
Converted it to use into a simple executeCommand() instead.
Reviewed by Brady Eidson.
- platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::open):
- 5:41 AM Changeset in webkit [169586] by
-
- 3 edits2 adds in trunk
REGRESSION: [CSS Regions] Regions with overflow:auto generate scrollbars even if the content flows into the following regions and as such, should not be scrolled
https://bugs.webkit.org/show_bug.cgi?id=133481
Reviewed by Antti Koivisto.
Source/WebCore:
When enlarging the layout overflow of a scrollable region, the portion of the content that flows
in the region must be taken into consideration. If the content continues to flow into the next
region, the layout overflow of the current region must not be enlarged.
Test: fast/regions/scrollable-first-region.html
- rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):
LayoutTests:
Added test for a large item flowed through two regions with the first region having overflow:auto.
The region must NOT scroll.
- fast/regions/scrollable-first-region-expected.html: Added.
- fast/regions/scrollable-first-region.html: Added.
- 12:25 AM Changeset in webkit [169585] by
-
- 7 edits in trunk
Fix some corner cases of :hover and :active in quirks mode
https://bugs.webkit.org/show_bug.cgi?id=133493
Reviewed by Andreas Kling.
Source/WebCore:
Previously, the quirks mode of :hover and :active were evaluated from the SelectorFragment
in fragmentOnlyMatchesLinksInQuirksMode(). There were two problems with that approach:
1) The FragmentGenerator optimizes out some filter when they always match or can never match.
Those fragment should still qualify :hover and :active, but they were lost
for fragmentOnlyMatchesLinksInQuirksMode().
2) Explicitely listing every attribute of SelectorFragment in fragmentOnlyMatchesLinksInQuirksMode()
was extremly fragile. When :not() and :-webkit-any() were added, we forgot to update the quirks
exceptions.
This patch moves the quirks mode exception code from the code generator to the Fragment generator.
The useless filters are no longer ignored for the quirks, and we don't need to update the quirks mode detection
with every change of SelectorFragment.
It is inefficient and ugly, but that is how that quirks is defined. It is only a problem for compilation,
execution time remains unchanged.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::pseudoClassOnlyMatchesLinksInQuirksMode):
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSpecialFailureInQuirksModeForActiveAndHoverIfNeeded):
(WebCore::SelectorCompiler::fragmentOnlyMatchesLinksInQuirksMode): Deleted.
LayoutTests:
Add test case for the corner cases.
- fast/selectors/active-hover-quirks-expected.txt:
- fast/selectors/active-quirks-expected.txt:
- fast/selectors/hover-quirks-expected.txt:
- fast/selectors/resources/hover-active-quirks-utility.js:
Jun 3, 2014:
- 9:47 PM Changeset in webkit [169584] by
-
- 28 edits1 add5 deletes in branches/ftlopt/Source/JavaScriptCore
[ftlopt] Unreviewed, roll out r169578. The build system needs some more love.
- InlineRuntimeSymbolTable.h: Removed.
- JavaScriptCore.xcodeproj/project.pbxproj:
- build-symbol-table-index.py:
- build-symbol-table-index.sh:
- copy-llvm-ir-to-derived-sources.sh:
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleCall):
- dfg/DFGNode.h:
(JSC::DFG::Node::canBeKnownFunction): Deleted.
(JSC::DFG::Node::hasKnownFunction): Deleted.
(JSC::DFG::Node::knownFunction): Deleted.
(JSC::DFG::Node::giveKnownFunction): Deleted.
- ftl/FTLAbbreviatedTypes.h:
- ftl/FTLCompile.cpp:
(JSC::FTL::compile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall): Deleted.
(JSC::FTL::LowerDFGToLLVM::getFunctionBySymbol): Deleted.
(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol): Deleted.
(JSC::FTL::LowerDFGToLLVM::isInlinableSize): Deleted.
- ftl/FTLState.cpp:
(JSC::FTL::State::State):
- ftl/FTLState.h:
- heap/HandleStack.h:
- llvm/InitializeLLVM.h:
- llvm/InitializeLLVMMac.cpp: Removed.
- llvm/InitializeLLVMMac.mm: Added.
(JSC::initializeLLVMImpl):
- llvm/LLVMAPIFunctions.h:
- llvm/LLVMHeaders.h:
- runtime/BundlePath.h: Removed.
- runtime/BundlePath.mm: Removed.
- runtime/DateConversion.h:
- runtime/DateInstance.h:
- runtime/ExceptionHelpers.h:
- runtime/JSArray.h:
- runtime/JSCJSValue.h:
(JSC::JSValue::toFloat):
- runtime/JSDateMath.h:
- runtime/JSObject.h:
- runtime/JSWrapperObject.h:
- runtime/Options.h:
- runtime/RegExp.h:
- runtime/StringObject.h:
- runtime/Structure.h:
- tested-symbols.symlst: Removed.
- 9:34 PM Changeset in webkit [169583] by
-
- 1 copy in tags/Safari-538.38
Tagging Safari-538.38
- 9:28 PM Changeset in webkit [169582] by
-
- 7 edits2 moves2 adds7 deletes in branches/ftlopt
[ftlopt] FTL native inlining tests take far too long
https://bugs.webkit.org/show_bug.cgi?id=133498
Unreviewed test gardening.
Source/JavaScriptCore:
Added a new exceptions test since the other one appears to not work.
- tests/stress/ftl-library-exception.js:
- tests/stress/ftl-library-inline-gettimezoneoffset.js: Added.
(foo):
- tests/stress/ftl-library-inlining-exceptions-dataview.js: Added.
(foo):
- tests/stress/ftl-library-inlining-exceptions.js: Copied from LayoutTests/js/regress/script-tests/ftl-library-inlining-exceptions.js.
- tests/stress/ftl-library-inlining-loops.js: Copied from LayoutTests/js/regress/script-tests/ftl-library-inlining-loops.js.
- tests/stress/ftl-library-inlining-random.js:
- tests/stress/ftl-library-substring.js:
LayoutTests:
Move long-running tests that focus on correctness into JSC/tests/stress.
Speed up the performance tests by reducing allocation and call overhead.
- js/regress/ftl-library-inlining-exceptions-expected.txt: Removed.
- js/regress/ftl-library-inlining-exceptions.html: Removed.
- js/regress/ftl-library-inlining-folding-expected.txt: Removed.
- js/regress/ftl-library-inlining-folding.html: Removed.
- js/regress/ftl-library-inlining-loops-expected.txt: Removed.
- js/regress/ftl-library-inlining-loops.html: Removed.
- js/regress/script-tests/ftl-library-inlining-dataview.js:
(foo): Deleted.
- js/regress/script-tests/ftl-library-inlining-exceptions.js: Removed.
- js/regress/script-tests/ftl-library-inlining-folding.js: Removed.
- js/regress/script-tests/ftl-library-inlining-loops.js: Removed.
- js/regress/script-tests/ftl-library-inlining.js:
(foo): Deleted.
- 9:22 PM Changeset in webkit [169581] by
-
- 5 edits in branches/safari-537.77-branch/Source
Version bump.
- 9:12 PM Changeset in webkit [169580] by
-
- 1 copy in tags/Safari-537.77.4
Tagging
- 8:33 PM Changeset in webkit [169579] by
-
- 11 edits in trunk
Need to check invalid scheme in navigator content utils
https://bugs.webkit.org/show_bug.cgi?id=133296
Reviewed by Darin Adler.
Source/WebCore:
- Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::verifyProtocolHandlerScheme): Just fix a wrong typo.
LayoutTests:
Add tests that check that schemes with colons in their names are rejected.
Spec: http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers
- fast/dom/NavigatorContentUtils/is-protocol-handler-registered-expected.txt:
- fast/dom/NavigatorContentUtils/is-protocol-handler-registered.html:
- fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
- fast/dom/NavigatorContentUtils/register-protocol-handler.html:
- fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:
- fast/dom/NavigatorContentUtils/unregister-protocol-handler.html:
- platform/efl/fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
- platform/efl/fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:
- 7:50 PM Changeset in webkit [169578] by
-
- 29 edits23 adds1 delete in branches/ftlopt
[ftlopt] Added system for inlining native functions via the FTL.
https://bugs.webkit.org/show_bug.cgi?id=131515
Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-03
Reviewed by Filip Pizlo.
Source/JavaScriptCore:
Also fixed the build to not compress the bitcode and to
include all of the relevant runtime. With GCC_GENERATE_DEBUGGING_SYMBOLS = NO,
the produced bitcode files are a 100th the size they were before.
Now we can include all of the relevant runtime files with only a 3mb overhead.
This is the same overhead as for two compressed files before,
but done more efficiently (on both ends) and with less code.
Deciding whether to inline native functions is left up to LLVM.
The entire module containing the function is linked into the current
compiled JS so that inlining the native functions shouldn't make them smaller.
Rather than loading Runtime.symtbl at runtime FTLState.cpp now includes a file
InlineRuntimeSymbolTable.h which statically builds the symbol table hash table.
Currently build-symbol-table-index.py updates this file from the
contents of tested-symbols.symlst when done building as a matter of convenience.
However, in order to include the new contents of the file in the build
you'd need to build twice. This will be fixed in future versions.
- JavaScriptCore.xcodeproj/project.pbxproj: Added back runtime files to compile.
- build-symbol-table-index.py: Changed bitcode suffix.
Added inclusion of only tested symbols.
Added output to InlineRuntimeSymbolTable.h.
- build-symbol-table-index.sh: Changed bitcode suffix.
- copy-llvm-ir-to-derived-sources.sh: Removed gzip compression.
- tested-symbols.symlst: Added.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleCall):
Now sets the knownFunction of the call node if such a function exists
and emits a check that during runtime the callee is in fact known.
- dfg/DFGNode.h:
Added functions to set the known function of a call node.
(JSC::DFG::Node::canBeKnownFunction): Added.
(JSC::DFG::Node::hasKnownFunction): Added.
(JSC::DFG::Node::knownFunction): Added.
(JSC::DFG::Node::giveKnownFunction): Added.
- ftl/FTLAbbreviatedTypes.h: Added a typedef for LLVMMemoryBufferRef
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::isInlinableSize): Added. Hardcoded threshold to 275.
(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol): Added.
(JSC::FTL::LowerDFGToLLVM::getFunctionBySymbol): Added.
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall): Added.
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
Added call to possiblyCompileInlineableNativeCall
- ftl/FTLOutput.h:
(JSC::FTL::Output::allocaName): Added. Useful for debugging.
- ftl/FTLState.cpp:
(JSC::FTL::State::State): Added an include for InlineRuntimeSymbolTable.h
- ftl/FTLState.h: Added symbol table hash table.
- ftl/FTLCompile.cpp:
(JSC::FTL::compile): Added inlining and dead function elimination passes.
- heap/HandleStack.h: Added JS_EXPORT_PRIVATE to a few functions to get inlining to compile.
- InlineRuntimeSymbolTable.h: Added.
- llvm/InitializeLLVMMac.mm: Deleted.
- llvm/InitializeLLVMMac.cpp: Added.
- llvm/LLVMAPIFunctions.h: Added macros to include Bitcode parsing and linking functions.
- llvm/LLVMHeaders.h: Added includes for Bitcode parsing and linking.
- runtime/BundlePath.h: Added.
- runtime/BundlePath.mm: Added.
- runtime/DateInstance.h: Added JS_EXPORT_PRIVATE to a few functions to get inlining to compile.
- runtime/DateInstance.h: ditto.
- runtime/DateConversion.h: ditto.
- runtime/ExceptionHelpers.h: ditto.
- runtime/JSCJSValue.h: ditto.
- runtime/JSArray.h: ditto.
- runtime/JSDateMath.h: ditto.
- runtime/JSObject.h: ditto.
- runtime/JSObject.h: ditto.
- runtime/RegExp.h: ditto.
- runtime/Structure.h: ditto.
- runtime/Options.h: Added maximumLLVMInstructionCountForNativeInlining.
- tests/stress/ftl-library-inlining-random.js: Added.
- tests/stress/ftl-library-substring.js: Added.
LayoutTests:
Adds microbenchmarks.
- js/regress/script-tests/ftl-library-inlining.js: Added.
- js/regress/ftl-library-inlining-expected.txt: Added.
- js/regress/ftl-library-inlining.html: Added.
- js/regress/script-tests/ftl-library-inlining-dataview.js: Added.
- js/regress/ftl-library-inlining-dataview-expected.txt: Added.
- js/regress/ftl-library-inlining-dataview.html: Added.
- js/regress/script-tests/ftl-library-inlining-exceptions.js: Added.
- js/regress/ftl-library-inlining-exceptions-expected.txt: Added.
- js/regress/ftl-library-inlining-exceptions.html: Added.
- js/regress/script-tests/ftl-library-inlining-folding.js: Added.
- js/regress/ftl-library-inlining-folding-expected.txt: Added.
- js/regress/ftl-library-inlining-folding-expected.html: Added.
- js/regress/script-tests/ftl-library-inlining-loops.js: Added.
- js/regress/ftl-library-inlining-loops-expected.txt: Added.
- js/regress/ftl-library-inlining-loops.html: Added.
- 7:08 PM Changeset in webkit [169577] by
-
- 5 edits in branches/safari-537.77-branch/Source
Bump version to 537.77.4
- 6:27 PM Changeset in webkit [169576] by
-
- 5 edits in trunk/Source
WebKit2 View Gestures (Zoom): Can show unpainted regions when zoom-pinching-out
https://bugs.webkit.org/show_bug.cgi?id=133472
<rdar://problem/15686848>
Reviewed by Simon Fraser.
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToLayers):
(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
Use prepopulateRect() when zooming out to ensure that we have tiles for the current exposed area.
Factor applyTransientZoomToLayers out of adjustTransientZoom, so that
flushLayers can call applyTransientZoomToLayers without ending up calling prepopulateRect()
during layer flushing, which causes trouble.
It is OK to populate layers at the current scale even when zooming out, because the overdraw
already covers most of the zoomed out area, and we're only adding a few more tiles at worst.
- WebCore.exp.in:
- 4:01 PM Changeset in webkit [169575] by
-
- 9 edits in branches/safari-537.77-branch/Source/WebCore
Back out r169227
- 3:50 PM Changeset in webkit [169574] by
-
- 2 edits in trunk/Tools
Add myself (yoav@yoav.ws) to contributors.json
- 3:44 PM Changeset in webkit [169573] by
-
- 9 edits2 adds in trunk/Source/WebCore
Refactor the srcset parser into its own file
https://bugs.webkit.org/show_bug.cgi?id=133480
Reviewed by Andreas Kling.
No new tests, since this patch doesn't change the parser's behavior.
This patch moves the srcset parser into its own file,
in order to prepare the code for alignment with recent spec changes.
- CMakeLists.txt:
- html/HTMLImageElement.cpp:
- html/parser/HTMLParserIdioms.cpp:
(WebCore::compareByScaleFactor): Deleted.
(WebCore::parseDescriptors): Deleted.
(WebCore::parseImagesWithScaleFromSrcsetAttribute): Deleted.
(WebCore::bestFitSourceForImageAttributes): Deleted.
- html/parser/HTMLParserIdioms.h:
(WebCore::ImageWithScale::ImageWithScale): Deleted.
(WebCore::ImageWithScale::imageURL): Deleted.
(WebCore::ImageWithScale::scaleFactor): Deleted.
- html/parser/HTMLPreloadScanner.cpp:
- html/parser/HTMLSrcsetParser.cpp: Added.
(WebCore::compareByScaleFactor):
(WebCore::parseDescriptors):
(WebCore::parseImagesWithScaleFromSrcsetAttribute):
(WebCore::bestFitSourceForImageAttributes):
- html/parser/HTMLSrcsetParser.h: Added.
(WebCore::ImageWithScale::ImageWithScale):
(WebCore::ImageWithScale::imageURL):
(WebCore::ImageWithScale::scaleFactor):
- 2:38 PM Changeset in webkit [169572] by
-
- 2 edits in trunk/Source/WebCore
[ATK] accessibility/textarea-selected-text-range.html is failing
https://bugs.webkit.org/show_bug.cgi?id=133479
Reviewed by Chris Fleizach.
Implement atk_text_set_caret_offset() in terms of
atk_text_set_selection() for zero-length selections.
No new tests needed, the following test should just start
passing again now: accessibility/textarea-selected-text-range.html.
- accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextSetCaretOffset): Reimplemented this function
in terms of webkitAccessibleTextSetSelection().
- 2:37 PM Changeset in webkit [169571] by
-
- 2 edits in trunk/Source/WebCore
Corrected arm64 assertion in css jit.
Rubber stamped by Benjamin Poulain.
- cssjit/StackAllocator.h:
(WebCore::StackAllocator::pop):
Changed assertion from incorrectly matching x86_64 to using the correct minimum offset,
taking into account that a stackUnitInBytes is used for two registers on arm64
except the last stack unit, which could only be used for one register if there are
an odd number of registers.
- 2:31 PM Changeset in webkit [169570] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Start ignoring common bogus viewport parameters
https://bugs.webkit.org/show_bug.cgi?id=133466
<rdar://problem/16203396>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-03
Reviewed by Sam Weinig.
Incorrect viewports are spreading really quickly lately. We have to start ignoring
some combinations of arguments as they are almost always used incorrectly, causing
a poor user experience on those websites.
- dom/ViewportArguments.cpp:
(WebCore::finalizeViewportArguments):
- 2:26 PM Changeset in webkit [169569] by
-
- 3 edits2 adds in trunk
CSS JIT: add support for the "any" pseudo class
https://bugs.webkit.org/show_bug.cgi?id=133473
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-06-03
Reviewed by Benjamin Poulain.
Add support for the :any pseudo class.
Source/WebCore:
Test: fast/selectors/pseudo-class-any.html
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::minimumRegisterRequirements):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesAnyPseudoClass):
LayoutTests:
- fast/selectors/pseudo-class-any-expected.txt: Added.
- fast/selectors/pseudo-class-any.html: Added.
- 2:09 PM Changeset in webkit [169568] by
-
- 17 edits in trunk
Update PlatformTimeRanges to use MediaTime rather than doubles for time values.
https://bugs.webkit.org/show_bug.cgi?id=133454
Reviewed by Eric Carlson.
Source/WebCore:
PlatformTimeRanges will now use MediaTime, so operations at the platform level won't
lose precision when converting to and from doubles and rational time values like CMTime.
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::currentTimeFudgeFactor):
(WebCore::SourceBuffer::hasCurrentTime):
(WebCore::SourceBuffer::hasFutureTime):
(WebCore::SourceBuffer::canPlayThrough):
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- html/TimeRanges.cpp:
(WebCore::TimeRanges::TimeRanges):
(WebCore::TimeRanges::start):
(WebCore::TimeRanges::end):
(WebCore::TimeRanges::add):
(WebCore::TimeRanges::contain):
(WebCore::TimeRanges::find):
(WebCore::TimeRanges::nearest):
(WebCore::TimeRanges::totalDuration):
- platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::seekable):
- platform/graphics/PlatformTimeRanges.cpp:
(WebCore::PlatformTimeRanges::create):
(WebCore::PlatformTimeRanges::PlatformTimeRanges):
(WebCore::PlatformTimeRanges::invert):
(WebCore::PlatformTimeRanges::start):
(WebCore::PlatformTimeRanges::end):
(WebCore::PlatformTimeRanges::add):
(WebCore::PlatformTimeRanges::contain):
(WebCore::PlatformTimeRanges::find):
(WebCore::PlatformTimeRanges::nearest):
(WebCore::PlatformTimeRanges::totalDuration):
- platform/graphics/PlatformTimeRanges.h:
(WebCore::PlatformTimeRanges::Range::Range):
(WebCore::PlatformTimeRanges::Range::isPointInRange):
- platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost):
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformBufferedTimeRanges):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered): Deleted.
- platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::buffered):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::buffered):
- platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::advanceCurrentTime):
LayoutTests:
Update the video-pause-immediately to allow for small floating point differences.
- media/video-pause-immediately-expected.txt:
- media/video-pause-immediately.html:
- 1:59 PM Changeset in webkit [169567] by
-
- 7 edits in trunk/Source
[iOS][WK2] Align the highlight rects with device pixels
https://bugs.webkit.org/show_bug.cgi?id=133464
Source/WebCore:
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-03
Reviewed by Enrica Casucci.
Add utility functions to pixel align points and rects.
- WebCore.exp.in:
- platform/graphics/FloatPoint.h:
(WebCore::flooredToDevicePixels):
(WebCore::ceiledToDevicePixels):
- platform/graphics/FloatRect.cpp:
(WebCore::enclosingRectExtendedToDevicePixels):
- platform/graphics/FloatRect.h:
Source/WebKit2:
<rdar://problem/16708861>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-03
Reviewed by Enrica Casucci.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _showTapHighlightWithColor:WebCore::quads:WebCore::topLeftRadius:WebCore::topRightRadius:WebCore::bottomLeftRadius:WebCore::bottomRightRadius:WebCore::]):
- 1:13 PM Changeset in webkit [169566] by
-
- 2 edits in trunk/Websites/planet.webkit.org
Add Igalia WebKit blog to the planet
https://bugs.webkit.org/show_bug.cgi?id=133446
Reviewed by Bem Jones-Bey.
- config.ini: Add Igalia WebKit blog to the planet and remove Martin's
and Xan's blogs as they will be included there.
- 11:59 AM Changeset in webkit [169565] by
-
- 4 edits in trunk/Source/WebCore
Prepopulated tiles may never be unparented from TileGrids with aggressive tile retention on
https://bugs.webkit.org/show_bug.cgi?id=133471
Reviewed by Simon Fraser.
- platform/graphics/ca/mac/TileController.h:
- platform/graphics/ca/mac/TileGrid.h:
(WebCore::TileGrid::TileCohortInfo::TileCohortInfo):
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::TileCohortInfo::timeUntilExpiration):
(WebCore::TileGrid::cohortRemovalTimerFired):
Factor timeUntilExpiration() out of cohortRemovalTimerFired().
(WebCore::TileGrid::revalidateTiles):
Ensure that secondary tiles that never touch the primary coverage rect
are still unparented eventually (after 2 seconds, the same lifetime we use
for cohorts in non-aggressive retention).
Schedule another revalidateTiles if we left parented secondary tiles behind.
- 11:13 AM Changeset in webkit [169564] by
-
- 3 edits in trunk/Source/WebCore
TileGrid::prepopulateRect populates the wrong tiles if scale != 1
https://bugs.webkit.org/show_bug.cgi?id=133470
Reviewed by Simon Fraser.
- page/FrameView.cpp:
(WebCore::FrameView::requestScrollPositionUpdate):
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::prepopulateRect):
(WebCore::TileGrid::revalidateTiles):
prepopulateRect takes rects in "content" coordinates, but when later passed to
ensureTilesForRect, they're expected to be in the same coordinate space as the layer's
visible rect, and are scaled up. So, apply the inverse scale to counter that.
- 11:12 AM Changeset in webkit [169563] by
-
- 5 edits in trunk/Source/WebCore
Minor TileCoverageMap refinements
https://bugs.webkit.org/show_bug.cgi?id=133468
Reviewed by Simon Fraser.
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::setContentsScale):
- platform/graphics/ca/mac/TileCoverageMap.h:
- platform/graphics/ca/mac/TileCoverageMap.mm:
(WebCore::TileCoverageMap::TileCoverageMap):
(WebCore::TileCoverageMap::setDeviceScaleFactor):
Keep the TileCoverageMap's contentsScale at the device scale factor, so that it
looks sharp on non-1x displays.
(WebCore::TileCoverageMap::update):
Decrease the height available for the TileCoverageMap by the topContentInset;
it's already being vertically offset by the topContentInset, but the height was
not adjusted, so it would run off the bottom of the window.
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::drawTileMapContents):
If using aggressive tile retention (and thus not coloring tiles based on age),
dim tiles that aren't in the visible cohort.
- 11:11 AM Changeset in webkit [169562] by
-
- 4 edits in trunk/Source/WebCore
Fix a typo, TileGrid::updateTilerLayerProperties
https://bugs.webkit.org/show_bug.cgi?id=133474
Reviewed by Anders Carlsson.
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::setAcceleratesDrawing):
(WebCore::TileController::setTilesOpaque):
(WebCore::TileController::setTileDebugBorderWidth):
(WebCore::TileController::setTileDebugBorderColor):
- platform/graphics/ca/mac/TileGrid.h:
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::updateTileLayerProperties):
(WebCore::TileGrid::updateTilerLayerProperties):
s/updateTilerLayerProperties/updateTileLayerProperties/g
- 10:52 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 9:42 AM Changeset in webkit [169561] by
-
- 2 edits in trunk/Source/JavaScriptCore
LLVM soft-linking should be truly fail-silent
https://bugs.webkit.org/show_bug.cgi?id=133482
Reviewed by Mark Lam.
- llvm/InitializeLLVMPOSIX.cpp:
(JSC::initializeLLVMPOSIX): Missing return statement in the dlsym() returning null case.
- 5:04 AM Changeset in webkit [169560] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] ResourceLoadTiming.responseStart is always 0
https://bugs.webkit.org/show_bug.cgi?id=133469
Reviewed by Sergio Villar Senin.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::sendRequestCallback): Record the responseStart time.
- 4:40 AM Changeset in webkit [169559] by
-
- 8 edits in trunk
REGRESSION(r169092 and r169102): Skip failing JSC tests poperly on non-x86 Darwin platforms
https://bugs.webkit.org/show_bug.cgi?id=133149
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-03
Reviewed by Csaba Osztrogonác.
PerformanceTests/SunSpider:
- profiler-test.yaml: Skip profiler tests only if the architecture isn't x86 and the host is Darwin.
Source/JavaScriptCore:
- tests/mozilla/mozilla-tests.yaml: Skip js1_5/Regress/regress-159334.js only if the architecture isn't x86 and the host is Darwin.
Tools:
- Scripts/run-jsc-stress-tests: Added determineOS to determine the host operating system the script run on.
LayoutTests:
- js/script-tests/function-apply-many-args.js: Skip it only if the architecture isn't x86 and the host is Darwin.
Jun 2, 2014:
- 11:51 PM Changeset in webkit [169558] by
-
- 3 edits in trunk/Tools
Add a verbose flag to binding tests
https://bugs.webkit.org/show_bug.cgi?id=122303
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-06-02
Reviewed by Csaba Osztrogonác.
This patch will:
- Add a verbose keyword argument to the BindingsTests constructor,
- Add --no-verbose option to the run-bindigs-test.
Verbose mode, which is on by default, prints positive results to stdout as before.
When the --no-verbose option added to run-bindings-tests, positive results are not printed at all.
Original patch from Matthew Hanson <matthew_hanson@apple.com>
- Scripts/run-bindings-tests:
(main):
- Scripts/webkitpy/bindings/main.py:
(BindingsTests.init):
(BindingsTests.detect_changes):
- 10:47 PM Changeset in webkit [169557] by
-
- 11 edits in trunk/LayoutTests
Unreviewed EFL gardening. Rebaseline after r169522.
- platform/efl/svg/W3C-SVG-1.1/animate-elem-32-t-expected.png:
- platform/efl/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.png:
- platform/efl/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.png:
- platform/efl/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.png:
- platform/efl/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png:
- svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt:
- 9:59 PM Changeset in webkit [169556] by
-
- 5 edits in trunk/LayoutTests
Unreviewed EFL gardening. Rebaseline.
- platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt:
- platform/efl/mathml/opentype/opentype-stretchy-expected.txt:
- platform/efl/mathml/opentype/vertical-LatinModern-expected.txt:
- platform/efl/mathml/presentation/mo-stretch-expected.txt:
- 7:04 PM Changeset in webkit [169555] by
-
- 1 edit1 move in trunk/LayoutTests
Unreviewed EFL gardening.
Move the EFL specific test result to platform directory.
- platform/efl/fast/events/ghostly-mousemoves-in-subframe-expected.txt: Renamed from LayoutTests/fast/events/ghostly-mousemoves-in-subframe-expected.txt.
- 6:59 PM Changeset in webkit [169554] by
-
- 1 edit3 adds in trunk/LayoutTests
Unreviewed EFL gardening.
Added expectation result after r167684, r169257, and r169390.
- fast/events/ghostly-mousemoves-in-subframe-expected.txt: Added.
- platform/efl/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.txt: Added.
- platform/efl/fast/multicol/pagination/nested-transforms-expected.txt: Added.
- 6:26 PM Changeset in webkit [169553] by
-
- 3 edits in trunk/Source/WebKit2
REGRESSION (iOS WebKit2): Single tap in pages with focus on load will clear the selection after the keyboard appears.
https://bugs.webkit.org/show_bug.cgi?id=133465
<rdar://problem/17059189>
Reviewed by Benjamin Poulain.
If a page focuses an input field on load we don't bring the keyboard on screen
since the keyboard is only shown when the user interacts with the page with gestures.
Still the WebProcess sets the focus and the selection according to the rules.
We need to make sure the UI process doesn't accidentally clear this selection
when the user starts the interaction with the page.
This patch also improves the function that retrieves the autocorrection data
to be returned to the keyboard, making sure that we always send back a reply
even when we don't have a valid selection.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _singleTapCommited:]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestAutocorrectionData):
- 6:15 PM Changeset in webkit [169552] by
-
- 2 edits in trunk/WebKitLibraries
Error running copy-webkitlibraries-to-product-directory
<http://webkit.org/b/133449>
<rdar://problem/17047638>
Reviewed by Filip Pizlo.
- Makefile: Ignore the mysterious future. Use "@true" to
suppress the annoying "Nothing to be done for `libs'." message.
- 5:37 PM Changeset in webkit [169551] by
-
- 2 edits in trunk/Source/WebCore
[iOS] WebCore fails to build: platform/network/mac/ResourceHandleMac.mm:729:62: error: use of undeclared identifier '_CFURLConnectionCopyTimingData'
<http://webkit.org/b/133445>
<rdar://problem/17090035>
Reviewed by Alexey Proskuryakov.
- platform/network/mac/ResourceHandleMac.mm: Attempt to fix the
build by including a private header and local declaration.
- 4:44 PM Changeset in webkit [169550] by
-
- 25 edits in trunk/Source
Change DeferrableOneShotTimer to use std::function instead of being a class template
https://bugs.webkit.org/show_bug.cgi?id=133423
Reviewed by Antti Koivisto.
Source/WebCore:
Also, add a new constructor to DeferrableOneShotTimer that takes an std::function. Change the callback
to not pass a DeferrableOneShotTimer& anymore. Change the delay parameter to use std::chrono::milliseconds.
- css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::evictionTimerFired):
- css/CSSImageGeneratorValue.h:
- html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired):
- html/HTMLPlugInImageElement.h:
- loader/cache/CachedResource.cpp:
(WebCore::deadDecodedDataDeletionIntervalForResourceType):
(WebCore::CachedResource::destroyDecodedDataIfNeeded):
(WebCore::CachedResource::decodedDataDeletionTimerFired):
- loader/cache/CachedResource.h:
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::MemoryCache):
- loader/cache/MemoryCache.h:
(WebCore::MemoryCache::setDeadDecodedDataDeletionInterval):
(WebCore::MemoryCache::deadDecodedDataDeletionInterval):
- platform/Timer.h:
(WebCore::Timer::Timer):
(WebCore::DeferrableOneShotTimer::DeferrableOneShotTimer):
- platform/graphics/cg/SubimageCacheWithTimer.cpp:
(WebCore::SubimageCacheWithTimer::invalidateCacheTimerFired):
- platform/graphics/cg/SubimageCacheWithTimer.h:
Source/WebKit/mac:
- WebView/WebView.mm:
(+[WebView _setCacheModel:]):
Source/WebKit2:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformSetCacheModel):
- Shared/CacheModel.cpp:
(WebKit::calculateCacheSizes):
- Shared/CacheModel.h:
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pluginSnapshotTimerFired):
- WebProcess/Plugins/PluginView.h:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformSetCacheModel):
- 3:18 PM Changeset in webkit [169549] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Round the UIScrollView content size to device pixel
https://bugs.webkit.org/show_bug.cgi?id=133417
<rdar://problem/15922440>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-02
Reviewed by Simon Fraser.
We should really have the scaled content size floored to device pixels, but that will be for another
time.
This patch ensure the content size as seen by the API is rounded to device pixels. The value is floored
to avoid showing partial pixels when the content is stable.
- UIProcess/API/Cocoa/WKWebView.mm:
(floorFloatToPixels):
(roundScrollViewCountentSize):
(-[WKWebView _setHasCustomContentView:loadedMIMEType:WTF::]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView scrollView:contentSizeForZoomScale:withProposedSize:]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(-[WKWebView _endAnimatedResize]):
- 3:13 PM Changeset in webkit [169548] by
-
- 2 edits in trunk/Source/WebKit2
Move ifdef to the right place.
- 3:07 PM Changeset in webkit [169547] by
-
- 8 edits2 adds in trunk
Make pseudo element matching for style resolution more JIT friendly
https://bugs.webkit.org/show_bug.cgi?id=133441
Reviewed by Antti Koivisto.
Source/WebCore:
Sharing pseudo elements is a complicated mess shared between the SelectorChecker
and the RuleCollector.
For compiling pseudo element matching, it would be best if all the complexity could
be moved to compile time instead of runtime. It is also preferable to keep the compiler
independant of the RuleCollector implementation's detail.
This patch is a first step toward that goal. The main objective here is to make
"dynamicPseudo" completely internal to the SelectorChecker.
This is mostly a mechanical change, it is likely PseudoElement matching could be simplified
further but that is not attempted here.
Test: fast/css/style-sharing-empty-rule-modification.html
- css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::ruleMatches):
The condition regarding pseudo element matching has been moved into SelectorChecker::match().
This creates an extra cost for querySelector(), but that should be fine since the vast majority
of selectors are JIT compiled and never use SelectorChecker in the first place.
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
The loop is changed such that the tree marking (Style::setHasPseudoStyle) could be moved
to SelectorChecker.
The conditions about the security origin for getMatchedCSSRules() and the empty style rules
are moved prior to the call to ElementRuleCollector::ruleMatches(). This ensure we keep the same
behavior of not adding the pseudo style for empty rules (this could also help with tree marking
in general but empty rules are probably uncommon).
There is one behavior change from making this loop simpler: the SharingRules and StyleInvalidation
modes now update their ruleRange. It is useless but it is simpler.
- css/ElementRuleCollector.h:
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively):
The tree marking has been moved here.
- css/SelectorChecker.h:
(WebCore::SelectorChecker::match):
The pseudo element matching has been moved here.
- css/StyleResolver.h:
(WebCore::checkRegionSelector):
- dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::selectorMatches):
LayoutTests:
Add more coverage for style sharing with empty rules, just in case.
- fast/css/style-sharing-empty-rule-modification-expected.txt: Added.
- fast/css/style-sharing-empty-rule-modification.html: Added.
- 2:54 PM Changeset in webkit [169546] by
-
- 3 edits in trunk/Source/WebKit2
Set default voucher for XPC client processes
https://bugs.webkit.org/show_bug.cgi?id=133458
Reviewed by Geoff Garen.
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
(WebKit::XPCServiceInitializer):
- add voucher_replace_default_voucher.
- config.h:
- add HAVE_VOUCHERS.
- 2:13 PM Changeset in webkit [169545] by
-
- 13 edits in trunk/Source
Send external playback properties to fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=133366
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-02
Reviewed by Simon Fraser.
Source/WebCore:
Refactor property updates in WebVideoFullscreenModelMediaElement and update
setExternalPlayback on webkitcurrentplaybacktargetiswirelesschangedEvent.
- WebCore.exp.in: Add export for setExternalPlayback.
- platform/ios/WebVideoFullscreenInterface.h: add setExternalPlayback
- platform/ios/WebVideoFullscreenInterfaceAVKit.h: add setExternalPlayback
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerController isPlayingOnExternalScreen]): added
(+[WebAVPlayerController keyPathsForValuesAffectingPlayingOnExternalScreen]): added
(WebVideoFullscreenInterfaceAVKit::setExternalPlayback): added
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): added
- platform/ios/WebVideoFullscreenModelMediaElement.h: add updateForEventName
- platform/ios/WebVideoFullscreenModelMediaElement.mm:
(WebVideoFullscreenModelMediaElement::setMediaElement): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::handleEvent): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::updateForEventName): remove duplicate code, implement for setExternalPlayback
Source/WebKit2:
Forward setExternalPlayback.
- UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: add setExternalPlaybackProperties
- WebProcess/ios/WebVideoFullscreenManager.h: add setExternalPlaybackProperties
- WebProcess/ios/WebVideoFullscreenManager.mm: add setExternalPlaybackProperties
(WebKit::WebVideoFullscreenManager::setExternalPlaybackProperties): added
- 1:53 PM Changeset in webkit [169544] by
-
- 4 edits in trunk/Source/WebCore
WebCore build fix for webreplay
https://bugs.webkit.org/show_bug.cgi?id=133401
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-06-02
Reviewed by Darin Adler.
- replay/MemoizedDOMResult.cpp:
(WebCore::MemoizedDOMResultBase::createFromEncodedResult):
Add a default nullptr return in order to avoid a gcc warning.
The warning is because of a non-void method that has a case which doesn't return.
- replay/ReplayController.cpp:
(WebCore::ReplayController::setForceDeterministicSettings):
Guard the ScrollingCoordinator with the appropriate #ifdef.
- replay/SerializationMethods.cpp:
Guard the KeypressCommand with COCOA as it is only present there.
- 1:42 PM Changeset in webkit [169543] by
-
- 2 edits in trunk/Source/WebKit2
Remove unintentional changes to WKContentViewInteraction.mm
introduced in r169500.
Unreviewed.
- UIProcess/ios/WKContentViewInteraction.mm:
(+[WKAutocorrectionContext autocorrectionContextWithData:markedText:selectedText:afterText:selectedRangeInMarkedText:]):
- 1:22 PM Changeset in webkit [169542] by
-
- 3 edits in trunk/Source/WebKit2
Address some review comments on bug 133408
https://bugs.webkit.org/show_bug.cgi?id=133410
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- 1:08 PM Changeset in webkit [169541] by
-
- 4 edits1 move in trunk
Rename DoYouEvenBench 0.17 to Speedometer 1.0 and add a new look.
https://bugs.webkit.org/show_bug.cgi?id=133455
Reviewed by Timothy Hatcher.
PerformanceTests:
- Speedometer/: Renamed from DoYouEvenBench.
- Skipped: Updated the path for InteractiveRunner.html
Tools:
Since the perf. dashboard doesn't support following renamed benchmarks,
keep reporting Speedometer results as DoYouEvenBench results.
- Scripts/webkitpy/performance_tests/perftestsrunner.py:
(_generate_results_dict):
- 12:57 PM Changeset in webkit [169540] by
-
- 6 edits4 adds in trunk/PerformanceTests
Rename DoYouEvenBench 0.17 to Speedometer 1.0 and add a new look.
https://bugs.webkit.org/show_bug.cgi?id=133455
Reviewed by Timothy Hatcher.
Renamed the benchmark to Speedometer and added the new look designed by Timothy Hatcher.
Also changed the unit of measurements from milliseconds to runs-per-minute averaged over the number
of the benchmark suites (7 for 1.0). You can divide 420000 by the old benchmark score (in milliseconds)
to get the new value for the set of tests that are enabled by default in 1.0. You can continue to see
results in milliseconds on Full.html#ms.
- DoYouEvenBench/Full.html: Added a bunch of sections and the description of the benchmark.
- DoYouEvenBench/resources/benchmark-report.js: Remove the newly added content when ran inside a DRT or
WTR so that run-perf-tests wouldn't error.
- DoYouEvenBench/resources/benchmark-runner.js:
(BenchmarkRunner.prototype._appendFrame): Call a newly added willAddTestFrame callback when it exists.
- DoYouEvenBench/resources/gauge.png: Added.
- DoYouEvenBench/resources/gauge@2x.png: Added.
- DoYouEvenBench/resources/logo.png: Added.
- DoYouEvenBench/resources/logo@2x.png: Added.
- DoYouEvenBench/resources/main.css: Replaced the style.
- DoYouEvenBench/resources/main.js:
(window.benchmarkClient.willAddTestFrame): Place the iframe right where #testContainer is shown.
(window.benchmarkClient.willRunTest): Show the name of the suite (e.g. EmberJS-TodoMVC) to run next.
(window.benchmarkClient.didRunSuites):
(window.benchmarkClient.willStartFirstIteration): Initialize _timeValues and _finishedTestCount now that
we have an UI to run the benchmark multiple times without reloading the page.
(window.benchmarkClient.didFinishLastIteration): Split into smaller pieces.
(window.benchmarkClient._computeResults): Computes the mean and the statistics for the given time values,
and also format them in a human readable form.
(window.benchmarkClient._computeResults.totalTimeInDisplayUnit): Converts ms to runs/min.
(window.benchmarkClient._computeResults.sigFigFromPercentDelta): Given a percentage error (e.g. 1%),
returns the number of significant digits required for the mean.
(window.benchmarkClient._computeResults.toSigFigPrecision): Calls toPrecision with the specified precision
constrained to be at least the number of non-decimal digits and at most 6.
(window.benchmarkClient._addDetailedResultsRow): Renamed from _addResult. It now takes the table to which
to add a row and the iteration number.
(window.benchmarkClient._updateGaugeNeedle): Added. Controls the angle of the speed indicator.
(window.benchmarkClient._populateDetailedResults): Added.
(window.benchmarkClient.prepareUI): Added. It adds an event listener to show a specified section when
the push state of the document changes, and shows a warning sign when the view port size is too small.
We do this inside a callback to avoid running it inside DRT / WTR.
(startBenchmark):
(showSection): Added.
(startTest): Added.
(showResultsSummary): Added.
(showResultDetails): Added.
(showAbout): Added.
- 12:57 PM Changeset in webkit [169539] by
-
- 2 edits in trunk/Source/WebCore
Further unreviewed GTK build fix after r169536.
Update the m_duration contructor in MediaSourceGStreamer.
- platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
(WebCore::MediaSourceGStreamer::MediaSourceGStreamer):
- 12:50 PM Changeset in webkit [169538] by
-
- 3 edits in trunk/Source/WebKit2
[Cocoa] -[WKWebView activeURL] is unused
https://bugs.webkit.org/show_bug.cgi?id=133440
Reviewed by Mark Rowe.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView activeURL]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h: Removed the property declaration.
- 12:42 PM Changeset in webkit [169537] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed GTK build fix after r169536.
Update MediaSourceGStreamer to match new duration parameters.
- platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
(WebCore::MediaSourceGStreamer::setDuration): Ditto.
- platform/graphics/gstreamer/MediaSourceGStreamer.h:
- platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
- 11:58 AM Changeset in webkit [169536] by
-
- 11 edits in trunk/Source/WebCore
[MSE][Mac] Media does not generate 'ended' event when playing to duration.
https://bugs.webkit.org/show_bug.cgi?id=133452
Reviewed by Eric Carlson.
Add a boundaryTimeObserver to the AVSampleBufferRenderSynchronizer to detect when
playback crosses the duration boundary, and pause in that event. Also refuse to begin
playback if the currentTime is beyond the duration. Also, pause playback if duration
becomes less than currentTime.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentMediaTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
Update MediaSource::duration() and ::setDuration() to take and give MediaTimes rather than doubles:
- Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::duration): double -> MediaTime.
(WebCore::MediaSource::setDuration): Ditto.
(WebCore::MediaSource::streamEndedWithError): Ditto.
- platform/graphics/MediaSourcePrivate.h: Ditto.
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::MediaSourcePrivateAVFObjC): Ditto.
(WebCore::MediaSourcePrivateAVFObjC::duration): Ditto.
(WebCore::MediaSourcePrivateAVFObjC::setDuration): Ditto.
- platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::MockMediaPlayerMediaSource): Ditto.
(WebCore::MockMediaPlayerMediaSource::maxTimeSeekableDouble): Ditto.
(WebCore::MockMediaPlayerMediaSource::durationDouble): Ditto.
(WebCore::MockMediaPlayerMediaSource::advanceCurrentTime): Ditto.
(WebCore::MockMediaPlayerMediaSource::updateDuration): Ditto.
- platform/mock/mediasource/MockMediaPlayerMediaSource.h:
- platform/mock/mediasource/MockMediaSourcePrivate.cpp:
(WebCore::MockMediaSourcePrivate::MockMediaSourcePrivate): Ditto.
(WebCore::MockMediaSourcePrivate::duration): Ditto.
(WebCore::MockMediaSourcePrivate::setDuration): Ditto.
- platform/mock/mediasource/MockMediaSourcePrivate.h:
- 11:19 AM Changeset in webkit [169535] by
-
- 2 edits in trunk/LayoutTests
Unreviewed TestExpectations gardening after r169532.
Update fast/table/border-collapsing/collapsed-borders-adjoining-sections.html
from [ Failure ] to [ ImageOnlyFailure ].
- 10:39 AM Changeset in webkit [169534] by
-
- 11 edits in trunk/Source/WebCore
Rename ImagePaintingContext to ImagePaintingOptions.
https://bugs.webkit.org/show_bug.cgi?id=133451
Reviewed by Simon Fraser.
No change in functionality.
- WebCore.exp.in:
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paint):
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
- platform/graphics/GraphicsContext.h:
(WebCore::ImagePaintingOptions::ImagePaintingOptions):
(WebCore::ImagePaintingContext::ImagePaintingContext): Deleted.
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage):
- rendering/RenderImage.cpp:
(WebCore::RenderImage::paintIntoRect):
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paintSnapshot):
- 10:22 AM Changeset in webkit [169533] by
-
- 6 edits5 adds1 delete in trunk/Source/WebKit2
Restructure initial distinct sandbox profiles
https://bugs.webkit.org/show_bug.cgi?id=133415
Reviewed by Alexey Proskuryakov.
Add support for manually instantiating the network and
content process sandboxes, and add initial profiles.
These profiles are completely generic so we can make sure
nothing is broken by enabling them.
This also adds a target to the WebKit2 project to correctly
process the profiles.
- DatabaseProcess/ios/DatabaseProcessIOS.mm:
(WebKit::DatabaseProcess::initializeSandbox):
- DatabaseProcess/ios/com.apple.WebKit.DatabasesIOS.sb: Removed.
- NetworkProcess/ios/NetworkProcessIOS.mm:
(WebKit::NetworkProcess::initializeSandbox):
- Resources/SandboxProfiles/ios/com.apple.WebKit.Databases.sb: Added.
- Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: Added.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: Added.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::initializeSandbox):
- 9:37 AM Changeset in webkit [169532] by
-
- 4 edits in trunk
REGRESSION (r154622): Borders disappear when hovering over cells in table
https://bugs.webkit.org/show_bug.cgi?id=133057
<rdar://problem/15922359>
Reviewed by Tim Horton.
Source/WebCore:
- rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paintCollapsedBorders): Revert recent
non-edge collapsed border optimization due to drawing
regressions.
LayoutTests:
- TestExpectations: Mark the test we added in r154622 as failing
until we provide a permanent fix.
- 9:05 AM Changeset in webkit [169531] by
-
- 14 edits in trunk/Source/WebCore
Provide better encapsulation for image related painting properties.
https://bugs.webkit.org/show_bug.cgi?id=133434
Reviewed by Darin Adler.
Image related drawing property list keeps growing for the functions below and results in
multiple overloadings with seemingly random default parameters.
GraphicsContext::drawImage()
GraphicsContext::drawTiledImage()
GraphicsContext::drawImageBuffer()
This patch provides encapsulation for the image drawing properties. Encapsulation ensures that
introducing a new property does not result in yet another overloaded function.
No change in functionality.
- WebCore.exp.in:
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paint):
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::CanvasRenderingContext2D::compositeBuffer):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
- platform/graphics/GraphicsContext.h:
(WebCore::ImagePaintingContext::ImagePaintingContext):
- platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::endShadowLayer):
- platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::draw):
- platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::platformApplySoftware):
- rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRendererHelper::applyFilterEffect):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage):
- rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
(WebCore::RenderImage::paintIntoRect):
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paintSnapshot):
- 8:03 AM Changeset in webkit [169530] by
-
- 14 edits in trunk/Source/WebCore
Unreviewed, rolling out r169529.
https://bugs.webkit.org/show_bug.cgi?id=133447
caused assert in drawImage() (Requested by zalan on #webkit).
Reverted changeset:
"Provide better encapsulation for image related painting
properties."
https://bugs.webkit.org/show_bug.cgi?id=133434
http://trac.webkit.org/changeset/169529
- 7:23 AM Changeset in webkit [169529] by
-
- 14 edits in trunk/Source/WebCore
Provide better encapsulation for image related painting properties.
https://bugs.webkit.org/show_bug.cgi?id=133434
Reviewed by Darin Adler.
Image related drawing property list keeps growing for the functions below and results in
multiple overloadings with seemingly random default parameters.
GraphicsContext::drawImage()
GraphicsContext::drawTiledImage()
GraphicsContext::drawImageBuffer()
This patch provides encapsulation for the image drawing properties. Encapsulation ensures that
introducing a new property does not result in yet another overloaded function.
No change in functionality.
- WebCore.exp.in:
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paint):
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::CanvasRenderingContext2D::compositeBuffer):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
- platform/graphics/GraphicsContext.h:
(WebCore::ImagePaintingContext::ImagePaintingContext):
- platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::endShadowLayer):
- platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::draw):
- platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::platformApplySoftware):
- rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRendererHelper::applyFilterEffect):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage):
- rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
(WebCore::RenderImage::paintIntoRect):
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paintSnapshot):
- 3:55 AM Changeset in webkit [169528] by
-
- 6 edits2 adds in trunk
Add mock DTMFSender support.
https://bugs.webkit.org/show_bug.cgi?id=133298
Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-02
Reviewed by Eric Carlson.
Source/WebCore:
Implemented mock implementation for RTCPeerConnectionHandler. Now creating
RTCDTMFSenderHandlerMock and returning while creating DTMFSender instead of
returning null.
Test: fast/mediastream/RTCPeerConnection-dtmf.html.
- CMakeLists.txt:
- platform/mock/RTCDTMFSenderHandlerMock.cpp: Added.
(WebCore::RTCDTMFSenderHandlerMock::RTCDTMFSenderHandlerMock):
(WebCore::RTCDTMFSenderHandlerMock::setClient):
(WebCore::RTCDTMFSenderHandlerMock::insertDTMF):
- platform/mock/RTCDTMFSenderHandlerMock.h: Added.
- platform/mock/RTCPeerConnectionHandlerMock.cpp:
(WebCore::RTCPeerConnectionHandlerMock::createDTMFSender):
LayoutTests:
- fast/mediastream/RTCPeerConnection-dtmf-expected.txt:
- fast/mediastream/RTCPeerConnection-dtmf.html:
- 1:31 AM Changeset in webkit [169527] by
-
- 2 edits in trunk/Source/WebCore
[GTK] media controls should prevent 'click' events from reaching the page
https://bugs.webkit.org/show_bug.cgi?id=133402
Reviewed by Eric Carlson.
When handling events, we events we need to return true in order
that the superclass gets the value and prevents the execution of
the default event handler in the page.
Test: media/media-controls-cancel-events.html
- Modules/mediacontrols/mediaControlsGtk.js:
(ControllerGtk.prototype.handleMuteButtonMouseOver):
(ControllerGtk.prototype.handleVolumeBoxMouseOut):
(ControllerGtk.prototype.handleCaptionButtonClicked):
(ControllerGtk.prototype.handleCaptionButtonMouseOver):
(ControllerGtk.prototype.handleCaptionButtonShowMenu):
(ControllerGtk.prototype.handleCaptionButtonMouseOut):
(ControllerGtk.prototype.handleCaptionMouseOut): Return true to
prevent forwarding the event execution.
- 12:32 AM Changeset in webkit [169526] by
-
- 2 edits in trunk/LayoutTests
Unreviewed EFL gardening.
Below test cases are passing after r169403.
- fast/dom/webtiming-document-open.html
- fast/dom/webtiming-navigate-within-document.html
- platform/efl/TestExpectations:
- 12:00 AM Changeset in webkit [169525] by
-
- 3 edits8 adds in trunk
CSS JIT: add support for the "not" pseudo class
https://bugs.webkit.org/show_bug.cgi?id=133314
Source/WebCore:
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-06-02
Reviewed by Benjamin Poulain.
Add :not pseudo class support to CSS JIT. Current implementation
doesn't support visitedMatchType. So when link pseudo class appears in
:not sub fragment, fallback to the non-JIT implementation.
Tests: fast/selectors/not-active-hover-quirks.html
fast/selectors/not-active-hover-strict.html
fast/selectors/pseudo-class-not.html
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::minimumRegisterRequirements):
(WebCore::SelectorCompiler::computeBacktrackingInformation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::fragmentOnlyMatchesLinksInQuirksMode):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementDataMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesNotPseudoClass):
(WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation): Deleted.
LayoutTests:
Add :not pseudo class support to CSS JIT. Current implementation
doesn't support visitedMatchType. So when link pseudo class appears in
:not sub fragment, fallback to the non-JIT implementation.
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-06-02
Reviewed by Benjamin Poulain.
- fast/selectors/not-active-hover-quirks-expected.txt: Added.
- fast/selectors/not-active-hover-quirks.html: Added.
- fast/selectors/not-active-hover-strict-expected.txt: Added.
- fast/selectors/not-active-hover-strict.html: Added.
- fast/selectors/pseudo-class-not-expected.txt: Added.
- fast/selectors/pseudo-class-not.html: Added.
- fast/selectors/resources/not-hover-active-quirks-utility.js: Added.
(testQuerySelector):
(test):
- fast/selectors/resources/not-hover-active-strict-utility.js: Added.
(testQuerySelector):
(test):
Jun 1, 2014:
- 11:52 PM Changeset in webkit [169524] by
-
- 2 edits in trunk/LayoutTests
Unreviewed EFL gardening.
gradient-background-leakage-hidpi.html and canvas-as-image-hidpi.html pass after r169445.
- platform/efl-wk2/TestExpectations:
- 10:16 PM Changeset in webkit [169523] by
-
- 19 edits2 adds in trunk
[MSE] Appends of overlapping sample data do not clear existing samples properly.
https://bugs.webkit.org/show_bug.cgi?id=133435
Reviewed by Darin Adler.
Source/WebCore:
Test: media/media-source/media-source-overlapping-append.html
The MSE spec has a spec error in how it removes overlapping frames. The intention seems to be
to check for overlapping samples only when the incoming sample increases the highest presentation time
field. But due to a mismatch in the range of a sample, defined as [start, end), and the check, which
treats the end as inclusive, the overlapping check is almost never run.
Add the sample comparison logic to match [start, end) ranges, and rename the existing check to differentiate
it from the new one:
- Modules/mediasource/SampleMap.cpp:
(WebCore::SamplePresentationTimeIsInsideRangeComparator::operator()):
(WebCore::SamplePresentationTimeIsWithinRangeComparator::operator()):
(WebCore::SampleMap::findSamplesBetweenPresentationTimes):
(WebCore::SampleMap::findSamplesWithinPresentationRange):
- Modules/mediasource/SampleMap.h:
Update the overlapping check to occur whenever the highest presentation time increases, and update the
logic within that check to catch all overlapping frames.
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
(WebCore::SourceBuffer::bufferedSamplesForTrackID):
- Modules/mediasource/SourceBuffer.h:
- WebCore.exp.in:
Add a dump method to MediaSample so that samples can be easily converted to a string for testing.
- platform/MediaSample.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::MediaSampleAVFObjC::presentationSize):
(WebCore::MediaSampleAVFObjC::dump):
Update the Mock MSE implementation to pass along a "generation" field, to aid in testing.
- platform/mock/mediasource/MockBox.cpp:
(WebCore::MockSampleBox::MockSampleBox):
- platform/mock/mediasource/MockBox.h:
- platform/mock/mediasource/MockSourceBufferPrivate.cpp:
(WebCore::MockMediaSample::dump):
Add a method to internals to dump the buffered samples to string.
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::bufferedSamplesForTrackID):
- Modules/mediasource/SourceBuffer.h:
- testing/Internals.cpp:
(WebCore::Internals::bufferedSamplesForTrackID):
- testing/Internals.h:
- testing/Internals.idl:
Source/WTF:
Add a dump method to MediaTime, so that MediaTimes can be easily converted to strings (for logging purposes).
- wtf/MediaTime.cpp:
(WTF::MediaTime::dump):
- wtf/MediaTime.h:
LayoutTests:
- media/media-source/media-source-overlapping-append-expected.txt: Added.
- media/media-source/media-source-overlapping-append.html: Added.
- media/media-source/mock-media-source.js:
- 10:01 PM Changeset in webkit [169522] by
-
- 14 edits6 adds in trunk
getBBox() returns (0,0) when width or height is zero.
https://bugs.webkit.org/show_bug.cgi?id=93290
Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2014-06-01
Reviewed by Philip Rogers.
Source/WebCore:
The SVG spec states that a width or height of zero for rects, circles and
ellipses is valid but disables rendering of that shape.
In this case, getBBox() should return the actual bounding box of the element.
Previously, WebKit always returned (0,0,0,0) rather than the
correct bounding box. This patch fixes that.
Rects and ellipses both now follow the same behaviour where
the fall-back code path is only used when the shape will render (e.g. not
when a dimension <= 0).
This necessitates calling calculateRadiiAndCenter for ellipses even
when the calculated values will be discarded in the fall back code path.
But calculateRadiiAndCenter is cheap and this avoids making changes
elsewhere to stop CG drawing a zero width (or height) ellipse.
Tests: svg/custom/getBBox-js-circle-zerodimension.html
svg/custom/getBBox-js-ellipse-zerodimension.html
svg/custom/getBBox-js-rect-zerodimension.html
- rendering/svg/RenderSVGEllipse.cpp:
(WebCore::RenderSVGEllipse::updateShapeFromElement):
Only follow fall-back code path when shape renders.
width height==0 is not an error case so calculate bounding box. - rendering/svg/RenderSVGRect.cpp:
(WebCore::RenderSVGRect::updateShapeFromElement):
Only follow fall-back code path when shape renders.
rx ry==0 is not an error case so calculate bounding box. LayoutTests:
- platform/mac/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt:
- platform/mac/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt:
- platform/mac/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
- platform/mac/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt:
- svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
- svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt:
- svg/custom/getBBox-js-circle-zerodimension-expected.txt: Added.
- svg/custom/getBBox-js-circle-zerodimension.html: Added.
- svg/custom/getBBox-js-ellipse-zerodimension-expected.txt: Added.
- svg/custom/getBBox-js-ellipse-zerodimension.html: Added.
- svg/custom/getBBox-js-rect-zerodimension-expected.txt: Added.
- svg/custom/getBBox-js-rect-zerodimension.html: Added.
- 6:53 PM Changeset in webkit [169521] by
-
- 2 edits in trunk/LayoutTests
EFL gardening. Unskip some iframe tests which have passed since buildbot OS bump up.
- platform/efl-wk1/TestExpectations:
- 5:33 PM Changeset in webkit [169520] by
-
- 3 edits in trunk/Source/WebKit2
[Cocoa] Add SPI to get a WebArchive of the WKWebView
<rdar://problem/16748120>
https://bugs.webkit.org/show_bug.cgi?id=133439
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _getWebArchiveDataWithCompletionHandler:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 4:07 PM Changeset in webkit [169519] by
-
- 2 edits in trunk/Source/WebCore
Don't scroll to non-integral scroll offsets
https://bugs.webkit.org/show_bug.cgi?id=133436
<rdar://problem/17088336>
Reviewed by Darin Adler.
With the gradual migration of scroll offsets to floating point, we ended
up with a fully floating point code path been event scroll deltas and
setting scroll positions in the scrolling tree.
With some input devices (e.g. Logitech scrollwheel mice), the scroll deltas
come in with non-integral values, and that caused the scroll offset to be non-integral,
resulting in fuzzy layer contents. So round the scroll position.
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollPosition):
- 3:31 PM Changeset in webkit [169518] by
-
- 20 edits in trunk/Source
Add a LazyNeverDestroyed class template and use it
https://bugs.webkit.org/show_bug.cgi?id=133425
Reviewed by Darin Adler.
Source/JavaScriptCore:
- dfg/DFGFunctionWhitelist.cpp:
(JSC::DFG::FunctionWhitelist::ensureGlobalWhitelist):
- dfg/DFGFunctionWhitelist.h:
Source/WebCore:
- Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::guidMutex):
- crypto/CryptoAlgorithmRegistry.cpp:
(WebCore::registryMutex):
- inspector/WorkerDebuggerAgent.cpp:
- loader/CrossOriginAccessControl.cpp:
(WebCore::isOnAccessControlResponseHeaderWhitelist):
- platform/network/NetworkStateNotifier.cpp:
(WebCore::networkStateNotifier):
- workers/DefaultSharedWorkerRepository.cpp:
(WebCore::DefaultSharedWorkerRepository::instance):
- workers/DefaultSharedWorkerRepository.h:
- workers/WorkerThread.cpp:
(WebCore::threadSetMutex):
- xml/XMLHttpRequest.cpp:
(WebCore::staticData):
Source/WebKit2:
- Shared/mac/SecItemShim.cpp:
(WebKit::responseMap):
Source/WTF:
LazyNeverDestroyed is similar to NeverDestroyed, except it's lazily constructed
by calling construct(). This makes it useful for using inside std::call_once functions.
- wtf/Forward.h:
- wtf/NeverDestroyed.h:
(WTF::LazyNeverDestroyed::construct):
(WTF::LazyNeverDestroyed::operator T&):
(WTF::LazyNeverDestroyed::get):
(WTF::LazyNeverDestroyed::asPtr):
(WTF::LazyNeverDestroyed::MaybeRelax::MaybeRelax):
- wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
(WTF::atomicallyInitializedStaticMutex):
- wtf/unicode/icu/CollatorICU.cpp:
(WTF::cachedCollatorMutex):
- 2:12 PM Changeset in webkit [169517] by
-
- 3 edits in trunk/PerformanceTests
DYEBench: Move test states into benchmarkClient and remove the closure
https://bugs.webkit.org/show_bug.cgi?id=133438
Reviewed by Benjamin Poulain.
Moved all local variables in the closure wrapping benchmarkClient onto the object itself
and removed the closure to improve the readability of the code.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/main.js:
(window.benchmarkClient.willRunTest):
(window.benchmarkClient.didRunTest):
(window.benchmarkClient.didRunSuites):
(window.benchmarkClient.willStartFirstIteration):
(window.benchmarkClient.didFinishLastIteration):
(window.benchmarkClient._addResult): Moved.
(.): Deleted.
- 1:38 PM Changeset in webkit [169516] by
-
- 2 edits2 adds in trunk/PerformanceTests
DYEBench: Split stylesheets and scripts in Full.html into separate files
https://bugs.webkit.org/show_bug.cgi?id=133437
Reviewed by Benjamin Poulain.
Extracted main.js and main.css.
Also fixed a bug in startBenchmark that disabled suites were counted towards the total number of tests.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/main.css: Added.
- DoYouEvenBench/resources/main.js: Added.
(.addResult):
(window.benchmarkClient):
(startBenchmark): Renamed from startTest.
- 9:30 AM Changeset in webkit [169515] by
-
- 4 edits4 adds in trunk
Subpixel rendering: Selection gap produces a pixel line overlap on inline boxes.
https://bugs.webkit.org/show_bug.cgi?id=133429
Reviewed by Simon Fraser.
Do not floor logical right/left values when selection gap is calculated for RenderBlocks.
It produces overlapping line/gap because the floored value is intersecting/too far from the
non-floored content selection rect.
Source/WebCore:
Tests: fast/inline/hidpi-selection-gap-and-inline-selection-have-gap-rtl.html
fast/inline/hidpi-selection-gap-overlaps-inline-selection.html
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::logicalLeftSelectionGap):
(WebCore::RenderBlock::logicalRightSelectionGap):
LayoutTests:
- platform/mac/TestExpectations: add ML failure due to font sizing. (Ahem can't be used here)
- fast/inline/hidpi-selection-gap-and-inline-selection-have-gap-rtl-expected.html: Added.
- fast/inline/hidpi-selection-gap-and-inline-selection-have-gap-rtl.html: Added.
- fast/inline/hidpi-selection-gap-overlaps-inline-selection-expected.html: Added.
- fast/inline/hidpi-selection-gap-overlaps-inline-selection.html: Added.
- 6:44 AM Changeset in webkit [169514] by
-
- 9 edits in trunk/PerformanceTests
DYEBench: CSS parser warning at line 106 of base.css
https://bugs.webkit.org/show_bug.cgi?id=133433
Reviewed by Maciej Stachowiak.
Removed the old filter CSS property for Internet Explorer. The latest Internet Explorer supports -ms-linear-gradient
on background CSS property anyways.
It's interesting that some of the tests only have -webkit- prefixes. Perhaps we should update those subtests.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/architecture-examples/backbone/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/architecture-examples/jquery/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/dependency-examples/flight/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.css:
(#header:before):
- DoYouEvenBench/resources/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/base.css:
(#header:before):
- 12:01 AM Changeset in webkit [169513] by
-
- 3 edits in trunk/PerformanceTests
DYEBench: Ember.js assertion hit at line 20593
https://bugs.webkit.org/show_bug.cgi?id=133431
Reviewed by Darin Adler.
The assertion was hit because ToDoMVC includes jQuery 2.1 and Ember.js 1.3.1 only recognizes jQuery 2.0.
Port the assertion from Ember.js 1.5.1 to suppress the assertion.
We should update the entire Ember.js at some point but this would do the job for now.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember/ember.js:
May 31, 2014:
- 11:26 PM Changeset in webkit [169512] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION (r169412): Garbage pixels when vertical rubber-banding on http://yvoschaap.com/pmarca/
https://bugs.webkit.org/show_bug.cgi?id=133418
<rdar://problem/17065494>
Reviewed by Sam Weinig.
- WebCore.exp.in:
- platform/graphics/FloatPoint.h:
(WebCore::toFloatPoint):
- platform/graphics/Image.cpp:
(WebCore::Image::drawTiled):
The manual tiling code previously adjusted the initial
tiling source rect so that if the pattern was out of phase,
the first row and column would paint only the necessary part
of the tile. However, it did not also adjust the destination rect,
so the tile was painted in entirely the wrong place.
Additional testing (by enabling manual tiling mode for all patterned
images and running all of the layout tests) exposed another bug
where the last row and column would paint too much, which
was resolved by clipping to the outer image's destination rect.
- 11:26 PM Changeset in webkit [169511] by
-
- 2 edits in trunk/LayoutTests
One more missed piece of that last check-in.
- TestExpectations: Removed the flakiness expectation from the
css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html
test since that now works reliably.
- 11:25 PM Changeset in webkit [169510] by
-
- 2 edits in trunk/Source/WebKit2
View snapshots are sometimes taken at the wrong scale
https://bugs.webkit.org/show_bug.cgi?id=133419
<rdar://problem/17087497>
Reviewed by Sam Weinig.
- UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
Work around <rdar://problem/17084993> by re-requesting the snapshot at
kCGWindowImageNominalResolution if it was captured at the wrong scale.
- 11:14 PM Changeset in webkit [169509] by
-
- 3 edits in trunk/LayoutTests
Try to fix another failure from the previous check-in seen on some bots.
- platform/mac-wk2/TestExpectations: Removed a couple obsolete lines.
- platform/wk2/TestExpectations: Added expectation for filter-hidden-content.svg, which
seems to be affected by the resizing for tests before it.
- 8:48 PM Changeset in webkit [169508] by
-
- 3 edits in trunk/LayoutTests
Fix test failure from the previous check-in.
- fast/dynamic/window-resize-scrollbars-test.html: Add resize handler so this test works
with asynchronous resizing.
- platform/wk2/TestExpectations: Expect failure for the test above; it's showing scrollbars,
and it should not. Before, the test was not running correctly so it seemed to pass.
- 8:04 PM Changeset in webkit [169507] by
-
- 3 edits in trunk/PerformanceTests
DYEBench: Prevent frame flattening on iOS
https://bugs.webkit.org/show_bug.cgi?id=133428
Reviewed by Andreas Kling.
Prevent frame flattening on iOS by setting scrolling=no.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/benchmark-runner.js:
(BenchmarkRunner.prototype._appendFrame):
- 6:34 PM Changeset in webkit [169506] by
-
- 2 edits in trunk/Source/WebCore
CSS JIT cleanup: move two utility functions out of the properties-matcher section
https://bugs.webkit.org/show_bug.cgi?id=133427
Reviewed by Andreas Kling.
Just move the code, no other modification.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNoPreviousAdjacentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNoNextAdjacentElement):
- 5:01 PM Changeset in webkit [169505] by
-
- 26 edits in trunk
Viewport percentage tests that resize the viewport are flaky
https://bugs.webkit.org/show_bug.cgi?id=133351
Reviewed by Anders Carlsson.
Source/WebCore:
- page/FrameView.cpp:
(WebCore::FrameView::setFrameRect): Removed code that explicitly sends a resize event here.
The resize event will be sent as a side effect of layout instead.
(WebCore::FrameView::sendResizeEventIfNeeded): Don't send a resize event until layout is done,
since this is what propagates the new geometry in so the JavaScript code can detect it. Also
simplified the logic and streamlined a little, and added a FIXME about the bad idea here where
the code enqueues an event for an unknown time in the future. Removed the unneeded code that
passes in the DOM window as the target to dispatchWindowEvent, since that gets filled in as the
target by default.
Tools:
- DumpRenderTree/mac/DumpRenderTree.mm:
(sizeWebViewForCurrentTest): Added a call to reset the window origin, which
happens to be stored in the UI delegate object. This is part of resetting the
window position.
- DumpRenderTree/mac/UIDelegate.h: Store the window origin rather than storing
a frame rectangle. The size is stored in the size of the web view itself.
- DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate resetWindowOrigin]): Added.
(-[UIDelegate webView:setFrame:]): Changed to set the size of the web view. The
old version would store the frame, but not resize the web view!
(-[UIDelegate webViewFrame:]): Get the size from the web view.
- WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::PlatformWebView::setWindowFrame): Added code to resize the web view.
- WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::resizeTo): Added a comment about missing code to resize
the window.
- WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::resizeTo): Changed this to call setWindowFrame so the
window gets resized too, not just the web view.
(WTR::PlatformWebView::setWindowFrame): Added code to set the size of the web view.
- WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::resizeTo): Changed this to call setWindowFrame so the
window gets resized too, not just the web view.
(WTR::PlatformWebView::setWindowFrame): Added code to set the size of the web view.
LayoutTests:
- css3/viewport-percentage-lengths/resources/resize-test.js:
Added code to compensate for the difference between innerWidth/Height and outerWidth/Height
so this works well in a browser window. Added code to "warm up" so the first resize triggers
a resize event. Tweaked style of the code a bit. Use resize events to avoid flakiness due
to race conditions. One thing I did not fix is the "out of order" problem where all the
test results get written out after the words TEST COMPLETE.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-anonymous-block-expected.txt:
Updated due to changes to the underlying test machinery, and also to show actual expected success.
The old results said PASS with various obviously wrong results.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-anonymous-block.html:
Changed this test to use the shared resize-test.js.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-percent-size-child-expected.txt:
Updated due to changes to the underlying test machinery, and also to show actual expected success.
The old results said PASS with various obviously wrong results.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-percent-size-child.html:
Streamlined this test a little.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size-expected.txt:
Updated due to changes to the underlying test machinery, and also to show actual expected success.
The old results said PASS with various obviously wrong results.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html:
Streamlined this test a little.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-resize-expected.txt:
Updated due to changes to the underlying test machinery, and also to show both expected success,
and some expected failures. These failures were going unnoticed before since the test didn't
successfully do any resizing of the web view.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-resize.html:
Streamlined this test a little.
- fast/dom/Window/window-resize-contents-expected.txt: Updated to reflect the test actually
resizing. The old test results expected no resizing to occur.
- fast/dom/Window/window-resize-contents.html: Updated to use a resize event handler so the
test can successfully test asynchronous resizes like the ones done by WebKit2.
- fast/dom/rtl-scroll-to-leftmost-and-resize.html: Updated to use a resize event handler so
this can test asynchronous resizes. Also fixed code that was treating the arguments to resizeTo
as if they were inner coordinates rather than outer. However, the bug this tests for has not
been fixed, so need to expect failures.
- platform/mac/TestExpectations: Added a failure expection for the test above.
- platform/mac/fast/dynamic/window-resize-scrollbars-test-expected.png: Updated to expect a result
that successfully resized.
- platform/mac/fast/dynamic/window-resize-scrollbars-test-expected.txt: Ditto.
- 1:29 PM Changeset in webkit [169504] by
-
- 2 edits in trunk/Source/WebKit2
[iOS] WebKit2.framework is unused
https://bugs.webkit.org/show_bug.cgi?id=133424
Reviewed by Anders Carlsson.
- Configurations/WebKit2.xcconfig: Set SKIP_INSTALL to YES when targeting iOS.
- 10:41 AM Changeset in webkit [169503] by
-
- 2 edits in trunk/Source/WebCore
Don't use std::mutex::try_lock to check if we own a mutex
https://bugs.webkit.org/show_bug.cgi?id=133421
Reviewed by Dan Bernstein.
According the C++ standard, calling try_lock on a mutex that's already owned by the current thread
is undefined behavior, so don't do that.
- Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::guidToVersionMap):
(WebCore::updateGuidVersionMap):
(WebCore::guidToDatabaseMap):
(WebCore::guidForOriginAndName):
May 30, 2014:
- 10:12 PM Changeset in webkit [169502] by
-
- 2 edits1 add in trunk/PerformanceTests
DYEBench spits out 404 errors for learn.json
https://bugs.webkit.org/show_bug.cgi?id=133416
Reviewed by Oliver Hunt.
Add an empty learn.json file so that it won't cause a 404 error when hosted on a http server.
Bumped the version number to 0.12.
- DoYouEvenBench/Full.html:
- DoYouEvenBench/resources/todomvc/learn.json:
- 5:56 PM Changeset in webkit [169501] by
-
- 8 edits in trunk/Source/WebKit2
[iOS][WK2] When a page does not finish rotation before the end of the animation, synchronize explicitely
https://bugs.webkit.org/show_bug.cgi?id=133364
<rdar://problem/17026333>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-30
Reviewed by Sam Weinig.
When a page that does layout on rotation does not respond before the end of the animation, we end up with
a completely inconsistent state on the UIProcess (because it is unware of the new states).
The perfect way to fix this would be to make animated resize transactional and have the WebProcess resolve
conflicts. That is very complicated and the issue is uncommon, so this patch does not do that.
This patch force the synchronization whenever we finish the animation before we heard back
from the WebProcess.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _endAnimatedResize]):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::resetState):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::synchronizeDynamicViewportUpdate):
(WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
(WebKit::WebPage::synchronizeDynamicViewportUpdate):
- 5:12 PM Changeset in webkit [169500] by
-
- 12 edits in trunk/Source
REGRESSION (WebKit2): space space to insert period doesn't work in web forms.
https://bugs.webkit.org/show_bug.cgi?id=133413
<rdar://problem/16948333>
Reviewed by Benjamin Poulain.
Source/WebCore:
Adding utility functions and their exports.
- WebCore.exp.in:
- editing/TextIterator.cpp:
(WebCore::plainTextReplacingNoBreakSpace):
- editing/TextIterator.h:
- editing/VisibleUnits.cpp:
(WebCore::charactersAroundPosition):
(WebCore::characterBeforePosition): Deleted.
- editing/VisibleUnits.h:
Source/WebKit2:
iOS TextInput needs to know about content surrounding the
current position while editing. Since we don't want to
query this information synchronously when asked, we cache it
as part of the EditorState. EditorState now contains a vector of
three characters representing the content after, before and two
position before the caret position.
The patch also replaces all calls to plainText with plainTextReplacingNoBreakSpace
to work well with iOS text input.
- Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
- Shared/EditorState.h:
(WebKit::EditorState::EditorState):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _characterInRelationToCaretSelection:]):
(+[WKAutocorrectionContext autocorrectionContextWithData:markedText:selectedText:afterText:selectedRangeInMarkedText:]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestDictationContext):
(WebKit::WebPage::replaceSelectedText):
(WebKit::WebPage::replaceDictatedText):
(WebKit::WebPage::requestAutocorrectionData):
(WebKit::WebPage::syncApplyAutocorrection):
(WebKit::computeAutocorrectionContext):
- 4:10 PM Changeset in webkit [169499] by
-
- 1 copy in tags/Safari-537.77.3
Tagging it
- 4:03 PM Changeset in webkit [169498] by
-
- 2 edits in trunk/Source/WebCore
Cleanup temporary setting of image interpolation quality in GraphicsContext::drawImage*
https://bugs.webkit.org/show_bug.cgi?id=133407
Reviewed by Darin Adler.
Add helper class to set/reset image interpolation quality value.
No change in functionality.
- platform/graphics/GraphicsContext.cpp:
(WebCore::InterpolationQualityMaintainer::InterpolationQualityMaintainer):
(WebCore::InterpolationQualityMaintainer::~InterpolationQualityMaintainer):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
- 2:51 PM Changeset in webkit [169497] by
-
- 2 edits in trunk/Source/WebKit2
Fixed the build by adding back a declaration I deleted by accident :(.
Unreviewed.
- UIProcess/API/Cocoa/WKWebView.h:
- 2:41 PM Changeset in webkit [169496] by
-
- 1 edit in trunk/Source/WebKit2/ChangeLog
Fixed some ChangeLog grammar.
- 2:41 PM Changeset in webkit [169495] by
-
- 16 edits in trunk/Source/WebKit2
Unreviewed, rolling in r169490.
I change a non-ASCII apostrophe to ASCII.
Restored changeset:
"Some more copy-editing of the Modern WebKit headerdoc"
https://bugs.webkit.org/show_bug.cgi?id=133408
http://trac.webkit.org/changeset/169490
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigation.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
(NS_ENUM):
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
(NS_ENUM):
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- UIProcess/API/Cocoa/WKPreferences.h:
- UIProcess/API/Cocoa/WKProcessPool.h:
- UIProcess/API/Cocoa/WKScriptMessage.h:
- UIProcess/API/Cocoa/WKScriptMessageHandler.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKUserContentController.h:
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- 2:25 PM Changeset in webkit [169494] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Supplementary build fix for <rdar://problem/16848509>, borrowed from <rdar://problem/16701806>.
- 2:07 PM Changeset in webkit [169493] by
-
- 16 edits in trunk/Source/WebKit2
Unreviewed, rolling out r169490.
It broke the build with a mysterious warning about ASCII
Reverted changeset:
"Some more copy-editing of the Modern WebKit headerdoc"
https://bugs.webkit.org/show_bug.cgi?id=133408
http://trac.webkit.org/changeset/169490
- 1:59 PM Changeset in webkit [169492] by
-
- 2 edits in trunk/Source/WebCore
Support -apple-system-font on OS X
https://bugs.webkit.org/show_bug.cgi?id=133382
Addressing post-review comments.
- platform/mac/WebFontCache.mm:
(+[WebFontCache internalFontWithFamily:traits:weight:size:]):
- 12:26 PM Changeset in webkit [169491] by
-
- 2 edits in trunk/Source/WebCore
Remove repetitive header in HTMLInputElement.cpp
https://bugs.webkit.org/show_bug.cgi?id=133376
Patch by Prashant Hiremath <hiremathprashants@gmail.com> on 2014-05-30
Reviewed by Anders Carlsson.
It is just removal repeative headers hence no test needed.
- html/HTMLInputElement.cpp:
- 12:11 PM Changeset in webkit [169490] by
-
- 16 edits in trunk/Source/WebKit2
Some more copy-editing of the Modern WebKit headerdoc
https://bugs.webkit.org/show_bug.cgi?id=133408
Reviewed by Beth Dakin.
A copy-editor suggested some edits to the headerdoc for clarity,
style, and formatting.
I reviewed the edits and accepted about 80% of them.
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigation.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
(NS_ENUM):
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
(NS_ENUM):
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- UIProcess/API/Cocoa/WKPreferences.h:
- UIProcess/API/Cocoa/WKProcessPool.h:
- UIProcess/API/Cocoa/WKScriptMessage.h:
- UIProcess/API/Cocoa/WKScriptMessageHandler.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKUserContentController.h:
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- 11:19 AM Changeset in webkit [169489] by
-
- 2 edits in trunk/Tools
Change run-jsc-stress-tests to not resolve jsc path locally when creating a bundle
https://bugs.webkit.org/show_bug.cgi?id=133409
Reviewed by Filip Pizlo.
Handle creating a tarball the same way as running remote when processing
paths in prepareBundle.
- Scripts/run-jsc-stress-tests:
- 9:49 AM Changeset in webkit [169488] by
-
- 4 edits in trunk/LayoutTests
[GTK] Don't use logAccessibilityEvents() in aria-slider-required-attributes.html
https://bugs.webkit.org/show_bug.cgi?id=133405
Reviewed by Chris Fleizach.
Change the test to use addNotificationListener() instead.
- platform/gtk/TestExpectations: Removed failure expectation
- platform/gtk/accessibility/aria-slider-required-attributes-expected.txt: Updated
- platform/gtk/accessibility/aria-slider-required-attributes.html: Updated
- 9:47 AM Changeset in webkit [169487] by
-
- 6 edits in trunk
[ATK] Deprecate usage of logAccessibilityEvents() in layout tests
https://bugs.webkit.org/show_bug.cgi?id=132280
Reviewed by Chris Fleizach.
Tools:
Remove implementation of logAccessibilityEvents() for ATK based
ports, as this has proved to be a flaky method of checking that
ATK events are being properly emitted. Instead, it's better to use
the addNotificationListener() functions and provide a JS callback
to check that the right events are being emmitted from the tests.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
(WTR::AccessibilityController::logAccessibilityEvents): Replaced
with dummy implementation.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::logAccessibilityEvents): Removed
LayoutTests:
Removed 36 flaky expectations from TestExpectations for tests that
were ocassionally showing the output of logAccessibilityEvents()
even if they did not make use of that feature (thus the flakiness).
- platform/gtk/TestExpectations: Updated.
- 8:43 AM Changeset in webkit [169486] by
-
- 3 edits in trunk/Source/WebKit2
Crash loading skydrive.com (assertion under RemoteLayerTreeDisplayRefreshMonitor)
https://bugs.webkit.org/show_bug.cgi?id=133370
<rdar://problem/17061361>
Reviewed by Darin Adler.
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::willDestroyDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Post-landing review comments from Darin noted that checking if the
DrawingArea's m_displayRefreshMonitors contains the monitor in the
list to notify is insufficient, because a new one could have been
added with the same address. Instead, copy the HashSet, removing
at random from it and firing didUpdateLayers, but *also* removing
from it in the willDestroyDisplayRefreshMonitor callback.
This is very similar to what DisplayRefreshMonitor itself does internally
(we don't have to duplicate its code to avoid re-entry because it is
already impossible to re-enter didUpdate).
- 8:20 AM Changeset in webkit [169485] by
-
- 3 edits in trunk/Tools
[ATK] Deprecate usage of logAccessibilityEvents() in layout tests
https://bugs.webkit.org/show_bug.cgi?id=132280
Rubber stamped by Carlos Garcia Campos.
Fix two small issues with previous patch (r169483), that caused some tests to break.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks): Removed
duplicated entry.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::setSelectedTextRange): Fix boolean condition.
- 7:16 AM Changeset in webkit [169484] by
-
- 7 edits in trunk/Source/WebCore
Remove redundant GraphicsContext::drawImage() function.
https://bugs.webkit.org/show_bug.cgi?id=133347
Reviewed by Simon Fraser.
There are 2 GraphicsContext::drawImage functions with very similar parameter list. This looks
to be a source of confusion and results in passing unneeded parameters.
No change in functionality.
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::drawImageToContext):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
- platform/graphics/GraphicsContext.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
- platform/graphics/texmap/TextureMapperImageBuffer.cpp:
(WebCore::BitmapTextureImageBuffer::updateContents):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintNinePieceImage):
- 3:58 AM Changeset in webkit [169483] by
-
- 10 edits6 adds in trunk
Tools: [ATK] Added new accessibility signal: text-caret-moved.
Make AccessibilityUIElement.setSelectedTextRange work
as atk_text_set_caret_offset when given offset == 0.
https://bugs.webkit.org/show_bug.cgi?id=132527
Patch by Jarek Czekalski <Jarek Czekalski> on 2014-05-30
Reviewed by Mario Sanchez Prada.
text-caret-moved signal in accessibilityController is needed to
implement tests from Tools/TestWebKitAPI/Tests/WebKitGtk/testatk.c
as LayoutTests. Add the signal to the controller.
- WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
- WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
- WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
- WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
- WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(setSelectedTextRange): Change return type to bool.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(setSelectedTextRange): Call atk_text_set_caret_offset and return bool.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(axObjectEventListener): Add notification name AXTextCaretMoved, allow
for extra arguments passed to handler and use it for text-caret-moved offset.
(WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
Connect callback to new listener for ATK:AtkText:text-caret-moved.
Refactor so that failures be reported.
Initialize atk interfaces before trying to connect to them, see
https://bugzilla.gnome.org/show_bug.cgi?id=729922
(WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks):
Simplify code by using a vector in place of dozen variables.
- DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
Comment about not synchronizing with accessibilityController.
LayoutTests: [ATK] Convert caret offset tests from testatk.c.
https://bugs.webkit.org/show_bug.cgi?id=132527
Patch by Jarek Czekalski <Jarek Czekalski> on 2014-05-30
Reviewed by Mario Sanchez Prada.
The tests are replicated from testatk.c file, functions
testWebkitAtkCaretOffsets()
testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces()
The file was present in webkit1. Removed from trunk in r166977, so
the last version was
https://trac.webkit.org/browser/trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/testatk.c?rev=166976
What could not be verified in the same way:
- Whether element implements ATK_TEXT. If setCaretOffset
succeeds, it confirms that element is text as well. But in cases
when setCaretOffset must fail I see no way to confirm it is text
element.
- Whether position is correct through a call to
atk_text_get_caret_offset. text-caret-moved signal value is
tested instead.
Anyway these cases don't look crucial, so they are skipped.
- platform/gtk/resources/atk-helpers.js: Added.
(setCaretOffset): Added.
- platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces-expected.txt: Added.
- platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces.html: Added.
- platform/gtk/accessibility/caret-offsets-expected.txt: Added.
- platform/gtk/accessibility/caret-offsets.html: Added.
May 29, 2014:
- 7:11 PM Changeset in webkit [169482] by
-
- 5 edits in branches/safari-537.77-branch/Source
Bump versioning to 537.77.3
- 5:56 PM Changeset in webkit [169481] by
-
- 1 copy in tags/Safari-537.77.2
New TaG
- 5:52 PM Changeset in webkit [169480] by
-
- 2 edits in trunk/Source/WTF
Enable css jit by default on arm64.
https://bugs.webkit.org/show_bug.cgi?id=133246
<rdar://problem/17073407>
Reviewed by Benjamin Poulain.
- wtf/Platform.h:
Added arm64 to list of supported architectures.
- 5:25 PM Changeset in webkit [169479] by
-
- 4 edits in trunk/Source/WebCore
Prepare css jit for arm64 and other architectures.
https://bugs.webkit.org/show_bug.cgi?id=133394
Reviewed by Benjamin Poulain.
- cssjit/FunctionCall.h:
(WebCore::FunctionCall::swapArguments):
- cssjit/RegisterAllocator.h:
Use a designated temporary register on arm64 to prevent using a deallocated argument register to swap argument registers in.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
Added assertion to make sure there are enough registers.
- 5:15 PM Changeset in webkit [169478] by
-
- 14 edits in trunk/Source/WebCore
CSS JIT: add support for the pseudo classes :hover and :active
https://bugs.webkit.org/show_bug.cgi?id=133295
Reviewed by Andreas Kling.
This patch adds compilation support for :hover and :active. The code generation of both of them is trivial,
most of the patch is improving the infrastructure and safety.
The document compatibility mode is moved to its own typed enum. This ensure the values are exclusives and
the native type is known (unsigned char here). The values are changes to binary flags to take advantage of
test-and-branch on ARM64 (not used explicitely, it is automatically generated by the MacroAssembler).
The other important refactoring is the code updating the flags on RenderStyle::NonInheritedFlags.
The code was duplicated in some places so it is move into its own function addFlagToElementStyleFromContext().
The generators themself are very simple. First we check the quirks-mode exceptions, that is generally excluded
at compile time because the conditions are almost never met, even in strict mode.
Then we have two cases: style resolution and query selector. Almost everything is just function calls.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagToElementStyleFromContext):
(WebCore::SelectorCompiler::fragmentOnlyMatchesLinksInQuirksMode):
(WebCore::SelectorCompiler::getDocument):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSpecialFailureInQuirksModeForActiveAndHoverIfNeeded):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::elementIsActive):
(WebCore::SelectorCompiler::elementIsActiveForStyleResolution):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::elementIsHovered):
(WebCore::SelectorCompiler::elementIsHoveredForStyleResolution):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
- dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::setCompatibilityMode):
(WebCore::Document::implicitOpen):
(WebCore::Document::cloneDataFromDocument):
- dom/Document.h:
(WebCore::Document::compatibilityModeMemoryOffset):
(WebCore::Document::inQuirksMode):
(WebCore::Document::inLimitedQuirksMode):
(WebCore::Document::inNoQuirksMode):
(WebCore::Document::compatibilityMode): Deleted.
- html/ImageDocument.cpp:
(WebCore::ImageDocument::ImageDocument):
- html/MediaDocument.cpp:
(WebCore::MediaDocument::MediaDocument):
- html/PluginDocument.cpp:
(WebCore::PluginDocument::PluginDocument):
- html/TextDocument.cpp:
(WebCore::TextDocument::TextDocument):
- html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::setDefaultCompatibilityMode):
(WebCore::HTMLConstructionSite::setCompatibilityMode):
(WebCore::HTMLConstructionSite::setCompatibilityModeFromDoctype):
(WebCore::HTMLConstructionSite::insertDoctype):
- html/parser/HTMLConstructionSite.h:
- loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::replaceDocument):
- loader/SinkDocument.cpp:
(WebCore::SinkDocument::SinkDocument):
- page/ios/FrameIOS.mm:
(WebCore::Frame::initWithSimpleHTMLDocument):
- rendering/style/RenderStyle.h:
- 5:09 PM Changeset in webkit [169477] by
-
- 2 edits in trunk/Source/WebKit2
-[WKProcessPoolConfiguration setCachePartitionedURLSchemes:] should do a deep copy
https://bugs.webkit.org/show_bug.cgi?id=133393
Reviewed by Dan Bernstein.
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]):
- 4:56 PM Changeset in webkit [169476] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Build fix for Mavericks
- WebCore.exp.in:
- 4:52 PM Changeset in webkit [169475] by
-
- 34 edits7 adds in trunk
Roll r168668 back in.
<https://bugs.webkit.org/show_bug.cgi?id=132621>
Reviewed by Brent Fulgham.
Source/WebCore:
Tests: fast/events/beforeload-assertion.html
fast/events/beforeload-iframe-crash.html
fast/events/beforeload-input-time-crash.html
- WebCore.exp.in:
- dom/Document.cpp:
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
- dom/Document.h:
- html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::renderWidgetForJSBindings):
- html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderWidgetForJSBindings):
- page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::updateEmbeddedObjectsTimerFired):
(WebCore::FrameView::flushAnyPendingPostLayoutTasks):
(WebCore::FrameView::performPostLayoutTasks):
- page/FrameView.h:
- testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
LayoutTests:
- compositing/plugins/composited-plugin.html:
- compositing/plugins/no-backing-store.html:
- fast/dom/beforeload/flash-before-load.html:
- fast/events/beforeload-assertion-expected.txt: Added.
- fast/events/beforeload-assertion.html: Added.
- fast/events/beforeload-iframe-crash-expected.txt: Added.
- fast/events/beforeload-iframe-crash.html: Added.
- fast/events/beforeload-input-time-crash-expected.txt: Added.
- fast/events/beforeload-input-time-crash.html: Added.
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html:
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-none-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-none-blocked.html:
- http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js:
(testImpl.iframe.onload):
(testImpl):
- http/tests/security/mixedContent/insecure-plugin-in-iframe.html:
- platform/mac/plugins/supports-carbon-event-model.html:
- platform/mac/plugins/testplugin-onnew-onpaint.html:
- plugins/get-user-agent-with-null-npp-from-npp-new.html:
- plugins/mouse-click-plugin-clears-selection.html:
- plugins/netscape-plugin-map-data-to-src.html:
- plugins/no-mime-with-valid-extension.html:
- plugins/plugin-initiate-popup-window.html:
- plugins/windowless_plugin_paint_test.html:
- resources/plugin.js: Added.
(runAfterPluginLoad):
- 4:41 PM Changeset in webkit [169474] by
-
- 6 edits in trunk
Support -apple-system-font on OS X
https://bugs.webkit.org/show_bug.cgi?id=133382
Source/WebCore:
Reviewed by Simon Fraser.
Guard on both family names: "-apple-system-font" and "-webkit-system-font"
Test: platform/mac/fast/text/systemFont.html
- platform/mac/WebFontCache.mm:
(+[WebFontCache internalFontWithFamily:traits:weight:size:]):
LayoutTests:
This test makes sure that -apple-system-font is rendered the same way as -webkit-system-font.
Reviewed by Simon Fraser.
- platform/mac-mountainlion/platform/mac/fast/text/systemFont-expected.txt: Updated.
- platform/mac/fast/text/systemFont.html: Tests -apple-system-font in addition to -webkit-system-font.
- platform/mac/platform/mac/fast/text/systemFont-expected.txt: Updated.
- 4:24 PM Changeset in webkit [169473] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Build fix
- WebCore.exp.in:
- 4:04 PM Changeset in webkit [169472] by
-
- 3 edits3 adds in trunk
Loading <object> from WebArchive crashes
https://bugs.webkit.org/show_bug.cgi?id=133386
<rdar://problem/13345509>
Reviewed by Brady Eidson.
Source/WebCore:
Test: webarchive/loading/object.html
This (a) fixes the crash, and (b) avoids the crash.
- loader/DocumentLoader.cpp: (WebCore::DocumentLoader::continueAfterContentPolicy):
Some types of substitute data - such as WebArchive - don't contain HTTP result codes,
so let's not drop to <object> fallback content when status is 0.
And if the load somehow failed anyway, don't crash by trying to deliver substitute data
to a finished loader.
LayoutTests:
- webarchive/loading/object-expected.txt: Added.
- webarchive/loading/object.html: Added.
- webarchive/loading/resources/object.webarchive: Added.
- 4:00 PM Changeset in webkit [169471] by
-
- 2 edits in trunk/Websites/perf.webkit.org
Add an instruction on how to backup the database.
https://bugs.webkit.org/show_bug.cgi?id=133391
Rubber-stamped by Andreas Kling.
- Install.md:
- 3:50 PM Changeset in webkit [169470] by
-
- 2 edits in tags/Safari-538.37/Source/WebKit2
Merge r169468. <rdar://problem/17067920>
- 3:47 PM Changeset in webkit [169469] by
-
- 6 edits1 copy in branches/safari-537.77-branch
Merge r166628.
- 3:26 PM Changeset in webkit [169468] by
-
- 2 edits in trunk/Source/WebKit2
Restoring FloatingPointEnvironment initialization that was accidentally rolled out by r169176.
<https://webkit.org/b/133389>
Rubber stamped by Oliver Hunt.
- Shared/ios/ChildProcessIOS.mm:
(WebKit::ChildProcess::platformInitialize):
- 3:10 PM Changeset in webkit [169467] by
-
- 3 edits in trunk/Source/WebCore
[iOS WebGL] Fix depth buffer clearing issue.
https://bugs.webkit.org/show_bug.cgi?id=133388
Patch by Alex Christensen <achristensen@webkit.org> on 2014-05-29
Reviewed by Dean Jackson.
No new tests, but this fixes webgl/1.0.1/conformance/canvas/buffer-preserve-test.html.
- platform/graphics/mac/WebGLLayer.mm:
(-[WebGLLayer display]):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::prepareTexture):
Moved marking the layer as composited from the mac-only prepareTexture to
the end of [WebGLLayer display] which is called by mac and iOS.
- 2:47 PM Changeset in webkit [169466] by
-
- 4 edits in trunk/Source/WebKit2
Need to notify the keyboard about every KeyDown event.
https://bugs.webkit.org/show_bug.cgi?id=133383
<rdar://problem/16633975>
Reviewed by Benjamin Poulain.
A key down will generate most of the time a call to the keyboard to add input or delete.
But the event could be handled by JavaScript and its default prevented.
We need to notify the keyboard in every case to allow updating its internal state about what has been typed.
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::doneWithKeyEvent):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _didHandleKeyEvent:]):
- 2:44 PM Changeset in webkit [169465] by
-
- 17 edits in trunk/Source/WebKit2
Roll out r169439. <rdar://problem/17069364>
- 2:38 PM Changeset in webkit [169464] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Workaround for <rdar://problem/16848509>
Reviewed by David Kilzer.
- platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
- 2:37 PM Changeset in webkit [169463] by
-
- 17 edits in tags/Safari-538.37/Source/WebKit2
Roll out r169439.
- 1:23 PM Changeset in webkit [169462] by
-
- 2 edits in trunk/Source/WebInspectorUI
Fix an exception in InspectorBackend.Command.prototype.supports.
https://bugs.webkit.org/show_bug.cgi?id=133384
Reviewed by Joseph Pecoraro.
- UserInterface/Protocol/InspectorBackend.js:
(InspectorBackend.Command.prototype.supports): Use some not any.
- 1:14 PM Changeset in webkit [169461] by
-
- 2 edits in trunk/Tools
[GTK] Add a WebKit2 Performance bot.
https://bugs.webkit.org/show_bug.cgi?id=132862
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-29
Reviewed by Csaba Osztrogonác.
This adds a GTK WebKit2 perf bot.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- 1:01 PM Changeset in webkit [169460] by
-
- 4 edits in trunk/Source/WebKit2
[Cocoa] Can’t recover from subframe load errors
https://bugs.webkit.org/show_bug.cgi?id=133385
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Declared new delegate method.
- UIProcess/Cocoa/NavigationState.h: Added flag in m_navigationDelegateMethods struct.
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate): Initialize
webViewNavigationDidFailProvisionalLoadInSubframeWithError flag in the delegate methods
struct.
(WebKit::NavigationState::LoaderClient::didFailProvisionalLoadWithErrorForFrame): If the
error occurred in a subframe, invoke the new delegate method.
- 11:40 AM Changeset in webkit [169459] by
-
- 2 edits in trunk/LayoutTests
Gardening: marking js/primitive-property-access-edge-cases.html as crashy.
<https://webkit.org/b/133356>
Not reviewed.
- 11:38 AM Changeset in webkit [169458] by
-
- 2 edits in trunk/Source/WebKit2
Added a missing @result to WKPreferences headerdoc
https://bugs.webkit.org/show_bug.cgi?id=133381
Reviewed by Dan Bernstein.
- UIProcess/API/Cocoa/WKPreferences.h:
- 11:24 AM Changeset in webkit [169457] by
-
- 10 edits2 adds in trunk/Source/WebKit2
[Mac] Always use plug-in sandbox with sandboxed clients
https://bugs.webkit.org/show_bug.cgi?id=133358
<rdar://problem/15637695>
Reviewed by Anders Carlsson.
- PluginProcess/mac/PluginProcessMac.mm: (WebKit::PluginProcess::initializeSandbox):
Refuse to start if parent process is sandboxed, and plug-in process is not going to be.
None of this should run in normal case, because there are also checks on UI process side.
- Shared/Plugins/PluginModuleInfo.h:
- Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
(WebKit::NetscapePluginModule::getPluginInfo):
Added a member to PluginModuleInfo, telling whether the plug-in has a sandbox profile.
- Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
(WebKit::getPlatformPluginModuleInformation): Use the new PluginModuleInfo member,
we no longer need to check the file system here.
- WebKit2.xcodeproj/project.pbxproj:
- Shared/mac/SandboxUtilities.h: Added.
- Shared/mac/SandboxUtilities.cpp: Added. (WebKit::processIsSandboxed):
This code is simple, but include magic is not. Moved it to a separate file to
avoid repeating.
- UIProcess/API/C/mac/WKContextPrivateMac.mm: Removed an unused include.
- UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
(WebKit::PluginInfoStore::shouldUsePlugin): Don't use unsandboxed plug-ins in
sandboxed applications.
- UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformGetLaunchOptions): Don't ever pass disable-sandbox
from sandboxed processes.
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
(WebKit::XPCServiceInitializerDelegate::isClientSandboxed):
Use the new shared code in SandboxUtilities.h.
- 11:19 AM Changeset in webkit [169456] by
-
- 2 edits in trunk/Source/WebKit2
Crash loading skydrive.com (assertion under RemoteLayerTreeDisplayRefreshMonitor)
https://bugs.webkit.org/show_bug.cgi?id=133370
<rdar://problem/17061361>
Reviewed by Anders Carlsson.
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Copy the set of refresh monitors so that we don't try to mutate the list we're iterating,
and don't try to fire refresh monitors that were removed in a previous iteration of the loop.
- 11:06 AM Changeset in webkit [169455] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (iOS WebKit2): Find-in-Page doesn't work in subframes
https://bugs.webkit.org/show_bug.cgi?id=133372
<rdar://problem/17045070>
Reviewed by Simon Fraser.
- WebProcess/WebPage/ios/FindControllerIOS.mm:
(WebKit::FindController::willFindString):
(WebKit::FindController::didFailToFindString):
(WebKit::FindController::didHideFindIndicator):
Flip ignoreCompositionSelectionChange and updateAppearanceEnabled on all
frames, not just the main frame, because the found string can be in a subframe.
Ideally we would flip it on/off for each frame as we move the selection between them,
but would require a lot of work (and the overhead of touching each frame shouldn't be significant).
- 10:49 AM Changeset in webkit [169454] by
-
- 2 edits in trunk/LayoutTests
Gardening: marking js/primitive-property-access-edge-cases.html as flaky.
<https://webkit.org/b/133356>
Not reviewed.
- 10:40 AM Changeset in webkit [169453] by
-
- 2 edits in trunk/Tools
Fixed the WebKitTestRunner build after r169452.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::initialize):
- 10:27 AM Changeset in webkit [169452] by
-
- 7 edits in trunk/Source/WebKit2
WKBundleActivateMacFontAscentHack is unused
https://bugs.webkit.org/show_bug.cgi?id=133379
Reviewed by Anders Carlsson.
- WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleActivateMacFontAscentHack): Deleted.
- WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
- WebProcess/InjectedBundle/InjectedBundle.h:
- WebProcess/InjectedBundle/efl/InjectedBundleEfl.cpp:
(WebKit::InjectedBundle::activateMacFontAscentHack): Deleted.
- WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
(WebKit::InjectedBundle::activateMacFontAscentHack): Deleted.
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::activateMacFontAscentHack): Deleted.
- 10:09 AM Changeset in webkit [169451] by
-
- 5 edits in trunk/Source
Versioning.
- 9:41 AM Changeset in webkit [169450] by
-
- 3 edits in trunk/Source/WebCore
Perserve caption selection in fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=133350
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-29
Reviewed by Eric Carlson.
Use the logic from the inline player to calculate the selected caption index.
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::mediaControlsHost):
Expose mediaControlsHost() for use by WebVideoFullscreenModelMediaElement.
- platform/ios/WebVideoFullscreenModelMediaElement.mm:
(WebVideoFullscreenModelMediaElement::updateLegibleOptions):
Use logic from buildCaptionsMenu from mediaControlsApple.js.
- 9:26 AM Changeset in webkit [169449] by
-
- 3 edits2 adds in trunk
Use correct version of requiresFullscreenForVideoPlayback().
https://bugs.webkit.org/show_bug.cgi?id=133331
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-29
Reviewed by Eric Carlson.
Source/WebCore:
Test: media/video-fullscreeen-only-controls.html
Update the last place not yet using m_mediaSession->requiresFullscreenForVideoPlayback.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
switch to media session version for requriesFullscreenForVideoPlayback.
LayoutTests:
- media/video-fullscreeen-only-controls-expected.txt: Added.
- media/video-fullscreeen-only-controls.html: Added. Make sure video element
controls show even when not specified if inline playback is restricted.
- 9:10 AM Changeset in webkit [169448] by
-
- 3 edits1 add in trunk/Source/WebKit2
Add a sandbox profile for com.apple.appstore.CodeRedeemerNetscapePlugin
https://bugs.webkit.org/show_bug.cgi?id=133360
Reviewed by Sam Weinig.
- Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: Looks like
anyone using camera would need access to CoreMedia preferences.
- Resources/PlugInSandboxProfiles/com.apple.appstore.CodeRedeemerNetscapePlugin.sb: Added.
- WebKit2.xcodeproj/project.pbxproj: Added the profile.
- 9:09 AM Changeset in webkit [169447] by
-
- 4 edits1 add in trunk/Source
DFG::DCEPhase inserts into an insertion set in reverse, causing hilarious basic block corruption if you kill a lot of NewArrays
https://bugs.webkit.org/show_bug.cgi?id=133368
Reviewed by Mark Lam.
Source/JavaScriptCore:
- dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::fixupBlock): Loop in the right order so that we insert in the right order.
- tests/stress/new-array-dead.js: Added.
(foo):
Source/WTF:
- wtf/Insertion.h:
(WTF::executeInsertions): This algorithm is only correct if insertions are added in the right order. Assert that the order is right.
- 9:05 AM Changeset in webkit [169446] by
-
- 4 edits in trunk/Source
[GTK] Add support for HiDPI icons
https://bugs.webkit.org/show_bug.cgi?id=133377
Reviewed by Martin Robinson.
Source/WebCore:
Use the GTK+ missing icon at 16 or 32 size depending on the device
scale factor.
- platform/graphics/gtk/ImageGtk.cpp:
(WebCore::loadMissingImageIconFromTheme):
(WebCore::Image::loadPlatformResource):
Source/WebKit2:
- PlatformGTK.cmake: Compile also the @2x versions for the builtin icons.
- 8:10 AM Changeset in webkit [169445] by
-
- 12 edits in trunk/Source
[GTK] Add HighDPI support for non-accelerated compositing contents
https://bugs.webkit.org/show_bug.cgi?id=131562
Patch by Owen Taylor <otaylor@redhat.com> on 2014-05-29
Reviewed by Anders Carlsson.
Source/WebCore:
No new tests. This will be tested once we have the proper dependencies in the WebKit testing
JHBuild.
- platform/cairo/WidgetBackingStore.h:
(WebCore::WidgetBackingStore::WidgetBackingStore): Accept a device scale argument.
- platform/cairo/WidgetBackingStoreCairo.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
- platform/cairo/WidgetBackingStoreCairo.h: Accept a device scale argument.
- platform/graphics/cairo/CairoUtilities.cpp: Add a new helper to set the device scale if Cairo built against is new enough.
- platform/graphics/cairo/CairoUtilities.h:
- platform/gtk/GtkVersioning.h: Add the HAVE_GTK_SCALE_FACTOR macro.
- platform/gtk/WidgetBackingStoreGtkX11.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
- platform/gtk/WidgetBackingStoreGtkX11.h: Accept a device scale argument.
Source/WebKit2:
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(deviceScaleFactorChanged): Added this callback to pass scale changes to the page proxy.
(webkitWebViewBaseCreateWebPage): Attach the callback to the notify signal.
- UIProcess/WebPageProxy.cpp:
- UIProcess/cairo/BackingStoreCairo.cpp:
(WebKit::WebPageProxy::setCustomDeviceScaleFactor): Do not set a
custom device scale factor for cairo when it's not supported.
(WebKit::createBackingStoreForGTK): Pass the scale factor to the WebCore backing store.
(WebKit::BackingStore::incorporateUpdate): Ditto.
- 3:33 AM Changeset in webkit [169444] by
-
- 8 edits in trunk/Source/WebKit2
[GTK] Use GMainLoopSource for idle and timeout sources in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=130081
Reviewed by Martin Robinson.
- Platform/WorkQueue.h:
- Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::registerSocketEventHandler): Stop pretending it's
possible to register a socket event handler for more than one
descriptor.
(WorkQueue::unregisterSocketEventHandler):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfter):
- Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::DownloadClient):
(WebKit::DownloadClient::~DownloadClient):
(WebKit::DownloadClient::didReceiveData):
(WebKit::DownloadClient::handleResponse):
(WebKit::DownloadClient::handleResponseLater):
- UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::~PluginInfoCache):
(WebKit::PluginInfoCache::saveToFile):
(WebKit::PluginInfoCache::updatePluginInfo):
- UIProcess/Plugins/gtk/PluginInfoCache.h:
- WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::LayerTreeHostGtk):
(WebKit::LayerTreeHostGtk::layerFlushTimerFired):
(WebKit::LayerTreeHostGtk::scheduleLayerFlush):
(WebKit::LayerTreeHostGtk::cancelPendingLayerFlush):
- WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
- 2:38 AM Changeset in webkit [169443] by
-
- 3 edits in trunk
[WK2][GTK] ASSERTION FAILED: m_status == Scheduled in GMainLoopSource
https://bugs.webkit.org/show_bug.cgi?id=131220
Reviewed by Philippe Normand.
Unskip inspector-protocol/dom/remove-multiple-nodes.html.
- platform/gtk/TestExpectations:
May 28, 2014:
- 11:56 PM Changeset in webkit [169442] by
-
- 1 copy in tags/Safari-538.37
New Tag.
- 9:06 PM Changeset in webkit [169441] by
-
- 2 edits in trunk/Tools
Unreviewed. Update my email addresses in contributors.json.
- Scripts/webkitpy/common/config/contributors.json:
- 8:22 PM Changeset in webkit [169440] by
-
- 10 edits in trunk/Source/WebCore
Captions during HLS playback flash/are difficult to readily
https://bugs.webkit.org/show_bug.cgi?id=133365
<rdar://problem/16584132>
Reviewed by Eric Carlson.
Correct two problems:
- Add new logic to handle cues that are identical to existing cues, except that they cover a slightly later moment in playback. For example, a cue encoding device might emit a cue at 24 fps, with many of the cues containing the same content but covering only 1/24th of a second.
Rather than hiding and displaying our cues at the cue encoding rate, we should
simply continue to display the same cue as long as the content is unchanged.
- The cue "isEqual" logic for TextTrackCueGeneric improperly short-circuited the VTTCue isEqual logic. This was done to avoid a false failure due to the cue type being 'generic' rather than 'vtt', but incorrectly treated cues with non-matching text as equal.
- html/track/DataCue.cpp:
(WebCore::DataCue::cueContentsMatch): Move cue comparison code to new method that
doesn't check that the 'type' of the cue is identical.
(WebCore::DataCue::isEqual): Modified to use new 'cueContentsMatch' method.
(WebCore::DataCue::isStartOfCue): Confirms cues match except for start and end times.
- html/track/DataCue.h:
- html/track/TextTrack.cpp:
(WebCore::TextTrack::hasCue): Modify to check if a new cue is simply a continuation
of an existing cue.
- html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::cueContentsMatch): New method containing the equality code
that used to live in 'isEqual'.
(WebCore::TextTrackCue::isEqual): Modified to use new 'cueContentsMatch' method.
(WebCore::TextTrackCue::isStartOfCue): Confirms cues match except for start and
end times.
- html/track/TextTrackCue.h:
- html/track/TextTrackCueGeneric.cpp:
(WebCore::TextTrackCueGeneric::cueContentsMatch): New method containing the equality
code that used to live in 'isEqual'.
(WebCore::TextTrackCueGeneric::isEqual): Modified to use new 'cueContentsMatch' method.
(WebCore::TextTrackCueGeneric::isStartOfCue): Confirms cues match except for start and
end times.
- html/track/TextTrackCueGeneric.h:
- html/track/VTTCue.cpp:
(WebCore::VTTCue::cueContentsMatch): New method containing the equality code that
used to live in 'isEqual'.
(WebCore::VTTCue::isEqual): Modified to use new 'cueContentsMatch' method.
(WebCore::VTTCue::isStartOfCue): Confirms cues match except for start and end times.
- html/track/VTTCue.h:
- 6:41 PM Changeset in webkit [169439] by
-
- 17 edits in trunk/Source/WebKit2
viewStateDidChange should always fully update ViewState
https://bugs.webkit.org/show_bug.cgi?id=133159
Reviewed by Anders Carlson.
Currently WebPageProxy::viewStateDidChange is passed a mask of bits to update.
This has the following negative consequences:
– WKWebView implicitly requires more detailed knowledge of the internal implementation of the PageClient.
– Updates may unnecessarily be split over multiple IPC messages.
– In order to support partial updates we make multiple virtual function calls to PageClient, which then makes duplicate objc calls.
Better to just always update the entire ViewState.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView didMoveToWindow]):
- removed argument to viewStateDidChange.
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::viewState):
(WebKit::PageClientImpl::isViewWindowActive): Deleted.
(WebKit::PageClientImpl::isViewFocused): Deleted.
(WebKit::PageClientImpl::isViewVisible): Deleted.
(WebKit::PageClientImpl::isViewInWindow): Deleted.
- UIProcess/API/gtk/PageClientImpl.h:
- merged isViewWindowActive/isViewFocused/isViewVisible/isViewInWindow to viewState.
- UIProcess/API/mac/WKView.mm:
(-[WKView becomeFirstResponder]):
(-[WKView resignFirstResponder]):
(-[WKView viewDidMoveToWindow]):
(-[WKView _windowDidBecomeKey:]):
(-[WKView _windowDidResignKey:]):
(-[WKView _windowDidMiniaturize:]):
(-[WKView _windowDidDeminiaturize:]):
(-[WKView _windowDidOrderOffScreen:]):
(-[WKView _windowDidOrderOnScreen:]):
(-[WKView _windowDidChangeOcclusionState:]):
(-[WKView viewDidHide]):
(-[WKView viewDidUnhide]):
(-[WKView _activeSpaceDidChange:]):
(-[WKView _setThumbnailView:]):
(-[WKView endDeferringViewInWindowChanges]):
(-[WKView endDeferringViewInWindowChangesSync]):
- removed argument to viewStateDidChange.
- UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::viewState):
(WebKit::WebView::isViewWindowActive): Deleted.
(WebKit::WebView::isViewFocused): Deleted.
(WebKit::WebView::isViewVisible): Deleted.
(WebKit::WebView::isViewInWindow): Deleted.
- UIProcess/CoordinatedGraphics/WebView.h:
- merged isViewWindowActive/isViewFocused/isViewVisible/isViewInWindow to viewState.
- UIProcess/PageClient.h:
(WebKit::PageClient::isViewVisibleOrOccluded): Deleted.
(WebKit::PageClient::isVisuallyIdle): Deleted.
- merged isViewVisibleOrOccluded/isVisuallyIdle to subclass viewState methods.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::reattachToWebProcess):
- updateViewState -> PageClient::viewState
(WebKit::WebPageProxy::viewStateDidChange):
- argument removed; updateViewState -> PageClient::viewState.
(WebKit::WebPageProxy::setCursor):
- call isViewWindowActive on WebPageProxy, rather than PageClient.
(WebKit::WebPageProxy::updateBackingStoreDiscardableState):
- call isViewWindowActive on WebPageProxy, rather than PageClient.
(WebKit::WebPageProxy::updateViewState): Deleted.
- removed - viewState method moved to PageClient.
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::isViewWindowActive):
- added missing implementation.
(WebKit::WebPageProxy::isViewVisible):
- removed argument to viewStateDidChange.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::windowServerConnectionStateChanged):
- removed argument to viewStateDidChange.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::viewState):
(WebKit::PageClientImpl::isViewWindowActive): Deleted.
(WebKit::PageClientImpl::isViewFocused): Deleted.
(WebKit::PageClientImpl::isViewVisible): Deleted.
(WebKit::PageClientImpl::isViewInWindow): Deleted.
(WebKit::PageClientImpl::isViewVisibleOrOccluded): Deleted.
(WebKit::PageClientImpl::isVisuallyIdle): Deleted.
- merged isViewWindowActive/isViewFocused/isViewVisible/isViewInWindow to viewState.
- UIProcess/ios/WKContentView.mm:
(-[WKContentView didMoveToWindow]):
(-[WKContentView _applicationDidEnterBackground:]):
(-[WKContentView _applicationWillEnterForeground:]):
- removed argument to viewStateDidChange.
- UIProcess/mac/PageClientImpl.h:
- UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::viewState):
(WebKit::PageClientImpl::showCorrectionPanel):
(WebKit::PageClientImpl::showDictationAlternativeUI):
(WebKit::PageClientImpl::isViewWindowActive): Deleted.
(WebKit::PageClientImpl::isViewFocused): Deleted.
(WebKit::PageClientImpl::isViewVisibleOrOccluded): Deleted.
(WebKit::PageClientImpl::isVisuallyIdle): Deleted.
- merged isViewWindowActive/isViewFocused/isViewVisible/isViewInWindow to viewState.
- 4:26 PM Changeset in webkit [169438] by
-
- 10 edits in trunk/Source/WebCore
Whoops, update bindings tests results.
- 4:14 PM Changeset in webkit [169437] by
-
- 4 edits in trunk/Source/WebKit2
Add Obj-C API for cache partitioned URL schemes
https://bugs.webkit.org/show_bug.cgi?id=133361
<rdar://problem/17035415>
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _initWithConfiguration:]):
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration cachePartitionedURLSchemes]):
(-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]):
(-[_WKProcessPoolConfiguration copyWithZone:]):
- 3:54 PM Changeset in webkit [169436] by
-
- 2 edits in trunk/Source/WebKit2
[iOS WebKit2] Sometimes Safari gets into a limbo state after web process crash
<rdar://problem/17029526>
https://bugs.webkit.org/show_bug.cgi?id=133362
Reviewed by Dan Bernstein.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
Remove unnecessary initialization of a unique_ptr.
(WebKit::WebPageProxy::reattachToWebProcess):
Move calls to update the view state and activity tokens to after we have swapped in the new process.
(WebKit::WebPageProxy::resetStateAfterProcessExited):
Clear the activity token on process exit.
- 2:48 PM Changeset in webkit [169435] by
-
- 3 edits in trunk/Source/WebKit2
Add WKWebView SPI to forcefully kill the associated Web process
https://bugs.webkit.org/show_bug.cgi?id=133357
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _killWebContentProcess]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 2:28 PM Changeset in webkit [169434] by
-
- 2 edits in trunk/LayoutTests
Marking test as flaky pending further review.
https://bugs.webkit.org/show_bug.cgi?id=133351
Unreviewed gardening.
Skip css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html
- 1:54 PM Changeset in webkit [169433] by
-
- 14 edits in trunk
Make DOM properties exposed as instance properties use the base object instead of |this|
https://bugs.webkit.org/show_bug.cgi?id=133353
Reviewed by Geoffrey Garen.
Source/WebCore:
Make the bindings generator emit code that uses the base object for
a property, rather than the this object. This means that attributes
that we need to be treated as instance properties will match their old
instance-based behaviour.
- bindings/scripts/CodeGeneratorJS.pm:
(InterfaceRequiresAttributesOnInstanceForCompatibility):
(InterfaceRequiresAttributesOnInstance):
(GetCastingHelperForBaseObject):
(GenerateImplementation):
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::jsTestActiveDOMObjectExcitingAttr):
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::jsTestExceptionName):
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::jsTestInterfaceImplementsStr3):
(WebCore::jsTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
(WebCore::setJSTestInterfaceImplementsStr2):
(WebCore::setJSTestInterfaceImplementsStr3):
(WebCore::setJSTestInterfaceImplementsNode):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalNode):
- bindings/scripts/test/JS/JSTestNondeterministic.cpp:
(WebCore::setJSTestNondeterministicNondeterministicWriteableAttr):
(WebCore::setJSTestNondeterministicNondeterministicExceptionAttr):
(WebCore::setJSTestNondeterministicNondeterministicGetterExceptionAttr):
(WebCore::setJSTestNondeterministicNondeterministicSetterExceptionAttr):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::jsTestTypedefsConstructorTestSubObj):
(WebCore::setJSTestTypedefsUnsignedLongLongAttr):
(WebCore::setJSTestTypedefsImmutableSerializedScriptValue):
(WebCore::setJSTestTypedefsAttrWithGetterException):
(WebCore::setJSTestTypedefsAttrWithSetterException):
(WebCore::setJSTestTypedefsStringAttrWithGetterException):
(WebCore::setJSTestTypedefsStringAttrWithSetterException):
LayoutTests:
Update tests to cover change in expected behaviour.
- js/dom/dom-as-prototype-assignment-exception-expected.txt:
- js/dom/dom-attributes-on-mismatch-type-expected.txt:
- js/dom/dom-attributes-on-mismatch-type.html:
- js/dom/script-tests/dom-as-prototype-assignment-exception.js:
- 1:26 PM Changeset in webkit [169432] by
-
- 2 edits in trunk/Source/WebKit2
[Cocoa] Crash when trying to decode an instance of a class inheriting from WKObject
https://bugs.webkit.org/show_bug.cgi?id=133355
Reviewed by Anders Carlsson.
- Shared/Cocoa/WKObject.mm:
(-[WKObject classForCoder]): Override this NSObject method to forward to the
target object.
(-[WKObject classForKeyedArchiver]): Ditto.
- 12:41 PM Changeset in webkit [169431] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, fix not-x86 32-bit.
- llint/LowLevelInterpreter32_64.asm:
- 12:34 PM Changeset in webkit [169430] by
-
- 5 edits in trunk/Source
[iOS WK2] Improve behavior of position:fixed inside accelerated overflow-scroll
https://bugs.webkit.org/show_bug.cgi?id=133352
Reviewed by Tim Horton.
Source/WebCore:
When adjusting layers inside accelerated overflow-scroll, pass a delta
down to descendant nodes. Fix behavior of sticky nodes inside fixed nodes
inside overflow scroll (sticky should only be affected if the parent node
is a scrolling node).
- page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::updateLayersAfterAncestorChange): Just remove
some .get()
- page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateLayersAfterAncestorChange): Remove .get()s.
We never care about the cumulative delta here, because sticky nodes only respond to
changes in their direct scrolling ancestors. Only adjust the layer if the parent
is a scrolling node.
Source/WebKit2:
Pass the correct delta down to descendant nodes.
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateChildNodesAfterScroll):
- 12:21 PM Changeset in webkit [169429] by
-
- 2 edits2 adds in trunk/Tools
Need an API test for bug #133193 (r169315)
<https://bugs.webkit.org/show_bug.cgi?id=133324>
This adds an API test that ensures that calling "stop loading" during a
"did fail provisional load" callback doesn't crash.
Reviewed by Andy Estes.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Add new files to project.
- TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad.cpp: Added.
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
If the message is the "test done" message, record that.
(TestWebKitAPI::setInjectedBundleClient):
Register a function for the "did receive message from injected bundle"
callback.
(TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame):
Assert that we received the message from the injected bundle, and set
'done' to finish the test.
(TestWebKitAPI::TEST):
Create a WebView, register a page loader client for the "did fail
provisional load" callback, and load a non-existent resource.
- TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad_bundle.cpp: Added.
(TestWebKitAPI::StopLoadingDuringDidFailProvisionalLoadTest::StopLoadingDuringDidFailProvisionalLoadTest):
(TestWebKitAPI::didFailProvisionalLoadWithErrorForFrameCallback):
Tell the StopLoadingDuringDidFailProvisionalLoadTest object that the
provisional load failed.
(TestWebKitAPI::StopLoadingDuringDidFailProvisionalLoadTest::didCreatePage):
Register a page loader client for the "did fail provisional load"
callback.
(TestWebKitAPI::StopLoadingDuringDidFailProvisionalLoadTest::didFailProvisionalLoad):
Call WKBundlePageStopLoading() during the callback. This not crashing
is what we're ensuring with this test.
- 11:59 AM Changeset in webkit [169428] by
-
- 3 edits2 adds in trunk/Source/JavaScriptCore
Arrayify neglects to inform the clobberizer that it might fire watchpoints
https://bugs.webkit.org/show_bug.cgi?id=133340
Reviewed by Mark Lam.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize): Be honest.
- llint/LowLevelInterpreter32_64.asm: Profile the object, not its structure.
- tests/stress/arrayify-fires-watchpoint.js: Added.
(foo):
(test):
(makeObjectArray):
- tests/stress/arrayify-structure-bad-test.js: Added.
(foo):
(test):
- 11:31 AM Changeset in webkit [169427] by
-
- 2 edits2 adds in trunk
AX: WebKit does not recognize ARIA 1.1 tables
https://bugs.webkit.org/show_bug.cgi?id=133163
Reviewed by Darin Adler.
The AXObjectCache code that determines which object to create based on the role needs to be token fallback aware.
Test: accessibility/table-fallback-roles-expose-element-attributes.html
- accessibility/AXObjectCache.cpp:
(WebCore::nodeHasRole):
- 11:07 AM Changeset in webkit [169426] by
-
- 3 edits in trunk/Source/WebKit2
[iOS] REGRESSION (r168388): DidNotHandleTapAsClick not sent when commitPotentialTap() fails
https://bugs.webkit.org/show_bug.cgi?id=133349
Reviewed by Benjamin Poulain.
WebPage::commitPotentialTap() fails when a recognized single tap cannot be sent as a synthetic click event.
We should send WebPageProxy::DidNotHandleTapAsClick in these cases.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::commitPotentialTap):
(WebKit::WebPage::commitPotentialTapFailed):
- 9:38 AM Changeset in webkit [169425] by
-
- 4 edits2 adds in trunk
REGRESSION (r168046): Invalid layout in multicol
https://bugs.webkit.org/show_bug.cgi?id=133322
Reviewed by Antti Koivisto.
Source/WebCore:
In some situations, deleting the line boxes of a multicol element causes the line to region
link to become invalid.
Test: fast/multicol/newmulticol/multicol-inside-multicol.html
- rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::clearLinesToRegionMap):
(WebCore::RenderFlowThread::deleteLines):
(WebCore::RenderFlowThread::willBeDestroyed):
- rendering/RenderFlowThread.h:
LayoutTests:
- fast/multicol/newmulticol/multicol-inside-multicol-expected.html: Added.
- fast/multicol/newmulticol/multicol-inside-multicol.html: Added.
- 9:22 AM Changeset in webkit [169424] by
-
- 8 edits in trunk/Source/WebKit2
Unreviewed, rolling out r169423.
https://bugs.webkit.org/show_bug.cgi?id=133348
It makes a lot of tests crash in assert (Requested by KaL on
#webkit).
Reverted changeset:
"[GTK] Use GMainLoopSource for idle and timeout sources in
WebKit2"
https://bugs.webkit.org/show_bug.cgi?id=130081
http://trac.webkit.org/changeset/169423
- 8:34 AM Changeset in webkit [169423] by
-
- 8 edits in trunk/Source/WebKit2
[GTK] Use GMainLoopSource for idle and timeout sources in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=130081
Reviewed by Martin Robinson.
- Platform/WorkQueue.h:
- Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::registerSocketEventHandler): Stop pretending it's
possible to register a socket event handler for more than one
descriptor.
(WorkQueue::unregisterSocketEventHandler):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfter):
- Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::DownloadClient):
(WebKit::DownloadClient::~DownloadClient):
(WebKit::DownloadClient::didReceiveData):
(WebKit::DownloadClient::handleResponse):
(WebKit::DownloadClient::handleResponseLater):
- UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::~PluginInfoCache):
(WebKit::PluginInfoCache::saveToFile):
(WebKit::PluginInfoCache::updatePluginInfo):
- UIProcess/Plugins/gtk/PluginInfoCache.h:
- WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::LayerTreeHostGtk):
(WebKit::LayerTreeHostGtk::layerFlushTimerFired):
(WebKit::LayerTreeHostGtk::scheduleLayerFlush):
(WebKit::LayerTreeHostGtk::cancelPendingLayerFlush):
- WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
- 7:28 AM Changeset in webkit [169422] by
-
- 7 edits in trunk/Source/WebKit2
[Cocoa] Can't use bundle-defined classes for bundle parameters
https://bugs.webkit.org/show_bug.cgi?id=133339
Reviewed by Anders Carlsson.
Ensure that bundle parameters are decoded only after the injected bundle is loaded.
- WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::create): Moved the definition from the header to here, added the
lagacy initializationUserData as a parameter, and made this function set the sandbox
extension and load the bundle.
(WebKit::InjectedBundle::InjectedBundle): Removed call to platformInitialize.
- WebProcess/InjectedBundle/InjectedBundle.h:
(WebKit::InjectedBundle::setSandboxExtension): Deleted.
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::initialize): Renamed the load function to this, and added the
creation parameters as a parameter. Moved code to initialize the bundle paramters from
platformInitialize to here. Changed the class passed to -decodeObjectOfClass:forKey: to
NSObject, to allow arbitrary types in the values, and added an assertion that the
top-level object is a dictionary.
(WebKit::InjectedBundle::platformInitialize): Deleted.
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess): Changed to pass the legacy initialization user
data to InjectedBundle::create() and removed code to separately set the sandbox extension
and load the bundle, which is now done by create().
- 6:28 AM Changeset in webkit [169421] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed. Fix warning: unused parameter 'frame'
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didFinishDocumentLoad):
- 4:43 AM Changeset in webkit [169420] by
-
- 4 edits1 delete in trunk/Source/WebCore
Remove DocumentThreadableLoaderClient.h
https://bugs.webkit.org/show_bug.cgi?id=133341
Reviewed by Gyuyoung Kim.
DocumentThreadableLoaderClient is not used anymore.
- WebCore.order:
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::redirectReceived):
- loader/DocumentThreadableLoaderClient.h: Removed.
- loader/ThreadableLoaderClient.h:
(WebCore::ThreadableLoaderClient::isDocumentThreadableLoaderClient): Deleted.
- 3:11 AM Changeset in webkit [169419] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Update GObject DOM bindings symbols file after r169017.
- bindings/gobject/webkitdom.symbols: Add webkit_dom_navigator_get_hardware_concurrency.
- 2:49 AM Changeset in webkit [169418] by
-
- 4 edits in trunk
[GTK] Make it possible to build with FTL enabled
https://bugs.webkit.org/show_bug.cgi?id=133219
Reviewed by Philippe Normand.
.:
Add LLVM and LIBCXXABI as dependencies when building with FTL enabled.
- Source/cmake/OptionsGTK.cmake:
Tools:
- gtk/jhbuild-optional.modules: Add llvm from svn and build the
same revision than mac.
- 2:47 AM Changeset in webkit [169417] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r168868): [GTK] Element.offset* client* scroll* API changed
https://bugs.webkit.org/show_bug.cgi?id=133313
Reviewed by Philippe Normand.
Keep old API that uses long also for GObject bindings.
- dom/Element.idl:
- 1:50 AM Changeset in webkit [169416] by
-
- 5 edits in trunk
[CMake] Clean up FAST_MOBILE_SCROLLING
https://bugs.webkit.org/show_bug.cgi?id=133342
Reviewed by Gyuyoung Kim.
FAST_MOBILE_SCROLLING was removed in r168726.
- Source/cmake/OptionsEfl.cmake:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmakeconfig.h.cmake:
May 27, 2014:
- 11:08 PM Changeset in webkit [169415] by
-
- 5 edits in branches/safari-537.77-branch/Source
Versioning.
- 11:05 PM Changeset in webkit [169414] by
-
- 1 copy in tags/Safari-537.77.1
New tag.
- 10:08 PM Changeset in webkit [169413] by
-
- 5 edits2 deletes in trunk
Unreviewed, rolling out r169400.
https://bugs.webkit.org/show_bug.cgi?id=133338
Broke the iOS build in
LocalizedDateCache::calculateMaximumWidth() (Requested by smfr
on #webkit).
Reverted changeset:
"SVG TextRuns do not always get RenderingContexts"
https://bugs.webkit.org/show_bug.cgi?id=133198
http://trac.webkit.org/changeset/169400
- 9:46 PM Changeset in webkit [169412] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (Margin tiles): Background gradient on dom.spec.whatwg.org is very slow to render
https://bugs.webkit.org/show_bug.cgi?id=133335
<rdar://problem/17011392>
Reviewed by Simon Fraser.
- platform/graphics/Image.cpp:
(WebCore::Image::drawTiled):
Make cross-platform and use some iOS code which avoids patterned drawing when the pattern buffer
would be very large. Instead, it calls draw() repeatedly over the pattern space, avoiding the allocation
of a huge (in the case of bug 133335, nearly 2GB) buffer.
- 9:44 PM Changeset in webkit [169411] by
-
- 15 edits in trunk/Source
[iOS WK2] Fix behavior of position:sticky inside accelerated overflow-scroll
https://bugs.webkit.org/show_bug.cgi?id=133334
<rdar://problem/16462535>
Reviewed by Tim Horton.
When the scroll position changes in an accelerated overflow-scroll element, we have
to update child nodes in the scrolling tree for position:sticky. That requires a
more generic ability to update the scrolling tree after some arbitrary zoom or
scroll. To do this, we need to know the current fixed position rect, rather than
having it passed in.
So make the fixed position rect available from ScrollingTree, and make it possible
to get the current scrollPosition() from any ScrollingTreeScrollingNode.
Also, implement updateLayersAfterDelegatedScroll() in ScrollingTreeOverflowScrollingNodeIOS,
and have it update descendant layers.
Finally, fix ScrollingTreeOverflowScrollingNode to use the correct rectangle for its
constraints math, using the scroll position of the parent node if appropriate.
Source/WebCore:
- page/scrolling/ScrollingTree.h:
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
- page/scrolling/ios/ScrollingTreeIOS.cpp:
(WebCore::ScrollingTreeIOS::fixedPositionRect):
- page/scrolling/ios/ScrollingTreeIOS.h:
- page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateLayersAfterAncestorChange):
Source/WebKit2:
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
- UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::fixedPositionRect):
- UIProcess/Scrolling/RemoteScrollingTree.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterDelegatedScroll):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateChildNodesAfterScroll):
- UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::customFixedPositionRect):
- 9:44 PM Changeset in webkit [169410] by
-
- 18 edits in trunk/Source
Do some renaming in the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=133333
Reviewed by Tim Horton.
Source/WebCore:
Rename ScrollingTreeNode::parentScrollPositionDidChange() to updateLayersAfterAncestorChange()
since this goes deep and to indicate that it's about layer updating.
Also rename the "viewportRect" parameter to "fixedPositionRect", since on iOS
this is the custom fixed-position rect that changes on zooming.
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling):
- page/scrolling/ScrollingTree.h:
- page/scrolling/ScrollingTreeFrameScrollingNode.h:
- page/scrolling/ScrollingTreeNode.h:
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateLayersAfterViewportChange):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
- page/scrolling/mac/ScrollingTreeFixedNode.h:
- page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::updateLayersAfterAncestorChange):
(WebCore::ScrollingTreeFixedNode::parentScrollPositionDidChange): Deleted.
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
- page/scrolling/mac/ScrollingTreeStickyNode.h:
- page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateLayersAfterAncestorChange):
(WebCore::ScrollingTreeStickyNode::parentScrollPositionDidChange): Deleted.
Source/WebKit2:
Rename ScrollingTreeNode::parentScrollPositionDidChange() to updateLayersAfterAncestorChange()
since this goes deep and to indicate that it's about layer updating.
Also rename the "viewportRect" parameter to "fixedPositionRect", since on iOS
this is the custom fixed-position rect that changes on zooming.
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::viewportChangedViaDelegatedScrolling):
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterViewportChange):
- 9:44 PM Changeset in webkit [169409] by
-
- 7 edits2 copies in trunk/Source/WebCore
Instantiate a ScrollingTreeMac on Mac
https://bugs.webkit.org/show_bug.cgi?id=133332
Reviewed by Tim Horton.
Mac previously instantiated a ThreadedScrollingTree, but this has no platform
knowledge. To support future expansion, create a ScrollingTreeMac subclass and
instantiate that on Mac.
Also protect ScrollingCoordinatorMac in PLATFORM(MAC) #ifdefs and remove it from the
EXCLUDED_SOURCE_FILE_NAMES list in the xcconfig file, following general trends.
- Configurations/WebCore.xcconfig:
- WebCore.xcodeproj/project.pbxproj:
- page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::create): Deleted.
- page/scrolling/ThreadedScrollingTree.h:
- page/scrolling/mac/ScrollingCoordinatorMac.h:
- page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
- page/scrolling/mac/ScrollingTreeMac.cpp: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h.
(ScrollingTreeMac::create):
(ScrollingTreeMac::ScrollingTreeMac):
- page/scrolling/mac/ScrollingTreeMac.h: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h.
- 9:44 PM Changeset in webkit [169408] by
-
- 4 edits in trunk/Source/WebCore
Prepare for position:sticky support inside accelerated overflow-scroll with WK2
https://bugs.webkit.org/show_bug.cgi?id=133329
Reviewed by Tim Horton.
RenderLayerCompositor::computeStickyViewportConstraints() was always using
the viewport rect as the constraining rect for sticky position. This is not
correct when inside overflow:scroll.
Refactor code in RenderBoxModelObject to make getting the rect easy, and use
it to compute the constraints.
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::constrainingRectForStickyPosition):
(WebCore::RenderBoxModelObject::stickyPositionOffset):
- rendering/RenderBoxModelObject.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
- 6:33 PM Changeset in webkit [169407] by
-
- 60 edits11 adds2 deletes in trunk
vw/vh units used as font/line-height values don't scale with the viewport
https://bugs.webkit.org/show_bug.cgi?id=87846
Reviewed by Darin Adler.
Source/WebCore:
This patch moves the resolution of viewport units to style recalc
time. Currently viewport units are left unresolved during style
recalcs, which leads to many problems with viewport units. Moving the
resolution will fix these problems, as well as reduce the plumbing
that goes on.
This patch touches a lot of files since the valueForLength functions
no longer need a RenderView. The interesting changes are in:
- CSSToLengthConversionData -> CSSPrimitiveValue: for moving
resolution to style recalc time.
- Length / LengthFunctions: no longer needs to know about viewport
units.
- FrameView -> Document -> StyleResolver: for scheduling style recalcs
upon resize
Note that getComputedStyle will now return pixel values when viewport
units are used. This behavior matches Firefox and the css3-cascade
spec.
This is based on a Blink patch by timloh@chromium.org.
Tests: css3/viewport-percentage-lengths/viewport-percentage-lengths-anonymous-block.html
css3/viewport-percentage-lengths/viewport-percentage-lengths-calc.html
css3/viewport-percentage-lengths/viewport-percentage-lengths-percent-size-child.html
css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html
css3/viewport-percentage-lengths/viewport-percentage-lengths-resize.html
- WebCore.exp.in: Remove RenderView argument to floatValueForLength.
- accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(getAttributeSetForAccessibilityObject): Remove RenderView argument.
- css/BasicShapeFunctions.cpp:
(WebCore::convertToLength): Ditto.
(WebCore::floatValueForCenterCoordinate): Ditto.
- css/BasicShapeFunctions.h: Ditto.
- css/CSSCalculationValue.cpp:
(WebCore::unitCategory): Remove special handling for viewport units,
as they get resolved to pixels.
(WebCore::createCSS): Ditto.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::positionOffsetValue): Remove RendewView argument.
(WebCore::getBorderRadiusCornerValues): Remove handling of viewport
units, as they are already resolve to pixels here.
(WebCore::getBorderRadiusCornerValue): Remove RenderView argument.
(WebCore::getBorderRadiusShorthandValue): Ditto.
(WebCore::specifiedValueForGridTrackBreadth): Remove handling of
viewport units, as they are already resolved to pixels here.
(WebCore::specifiedValueForGridTrackSize): Remove RenderView argument.
(WebCore::valueForGridTrackList): Ditto.
(WebCore::lineHeightFromStyle): Ditto.
(WebCore::ComputedStyleExtractor::propertyValue): Ditto.
- css/CSSGradientValue.cpp:
(WebCore::CSSLinearGradientValue::createGradient): Pass RenderView to
CSSToLengthConversionData constructor.
(WebCore::CSSRadialGradientValue::createGradient): Ditto.
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::unitCategory): Remove handling of
viewport units, as they get resolved to pixels.
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Ditto.
(WebCore::CSSPrimitiveValue::init): Ditto.
(WebCore::CSSPrimitiveValue::computeLengthDouble): Resolve viewport
units to pixels.
(WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory): Remove
handling of viewport units, since they get resolved to pixels.
(WebCore::CSSPrimitiveValue::viewportPercentageLength): Deleted.
- css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isLength): Remove special handling of
viewport units, since they get resolved to pixels.
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::convertToLength): Ditto.
- css/CSSToLengthConversionData.cpp:
(WebCore::CSSToLengthConversionData::viewportWidthFactor): Caclulate
conversion factor for viewport units to pixels. Note this does not
set hasViewportUnits on the RenderStyle if computing the font
size, because in the font size case, the RenderStyle is the
parent's style, not the current renderer's style.
(WebCore::CSSToLengthConversionData::viewportHeightFactor): Ditto.
(WebCore::CSSToLengthConversionData::viewportMinFactor): Ditto.
(WebCore::CSSToLengthConversionData::viewportMaxFactor): Ditto.
- css/CSSToLengthConversionData.h:
(WebCore::CSSToLengthConversionData::CSSToLengthConversionData): Add
RenderView parameter, and make RenderStyle non-const so that
hasViewportUnits can be set on the Style..
(WebCore::CSSToLengthConversionData::style): style is now non-const.
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoom): Handle
RenderView argument.
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapFillXPosition): Remove handling of
viewport units, as they are already resolved to pixels here.
(WebCore::CSSToStyleMap::mapFillYPosition): Ditto.
- css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyLength::applyValue): Ditto.
(WebCore::ApplyPropertyBorderRadius::applyValue): Ditto.
(WebCore::ApplyPropertyComputeLength::applyValue): Ditto.
(WebCore::ApplyPropertyFontSize::applyValue): Ditto.
(WebCore::ApplyPropertyLineHeight::applyValue): Ditto.
(WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue): Ditto.
(WebCore::ApplyPropertyWordSpacing::applyValue): Ditto.
(WebCore::ApplyPropertyVerticalAlign::applyValue): Ditto.
(WebCore::ApplyPropertyTextIndent::applyValue): Ditto.
- css/LengthFunctions.cpp:
(WebCore::minimumIntValueForLength): Remove RenderView argument.
(WebCore::intValueForLength): Remove RenderView argument and
roundPecentages.
(WebCore::minimumValueForLength): Remove RenderView argument, and
special handling of viewport units.
(WebCore::valueForLength): Ditto.
(WebCore::floatValueForLength): Ditto.
(WebCore::floatSizeForLengthSize): Remove RenderView argument.
- css/LengthFunctions.h: Ditto.
- css/MediaQueryEvaluator.cpp:
(WebCore::MediaQueryEvaluator::eval): Add RenderView argument for
CSSToLengthConversionData constuctor.
- css/StyleResolver.cpp:
(WebCore::StyleResolver::State::clear): Change to 0 arg constructor
for CSSToLengthConversionData.
(WebCore::StyleResolver::State::updateConversionData): In order to get
the RenderView, we need to have a valid Element set on the state.
Since this means that we need to set the conversion data in more
places, move the contruction of conversion data into this helper
method.
(WebCore::StyleResolver::State::initElement): Make sure conversion
data is up to date.
(WebCore::StyleResolver::State::initForStyleResolve): Ditto.
(WebCore::StyleResolver::State::setStyle): When the style is set, we
need to make sure to update the conversion data.
(WebCore::StyleResolver::styleForElement): If the style has viewport
units, flage the document so that we can make sure to recalc the
viewport unit values when the viewport is resized.
(WebCore::StyleResolver::pseudoStyleForElement): Ditto.
(WebCore::StyleResolver::updateFont): Make sure the font having
viewport units updates the style.
(WebCore::StyleResolver::convertToIntLength): Remove handling of
viewport units, as they are resolved to pixels.
(WebCore::StyleResolver::convertToFloatLength): Ditto.
(WebCore::StyleResolver::clearCachedPropertiesAffectedByViewportUnits):
Invalidate the matched properties cache for styles with viewport
units when the viewport is resized.
(WebCore::createGridTrackBreadth): Remove handling of viewport units,
as they are resolved to pixels.
(WebCore::StyleResolver::applyProperty): Ditto.
(WebCore::StyleResolver::hasMediaQueriesAffectedByViewportChange):
Rename to be less confusing, since it has nothing to do with
viewport units.
(WebCore::StyleResolver::createFilterOperations): Remove handling of
viewport units, as they are resolved to pixels.
(WebCore::StyleResolver::affectedByViewportChange): Deleted.
(WebCore::StyleResolver::viewportPercentageValue): Deleted.
- css/StyleResolver.h:
(WebCore::StyleResolver::State::State): C++11 cleanup: 0 -> nullptr.
(WebCore::StyleResolver::State::setFontSizeHasViewportUnits): Set if
the font size is specified in viewport units.
(WebCore::StyleResolver::State::fontSizeHasViewportUnits): Ditto.
(WebCore::StyleResolver::State::setStyle): Deleted.
- css/TransformFunctions.cpp:
(WebCore::convertToFloatLength): Remove handling of viewport units,
since they are resolved to pixels.
- dom/Document.cpp:
(WebCore::Document::Document): Add flag to determine if some style in
the document has viewport units.
(WebCore::Document::pageSizeAndMarginsInPixels): Remove RenderView
argument.
(WebCore::Document::updateViewportUnitsOnResize): Mark elements with
viewport units for style recalc when the viewport size has
changed.
- dom/Document.h:
(WebCore::Document::setHasStyleWithViewportUnits): Flag to determine
if some style in the document has viewport units.
(WebCore::Document::hasStyleWithViewportUnits): Ditto.
- html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::getRegion): Remove RenderView argument.
- page/FrameView.cpp:
(WebCore::FrameView::layout): When the viewport is resized, call
updateViewportUnitsOnResize on the document.
- platform/Length.h:
(WebCore::Length::isSpecified): Remove handling of viewport units,
since they are now resolved to pixels.
(WebCore::Length::viewportPercentageLength): Deleted.
(WebCore::Length::isViewportPercentage): Deleted.
- rendering/ClipPathOperation.h:
(WebCore::ShapeClipPathOperation::pathForReferenceRect): Remove
RenderView argument.
(WebCore::BoxClipPathOperation::pathForReferenceRect): Ditto.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout): Remove
handling of viewport units, since they get updated by
updateViewportUnitsOnResize when the viewport is resized.
(WebCore::RenderBlock::nodeAtPoint): Remove RenderView argument.
(WebCore::RenderBlock::lineHeight): Ditto.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBoxDecorations): Remove RenderView argument.
(WebCore::RenderBox::computeContentAndScrollbarLogicalHeightUsing):
Remove handling of viewport units, as they are resolved to pixels.
(WebCore::RenderBox::computePercentageLogicalHeight): Ditto.
(WebCore::RenderBox::computeReplacedLogicalWidthUsing): Ditto.
(WebCore::RenderBox::computeReplacedLogicalHeightUsing): Ditto.
(WebCore::RenderBox::hasViewportPercentageLogicalHeight): Deleted.
- rendering/RenderBox.h:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::getBackgroundRoundedRect): Remove
RenderView argument.
(WebCore::RenderBoxModelObject::calculateFillTileSize): Remove
handling of viewport units, as they are resolved to pixels.
(WebCore::computeBorderImageSide): Remove RenderView argument.
(WebCore::RenderBoxModelObject::paintNinePieceImage): Ditto.
(WebCore::RenderBoxModelObject::paintBorder): Ditto.
(WebCore::RenderBoxModelObject::paintBoxShadow): Ditto.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::repaintAfterLayoutIfNeeded): Ditto.
- rendering/RenderElement.h:
(WebCore::RenderElement::valueForLength): Remove unused
roundPercentages argument.
(WebCore::RenderElement::minimumValueForLength): Remove unused
RoundPercentages and RenderView arguments.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutGridItems): Remove handling of viewport
units as they are resolved to pixels.
- rendering/RenderInline.cpp:
(WebCore::computeMargin): Ditto.
(WebCore::RenderInline::lineHeight): Remove RenderView argument.
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setupClipPath): Ditto.
- rendering/RenderLineBreak.cpp:
(WebCore::RenderLineBreak::lineHeight): Ditto.
- rendering/RenderScrollbarPart.cpp:
(WebCore::calcScrollbarThicknessUsing): Ditto.
(WebCore::RenderScrollbarPart::computeScrollbarWidth): Ditto.
(WebCore::RenderScrollbarPart::computeScrollbarHeight): Ditto.
- rendering/RenderTable.cpp:
(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
Remove handling of viewport units, since they are resolved to
pixels.
(WebCore::RenderTable::computePreferredLogicalWidths): Now that
viewport unit values are resolved to pixels at style recalc time,
no special checking is needed to handle them, so update the
comment to reflect that.
- rendering/RenderThemeIOS.mm:
(WebCore::applyCommonButtonPaddingToStyle): Add RenderView argument to
CSSToLengthConversionData constructor.
(WebCore::RenderThemeIOS::adjustButtonStyle): Ditto.
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintMenuListButtonGradients): Remove
RenderView argument.
- rendering/RenderView.cpp:
(WebCore::RenderView::layout): Remove handling of viewport units,
since they are resolved to pixels.
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::ascentAndDescentForBox): Remove RenderView
argument.
- rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape): Remove RenderView argument.
- rendering/shapes/Shape.h:
- rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::computedShape): Ditto.
- rendering/style/BasicShapes.cpp:
(WebCore::BasicShapeCircle::floatValueForRadiusInBox): Ditto.
(WebCore::BasicShapeCircle::path): Ditto.
(WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Ditto.
(WebCore::BasicShapeEllipse::path): Ditto.
(WebCore::BasicShapePolygon::path): Ditto.
(WebCore::floatSizeForLengthSize): Ditto.
(WebCore::BasicShapeInset::path): Ditto.
- rendering/style/BasicShapes.h:
- rendering/style/RenderStyle.cpp:
(WebCore::calcRadiiFor): Ditto.
(WebCore::RenderStyle::getRoundedBorderFor): Ditto.
(WebCore::RenderStyle::computedLineHeight): Remove handling of
viewport units since they are resolved to pixels.
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::setHasViewportUnits): Set if this style has
a property set with viewport units.
(WebCore::RenderStyle::hasViewportUnits): Ditto.
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::resolveLengthAttributeForSVG): Remove RenderView argument.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Ditto.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.
- rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent): Ditto.
LayoutTests:
Update existing tests to work with the proper behavior of viewport
units.
Add tests for some of the things fixed by this patch: handling of
viewport units in font sizes, with calc, and when the viewport is
resized without a reload.
The anonymous block and percent size child tests make sure that the
viewport unit updates still work properly when there is another
relative unit the depends on the size specified in viewport units.
- css3/viewport-percentage-lengths/css3-viewport-percentage-lengths-getStyle-expected.txt:
- css3/viewport-percentage-lengths/css3-viewport-percentage-lengths-getStyle.html:
- css3/viewport-percentage-lengths/resources/resize-test.js: Added.
(resizeTest):
(standardResizeTest):
- css3/viewport-percentage-lengths/viewport-percentage-lengths-anonymous-block-expected.txt: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-anonymous-block.html: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-calc-expected.txt: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-calc.html: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-percent-size-child-expected.txt: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-percent-size-child.html: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size-expected.txt: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-resize-expected.txt: Added.
- css3/viewport-percentage-lengths/viewport-percentage-lengths-resize.html: Added.
- fast/canvas/draw-focus-if-needed-expected.txt: Removed.
- fast/canvas/draw-focus-if-needed.html: Removed.
- fast/masking/parsing-clip-path-shape-expected.txt:
- fast/masking/parsing-clip-path-shape.html:
- fast/shapes/parsing/parsing-shape-lengths-expected.txt:
- fast/shapes/parsing/parsing-shape-lengths.html:
- 5:28 PM Changeset in webkit [169406] by
-
- 5 edits in trunk
[CSS Shapes] serialization of the computed value should omit the default radii
https://bugs.webkit.org/show_bug.cgi?id=132747
Reviewed by Darin Adler.
Source/WebCore:
We should omit closest-side value, whereever is possible. Specification:
http://www.w3.org/TR/2014/CR-css-shapes-1-20140320/#basic-shape-computed-values
This change aligns the behavior to the specification.
Added new test cases for the shape-outside parsing tests.
- css/CSSBasicShapes.cpp:
(WebCore::buildCircleString):
(WebCore::CSSBasicShapeCircle::cssText):
(WebCore::CSSBasicShapeEllipse::cssText):
LayoutTests:
- fast/shapes/parsing/parsing-shape-outside-expected.txt:
- fast/shapes/parsing/parsing-test-utils.js:
- 5:16 PM Changeset in webkit [169405] by
-
- 15 edits in trunk/Source/WebKit2
Some proof-reading of the WebKit2 API headerdoc
https://bugs.webkit.org/show_bug.cgi?id=133328
Reviewed by Anders Carlsson.
Consistently say "item" to reference back-forward list items.
Consistently say "webpage" instead of "page" or "web page".
Consistently say "navigation" instead of "load".
Plus a few fix-ups for run-on sentences, mismatched verb tense, and
mismatched singular vs plural.
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKBrowsingContextController.h:
- UIProcess/API/Cocoa/WKBrowsingContextGroup.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigation.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
- UIProcess/API/Cocoa/WKProcessPool.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKWebView.h:
- 5:02 PM Changeset in webkit [169404] by
-
- 2 edits in trunk/LayoutTests
Unreviewed Mac Gardening.
- platform/mac/TestExpectations:
Skip webtiming-two-redirects.php which I forgot to re-skip in r169403.
- 4:32 PM Changeset in webkit [169403] by
-
- 5 edits in trunk/LayoutTests
Run web timing tests if web timing is enabled.
https://bugs.webkit.org/show_bug.cgi?id=133327
Reviewed by Ryosuke Niwa.
- fast/dom/script-tests/webtiming-document-open.js:
(finishTest):
- fast/dom/script-tests/webtiming-navigate-within-document.js:
(checkTimingNotChanged):
Use for in loop instead of Object.keys because properties are in prototype chain.
- fast/dom/script-tests/webtiming.js:
Use performance.now instead of 0.
- platform/mac/TestExpectations:
Made web timing tests skipped on Mountain Lion and Mavericks.
- 3:56 PM Changeset in webkit [169402] by
-
- 4 edits2 deletes in trunk
Unreviewed, rolling out r169399.
https://bugs.webkit.org/show_bug.cgi?id=133326
Causes assertion failures in tests. See
http://build.webkit.org/results/Apple%20Mavericks%20Debug%20WK1%20(Tests)/r169399%20(5622)/results.html
(Requested by mlam on #webkit).
Reverted changeset:
"Caret's screen position does not update during an overflow
scroll"
https://bugs.webkit.org/show_bug.cgi?id=133256
http://trac.webkit.org/changeset/169399
- 2:38 PM Changeset in webkit [169401] by
-
- 2 edits in trunk
Unreviewed post-commit ChangeLog fixup
- 2:34 PM Changeset in webkit [169400] by
-
- 5 edits2 adds in trunk
SVG TextRuns do not always get RenderingContexts
https://bugs.webkit.org/show_bug.cgi?id=133198
Reviewed by Simon Fraser.
Source/WebCore:
There were a couple places in RenderListMarker and RenderMenuList that were
implicitly creating TextRuns by passing a String to a function which
expected a TextRun. Because TextRun has a constructor which takes a single
String and isn't marked explicit, TextRuns were being created without
any of the associated code that initializes the TextRun (such as creating
a RenderingContext if necessary).
This patch marks the aforementioned constructor as "explicit" to discourage
such behavior in the future.
Test: svg/custom/list-items-with-svg-font-family.html
- platform/graphics/TextRun.h:
(WebCore::TextRun::TextRun): Mark constructors as explicit.
- rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::computePreferredLogicalWidths): Call
RenderBlock::constructTextRun.
(WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
- rendering/RenderMenuList.cpp:
(RenderMenuList::updateOptionsWidth): Ditto.
LayoutTests:
See per-file comments.
- svg/custom/list-items-with-svg-font-family-expected.txt: Added.
- svg/custom/list-items-with-svg-font-family.html: Added. Make sure there is
no crash when styling list elements with SVG fonts.
- 2:14 PM Changeset in webkit [169399] by
-
- 4 edits2 adds in trunk
Caret's screen position does not update during an overflow scroll
https://bugs.webkit.org/show_bug.cgi?id=133256
Reviewed by Simon Fraser.
Source/WebCore:
During a scroll, we set a flag which caret position is gated on, but we never
actually invalidate the caret's position. This patch does so.
Test: editing/input/caret-position-during-scroll.html
- editing/FrameSelection.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo):
LayoutTests:
This test places the caret, inspects its position, scrolls, and then immediately inspects its
position again. The two positions should be different.
- editing/input/caret-position-during-scroll-expected.txt: Added.
- editing/input/caret-position-during-scroll.html: Added.
- 1:45 PM Changeset in webkit [169398] by
-
- 2 edits in trunk/Source/WebKit2
[wk2] PDFPlugin snapshots are misplaced
https://bugs.webkit.org/show_bug.cgi?id=133323
Reviewed by Simon Fraser.
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::paintControlForLayerInContext):
(WebKit::PDFPlugin::snapshot):
Include the scroll offset in the snapshot translation,
and use the whole document size instead of just the view size.
- 12:47 PM Changeset in webkit [169397] by
-
- 1 edit in branches/safari-537.77-branch/Source/JavaScriptCore/dfg/DFGAbstractState.cpp
Merge patch from <rdar://problem/16906035>.
- 11:53 AM Changeset in webkit [169396] by
-
- 2 edits in trunk/Tools
REGRESSION(r169265): sh: line 0: cd: ../.vm
https://bugs.webkit.org/show_bug.cgi?id=133242
Rubber stamped by Oliver Hunt.
Changed runAndMonitorTestRunnerCommand() to pass mysys as a string instead of an
array since the command may contain character escapes that don't work with the
array form of system().
- Scripts/run-jsc-stress-tests:
- 11:35 AM Changeset in webkit [169395] by
-
- 5 edits in trunk/Source/WebCore
Turn on the LayerPool for iOS
https://bugs.webkit.org/show_bug.cgi?id=133299
Reviewed by Antti Koivisto.
- Configurations/WebCore.xcconfig:
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::createTileLayer):
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::removeTiles):
Turn on the LayerPool for iOS.
We've used this on Mac for a long time, and the WebKit1
("legacy") iOS TileCache also had a similar pool.
This helps a good bit with flashiness while scrolling.
- 11:35 AM Changeset in webkit [169394] by
-
- 16 edits3 copies in trunk/Source/WebKit2
[WebKit2] Move WebPreferences macro definitions and key names into their own files
https://bugs.webkit.org/show_bug.cgi?id=133315
Reviewed by Anders Carlsson.
- CMakeLists.txt:
- Shared/WebPreferencesDefinitions.h: Copied from Source/WebKit2/Shared/WebPreferencesStore.h.
- Shared/WebPreferencesKeys.cpp: Copied from Source/WebKit2/Shared/WebPreferencesStore.cpp.
- Shared/WebPreferencesKeys.h: Copied from Source/WebKit2/Shared/WebPreferencesStore.h.
- Shared/WebPreferencesStore.cpp:
- Shared/WebPreferencesStore.h:
- UIProcess/WebPreferences.cpp:
- UIProcess/WebPreferences.h:
- UIProcess/mac/WebContextMac.mm:
- UIProcess/mac/WebPreferencesMac.mm:
- UIProcess/mac/WebProcessProxyMac.mm:
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/InjectedBundle/InjectedBundle.cpp:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
- WebProcess/WebPage/WebPage.cpp:
- WebProcess/WebProcess.cpp:
- 11:31 AM Changeset in webkit [169393] by
-
- 2 edits in trunk/Source/WebKit2
Add UI process watchdog on iOS to ensure WebProcess connections close
https://bugs.webkit.org/show_bug.cgi?id=133200
<rdar://problem/16997983>
Mountain Lion build fix
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::ConnectionTerminationWatchdog::watchdogTimerFired):
- 11:30 AM Changeset in webkit [169392] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Merge fix for <rdar://problem/17020210>.
- 11:21 AM Changeset in webkit [169391] by
-
- 2 edits in trunk/Source/WebKit2
importance_assertion -> denap_assertion
https://bugs.webkit.org/show_bug.cgi?id=133294
iOS build fix
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::open):
- 10:59 AM Changeset in webkit [169390] by
-
- 3 edits3 adds in trunk
REGRESSION: Audio volume scrubber does not show volume level thumb
<rdar://problem/16902004>
https://bugs.webkit.org/show_bug.cgi?id=133310
Reviewed by Dean Jackson.
Source/WebCore:
This was just a silly mistake on my part with the setting of the pagination
layers. Layers inside transforms are supposed to clear out their pagination
status based off their ancestor containing block layers, and not off the
enclosing pagination layer.
Added fast/multicol/pagination/nested-transforms.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updatePagination):
LayoutTests:
- fast/multicol/pagination/nested-transforms.html: Added.
- platform/mac/fast/multicol/pagination/nested-transforms-expected.png: Added.
- platform/mac/fast/multicol/pagination/nested-transforms-expected.txt: Added.
- 10:36 AM Changeset in webkit [169389] by
-
- 4 edits in trunk/Source/WebKit2
Add UI process watchdog on iOS to ensure WebProcess connections close
https://bugs.webkit.org/show_bug.cgi?id=133200
<rdar://problem/16997983>
Reviewed by Darin Adler.
When the WebProcessProxy wants to disconnect from a WebContent process it just drops the connection,
and hopes the connection closes. There is a watchdog thread in the ChildProcess to try to ensure this
happens.
On iOS the process may not be runnable at the time, preventing termination. Instead add a watchdog in
the UI process to make the process runnable, and to terminate if it doesn't quit in a timely fashion.
- Platform/IPC/Connection.h:
- added terminateSoon.
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
- take an assertion to make the process runnable, and start a watchdog timer.
(IPC::ConnectionTerminationWatchdog::watchdogTimerFired):
- if the process hasn't quit by the timer the watchdog fires, kill it.
(IPC::Connection::terminateSoon):
- create a ConnectionTerminationWatchdog.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::removeWebPage):
- when disconnecting from a process, first tell it to terminateSoon.
- 10:36 AM Changeset in webkit [169388] by
-
- 3 edits in trunk/Source/WebKit2
importance_assertion -> denap_assertion
https://bugs.webkit.org/show_bug.cgi?id=133294
Patch by Gavin Barraclough <barraclough@apple.com> on 2014-05-26
Reviewed by Sam Weinig.
Update in accordance with API change. The importance assertion is used on
Mavericks & newer to ensure the WebContent process wakes from AppNap.
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::open):
- MACH_PORT_IMPORTANCE_RECEIVER -> MACH_PORT_DENAP_RECEIVER
- Platform/IPC/mac/ImportanceAssertion.h:
(IPC::ImportanceAssertion::ImportanceAssertion):
(IPC::ImportanceAssertion::~ImportanceAssertion):
- proc_importance_assertion -> proc_denap_assertion
- 10:33 AM Changeset in webkit [169387] by
-
- 4 edits2 adds in trunk
[Mac] media controls should prevent 'click' events from reaching the page
https://bugs.webkit.org/show_bug.cgi?id=133268
Source/WebCore:
Reviewed by Jer Noble.
Test: media/media-controls-cancel-events.html
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.handleEvent): Allow event handler to cancel event default action.
(Controller.prototype.handleRewindButtonClicked): Cancel event default.
(Controller.prototype.handlePlayButtonClicked): Ditto.
(Controller.prototype.handleMuteButtonClicked): Ditto.
(Controller.prototype.handleMinButtonClicked): Ditto.
(Controller.prototype.handleCaptionButtonClicked): Ditto.
(Controller.prototype.handleFullscreenButtonClicked): Ditto.
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.handlePlayButtonTouchEnd): Ditto.
(ControllerIOS.prototype.handlePlayButtonTouchCancel): Ditto.
(ControllerIOS.prototype.handleFullscreenTouchEnd): Ditto.
(ControllerIOS.prototype.handleFullscreenTouchCancel): Ditto.
(ControllerIOS.prototype.handleStartPlaybackButtonTouchEnd): Ditto.
(ControllerIOS.prototype.handleStartPlaybackButtonTouchCancel): Ditto.
(ControllerIOS.prototype.handleWirelessPickerButtonClicked): Ditto.
LayoutTests:
Reviewed by by Jer Noble.
- media/media-controls-cancel-events-expected.txt: Added.
- media/media-controls-cancel-events.html: Added.
- 9:45 AM Changeset in webkit [169386] by
-
- 3 edits in trunk/Source/WebCore
Fix Mavericks bots from r169383.
https://bugs.webkit.org/show_bug.cgi?id=133311
Reviewed by Eric Carlson.
- platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h: Update #ifdef to check for ENABLE(MEDIA_SOURCE).
- platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm: Ditto.
- 9:36 AM Changeset in webkit [169385] by
-
- 26 edits in trunk/Source/WebCore
REGRESSION (r168046): Incorrect handling of multicol spanner
https://bugs.webkit.org/show_bug.cgi?id=133249
Reviewed by David Hyatt.
When removing the child of an object, the removeChild method should return the next element
following the one being deleted. This will ensure that proper iteration and destruction of
an object's children is possible.
No new tests added. This is because the test that triggers this issue also triggers
another assertion, in RenderMultiColumnSet::requiresBalancing(). However, that is a totally
separate problem and will be handled in a separate bug: https://bugs.webkit.org/show_bug.cgi?id=133309
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeChild):
- rendering/RenderBlock.h:
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::removeChild):
- rendering/RenderBlockFlow.h:
- rendering/RenderButton.cpp:
(WebCore::RenderButton::removeChild):
- rendering/RenderButton.h:
- rendering/RenderElement.cpp:
(WebCore::RenderElement::removeChild):
(WebCore::RenderElement::removeChildInternal):
- rendering/RenderElement.h:
- rendering/RenderMenuList.cpp:
(RenderMenuList::removeChild):
- rendering/RenderMenuList.h:
- rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::flowThreadDescendantInserted):
- rendering/RenderRuby.cpp:
(WebCore::RenderRubyAsInline::removeChild):
(WebCore::RenderRubyAsBlock::removeChild):
- rendering/RenderRuby.h:
- rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::removeChild):
- rendering/RenderRubyRun.h:
- rendering/mathml/RenderMathMLScripts.cpp:
(WebCore::RenderMathMLScripts::removeChildInternal):
(WebCore::RenderMathMLScripts::removeChild):
(WebCore::RenderMathMLScriptsWrapper::removeChildInternal):
(WebCore::RenderMathMLScriptsWrapper::removeChild):
- rendering/mathml/RenderMathMLScripts.h:
- rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::removeChild):
- rendering/svg/RenderSVGContainer.h:
- rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::removeChild):
- rendering/svg/RenderSVGInline.h:
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::removeChild):
- rendering/svg/RenderSVGRoot.h:
- rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::removeChild):
- rendering/svg/RenderSVGText.h:
- 9:30 AM Changeset in webkit [169384] by
-
- 4 edits in trunk/Source/WebKit2
Revert r169362 since it broke the ML build.
- Platform/IPC/Connection.h:
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog): Deleted.
(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog): Deleted.
(IPC::ConnectionTerminationWatchdog::watchdogTimerFired): Deleted.
(IPC::Connection::terminateSoon): Deleted.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::removeWebPage):
- 9:25 AM Changeset in webkit [169383] by
-
- 14 edits in trunk
Update ENABLE(MEDIA_SOURCE) on Mac
https://bugs.webkit.org/show_bug.cgi?id=133141
Reviewed by Darin Adler.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/FeatureDefines.h: #ifdef unneeded for Mac since it's covered in the .xcconfigs.
LayoutTests:
- platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
- platform/mac/TestExpectations:
- platform/mac/js/dom/global-constructors-attributes-expected.txt:
- 8:12 AM Changeset in webkit [169382] by
-
- 3 edits in trunk/LayoutTests
Unreviewed EFL gardening
Add failing tests to TestExpectations.
- platform/efl-wk2/TestExpectations:
- platform/efl/TestExpectations:
- 8:12 AM Changeset in webkit [169381] by
-
- 2 edits in trunk/Tools
[EFL] Change download url of freetype6
https://bugs.webkit.org/show_bug.cgi?id=133303
Reviewed by Csaba Osztrogonác.
freetype6 tarball isn't downloaded in Korea. So, we need to
change the url for now.
- efl/jhbuild.modules:
- 7:27 AM Changeset in webkit [169380] by
-
- 92 edits in trunk
Remove BLOB guards
https://bugs.webkit.org/show_bug.cgi?id=132863
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-05-27
Reviewed by Csaba Osztrogonác.
.:
- Source/cmake/OptionsEfl.cmake:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmakeconfig.h.cmake:
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
- Modules/websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::WebSocketChannel):
(WebCore::WebSocketChannel::didFail):
(WebCore::WebSocketChannel::processOutgoingFrameQueue):
(WebCore::WebSocketChannel::abortOutgoingFrameQueue):
- Modules/websockets/WebSocketChannel.h:
- WebCore.exp.in:
- WebCore.vcxproj/WebCore.vcxproj:
- bindings/js/JSBlobCustom.cpp:
(WebCore::JSBlobConstructor::constructJSBlob):
- bindings/js/JSFileReaderCustom.cpp:
- dom/DOMExceptions.in:
- dom/EventTargetFactory.in:
- dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::publicURLManager):
- dom/ScriptExecutionContext.h:
- fileapi/AsyncFileStream.cpp:
- fileapi/AsyncFileStream.h:
- fileapi/Blob.cpp:
(WebCore::Blob::Blob):
- fileapi/Blob.h:
(WebCore::Blob::slice):
- fileapi/Blob.idl:
- fileapi/FileError.h:
- fileapi/FileError.idl:
- fileapi/FileException.cpp:
- fileapi/FileException.h:
- fileapi/FileException.idl:
- fileapi/FileReader.cpp:
- fileapi/FileReader.h:
- fileapi/FileReader.idl:
- fileapi/FileReaderLoader.cpp:
- fileapi/FileReaderLoader.h:
- fileapi/FileReaderLoaderClient.h:
- fileapi/FileReaderSync.cpp:
- fileapi/FileReaderSync.h:
- fileapi/FileReaderSync.idl:
- fileapi/FileThread.cpp:
- fileapi/FileThread.h:
- fileapi/ThreadableBlobRegistry.cpp:
(WebCore::ThreadableBlobRegistry::registerFileBlobURL): Deleted.
(WebCore::ThreadableBlobRegistry::registerBlobURL): Deleted.
(WebCore::ThreadableBlobRegistry::registerBlobURLForSlice): Deleted.
(WebCore::ThreadableBlobRegistry::unregisterBlobURL): Deleted.
(WebCore::ThreadableBlobRegistry::blobSize): Deleted.
(WebCore::ThreadableBlobRegistry::getCachedOrigin): Deleted.
- fileapi/WebKitBlobBuilder.cpp:
(WebCore::BlobBuilder::append):
- fileapi/WebKitBlobBuilder.h:
- html/DOMURL.cpp:
- html/DOMURL.h:
- html/DOMURL.idl:
- html/PublicURLManager.cpp:
- html/PublicURLManager.h:
- loader/LoaderStrategy.cpp:
(WebCore::LoaderStrategy::createBlobRegistry):
- loader/LoaderStrategy.h:
- page/DOMWindow.idl:
- page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::shouldUseInnerURL):
(WebCore::getCachedOrigin):
- platform/FileStream.cpp:
- platform/FileStream.h:
- platform/FileStreamClient.h:
- platform/SchemeRegistry.cpp:
(WebCore::canDisplayOnlyIfCanRequestSchemes):
- platform/network/BlobRegistry.cpp:
- platform/network/BlobRegistryImpl.cpp:
- platform/network/BlobResourceHandle.cpp:
- platform/network/BlobResourceHandle.h:
- platform/network/FormData.cpp:
(WebCore::FormData::deepCopy):
(WebCore::FormData::appendFile):
(WebCore::FormData::appendBlob):
(WebCore::FormData::appendKeyValuePairItems):
(WebCore::FormData::resolveBlobReferences):
(WebCore::encodeElement):
(WebCore::decodeElement):
- platform/network/FormData.h:
(WebCore::FormDataElement::FormDataElement):
(WebCore::operator==):
- platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::closeCurrentStream):
(WebCore::advanceCurrentStream):
(WebCore::formCreate):
(WebCore::formRead):
(WebCore::setHTTPBody):
- platform/network/curl/ResourceHandleManager.cpp:
(WebCore::getFormElementsCount):
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::addEncodedBlobToSoupMessageBody):
(WebCore::addFormElementsToSoupMessage):
- workers/WorkerGlobalScope.idl:
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::send):
(WebCore::XMLHttpRequest::createRequest):
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
- WebView/WebView.mm:
(+[WebView _canHandleRequest:forMainFrame:]):
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
- NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
- NetworkProcess/FileAPI/NetworkBlobRegistry.h:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didClose):
(WebKit::NetworkConnectionToWebProcess::blobSize):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- NetworkProcess/NetworkProcessPlatformStrategies.cpp:
- NetworkProcess/NetworkProcessPlatformStrategies.h:
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
- WebProcess/FileAPI/BlobRegistryProxy.cpp:
- WebProcess/FileAPI/BlobRegistryProxy.h:
- WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
- WebProcess/WebCoreSupport/WebPlatformStrategies.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::canHandleRequest):
Source/WTF:
- wtf/FeatureDefines.h:
Tools:
- Scripts/webkitperl/FeatureList.pm:
WebKitLibraries:
- win/tools/vsprops/FeatureDefines.props:
- win/tools/vsprops/FeatureDefinesCairo.props:
- 4:31 AM Changeset in webkit [169379] by
-
- 7 edits in trunk
Allow building CMake based ports with WEB_REPLAY
https://bugs.webkit.org/show_bug.cgi?id=133154
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-27
Reviewed by Csaba Osztrogonác.
.:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmakeconfig.h.cmake:
Source/JavaScriptCore:
- CMakeLists.txt:
Source/WebCore:
- CMakeLists.txt:
- 3:56 AM Changeset in webkit [169378] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Add missing <wtf/MathExtras.h> header
https://bugs.webkit.org/show_bug.cgi?id=133236
Patch by Adrian Perez de Castro <Adrian Perez de Castro> on 2014-05-27
Reviewed by Philippe Normand.
In some configurations, not including <wtf/MathExtras.h> will cause
errors about undefined functions. In particular, this happens in
Linux with glibc 2.19 and compiling with Clang. Having the header
included is the correct thing to do anyway.
- platform/graphics/gstreamer/GStreamerUtilities.cpp:
Include <wtf/MathExtras.h>
- 3:24 AM Changeset in webkit [169377] by
-
- 2 edits in trunk/Tools
Remove leftover comment from r165182.
Rubber stamped by Carlos Garcia Campos.
- TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
- 3:19 AM Changeset in webkit [169376] by
-
- 2 edits in trunk/Source/WebKit
Speculative Windows buildfix after r169358.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
- 2:43 AM Changeset in webkit [169375] by
-
- 6 edits in releases/WebKitGTK/webkit-2.4
Merge r169352 - [GTK] WebProcess leaked when closing pages with network process enabled
https://bugs.webkit.org/show_bug.cgi?id=129684
Reviewed by Anders Carlsson.
Source/WebKit2:
The problem is that the web process is not notified when the UI
process closes the connection, because when close() is called on
the socket by the UI process, the socket is shared by another web
process launched later, preventing the connection from being
shut down. We need to set the CLOEXEC flag on the sockets file
descriptor to make sure they are not exposed to other processes.
- Platform/IPC/Connection.h: Add ConnectionOptions parameter to
createPlatformConnection() with a default value compatible with
existing callers.
- Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::createPlatformConnection): Set the CLOEXEC flag
on the client and server socket file descriptors depending on the
options passed.
- UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess): Use
IPC::Connection::createPlatformConnection() instead of
socketpair() directly, setting the CLOEXEC flag on the server
before spawning the new process and on the client right after
spawning the new process.
Tools:
Enable the test to check that web processes finish when the web
view is destroyed.
- TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
- 2:06 AM Changeset in webkit [169374] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4
Rollout r166161 - Unreviewed. Race condition when closing pages with network process enabled
- 1:08 AM Changeset in webkit [169373] by
-
- 2 edits in trunk/Source/WTF
[GLIB] RunLoop::dispatch always executes the function on the main thread instead of the target thread.
https://bugs.webkit.org/show_bug.cgi?id=133291
Patch by Gwang Yoon Hwang <yoon@igalia.com> on 2014-05-27
Reviewed by Carlos Garcia Campos.
GMainLoopSource::schedule[AfterDelay] must be used with the appropriate
GMainContext. Because current implementations in RunLoopGtk passes nullptr
instead of its runLoopContext when using GMainLoopSource, all of dispatched
functions are executed on the main thread regardless of which runloops is used.
This patch fixes the issue by passing the m_runLoopContext instead the default
parameter to the GMainLoopSource::schedule[AfterDelay].
- wtf/gtk/RunLoopGtk.cpp:
(WTF::RunLoop::wakeUp):
(WTF::RunLoop::TimerBase::start):
- 12:17 AM Changeset in webkit [169372] by
-
- 6 edits in trunk/Source/WebCore
Setting up OrderIterator shouldn't require an extra Vector
https://bugs.webkit.org/show_bug.cgi?id=119061
Reviewed by Darin Adler.
From Blink r153971 by <jchaffraix@chromium.org>
This patches reuse the OrderIterator's Vector. It provides a helper class OrderIteratorPopulator, used for
manipulating the Vector directly. Which allows to consolidate the code into a single implementation across
flexbox and grid.
No new tests, already covered by current tests.
- rendering/OrderIterator.cpp:
(WebCore::OrderIteratorPopulator::~OrderIteratorPopulator): Reset OrderIterator and call
removeDuplicatedOrderValues().
(WebCore::OrderIteratorPopulator::removeDuplicatedOrderValues): Sorts the Vector and removes the duplicated
order values.
(WebCore::OrderIteratorPopulator::collectChild): Collect order value information from child.
(WebCore::OrderIterator::setOrderValues): Deleted.
- rendering/OrderIterator.h:
(WebCore::OrderIteratorPopulator::OrderIteratorPopulator): Add helper class to manipulate OrderValues Vector.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Remove unneeded code related to old OrderValues vector.
(WebCore::RenderFlexibleBox::prepareOrderIteratorAndMargins): Populate OrderIterator using collectChild().
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes): Deleted.
- rendering/RenderFlexibleBox.h: Rename computeMainAxisPreferredSizes() to prepareOrderIteratorAndMargins().
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator): Populate OrderIterator using collectChild().
- 12:05 AM Changeset in webkit [169371] by
-
- 2 edits in trunk/Tools
[EFL] Add LLVM as optional jhbuild module for FTL developers
https://bugs.webkit.org/show_bug.cgi?id=133216
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-05-26
Reviewed by Gyuyoung Kim.
- efl/jhbuild.modules:
May 26, 2014:
- 11:14 PM Changeset in webkit [169370] by
-
- 15 edits in trunk/Source
[wk2] RemoteLayerBackingStore front buffers should be purgeable when unparented
https://bugs.webkit.org/show_bug.cgi?id=133020
<rdar://problem/16521736>
Reviewed by Simon Fraser.
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display):
Let the context know whenever a RemoteLayerBackingStore is displayed, so that
RemoteLayerBackingStoreCollection can (if needed) note that the backing store
is active once again (because we only display parented backing store).
(WebKit::RemoteLayerBackingStore::setBufferVolatility):
Ensure that we never have live contexts attached to any buffers when
marking them volatile, because checking isInUse() with live contexts is futile.
- Shared/mac/RemoteLayerBackingStoreCollection.h:
- Shared/mac/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::RemoteLayerBackingStoreCollection):
(WebKit::RemoteLayerBackingStoreCollection::willFlushLayers):
(WebKit::RemoteLayerBackingStoreCollection::willCommitLayerTree):
(WebKit::RemoteLayerBackingStoreCollection::didFlushLayers):
(WebKit::RemoteLayerBackingStoreCollection::backingStoreWillBeDestroyed):
(WebKit::RemoteLayerBackingStoreCollection::backingStoreWillBeDisplayed):
(WebKit::RemoteLayerBackingStoreCollection::markBackingStoreVolatileImmediately):
(WebKit::RemoteLayerBackingStoreCollection::markBackingStoreVolatile):
(WebKit::RemoteLayerBackingStoreCollection::backingStoreBecameUnreachable):
(WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired):
(WebKit::RemoteLayerBackingStoreCollection::scheduleVolatilityTimer):
(WebKit::RemoteLayerBackingStoreCollection::purgeabilityTimerFired): Deleted.
(WebKit::RemoteLayerBackingStoreCollection::schedulePurgeabilityTimer): Deleted.
Rename purgeable->volatile for accuracy.
Keep track of two sets of backing store: those which are active/parented, and
those which are not. Backing store is moved to the inactive set after building
the transaction in which its owning layer is unparented.
When backing store is unparented, try to mark it volatile immediately. Also,
mark the backing store property as dirty on the owning layer so that when
said layer is reparented, we encode the backing store in the commit that reparents it,
as the UI process will throw away its reference to the backing store when
the layer is unparented. Mark the front buffers of unparented layers as volatile,
in addition to the others.
- Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::layerIDsWithNewlyUnreachableBackingStore):
- Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):
(WebKit::RemoteLayerTreeTransaction::setLayerIDsWithNewlyUnreachableBackingStore):
Include the list of layers (by ID) with backing store which just became unreachable in the transaction.
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::updateLayerTree):
Clear the contents of layers which now have unreachable backing store.
Otherwise, the UI process would hold a 'use' on the IOSurface, and prevent
the Web process from marking it volatile.
- WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
- WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::backingStoreWillBeDisplayed):
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
Give RemoteLayerBackingStoreCollection a shot at the RemoteLayerTreeTransaction,
so that it can fill in layerIDsWithNewlyUnreachableBackingStore.
Also, let it know when the flush begins and ends, so that it can keep track
of which layers were reached in the flush.
- WebCore.exp.in:
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::willAddSurface):
- platform/graphics/cocoa/IOSurface.h:
- platform/graphics/cocoa/IOSurface.mm:
(IOSurface::releaseGraphicsContext):
Rename clearGraphicsContext to releaseGraphicsContext for clarity.
- 10:38 PM Changeset in webkit [169369] by
-
- 2 edits in trunk/Tools
Fix test failures on python test
https://bugs.webkit.org/show_bug.cgi?id=133297
Reviewed by Dirk Schulze.
2 tests are failing because of unbounded local variable reference in test_importer.py.
- Scripts/webkitpy/w3c/test_importer.py: Move local variable declaration to top.
(TestImporter.import_tests):
- 10:23 PM Changeset in webkit [169368] by
-
- 4 edits in trunk/Source/WebCore
Remove special case for transparent SVG root layers
https://bugs.webkit.org/show_bug.cgi?id=116856
Reviewed by Dirk Schulze.
This patch removes a special case from RenderLayer for root SVG layers
with opacity. Instead of checking whether a composited layer exists in
SVGRenderingContext::prepareToRenderSVGContent we now exclude the root
SVG renderobject from the opacity checks in prepareToRenderSVGContent.
This is a merge of https://src.chromium.org/viewvc/blink?view=rev&revision=174102
by Philip Rogers <pdr@chromium.org>.
No new tests as this is covered by svg/custom/composited-svg-with-opacity.html.
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::isTransparent): Deleted.
- rendering/RenderLayer.h:
- rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
The opacity case for root svg renderers is now handled by
RenderLayer.
- 9:52 PM Changeset in webkit [169367] by
-
- 2 edits in trunk/Source/WebKit2
[EFL][WK2] Fix EWK2BackForwardListTest test fails.
https://bugs.webkit.org/show_bug.cgi?id=133171
Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-05-26
Reviewed by Gyuyoung Kim.
Use local test html pages instead of EWK2UnitTestServer, call ewk_view_url_set() to load test html pages.
Since even after setting no_proxy="localhost,127.0.0.1", still test server was unable to load the test
html pages for ewk2_back_forward_list tests, so changed to use local html pages.
- UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
(TEST_F):
- 9:32 PM Changeset in webkit [169366] by
-
- 3 edits in trunk/Source/WebKit2
[EFL][WK2] Fix code style check errors in EFL API tests.
https://bugs.webkit.org/show_bug.cgi?id=133170
Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-05-26
Reviewed by Gyuyoung Kim.
Omit int when using unsigned modifier, as per coding style rules.
- UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp):
- UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
(EWK2UnitTest::EWK2UnitTestEnvironment::defaultWidth):
(EWK2UnitTest::EWK2UnitTestEnvironment::defaultHeight):
- 7:23 PM Changeset in webkit [169365] by
-
- 2 edits in trunk/LayoutTests
Fix wrong inclusion depth of js-test-pre.js in is-protocol-handler-registered.html
https://bugs.webkit.org/show_bug.cgi?id=133273
Reviewed by Darin Adler.
Can't use debug() due to wrong inclusion path.
- fast/dom/NavigatorContentUtils/is-protocol-handler-registered.html:
- 7:22 PM Changeset in webkit [169364] by
-
- 1 edit2 moves1 add in trunk/LayoutTests
[EFL] Move navigator content utils's to own directory
https://bugs.webkit.org/show_bug.cgi?id=133275
Reviewed by Darin Adler.
Expected results need to be maintained by own directory because navigator content utils have been maintained by
own directory as well.
- platform/efl/fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt: Renamed from LayoutTests/platform/efl/fast/dom/register-protocol-handler-expected.txt.
- platform/efl/fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt: Renamed from LayoutTests/platform/efl/fast/dom/unregister-protocol-handler-expected.txt.
- 5:19 PM Changeset in webkit [169363] by
-
- 2 edits in trunk/Source/WebCore
CSS JIT: Fix build error raised when CSS_SELECTOR_JIT_DEBUGGING is 1
https://bugs.webkit.org/show_bug.cgi?id=133266
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-05-26
Reviewed by Benjamin Poulain.
When CSS_SELECTOR_JIT_DEBUGGING is 1, build erros occur on x86_64.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generatePrologue):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateEpilogue):
- 5:02 PM Changeset in webkit [169362] by
-
- 4 edits in trunk/Source/WebKit2
Add UI process watchdog on iOS to ensure WebProcess connections close
https://bugs.webkit.org/show_bug.cgi?id=133200
<rdar://problem/16997983>
Reviewed by Darin Adler.
When the WebProcessProxy wants to disconnect from a WebContent process it just drops the connection,
and hopes the connection closes. There is a watchdog thread in the ChildProcess to try to ensure this
happens.
On iOS the process may not be runnable at the time, preventing termination. Instead add a watchdog in
the UI process to make the process runnable, and to terminate if it doesn't quit in a timely fashion.
- Platform/IPC/Connection.h:
- added terminateSoon.
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
- take an assertion to make the process runnable, and start a watchdog timer.
(IPC::ConnectionTerminationWatchdog::watchdogTimerFired):
- if the process hasn't quit by the timer the watchdog fires, kill it.
(IPC::Connection::terminateSoon):
- create a ConnectionTerminationWatchdog.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::removeWebPage):
- when disconnecting from a process, first tell it to terminateSoon.
- 4:42 PM Changeset in webkit [169361] by
-
- 2 edits in trunk/Tools
[GTK] GObject DOM bindings API break test fails in the tests bots
https://bugs.webkit.org/show_bug.cgi?id=133211
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-26
Reviewed by Martin Robinson.
When generating the built product archive on platform GTK, we need
to copy also the file gtkdoc-webkitdom.cfg and the directory
DerivedSources/webkitdom.
- BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
- 2:45 PM Changeset in webkit [169360] by
-
- 4 edits15 adds in trunk
Fix the quirks mode selector matching of the pseudo classes :hover and :active
https://bugs.webkit.org/show_bug.cgi?id=133063
Reviewed by Antti Koivisto.
Source/WebCore:
Our implementation of the quirks mode of :active and :hover was very wrong. The only
thing it was doing is verify the pseudo class is not the first selector of a fragment
(which was conveniently the only thing that was tested :)).
Since those pseudo class were only checking for the order of the filters, something like
#target:hover
would succeed because :hover is not the first simple selector, while
:hover#target
would fail.
That behavior is also a problem for the CSS JIT as it is an implementation detail of SelectorChecker
and compiling something like that with our out-of-order matching would be nonsense.
This patch update the implementation to follow http://quirks.spec.whatwg.org/#the-:active-and-:hover-quirk
Basically, the only cases that do not work in quirks mode are selectors composed only of "*, :hover and :active".
To implement this behavior, I needed to be able to inspect a complete selector fragment, including
what is before and after :hover/:active.
To do that, I replaced the boolean isSubSelector by a pointer to the first selector of the fragment.
When we need to match :active/:hover in quirks mode, we just go over all the selectors in the fragment
to find one of the qualifying match type.
Tests: fast/selectors/active-hover-quirks.html
fast/selectors/active-quirks.html
fast/selectors/hover-quirks.html
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively):
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::SelectorChecker::checkOne):
- css/SelectorChecker.h:
(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
LayoutTests:
The test coverage of :hover and :active was extremly poor.
Those new tests add coverage for the cases fixed by this patch.
- fast/selectors/active-hover-quirks-expected.txt: Added.
- fast/selectors/active-hover-quirks.html: Added.
- fast/selectors/active-hover-strict-expected.txt: Added.
- fast/selectors/active-hover-strict.html: Added.
- fast/selectors/active-quirks-expected.txt: Added.
- fast/selectors/active-quirks.html: Added.
- fast/selectors/active-strict-expected.txt: Added.
- fast/selectors/active-strict.html: Added.
- fast/selectors/hover-quirks-expected.txt: Added.
- fast/selectors/hover-quirks.html: Added.
- fast/selectors/hover-strict-expected.txt: Added.
- fast/selectors/hover-strict.html: Added.
- fast/selectors/resources/hover-active-quirks-utility.js: Added.
- selectors/resources/hover-active-strict-utility.js: Added.
- 1:18 PM Changeset in webkit [169359] by
-
- 2 edits in trunk/Source/WebCore
Split the call to adjustForLocalZoom out into a separate expression.
https://bugs.webkit.org/show_bug.cgi?id=133286
Reviewed by Darin Adler.
This patch ensures that adjustForLocalZoom() always gets called before we look at
zoomFactor's value. (and not rely on the undefined behavior of the order of function argument evaluation)
- dom/Element.cpp:
(WebCore::Element::offsetLeft):
(WebCore::Element::offsetTop):
- 12:58 PM Changeset in webkit [169358] by
-
- 11 edits4 adds in trunk
Class name matching should use ASCII case-insensitive matching, not Unicode case folding
https://bugs.webkit.org/show_bug.cgi?id=133292
Reviewed by Anders Carlsson.
Source/WebCore:
Tests: fast/dom/getElementsByClassName/ASCII-case-insensitive.html
fast/dom/getElementsByClassName/case-sensitive.html
- dom/SpaceSplitString.cpp:
(WebCore::hasNonASCIIOrUpper): Deleted.
(WebCore::tokenizeSpaceSplitString): Use a for loop instead of while.
(WebCore::spaceSplitStringTable): Renamed from sharedDataMap; the new name is supposed
to help us see the analogy with the atomic string table.
(WebCore::SpaceSplitString::set): Removed unneeded special case for null and preflight
since AtomicString::convertToASCIILowercase now handles both of those. Changed to call
convertToASCIILowercase instead of foldCase, since we don't want to fold non-ASCII.
(WebCore::SpaceSplitString::spaceSplitStringContainsValue): Ditto.
(WebCore::SpaceSplitStringData::create): Marked this inline since it's only called in
one place and that place is in this file. Also used auto a bit and used get instead of
find since the value type is a simple pointer.
(WebCore::SpaceSplitStringData::destroy): Removed unneeded check for null. We never
create any SpaceSplitStringData with empty strings, and a null is a kind of empty string.
- dom/SpaceSplitString.h: Removed some unneeded includes and some unneeded uses of the
inline keyword. Changed types from size_t to unsigned in a couple places; we had a mix
of the types and there was no reason to use size_t there.
Source/WTF:
- wtf/text/AtomicString.cpp:
(WTF::AtomicString::addSlowCase): Change to take references instead of pointers since these
arguments can never be null.
(WTF::AtomicString::lower): Rearranged slightly to use PassRef in a more efficient but
slightly uglier way.
(WTF::AtomicString::convertToASCIILowercase): Added.
- wtf/text/AtomicString.h: Updated for above changes.
- wtf/text/StringImpl.cpp:
(WTF::StringImpl::convertToASCIILowercase): Added.
- wtf/text/StringImpl.h: Updated for above.
- wtf/text/WTFString.cpp:
(WTF::String::convertToASCIILowercase): Added.
- wtf/text/WTFString.h: Updated for above.
LayoutTests:
- fast/dom/getElementsByClassName/ASCII-case-insensitive-expected.txt: Added.
- fast/dom/getElementsByClassName/ASCII-case-insensitive.html: Added.
- fast/dom/getElementsByClassName/case-sensitive-expected.txt: Added.
- fast/dom/getElementsByClassName/case-sensitive.html: Added.
- 11:01 AM Changeset in webkit [169357] by
-
- 9 edits in trunk/Source/WebKit2
[WebKit2] Add better default preferences while keeping backward compatibility for the C-SPI
https://bugs.webkit.org/show_bug.cgi?id=133289
Reviewed by Anders Carlsson.
- Shared/WebPreferencesStore.h:
Change a few defaults:
- PluginsEnabled -> false
- JavaEnabled -> false
- JavaEnabledForLocalFiles -> false
- StorageBlockingPolicy -> BlockThirdPartyStorage
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesCreate):
(WKPreferencesCreateWithIdentifier):
- UIProcess/WebPageGroup.cpp:
(WebKit::WebPageGroup::WebPageGroup):
Switch to using WebPreferences::createWithLegacyDefaults().
- UIProcess/WebPreferences.cpp:
(WebKit::WebPreferences::create):
(WebKit::WebPreferences::createWithLegacyDefaults):
- UIProcess/WebPreferences.h:
Move create functions to the cpp file and add createWithLegacyDefaults() which keeps
the old defaults;
- UIProcess/API/C/WKPreferencesRef.h:
Fix the comment.
- UIProcess/API/Cocoa/WKPreferences.h:
Update the comment to reflect the new defaults.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Unconditionally set setShouldDispatchJavaScriptWindowOnErrorEvents() to true. This setting only
exists for legacy WebKit.
- 11:00 AM Changeset in webkit [169356] by
-
- 6 edits in trunk/Source/WebKit2
[Cocoa] Rewrite WK_DESIGNATED_INITIALIZER in installed headers
https://bugs.webkit.org/show_bug.cgi?id=133290
Reviewed by Anders Carlsson.
- Shared/API/Cocoa/WKFoundation.h: When WK_API_AVAILABILITY_ENABLED is defined, don’t
provide definitions of WK_DESIGNATED_INITIALIZER and WK_UNAVAILABLE, since those macros will
be rewritten out of the headers. When WK_API_AVAILABILITY_ENABLED isn’t defined, provide
definitions of the other two macros as appropriate for the target OS.
- UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Removed WK_DESIGNATED_INITIALIZER from a
category method declaration.
- UIProcess/API/Cocoa/WKWebView.h: Mark the superclass designated initializer
-initWithCoder: as unavailable.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithCoder:]): Override this designated initializer of the superclass by
returning nil.
- mac/rewrite-availability-macros.sh: Rewrite WK_DESIGNATED_INITIALIZER to
NS_DESIGNATED_INITIALIZER and WK_UNAVAILABLE to NS_UNAVAILABLE. Also make sure to process
all headers if the script has changed since the last time it was run.
- 10:45 AM Changeset in webkit [169355] by
-
- 6 edits in trunk
Unreviewed, rolling out r169122.
https://bugs.webkit.org/show_bug.cgi?id=133288
Broke CJK font fallback (Requested by ap on #webkit).
Reverted changeset:
"[Mac] WebProcess doesn't follow localization of UI process
when run as a service"
https://bugs.webkit.org/show_bug.cgi?id=133126
http://trac.webkit.org/changeset/169122
- 10:43 AM Changeset in webkit [169354] by
-
- 25 edits53 adds in trunk
Latest emscripten life benchmark is 4x slower because the DFG doesn't realize that arithmetic on booleans is a thing
https://bugs.webkit.org/show_bug.cgi?id=133136
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Some key concepts:
- Except for the prediction propagation and type fixup phases, which are super early in the pipeline, nobody has to know about the fact that booleans may flow into numerical operations because there will just be a BooleanToNumber node that will take a value and, if that value is a boolean, will convert it to the equivalent numerical value. It will have a BooleanUse mode where it will also speculate that the input is a boolean but it can also do UntypedUse in which case it will pass through any non-booleans. This operation is very easy to model in all of the compiler tiers.
- No changes to the baseline JIT. The Baseline JIT will still believe that boolean inputs require taking the slow path and it will still report that it took slow path for any such operations. The DFG will now be smart enough to ignore baseline JIT slow path profiling on operations that were known to have had boolean inputs. That's a little quirky, but it's probably easier than modifying the baseline JIT to track booleans correctly.
4.1x speed-up on the emscripten "life" benchmark. Up to 10x speed-up on microbenchmarks.
- bytecode/SpeculatedType.h:
(JSC::isInt32OrBooleanSpeculation):
(JSC::isInt32SpeculationForArithmetic):
(JSC::isInt32OrBooleanSpeculationForArithmetic):
(JSC::isInt32OrBooleanSpeculationExpectingDefined):
(JSC::isInt52Speculation):
(JSC::isMachineIntSpeculation):
(JSC::isFullNumberOrBooleanSpeculation):
(JSC::isFullNumberOrBooleanSpeculationExpectingDefined):
(JSC::isInt32SpeculationExpectingDefined): Deleted.
(JSC::isMachineIntSpeculationExpectingDefined): Deleted.
(JSC::isMachineIntSpeculationForArithmetic): Deleted.
(JSC::isBytecodeNumberSpeculationExpectingDefined): Deleted.
(JSC::isFullNumberSpeculationExpectingDefined): Deleted.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGAllocator.h:
(JSC::DFG::Allocator<T>::indexOf):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::performNodeCSE):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGCommon.h:
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixIntConvertingEdge):
(JSC::DFG::FixupPhase::fixIntOrBooleanEdge):
(JSC::DFG::FixupPhase::fixDoubleOrBooleanEdge):
(JSC::DFG::FixupPhase::attemptToMakeIntegerAdd):
(JSC::DFG::FixupPhase::fixIntEdge): Deleted.
- dfg/DFGGraph.h:
(JSC::DFG::Graph::addSpeculationMode):
(JSC::DFG::Graph::valueAddSpeculationMode):
(JSC::DFG::Graph::arithAddSpeculationMode):
(JSC::DFG::Graph::addShouldSpeculateInt32):
(JSC::DFG::Graph::mulShouldSpeculateInt32):
(JSC::DFG::Graph::mulShouldSpeculateMachineInt):
(JSC::DFG::Graph::negateShouldSpeculateInt32):
(JSC::DFG::Graph::negateShouldSpeculateMachineInt):
(JSC::DFG::Graph::addImmediateShouldSpeculateInt32):
(JSC::DFG::Graph::mulImmediateShouldSpeculateInt32): Deleted.
- dfg/DFGNode.h:
(JSC::DFG::Node::sawBooleans):
(JSC::DFG::Node::shouldSpeculateInt32OrBoolean):
(JSC::DFG::Node::shouldSpeculateInt32ForArithmetic):
(JSC::DFG::Node::shouldSpeculateInt32OrBooleanForArithmetic):
(JSC::DFG::Node::shouldSpeculateInt32OrBooleanExpectingDefined):
(JSC::DFG::Node::shouldSpeculateMachineInt):
(JSC::DFG::Node::shouldSpeculateDouble):
(JSC::DFG::Node::shouldSpeculateNumberOrBoolean):
(JSC::DFG::Node::shouldSpeculateNumberOrBooleanExpectingDefined):
(JSC::DFG::Node::shouldSpeculateNumber):
(JSC::DFG::Node::canSpeculateInt32):
(JSC::DFG::Node::canSpeculateInt52):
(JSC::DFG::Node::sourceFor):
(JSC::DFG::Node::shouldSpeculateInt32ExpectingDefined): Deleted.
(JSC::DFG::Node::shouldSpeculateMachineIntForArithmetic): Deleted.
(JSC::DFG::Node::shouldSpeculateMachineIntExpectingDefined): Deleted.
(JSC::DFG::Node::shouldSpeculateDoubleForArithmetic): Deleted.
(JSC::DFG::Node::shouldSpeculateNumberExpectingDefined): Deleted.
- dfg/DFGNodeFlags.cpp:
(JSC::DFG::dumpNodeFlags):
- dfg/DFGNodeFlags.h:
(JSC::DFG::nodeMayOverflow):
(JSC::DFG::nodeMayNegZero):
(JSC::DFG::nodeCanSpeculateInt32):
(JSC::DFG::nodeCanSpeculateInt52):
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::run):
(JSC::DFG::PredictionPropagationPhase::propagateToFixpoint):
(JSC::DFG::PredictionPropagationPhase::speculatedDoubleTypeForPrediction):
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileValueToInt32):
(JSC::FTL::LowerDFGToLLVM::compileBooleanToNumber):
- runtime/JSCJSValue.h:
- runtime/JSCJSValueInlines.h:
(JSC::JSValue::asInt32ForArithmetic):
- tests/stress/max-boolean-exit.js: Added.
(foo):
(test):
- tests/stress/mul-boolean-exit.js: Added.
(foo):
(test):
- tests/stress/plus-boolean-exit.js: Added.
(foo):
(test):
- tests/stress/plus-boolean-or-double.js: Added.
(foo):
(test):
- tests/stress/plus-boolean-or-int.js: Added.
(foo):
(test):
LayoutTests:
- js/regress/abs-boolean-expected.txt: Added.
- js/regress/abs-boolean.html: Added.
- js/regress/div-boolean-double-expected.txt: Added.
- js/regress/div-boolean-double.html: Added.
- js/regress/div-boolean-expected.txt: Added.
- js/regress/div-boolean.html: Added.
- js/regress/max-boolean-expected.txt: Added.
- js/regress/max-boolean.html: Added.
- js/regress/min-boolean-expected.txt: Added.
- js/regress/min-boolean.html: Added.
- js/regress/minus-boolean-double-expected.txt: Added.
- js/regress/minus-boolean-double.html: Added.
- js/regress/minus-boolean-expected.txt: Added.
- js/regress/minus-boolean.html: Added.
- js/regress/mod-boolean-double-expected.txt: Added.
- js/regress/mod-boolean-double.html: Added.
- js/regress/mod-boolean-expected.txt: Added.
- js/regress/mod-boolean.html: Added.
- js/regress/mul-boolean-double-expected.txt: Added.
- js/regress/mul-boolean-double.html: Added.
- js/regress/mul-boolean-expected.txt: Added.
- js/regress/mul-boolean.html: Added.
- js/regress/neg-boolean-expected.txt: Added.
- js/regress/neg-boolean.html: Added.
- js/regress/plus-boolean-arith-expected.txt: Added.
- js/regress/plus-boolean-arith.html: Added.
- js/regress/plus-boolean-double-expected.txt: Added.
- js/regress/plus-boolean-double.html: Added.
- js/regress/plus-boolean-expected.txt: Added.
- js/regress/plus-boolean.html: Added.
- js/regress/script-tests/abs-boolean.js: Added.
- js/regress/script-tests/div-boolean-double.js: Added.
- js/regress/script-tests/div-boolean.js: Added.
- js/regress/script-tests/max-boolean.js: Added.
- js/regress/script-tests/min-boolean.js: Added.
- js/regress/script-tests/minus-boolean-double.js: Added.
- js/regress/script-tests/minus-boolean.js: Added.
- js/regress/script-tests/mod-boolean-double.js: Added.
- js/regress/script-tests/mod-boolean.js: Added.
- js/regress/script-tests/mul-boolean-double.js: Added.
- js/regress/script-tests/mul-boolean.js: Added.
- js/regress/script-tests/neg-boolean.js: Added.
- js/regress/script-tests/plus-boolean-arith.js: Added.
- js/regress/script-tests/plus-boolean-double.js: Added.
- js/regress/script-tests/plus-boolean.js: Added.
- js/regress/script-tests/sin-boolean.js: Added.
- js/regress/sin-boolean-expected.txt: Added.
- js/regress/sin-boolean.html: Added.
- 10:30 AM Changeset in webkit [169353] by
-
- 3 edits in trunk/Source/WebKit2
Convert a couple of loops over to range-based for
https://bugs.webkit.org/show_bug.cgi?id=133287
Reviewed by Simon Fraser.
- UIProcess/Plugins/PluginInfoStore.cpp:
(WebKit::PluginInfoStore::findPluginForMIMEType):
(WebKit::PluginInfoStore::findPluginForExtension):
(WebKit::PluginInfoStore::infoForPluginWithPath):
- UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
(WebKit::PluginProcessManager::setProcessSuppressionEnabled):
- 9:55 AM Changeset in webkit [169352] by
-
- 6 edits in trunk
[GTK] WebProcess leaked when closing pages with network process enabled
https://bugs.webkit.org/show_bug.cgi?id=129684
Reviewed by Anders Carlsson.
Source/WebKit2:
The problem is that the web process is not notified when the UI
process closes the connection, because when close() is called on
the socket by the UI process, the socket is shared by another web
process launched later, preventing the connection from being
shut down. We need to set the CLOEXEC flag on the sockets file
descriptor to make sure they are not exposed to other processes.
- Platform/IPC/Connection.h: Add ConnectionOptions parameter to
createPlatformConnection() with a default value compatible with
existing callers.
- Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::createPlatformConnection): Set the CLOEXEC flag
on the client and server socket file descriptors depending on the
options passed.
- UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess): Use
IPC::Connection::createPlatformConnection() instead of
socketpair() directly, setting the CLOEXEC flag on the server
before spawning the new process and on the client right after
spawning the new process.
Tools:
Enable the test to check that web processes finish when the web
view is destroyed.
- TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
- 9:40 AM Changeset in webkit [169351] by
-
- 2 edits in trunk/Source/WebKit2
Initialize WKWebViewConfiguration ivars lazily
https://bugs.webkit.org/show_bug.cgi?id=133270
<rdar://problem/17027606>
Reviewed by Sam Weinig.
Create a LazyInitialized class template and use it to lazily initialize WKWebViewConfiguration properties.
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(LazyInitialized::get):
Initialize m_value with the given function if it hasn't been initialized already.
(LazyInitialized::set):
Update m_value and set m_isInitialized to true.
(LazyInitialized::peek):
Return m_value without initializing it.
(-[WKWebViewConfiguration description]):
Use getters so we'll initialize variables if needed.
(-[WKWebViewConfiguration copyWithZone:]):
Ditto.
(-[WKWebViewConfiguration processPool]):
(-[WKWebViewConfiguration setProcessPool:]):
(-[WKWebViewConfiguration preferences]):
(-[WKWebViewConfiguration setPreferences:]):
(-[WKWebViewConfiguration userContentController]):
(-[WKWebViewConfiguration setUserContentController:]):
(-[WKWebViewConfiguration _visitedLinkProvider]):
(-[WKWebViewConfiguration _setVisitedLinkProvider:]):
(-[WKWebViewConfiguration _websiteDataStore]):
(-[WKWebViewConfiguration _setWebsiteDataStore:]):
(-[WKWebViewConfiguration _contentProviderRegistry]):
(-[WKWebViewConfiguration _setContentProviderRegistry:]):
Pass initialization code to all getters.
(-[WKWebViewConfiguration _validate]):
Use getters.
(-[WKWebViewConfiguration init]): Deleted.
- 9:37 AM Changeset in webkit [169350] by
-
- 2 edits in trunk/Tools
REGRESSION(r164632): [GTK] Crash in generate-gtkdoc when rebasing docs
https://bugs.webkit.org/show_bug.cgi?id=133279
Reviewed by Philippe Normand.
generator.saw_warnings is only set by GTKDoc::generate(), so it
should only be used after generate.
- gtk/generate-gtkdoc:
(generate_documentation_for_config): Do not check
generator.saw_warnings again, simply return the value returned by
generate_doc() which is generator.saw_warnings. When rebasing,
returns always False since there aren't warnings.
- 9:25 AM Changeset in webkit [169349] by
-
- 9 edits3 adds in trunk
[CSS Grid Layout] Implementation of the "grid" shorthand.
https://bugs.webkit.org/show_bug.cgi?id=132122
Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-05-26
Reviewed by Darin Adler.
Source/WebCore:
The grid property is a shorthand that sets all of the explicit
grid properties (grid-template-rows, grid-template-columns, and
grid-template-areas) as well as all the implicit grid properties
(grid-auto-rows, grid-auto-columns, and grid-auto-flow) in a
single declaration
Notice that either explicit or implicit grid can be specified,
assigning the initial values to the omitted properties.
Test: fast/css-grid-layout/grid-shorthand-get-set.html
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
- css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseGridShorthand):
- css/CSSParser.h:
- css/CSSPropertyNames.in:
- css/StylePropertyShorthand.cpp:
(WebCore::webkitGridShorthand):
- css/StylePropertyShorthand.h:
LayoutTests:
Layout Test for the basic functionality of the 'grid' shorthand. It was
also added a new javascript file with some utility functions.
- fast/css-grid-layout/grid-shorthand-get-set-expected.txt: Added.
- fast/css-grid-layout/grid-shorthand-get-set.html: Added.
- fast/css-grid-layout/resources/grid-shorthand-parsing-utils.js: Added.
(testGridDefinitionsValues):
(testGridDefinitionsSetJSValues):
(testNonGridDefinitionsSetJSValues):
(checkGridDefinitionsSetJSValues):
(testGridDefinitionsSetBadJSValues):
- 9:11 AM Changeset in webkit [169348] by
-
- 2 edits in trunk/Source/JavaScriptCore
Remove dead code from VM.cpp
https://bugs.webkit.org/show_bug.cgi?id=133284
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-26
Reviewed by Darin Adler.
This workaround was added in r127505. Since the clang is the
only used compiler in this case, this workaround is obsolete.
- runtime/VM.cpp:
(JSC::enableAssembler):
- 9:11 AM Changeset in webkit [169347] by
-
- 2 edits in trunk/Tools
W3C test importer should catch exceptions coming from HTML/CSS conversion
https://bugs.webkit.org/show_bug.cgi?id=133176
Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-05-26
Reviewed by Darin Adler.
Exceptions raised when converting HTML/CSS are caught.
Files for which conversion failed are still copied to the target directory.
Each individual conversion failure is logged.
Total conversion failure number is logged at the end of the import process.
- Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.import_tests):
- 9:08 AM Changeset in webkit [169346] by
-
- 2 edits in trunk/Source/WebCore
Subpixel layout: Legacy Element.offset* client* return values are invalid in certain cases.
https://bugs.webkit.org/show_bug.cgi?id=133272
Reviewed by Simon Fraser.
Element.offset* client* functions applied various rounding strategies on the return values before r168868.
(for example, offsetLeft/Top either floored through implicit integer arithmetics or rounded explicitly depending
whether the zoom scale was 1. see http://trac.webkit.org/changeset/168868/trunk/Source/WebCore/dom/Element.cpp for details)
This patch mimics the legacy behavior by either rounding or flooring the return value.
Not testable (legacy switch is not exposed)
- dom/Element.cpp:
(WebCore::adjustForLocalZoom):
(WebCore::convertToNonSubpixelValueIfNeeded):
(WebCore::Element::offsetLeft):
(WebCore::Element::offsetTop):
- 8:04 AM Changeset in webkit [169345] by
-
- 3 edits in trunk/LayoutTests
Unreviewed EFL gardening
Remove expectations for now passing tests.
- platform/efl-wk2/TestExpectations:
- platform/efl/TestExpectations:
- 7:19 AM Changeset in webkit [169344] by
-
- 4 edits1 add in trunk/Tools
[GTK] Allow to run the tests on the native X display.
https://bugs.webkit.org/show_bug.cgi?id=133157
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-26
Reviewed by Benjamin Poulain.
This adds a new driver (xorgdriver) that runs the tests on the
X display referenced by the environment variable DISPLAY.
This new driver will be activated only if the environment variable
USE_NATIVE_XDISPLAY is defined. This can be used both for layout
tests and performance tests.
This patch also makes the script run-perf-tests to check the
system dependencies before starting the tests. Previously this
was not checked, and if the system dependencies were not met,
the script tried to execute the tests anyway, causing massive
failures. For example, if you had Xvfb not installed and you
wanted to use the Xvfb driver (the default on GTK and EFL),
run-perf-tests would not abort.
- Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args): Check the system dependencies of
the driver before starting the tests.
- Scripts/webkitpy/port/driver.py:
(Driver): Implement generic check_driver method.
(Driver.check_driver):
(Driver.check_driver.implementation):
- Scripts/webkitpy/port/gtk.py:
(GtkPort._driver_class): Check for environment variable
USE_NATIVE_XDISPLAY to decide if the Xorg driver should be used.
- Scripts/webkitpy/port/xorgdriver.py: Added.
(XorgDriver): Implement Xorg driver.
(XorgDriver.check_driver):
(XorgDriver._start):
- 7:16 AM Changeset in webkit [169343] by
-
- 2 edits in trunk/Tools
REGRESSION(r166798): [GTK] [EFL] kill-old-processes should not kill dbus-daemon
https://bugs.webkit.org/show_bug.cgi?id=133215
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-26
Reviewed by Csaba Osztrogonác.
This reverts r166798.
- BuildSlaveSupport/kill-old-processes:
(main):
- 7:04 AM Changeset in webkit [169342] by
-
- 2 edits in trunk/Tools
[EFL] Turn on ENABLE_CSS_FILTERS in build script
https://bugs.webkit.org/show_bug.cgi?id=133278
Reviewed by Gyuyoung Kim.
- Scripts/webkitperl/FeatureList.pm: Add a build script condition missing in r169172.
- 6:57 AM Changeset in webkit [169341] by
-
- 2 edits in trunk/Source/JavaScriptCore
JSC CLoop warning fix
https://bugs.webkit.org/show_bug.cgi?id=133259
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-26
Reviewed by Darin Adler.
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
- 6:55 AM Changeset in webkit [169340] by
-
- 2 edits in trunk/Tools
run-javascriptcore-tests warning fix on non Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=133260
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-26
Reviewed by Darin Adler.
- Scripts/webkitdirs.pm:
(argumentsForConfiguration):
- 5:06 AM Changeset in webkit [169339] by
-
- 2 edits in trunk/Source/WebKit2
Remove WebKit2 framework from generate-forwarding-headers.pl
https://bugs.webkit.org/show_bug.cgi?id=133214
Since renaming WebKit2.framework to WebKit.framework is done and all WebKit2/*.h includes
were renamed to WebKit/*.h, generating forwarding headers for WebKit2/*.h framework style
headers is not necessary anymore.
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-26
Reviewed by Darin Adler.
- Scripts/generate-forwarding-headers.pl:
- 3:09 AM Changeset in webkit [169338] by
-
- 1 copy in releases/WebKitGTK/webkit-2.4.3
Tagging the WebKitGTK+ 2.4.3 release
- 3:01 AM Changeset in webkit [169337] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4
Unreviewed. Update NEWS and Versions.m4 for 2.4.3 release.
.:
- Source/autotools/Versions.m4: Bump version numbers.
Source/WebKit/gtk:
- NEWS: Added release notes for 2.4.3.
- 3:00 AM Changeset in webkit [169336] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4/Tools
Unreviewed. Fix make distcheck.
- gtk/GNUmakefile.am: Remove generate-webkitdom-doc-files from
EXTRA_DIST and add webkitdom.py.
- gtk/generate-gtkdoc:
(generate_documentation_for_config): Do not try to use
generator.saw_warnings when rebasing, it's only set when
generating the docs.
- 2:50 AM Changeset in webkit [169335] by
-
- 5 edits in trunk
[EFL] Input fields and text areas are not rendered correctly after r167771
https://bugs.webkit.org/show_bug.cgi?id=133181
Reviewed by Gyuyoung Kim.
Source/WebCore:
r167771 changed arguments of RenderTheme two virtual method arguments which were not reflected
in changes in derived classes, which caused parent method to be called. Arguments in derived class
were updated, also 'override' specifiers were added to all virtual methods to prevent similar errors.
Already covered by fast/forms/textarea-placeholder-wrapping.html
- platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::paintTextField):
(WebCore::RenderThemeEfl::paintTextArea):
- platform/efl/RenderThemeEfl.h:
(WebCore::RenderThemeEfl::supportsHover):
(WebCore::RenderThemeEfl::supportsControlTints):
LayoutTests:
- platform/efl-wk2/TestExpectations: Remove now passing test from test expectations.
- 2:48 AM Changeset in webkit [169334] by
-
- 9 edits2 adds in trunk
[CSS Grid Layout] Children of grid containers must be turned into grid items
https://bugs.webkit.org/show_bug.cgi?id=132991
Reviewed by Darin Adler.
From Blink r150472 by <jchaffraix@chromium.org>
Source/WebCore:
According to specs each child of a grid container must become a
grid item meaning that grid items are grid level boxes and thus,
do not participate in the block formatting context but in the grid
formatting one.
This change updates the grid items' 'display' property after style
resolution so that we match the specification (see section 4. Grid
Items). The spec basically instructs us to compute the value of
'display' by applying the table in CSS2.1 Chapter 9.7
http://www.w3.org/TR/CSS2/visuren.html#dis-pos-flo
Test: fast/css-grid-layout/grid-item-display.html
- css/StyleResolver.cpp:
(WebCore::isDisplayGridBox):
(WebCore::StyleResolver::adjustRenderStyle):
LayoutTests:
Added a new test case to verify the computed value for 'display'
in grid items. The test also checks that items are correctly
positioned inside the grid, i.e., they properly became grid
items.
Also removed ietestcenter's grid-items-002.html and
grid-items-003.html from the list of failing tests as they should
be working now.
- fast/css-grid-layout/grid-item-display-expected.txt: Added.
- fast/css-grid-layout/grid-item-display.html: Added.
- ietestcenter/css3/grid/grid-items-002.htm: Fixed a typo and
replaced -webkit-grid-definition-* by -webkit-grid-template-*
- ietestcenter/css3/grid/grid-items-003.htm: Ditto.
- platform/efl/TestExpectations: Removed the two tests above.
- platform/gtk/TestExpectations: Ditto.
- platform/mac/TestExpectations: Ditto.
- platform/win/TestExpectations: Ditto.
- 2:26 AM Changeset in webkit [169333] by
-
- 2 edits in trunk/Source/WebCore
Remove Vector copies in ShorthandPropertyWrapper implementation and use
https://bugs.webkit.org/show_bug.cgi?id=133265
Reviewed by Simon Fraser.
- page/animation/CSSPropertyAnimation.cpp:
(WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper): Move the passed-in Vector
into the member variable instead of using Vector<>::swap().
(WebCore::ShorthandPropertyWrapper::propertyWrappers): Return a const reference of the member
variable instead of a const value.
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Move the Vector
object into the ShorthandProperthyWrapper constructor.
(WebCore::gatherEnclosingShorthandProperties): Deploy a range-based for-loop.
- 2:22 AM Changeset in webkit [169332] by
-
- 5 edits in trunk/Source/WebKit2
WebPage::setComposition(), WebPageProxy::didFindStringMatches() should take Vector parameters by const reference
https://bugs.webkit.org/show_bug.cgi?id=133264
Reviewed by Darin Adler.
Taking the Vector parameters in the two methods (invoked through the IPC message handling)
by value causes unnecessary copies. The methods don't modify the objects and don't want
or need fresh copies, hence they should take in const references to Vector objects.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFindStringMatches):
- UIProcess/WebPageProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setComposition):
- WebProcess/WebPage/WebPage.h:
- 12:45 AM WebKitGTK/2.4.x edited by
- (diff)
- 12:44 AM Changeset in webkit [169331] by
-
- 5 edits in releases/WebKitGTK/webkit-2.4/Source
[Stable] [GTK] GdiObject.h missing in WebKitGTK 2.4.1 tarball
https://bugs.webkit.org/show_bug.cgi?id=132814
Patch by Milan Crha <mcrha@redhat.com> on 2014-05-25
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Add missing files and includes to fix the mingw32 build.
- GNUmakefile.list.am:
- platform/graphics/win/GraphicsContextCairoWin.cpp:
Source/WTF:
Add missing files to fix the mingw32 build.
- GNUmakefile.list.am:
- 12:31 AM WebKitGTK/2.4.x edited by
- (diff)
- 12:30 AM Changeset in webkit [169330] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r169200 - Video is resumed with old playback rate.
https://bugs.webkit.org/show_bug.cgi?id=132905
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-22
Reviewed by Philippe Normand.
Source/WebCore:
Setting '0' playback rate is causing pipeline to pause.
GStreamer player impl. exposed this information to upper layers but it should not.
Solution is to hidden such situation behind m_playbackRatePause flag.
Test: media/video-paused-0-rate.html
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::doSeek):
(WebCore::MediaPlayerPrivateGStreamer::updatePlaybackRate):
(WebCore::MediaPlayerPrivateGStreamer::paused):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
LayoutTests:
- media/video-paused-0-rate-expected.txt: Added.
- media/video-paused-0-rate.html: Added.
- 12:15 AM Changeset in webkit [169329] by
-
- 2 edits in trunk/Source/WebCore
[EFL] Fix build error in blob.cpp after r168435
https://bugs.webkit.org/show_bug.cgi?id=132678
Patch by Tanay C <tanay.c@samsung.com> on 2014-05-26
Reviewed by Alexey Proskuryakov.
- fileapi/Blob.cpp:
(WebCore::Blob::size): Using isInBound to check range of local var
actualsize to resolve build error
May 25, 2014:
- 11:17 PM Changeset in webkit [169328] by
-
- 8 edits2 deletes in trunk/Source/WebCore
[EFL] Remove TileCairo and TiledBackingStoreBackendCairo
https://bugs.webkit.org/show_bug.cgi?id=133274
Reviewed by Gyuyoung Kim.
Now, TiledBackingStore is only used for CoordinatedGraphics and the EFL port.
CoordinatedGraphics does not use TileCairo and TiledBackingStoreBackendCairo.
This patch removed them and refactored related files.
- PlatformEfl.cmake:
- PlatformGTK.cmake:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore): Deleted.
- platform/graphics/TiledBackingStore.h:
- platform/graphics/TiledBackingStoreBackend.h:
- platform/graphics/cairo/TileCairo.cpp: Removed.
- platform/graphics/cairo/TiledBackingStoreBackendCairo.cpp: Removed.
- 7:53 PM Changeset in webkit [169327] by
-
- 11 edits2 adds in trunk
setData() of DataTransfer has a void return type
https://bugs.webkit.org/show_bug.cgi?id=133108
Reviewed by Alexey Proskuryakov.
Source/WebCore:
According to HTML5 spec, setData() of DataTranfer interface does not return value.
http://www.w3.org/TR/html/editing.html#the-datatransfer-interface
Test: editing/pasteboard/set_data_typeof_return.html
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::setData):
- dom/DataTransfer.h:
- dom/DataTransfer.idl:
- platform/Pasteboard.h:
- platform/efl/PasteboardEfl.cpp:
(WebCore::Pasteboard::writeString):
- platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::writeString):
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::writeString):
- platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::writeString):
- platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::writeString):
LayoutTests:
- editing/pasteboard/set_data_typeof_return-expected.txt: Added.
- editing/pasteboard/set_data_typeof_return.html: Added.
- 5:04 PM Changeset in webkit [169326] by
-
- 4 edits in trunk/Source/WebKit2
[iOS][WK2] Fix some state reset on crash on the WKWebView
https://bugs.webkit.org/show_bug.cgi?id=133039
Reviewed by Sam Weinig.
This is in no way complete, but this should reduce the undefined states on crash.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _processDidExit]):
If the view is animating, nuke the resize animation. That should be invisible to the user
because the background color is reset to white below.
Reset the contentView frame and scrollview state.
Reset the runtime states. We do not strictly need to reset _needsResetViewStateAfterCommitLoadForMainFrame,
_delayUpdateVisibleContentRects and _hadDelayedUpdateVisibleContentRects but it seems better to have
a clean slate.
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(-[WKWebView _endAnimatedResize]):
We could have crashes during rotation. To simplify the reset code, the animated resize code
no longer change any state when WKWebView is using a custom content view.
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::processDidExit):
Send a _processDidExit on the WKWebView too.
- 3:30 PM Changeset in webkit [169325] by
-
- 4 edits in trunk/Source/WebKit2
Use the right paths for website data
https://bugs.webkit.org/show_bug.cgi?id=133267
<rdar://problem/17027698>
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _initWithConfiguration:]):
Get the path of the absolute URL.
- UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
(WebKit::LocalStorageDatabaseTracker::databasePath):
Fix spelling error.
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didCacheResource):
Ditto.
- 3:17 PM Changeset in webkit [169324] by
-
- 6 edits in trunk/Source
[iOS][WK2] Use ScrollView's scrollOffset as the unobscuredContentRect
https://bugs.webkit.org/show_bug.cgi?id=133262
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-25
Reviewed by Simon Fraser.
Source/WebCore:
Since VisibleContentRect was fixed, we were no longer sending scroll events when updating the scrollOffset
when updating the visible content rects. The reason is that the scrollOffset was defined as the top left of the
VisibleContentRect, and as such was already at the end position after updating the unobscured rect.
This patch split the unobscuredContentRect in unobscuredContentSize (updated live on zoom) and the position defined
by the ScrollView's scrollOffset (updated when scrolling).
- WebCore.exp.in:
- platform/ScrollView.h:
- platform/ios/ScrollViewIOS.mm:
(WebCore::ScrollView::unobscuredContentRect):
(WebCore::ScrollView::setUnobscuredContentSize):
(WebCore::ScrollView::setUnobscuredContentRect): Deleted.
Source/WebKit2:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
(WebKit::WebPage::viewportConfigurationChanged):
(WebKit::WebPage::updateVisibleContentRects):
- 12:54 PM Changeset in webkit [169323] by
-
- 2 edits in trunk/Source/WebKit2
Build fix 2.
- UIProcess/API/Cocoa/WKPreferences.h:
- 12:34 PM Changeset in webkit [169322] by
-
- 2 edits in trunk/Source/WebKit2
Fix build.
- UIProcess/API/Cocoa/WKPreferences.h:
- 11:59 AM Changeset in webkit [169321] by
-
- 4 edits in trunk/Source/WebKit2
[WebKit2] Rework WebPreferencesStore to allow easier overriding of defaults
https://bugs.webkit.org/show_bug.cgi?id=133258
Reviewed by Anders Carlsson.
To support changing default values of preferences based on which API you are using (either
the legacy C-SPI or the Objective-C API), overhaul the WebPreferencesStore to use a single
HashMap of String -> Value (where Value is new type that can be a String, bool, uint32_t or double)
instead of four HashMaps. This allows us to use two of these new HashMaps, one for the actual
set values, and one for overridden defaults. This new Value class will also allow easier incremental
updating of preferences in the future.
Other notable changes:
- Removed Float kind of preferences. There were none.
- Move StorageBlockingPolicy preference to the correct group, it's a uint32_t, not bool.
- Shared/WebPreferencesStore.cpp:
- Shared/WebPreferencesStore.h:
- 11:09 AM Changeset in webkit [169320] by
-
- 21 edits in trunk/Source
Add type-checked casts for TransformOperations
<http://webkit.org/b/133217>
Reviewed by Simon Fraser.
Source/WebCore:
- platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::validateTransformOperations):
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::getTransformFunctionValue):
- Switch to type-checked casts.
- platform/graphics/transforms/IdentityTransformOperation.h:
- platform/graphics/transforms/Matrix3DTransformOperation.h:
- platform/graphics/transforms/MatrixTransformOperation.h:
- platform/graphics/transforms/PerspectiveTransformOperation.h:
- platform/graphics/transforms/RotateTransformOperation.h:
- platform/graphics/transforms/ScaleTransformOperation.h:
- platform/graphics/transforms/SkewTransformOperation.h:
- platform/graphics/transforms/TranslateTransformOperation.h:
- Add 'final' to class declaration.
- Add 'override' to overridden methods.
- Add type-checked cast via TRANSFORMOPERATION_TYPE_CASTS macro.
- Move implementation of operator==(const TransformOperation&) from header to source file so it is able to use a type-checked cast, and switch back to using a reference instead of a pointer.
- Add or update ASSERT in private constructor to check for correct OperationType in classes that represent multiple types.
- platform/graphics/transforms/Matrix3DTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
- platform/graphics/transforms/MatrixTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::MatrixTransformOperation::blend):
- Switch to type-checked casts and use a reference.
- platform/graphics/transforms/PerspectiveTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::PerspectiveTransformOperation::blend):
- platform/graphics/transforms/RotateTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::RotateTransformOperation::blend):
- platform/graphics/transforms/ScaleTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::ScaleTransformOperation::blend):
- platform/graphics/transforms/SkewTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::SkewTransformOperation::blend):
- platform/graphics/transforms/TranslateTransformOperation.cpp:
(WebCore::Matrix3DTransformOperation::operator==): Added.
(WebCore::TranslateTransformOperation::blend):
- Switch to type-checked casts.
- platform/graphics/transforms/TransformOperation.h:
(WebCore::TransformOperation::isRotateTransformOperationType):
(WebCore::TransformOperation::isScaleTransformOperationType):
(WebCore::TransformOperation::isSkewTransformOperationType):
(WebCore::TransformOperation::isTranslateTransformOperationType):
- Add type-checking methods used in constructors and type-checked casts.
- Define TRANSFORMOPERATION_TYPE_CASTS macro used by subclasses.
Source/WebKit2:
- Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder<TransformOperations>::encode):
- Switch to type-checked casts.
- 11:00 AM Changeset in webkit [169319] by
-
- 2 edits in trunk/Source/WebKit2
Use type-checking FilterOperation casts in CoordinatedGraphicsArgumentCoders.cpp
<http://webkit.org/b/133203>
Reviewed by Simon Fraser.
- Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder<WebCore::FilterOperations>::encode):
- Replace static_cast<>() operators with type-checking FilterOperation casts.
- Replace 'default' statement with 'case' statements so new filters added later require an explicit decision to be made.
(IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
- Replace 'default' statement with 'case' statements so new filters added later require an explicit decision to be made.
- 9:37 AM Changeset in webkit [169318] by
-
- 3 edits2 adds in trunk
Crash in WebCore::TextResourceDecoder::checkForCSSCharset
<http://webkit.org/b/133257>
<rdar://problem/17027109>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Test: fast/encoding/css-charset-missing-semi-colon-and-newline.html
- loader/TextResourceDecoder.cpp:
(WebCore::TextResourceDecoder::checkForCSSCharset): Add early
return.
LayoutTests:
- fast/encoding/css-charset-missing-semi-colon-and-newline-expected.txt: Added.
- fast/encoding/css-charset-missing-semi-colon-and-newline.html: Added.
- 12:00 AM Changeset in webkit [169317] by
-
- 2 edits in trunk/Source/WebCore
[Mac] preload AVAssetTrack properties before asking for them
https://bugs.webkit.org/show_bug.cgi?id=133240
Reviewed by Jer Noble.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::assetTrackMetadataKeyNames): Add preferredTransform and naturalSize to the list
of properties we preload.
May 24, 2014:
- 8:50 PM Changeset in webkit [169316] by
-
- 4 edits in trunk/Source/JavaScriptCore
Object.prototype.toString() should use cached strings for null/undefined.
<https://webkit.org/b/133261>
Normally, when calling Object.prototype.toString() on a regular object,
we'd cache the result of the stringification on the object's structure,
making repeated calls fast.
For null and undefined, we were not as smart. We'd instead construct a
new string with either "[object Null]" or "[object Undefined]" each time.
This was exposed by Dromaeo's JS library tests, where some prototype.js
subtests generate millions of strings this way.
This patch adds two VM-permanent cached strings to the SmallStrings.
Looks like ~10% speed-up on Dromaeo/jslib-traverse-prototype.html
Reviewed by Darin Adler.
- runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
- runtime/SmallStrings.cpp:
(JSC::SmallStrings::SmallStrings):
(JSC::SmallStrings::initializeCommonStrings):
(JSC::SmallStrings::visitStrongReferences):
- runtime/SmallStrings.h:
(JSC::SmallStrings::nullObjectString):
(JSC::SmallStrings::undefinedObjectString):
- 8:30 PM Changeset in webkit [169315] by
-
- 2 edits in trunk/Source/WebKit2
Potential null dereference in
WebFrameLoaderClient::dispatchDidFailProvisionalLoad()
<https://bugs.webkit.org/show_bug.cgi?id=133193>
WebFrameLoaderClient::dispatchDidFailProvisionalLoad() calls the
InjectedBundleLoaderClient's didFailProvisionalLoadWithErrorForFrame()
before sending a message to the UI process that a provisional load has
failed. It's possible for the provisional document loader to become
null while calling into the InjectedBundleLoaderClient (as is the case
with the WebKitTestRunner's injected bundle), leading to a null
dereference when trying to send the DidFailProvisionalLoadForFrame
message.
Reviewed by Darin Adler.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
Get the navigation ID before calling into the injected bundle.
- 8:12 PM Changeset in webkit [169314] by
-
- 3 edits in trunk/Source/WebCore
Remove one of the CSSProperty constructor
https://bugs.webkit.org/show_bug.cgi?id=131094
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-24
Reviewed by Darin Adler.
Remove one of the CSSProperty constructor, because it is obsolete.
- css/CSSProperty.h:
(WebCore::CSSProperty::CSSProperty): Deleted.
- css/StyleProperties.h:
(WebCore::StyleProperties::PropertyReference::toCSSProperty):
- 1:40 PM Changeset in webkit [169313] by
-
- 6 edits in trunk/Source
Rename ScrollingTreeScrollingNode's m_scrollPosition to make it clear that it's the value committed from the state tree
https://bugs.webkit.org/show_bug.cgi?id=133254
Reviewed by Tim Horton.
Source/WebCore:
Make ScrollingTreeScrollingNode::scrollPosition() pure virtual, and rename
the member variable and associated getter to make it clear that they relate
to the last committed scroll position.
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
- page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::lastCommittedScrollPosition):
(WebCore::ScrollingTreeScrollingNode::scrollPosition): Deleted.
Source/WebKit2:
Override scrollPosition() on ScrollingTreeOverflowScrollingNodeIOS.
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollPosition):
- 1:40 PM Changeset in webkit [169312] by
-
- 8 edits in trunk/Source/WebCore
Share some more ScrollingTreeScrollingNode code
https://bugs.webkit.org/show_bug.cgi?id=133248
Reviewed by Sam Weinig.
Push scrollBy(), scrollByWithoutContentEdgeConstraints() and setScrollPosition()
down to ScrollingTreeFrameScrollingNode.
This requires that scrollPosition() return the right thing for each class, so make
it virtual. Future patches will reduce the confusion between the committed scroll
position and the one derived from layers.
- page/scrolling/ScrollingTreeFrameScrollingNode.cpp:
(WebCore::ScrollingTreeFrameScrollingNode::scrollBy):
(WebCore::ScrollingTreeFrameScrollingNode::scrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNode::setScrollPosition):
- page/scrolling/ScrollingTreeFrameScrollingNode.h:
- page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::scrollPosition):
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::setScrollPosition): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollBy): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollByWithoutContentEdgeConstraints): Deleted.
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollBy):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollBy): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollByWithoutContentEdgeConstraints): Deleted.
- 1:40 PM Changeset in webkit [169311] by
-
- 13 edits in trunk/LayoutTests
Scrolling tests should not try to dump pixels
https://bugs.webkit.org/show_bug.cgi?id=133245
Reviewed by Tim Horton.
dumpAsText(true) -> dumpAsText().
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:
- 12:30 PM Changeset in webkit [169310] by
-
- 23 edits in trunk/Source
AX: fix coordinate mapping for iOS accessibility
https://bugs.webkit.org/show_bug.cgi?id=133188
Reviewed by Sam Weinig.
Source/WebCore:
Make WebCore aware of the accessibility point/rect conversion methods.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
(-[WebAccessibilityObjectWrapper convertRectToScreenSpace:]):
- loader/EmptyClients.h:
- page/Chrome.cpp:
(WebCore::Chrome::accessibilityScreenToRootView):
(WebCore::Chrome::rootViewToAccessibilityScreen):
- page/Chrome.h:
- page/ChromeClient.h:
- platform/HostWindow.h:
Source/WebKit/mac:
- WebCoreSupport/WebChromeClient.h:
- WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::accessibilityScreenToRootView):
(WebChromeClient::rootViewToAccessibilityScreen):
Source/WebKit2:
Add in accessibility conversion methods that will check if the methods are present
(if accessibility is not on, they won't be)
and use those to convert points into the right coordinate space that VoiceOver is expecting.
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::accessibilityScreenToRootView):
(WebKit::WebPageProxy::rootViewToAccessibilityScreen):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::accessibilityScreenToRootView):
(WebKit::PageClientImpl::rootViewToAccessibilityScreen):
- UIProcess/mac/PageClientImpl.h:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::accessibilityScreenToRootView):
(WebKit::WebChromeClient::rootViewToAccessibilityScreen):
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
(-[WKAccessibilityWebPageObject accessibilityHitTest:]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::accessibilityScreenToRootView):
(WebKit::WebPage::rootViewToAccessibilityScreen):
- WebProcess/WebPage/WebPage.h:
- 7:50 AM Changeset in webkit [169309] by
-
- 4 edits2 adds in trunk
Subpixel rendering: Non-compositing transforms with subpixel coordinates paint to wrong position.
https://bugs.webkit.org/show_bug.cgi?id=133184
<rdar://problem/16745606>
Reviewed by Simon Fraser.
Snapping relative negative coordinate values should produce the same position as if they were
positive absolute coordinates.
When a child box gets positioned off of its containers towards top/left, its relative coordinates
become negative. Pixel snapping those negative values should produce the same
final painting position as if the child box was fixed positioned with positive coordinates.
Since halfway values always round away from zero, negative and positive halfway values
produce opposite rounding direction.
This patch ensures that negative halfway values round to the direction as if they were positive.
Source/WebCore:
Test: fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction.html
- platform/LayoutUnit.h:
(WebCore::roundToDevicePixel):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerByApplyingTransform):
LayoutTests:
- fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction-expected.html: Added.
- fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction.html: Added.
- 4:49 AM Changeset in webkit [169308] by
-
- 3 edits in trunk/LayoutTests
Update GTK references for some tests after bug 130322.
https://bugs.webkit.org/show_bug.cgi?id=130322
Unreviewed gardening.
- platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt:
- platform/gtk/mathml/presentation/mo-stretch-expected.txt:
- 4:30 AM Changeset in webkit [169307] by
-
- 2 edits in trunk/LayoutTests
Mark some opentype MATH tests failing due to bad references.
https://bugs.webkit.org/show_bug.cgi?id=130322
Unreviewed gardening.
- platform/mac/TestExpectations:
- 12:17 AM Changeset in webkit [169306] by
-
- 5 edits in trunk/Source/WebKit2
REGRESSION(r165841): Messages sent before the child process is launched are never sent after r165841
https://bugs.webkit.org/show_bug.cgi?id=131675
Reviewed by Anders Carlsson.
Since r165841 the connection is opened after the pending messages
are sent, because connectionWillOpen might send messages that we
want to happen after the ones already pending. The problem is that
Connection::canSendOutgoingMessages() returns false when
connection hasn't been opened. We should ensure no messages are
sent by connectionWillOpen.
- Shared/ChildProcessProxy.cpp:
(WebKit::ChildProcessProxy::didFinishLaunching): Open the
connection before sending pending messages.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::connectionWillOpen): Do not call
VisitedLinkProvider::addProcess() here because it tries to send a
message to the web process, but the connection hasn't be opened yet.
(WebKit::WebPageProxy::processDidFinishLaunching): Call
VisitedLinkProvider::addProcess() here instead.
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didFinishLaunching): Call
WebPageProxy::processDidFinishLaunching() for every web page.
May 23, 2014:
- 9:56 PM Changeset in webkit [169305] by
-
- 10 edits30 adds in trunk
Use size variants and glyph assembly from the MATH data.
https://bugs.webkit.org/show_bug.cgi?id=130322
Reviewed by Chris Fleizach.
Source/WebCore:
This patch modifies the RenderMathMLOperator code to use the MATH table
when one is provided in the current font on the <math> tag. More
precisely, the MathVariants table is used to draw a size variant or
a glyph assembly. The displaystyle attribute is not supported yet, so
for now large operators are always assumed to be in display style. The
MATH support does not work well with all platforms+fonts, so at the
moment the default font-family on the <math> is not changed.
Tests: mathml/opentype/large-operators-LatinModern.html
mathml/opentype/opentype-stretchy.html
mathml/opentype/vertical-LatinModern.html
- css/mathml.css: We only specify the default font-family on the math root, so that people can easily style the mathematics.
For now, old fonts without the MATH table are still used as the default.
(math):
(math, mfenced > *): Deleted.
(mo, mfenced): Deleted.
- platform/graphics/SimpleFontData.cpp: don't return the math data if the font is loading.
(WebCore::SimpleFontData::mathData):
- platform/graphics/opentype/OpenTypeMathData.cpp: update #ifdef so that disabling ENABLE_OPENTYPE_MATH won't lead to errors with unused parameters.
(WebCore::OpenTypeMathData::OpenTypeMathData):
(WebCore::OpenTypeMathData::getMathConstant):
(WebCore::OpenTypeMathData::getItalicCorrection):
(WebCore::OpenTypeMathData::getMathVariants):
- rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::boundsForGlyph):
(WebCore::RenderMathMLOperator::heightForGlyph):
(WebCore::RenderMathMLOperator::advanceForGlyph):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): We handle preferred width of size variants.
(WebCore::RenderMathMLOperator::shouldAllowStretching): This function now only returns whether the operator will stretch and no longer has side effect.
(WebCore::RenderMathMLOperator::getGlyphAssemblyFallBack): We add a function to convert from the MathVariant table data to the format supported by RenderMathMLOperator.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): We add a function to get the glyph that will be used for large operators in display style.
(WebCore::RenderMathMLOperator::findStretchyData): We make this function handle size variants.
(WebCore::RenderMathMLOperator::updateStyle): We handle size variants.
(WebCore::RenderMathMLOperator::paint): We handle size variants.
- rendering/mathml/RenderMathMLOperator.h:
LayoutTests:
This adds some pixel tests for large operators and vertical stretchy operators.
- mathml/opentype/LICENSE-LatinModern.txt: Added.
- mathml/opentype/large-operators-LatinModern.html: Added.
- mathml/opentype/latinmodern-math.woff: Added.
- mathml/opentype/opentype-stretchy.html: Added.
- mathml/opentype/stretchy.woff: Added.
- mathml/opentype/vertical-LatinModern.html: Added.
- platform/efl/mathml/opentype/large-operators-LatinModern-expected.png: Added.
- platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
- platform/efl/mathml/opentype/opentype-stretchy-expected.png: Added.
- platform/efl/mathml/opentype/opentype-stretchy-expected.txt: Added.
- platform/efl/mathml/opentype/vertical-LatinModern-expected.png: Added.
- platform/efl/mathml/opentype/vertical-LatinModern-expected.txt: Added.
- platform/gtk/mathml/opentype/large-operators-LatinModern-expected.png: Added.
- platform/gtk/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
- platform/gtk/mathml/opentype/opentype-stretchy-expected.png: Added.
- platform/gtk/mathml/opentype/opentype-stretchy-expected.txt: Added.
- platform/gtk/mathml/opentype/vertical-LatinModern-expected.png: Added.
- platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt: Added.
- platform/gtk/mathml/presentation/mo-stretch-expected.png: update reference due to change in mathml.css
- platform/gtk/mathml/presentation/mo-stretch-expected.txt: ditto
- platform/mac/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
- platform/mac/mathml/opentype/opentype-stretchy-expected.txt: Added.
- platform/mac/mathml/opentype/vertical-LatinModern-expected.txt: Added.
- platform/mac-wk2/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
- platform/mac-wk2/mathml/opentype/opentype-stretchy-expected.txt: Added.
- platform/mac-wk2/mathml/opentype/vertical-LatinModern-expected.txt: Added.
- platform/win/TestExpectations: Mark the OpenType MATH tests as failing
- 9:35 PM Changeset in webkit [169304] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION: Rubberbanding out jumps to top left corner on google.com
https://bugs.webkit.org/show_bug.cgi?id=133253
<rdar://problem/17025664>
Patch by Ian Henderson <ianh@apple.com> on 2014-05-23
Reviewed by Benjamin Poulain.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView scrollViewWillEndDragging:withVelocity:targetContentOffset:]):
Avoid deceleration during zooming to work around a UIKit bug.
- 9:31 PM Changeset in webkit [169303] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 9:25 PM Changeset in webkit [169302] by
-
- 4 edits in trunk/Source/WebKit2
[iOS][WK2] Avoid updating the view from the viewport configuration unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=133255
<rdar://problem/16890926>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-23
Reviewed by Simon Fraser.
All the updates were mostly harmless since they are pretty cheap, but they can be
very annoying for debugging.
This patch skips viewportUpdates in the trivial cases.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _setMinimumLayoutSizeOverrideForMinimalUI:]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mainFrameDidLayout):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::viewportPropertiesDidChange):
- 9:07 PM Changeset in webkit [169301] by
-
- 1 copy in tags/Safari-538.34.48
Create Safari-538.34.48 tag.
- 8:45 PM Changeset in webkit [169300] by
-
- 8 edits in trunk/Source/WebKit2
[iOS][WK2] The page scale factor randomly resets to initial scale when editing
https://bugs.webkit.org/show_bug.cgi?id=133244
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-23
Reviewed by Enrica Casucci.
We were never telling the WebProcess that zoom is used triggered. As a result, the ViewportConfiguration was free
to reset the scale whenever it felt like it. The fix is to call willStartUserTriggeredZoom before changing the scale.
This patch also split _willStartUserTriggeredScrollingOrZooming from willStartUserTriggeredZoom
and rename it to willStartPanOrPinchGesture. This is just a tiny cleanup since the only thing left in _willStartUserTriggeredScrollingOrZooming
was gesture related.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _zoomToFocusRect:WebCore::selectionRect:WebCore::fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]):
(-[WKWebView scrollViewWillBeginZooming:withView:]):
(-[WKWebView scrollViewWillBeginDragging:]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/ios/WKViewIOS.mm:
(-[WKView scrollViewWillBeginDragging:]):
- UIProcess/ios/WKContentView.h:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView willStartUserTriggeredZoom]):
(-[WKContentView willStartUserTriggeredScroll]): Deleted.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView willStartPanOrPinchGesture]):
(-[WKContentView _willStartUserTriggeredScrollingOrZooming]): Deleted.
- 7:17 PM Changeset in webkit [169299] by
-
- 22 edits9 adds in trunk/Source
REGRESSION (iOS WebKit2): requestAnimationFrame fires more than once between layer tree commits
https://bugs.webkit.org/show_bug.cgi?id=132794
<rdar://problem/16877909>
Reviewed by Simon Fraser.
Virtualize DisplayRefreshMonitor so that WebKit2 can implement its own DisplayRefreshMonitor for UI-side compositing views.
This allows the synchronization of requestAnimationFrame callbacks with UI-side compositing painting.
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
- page/ChromeClient.h:
(WebCore::ChromeClient::graphicsLayerFactory):
(WebCore::ChromeClient::createDisplayRefreshMonitor):
- platform/graphics/DisplayRefreshMonitorFactory.h: Added.
- platform/graphics/GraphicsLayerUpdater.cpp:
(WebCore::GraphicsLayerUpdater::createDisplayRefreshMonitor):
- platform/graphics/GraphicsLayerUpdater.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::createDisplayRefreshMonitor):
- rendering/RenderLayerCompositor.h:
Give the ChromeClient a chance to provide us with a custom DisplayRefreshMonitor.
If it does not, we'll fall back to making a DisplayRefreshMonitorMac or
DisplayRefreshMonitorIOS depending on the platform.
- dom/ScriptedAnimationController.cpp:
- dom/ScriptedAnimationController.h:
- platform/graphics/DisplayRefreshMonitor.cpp:
- platform/graphics/DisplayRefreshMonitor.h:
- platform/graphics/DisplayRefreshMonitorClient.cpp: Added.
- platform/graphics/DisplayRefreshMonitorClient.h: Added.
- platform/graphics/DisplayRefreshMonitorManager.cpp: Added.
- platform/graphics/DisplayRefreshMonitorManager.h: Added.
Split DisplayRefreshMonitor.cpp into one file per class.
Use references in a few places.
Remove some useless comments.
- platform/graphics/DisplayRefreshMonitor.cpp:
(WebCore::DisplayRefreshMonitor::displayDidRefresh):
Use takeAny() and remove a FIXME about it not existing.
- platform/graphics/DisplayRefreshMonitorClient.cpp: Added.
(WebCore::DisplayRefreshMonitorClient::fireDisplayRefreshIfNeeded):
Use an early return instead of having the whole function body in an if().
- platform/graphics/ios/DisplayRefreshMonitorIOS.h: Added.
- platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
- platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
- platform/graphics/mac/DisplayRefreshMonitorMac.h: Added.
Virtualize DisplayRefreshMonitorIOS and DisplayRefreshMonitorMac,
and move things specific to each of them out of DisplayRefreshMonitor itself.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createDisplayRefreshMonitor):
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::graphicsLayerFactory):
(WebKit::DrawingArea::createDisplayRefreshMonitor):
Plumb the DisplayRefreshMonitor request through to the DrawingArea.
RemoteLayerTreeDrawingArea will implement and return a RemoteLayerTreeDisplayRefreshMonitor.
- WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h: Added.
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::create):
- WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm: Added.
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
When requesting a display refresh callback, schedule a layer commit.
It may end up being empty, but will still call us back with a didUpdate,
upon which we'll fire the callback.
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::didUpdateLayers):
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::createDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDrawingArea::willDestroyDisplayRefreshMonitor):
Keep track of the set of DisplayRefreshMonitors.
(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Fire requestAnimationFrame callbacks once the UI process commits the new layer tree.
- 7:11 PM Changeset in webkit [169298] by
-
- 3 edits2 adds in trunk
CSS JIT: Apply backtracking optimization to adjacent backtracking
https://bugs.webkit.org/show_bug.cgi?id=132951
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-05-23
Reviewed by Benjamin Poulain.
Apply the backtracking optimization to the adjacent backtracking.
This optimization is already done for the descendant backtracking.
We apply this to the adjacent backtracking similarly.
Source/WebCore:
Test: fast/selectors/backtracking-adjacent-optimized.html
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::solveAdjacentBacktrackingActionForDirectAdjacent):
(WebCore::SelectorCompiler::solveBacktrackingAction):
(WebCore::SelectorCompiler::computeBacktrackingStartOffsetInChain):
(WebCore::SelectorCompiler::computeBacktrackingHeightFromDescendant):
(WebCore::SelectorCompiler::computeBacktrackingWidthFromIndirectAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::computeBacktrackingStartHeightFromDescendant): Deleted.
LayoutTests:
- fast/selectors/backtracking-adjacent-optimized-expected.txt: Added.
- fast/selectors/backtracking-adjacent-optimized.html: Added.
- 6:06 PM Changeset in webkit [169297] by
-
- 5 edits in trunk/Source/WebCore
Make CSS JIT run on ARM64.
https://bugs.webkit.org/show_bug.cgi?id=133156
Reviewed by Benjamin Poulain.
- cssjit/FunctionCall.h:
(WebCore::FunctionCall::saveAllocatedRegisters):
(WebCore::FunctionCall::restoreAllocatedRegisters):
Use StackAllocator's new push and pop functions to push and pop a vector instead of iterating it.
- cssjit/RegisterAllocator.h:
(WebCore::RegisterAllocator::reserveCalleeSavedRegisters):
(WebCore::RegisterAllocator::restoreCalleeSavedRegisters):
Return a vector of registers to allocate instead of doing the allocation to make the RegisterAllocator
not need to know about the StackAllocator and to use the new vector push and pop functions.
(WebCore::RegisterAllocator::~RegisterAllocator):
Store RegisterIDs instead of StackReferences to avoid needing to know about the stack.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
Removed the requirement for assert to be disabled to print disassembly when debugging css jit.
(WebCore::SelectorCompiler::SelectorCodeGenerator::generatePrologue):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateEpilogue):
Added to correctly push the link register and frame pointer.
This is required if the jit code calls a function on arm64 and helpful for debugging tools on x86_64.
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
Generate the prologue and epilogue which respectively push and pop
the link register, frame pointer, and callee saved registers if needed.
- cssjit/StackAllocator.h:
(WebCore::StackAllocator::push):
(WebCore::StackAllocator::pop):
Added new vector push and pop functions to use stp and ldb instructions on arm64.
- 5:29 PM Changeset in webkit [169296] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 5:23 PM Changeset in webkit [169295] by
-
- 10 edits in trunk/Source
Hide fullscreen immediately when switching tabs.
https://bugs.webkit.org/show_bug.cgi?id=133239
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-23
Reviewed by Eric Carlson.
Source/WebCore:
This change allows fullscreen to disappear immediately while still cleaning
up fullscreen normally.
- WebCore.exp.in:
- platform/ios/WebVideoFullscreenControllerAVKit.h:
renamed function to requestHideAndExitFullscreen
- platform/ios/WebVideoFullscreenControllerAVKit.mm:
renamed function to requestHideAndExitFullscreen
(-[WebVideoFullscreenController requestHideAndExitFullscreen]):
rename of requestExitFullscreen that also hides.
(-[WebVideoFullscreenController requestExitFullscreen]): Deleted.
- platform/ios/WebVideoFullscreenInterfaceAVKit.h: declare requestHideAndExitFullscreen()
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen):
this hides the window before requesting exitfullscreen from the model.
Source/WebKit/mac:
Renamed a function to better describe it's new functionality.
- WebView/WebView.mm:
(-[WebView viewDidMoveToWindow]):
now calls: requestHideAndExitFullscreen
Source/WebKit2:
Renamed a function to better describe it's new functionality.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::viewStateDidChange):
now calls: requestHideAndExitFullscreen
- 5:18 PM Changeset in webkit [169294] by
-
- 12 edits in trunk/Source/WebKit2
REGRESSION (WebKit2): Keyboard disappears/appears automatically between text boxes.
https://bugs.webkit.org/show_bug.cgi?id=133243
<rdar://problem/16761913>
Reviewed by Benjamin Poulain.
We need to ensure that when an element loses focus and another one gets it,
this is handled in one single message in the UI process to avoid seeing
the keyboard animating in and out.
This is accomplished by always postponing the blur notification until all events
have been processed.
If a new node is focused before the delayed blur notification is sent to the UI
process, the message we send includes both blur and focus notification. In this case,
the postponed blur notification is not sent.
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::startAssistingNode):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
(-[WKContentView _startAssistingNode:userIsInteracting:userObject:]): Deleted.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::startAssistingNode):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::elementDidFocus):
(WebKit::WebPage::elementDidBlur):
- 5:13 PM Changeset in webkit [169293] by
-
- 2 edits in trunk/Tools
REGRESSION(r169265): sh: line 0: cd: ../.vm
https://bugs.webkit.org/show_bug.cgi?id=133242
Rubber stamped by Geoffrey Garen.
Added missing shell escapes '\' required as part of previous fix.
- Scripts/run-jsc-stress-tests:
- 5:12 PM Changeset in webkit [169292] by
-
- 2 edits in trunk/Source/WebKit2
Remove an assertion.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadRequest):
- 4:59 PM Changeset in webkit [169291] by
-
- 1 copy in tags/Safari-538.34.47
New Tag.
- 4:52 PM Changeset in webkit [169290] by
-
- 8 edits2 adds in trunk/Source
[iOS] WKPDFView should have a page indicator
https://bugs.webkit.org/show_bug.cgi?id=133109
<rdar://problem/16383003>
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setHasCustomContentView:loadedMIMEType:WTF::]):
(-[WKWebView _setObscuredInsets:]):
Forward obscured insets changes to the custom content view.
(-[WKWebView _updateScrollViewBackground]):
If we have a custom content view, use its background instead of the
(likely nonexistent) page's when updaing the scroll view's background color.
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/Cocoa/WKWebViewContentProvider.h:
- UIProcess/Cocoa/WKWebViewContentProviderDelegate.h: Added.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setInsetForOverlaidAccessoryViews:]):
Add SPI for clients to inform us about potential overlaid accessory views
which should be taken into account e.g. for positioning the page indicator.
Add a view that sits fixed on top of the WKWebView, ignores interaction,
but provides the WKWebViewContentProvider a place to install views
that don't scroll along with the content.
- UIProcess/ios/WKPDFPageNumberIndicator.h: Added.
- UIProcess/ios/WKPDFPageNumberIndicator.mm: Added.
(-[WKPDFPageNumberIndicator initWithFrame:]):
(-[WKPDFPageNumberIndicator dealloc]):
(-[WKPDFPageNumberIndicator setCurrentPageNumber:]):
(-[WKPDFPageNumberIndicator setPageCount:]):
(-[WKPDFPageNumberIndicator show]):
(-[WKPDFPageNumberIndicator hide:]):
(-[WKPDFPageNumberIndicator moveToPoint:animated:]):
(-[WKPDFPageNumberIndicator sizeThatFits:]):
(-[WKPDFPageNumberIndicator _updateLabel]):
(-[WKPDFPageNumberIndicator _makeRoundedCorners]):
Add a page number indicator.
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView dealloc]):
(-[WKPDFView web_setScrollView:]):
(-[WKPDFView _revalidateViews]):
(-[WKPDFView _offsetForPageNumberIndicator]):
(-[WKPDFView _updatePageNumberIndicator]):
(-[WKPDFView web_setObscuredInsets:]):
(-[WKPDFView web_setInsetForOverlaidAccessoryViews:]):
(-[WKPDFView web_setFixedOverlayView:]):
(-[WKPDFView _computePageAndDocumentFrames]):
Update the page number indicator when the topmost visible page changes.
Move the page number indicator around when the obscured insets change.
- WebKit2.xcodeproj/project.pbxproj:
- English.lproj/Localizable.strings:
- 4:32 PM Changeset in webkit [169289] by
-
- 2 edits in trunk/Tools
Revert the erroneous change committed in r169286.
- Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._run_with_driver):
- 4:25 PM Changeset in webkit [169288] by
-
- 2 edits in trunk/Source/WebKit2
Fix test failures on the bot.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(websiteDataDirectoryURL):
If we have no bundle identifier, use the process name.
- 3:37 PM Changeset in webkit [169287] by
-
- 1 edit1 add in trunk/PerformanceTests
Performance testing, diamond-square terrain generation + canvas
https://bugs.webkit.org/show_bug.cgi?id=133054
Reviewed by Ryosuke Niwa.
This test was written by Hunter Loftis. It originally appeared on his
blog @ <http://www.playfuljs.com/realistic-terrain-in-130-lines/>.
I did a bit of editing for format and benchmark suitability.
- Canvas/terrain.html: Added.
- 3:37 PM Changeset in webkit [169286] by
-
- 2 edits in trunk/Tools
run-perf-tests should ignore whitespace lines when snarfing test output
https://bugs.webkit.org/show_bug.cgi?id=133238
Reviewed by Ryosuke Niwa.
Required for PerformanceTests/Canvas/terrain.html.
- Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._run_with_driver):
(PerfTest):
- 3:32 PM Changeset in webkit [169285] by
-
- 4 edits in trunk/Source/JavaScriptCore
Remove operationCallGetter
Rubber stamped by Filip Pizlo.
Nobody calls this function.
- JavaScriptCore.order:
- jit/JITOperations.cpp:
- jit/JITOperations.h:
- 3:14 PM Changeset in webkit [169284] by
-
- 5 edits in trunk/Source/JavaScriptCore
Templatize GC's destructor invocation for dtor type.
<https://webkit.org/b/133231>
Get rid of a branch in callDestructor() by templatizing it for
the DestructorType. Removed JSCell::methodTableForDestruction()
since this was the only call site and it was jumping through
a bunch of unnecessary hoops.
Reviewed by Geoffrey Garen.
- heap/MarkedBlock.cpp:
(JSC::MarkedBlock::callDestructor):
(JSC::MarkedBlock::specializedSweep):
- heap/MarkedBlock.h:
- runtime/JSCell.h:
- runtime/JSCellInlines.h:
(JSC::JSCell::methodTableForDestruction): Deleted.
- 3:13 PM Changeset in webkit [169283] by
-
- 3 edits in trunk/Source/JavaScriptCore
Support inline caching of RegExpMatchesArray.length
<https://webkit.org/b/133234>
Give RegExpMatchesArray.length the same treatment as JSArray in
repatch so we don't have to go out of line on every access.
~13% speed-up on Octane/regexp.
Reviewed by Geoffrey Garen.
- jit/Repatch.cpp:
(JSC::tryCacheGetByID):
- runtime/RegExpMatchesArray.h:
(JSC::isRegExpMatchesArray):
- 2:49 PM Changeset in webkit [169282] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (iOS WebKit2): Autocorrection is not accurate when changing selection.
https://bugs.webkit.org/show_bug.cgi?id=133237
<rdar://problem/16655776>
Reviewed by Ryosuke Niwa.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView beginSelectionChange]):
(-[WKContentView endSelectionChange]):
When the selection is changed with a gesture in an editable element,
we must notify the keyboard to make sure the autocorrection engine
updates its typing context. WKContentView must implement
beginSelectionChange and endSelectionChange to call into
the keyboard layer.
- 2:32 PM Changeset in webkit [169281] by
-
- 4 edits in trunk/Source/WebKit2
[iOS] WK2: Provide implementation for windowFrame
https://bugs.webkit.org/show_bug.cgi?id=133205
<rdar://problem/16894890>
Reviewed by Benjamin Poulain.
- UIProcess/Cocoa/UIDelegate.h:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::UIClient::windowFrame): Added.
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::convertToUserSpace): Added.
- 2:32 PM Changeset in webkit [169280] by
-
- 2 edits in trunk/Source/WebCore
Remove invalid ASSERT in wordRangeForPosition.
https://bugs.webkit.org/show_bug.cgi?id=133232
Reviewed by Ryosuke Niwa.
In WK2 for iOS this function is called on every selection change.
The selection could be set by Javascript in an element that is not visible.
In that case we won't be able to create a VisiblePosition therefore wordRangeForPosition
should not ASSERT that the VisiblePosition is not null, but rather
perform an early return if it is null.
- editing/VisibleUnits.cpp:
(WebCore::wordRangeFromPosition):
- 1:32 PM Changeset in webkit [169279] by
-
- 3 edits5 copies2 adds in branches/safari-537.77-branch
Merged r167832. <rdar://problem/16975563>
- 1:32 PM Changeset in webkit [169278] by
-
- 3 edits in trunk/LayoutTests
Rebaseline two tests affected by r169229.
- platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
- platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
- 1:31 PM Changeset in webkit [169277] by
-
- 2 edits in trunk/Source/WebCore
[CSS Grid Layout] Use gridRowCount() and gridColumnCount() when possible
https://bugs.webkit.org/show_bug.cgi?id=133213
Reviewed by Sergio Villar Senin.
Use gridRowCount() and gridColumnCount() instead of m_grid.size() and
m_grid[0].size() to make the code more descriptive and easier to
understand.
No new tests (No change in behavior).
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::growGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
- 12:51 PM Changeset in webkit [169276] by
-
- 4 edits in trunk/Source/WebCore
REGRESSION (r153917): Chart for the Category Explorer within Quicken Essentials
does not draw until you force a redraw
https://bugs.webkit.org/show_bug.cgi?id=133228
<rdar://problem/15221231>
Reviewed by Simon Fraser.
- platform/RuntimeApplicationChecks.cpp: (WebCore::applicationIsQuickenEssentials):
- platform/RuntimeApplicationChecks.h:
Added a check for Quicken Essentials.
- platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Don't do an early return
for Quicken Essentials, it depends on drawing to update its layer.
- 12:24 PM Changeset in webkit [169275] by
-
- 15 edits in branches/safari-537.77-branch/Source
Rollout 169219. <rdar://problem/16975536>
- 12:10 PM Changeset in webkit [169274] by
-
- 1 edit in branches/safari-537.77-branch/Source/WebCore/platform/graphics/filters/FilterOperation.h
Build fix after rdar://problem/16975484.
- 12:01 PM Changeset in webkit [169273] by
-
- 5 edits in trunk
REGRESSION(r169105): fast/regions/cssom/region-range-for-box-crash.html is more crashy than before
https://bugs.webkit.org/show_bug.cgi?id=133124
Reviewed by David Hyatt.
Source/WebCore:
When adjusting the end points of a subtree selection in the case of a document
with named flows, we have to make sure that we pass the computed end
points to the visible selection algorithm only if the end points are
part of the same subtree, otherwise assume a selection clear behavior.
The test fast/regions/cssom/region-range-for-box-crash.html is used to
test this behavior.
- rendering/SelectionSubtreeRoot.cpp:
(WebCore::SelectionSubtreeRoot::adjustForVisibleSelection):
(WebCore::SelectionSubtreeRoot::selectionStartEndPositions): Moved to header file.
- rendering/SelectionSubtreeRoot.h:
(WebCore::SelectionSubtreeRoot::selectionStartEndPositions):
LayoutTests:
Unskip the test file that used to crash.
- 12:00 PM Changeset in webkit [169272] by
-
- 3 edits in branches/safari-537.77-branch/Source/WebCore
Merged r165862. <rdar://problem/16975511>
- 11:59 AM Changeset in webkit [169271] by
-
- 2 edits in trunk/Source/WebKit2
Use a per app directory structure for website data
https://bugs.webkit.org/show_bug.cgi?id=133125
<rdar://problem/16830143>
Reviewed by Dan Bernstein, Sam Weinig and Tim Horton.
Put website data in subdirectories of ~/Library/WebKit/<bundle ID>/WebsiteData.
We use "LocalStorage", "WebSQL", and "IndexedDB" subdirectories.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(websiteDataDirectoryURL):
(-[WKProcessPool _initWithConfiguration:]):
- 11:36 AM Changeset in webkit [169270] by
-
- 5 edits in trunk/LayoutTests
Rebaseline some tests after r169260
- fast/dom/Geolocation/enabled-expected.txt:
- fast/dom/Geolocation/script-tests/enabled.js:
- js/dom/delete-syntax-expected.txt:
- js/dom/script-tests/delete-syntax.js:
- 11:36 AM Changeset in webkit [169269] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 11:33 AM Changeset in webkit [169268] by
-
- 2 edits in branches/safari-537.77-branch/LayoutTests
Merged r161008. <rdar://problem/16975471>
- 11:29 AM Changeset in webkit [169267] by
-
- 2 edits in branches/safari-537.77-branch/LayoutTests
Merged r160896. <rdar://problem/16975471>
- 11:22 AM Changeset in webkit [169266] by
-
- 9 edits2 copies in branches/safari-537.77-branch
Merged r160847. <rdar://problem/16975471>
- 11:05 AM Changeset in webkit [169265] by
-
- 2 edits in trunk/Tools
REGRESSION (r169241) Crash running run-jsc-stress-tests on EFL ARM
https://bugs.webkit.org/show_bug.cgi?id=133223
Reviewed by Geoffrey Garen.
Change runAndMonitorTestRunnerCommand() to convert the *cmd argument to a
string before calling IO.popen() to work with older versions of ruby.
Changed the remote path in runShellTestRunner to quote the command
string we want to run via ssh so that it will work correctly with array
to string conversion needed for popen.
- Scripts/run-jsc-stress-tests:
- 11:02 AM Changeset in webkit [169264] by
-
- 2 edits in trunk/Source/WebCore
reset m_havePreparedToPlay when changing media engines.
https://bugs.webkit.org/show_bug.cgi?id=133199
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-23
Reviewed by Eric Carlson.
If a play request comes in before the media player is created, m_havePreparedToPlay
is set to true. But when the player is created, this prevents the new player from
getting the prepare call.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): set m_havePreparedToPlay false.
- 10:52 AM Changeset in webkit [169263] by
-
- 2 edits in trunk/LayoutTests
Unreviewed. Skip some snapshotting tests failing after r169173.
https://bugs.webkit.org/show_bug.cgi?id=133227.
- platform/mac-wk2/TestExpectations:
- 10:22 AM Changeset in webkit [169262] by
-
- 5 edits in trunk/LayoutTests
Unreviewed EFL gardening
- platform/efl/TestExpectations: Add test expectation for tests faling after r167840.
- platform/efl/fast/borders/border-antialiasing-expected.png: Rebaseline after r168046.
- platform/efl/fast/borders/border-antialiasing-expected.txt: Ditto.
- platform/efl/fast/forms/fieldset-align-expected.txt: Rebaseline after r168575.
- 10:11 AM Changeset in webkit [169261] by
-
- 2 edits in trunk/Tools
Remove 'css-shaders' option from the build-webkit
https://bugs.webkit.org/show_bug.cgi?id=133212
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-23
Reviewed by Daniel Bates.
Original CSS shaders removed in r162644.
- Scripts/webkitperl/FeatureList.pm:
- 10:08 AM Changeset in webkit [169260] by
-
- 2 edits in trunk/Source/WebCore
Navigator object needs to have properties directly on the instance object
https://bugs.webkit.org/show_bug.cgi?id=133221
Reviewed by Mark Lam.
Flag the Navigator object as requiring properties to be on the instance
as there were a few compatibility issues when on the prototype.
- bindings/scripts/CodeGeneratorJS.pm:
(InterfaceRequiresAttributesOnInstance):
- 9:42 AM Changeset in webkit [169259] by
-
- 2 edits in trunk/Source/WebKit2
[Cocoa] WKNavigationResponsePrivate.h is internal
https://bugs.webkit.org/show_bug.cgi?id=133218
Reviewed by Dean Jackson.
- WebKit2.xcodeproj/project.pbxproj: Promote WKNavigationResponsePrivate.h to private.
- 9:13 AM Changeset in webkit [169258] by
-
- 3 edits in trunk/Source/WebCore
Switch CSSGradientValue to use more references
https://bugs.webkit.org/show_bug.cgi?id=133206
Reviewed by Andreas Kling.
Switch from pointers to references in various places.
- css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::image):
(WebCore::CSSGradientValue::addStops):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::computeEndPoint):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::resolveRadius):
(WebCore::CSSRadialGradientValue::createGradient):
- css/CSSGradientValue.h:
- 7:27 AM Changeset in webkit [169257] by
-
- 5 edits3 adds in trunk
Subpixel rendering: Make webkit-box-shadow painting subpixel aware.
https://bugs.webkit.org/show_bug.cgi?id=133201
<rdar://problem/16072830>
Reviewed by Simon Fraser.
This patch enables webkit-box-shadow to be painted on a subpixel position. However, we
still truncate -webkit-box-shadow property values. Tracked here: http://webkit.org/b/133202
Source/WebCore:
Test: fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position.html
- platform/graphics/FloatRoundedRect.cpp:
(WebCore::FloatRoundedRect::inflateWithRadii): same as in from RoundedRect.
(WebCore::FloatRoundedRect::adjustRadii): same as in from RoundedRect.
- platform/graphics/FloatRoundedRect.h:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintBoxShadow):
LayoutTests:
Currently not ref-testable.
- fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position.html: Added.
- platform/mac/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.png: Added.
- platform/mac/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.txt: Added.
- 3:29 AM Changeset in webkit [169256] by
-
- 2 edits in trunk/Tools
[GTK] GObject DOM bindings API break test should fail in the bots when the command fails to run
https://bugs.webkit.org/show_bug.cgi?id=133209
Reviewed by Sergio Villar Senin.
Return FAILURE when the command failed to run.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunGtkWebKitGObjectDOMBindingsAPIBreakTests.evaluateCommand):
- 2:57 AM Changeset in webkit [169255] by
-
- 8 edits3 copies5 moves7 adds1 delete in trunk/Source/WebKit2
[UNIX] Reorganize and cleanup main functions of GTK and EFL ports
https://bugs.webkit.org/show_bug.cgi?id=131024
Reviewed by Gustavo Noronha Silva.
Move main function implementation files to <process-dir>/EntryPoint/unix/<ProcessName>Main.cpp
files that are now shared by GTK and EFL ports. These files call a
main method that wraps a new method ChildProcessMain that contains
the common code and uses a helper class for the platform specific
code. GTK+ and EFL ports implement that helper class for every process type.
- NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp: Renamed from Source/WebKit2/efl/MainEfl.cpp.
(main):
- NetworkProcess/efl/NetworkProcessMainEfl.cpp: Renamed from Source/WebKit2/unix/NetworkMainUnix.cpp.
(WebKit::NetworkProcessMainUnix):
- NetworkProcess/gtk/NetworkProcessMainGtk.cpp: Renamed from Source/WebKit2/NetworkProcess/unix/NetworkProcessMainUnix.cpp.
(WebKit::NetworkProcessMainUnix):
- NetworkProcess/unix/NetworkProcessMainUnix.h:
- PlatformEfl.cmake:
- PlatformGTK.cmake:
- PluginProcess/EntryPoint/unix/PluginProcessMain.cpp: Renamed from Source/WebKit2/unix/PluginMainUnix.cpp.
(main):
- PluginProcess/unix/PluginProcessMainUnix.cpp:
(WebKit::webkitXError):
(WebKit::PluginProcessMainUnix):
- PluginProcess/unix/PluginProcessMainUnix.h:
- Shared/unix/ChildProcessMain.cpp: Copied from Source/WebKit2/WebProcess/efl/WebProcessMainEfl.h.
(WebKit::ChildProcessMainBase::parseCommandLine):
- Shared/unix/ChildProcessMain.h: Renamed from Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.h.
(WebKit::ChildProcessMainBase::platformInitialize):
(WebKit::ChildProcessMainBase::platformFinalize):
(WebKit::ChildProcessMainBase::initializationParameters):
(WebKit::ChildProcessMain):
- WebProcess/EntryPoint/unix/WebProcessMain.cpp: Renamed from Source/WebKit2/gtk/MainGtk.cpp.
(main):
- WebProcess/efl/WebProcessMainEfl.cpp:
(WebKit::WebProcessMainUnix):
(dummyExtensionErrorHandler): Deleted.
- WebProcess/gtk/WebProcessMainGtk.cpp:
(WebKit::WebProcessMainUnix):
- WebProcess/unix/WebProcessMainUnix.h: Renamed from Source/WebKit2/WebProcess/efl/WebProcessMainEfl.h.
- 2:09 AM Changeset in webkit [169254] by
-
- 2 edits in trunk/Tools
[GTK] Install libharfbuzz-dev in Tools/gtk/install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=133210
Reviewed by Carlos Garcia Campos.
- gtk/install-dependencies:
- 12:02 AM Changeset in webkit [169253] by
-
- 2 edits in trunk/Source/WebKit
Try to fix windows build.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
May 22, 2014:
- 11:45 PM Changeset in webkit [169252] by
-
- 2 edits in trunk/Source/WTF
Add the partial specialization for VectorTraits<std::unique_ptr<P>>
https://bugs.webkit.org/show_bug.cgi?id=133083
Reviewed by Andreas Kling.
- wtf/VectorTraits.h: Like for RefPtr<P>, OwnPtr<P> and Ref<P>, the partial
specialization for VectorTraits<std::unique_ptr<P>> should exist and should
inherit from SimpleClassVector.
- 11:44 PM Changeset in webkit [169251] by
-
- 2 edits in trunk/Source/WebKit2
Have the decoded element in VectorArgumentCoder::decode() moved into Vector::append()
https://bugs.webkit.org/show_bug.cgi?id=133082
Reviewed by Andreas Kling.
- Platform/IPC/ArgumentCoders.h: Move the decoded element into the Vector::append() call.
This enforces a move instead of a copy if the decoded element's type is move-constructible.
- 11:43 PM Changeset in webkit [169250] by
-
- 2 edits in trunk/Source/WebKit2
Move the passed-in Vector<Attachment> in MessageDecoder constructor down into ArgumentDecoder
https://bugs.webkit.org/show_bug.cgi?id=133080
Reviewed by Andreas Kling.
- Platform/IPC/MessageDecoder.cpp:
(IPC::MessageDecoder::MessageDecoder): The Vector<Attachment> object was passed in by value.
Move it into the ArgumentDecoder constructor as it is not used elsewhere in this constructor
and produces a copy otherwise.
- 11:36 PM Changeset in webkit [169249] by
-
- 2 edits in trunk/Source/WebCore
[Curl] Crash when exceeding maximum cache limit.
https://bugs.webkit.org/show_bug.cgi?id=133185
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-05-22
Reviewed by Brent Fulgham.
When the maximum cache limit is exceeded, I get a crash.
This happens when deleting cache entries, because a reference to the url string object in the LRU list
is used as a parameter to invalidateCacheEntry(), when called from makeRoomForNewEntry().
When the string is removed from the LRU list in makeRoomForNewEntry(), the string is deleted.
Next, the string is accessed again to remove the url from the index, and we crash.
This can be fixed by removing the string from the LRU list after it is removed from the index.
Fixing the crash also revealed an infinite loop problem.
If the url for some reason only exist in the LRU list, and not in the index,
we will inifitely loop in makeRoomForNewEntry(), trying to remove this url from the cache, but never succeeding.
This can be fixed by removing the url from the LRU list, also when it's not in the index.
- platform/network/curl/CurlCacheManager.cpp:
(WebCore::CurlCacheManager::makeRoomForNewEntry): Avoid infinite loop by checking if there are more cache entries to remove.
(WebCore::CurlCacheManager::invalidateCacheEntry): Avoid crash and infinite loop by removing url from LRU list last.
- 10:18 PM Changeset in webkit [169248] by
-
- 4 edits2 adds in trunk
Make viewport units work in CSS gradients
https://bugs.webkit.org/show_bug.cgi?id=133204
<rdar://problem/17012259>
Source/WebCore:
Reviewed by Tim Horton.
Make viewport percentage lengths work in gradients.
Test: fast/gradients/viewport-units-gradient.html
- css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::addStops):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::createGradient):
- css/CSSGradientValue.h:
LayoutTests:
Reviewed by Tim Horton.
Make viewport percentage lengths work in gradients.
- fast/gradients/viewport-units-gradient-expected.html: Added.
- fast/gradients/viewport-units-gradient.html: Added.
- 9:34 PM Changeset in webkit [169247] by
-
- 2 edits in trunk/Tools
Add Yusuke Suzuki to the list of contributors (for real)
Wrong section...
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-22
- Scripts/webkitpy/common/config/contributors.json:
- 9:30 PM Changeset in webkit [169246] by
-
- 2 edits in trunk/Tools
Add Yusuke Suzuki to the list of contributors
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-22
- Scripts/webkitpy/common/config/contributors.json:
- 9:13 PM Changeset in webkit [169245] by
-
- 27 edits in trunk/Source
[iOS][WK2] Add support for minimal-ui viewports
https://bugs.webkit.org/show_bug.cgi?id=133162
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-22
Reviewed by Simon Fraser.
Source/WebCore:
Add support for minimal-ui directly into the Viewport configuration.
ViewportConfiguration knows about two kinds of layout size in scrollview coordinates:
-normal size
-minimal ui size.
Initially, the page is initialized with resetMinimalUI() and starts with a normal layout.
At any time before the main resource is loaded, the Web page can update its viewport meta tag
to include minimal-ui. The viewport configuration is updated immediately to reflect the minimal-ui
layout size. Any layout after that takes minimal-ui into account.
- WebCore.exp.in:
- css/LengthFunctions.cpp:
(WebCore::minimumValueForLength):
(WebCore::floatValueForLength):
- css/StyleResolver.cpp:
(WebCore::StyleResolver::viewportPercentageValue):
- dom/ViewportArguments.h:
(WebCore::ViewportArguments::operator==):
- page/FrameView.cpp:
(WebCore::FrameView::setViewportSizeForCSSViewportUnits):
(WebCore::FrameView::viewportSizeForCSSViewportUnits):
(WebCore::FrameView::setViewportSize): Deleted.
(WebCore::FrameView::viewportSize): Deleted.
- page/FrameView.h:
- page/ViewportConfiguration.cpp:
(WebCore::ViewportConfiguration::ViewportConfiguration):
(WebCore::ViewportConfiguration::setMinimumLayoutSize):
(WebCore::ViewportConfiguration::setMinimumLayoutSizeForMinimalUI):
(WebCore::ViewportConfiguration::activeMinimumLayoutSizeInScrollViewCoordinates):
(WebCore::ViewportConfiguration::resetMinimalUI):
(WebCore::ViewportConfiguration::pageWillRenderFirstFrame):
(WebCore::ViewportConfiguration::initialScale):
(WebCore::ViewportConfiguration::minimumScale):
(WebCore::ViewportConfiguration::updateConfiguration):
(WebCore::ViewportConfiguration::layoutWidth):
(WebCore::ViewportConfiguration::layoutHeight):
(WebCore::ViewportConfiguration::description):
- page/ViewportConfiguration.h:
(WebCore::ViewportConfiguration::minimumLayoutSizeForMinimalUI):
(WebCore::ViewportConfiguration::usesMinimalUI):
- rendering/RenderView.cpp:
(WebCore::RenderView::viewportSizeForCSSViewportUnits):
(WebCore::RenderView::viewportSize): Deleted.
- rendering/RenderView.h:
Source/WebKit2:
In the WebKit2 layers, we have two parts to minimal-ui.
-In WebPage, we need to get the values from the UIProcess and setup the ViewportConfiguration.
Another part is freezing the state on page load.
-In the UIProcess, we need to get the right information for layout and styling, and we need to tell
the UI clients about minimal-ui changes.
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setUsesMinimalUI:]):
(-[WKWebView _usesMinimalUI]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _minimumLayoutSizeOverride]):
(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _minimumLayoutSizeOverrideForMinimalUI]):
(-[WKWebView _setMinimumLayoutSizeOverrideForMinimalUI:]):
(-[WKWebView _largestUnobscuredSizeOverride]):
(-[WKWebView _setMaximumUnobscuredSizeOverride:]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(setViewportConfigurationMinimumLayoutSize): Deleted.
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::setUsesMinimalUI):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::setViewportConfigurationMinimumLayoutSizeForMinimalUI):
(WebKit::WebPageProxy::setMaximumUnobscuredSize):
(WebKit::WebPageProxy::setUsesMinimalUI):
(WebKit::WebPageProxy::setMinimumLayoutSizeForMinimalUI): Deleted.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::didCommitLoad):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::setViewportConfigurationMinimumLayoutSizeForMinimalUI):
(WebKit::WebPage::setMaximumUnobscuredSize):
(WebKit::WebPage::willFlushLayers):
(WebKit::WebPage::dynamicViewportSizeUpdate):
(WebKit::WebPage::viewportConfigurationChanged):
(WebKit::WebPage::updateViewportSizeForCSSViewportUnits):
(WebKit::WebPage::setMinimumLayoutSizeForMinimalUI): Deleted.
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
- 9:06 PM Changeset in webkit [169244] by
-
- 4 edits2 deletes in trunk
Can't type in status in facebook.com on iOS Safari because keyboard disappears
https://bugs.webkit.org/show_bug.cgi?id=133196
Reviewed by Geoffrey Garen.
Source/WebCore:
Fixed the bug by rolling out r156252.
When the user taps on the status on facebook.com, the page focuses a textarea,
which is then made momentarily invisible by setting display:none.
The page then removes display:none later and expects the textarea to be still focused.
With r156252, the focus is removed after the page sets display:none and the keyboard disappears.
Since the focus is never reset on the textarea, the user can never type in anything.
The specification may need to change here given that this (rather odd) behavior/expectation exists
on one of the most popular websites on the Web.
- dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::recalcStyle):
(WebCore::Document::updateLayout):
(WebCore::Document::resetHiddenFocusElementSoon): Deleted.
(WebCore::Document::resetHiddenFocusElementTimer): Deleted.
- dom/Document.h:
LayoutTests:
Removed the test added by r156252.
- fast/dom/HTMLDocument/active-element-gets-unfocusable-expected.txt: Removed.
- fast/dom/HTMLDocument/active-element-gets-unfocusable.html: Removed.
- 8:59 PM Changeset in webkit [169243] by
-
- 9 edits in trunk
http/tests/security/xss-DENIED-xsl-document-redirect.xml fails with NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=132523
Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-05-22
Reviewed by Alexey Proskuryakov.
Source/WebCore:
We should not manufacture a response in the event of an error during a
synchronous XHR. In addition, this test removes two places that are
sensitive to such a manufactured response.
Updates test expectations.
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::loadRequest): Don't inspect a
loader response if there is an error
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::platformLoadResourceSynchronously): Do not
manufacture a response
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::platformLoadResourceSynchronously): Do not
manufacture a response
- xml/XSLTProcessorLibxslt.cpp:
(WebCore::docLoaderFunc): Only use the response's URL if no error
occurred.
LayoutTests:
Two tests have been rebaselined, and re-enable test that now passes. Because of
r23889, synchronous XHRs for file: URLs purposely don't invoke error handlers.
- fast/xmlhttprequest/xmlhttprequest-nonexistent-file-expected.txt: Updated
incorrect test description
- fast/xmlhttprequest/resources/xmlhttprequest-nonexistent-file-real.html: Ditto
- platform/mac-wk2/TestExpectations: Re-enable test that now passes.
- 8:31 PM Changeset in webkit [169242] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed typo fix.
Reviewed by NOBODY.
No new tests.
- platform/graphics/mac/FontMac.mm:
(WebCore::Font::dashesForIntersectionsWithRect): Accidentally said run.length() instead of glyphBuffer.size().
- 8:27 PM Changeset in webkit [169241] by
-
- 3 edits in trunk/Tools
Eliminate n/total progress update from run-jsc-stress-tests output to file
https://bugs.webkit.org/show_bug.cgi?id=133191
Reviewed by Geoffrey Garen.
Changed progressMeter setting to be based on stdout being a tty instead of
stdin. Unified the processing of output from the shell runner to match the
same processing as is used by the makefile runner. As part of this, the
shell runner script was simplified. It now forwards the output of each
test_script just like the Makefile and doesn't provide its own progress.
- Scripts/jsc-stress-test-helpers/shell-runner.sh:
- Scripts/run-jsc-stress-tests:
- 8:16 PM Changeset in webkit [169240] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Reset the special action-target of WKSyntheticClickTapGestureRecognizer on destruction
https://bugs.webkit.org/show_bug.cgi?id=133165
<rdar://problem/16283914>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-22
Reviewed by Andy Estes.
It is unclear why, but the WKSyntheticClickTapGestureRecognizer sometimes survives its own view
and is reset after WKContentView was destructed.
This patch cleans up the target-action on destruction to avoid accessing a destructed object.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView cleanupInteraction]):
- 7:24 PM Changeset in webkit [169239] by
-
- 2 edits in trunk/Source/WebKit2
Do not force a layout when changing the FixedLayoutSize in WebPage
https://bugs.webkit.org/show_bug.cgi?id=133167
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-22
Reviewed by Andreas Kling.
WebPage::setFixedLayoutSize was forcing a layout immediately after changing the layout size on FrameView.
This is forcing plenty of extra layouts since the fixed layout size is one of many properties updated on the FrameView.
FrameView marks that layout is needed. It is not clear why a layout was performed immediately.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setFixedLayoutSize):
- 6:47 PM Changeset in webkit [169238] by
-
- 6 edits1 delete in branches/safari-537.77-branch
Revert r169216.
- 6:36 PM Changeset in webkit [169237] by
-
- 5 edits in trunk/Source
[iOS WebKit2] Web process should try to shrink its memory footprint when going into background.
<https://webkit.org/b/133197>
<rdar://problem/17011561>
Source/WebCore:
Make releaseMemory() public so we can call it from the process-will-suspend callback.
Reviewed by Gavin Barraclough.
- WebCore.exp.in:
- platform/MemoryPressureHandler.h:
Source/WebKit2:
Try to free up as much memory as possible before going into background.
Reviewed by Gavin Barraclough.
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::processWillSuspend):
- 6:34 PM Changeset in webkit [169236] by
-
- 10 edits in trunk/Source
Hook up a setting for showing detailed logging during memory pressure relief.
<https://webkit.org/b/133194>
Source/WebCore:
Make the pressure relief logger opt-in. Also make it flush memory back to the
OS (for both malloc and FastMalloc) to get more accurate numbers at each step.
Reviewed by Gavin Barraclough.
- WebCore.exp.in:
- platform/MemoryPressureHandler.cpp:
- platform/MemoryPressureHandler.h:
(WebCore::MemoryPressureHandler::ReliefLogger::ReliefLogger):
(WebCore::MemoryPressureHandler::ReliefLogger::~ReliefLogger):
(WebCore::MemoryPressureHandler::ReliefLogger::setLoggingEnabled):
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::ReliefLogger::platformMemoryUsage):
Source/WebKit2:
Plumb through the same setting that we used for detailed logging in WK1.
Reviewed by Gavin Barraclough.
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
- 6:29 PM Changeset in webkit [169235] by
-
- 2 edits in trunk/Source/WebCore
Don't scan for phone numbers in editable regions
<rdar://problem/16949846> and https://bugs.webkit.org/show_bug.cgi?id=133192
Reviewed by Enrica Casucci.
No new tests (Currently untested WK2-only feature)
- editing/Editor.cpp:
(WebCore::Editor::scanRangeForTelephoneNumbers): Skip the range if the Node is editable.
- 6:04 PM Changeset in webkit [169234] by
-
- 3 edits in trunk/Source/WebCore
Captions layout incorrectly in fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=133175
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-22
Reviewed by Eric Carlson.
When doing layout for fullscreen, geometry should be absolute so it is not influenced
by the rest of the page. This change adds style for CSSPropertyPosition, CSSPropertyLeft,
and CSSPropertyTop.
- html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::updateDisplay):
Refactor style changes into updateStyleForTextTrackRepresentation().
(WebCore::MediaControlTextTrackContainerElement::updateTimerFired):
Refactor style changes into updateStyleForTextTrackRepresentation().
(WebCore::MediaControlTextTrackContainerElement::clearTextTrackRepresentation):
Refactor style changes into updateStyleForTextTrackRepresentation().
(WebCore::MediaControlTextTrackContainerElement::updateStyleForTextTrackRepresentation):
Consolidate style changes here. Include the two existing and three new style changes.
- html/shadow/MediaControlElements.h:
Declare updateStyleForTextTrackRepresentation().
- 5:40 PM Changeset in webkit [169233] by
-
- 4 edits in trunk/Source/WebKit2
[iOS] Send shareable resources to QuickLook if enabled
https://bugs.webkit.org/show_bug.cgi?id=133189
<rdar://problem/17003995>
Reviewed by Brady Eidson.
Like we do for didReceiveData(), we need to pass an incoming ShareableResource to QuickLook if a QuickLook
handle exists.
- Shared/ShareableResource.cpp:
(WebKit::ShareableResource::Handle::tryWrapInCFData): Return the shared resource in a CFDataRef.
(WebKit::ShareableResource::Handle::tryWrapInSharedBuffer): Implemented in terms of tryWrapInCFData().
- Shared/ShareableResource.h:
- WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveResource): If a QuickLook handle exists, send the shareable resource to
it via a CFDataRef.
- 5:39 PM Changeset in webkit [169232] by
-
- 4 edits in trunk/LayoutTests
Fix the compositing/transitions/transform-on-large-layer.html test
https://bugs.webkit.org/show_bug.cgi?id=133195
Reviewed by Dean Jackson.
This test used window resize when it doesn't need to and was flakey.
- compositing/transitions/transform-on-large-layer.html:
- platform/efl/TestExpectations:
- platform/mac/TestExpectations:
- 5:31 PM Changeset in webkit [169231] by
-
- 1 copy in tags/Safari-538.34.46
Create Safari-538.34.46 tag.
- 5:02 PM Changeset in webkit [169230] by
-
- 3 edits4 copies in branches/safari-537.77-branch
Merged r169007. <rdar://problem/16975427>
- 4:57 PM Changeset in webkit [169229] by
-
- 13 edits in trunk
REGRESSION (r155977): Very stuttery 3D css animation on jtechcommunications.com
https://bugs.webkit.org/show_bug.cgi?id=133179
<rdar://problem/16864666>
Reviewed by Dean Jackson.
Source/WebCore:
Revert code added in r155977 to try to pick a good contentsScale for layers
based on a root-relative transform. This resulted in pages with too much
backing store, and too many cases where layers repainted during animations,
causing stutter.
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::GraphicsLayerCA):
(WebCore::GraphicsLayerCA::flushCompositingState):
(WebCore::GraphicsLayerCA::recursiveCommitChanges):
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateContentsOpaque):
(WebCore::GraphicsLayerCA::updateAnimations):
(WebCore::GraphicsLayerCA::appendToUncommittedAnimations):
(WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
(WebCore::GraphicsLayerCA::setTransformAnimationKeyframes):
(WebCore::GraphicsLayerCA::updateContentsScale):
(WebCore::clampedContentsScaleForScale): Deleted.
(WebCore::maxScaleFromTransform): Deleted.
(WebCore::GraphicsLayerCA::updateRootRelativeScale): Deleted.
(WebCore::GraphicsLayerCA::getTransformFromAnimationsWithMaxScaleImpact): Deleted.
- platform/graphics/ca/GraphicsLayerCA.h:
LayoutTests:
Rebaseline.
- compositing/contents-scale/animating-expected.txt:
- compositing/contents-scale/rounded-contents-scale-expected.txt:
- compositing/contents-scale/scaled-ancestor-expected.txt:
- compositing/contents-scale/simple-scale-expected.txt:
- compositing/contents-scale/z-translate-expected.txt:
- platform/mac/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
- platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
- platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
- platform/mac/compositing/visible-rect/nested-transform-expected.txt:
- 4:50 PM Changeset in webkit [169228] by
-
- 14 edits12 copies in branches/safari-537.77-branch
Merged r168915. <rdar://problem/16975506>
- 4:43 PM Changeset in webkit [169227] by
-
- 9 edits in branches/safari-537.77-branch/Source/WebCore
Merged r167856. <rdar://problem/16975541>
- 4:34 PM Changeset in webkit [169226] by
-
- 3 edits2 copies in branches/safari-537.77-branch
Merged r168636. <rdar://problem/16975423>
- 3:43 PM Changeset in webkit [169225] by
-
- 12 edits in branches/safari-537.77-branch/Source
Merged r166741. <rdar://problem/16975484>
- 3:08 PM Changeset in webkit [169224] by
-
- 2 edits in branches/safari-537.77-branch/Source/WebCore
Merged r167851. <rdar://problem/16975552>
- 2:46 PM Changeset in webkit [169223] by
-
- 12 edits in trunk/Source
[iOS] Enable -apple-system- styled elements to respond to system font size changes.
https://bugs.webkit.org/show_bug.cgi?id=133186
<rdar://problem/16583782>
Reviewed by Enrica Casucci.
Source/WebCore:
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
- rendering/RenderThemeIOS.h:
- rendering/RenderThemeIOS.mm:
(WebCore::_contentSizeCategory):
(WebCore::RenderThemeIOS::contentSizeCategory):
(WebCore::RenderThemeIOS::setContentSizeCategory):
Source/WebKit2:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _contentSizeCategoryDidChange:]):
(-[WKWebView _contentSizeCategory]):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::contentSizeCategoryDidChange):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::contentSizeCategoryDidChange):
- 2:45 PM Changeset in webkit [169222] by
-
- 5 edits in branches/safari-537.77-branch
Merged r168641. <rdar://problem/16975502>
- 2:40 PM Changeset in webkit [169221] by
-
- 3 edits2 adds in trunk
REGRESSION(r154797): Debugger crashes when stepping over an uncaught exception.
<https://webkit.org/b/133182>
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Before r154797, we used to clear the VM exception before calling into the
debugger. After r154797, we don't. This patch will restore this clearing
of the exception before calling into the debugger.
Also added assertions after returning from calls into the debugger to
ensure that the debugger did not introduce any exceptions.
- interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
(JSC::Interpreter::unwind):
(JSC::Interpreter::debug):
- Fixed the assertion here. Interpreter::debug() should never be called with a pending exception. Debugger callbacks for exceptions should be handled by Interpreter::unwind() and Interpreter::unwindCallFrame().
LayoutTests:
- inspector-protocol/debugger/regress-133182-expected.txt: Added.
- inspector-protocol/debugger/regress-133182.html: Added.
- 2:37 PM Changeset in webkit [169220] by
-
- 3 edits2 copies in branches/safari-537.77-branch
Merged r167818. <rdar://problem/16975502>
- 2:35 PM Changeset in webkit [169219] by
-
- 15 edits in branches/safari-537.77-branch/Source
Merged r167635. <rdar://problem/16975536>
- 2:16 PM Changeset in webkit [169218] by
-
- 4 edits in branches/safari-537.77-branch/Source/WebCore
Merged r167264. <rdar://problem/16975518>
- 2:11 PM Changeset in webkit [169217] by
-
- 2 edits in trunk/Tools
Add option to run-jsc-stress-tests to use installed jsc
https://bugs.webkit.org/show_bug.cgi?id=133102
Reviewed by Geoffrey Garen.
Added --no-copy option to not copy a JavaScriptCore framework, but use the one
provied with the --jsc option.
- Scripts/run-jsc-stress-tests:
- 2:10 PM Changeset in webkit [169216] by
-
- 6 edits1 copy in branches/safari-537.77-branch
Merged r166628. <rdar://problem/16975444>
- 1:56 PM Changeset in webkit [169215] by
-
- 1 edit in branches/safari-537.77-branch/LayoutTests/ChangeLog
Fix borked ChangeLog merge from r169213.
- 1:35 PM Changeset in webkit [169214] by
-
- 2 edits in trunk/Source/WebKit2
[iOS] Add CFBundleAllowMixedLocalizations to WebContentService
https://bugs.webkit.org/show_bug.cgi?id=133187
<rdar://problem/16561084>
Reviewed by Tim Horton.
- WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
We already had it in WebContentService.Development, just not here.
- 1:14 PM Changeset in webkit [169213] by
-
- 6 edits2 copies in branches/safari-537.77-branch
Merged r166628.
- 1:00 PM Changeset in webkit [169212] by
-
- 3 edits in branches/safari-537.77-branch/Source/WebCore
Merged r165206.
- 12:37 PM Changeset in webkit [169211] by
-
- 2 edits in branches/safari-537.77-branch/Source/JavaScriptCore
Merged r165162.
- 12:06 PM Changeset in webkit [169210] by
-
- 8 edits in branches/safari-538.34-branch/Source/WebCore
Merge r169209. <rdar://problem/16933311>
- 11:25 AM Changeset in webkit [169209] by
-
- 8 edits in trunk/Source/WebCore
[MSE] Stored samples are not freed when SourceBuffer is removed from MediaSource
https://bugs.webkit.org/show_bug.cgi?id=133174
Reviewed by Eric Carlson.
Clear out stored MediaSamples from SourceBuffer's TrackBuffer storage when
aborting loading. Also, report the memory cost of those samples, so that the
SourceBuffer will be GCd more readily.
Add a mechanism for reporting the size of a MediaSample:
- Modules/mediasource/SourceBuffer.h:
- platform/MediaSample.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
- platform/mock/mediasource/MockSourceBufferPrivate.cpp:
Track the memory usage of a SampleMap when adding and removing samples, as well
as allowing the SampleMap to be cleared wholesale:
- Modules/mediasource/SampleMap.cpp:
(WebCore::SampleMap::clear): Release all stored MediaSamples.
(WebCore::SampleMap::addSample): Update m_totalSize.
(WebCore::SampleMap::removeSample): Ditto.
- Modules/mediasource/SampleMap.h:
(WebCore::SampleMap::SampleMap): Initialize m_totalSize.
(WebCore::SampleMap::sizeInBytes): Simple accessor.
Clear the stored samples when loading is aborted, and report the extra memory
cost
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::SourceBuffer): Initialize m_reportedExtraMemoryCost.
(WebCore::SourceBuffer::removedFromMediaSource): Clear all stored samples.
(WebCore::SourceBuffer::sourceBufferPrivateAppendComplete): Call reportExtraMemoryCost().
(WebCore::SourceBuffer::reportExtraMemoryCost): Inform the vm of the new
extra memory cost incurred by the object.
- 11:23 AM Changeset in webkit [169208] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Application cache is broken
https://bugs.webkit.org/show_bug.cgi?id=133172
<rdar://problem/16994593>
Reviewed by Andy Estes.
- UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformDefaultApplicationCacheDirectory): Use a proper
path for application cache database (same as WebKit1).
- 11:03 AM Changeset in webkit [169207] by
-
- 4 edits in trunk/Source
REGRESSION (WebKit2): Keyboard should have Search button in duckduckgo.com.
https://bugs.webkit.org/show_bug.cgi?id=133183
<rdar://problem/17004207>
Reviewed by Geoff Garen.
Source/WebCore:
Adding new export.
- WebCore.exp.in:
Source/WebKit2:
The keyboard type should be search if the input type is search
or if it is text and it is inside a form with an action and either
name, id or title contain the word search. This matches the
heuristics we have in WK1 for iOS.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getAssistedNodeInformation):
- 10:09 AM Changeset in webkit [169206] by
-
- 5 edits2 copies in branches/safari-537.77-branch
Merged r164950. <rdar://problem/16975484>
- 10:00 AM Changeset in webkit [169205] by
-
- 3 edits in branches/safari-537.77-branch/Source/WebCore
Merged r157816. <rdar://problem/16975484>
- 9:50 AM Changeset in webkit [169204] by
-
- 2 edits in branches/safari-537.77-branch/Source/WTF
Merged r157717. <rdar://problem/16975484>
- 9:23 AM Changeset in webkit [169203] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r163712): [GTK] Misspelling and grammar underline marks are no longer drawn
https://bugs.webkit.org/show_bug.cgi?id=133047
Reviewed by Darin Adler.
Change two conditions changed by mistake in r163712.
- editing/TextCheckingHelper.cpp:
(WebCore::findMisspellings): Enter the loop also when wordStart is 0.
(WebCore::TextCheckingHelper::findFirstMisspelling): Skip the work
when the text is a single character. Also reworked it to use a for
loop to improve the readability.
- 8:51 AM Changeset in webkit [169202] by
-
- 2 edits1 add in trunk/LayoutTests
Unreviewed EFL gardening
Add test expectations for failing tests.
- platform/efl-wk2/TestExpectations:
- platform/efl/editing/apply-style-iframe-crash-expected.txt: Added after r168641.
- 8:46 AM Changeset in webkit [169201] by
-
- 9 edits2 deletes in branches/safari-537.77-branch/Source/WebCore
Merged r155315.
- 8:37 AM WebKitGTK/2.4.x edited by
- (diff)
- 7:57 AM Changeset in webkit [169200] by
-
- 4 edits2 adds in trunk
Video is resumed with old playback rate.
https://bugs.webkit.org/show_bug.cgi?id=132905
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-22
Reviewed by Philippe Normand.
Source/WebCore:
Setting '0' playback rate is causing pipeline to pause.
GStreamer player impl. exposed this information to upper layers but it should not.
Solution is to hidden such situation behind m_playbackRatePause flag.
Test: media/video-paused-0-rate.html
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::doSeek):
(WebCore::MediaPlayerPrivateGStreamer::updatePlaybackRate):
(WebCore::MediaPlayerPrivateGStreamer::paused):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
LayoutTests:
- media/video-paused-0-rate-expected.txt: Added.
- media/video-paused-0-rate.html: Added.
- 6:05 AM Changeset in webkit [169199] by
-
- 6 edits4 adds in trunk
Text markers don't paint on simple lines
https://bugs.webkit.org/show_bug.cgi?id=133177
Reviewed by Anders Carlsson.
Source/WebCore:
Marker painting code does not yet support simple lines.
Tests: fast/text/mark-matches-rendering-simple-lines.html
fast/text/mark-matches-rendering.html
- dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
Force text blocks with markers to use line boxes.
- testing/Internals.cpp:
(WebCore::Internals::setMarkedTextMatchesAreHighlighted):
Expose this so we can make reftests for marker rendering.
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- fast/text/mark-matches-rendering-expected.html: Added.
- fast/text/mark-matches-rendering-simple-lines-expected.html: Added.
- fast/text/mark-matches-rendering-simple-lines.html: Added.
- fast/text/mark-matches-rendering.html: Added.
- 5:16 AM WebKitGTK/2.4.x edited by
- (diff)
- 5:16 AM Changeset in webkit [169198] by
-
- 6 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r168060 - [GStreamer] Use GstMetaVideo
https://bugs.webkit.org/show_bug.cgi?id=132247
Reviewed by Philippe Normand.
In WebKitVideoSink we announce the usage of GstMetaVideo, but we do
not use it when handling the video frames. This might break
some decoders and filters that rely on buffer's meta, rather
that in the caps structures.
This patch enables the use of GstMetaVideo through the GstVideoFrame
API. And it is used everywhere the buffer mapping is required.
Also this patch changes to nullptr where zeros were used.
Also, compile conditionally the video buffer conversion when it is
ARGB/BGRA, since it is only required for the Cairo backend.
No new tests, already covered by current tests.
- platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::getVideoSizeAndFormatFromCaps): init the GstVideoInfo before
used and remove caps fixate check since it is done by
gst_video_info_from_caps().
- platform/graphics/gstreamer/ImageGStreamer.h:
- platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(ImageGStreamer::ImageGStreamer): use GstVideoFrame for buffer mapping
and unmapping.
(ImageGStreamer::~ImageGStreamer): ditto.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): ditto.
(WebCore::MediaPlayerPrivateGStreamerBase::currentVideoSinkCaps):
return nullptr if failed.
- platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkRender): rely on GstVideoInfo rather than on the
caps. Use GstVideoFrame for buffer mapping and unmapping. Add guards
for buffer transformation, since it's only used by Cairo.
(webkitVideoSinkDispose): remove glib version guards.
(webkitVideoSinkSetCaps): update the value of the private
GstVideoInfo.
- 5:01 AM Changeset in webkit [169197] by
-
- 1 edit8 adds2 deletes in trunk/LayoutTests
[CSS Grid Layout] Split the grid-item-margin-auto-columns-rows.html test.
https://bugs.webkit.org/show_bug.cgi?id=131064
Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-05-22
Reviewed by Benjamin Poulain.
Splitting the "grid-item-margin-auto-columns-rows" into different writing-modes
related tests, so besides increasing clarity, it makes it fit in the 800x600 viewport.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.html: Removed.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows.html: Removed.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-ltr-expected.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-ltr.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-rtl-expected.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-rtl.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-ltr-expected.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-ltr.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-rtl-expected.html: Added.
- fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-rtl.html: Added.
- 5:00 AM WebKitGTK/2.4.x edited by
- (diff)
- 4:59 AM Changeset in webkit [169196] by
-
- 5 edits in releases/WebKitGTK/webkit-2.4
Merge r169112 - [GTK] WebKitWebPage::send-request always pass a valid pointer for redirected response
https://bugs.webkit.org/show_bug.cgi?id=133119
Reviewed by Sergio Villar Senin.
Source/WebKit2:
The problem is that we were checking whether the passed in
WKURLResponseRef is NULL or not, but it's always a valid object
that can contain a NULL WebCore::ResourceResponse.
- WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame): Pass NULL as redirect-response
parameter of WebKitWebPage::send-request signal when the
WebCore::ResourceResponse of the passed in WKURLResponseRef is NULL.
Tools:
Check that redirect response parameter of
WebKitWebPage::send-request signal is NULL when not redirecting
and a valid WebKitURIResponse object when redirecting.
- TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
(testWebResourceSendRequest):
(serverCallback):
- TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(sendRequestCallback):
- 4:54 AM Changeset in webkit [169195] by
-
- 3 edits in trunk/Source/WebCore
[CSS Grid Layout] Guard RenderObject::isRenderGrid() method
https://bugs.webkit.org/show_bug.cgi?id=132380
Reviewed by Benjamin Poulain.
Guard RenderObject::isRenderGrid() method under ENABLE_CSS_GRID_LAYOUT compilation flag.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalWidthInRegion):
- rendering/RenderObject.h:
- 3:53 AM WebKitGTK/2.4.x edited by
- (diff)
- 3:52 AM Changeset in webkit [169194] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4
[Stable] Typo in ReadCommandLineArguments.m4
https://bugs.webkit.org/show_bug.cgi?id=132816
Patch by Milan Crha <mcrha@redhat.com> on 2014-05-22
Reviewed by Carlos Garcia Campos.
- Source/autotools/ReadCommandLineArguments.m4:
- 3:37 AM Changeset in webkit [169193] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/JavaScriptCore
Merge r169094 - operationOptimize() should defer the GC for a while.
<https://webkit.org/b/133103>
Reviewed by Filip Pizlo.
Currently, operationOptimize() only defers the GC until its end. As a result,
a GC may be triggered just before we return from operationOptimize(), and it may
jettison the optimize codeBlock that we're planning to OSR enter into when we
return from this function. This is because the OSR entry on-ramp code hasn't
been executed yet, and hence, there is not yet a reference to this new codeBlock
from the stack, and there won't be until we've had a chance to return out of
operationOptimize() to run the OSR entry on-ramp code.
This issue is now fixed by using DeferGCForAWhile instead of DeferGC. This
ensures that the GC will be deferred until after the OSR entry on-ramp can be
executed.
- jit/JITOperations.cpp:
- 2:52 AM Changeset in webkit [169192] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r168460 - Dragging text from one paragraph to another does not render as expected
https://bugs.webkit.org/show_bug.cgi?id=132633
Reviewed by Darin Adler and Ryosuke Niwa.
Source/WebCore:
When we are dragging and dropping into a content editable field, we detect
if we are trying to put a <p> into an existing <p>, and if so, split the
outer <p> and insert the new <p> as its sibling. However, the outer <p>
might not be editable, so we don't want to do any splitting and inserting
at that location.
Test: editing/pasteboard/drag-drop-paragraph-crasher.html
- editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
LayoutTests:
The problem occurs when dragging text that includes a <p> into an editable
area that has a <p> as a parent.
- editing/pasteboard/drag-drop-paragraph-crasher-expected.txt: Added.
- editing/pasteboard/drag-drop-paragraph-crasher.html: Added.
- 2:22 AM WebKitGTK/2.4.x edited by
- fix style (diff)
- 2:15 AM WebKitGTK/2.4.x edited by
- add "[GStreamer] Use GstMetaVideo" (diff)
- 1:09 AM Changeset in webkit [169191] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Tools
Unreviewed. Fix the build after r168707.
- Scripts/webkitdirs.pm:
(buildAutotoolsProject): Fix merge conflicts not handled in r168707.
May 21, 2014:
- 11:44 PM Changeset in webkit [169190] by
-
- 2 edits in trunk/Source/WebKit
[Win64] Unreviewed build fix.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Corrected 64-bit linker symbol.
- 11:12 PM Changeset in webkit [169189] by
-
- 6 edits2 adds in trunk
REGRESSION(r167870): Crash in simple line layout code with :after
https://bugs.webkit.org/show_bug.cgi?id=133155
Source/WebCore:
<rdar://problem/16977696>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=132241 in a safer way.
The underline behavior is tested by the existing fast/text/simple-lines-hover-underline.html
Test: fast/text/simple-lines-hover-after.html
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::invalidateLineLayoutPath): Deleted.
Move to RenderBlockFlow.
- rendering/RenderBlock.h:
(WebCore::RenderBlock::invalidateLineLayoutPath):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::styleDidChange):
Invalidate layout if style changes in a manner that makes us ineligible to use the simple line layout path.
(WebCore::RenderBlockFlow::invalidateLineLayoutPath):
Drop the simple line layout on path invalidation if it exists. It may not be valid anymore.
Also invalidate the layout if this happens so we'll reconstruct the lines later.
(WebCore::RenderBlockFlow::simpleLineLayout): Deleted.
(WebCore::RenderBlockFlow::ensureLineBoxes):
(WebCore::RenderBlockFlow::createLineBoxes): Deleted.
Revert some of the changes made it r167870.
- rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::simpleLineLayout):
Add strong validity assert.
LayoutTests:
Reviewed by Darin Adler.
- fast/text/simple-lines-hover-after-expected.html: Added.
- fast/text/simple-lines-hover-after.html: Added.
- 9:11 PM Changeset in webkit [169188] by
-
- 8 edits5 adds in branches/ftlopt
[ftlopt] DFG::clobberize should be blind to the effects of GC
https://bugs.webkit.org/show_bug.cgi?id=133166
Source/JavaScriptCore:
Reviewed by Goeffrey Garen.
Move the computation of where GCs happen to DFG::doesGC().
Large (>5x) speed-up on programs that do loop-invariant string concatenations.
- CMakeLists.txt:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- dfg/DFGAbstractHeap.h:
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
(JSC::DFG::clobberizeForAllocation): Deleted.
- dfg/DFGDoesGC.cpp: Added.
(JSC::DFG::doesGC):
- dfg/DFGDoesGC.h: Added.
- dfg/DFGStoreBarrierElisionPhase.cpp:
(JSC::DFG::StoreBarrierElisionPhase::handleNode):
(JSC::DFG::StoreBarrierElisionPhase::couldCauseGC): Deleted.
LayoutTests:
Reviewed by Geoffrey Garen.
- js/regress/hoist-make-rope-expected.txt: Added.
- js/regress/hoist-make-rope.html: Added.
- js/regress/script-tests/hoist-make-rope.js: Added.
(foo):
- 8:52 PM Changeset in webkit [169187] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 8:25 PM Changeset in webkit [169186] by
-
- 1 copy in tags/Safari-538.34.45
New Tag.
- 6:55 PM Changeset in webkit [169185] by
-
- 2 edits in branches/ftlopt/Source/JavaScriptCore
Merge trunk r169184 to ftlopt.
2014-05-21 Filip Pizlo <fpizlo@apple.com>
Store barrier elision should run after DCE in both the DFG path and the FTL path
https://bugs.webkit.org/show_bug.cgi?id=129718
Rubber stamped by Mark Hahnenberg.
- dfg/DFGPlan.cpp: (JSC::DFG::Plan::compileInThreadImpl):
- 6:36 PM Changeset in webkit [169184] by
-
- 2 edits in trunk/Source/JavaScriptCore
Store barrier elision should run after DCE in both the DFG path and the FTL path
https://bugs.webkit.org/show_bug.cgi?id=129718
Rubber stamped by Mark Hahnenberg.
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThreadImpl):
- 6:18 PM Changeset in webkit [169183] by
-
- 2 edits in trunk/Source/WebCore
[iOS] two media control button strings are not localized
https://bugs.webkit.org/show_bug.cgi?id=133160
Reviewed by Geoffrey Garen.
- English.lproj/mediaControlsLocalizedStrings.js:
- 5:56 PM Changeset in webkit [169182] by
-
- 2 edits in tags/Safari-538.36/Source/WebKit2
Merge r169180. <rdar://problem/16982059>
- 5:12 PM Changeset in webkit [169181] by
-
- 6 edits1 add in trunk
[EFL] Add include path of compact_unwind_encoding.h if FTL JIT is enabled
https://bugs.webkit.org/show_bug.cgi?id=132907
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-21
Reviewed by Gyuyoung Kim.
.:
- Source/cmake/FindLIBCXXABI.cmake: Added.
- Source/cmake/OptionsEfl.cmake:
Source/JavaScriptCore:
- CMakeLists.txt:
Tools:
We need the mach-o/compact_unwind_encoding.h header from libc++abi-dev package
in JavaScriptCore/ftl/FTLUnwindInfo.cpp when FTL JIT is enabled.
- efl/install-dependencies:
- 5:11 PM Changeset in webkit [169180] by
-
- 2 edits in trunk/Source/WebKit2
Only enable sandbox extensions on mac.
- 3:03 PM Changeset in webkit [169179] by
-
- 7 edits in branches/safari-538.34-branch/Source
Merged r169151.
- 2:50 PM Changeset in webkit [169178] by
-
- 2 edits in trunk/LayoutTests
Unreviewed Mac gardening after r169161.
- platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
- 2:35 PM Changeset in webkit [169177] by
-
- 2 edits1 add in trunk/Source/WebCore
[iOS] Update some of the media controls buttons to be bigger
https://bugs.webkit.org/show_bug.cgi?id=133158
<rdar://problem/16475828>
Reviewed by Simon Fraser.
The buttons in the media controls on iOS are too small
to be comfortably pressed. Make them the size of the controls
panel and the expected iOS button size (44x44px).
The artwork for the buttons now includes the padding. I've
added a file from which you can edit the artwork, then
copy it into the CSS (because editing directly in CSS is
a huge pain).
So far just the play/pause and fullscreen button have been
updated. There will be a follow-up patch to fix the remaining
buttons and the scrubber.
- Modules/mediacontrols/assets-apple-iOS.svg: Added.
- Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-panel):
(audio::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-play-button:active):
(audio::-webkit-media-controls-play-button.paused):
(audio::-webkit-media-controls-fullscreen-button:active):
(@media only screen and (-webkit-min-device-pixel-ratio: 2)): Deleted.
- 1:52 PM Changeset in webkit [169176] by
-
- 5 edits2 adds in trunk/Source/WebKit2
[iOS] Enable sandboxing for the database process
https://bugs.webkit.org/show_bug.cgi?id=132963
Reviewed by Alexey Proskuryakov.
Simply ensure that the database process is running in a tight
sandbox. As part of this i've separated out ChildProcessIOS
and ensures that the database process loads a custom sandbox.
- Configurations/WebKit.xcconfig:
- DatabaseProcess/ios/DatabaseProcessIOS.mm:
(WebKit::DatabaseProcess::initializeSandbox):
- DatabaseProcess/ios/com.apple.WebKit.DatabasesIOS.sb: Added.
- Shared/ios/ChildProcessIOS.mm: Added.
Essentially cloned from the Mac version, only all the OSX
specific logic has been stripped.
(WebKit::ChildProcess::setApplicationIsDaemon):
(WebKit::ChildProcess::platformInitialize):
(WebKit::ChildProcess::initializeSandbox):
(WebKit::ChildProcess::setQOS):
- Shared/mac/ChildProcessMac.mm:
Remove all the IOS ifdefs.
(WebKit::ChildProcess::setApplicationIsDaemon):
(WebKit::ChildProcess::platformInitialize):
(WebKit::ChildProcess::initializeSandbox):
(WebKit::ChildProcess::setQOS):
- WebKit2.xcodeproj/project.pbxproj:
- 1:39 PM Changeset in webkit [169175] by
-
- 17 edits1 copy1 add in trunk/Source/WebKit2
[iOS] Create a UIPrintFormatter for WKWebView
https://bugs.webkit.org/show_bug.cgi?id=133005
Reviewed by Tim Horton.
Implemented a UIPrintFormatter subclass to support printing WKWebViews using UIPrintInteractionController.
Overrode -_recalcPageCount: to synchronously ask the web process to lay out for printing and return the number
of page rects. The web process returns the page rects immediately and then starts rendering the page to a PDF,
returning the PDF data to the UI process asynchronously. When UIPrintInteractionController later calls our
overridden -drawInRect:forPageAtIndex:, we block and wait for the PDF data to be returned. Since
UIPrintInteractionController draws each page after a delay, it's possible that the web process has already
returned the PDF data to us by the time we print the first page.
- Shared/WebPreferencesStore.h: Correctly initialized shouldPrintBackgrounds for iOS.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _dataForDisplayedPDF]): Now that WKPDFView vends its CGPDFDocument directly, extract its data here.
(-[WKWebView _printFormatterClass]): Tell UIView which UIPrintFormatter to alloc.
(-[WKWebView _computePageCountAndStartDrawingToPDFWithPrintInfo:WebKit::firstPage:computedTotalScaleFactor:]):
If we're displaying a PDF, return its page count directly. Otherwise, synchronously ask the web process to
compute page rects for printing and then return the number of rects.
(-[WKWebView _endPrinting]): Cleared state and sent the WebPage::EndPrinting message to the web process.
(-[WKWebView _printedDocument]): If we're displaying a PDF, return its data directly. Otherwise, if we haven't
received PDF data from the web process yet, wait for it indefinitely (there's no sensible timeout to use here
since failing to receive the data results in printing some number of blank pages).
(-[WKWebView _setPrintedDocument:]): Set the CGPDFDocument received from the web process.
- UIProcess/API/Cocoa/WKWebViewInternal.h: Declared methods called by WKWebViewPrintFormatter.
- UIProcess/PageClient.h: Declared didFinishDrawingPagesToPDF.
- UIProcess/WKWebViewPrintFormatter.h: Added.
- UIProcess/WKWebViewPrintFormatter.mm: Added.
(-[WKWebViewPrintFormatter dealloc]): Cleared state and called -[WKWebView _endPrinting].
(-[WKWebViewPrintFormatter webView]): Returned the WKWebView for this print formatter.
(-[WKWebViewPrintFormatter _recalcPageCount]): Set up a PrintInfo object given the formatter's content rect
and called -_computePageCountAndStartDrawingToPDFWithPrintInfo:...
(-[WKWebViewPrintFormatter rectForPageAtIndex:]): Called -_recalcIfNecessary and then returned the rect from
-_pageContentRect.
(-[WKWebViewPrintFormatter drawInRect:forPageAtIndex:]): Taught to draw the given page of the printed PDF
document into the given rect and context provided to us.
- UIProcess/WebPageProxy.h: Declared didFinishDrawingPagesToPDF.
- UIProcess/WebPageProxy.messages.in: Added DidFinishDrawingPagesToPDF. Made this a delayed syncrhonous message
so that additoinal work could be performed after sending the response.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didFinishDrawingPagesToPDF): Created a CGPDFDocument from the data sent to us by the
web process and called -[WKWebView _setPrintedDocument:].
- UIProcess/ios/WKPDFView.h:
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView pdfDocument]): Returned the underlying CGPDFDocument.
(-[WKPDFView documentData]): Deleted.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::didFinishDrawingPagesToPDF):
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::computePagesForPrinting): Changed to call computePagesForPrintingImpl.
(WebKit::WebPage::computePagesForPrintingImpl): Moved the common logic of computePagesForPrinting to here so it
could be called by computePagesForPrintingAndStartDrawingToPDF.
(WebKit::WebPage::drawPagesToPDF): Changed to call drawPagesToPDFImpl
(WebKit::WebPage::drawPagesToPDFImpl): Moved the common logic of drawPagesToPDF to here so it could be called
by computePagesForPrintingAndStartDrawingToPDF.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::computePagesForPrintingAndStartDrawingToPDF): Computed page rects and returned them as a
synchronous response. Afterwards called drawPagesToPDFImpl() and returned the PDF data by sending
WebPageProxy::DidFinishDrawingPagesToPDF.
- 12:48 PM Changeset in webkit [169174] by
-
- 7 edits in tags/Safari-538.36/Source
Merged r169151.
- 12:45 PM Changeset in webkit [169173] by
-
- 7 edits in trunk/LayoutTests
Unreviewed. Actually enable snapshot tests on mac wk2.
- platform/mac-wk1/TestExpectations: Skip them here.
- platform/mac/TestExpectations: Unskip them here.
Some slight modifications to some of the tests to reduce flakiness of tests.
- plugins/snapshotting/autoplay-dominant.html:
- plugins/snapshotting/autoplay-plugin-blocked-by-image.html:
- plugins/snapshotting/autoplay-plugin-mostly-blocked-by-image.html:
- plugins/snapshotting/snapshot-plugin-not-quite-blocked-by-image.html:
- 11:22 AM Changeset in webkit [169172] by
-
- 7 edits in trunk
[EFL] Turn on ENABLE_CSS_FILTERS
https://bugs.webkit.org/show_bug.cgi?id=133153
Reviewed by Gyuyoung Kim.
.:
- Source/cmake/OptionsEfl.cmake: Enable CSS_FILTERS as default option value.
Source/WebKit2:
Make WebKit2 compile after r166741 when CSS_FILTERS are enabled.
- Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
LayoutTests:
Remove failure test expectations for tests passing after turning on CSS_FILTERS.
- platform/efl-wk2/TestExpectations:
- platform/efl/TestExpectations:
- 11:18 AM Changeset in webkit [169171] by
-
- 5 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r169170.
- 10:37 AM Changeset in webkit [169170] by
-
- 5 edits in trunk/Source/WebKit2
Special handling of telephone number detection menu.
<rdar://problem/16967971> and https://bugs.webkit.org/show_bug.cgi?id=133143
Reviewed by Geoff Garen.
Add a bool to ContextMenuContextData to represent telephone number menus:
- Shared/ContextMenuContextData.cpp:
(WebKit::ContextMenuContextData::ContextMenuContextData):
(WebKit::ContextMenuContextData::operator=):
(WebKit::ContextMenuContextData::encode):
(WebKit::ContextMenuContextData::decode):
- Shared/ContextMenuContextData.h:
(WebKit::ContextMenuContextData::ContextMenuContextData):
(WebKit::ContextMenuContextData::isTelephoneNumberContext):
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu): If the menu is a telephone
number menu then display it using a specific AppKit API.
- UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::showTelephoneNumberMenu): Filter the array of menu items
through a new WKSI call, and then show it using a telephone number context.
- 10:30 AM Changeset in webkit [169169] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 10:22 AM Changeset in webkit [169168] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Versioning.
- 10:04 AM Changeset in webkit [169167] by
-
- 3 edits in trunk/Source/WebKit2
[Mac] REGRESSION (Async text input): Asian text input doesn't work in Flash
https://bugs.webkit.org/show_bug.cgi?id=133128
<rdar://problem/16890920>
Reviewed by Anders Carlsson.
- UIProcess/API/mac/WKView.mm:
(-[WKView _interpretKeyEvent:completionHandler:]): Added a separate code path for
plug-in input. Before async text input, we used to provide a nil input context due
to having _data->_interpretKeyEventsParameters while this function was executing,
and thus took a shortcut. The new behavior is different from pre-async in that
we don't collect commands at all, but I couldn't find any case where that mattered.
(-[WKView inputContext]): The _collectedKeypressCommands check was not a correct
replacement for _interpretKeyEventsParameters one, because this variable is not
always set within -_interpretKeyEvent:completionHandler:.
- UIProcess/mac/WKTextInputWindowController.mm:
(-[WKTextInputPanel _interpretKeyEvent:usingLegacyCocoaTextInput:string:]):
While at it, fixed a separate issue with Cangjie predictive input. We shouldn't
keep prediction pop-up on screen after hiding the bottom input window.
- 9:56 AM Changeset in webkit [169166] by
-
- 2 edits in trunk/LayoutTests
Unreviewed Mac gardening after r169161.
- platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
- 9:39 AM Changeset in webkit [169165] by
-
- 16 edits in trunk
[CMake] Improve handling of LIB_INSTALL_DIR, EXEC_INSTALL_DIR, and LIBEXEC_INSTALL_DIR
https://bugs.webkit.org/show_bug.cgi?id=132819
Reviewed by Carlos Garcia Campos.
.:
- CMakeLists.txt: Hard-code CMAKE_ARCHIVE_OUTPUT_DIRECTORY etc, so that we can accept absolute paths for LIB_INSTALL_DIR
and friends.
- Source/cmake/OptionsCommon.cmake: Get rid of LIB_SUFFIX and try to make all path variables absolute. Also set
CMAKE_ARCHIVE_OUTPUT_DIRECTORY, etc using the last path component of LIB_INSTALL_DIR, etc, so that absolute paths
are supported.
- Source/cmake/OptionsGTK.cmake: Ditto. Also get rid of all pkg-config specific variables.
Source/JavaScriptCore:
- javascriptcoregtk.pc.in: Instead of using the special pkg-config variables,
use the common CMake ones directly.
Source/WebKit/efl:
- EWebKitConfig.cmake.in: LIB_INSTALL_DIR is always absolute now, so we don't need
to prefix it with the prefix.
- ewebkit.pc.in: Instead of hard-coding the path to the library installation directory use LIB_INSTALL_DIR.
Source/WebKit2:
- PlatformEfl.cmake: No need to prefix EXEC_INSTALL_DIR with the prefix any longer.
- PlatformGtk.cmake: No longer use CMAKE_INSTALL_FULL_FOO variables, instead using the WebKit-specific ones.
- efl/EWebKit2Config.cmake.in: Ditto.
- efl/ewebkit2.pc.in: Instead of hard-coding the path to the library installation directory use LIB_INSTALL_DIR.
- webkit2gtk-web-extension.pc.in: No longer use the pkg-config only variables. Instead use
the common CMake ones.
- webkit2gtk.pc.in: Ditto.
- 9:33 AM Changeset in webkit [169164] by
-
- 6 edits in trunk
Unreviewed, roll out http://trac.webkit.org/changeset/169159.
This was a unilateral change and wasn't properly reviewed.
PerformanceTests/SunSpider:
- profiler-test.yaml:
Source/JavaScriptCore:
- tests/mozilla/mozilla-tests.yaml:
LayoutTests:
- js/script-tests/function-apply-many-args.js:
- 9:19 AM Changeset in webkit [169163] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION(r168625): [GTK] Assertion failure in LocalStorageDatabaseTracker
https://bugs.webkit.org/show_bug.cgi?id=133118
Reviewed by Philippe Normand.
Call WebContext::applyPlatformSpecificConfigurationDefaults() to
initialize the WebContextConfiguration before creating the default WebContext.
- UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext):
- 9:14 AM Changeset in webkit [169162] by
-
- 7 edits in trunk
Array.prototype.find and findIndex should skip holes
https://bugs.webkit.org/show_bug.cgi?id=132658
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
Skip holes in the array when iterating such that callback isn't called.
- builtins/Array.prototype.js:
(find):
(findIndex):
LayoutTests:
- js/array-find-expected.txt:
- js/array-findIndex-expected.txt:
- js/script-tests/array-find.js:
- js/script-tests/array-findIndex.js:
- 9:06 AM Changeset in webkit [169161] by
-
- 6 edits in trunk/Source/WebCore
Garbage when rubber-banding at the right edge of a page zoomed to non-integral scale.
https://bugs.webkit.org/show_bug.cgi?id=133139
<rdar://problem/16503353>
Reviewed by Simon Fraser.
Do not pixel align the root content layer. The alignment code expands the graphics's layer size
which makes the right and bottom tiles bigger than the content.
Painting the body's background color produces pixel cracks, because the content can not
fill the expanded tiles completely.
Not testable.
- platform/graphics/GraphicsLayerClient.h:
(WebCore::GraphicsLayerClient::needsPixelAligment):
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateGeometry):
(WebCore::GraphicsLayerCA::computePixelAlignment):
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::rectForTileIndex):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::needsPixelAligment):
- rendering/RenderLayerBacking.h:
- 8:31 AM Changeset in webkit [169160] by
-
- 3 edits2 adds in trunk
REGRESSION (r168046): Invalid layout in WebCore::RenderBox::containingBlockLogicalWidthForPositioned
https://bugs.webkit.org/show_bug.cgi?id=132933
Reviewed by Darin Adler.
Source/WebCore:
Invalid layout is performed when calling containingBlockLogicalWidthForPositioned for a RenderTableSection object.
Test: fast/multicol/newmulticol/table-section-crash.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
LayoutTests:
Added test for crash caused by invalid layout for RenderTableSection.
- fast/multicol/newmulticol/table-section-crash-expected.txt: Added.
- fast/multicol/newmulticol/table-section-crash.html: Added.
- 7:56 AM Changeset in webkit [169159] by
-
- 6 edits in trunk
REGRESSION(r169092 and r169102): Skip failing JSC tests on ARM64 properly
https://bugs.webkit.org/show_bug.cgi?id=133149
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-21
Reviewed by Csaba Osztrogonác.
PerformanceTests/SunSpider:
- profiler-test.yaml:
Source/JavaScriptCore:
- tests/mozilla/mozilla-tests.yaml:
LayoutTests:
- js/script-tests/function-apply-many-args.js:
- 7:43 AM Changeset in webkit [169158] by
-
- 36 edits in trunk/LayoutTests
Unreviewed EFL gardening
Rebaseline test expectations after r169048.
- platform/efl/css1/box_properties/float_on_text_elements-expected.txt:
- platform/efl/css1/text_properties/text_indent-expected.txt:
- platform/efl/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
- platform/efl/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
- platform/efl/css2.1/t100801-c544-valgn-00-a-ag-expected.txt:
- platform/efl/css2.1/t100801-c544-valgn-02-d-agi-expected.txt:
- platform/efl/css2.1/t100801-c544-valgn-03-d-agi-expected.txt:
- platform/efl/css2.1/t100801-c544-valgn-04-d-agi-expected.txt:
- platform/efl/css2.1/t1601-c547-indent-00-b-a-expected.txt:
- platform/efl/fast/block/float/026-expected.txt:
- platform/efl/fast/block/float/028-expected.txt:
- platform/efl/fast/css/empty-pseudo-class-expected.txt:
- platform/efl/fast/css/first-child-pseudo-class-expected.txt:
- platform/efl/fast/css/first-of-type-pseudo-class-expected.txt:
- platform/efl/fast/css/last-child-pseudo-class-expected.txt:
- platform/efl/fast/css/last-of-type-pseudo-class-expected.txt:
- platform/efl/fast/css/only-child-pseudo-class-expected.txt:
- platform/efl/fast/css/only-of-type-pseudo-class-expected.txt:
- platform/efl/fast/line-grid/line-align-left-edges-expected.txt:
- platform/efl/fast/multicol/column-count-with-rules-expected.txt:
- platform/efl/fast/multicol/float-multicol-expected.txt:
- platform/efl/fast/multicol/layers-in-multicol-expected.txt:
- platform/efl/fast/multicol/vertical-lr/float-multicol-expected.txt:
- platform/efl/fast/multicol/vertical-rl/float-multicol-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-1-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-10-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-2-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-3-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-4-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-5-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-6-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-7-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-8-expected.txt:
- platform/efl/fast/repaint/line-flow-with-floats-9-expected.txt:
- platform/efl/fast/text/whitespace/024-expected.txt:
- 6:08 AM Changeset in webkit [169157] by
-
- 2 edits in trunk
[CMake] Support building with Debug Fission
https://bugs.webkit.org/show_bug.cgi?id=131177
Reviewed by Philippe Normand.
- Source/cmake/OptionsCommon.cmake: add a DEBUG_FISSION option to enable usage
- 5:01 AM Changeset in webkit [169156] by
-
- 2 edits in trunk/Tools
REGRESSION(r169092): It broke run-jsc-stress tests on non Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=133145
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-21
Reviewed by Csaba Osztrogonác.
- Scripts/run-jsc-stress-tests:
- 4:55 AM Changeset in webkit [169155] by
-
- 1 edit1 add in trunk/LayoutTests
Unreviewed EFL gardening.
- platform/efl/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
Rebaseline after r169048.
- 4:03 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 2:28 AM Changeset in webkit [169154] by
-
- 2 edits1 add in trunk/LayoutTests
[GTK] Unreviewed GTK gardening
Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-05-21
- platform/gtk/TestExpectations: Report and mark new tests failing.
- platform/gtk/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
Rebaseline after r169048.
- 2:11 AM Changeset in webkit [169153] by
-
- 2 edits in trunk/Source/WebCore
[EFL] Ensure EGLOffScreenContext::initialize calls platformMakeCurrent on the surface
https://bugs.webkit.org/show_bug.cgi?id=124832
Reviewed by Antonio Gomes.
The original code was only calling platformMakeCurrent when the
GL_EXT_robustness extension is supported: the alternate code path
would only create a context, but it wouldn't make that context
current. This patch ensures platformMakeCurrent is also called for
the alternate code path, and, if it fails to make the context
current, will destroy the context. Effectively, this makes both
code paths behave in the same way.
- platform/graphics/surfaces/egl/EGLContext.cpp:
(WebCore::EGLOffScreenContext::initialize):
- 1:12 AM Changeset in webkit [169152] by
-
- 2 edits in trunk/Source/WebKit2
[WebKit2] Cleanup the build from unused variable in WebProcess module
https://bugs.webkit.org/show_bug.cgi?id=133062
Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-05-21
Reviewed by Csaba Osztrogonác.
Fix unused parameter by using UNUSED_PARAM macro
- WebProcess/UserContent/WebUserContentController.cpp:
(WebKit::WebUserContentController::addUserScriptMessageHandlers):
(WebKit::WebUserContentController::removeUserScriptMessageHandler):
May 20, 2014:
- 11:55 PM Changeset in webkit [169151] by
-
- 7 edits in trunk/Source
Rolled out <http://trac.webkit.org/changeset/166184>
https://bugs.webkit.org/show_bug.cgi?id=133144
Reviewed by Gavin Barraclough.
It caused a performance regression.
- heap/BlockAllocator.cpp:
(JSC::BlockAllocator::blockFreeingThreadStartFunc):
../WTF:
- wtf/FastMalloc.cpp:
(WTF::TCMalloc_PageHeap::runScavengerThread):
- wtf/Threading.h:
- wtf/ThreadingPthreads.cpp:
(WTF::createThreadInternal):
(WTF::setCurrentThreadQOSUtility): Deleted.
- wtf/ThreadingWin.cpp:
(WTF::setCurrentThreadQOSUtility): Deleted.
- 11:01 PM Changeset in webkit [169150] by
-
- 5 edits in trunk/Source
Versioning.
- 10:58 PM Changeset in webkit [169149] by
-
- 1 copy in tags/Safari-538.36
New Tag.
- 10:16 PM Changeset in webkit [169148] by
-
- 10 edits1 add in branches/ftlopt/Source/JavaScriptCore
[ftlopt] A StructureSet with one element should only require one word and no allocation
https://bugs.webkit.org/show_bug.cgi?id=133014
Reviewed by Oliver Hunt.
This makes it more efficient to use StructureSet in situations where the common case is
just one structure.
I also took the opportunity to use the same set terminology we use in BitVector: merge,
filter, exclude, contains, etc.
Eventually, this will be used to implement StructureAbstractValue as well.
- CMakeLists.txt:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- bytecode/StructureSet.cpp: Added.
(JSC::StructureSet::StructureSet):
(JSC::StructureSet::operator=):
(JSC::StructureSet::clear):
(JSC::StructureSet::add):
(JSC::StructureSet::remove):
(JSC::StructureSet::contains):
(JSC::StructureSet::merge):
(JSC::StructureSet::filter):
(JSC::StructureSet::exclude):
(JSC::StructureSet::isSubsetOf):
(JSC::StructureSet::overlaps):
(JSC::StructureSet::operator==):
(JSC::StructureSet::speculationFromStructures):
(JSC::StructureSet::arrayModesFromStructures):
(JSC::StructureSet::dumpInContext):
(JSC::StructureSet::dump):
(JSC::StructureSet::addOutOfLine):
(JSC::StructureSet::containsOutOfLine):
(JSC::StructureSet::copyFrom):
(JSC::StructureSet::OutOfLineList::create):
(JSC::StructureSet::OutOfLineList::destroy):
- bytecode/StructureSet.h:
(JSC::StructureSet::StructureSet):
(JSC::StructureSet::~StructureSet):
(JSC::StructureSet::onlyStructure):
(JSC::StructureSet::isEmpty):
(JSC::StructureSet::size):
(JSC::StructureSet::at):
(JSC::StructureSet::operator[]):
(JSC::StructureSet::last):
(JSC::StructureSet::OutOfLineList::list):
(JSC::StructureSet::OutOfLineList::OutOfLineList):
(JSC::StructureSet::deleteStructureListIfNecessary):
(JSC::StructureSet::isThin):
(JSC::StructureSet::pointer):
(JSC::StructureSet::singleStructure):
(JSC::StructureSet::structureList):
(JSC::StructureSet::set):
(JSC::StructureSet::clear): Deleted.
(JSC::StructureSet::add): Deleted.
(JSC::StructureSet::addAll): Deleted.
(JSC::StructureSet::remove): Deleted.
(JSC::StructureSet::contains): Deleted.
(JSC::StructureSet::containsOnly): Deleted.
(JSC::StructureSet::isSubsetOf): Deleted.
(JSC::StructureSet::overlaps): Deleted.
(JSC::StructureSet::singletonStructure): Deleted.
(JSC::StructureSet::speculationFromStructures): Deleted.
(JSC::StructureSet::arrayModesFromStructures): Deleted.
(JSC::StructureSet::operator==): Deleted.
(JSC::StructureSet::dumpInContext): Deleted.
(JSC::StructureSet::dump): Deleted.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::emitPrototypeChecks):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
- dfg/DFGNode.h:
(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
- dfg/DFGTypeCheckHoistingPhase.cpp:
(JSC::DFG::TypeCheckHoistingPhase::noticeStructureCheck):
- 9:59 PM Changeset in webkit [169147] by
-
- 1 copy in tags/Safari-538.34.44
New Tag.
- 9:08 PM Changeset in webkit [169146] by
-
- 11 edits in trunk/Source/WebCore
[Mac] DataCues do not work properly when rewinding video
https://bugs.webkit.org/show_bug.cgi?id=133138
<rdar://problem/16979086>
Reviewed by Eric Carlson.
Make the TrackPrivateBase responsible for knowing if a type of track needs a non-zero
startTimeVariance value.
Also, correct a bug in the equality test for DataCue objects.
- html/track/DataCue.cpp:
(WebCore::DataCue::isEqual): Handle the JSValue data types consistently, so that we don't attempt
to compare a JSNull against a default JSValue object.
- html/track/InbandTextTrack.cpp:
(WebCore::InbandTextTrack::startTimeVariance): Added.
- html/track/InbandTextTrack.h:
- html/track/TextTrack.cpp:
(WebCore::TextTrack::hasCue): Use new startTimeVariance method location.
- html/track/TextTrack.h:
(WebCore::TextTrack::startTimeVariance): Added.
- html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::hasEquivalentStartTime): Use new startTimeVariance location.
- html/track/TextTrackCue.h:
(WebCore::TextTrackCue::startTimeVariance): Deleted.
- html/track/TextTrackCueGeneric.h:
- platform/graphics/TrackPrivateBase.h:
(WebCore::TrackPrivateBase::startTimeVariance): Added.
- platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
- 8:49 PM Changeset in webkit [169145] by
-
- 6 edits1 add in trunk/Source/JavaScriptCore
DFG prediction propagation should agree with fixup phase over the return type of GetByVal
https://bugs.webkit.org/show_bug.cgi?id=133134
Reviewed by Mark Hahnenberg.
Make prediction propagator use ArrayMode refinement to decide the return type.
Also introduce a heap prediction intrinsic that allows us to test weird corner cases
like this. The only way we'll see a mismatch like this in the real world is probably
through a gnarly race condition.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
- dfg/DFGNode.h:
(JSC::DFG::Node::setHeapPrediction):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- jsc.cpp:
(GlobalObject::finishCreation):
(functionFalse1):
(functionFalse2):
(functionUndefined1):
(functionUndefined2):
(functionFalse): Deleted.
(functionOtherFalse): Deleted.
(functionUndefined): Deleted.
- runtime/Intrinsic.h:
- tests/stress/get-by-val-double-predicted-int.js: Added.
(foo):
- 6:55 PM Changeset in webkit [169144] by
-
- 1 copy in tags/Safari-538.34.9
New tag.
- 5:44 PM Changeset in webkit [169143] by
-
- 42 edits1 copy14 adds in branches/ftlopt
[ftlopt] DFG bytecode parser should turn GetById with nothing but a Getter stub as stuff+handleCall, and handleCall should be allowed to inline if it wants to
https://bugs.webkit.org/show_bug.cgi?id=133105
Reviewed by Michael Saboff.
Source/JavaScriptCore:
- GetByIdStatus now knows about getters and can report intelligent things about them. As is usually the case with how we do these things, GetByIdStatus knows more about getters than the DFG can actually handle: it'll report details about polymorphic getter calls even though the DFG won't be able to handle those. This is fine; the DFG will see those statuses and bail to a generic slow path.
- The DFG::ByteCodeParser now knows how to set up and do handleCall() for a getter call. This can, and usually does, result in inlining of getters!
- CodeOrigin and OSR exit know about inlined getter calls. When you OSR out of an inlined getter, we set the return PC to a getter return thunk that fixes up the stack. We use the usual offset-true-return-PC trick, where OSR exit places the true return PC of the getter's caller as a phony argument that only the thunk knows how to find.
- Removed a bunch of dead monomorphic chain support from StructureStubInfo.
- A large chunk of this change is dragging GetGetterSetterByOffset, GetGetter, and GetSetter through the DFG and FTL. GetGetterSetterByOffset is like GetByOffset except that we know that we're returning a GetterSetter cell. GetGetter and GetSetter extract the getter, or setter, from the GetterSetter.
This is a ~2.5x speed-up on the getter microbenchmarks that we already had. So far none
of the "real" benchmarks exercise getters enough for this to matter. But I noticed that
some of the variants of the Richards benchmark in other languages - for example
Wolczko's Java translation of a C++ translation of Deutsch's Smalltalk version - use
getters and setters extensively. So, I created a getter/setter JavaScript version of
Richards and put it in regress/script-tests/getter-richards.js. That sees about a 2.4x
speed-up from this patch, which is very reassuring.
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::findStubInfo):
- bytecode/CodeBlock.h:
- bytecode/CodeOrigin.cpp:
(WTF::printInternal):
- bytecode/CodeOrigin.h:
(JSC::InlineCallFrame::specializationKindFor):
- bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFor):
(JSC::GetByIdStatus::computeForStubInfo):
(JSC::GetByIdStatus::makesCalls):
(JSC::GetByIdStatus::computeForChain): Deleted.
- bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::makesCalls): Deleted.
- bytecode/GetByIdVariant.cpp:
(JSC::GetByIdVariant::~GetByIdVariant):
(JSC::GetByIdVariant::GetByIdVariant):
(JSC::GetByIdVariant::operator=):
(JSC::GetByIdVariant::dumpInContext):
- bytecode/GetByIdVariant.h:
(JSC::GetByIdVariant::GetByIdVariant):
(JSC::GetByIdVariant::callLinkStatus):
- bytecode/PolymorphicGetByIdList.cpp:
(JSC::GetByIdAccess::fromStructureStubInfo):
(JSC::PolymorphicGetByIdList::from):
- bytecode/SpeculatedType.h:
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::visitWeakReferences):
- bytecode/StructureStubInfo.h:
(JSC::isGetByIdAccess):
(JSC::StructureStubInfo::initGetByIdChain): Deleted.
- dfg/DFGAbstractHeap.h:
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parse):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::getGetterSetterByOffsetLoadElimination):
(JSC::DFG::CSEPhase::getInternalFieldLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::CSEPhase::getTypedArrayByteOffsetLoadElimination): Deleted.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkFunction):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasStorageAccessData):
- dfg/DFGNodeType.h:
- dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::reifyInlinedCallFrames):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLAbstractHeapRepository.cpp:
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLink.cpp:
(JSC::FTL::link):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetGetter):
(JSC::FTL::LowerDFGToLLVM::compileGetSetter):
- jit/AccessorCallJITStubRoutine.h:
- jit/JIT.cpp:
(JSC::JIT::assertStackPointerOffset):
(JSC::JIT::privateCompile):
- jit/JIT.h:
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_id):
- jit/ThunkGenerators.cpp:
(JSC::arityFixupGenerator):
(JSC::baselineGetterReturnThunkGenerator):
(JSC::baselineSetterReturnThunkGenerator):
(JSC::arityFixup): Deleted.
- jit/ThunkGenerators.h:
- runtime/CommonSlowPaths.cpp:
(JSC::setupArityCheckData):
- tests/stress/exit-from-getter.js: Added.
- tests/stress/poly-chain-getter.js: Added.
(Cons):
(foo):
(test):
- tests/stress/poly-chain-then-getter.js: Added.
(Cons1):
(Cons2):
(foo):
(test):
- tests/stress/poly-getter-combo.js: Added.
(Cons1):
(Cons2):
(foo):
(test):
(.test):
- tests/stress/poly-getter-then-chain.js: Added.
(Cons1):
(Cons2):
(foo):
(test):
- tests/stress/poly-getter-then-self.js: Added.
(foo):
(test):
(.test):
- tests/stress/poly-self-getter.js: Added.
(foo):
(test):
(getter):
- tests/stress/poly-self-then-getter.js: Added.
(foo):
(test):
- tests/stress/weird-getter-counter.js: Added.
(foo):
(test):
Source/WTF:
- wtf/Bag.h:
(WTF::Bag::iterator::operator!=):
LayoutTests:
- js/regress/getter-no-activation-expected.txt: Added.
- js/regress/getter-no-activation.html: Added.
- js/regress/script-tests/getter-no-activation.js: Added.
- js/regress/getter-richards-expected.txt: Added.
- js/regress/getter-richards.html: Added.
- js/regress/script-tests/getter-richards.js: Added.
- 5:13 PM Changeset in webkit [169142] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (WK2): Tapping on the input field in duckduckgo.com shows the keyboard but not the caret.
https://bugs.webkit.org/show_bug.cgi?id=133140
<rdar://problem/16980898>
Reviewed by Benjamin Poulain.
When a page focuses a field on load, we receive the call to startAssistingNode
but we don't create a text interaction assistant if the focus is not originated
by a user action. Upon receiving the selection change notification we don't
call the text interaction assistant, since we don't have one, but we do call
the web selection assistant. We don't have any valid rects for web selection
and we clear the selection on the page, causing the caret not to appear and
the typing to have no effect.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _updateChangedSelection]):
- 5:07 PM Changeset in webkit [169141] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Rollout r169076.
- 5:03 PM Changeset in webkit [169140] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Merge r168974.
- 3:55 PM Changeset in webkit [169139] by
-
- 15 edits in trunk/Source
Watchdog timer should be lazily allocated
https://bugs.webkit.org/show_bug.cgi?id=133135
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
We incur a noticeable amount of overhead on some benchmarks due to checking if the Watchdog ever fired.
There is no reason to do this checking if we never activated the Watchdog, which can only be done through
JSContextGroupSetExecutionTimeLimit or JSContextGroupClearExecutionTimeLimit.
By allocating the Watchdog lazily on the VM we can avoid all of the associated overhead when we don't use
these two API functions (which is true of most clients).
- API/JSContextRef.cpp:
(JSContextGroupSetExecutionTimeLimit):
(JSContextGroupClearExecutionTimeLimit):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_loop_hint):
(JSC::JIT::emitSlow_op_loop_hint):
- jit/JITOperations.cpp:
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
- runtime/VM.h:
- runtime/Watchdog.cpp:
(JSC::Watchdog::Scope::Scope): Deleted.
(JSC::Watchdog::Scope::~Scope): Deleted.
- runtime/Watchdog.h:
(JSC::Watchdog::Scope::Scope):
(JSC::Watchdog::Scope::~Scope):
Source/WebCore:
No new tests.
We incur a noticeable amount of overhead on some benchmarks due to checking if the Watchdog ever fired.
There is no reason to do this checking if we never activated the Watchdog, which can only be done through
JSContextGroupSetExecutionTimeLimit or JSContextGroupClearExecutionTimeLimit.
By allocating the Watchdog lazily on the VM we can avoid all of the associated overhead when we don't use
these two API functions (which is true of most clients).
- bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
- bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::isExecutionTerminating):
- 3:54 PM Changeset in webkit [169138] by
-
- 5 edits in branches/safari-537.77-branch/Source
Versioning.
- 3:22 PM Changeset in webkit [169137] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r169114.
- 3:14 PM Changeset in webkit [169136] by
-
- 1 copy in branches/safari-537.77-branch
New Branch.
- 2:48 PM Changeset in webkit [169135] by
-
- 6 edits in branches/safari-538.34-branch
Merge r169094.
- 2:03 PM Changeset in webkit [169134] by
-
- 13 edits in trunk/Source
[Mac] Allow popup menus to override default appearance
https://bugs.webkit.org/show_bug.cgi?id=133129
Reviewed by Tim Horton.
Source/WebCore:
WebKitSystemInterface's WKPopupMenu has a flag to hide
the arrows at the end of a popup-menu (e.g. <select>).
Expose that via adding a hasDefaultAppearance flag to
PopupMenuStyle, which then passes it on to WKSI.
- platform/PopupMenuStyle.h:
(WebCore::PopupMenuStyle::PopupMenuStyle): New flag in constructor.
(WebCore::PopupMenuStyle::hasDefaultAppearance): New flag.
- platform/mac/WebCoreSystemInterface.h: wkPopupMenu signature has changed to accept
the new flag.
- platform/mac/WebCoreSystemInterface.mm: Ditto.
- rendering/RenderMenuList.cpp:
(RenderMenuList::itemStyle): Pass in true as default appearance when creating
the PopupMenuStyle. We don't need it.
(RenderMenuList::menuStyle): In this case we pass in the negated value of
style().hasAppearance(), which indicates if we are overriding the built-in drawing.
- rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::menuStyle): Use true as the default value.
Source/WebKit/mac:
Replace the call to wkPopupMenuWithSize with wkPopupMenu, now
with extra parameters to indicate the control size and whether
or not to draw the arrows at the end.
- WebCoreSupport/PopupMenuMac.mm:
(PopupMenuMac::show):
Source/WebKit2:
Add an extra "hideArrows" flag to PlatformPopupMenuData
and replace the call to WKPopupMenuWithSize with WKPopupMenu.
- Shared/PlatformPopupMenuData.cpp: Encode and decode the new data value.
(WebKit::PlatformPopupMenuData::encode):
(WebKit::PlatformPopupMenuData::decode):
- Shared/PlatformPopupMenuData.h: Add hideArrows boolean.
- UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::showPopupMenu):
- WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
(WebKit::WebPopupMenu::setUpPlatformData): The hideArrows flag is
true if we don't have the default appearance.
- 1:59 PM Changeset in webkit [169133] by
-
- 4 edits in trunk/WebKitLibraries
[Mac] Allow popup menus to override default appearance
https://bugs.webkit.org/show_bug.cgi?id=133129
Reviewed by Tim Horton.
Add a new parameter to WKPopupMenu.
- WebKitSystemInterface.h:
- libWebKitSystemInterfaceMavericks.a:
- libWebKitSystemInterfaceMountainLion.a:
- 1:57 PM Changeset in webkit [169132] by
-
- 2 edits in branches/safari-538.34-branch/Source/JavaScriptCore
Merge r169094.
- 1:57 PM Changeset in webkit [169131] by
-
- 2 edits in trunk/Source/WTF
[Mac] AVAssets are never destroyed; lack of an autorelease pool when calling callOnMainThread.
https://bugs.webkit.org/show_bug.cgi?id=133130
Reviewed by Geoff Garen.
Wrap the function to be called in an autorelease pool, so that autoreleased objects are cleaned
up immediately after the end of the function.
- wtf/mac/MainThreadMac.mm:
(WTF::timerFired):
- 1:52 PM Changeset in webkit [169130] by
-
- 8 edits in trunk/Source
[Mac] do not deactivate an audio session that has running I/O
https://bugs.webkit.org/show_bug.cgi?id=133127
Reviewed by Jer Noble.
Source/WebCore:
- page/Settings.h:
(WebCore::Settings::setShouldManageAudioSessionCategory): Renamed from setShouldManageAudioSession.
(WebCore::Settings::shouldManageAudioSessionCategory): Renamed from shouldManageAudioSession.
(WebCore::Settings::setShouldManageAudioSession): Deleted.
(WebCore::Settings::shouldManageAudioSession): Deleted.
- platform/audio/mac/MediaSessionManagerMac.cpp:
(MediaSessionManager::updateSessionState): Don't deactivate the session if there are any
Video or Audio sessions.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): Drive-by change to log errors
returned by -statusOfValueForKey:error: in debug builds.
Source/WebKit/mac:
- WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]): Settings::setShouldManageAudioSession
renamed to setShouldManageAudioSessionCategory, deal with it.
Source/WebKit2:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Settings::setShouldManageAudioSession renamed to
setShouldManageAudioSessionCategory, deal with it.
- 1:36 PM Changeset in webkit [169129] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION: All non-mainframe scrollbars don't paint after r169065
https://bugs.webkit.org/show_bug.cgi?id=133132
-and corresponding-
<rdar://problem/16968850>
Reviewed by Geoff Garen.
We should not universally return true here. This feature will only work for
scrollbars with layers.
- platform/ScrollableArea.h:
- platform/Scrollbar.cpp:
(WebCore::Scrollbar::supportsUpdateOnSecondaryThread):
- 1:34 PM Changeset in webkit [169128] by
-
- 7 edits4 adds in trunk
Element within flattened frame may update its scroll state during the layout phase of the wrong RenderView
https://bugs.webkit.org/show_bug.cgi?id=133013
<rdar://problem/16760154>
Reviewed by David Hyatt.
Source/WebCore:
Fixes an issue where the scroll state of an element may be updated during the layout of the wrong
RenderView. In particular, the scroll state of an element inside a CSS flex box in a flattened
frame f is updated during the layout of the RenderView associated with the parent frame of f instead
of during the layout of the RenderView associated with f.
The layout machinery assumes that the scroll state of each scrollable element is updated before the
completion of layout for its associated RenderView. Currently we have logic to defer updating the scroll
state of a scrollable element until completion of recursive layout. For a page with a flattened frame, we
defer such updates until completion of layout for all RenderViews along the ancestor frame hierarchy of
each flattened frame regardless of the RenderView associated with the element that originated the
deferred scroll state request. Instead, only the RenderView associated with the element that deferred its
scroll state update should dispatch the scroll state update.
Tests: fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-and-needs-full-repaint-crash.html
fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-assertion-failure.html
- rendering/RenderBlock.cpp: Removed WTF::-prefix in typedef definition for ContinuationOutlineTableMap.
(WebCore::UpdateScrollInfoAfterLayoutTransaction::UpdateScrollInfoAfterLayoutTransaction): Added; a struct
that represents a RenderView v, nested transaction count, and a list of RenderBlocks in v that will need
to have their scroll state updated.
(WebCore::updateScrollInfoAfterLayoutTransactionStack): Added; returns the global stack of transactions.
(WebCore::RenderBlock::willBeDestroyed): Call removeFromUpdateScrollInfoAfterLayoutTransaction(), which
was formerly named as removeFromDelayedUpdateScrollInfoSet.
(WebCore::currentUpdateScrollInfoAfterLayoutTransaction): Added; returns the top-most transaction in the
global stack.
(WebCore::RenderBlock::beginUpdateScrollInfoAfterLayoutTransaction): Modified as appropriate to make use
of the global stack of transactions; formerly named startDelayUpdateScrollInfo.
(WebCore::RenderBlock::endAndCommitUpdateScrollInfoAfterLayoutTransaction): Modified as appropriate to
make use of the global stack of transactions; formerly named finishDelayUpdateScrollInfo.
(WebCore::RenderBlock::removeFromUpdateScrollInfoAfterLayoutTransaction): Modified as appropriate to make
use of the global stack of transactions; formerly named removeFromDelayedUpdateScrollInfoSet.
(WebCore::RenderBlock::updateScrollInfoAfterLayout): Modified as appropriate to make use of the global
stack of transactions.
(WebCore::RenderBlock::layout): Ditto.
(WebCore::RenderBlock::startDelayUpdateScrollInfo): Deleted.
(WebCore::RenderBlock::finishDelayUpdateScrollInfo): Deleted.
(WebCore::RenderBlock::removeFromDelayedUpdateScrollInfoSet): Deleted.
- rendering/RenderBlock.h:
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::willBeDestroyed): Call removeFromUpdateScrollInfoAfterLayoutTransaction(), which
was formerly named removeFromDelayedUpdateScrollInfoSet.
- rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): Call {begin, end}UpdateScrollInfoAfterLayoutTransaction(),
which was formerly named {start, end}DelayUpdateScrollInfo.
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): Ditto.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Ditto.
LayoutTests:
Added tests to ensure that that we update the scroll state of an element during the layout phase of its
associated RenderView.
- fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-and-needs-full-repaint-crash-expected.txt: Added.
- fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-and-needs-full-repaint-crash.html: Added.
- fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-assertion-failure-expected.txt: Added.
- fast/frames/flattening/scrollable-flexbox-inside-iframe-with-zero-height-assertion-failure.html: Added.
- 1:21 PM Changeset in webkit [169127] by
-
- 6 edits in branches/safari-538.34.5-branch
Merged r168599.
- 1:18 PM Changeset in webkit [169126] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r169114.
- 1:02 PM Changeset in webkit [169125] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 12:31 PM Changeset in webkit [169124] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (r169065): Mountain Lion run-api-tests failures: ASSERTION FAILED:
Uncaught exception - -[NSRegularLegacyScrollerImp setPresentationValue:]:
unrecognized selector sent to instance 0x7ff51aa38000
https://bugs.webkit.org/show_bug.cgi?id=133121
Reviewed by Tim Horton.
- platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::setPaintCharacteristicsForScrollbar):
- 12:13 PM Changeset in webkit [169123] by
-
- 12 edits in trunk/Source
REGRESSION (r169063) Fixed and sticky nodes misplaced on scrolling sometimes
https://bugs.webkit.org/show_bug.cgi?id=133106
<rdar://problem/16967648>
Reviewed by Sam Weinig.
Fix regression from r169063. That commit removed scrolledContentsLayers from
frame scrolling nodes, but they do actually use them.
So put them back; not in the base class, because they have a somewhat different
meaning for overflow scrolling and frame scrolling.
Source/WebCore:
- WebCore.exp.in:
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::AsyncScrollingCoordinator::updateFrameScrollingNode):
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::updateFrameScrollingNode):
- page/scrolling/ScrollingStateFrameScrollingNode.cpp:
(WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode):
(WebCore::ScrollingStateFrameScrollingNode::setScrolledContentsLayer):
- page/scrolling/ScrollingStateFrameScrollingNode.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
Source/WebKit2:
- Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateFrameScrollingNode>::encode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
- 11:44 AM Changeset in webkit [169122] by
-
- 6 edits in trunk
[Mac] WebProcess doesn't follow localization of UI process when run as a service
https://bugs.webkit.org/show_bug.cgi?id=133126
<rdar://problem/13396515>
<rdar://problem/16561084>
Reviewed by Sam Weinig and Tim Horton.
Source/WebKit2:
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
(WebKit::handleXPCBootstrap):
(main):
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
(WebKit::handleXPCBootstrap):
(main):
Set localization very early in process lifetime (in development builds, that's
even before WebKit framework is loaded).
- UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::connectToService):
Pass UI process localization to the service, computing it in the same way we do
for child processes.
Tools:
- WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
(WTR::InjectedBundle::platformInitialize): It was too late to override language
here, and it's not necessary any more. Keeping the code for older OS versions in
case it did have effect in some code paths.
- 11:07 AM Changeset in webkit [169121] by
-
- 8 edits21 adds in trunk
JSArray::shiftCountWith* could be more efficient
https://bugs.webkit.org/show_bug.cgi?id=133011
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
Our current implementations of shiftCountWithAnyIndexingType and shiftCountWithArrayStorage
are scared of the presence of any holes in the array. We can mitigate this somewhat by enabling
them to correctly handle holes, thus avoiding the slowest of slow paths in most cases.
- runtime/ArrayStorage.h:
(JSC::ArrayStorage::indexingHeader):
(JSC::ArrayStorage::length):
(JSC::ArrayStorage::hasHoles):
- runtime/IndexingHeader.h:
(JSC::IndexingHeader::publicLength):
(JSC::IndexingHeader::from):
- runtime/JSArray.cpp:
(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::unshiftCountWithArrayStorage):
- runtime/JSArray.h:
(JSC::JSArray::shiftCountForShift):
(JSC::JSArray::shiftCountForSplice):
(JSC::JSArray::shiftCount):
- runtime/Structure.cpp:
(JSC::Structure::holesRequireSpecialBehavior):
- runtime/Structure.h:
LayoutTests:
Added a performance regression test which tests the contiguous shift case. We're ~85% faster
on this microbenchmark with this patch.
Also added a bunch of tests for each permutation of contiguous/array storage with no holes, holes,
and holes that require special behavior (e.g. indexed properties in the prototype chain).
- js/array-storage-splice-holes-expected.txt: Added.
- js/array-storage-splice-holes-require-special-behavior-expected.txt: Added.
- js/array-storage-splice-holes-require-special-behavior.html: Added.
- js/array-storage-splice-holes.html: Added.
- js/array-storage-splice-no-holes-expected.txt: Added.
- js/array-storage-splice-no-holes.html: Added.
- js/contiguous-splice-holes-expected.txt: Added.
- js/contiguous-splice-holes-require-special-behavior-expected.txt: Added.
- js/contiguous-splice-holes-require-special-behavior.html: Added.
- js/contiguous-splice-holes.html: Added.
- js/contiguous-splice-no-holes-expected.txt: Added.
- js/contiguous-splice-no-holes.html: Added.
- js/regress/array-splice-contiguous-expected.txt: Added.
- js/regress/array-splice-contiguous.html: Added.
- js/regress/script-tests/array-splice-contiguous.js: Added.
(foo):
- js/script-tests/array-storage-splice-holes-require-special-behavior.js: Added.
- js/script-tests/array-storage-splice-holes.js: Added.
- js/script-tests/array-storage-splice-no-holes.js: Added.
- js/script-tests/contiguous-splice-holes-require-special-behavior.js: Added.
- js/script-tests/contiguous-splice-holes.js: Added.
- js/script-tests/contiguous-splice-no-holes.js: Added.
- 10:38 AM Changeset in webkit [169120] by
-
- 3 edits2 adds in trunk
REGRESSION: [CSS Regions] Content flowed directly into the flow thread that ends up in the second region is not properly repainted
https://bugs.webkit.org/show_bug.cgi?id=133111
Reviewed by David Hyatt.
Source/WebCore:
When computing the repaint rect of an element flowed into a flow thread, if the element is flowed directly into
the flow thread (meaning its containing block is the flow thread itself), the region's position within the flow
must no longer be taken into consideration, because its already included in the element's |topLeft|.
Test: fast/regions/hover-element-flowed-second-region.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::computeRectForRepaint):
LayoutTests:
Added test for the correct repaint of an element flowed directly into the second region of a flow thread.
- fast/regions/hover-element-flowed-second-region-expected.html: Added.
- fast/regions/hover-element-flowed-second-region.html: Added.
- 10:29 AM Changeset in webkit [169119] by
-
- 2 edits in trunk/Source/WebCore
Fix web timing assertion failure.
https://bugs.webkit.org/show_bug.cgi?id=133094
<rdar://problem/16966032>
Patch by Alex Christensen <achristensen@webkit.org> on 2014-05-20
Reviewed by Alexey Proskuryakov.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::getConnectionTimingData):
Set requestStart and responseStart to 0 instead of -1 to match the
ResourceLoadTiming constructor and prevent the assertion failure in
PerformanceTiming::responseStart.
- 10:13 AM Changeset in webkit [169118] by
-
- 3 edits2 adds in trunk
Only set title on SVG documents
https://bugs.webkit.org/show_bug.cgi?id=133068
Patch by Prashant Hiremath <hiremathprashants@gmail.com> on 2014-05-20
Reviewed by Dirk Schulze.
Source/WebCore:
Test: svg/custom/html_document_set_title.html
- svg/SVGTitleElement.cpp:
(WebCore::SVGTitleElement::insertedInto):
(WebCore::SVGTitleElement::removedFrom):
(WebCore::SVGTitleElement::childrenChanged):
LayoutTests:
- svg/custom/html_document_set_title-expected.txt: Added.
- svg/custom/html_document_set_title.html: Added.
- 10:08 AM Changeset in webkit [169117] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r169105): fast/regions/cssom/region-range-for-box-crash.html is more crashy than before
https://bugs.webkit.org/show_bug.cgi?id=133124
- TestExpectations: Skip it.
- 10:06 AM Changeset in webkit [169116] by
-
- 2 edits in trunk/LayoutTests
Skip http/tests/inspector/replay/document-last-modified-fallback-value.html since it asserts.
- 10:01 AM Changeset in webkit [169115] by
-
- 3 edits in trunk/Source/WebCore
[Curl] Invalid content in cache file, causes broken rendering.
https://bugs.webkit.org/show_bug.cgi?id=133069
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-05-20
Reviewed by Brent Fulgham.
When data for a url is received as multiple parts, the cache file for the url is truncated when opened for writing,
and will only contain the last part of data received.
This is fixed by only opening the file once, and close it after all data has been received.
- platform/network/curl/CurlCacheEntry.cpp:
(WebCore::CurlCacheEntry::CurlCacheEntry): Initialize cache file handle member.
(WebCore::CurlCacheEntry::~CurlCacheEntry): Close cache file.
(WebCore::CurlCacheEntry::saveCachedData): Only open cache file once to avoid truncating.
(WebCore::CurlCacheEntry::didFail): Close cache file.
(WebCore::CurlCacheEntry::didFinishLoading): Ditto.
(WebCore::CurlCacheEntry::openContentFile): Added method to open cache file.
(WebCore::CurlCacheEntry::closeContentFile): Added method to close cache file.
- platform/network/curl/CurlCacheEntry.h: Added file handle member, and methods to open and close cache file.
- 9:59 AM Changeset in webkit [169114] by
-
- 2 edits in trunk/Source/WebKit2
Fix a header comment
https://bugs.webkit.org/show_bug.cgi?id=133123
<rdar://problem/16973783>
Reviewed by Geoffrey Garen.
- UIProcess/API/Cocoa/WKUserContentController.h:
- 9:23 AM Changeset in webkit [169113] by
-
- 9 edits in trunk/Tools
Move WebKitTestRunner to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=133081
Reviewed by Daniel Bates.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didCreatePage):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::runTest):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
- WebKitTestRunner/TestInvocation.h:
- WebKitTestRunner/WorkQueueManager.cpp:
(WTR::WorkQueueManager::processWorkQueue):
(WTR::WorkQueueManager::enqueue):
- WebKitTestRunner/WorkQueueManager.h:
- 8:20 AM Changeset in webkit [169112] by
-
- 5 edits in trunk
[GTK] WebKitWebPage::send-request always pass a valid pointer for redirected response
https://bugs.webkit.org/show_bug.cgi?id=133119
Reviewed by Sergio Villar Senin.
Source/WebKit2:
The problem is that we were checking whether the passed in
WKURLResponseRef is NULL or not, but it's always a valid object
that can contain a NULL WebCore::ResourceResponse.
- WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame): Pass NULL as redirect-response
parameter of WebKitWebPage::send-request signal when the
WebCore::ResourceResponse of the passed in WKURLResponseRef is NULL.
Tools:
Check that redirect response parameter of
WebKitWebPage::send-request signal is NULL when not redirecting
and a valid WebKitURIResponse object when redirecting.
- TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
(testWebResourceSendRequest):
(serverCallback):
- TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(sendRequestCallback):
- 7:47 AM Changeset in webkit [169111] by
-
- 3 edits in trunk/LayoutTests
Make fast/dom/remove-element-with-{id|name}-that-was-inserted-on-DOMNodeRemoved.html reliable
<http://webkit.org/b/133088>
Reviewed by Alexey Proskuryakov.
- fast/dom/remove-element-with-id-that-was-inserted-on-DOMNodeRemoved.html:
- fast/dom/remove-element-with-name-that-was-inserted-on-DOMNodeRemoved.html:
- Use waitUntilDone()/notifyDone() to make the tests reliable since they use setTimeout().
- 7:34 AM Changeset in webkit [169110] by
-
- 5 edits4 adds in trunk
[CSS Regions] Block incorrectly sized when containing an unsplittable box
https://bugs.webkit.org/show_bug.cgi?id=132601
Reviewed by Antti Koivisto.
Source/WebCore:
When laying out elements in a region, when an inline element is encountered
the size of its parent must not be increased beyond the bottom of the current region,
unless if its the last region. This will ensure that the next sibling of the
inline element is correctly laid out at the top of the next region, instead
of leaving an empty space equal to the height of the overflow, as it did until now.
Tests: fast/regions/inline-block-inside-anonymous-overflow.html
fast/regions/inline-block-overflow.html
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::adjustLinePositionForPagination):
(WebCore::RenderBlockFlow::hasNextPage):
- rendering/RenderBlockFlow.h:
- rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::linkToEndLineIfNeeded):
(WebCore::RenderBlockFlow::determineStartPosition):
(WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine):
LayoutTests:
Added tests for the layout of elements following inline-block elements
that overflow their region, with and without anonymous blocks.
- fast/regions/inline-block-inside-anonymous-overflow-expected.html: Added.
- fast/regions/inline-block-inside-anonymous-overflow.html: Added.
- fast/regions/inline-block-overflow-expected.html: Added.
- fast/regions/inline-block-overflow.html: Added.
- 6:56 AM Changeset in webkit [169109] by
-
- 2 edits in trunk/Source/WebKit2
Double-tap zoom does not take obscuring insets into account
https://bugs.webkit.org/show_bug.cgi?id=133116
<rdar://problem/16765604>
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _zoomToRect:WebCore::atScale:origin:WebCore::]):
Compute the zoom target taking insets into account.
- 6:39 AM WebKitGTK/2.4.x edited by
- (diff)
- 6:15 AM Changeset in webkit [169108] by
-
- 4 edits in trunk
[GTK] Rename translation domain as WebKit2GTK-3.0
https://bugs.webkit.org/show_bug.cgi?id=132953
Reviewed by Gustavo Noronha Silva.
.:
- Source/cmake/OptionsGTK.cmake:
Source/WebCore/platform/gtk/po:
- CMakeLists.txt:
- 5:34 AM Changeset in webkit [169107] by
-
- 1 edit2 adds in trunk/LayoutTests
[CSS Regions] Add polygon tests for shapes on regions and shapes on the content flow
https://bugs.webkit.org/show_bug.cgi?id=133107
Reviewed by Mihnea Ovidenie.
- fast/regions/shape-outside-floats/regions-shape-outside-region-polygon-floats-expected.html: Added.
- fast/regions/shape-outside-floats/regions-shape-outside-region-polygon-floats.html: Added.
- 5:17 AM Changeset in webkit [169106] by
-
- 2 edits in trunk/Tools
REGRESSION(CMAKE): [GTK] Several WebKit2GTK+ unit tests are no longer built
https://bugs.webkit.org/show_bug.cgi?id=133117
Reviewed by Philippe Normand.
Bring back missing tests to the build.
- TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
- 3:57 AM Changeset in webkit [169105] by
-
- 6 edits2 adds in trunk
[CSS Regions] Crash while painting block selection gaps in regions
https://bugs.webkit.org/show_bug.cgi?id=132720
Reviewed by David Hyatt.
Source/WebCore:
The fix for WebKit bug https://bugs.webkit.org/show_bug.cgi?id=131511
allowed selection highlight to match the DOM selection when the start
and end point of the selection were in different flow threads. In order
to enable that, the selection was performed separately on view and
render flow threads, considered selection subtrees.
However, the start and end points for each selection subtree were computed
by means of Range class but it is not always possible to construct a valid
Range from two pairs of RenderObjects and offsets.
This patch keeps the substrees approach but instead of storing the endpoints
for each subtree in a Range and continuously extending the Range, it stores them
using the already available SelectionSubtreeRoot class. After the end points are
computed for each subtree and before processing the subtree selection, the end points
are adjusted in a similar fashion as the one used in FrameSelection::updateAppearance(),
to make sure we are passing the same expected information to the method implementing
the visible selection processing.
Test: fast/regions/selection-gaps-paint-crash.html
- rendering/RenderView.cpp:
(WebCore::RenderView::splitSelectionBetweenSubtrees):
- rendering/SelectionSubtreeRoot.cpp:
(WebCore::SelectionSubtreeRoot::adjustForVisibleSelection):
- rendering/SelectionSubtreeRoot.h:
(WebCore::SelectionSubtreeRoot::selectionClear):
LayoutTests:
- TestExpectations: Unskip a test that was crashing
- fast/regions/selection-gaps-paint-crash-expected.txt: Added.
- fast/regions/selection-gaps-paint-crash.html: Added.
- 2:52 AM Changeset in webkit [169104] by
-
- 41 edits in trunk/LayoutTests
[GTK] Unreviewed GTK gardening
Rebaseline affected tests by changes on integral snapping of inlines
introduced at r169048.
Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-05-20
- platform/gtk/css1/box_properties/float_on_text_elements-expected.txt:
- platform/gtk/css1/text_properties/text_indent-expected.txt:
- platform/gtk/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
- platform/gtk/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
- platform/gtk/css2.1/t100801-c544-valgn-00-a-ag-expected.txt:
- platform/gtk/css2.1/t100801-c544-valgn-02-d-agi-expected.txt:
- platform/gtk/css2.1/t100801-c544-valgn-03-d-agi-expected.txt:
- platform/gtk/css2.1/t100801-c544-valgn-04-d-agi-expected.txt:
- platform/gtk/css2.1/t1601-c547-indent-00-b-a-expected.txt:
- platform/gtk/fast/block/float/026-expected.txt:
- platform/gtk/fast/block/float/028-expected.txt:
- platform/gtk/fast/css/empty-pseudo-class-expected.txt:
- platform/gtk/fast/css/first-child-pseudo-class-expected.txt:
- platform/gtk/fast/css/first-of-type-pseudo-class-expected.txt:
- platform/gtk/fast/css/last-child-pseudo-class-expected.txt:
- platform/gtk/fast/css/last-of-type-pseudo-class-expected.txt:
- platform/gtk/fast/css/only-child-pseudo-class-expected.txt:
- platform/gtk/fast/css/only-of-type-pseudo-class-expected.txt:
- platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt:
- platform/gtk/fast/line-grid/line-align-left-edges-expected.txt:
- platform/gtk/fast/multicol/column-count-with-rules-expected.txt:
- platform/gtk/fast/multicol/float-multicol-expected.txt:
- platform/gtk/fast/multicol/layers-in-multicol-expected.txt:
- platform/gtk/fast/multicol/vertical-lr/float-multicol-expected.txt:
- platform/gtk/fast/multicol/vertical-rl/float-multicol-expected.txt:
- platform/gtk/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt:
- platform/gtk/fast/regions/repaint/line-flow-with-floats-in-regions-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-1-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-10-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-2-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-3-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-4-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-5-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-6-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-7-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-8-expected.txt:
- platform/gtk/fast/repaint/line-flow-with-floats-9-expected.txt:
- platform/gtk/fast/text/whitespace/024-expected.txt:
- platform/gtk/svg/wicd/rightsizing-grid-expected.txt:
- platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
May 19, 2014:
- 10:30 PM Changeset in webkit [169103] by
-
- 11 edits in branches/safari-537.76-branch
Merged r169098.
- 9:40 PM Changeset in webkit [169102] by
-
- 4 edits in trunk
Test gardening: skip some failing tests on not-X86.
Source/JavaScriptCore:
- tests/mozilla/mozilla-tests.yaml:
LayoutTests:
- js/script-tests/function-apply-many-args.js:
- 9:17 PM Changeset in webkit [169101] by
-
- 1 copy in tags/Safari-538.34.43
New Tag.
- 7:57 PM Changeset in webkit [169100] by
-
- 1 copy in tags/Safari-537.75.17
New Tag.
- 7:56 PM Changeset in webkit [169099] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Rollout r169074.
- 7:49 PM Changeset in webkit [169098] by
-
- 11 edits in branches/safari-537.75-branch
Merged r156116.
- 7:31 PM Changeset in webkit [169097] by
-
- 4 edits in trunk/Source/WebCore
Scrolling pages with large TiledBacking content layers creates way too many tiles
https://bugs.webkit.org/show_bug.cgi?id=133101
Reviewed by Tim Horton.
Fix the GraphicsLayerCA::adjustTiledLayerVisibleRect() logic to avoid making giant rects if the old
and new visible rects don't overlap.
- platform/graphics/TiledBacking.h:
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::adjustTiledLayerVisibleRect):
- platform/graphics/ca/mac/TileController.h:
- 7:31 PM Changeset in webkit [169096] by
-
- 3 edits in trunk/Source/WebCore
Correctly maintain the "isInWindow" state for all TiledBackings
https://bugs.webkit.org/show_bug.cgi?id=133095
Reviewed by Tim Horton.
We never updated the "isInWindow" state for TiledBacking that wasn't the RenderView's
backing. Fix it by having RenderLayerCompositor::setIsInWindow() recurse through all
layers (if necessary), updating their state. Also set the state on newly created
TiledBackings.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::layerTiledBackingUsageChanged):
(WebCore::RenderLayerCompositor::setIsInWindowForLayerIncludingDescendants):
(WebCore::RenderLayerCompositor::setIsInWindow):
(WebCore::RenderLayerCompositor::pageTiledBacking): Deleted.
- rendering/RenderLayerCompositor.h:
- 7:22 PM Changeset in webkit [169095] by
-
- 3 edits in trunk/Source/WebKit2
WebKit2/iOS: parented view should be considered hidden if app is backgrounded
https://bugs.webkit.org/show_bug.cgi?id=133099
radar://16942183
Reviewed by Simon Fraser.
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::isViewWindowActive):
- implemented in terms of isViewVisible.
- FIXME: https://bugs.webkit.org/show_bug.cgi?id=133098
(WebKit::PageClientImpl::isViewFocused):
- implemented in terms of isViewWindowActive.
- FIXME: https://bugs.webkit.org/show_bug.cgi?id=133098
(WebKit::PageClientImpl::isViewVisible):
- take UIApplication applicationState into account in determining visibility.
(WebKit::PageClientImpl::isViewVisibleOrOccluded):
- implemented in terms of isViewVisible.
(WebKit::PageClientImpl::isVisuallyIdle):
- implemented in terms of isViewVisible.
- UIProcess/ios/WKContentView.mm:
(-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::webView:]):
- register for UIApplicationDidEnterBackgroundNotification.
(-[WKContentView _applicationDidEnterBackground:]):
(-[WKContentView _applicationWillEnterForeground:]):
- when the application state changes all flags except IsInWindow may be affected.
- 7:03 PM Changeset in webkit [169094] by
-
- 2 edits in trunk/Source/JavaScriptCore
operationOptimize() should defer the GC for a while.
<https://webkit.org/b/133103>
Reviewed by Filip Pizlo.
Currently, operationOptimize() only defers the GC until its end. As a result,
a GC may be triggered just before we return from operationOptimize(), and it may
jettison the optimize codeBlock that we're planning to OSR enter into when we
return from this function. This is because the OSR entry on-ramp code hasn't
been executed yet, and hence, there is not yet a reference to this new codeBlock
from the stack, and there won't be until we've had a chance to return out of
operationOptimize() to run the OSR entry on-ramp code.
This issue is now fixed by using DeferGCForAWhile instead of DeferGC. This
ensures that the GC will be deferred until after the OSR entry on-ramp can be
executed.
- jit/JITOperations.cpp:
- 6:56 PM Changeset in webkit [169093] by
-
- 3 edits in trunk/LayoutTests
AX: VoiceOver sees the WebArea out of order when topContentInset is used
https://bugs.webkit.org/show_bug.cgi?id=133091
Unreviewed.
Make the layout test more resilient to platform differences in frame positions.
- platform/mac-wk2/accessibility/content-inset-scrollview-frame-expected.txt:
- platform/mac-wk2/accessibility/content-inset-scrollview-frame.html:
- 6:53 PM Changeset in webkit [169092] by
-
- 7 edits in trunk
Take care of some ARM64 test failures
https://bugs.webkit.org/show_bug.cgi?id=133090
Reviewed by Geoffrey Garen.
PerformanceTests/SunSpider:
- profiler-test.yaml: Skip these on not-x86.
Source/JavaScriptCore:
Constant blinding on ARM64 cannot use the scratch register.
- assembler/MacroAssembler.h:
(JSC::MacroAssembler::convertInt32ToDouble):
(JSC::MacroAssembler::branchPtr):
(JSC::MacroAssembler::storePtr):
(JSC::MacroAssembler::store64):
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::scratchRegisterForBlinding):
Tools:
- Scripts/run-jsc-stress-tests: Make it easier to conditionally skip things.
- 6:09 PM Changeset in webkit [169091] by
-
- 2 edits in trunk/Source/WebKit2
WK2 iOS: Pressing the form navigation button causes the keyboard to be dismissed.
https://bugs.webkit.org/show_bug.cgi?id=133100
<rdar://problem/16808673>
Reviewed by Benjamin Poulain.
The call to focusNextAssistedNode is the result of a user action, since
it is called when the user pressed the form navigation buttons.
Therefore we must set m_userIsInteracting to true before changing the focus
to make sure the focus change is honored.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::focusNextAssistedNode):
- 5:55 PM Changeset in webkit [169090] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Use status display for live streams
https://bugs.webkit.org/show_bug.cgi?id=133097
Reviewed by Sam Weinig.
Follow-on from https://bugs.webkit.org/show_bug.cgi?id=131390
Allow the iOS controls to use the status display field.
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.configureInlineControls): Live streams should
not have a timeline or rewind button.
- 5:45 PM Changeset in webkit [169089] by
-
- 13 edits12 adds in trunk
Text decorations do not contribute to visual overflow
https://bugs.webkit.org/show_bug.cgi?id=132773
Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-05-19
Reviewed by Antti Koivisto.
Source/WebCore:
This patch creates a function, visualOverflowForDecorations, which computes
how much visual overflow to add around a text box due to text decorations. Most of the time,
text decorations are fully contained within the text box, so the result is usually 0.
This function exists within style/InlineTextBoxStyle.cpp, which is an added file. This is
so that it can be called from setLogicalWidthForTextRun() inside RenderBlockLineLayout.cpp
and from RenderStyle::changeAffectsVisualOverflow(). The former case passes in the full
InlineTextBox and the latter case just passes in a RenderStyle (because the InlineTextBox
is unavailable.)
This patch also modifies RenderTableSection::spannedColumns() to fix an off-by-one error
that was causing table borders to not be drawn when they existed right on the edge of
a repaint rect.
Tests: fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect.html
Tests: fast/repaint/border-collapse-table-off-by-one-expected.html
- WebCore.vcxproj/WebCore.vcxproj: Adding reference to new InlineTextBoxStyle.cpp file
- WebCore.vcxproj/WebCore.vcxproj.filters: Adding reference to new InlineTextBoxStyle files
- WebCore.xcodeproj/project.pbxproj: Adding reference to new InlineTextBoxStyle files
- rendering/InlineTextBox.cpp:
(WebCore::computeUnderlineOffset): Moved to InlineTextBox.cpp
(WebCore::getWavyStrokeParameters): Moved to InlineTextBox.cpp
(WebCore::InlineTextBox::paintDecoration): Update to use newly refactored functions
- rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun): Call visualOverflowForDecorations()
- rendering/RenderTableSection.cpp:
- rendering/RenderTableSelection.cpp: Fix off-by-one error when the boundary of a repaint
rect lies exactly on top of a table column position
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeAffectsVisualOverflow): Inspects shadows and text decorations
(WebCore::RenderStyle::changeRequiresLayout): Calls changeAffectsVisualOverflow()
(WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline): Moved code from here
to changeAffectsVisualOverflow().
- rendering/style/RenderStyle.h: Function signature
- style/InlineTextBoxStyle.cpp: Added.
(WebCore::computeUnderlineOffset): Moved from InlineTextBox.cpp
(WebCore::getWavyStrokeParameters): Moved from InlineTextBox.cpp
(WebCore::extendIntToFloat): Convenience function for dealing with the fact that
underline bounding boxes use floats and GlyphOverflow uses ints
(WebCore::visualOverflowForDecorations): Given
vertical overflow bounds, possibly extend those to include location of
decorations.
- style/InlineTextBoxStyle.h: Added. Function signatures.
(WebCore::textDecorationStrokeThickness): Refactored from InlineTextBox.cpp
(WebCore::wavyOffsetFromDecoration): Refactored from InlineTextBox.cpp
- platform/graphics/Font.h:
(WebCore::GlyphOverflow::isEmpty): Convenience function
(WebCore::GlyphOverflow::extendTo): Convenience function
LayoutTests:
This first test makes sure that repaint rects are extended to include text decorations that may
lie outside of the text layout rects. It compares text with an underline to text that has
had underline applied to it in a timer.
The second test triggers an off-by-one error in collapsed table borders where a border was not
being drawn if it lay right on top of a repaint rect.
- fast/css3-text/css3-text-decoration/repaint/resources/Litherum.svg: Added. This font has a
descent of 0 (so it will not intersect underlines).
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-expected.html: Added.
Apply the underline without any timeout.
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect.html: Added.
Apply the underline with a timeout.
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-removed-expected.html: Added.
Draw text without decorations.
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-removed.html: Added.
Draw text with decorations which contribute to overflow, then remove those decorations on a timer.
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-altered-expected.html: Added.
Draw text as if the final state of the decorations had always existed.
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-altered.html: Added.
Make sure that modifying decorations that contribute to overflow redraw properly.
- fast/repaint/border-collapse-table-off-by-one-expected.html: Added.
- fast/repaint/border-collapse-table-off-by-one.html: Added. Trigger the off-by-one error in
RenderTableSection.cpp
- 5:43 PM Changeset in webkit [169088] by
-
- 2 edits in trunk/Tools
[iOS] REGRESSION (r168910): webkitdirs.pm: Be more forgiving when parsing --sdk, --device and --sim
<http://webkit.org/b/133089>
Reviewed by Darin Adler.
- Scripts/webkitdirs.pm:
(determineXcodeSDK): If both '--sdk SDKROOT' and '--sim' are
specified on the command line, we would remove the '--sdk'
arguments, but leave '--sim', potentially passing it along to
xcodebuild causing a build failure. This happens when
'old-run-webkit-tests --release --sim' invokes
build-dumprendertree when DumpRenderTree hasn't been built yet.
- 5:24 PM Changeset in webkit [169087] by
-
- 2 edits in trunk/Source/WebKit2
TelephoneNumberOverlayController should use a modern loop for text quad bounding
boxes
https://bugs.webkit.org/show_bug.cgi?id=133096
Reviewed by Anders Carlsson.
- WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:
(WebKit::textQuadsToBoundingRectForRange):
- 5:18 PM Changeset in webkit [169086] by
-
- 2 edits in trunk/Source/WebKit2
PlatformCALayerRemoteCustom properties aren't initialized to match the PlatformLayer
https://bugs.webkit.org/show_bug.cgi?id=133025
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-19
Reviewed by Simon Fraser.
- WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
Initialize PlatformCALayerRemote properties from the PlatformLayer.
- 5:01 PM Changeset in webkit [169085] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix after r169082
- platform/network/ResourceHandle.h:
Added NSDictionary declaration.
- 4:56 PM Changeset in webkit [169084] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION: Standalone images need to take topContentInset into account
https://bugs.webkit.org/show_bug.cgi?id=133092
-and corresponding-
<rdar://problem/16945791>
Reviewed by Darin Adler.
The FrameView’s size is accurate in terms of the NSWindow size, but that is not
really what the ImageDocument code is looking for here. The ImageDocument wants to
know the size of the unobscured viewport area. We should use visibleSize() for
that.
- html/ImageDocument.cpp:
(WebCore::ImageDocument::scale):
(WebCore::ImageDocument::imageFitsInWindow):
(WebCore::ImageDocument::imageClicked):
- 4:55 PM Changeset in webkit [169083] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Versioning.
- 4:45 PM Changeset in webkit [169082] by
-
- 12 edits in trunk/Source/WebCore
Collect web timing data on iOS.
https://bugs.webkit.org/show_bug.cgi?id=133075
Reviewed by Sam Weinig.
- platform/network/ResourceHandle.h:
Added setCollectsTimingData wrapper and getConnectionTimingData declarations.
getConnectionTimingData with a dictionary parameter is a private helper function.
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::start):
Call setCollectsTimingData wrapper when creating a connection to ensure that timing data is collected.
- platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
(WebCore::ResourceHandleCFURLConnectionDelegate::didReceiveResponseCallback):
- platform/network/cf/ResourceHandleCFURLConnectionDelegate.h:
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h:
- platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:
(WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveResponse):
- platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h:
Pass the CFURLConnectionRef to didReceiveResponse to get timing data from.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::getConnectionTimingData):
Moved from getTimingData to compile regardless of using CFNetwork and added wrapper with CFDictionaryRef.
(WebCore::ResourceHandle::setCollectsTimingData):
Added wrapper to call objc function from c++.
(WebCore::ResourceHandle::getTimingData):
Renamed to getConnectionTimingData.
- platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
Updated function name from getTimingData to getConnectionTimingData.
- 4:37 PM Changeset in webkit [169081] by
-
- 3 edits2 adds in trunk
AX: VoiceOver sees the WebArea out of order when topContentInset is used
https://bugs.webkit.org/show_bug.cgi?id=133091
Reviewed by Simon Fraser.
Source/WebCore:
Modify the scroll view's frame so that it recognizes the content inset.
This is needed so that when VoiceOver sorts elements to create an ordering,
the web area is not ordered at the top of the screen.
Test: platform/mac-wk2/accessibility/content-inset-scrollview-frame.html
- accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::elementRect):
LayoutTests:
- platform/mac-wk2/accessibility/content-inset-scrollview-frame-expected.txt: Added.
- platform/mac-wk2/accessibility/content-inset-scrollview-frame.html: Added.
- 4:08 PM Changeset in webkit [169080] by
-
- 2 edits in trunk/Tools
Dashboard: OpenSource revision key changed from WebKitOpenSource to WebKit
https://bugs.webkit.org/show_bug.cgi?id=133086
Reviewed by Daniel Bates.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
- 3:41 PM Changeset in webkit [169079] by
-
- 3 edits in trunk/Source/WebKit/mac
Use different AppKit API for image control menus.
<rdar://problem/16807828> and https://bugs.webkit.org/show_bug.cgi?id=133087
Reviewed by Tim Horton.
For image control menus, use popUpMenuPositioningItem: instead of popUpContextMenu:
- WebCoreSupport/WebContextMenuClient.h:
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::contextMenuForEvent):
(WebContextMenuClient::showContextMenu):
- 3:39 PM Changeset in webkit [169078] by
-
- 2 edits in trunk/Tools
REGRESSION (r169042): Fix run-api-tests on Mountain Lion
<http://webkit.org/b/132954>
- Scripts/webkitdirs.pm:
(sharedCommandLineOptionsUsage): Remove the prototype for the
subroutine. Older perls don't like the "+@" syntax.
- 3:20 PM Changeset in webkit [169077] by
-
- 1 copy in tags/Safari-538.34.8
New Tag.
- 3:14 PM Changeset in webkit [169076] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merge r169037.
- 3:07 PM Changeset in webkit [169075] by
-
- 5 edits in branches/safari-538.34-branch/Source
Merge r168991.
- 3:04 PM Changeset in webkit [169074] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Merge r168974.
- 2:59 PM Changeset in webkit [169073] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r169039.
- 2:57 PM Changeset in webkit [169072] by
-
- 24 edits17 copies2 deletes in branches/safari-538.34-branch/Source
Merge r169023.
- 2:46 PM Changeset in webkit [169071] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merge r169015.
- 2:45 PM Changeset in webkit [169070] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r169000.
- 2:43 PM Changeset in webkit [169069] by
-
- 27 edits6 copies in branches/safari-538.34-branch/Source
Merge r168994.
- 2:42 PM Changeset in webkit [169068] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] When a page relayout on dynamic resize, keep the same relative width in view
https://bugs.webkit.org/show_bug.cgi?id=133026
<rdar://problem/16833971>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-19
Reviewed by Simon Fraser.
When a page does not relayout, we keep the same width in view.
When a page relayout, we should keep the same relative width in view.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::isResponsiveDesignWithContentLargerThanLayout):
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 2:19 PM Changeset in webkit [169067] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Inspect Element sometimes does not select the right DOM Node
https://bugs.webkit.org/show_bug.cgi?id=127938
Patch by Jono Wells <jonowells@apple.com> on 2014-05-19
Reviewed by Joseph Pecoraro.
Inspecting an element when the inspector is in a closed state was selecting the node but then
overriding the selection when DOMTreeContentView#_restoreSelectedNodeAfterUpdate was called.
Now when an element is inspected a flag prevents the restore from taking place.
- UserInterface/Controllers/DOMTreeManager.js:
(WebInspector.DOMTreeManager):
(WebInspector.DOMTreeManager.prototype.inspectElement):
(WebInspector.DOMTreeManager.prototype.inspectNodeObject):
Add WebInspector.DOMTreeManager#_restoreSelectedNodeIsAllowed.
(WebInspector.DOMTreeManager.prototype.get restoreSelectedNodeIsAllowed):
Added.
- UserInterface/Views/FrameDOMTreeContentView.js:
(WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable):
Add check for WebInspector.domTreeManager.restoreSelectedNodeIsAllowed.
- 2:17 PM Changeset in webkit [169066] by
-
- 2 edits in trunk/Source/WebKit2
[WK2] Add some missing state reset on crash
https://bugs.webkit.org/show_bug.cgi?id=133036
Reviewed by Sam Weinig.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetState):
The missing reset for m_isTrackingTouchEvents would cause the WebPageProxy to send
touch events when it shouldn't. That would only be for an active touch sequence.
The missing reset m_lastVisibleContentRectUpdate would prevent pushing the new UI state
to the new page on reload, that is very bad.
Also moved m_videoFullscreenManager to be in the same order as initialization, and invalidate
the callbacks for dictation.
- 2:09 PM Changeset in webkit [169065] by
-
- 3 edits in trunk/Source/WebCore
Scrollbars display incorrectly after switching between fast and slow scrolling
mode, affects Find and real sites
https://bugs.webkit.org/show_bug.cgi?id=133077
-and corresponding-
<rdar://problem/16888608>
Reviewed by Tim Horton.
We should always return true here when updating on the secondary thread is
supported. It does not need to be gated on whether we are actively taking
advantage of that support at this moment.
- platform/Scrollbar.cpp:
(WebCore::Scrollbar::supportsUpdateOnSecondaryThread):
Always update the presentationValue whenever we update the doubleValue just to
keep them in sync.
- platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::setPaintCharacteristicsForScrollbar):
- 2:02 PM Changeset in webkit [169064] by
-
- 3 edits in trunk/Source/WebKit2
[iOS][WK2] Move scale noise filtering to the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=133021
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-19
Reviewed by Darin Adler.
Filtering in the UIProcess was stupid. It forces to handle a third kind of scale just for updates.
The WebProcess already adjusts the input scale based on the viewport. Changing the input scale at that level
is already supported. It is a better place to have the filtering.
- UIProcess/ios/WKContentView.mm:
(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::updateVisibleContentRects):
- 1:23 PM Changeset in webkit [169063] by
-
- 44 edits6 copies5 moves2 adds in trunk
Split scrolling tree ScrollingNodes into FrameScrollingNodes and OverflowScrollingNodes
https://bugs.webkit.org/show_bug.cgi?id=133022
Reviewed by Sam Weinig.
Source/WebCore:
In both the scrolling state tree and the scrolling tree, split the "scrolling nodes"
into FrameScrolling and OverflowScrolling nodes.
Move what was the "viewportSize" property onto the base class for the scrolling
nodes, calling it "scrollableAreaSize".
Make minimum/maximumScrollPosition() virtual so we can share more code (and there
is more code sharing to be done in future).
- Configurations/WebCore.xcconfig: Remove ScrollingStateScrollingNodeMac.mm and ScrollingTreeScrollingNodeMac.mm
from the list, using #ifdefs in the file instead.
- WebCore.exp.in: Lots of exports.
- WebCore.xcodeproj/project.pbxproj: New files.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::AsyncScrollingCoordinator::updateFrameScrollingNode):
(WebCore::AsyncScrollingCoordinator::updateOverflowScrollingNode):
(WebCore::AsyncScrollingCoordinator::recomputeWheelEventHandlerCountForFrameView):
(WebCore::AsyncScrollingCoordinator::updateScrollingNode): Deleted.
(WebCore::AsyncScrollingCoordinator::setScrollbarPaintersFromScrollbarsForNode): Deleted.
This tiny function didn't need to exist.
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::updateFrameScrollingNode):
(WebCore::ScrollingCoordinator::updateOverflowScrollingNode):
(WebCore::ScrollingCoordinator::updateScrollingNode): Deleted.
- page/scrolling/ScrollingStateFrameScrollingNode.cpp: Copied from Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp.
(WebCore::ScrollingStateFrameScrollingNode::create):
(WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode):
(WebCore::ScrollingStateFrameScrollingNode::~ScrollingStateFrameScrollingNode):
(WebCore::ScrollingStateFrameScrollingNode::clone):
(WebCore::ScrollingStateFrameScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateFrameScrollingNode::setNonFastScrollableRegion):
(WebCore::ScrollingStateFrameScrollingNode::setWheelEventHandlerCount):
(WebCore::ScrollingStateFrameScrollingNode::setSynchronousScrollingReasons):
(WebCore::ScrollingStateFrameScrollingNode::setScrollBehaviorForFixedElements):
(WebCore::ScrollingStateFrameScrollingNode::setHeaderHeight):
(WebCore::ScrollingStateFrameScrollingNode::setFooterHeight):
(WebCore::ScrollingStateFrameScrollingNode::setTopContentInset):
(WebCore::ScrollingStateFrameScrollingNode::setCounterScrollingLayer):
(WebCore::ScrollingStateFrameScrollingNode::setInsetClipLayer):
(WebCore::ScrollingStateFrameScrollingNode::setContentShadowLayer):
(WebCore::ScrollingStateFrameScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateFrameScrollingNode::setFooterLayer):
(WebCore::ScrollingStateFrameScrollingNode::setScrollbarPaintersFromScrollbars):
(WebCore::ScrollingStateFrameScrollingNode::dumpProperties):
- page/scrolling/ScrollingStateFrameScrollingNode.h: Copied from Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h.
- page/scrolling/ScrollingStateNode.h:
(WebCore::LayerRepresentation::layerID):
(WebCore::ScrollingStateNode::isFrameScrollingNode):
(WebCore::ScrollingStateNode::isOverflowScrollingNode):
- page/scrolling/ScrollingStateOverflowScrollingNode.cpp: Added.
(WebCore::ScrollingStateOverflowScrollingNode::create):
(WebCore::ScrollingStateOverflowScrollingNode::ScrollingStateOverflowScrollingNode):
(WebCore::ScrollingStateOverflowScrollingNode::~ScrollingStateOverflowScrollingNode):
(WebCore::ScrollingStateOverflowScrollingNode::clone):
(WebCore::ScrollingStateOverflowScrollingNode::setScrolledContentsLayer):
(WebCore::ScrollingStateOverflowScrollingNode::dumpProperties):
- page/scrolling/ScrollingStateOverflowScrollingNode.h: Copied from Source/WebCore/page/scrolling/mac/ScrollingStateScrollingNodeMac.mm.
(WebCore::ScrollingStateOverflowScrollingNode::scrolledContentsLayer):
- page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setScrollableAreaSize):
(WebCore::ScrollingStateScrollingNode::setTotalContentsSize):
(WebCore::ScrollingStateScrollingNode::dumpProperties):
(WebCore::ScrollingStateScrollingNode::create): Deleted.
(WebCore::ScrollingStateScrollingNode::clone): Deleted.
(WebCore::ScrollingStateScrollingNode::setViewportSize): Deleted.
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor): Deleted.
(WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion): Deleted.
(WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount): Deleted.
(WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons): Deleted.
(WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements): Deleted.
(WebCore::ScrollingStateScrollingNode::setHeaderHeight): Deleted.
(WebCore::ScrollingStateScrollingNode::setFooterHeight): Deleted.
(WebCore::ScrollingStateScrollingNode::setTopContentInset): Deleted.
(WebCore::ScrollingStateScrollingNode::setScrolledContentsLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setInsetClipLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setContentShadowLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setHeaderLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setFooterLayer): Deleted.
(WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars): Deleted.
- page/scrolling/ScrollingStateScrollingNode.h:
(WebCore::ScrollingStateScrollingNode::scrollableAreaSize):
(WebCore::ScrollingStateScrollingNode::totalContentsSize):
- page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::commit):
- page/scrolling/ScrollingStateTree.h:
(WebCore::ScrollingStateTree::rootStateNode):
(WebCore::ScrollingStateTree::setRootStateNode):
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::commitNewTreeState):
- page/scrolling/ScrollingTreeFrameScrollingNode.cpp: Added.
(WebCore::ScrollingTreeFrameScrollingNode::ScrollingTreeFrameScrollingNode):
(WebCore::ScrollingTreeFrameScrollingNode::~ScrollingTreeFrameScrollingNode):
(WebCore::ScrollingTreeFrameScrollingNode::updateBeforeChildren):
- page/scrolling/ScrollingTreeFrameScrollingNode.h: Copied from Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h.
(WebCore::ScrollingTreeFrameScrollingNode::updateLayersAfterDelegatedScroll):
(WebCore::ScrollingTreeFrameScrollingNode::synchronousScrollingReasons):
(WebCore::ScrollingTreeFrameScrollingNode::shouldUpdateScrollLayerPositionSynchronously):
(WebCore::ScrollingTreeFrameScrollingNode::frameScaleFactor):
(WebCore::ScrollingTreeFrameScrollingNode::headerHeight):
(WebCore::ScrollingTreeFrameScrollingNode::footerHeight):
(WebCore::ScrollingTreeFrameScrollingNode::topContentInset):
(WebCore::ScrollingTreeFrameScrollingNode::scrollBehaviorForFixedElements):
- page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::isFrameScrollingNode):
(WebCore::ScrollingTreeNode::isOverflowScrollingNode):
- page/scrolling/ScrollingTreeOverflowScrollingNode.cpp: Copied from Source/WebKit2/UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h.
(WebCore::ScrollingTreeOverflowScrollingNode::ScrollingTreeOverflowScrollingNode):
(WebCore::ScrollingTreeOverflowScrollingNode::~ScrollingTreeOverflowScrollingNode):
- page/scrolling/ScrollingTreeOverflowScrollingNode.h: Copied from Source/WebKit2/UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h.
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
(WebCore::ScrollingTreeScrollingNode::updateAfterChildren):
(WebCore::ScrollingTreeScrollingNode::setScrollPosition):
(WebCore::ScrollingTreeScrollingNode::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeScrollingNode::minimumScrollPosition):
(WebCore::ScrollingTreeScrollingNode::maximumScrollPosition):
- page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::scrollableAreaSize):
(WebCore::ScrollingTreeScrollingNode::totalContentsSize):
(WebCore::ScrollingTreeScrollingNode::totalContentsSizeForRubberBand):
(WebCore::ScrollingTreeScrollingNode::setTotalContentsSizeForRubberBand):
(WebCore::ScrollingTreeScrollingNode::synchronousScrollingReasons): Deleted.
(WebCore::ScrollingTreeScrollingNode::shouldUpdateScrollLayerPositionSynchronously): Deleted.
(WebCore::ScrollingTreeScrollingNode::viewportSize): Deleted.
(WebCore::ScrollingTreeScrollingNode::frameScaleFactor): Deleted.
(WebCore::ScrollingTreeScrollingNode::headerHeight): Deleted.
(WebCore::ScrollingTreeScrollingNode::footerHeight): Deleted.
(WebCore::ScrollingTreeScrollingNode::scrollBehaviorForFixedElements): Deleted.
(WebCore::ScrollingTreeScrollingNode::topContentInset): Deleted.
- page/scrolling/ios/ScrollingCoordinatorIOS.mm:
(WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode):
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h: Renamed from Source/WebCore/page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollLayer):
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm: Renamed from Source/WebCore/page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::create):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::ScrollingTreeFrameScrollingNodeIOS):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::~ScrollingTreeFrameScrollingNodeIOS):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateBeforeChildren):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateAfterChildren):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::setScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::setScrollLayerPosition):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateLayersAfterViewportChange):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateLayersAfterDelegatedScroll):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::minimumScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::maximumScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollBy):
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollByWithoutContentEdgeConstraints):
- page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):
- page/scrolling/mac/ScrollingStateFrameScrollingNodeMac.mm: Renamed from Source/WebCore/page/scrolling/mac/ScrollingStateScrollingNodeMac.mm.
(WebCore::ScrollingStateFrameScrollingNode::setScrollbarPaintersFromScrollbars):
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h: Renamed from Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.h.
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: Renamed from Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm.
(WebCore::ScrollingTreeFrameScrollingNodeMac::create):
(WebCore::ScrollingTreeFrameScrollingNodeMac::ScrollingTreeFrameScrollingNodeMac):
(WebCore::ScrollingTreeFrameScrollingNodeMac::~ScrollingTreeFrameScrollingNodeMac):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateAfterChildren):
(WebCore::ScrollingTreeFrameScrollingNodeMac::handleWheelEvent):
(WebCore::ScrollingTreeFrameScrollingNodeMac::allowsHorizontalStretching):
(WebCore::ScrollingTreeFrameScrollingNodeMac::allowsVerticalStretching):
(WebCore::ScrollingTreeFrameScrollingNodeMac::stretchAmount):
(WebCore::ScrollingTreeFrameScrollingNodeMac::pinnedInDirection):
(WebCore::ScrollingTreeFrameScrollingNodeMac::canScrollHorizontally):
(WebCore::ScrollingTreeFrameScrollingNodeMac::canScrollVertically):
(WebCore::ScrollingTreeFrameScrollingNodeMac::shouldRubberBandInDirection):
(WebCore::ScrollingTreeFrameScrollingNodeMac::absoluteScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollBy):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeMac::startSnapRubberbandTimer):
(WebCore::ScrollingTreeFrameScrollingNodeMac::stopSnapRubberbandTimer):
(WebCore::ScrollingTreeFrameScrollingNodeMac::adjustScrollPositionToBoundsIfNecessary):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateLayersAfterViewportChange):
(WebCore::ScrollingTreeFrameScrollingNodeMac::minimumScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::maximumScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollBy):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateMainFramePinState):
(WebCore::ScrollingTreeFrameScrollingNodeMac::logExposedUnfilledArea):
(WebCore::logThreadedScrollingMode):
(WebCore::logWheelEventHandlerCountChanged):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
Source/WebKit2:
In both the scrolling state tree and the scrolling tree, split the "scrolling nodes"
into FrameScrolling and OverflowScrolling nodes.
Move what was the "viewportSize" property onto the base class for the scrolling
nodes, calling it "scrollableAreaSize".
Make minimum/maximumScrollPosition() virtual so we can share more code (and there
is more code sharing to be done in future).
- Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::encode):
(ArgumentCoder<ScrollingStateOverflowScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::decode):
(ArgumentCoder<ScrollingStateOverflowScrollingNode>::decode):
(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
- UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::createNode):
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollLayer):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterViewportChange):
- UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::ScrollingTreeOverflowScrollingNodeIOS):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateBeforeChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::setScrollLayerPosition):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateChildNodesAfterScroll):
- UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
LayoutTests:
Updated for new node name. No geometry changes.
- platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/four-bars-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/four-bars-with-header-and-footer-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/nested-fixed-expected.txt:
- platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt:
- platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset-expected.txt:
- platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal-expected.txt:
- 1:13 PM Changeset in webkit [169062] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r169039.
- 1:12 PM Changeset in webkit [169061] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r169026.
- 1:11 PM Changeset in webkit [169060] by
-
- 24 edits17 copies2 deletes in branches/safari-538.34.5-branch/Source
Merged r169023.
- 1:09 PM Changeset in webkit [169059] by
-
- 13 edits in branches/safari-538.34.5-branch
Merged r169016.
- 1:08 PM Changeset in webkit [169058] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r169015.
- 1:05 PM Changeset in webkit [169057] by
-
- 3 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r169000.
- 12:58 PM Changeset in webkit [169056] by
-
- 27 edits6 copies in branches/safari-538.34.5-branch/Source
Merged r168994.
- 12:54 PM Changeset in webkit [169055] by
-
- 4 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168909.
- 12:10 PM Changeset in webkit [169054] by
-
- 9 edits in trunk/LayoutTests
Fix Element.offset* and .client* rounding mismatches after r168868.
https://bugs.webkit.org/show_bug.cgi?id=133076
Unreviewed gardening.
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
- platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:
- 11:33 AM Changeset in webkit [169053] by
-
- 5 edits2 adds in trunk
Images missing sometimes with composited clipping layers
https://bugs.webkit.org/show_bug.cgi?id=133065
<rdar://problem/15224559>
Reviewed by Beth Dakin.
Source/WebCore:
When support for solid colors on layers was added, a layer was considered a candidate
for the solid color optimization without regard to whether it had descendent layers
with "paintsIntoCompositedAncestor" requirements.
Fix hasVisibleNonCompositingDescendantLayers(), renaming it to isPaintDestinationForDescendentLayers()
and having it take into account whether descendent layers need to paint into an
ancestor.
Also, this test has to happen after those descendent layers have had their
compositing state updated, so move the isSimpleContainerCompositingLayer() to
a new updateAfterDescendents() function which is called from the various
places we do compositing-udpate-tree-walks.
Test: compositing/backing/solid-color-with-paints-into-ancestor.html
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::updateAfterDescendents):
(WebCore::RenderLayerBacking::paintsChildren):
(WebCore::compositedWithOwnBackingStore):
(WebCore::descendentLayerPaintsIntoAncestor):
(WebCore::RenderLayerBacking::isPaintDestinationForDescendentLayers):
(WebCore::hasVisibleNonCompositingDescendant): Deleted.
(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers): Deleted.
- rendering/RenderLayerBacking.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
LayoutTests:
- compositing/backing/solid-color-with-paints-into-ancestor-expected.html: Added.
- compositing/backing/solid-color-with-paints-into-ancestor.html: Added.
- 11:14 AM Changeset in webkit [169052] by
-
- 2 edits in trunk/Source/WebKit2
[Mac] Fix a typo in plug-in sandbox
https://bugs.webkit.org/show_bug.cgi?id=133074
Reviewed by Anders Carlsson.
- Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
- 11:00 AM Changeset in webkit [169051] by
-
- 3 edits in trunk/Source/WebKit2
[WebKit2] Wake up threads blocked in waitForAndDispatchImmediately() if we lose our connection
https://bugs.webkit.org/show_bug.cgi?id=133010
Reviewed by Geoffrey Garen.
If a thread is blocked on m_waitForMessageCondition and we lose our connection, treat that like we do a timeout.
- Platform/IPC/Connection.cpp:
(IPC::Connection::Connection):
(IPC::Connection::waitForMessage):
(IPC::Connection::connectionDidClose):
- Platform/IPC/Connection.h:
- 10:50 AM Changeset in webkit [169050] by
-
- 2 edits in trunk/LayoutTests
Script include paths for js-test-pre.js and js-test-post.js were incorrect.
https://bugs.webkit.org/show_bug.cgi?id=133072
Patch by Jono Wells <jonowells@apple.com> on 2014-05-19
Reviewed by Andy Estes.
- http/tests/navigation/forward-to-fragment-fires-onload.html: Fixed script includes.
- 10:45 AM Changeset in webkit [169049] by
-
- 2 edits in trunk/Source/WebKit/mac
Set WebKitSuppressesIncrementalRenderingKey to NO by default on both Mac and iOS
https://bugs.webkit.org/show_bug.cgi?id=133073
Reviewed by Simon Fraser.
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
- 10:37 AM Changeset in webkit [169048] by
-
- 70 edits5 adds in trunk
REGRESSION (r133351, sub-pixel layout): Right-to-left block with text-overflow: ellipsis truncates prematurely (breaks facebook.com Hebrew UI)
https://bugs.webkit.org/show_bug.cgi?id=112227
Reviewed by Maciej Stachowiak.
This patch removes unnecessary integral snapping of inlines at layout time.
Source/WebCore:
The general rule of thumb of using round/floor/ceil at layout time is to not use them.
When some computed values (x, y, width, height) get snapped during layout, while others don't,
intersecting/measuring mismatches could occur and they could end up producing visual artifacts such as truncations.
This patch also enables iframe content to be positioned on odd device pixel positions on retina displays.
Tests: fast/frames/hidpi-position-iframe-on-device-pixel.html
fast/inline/hidpi-rtl-text-does-not-fit-line-and-gets-cut-off.html
- rendering/RenderBlock.h:
(WebCore::RenderBlock::logicalLeftOffsetForLine):
(WebCore::RenderBlock::pixelSnappedLogicalLeftOffsetForLine): Deleted.
(WebCore::RenderBlock::pixelSnappedLogicalRightOffsetForLine): Deleted.
- rendering/RenderBlockLineLayout.cpp:
(WebCore::updateLogicalInlinePositions):
(WebCore::RenderBlockFlow::deleteEllipsisLineBoxes):
(WebCore::RenderBlockFlow::checkLinesForTextOverflow):
LayoutTests:
1px off differences and rounding expected results to match new behavior. -rebaselining.
- fast/frames/hidpi-position-iframe-on-device-pixel-expected.html: Added.
- fast/frames/hidpi-position-iframe-on-device-pixel.html: Added.
- fast/inline/hidpi-rtl-text-does-not-fit-line-and-gets-cut-off-expected.html: Added.
- fast/inline/hidpi-rtl-text-does-not-fit-line-and-gets-cut-off.html: Added.
- fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html:
- fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html:
- fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-left.html:
- fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-right.html:
- fast/shapes/shape-outside-floats/shape-outside-rounded-boxes-001.html:
- fast/shapes/shape-outside-floats/shape-outside-rounded-boxes-002.html:
- fast/shapes/shape-outside-floats/shape-outside-rounded-inset-expected.html:
- platform/mac/TestExpectations:
- platform/mac/css1/box_properties/float_on_text_elements-expected.txt:
- platform/mac/css1/text_properties/text_indent-expected.txt:
- platform/mac/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
- platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
- platform/mac/css2.1/t100801-c544-valgn-00-a-ag-expected.txt:
- platform/mac/css2.1/t100801-c544-valgn-02-d-agi-expected.txt:
- platform/mac/css2.1/t100801-c544-valgn-03-d-agi-expected.txt:
- platform/mac/css2.1/t100801-c544-valgn-04-d-agi-expected.txt:
- platform/mac/css3/unicode-bidi-isolate-basic-expected.txt:
- platform/mac/editing/selection/caret-ltr-2-expected.txt:
- platform/mac/editing/selection/caret-ltr-2-left-expected.txt:
- platform/mac/editing/selection/caret-rtl-expected.txt:
- platform/mac/editing/selection/caret-rtl-right-expected.txt:
- platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
- platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
- platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
- platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:
- platform/mac/fast/block/float/026-expected.txt:
- platform/mac/fast/block/float/028-expected.txt:
- platform/mac/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
- platform/mac/fast/css/empty-pseudo-class-expected.txt:
- platform/mac/fast/css/first-child-pseudo-class-expected.txt:
- platform/mac/fast/css/first-of-type-pseudo-class-expected.txt:
- platform/mac/fast/css/last-child-pseudo-class-expected.txt:
- platform/mac/fast/css/last-of-type-pseudo-class-expected.txt:
- platform/mac/fast/css/only-child-pseudo-class-expected.txt:
- platform/mac/fast/css/only-of-type-pseudo-class-expected.txt:
- platform/mac/fast/css/text-overflow-input-expected.txt:
- platform/mac/fast/forms/file/file-input-direction-expected.txt:
- platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
- platform/mac/fast/forms/number/number-appearance-rtl-expected.txt:
- platform/mac/fast/forms/placeholder-position-expected.txt:
- platform/mac/fast/forms/search-rtl-expected.txt:
- platform/mac/fast/line-grid/line-align-left-edges-expected.txt:
- platform/mac/fast/lists/008-expected.txt:
- platform/mac/fast/lists/008-vertical-expected.txt:
- platform/mac/fast/multicol/column-count-with-rules-expected.txt:
- platform/mac/fast/multicol/float-multicol-expected.txt:
- platform/mac/fast/multicol/layers-in-multicol-expected.txt:
- platform/mac/fast/multicol/vertical-lr/float-multicol-expected.txt:
- platform/mac/fast/multicol/vertical-rl/float-multicol-expected.txt:
- platform/mac/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt:
- platform/mac/fast/regions/repaint/line-flow-with-floats-in-regions-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-1-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-10-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-2-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-3-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-4-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-5-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-6-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-7-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-8-expected.txt:
- platform/mac/fast/repaint/line-flow-with-floats-9-expected.txt:
- platform/mac/fast/text/script-tests/ligature-subdivision.js:
- platform/mac/fast/text/vertical-rl-rtl-linebreak-expected.txt:
- platform/mac/fast/text/whitespace/024-expected.txt:
- platform/mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.txt:
- platform/mac/fast/text/word-break-run-rounding-expected.txt:
- platform/mac/svg/wicd/rightsizing-grid-expected.txt:
- 9:10 AM Changeset in webkit [169047] by
-
- 2 edits in trunk/Source/WebCore
AX: iOS: using AXAttributeCacheEnabler is too slow for every accessibilityElementAtIndex:
https://bugs.webkit.org/show_bug.cgi?id=133043
Reviewed by Mario Sanchez Prada.
iOS Accessibility code tries to improve performance by caching attributes when accessing
elements through the platform API. However, those API calls can be used very frequently when
iterating elements. Creating the AXAttributeCacheEnabler object and tearing it down is proving
to be the hottest code path in samples for accessibility access.
We need to move the logic for enabling/disabling the attribute cache to a level that can make
a more informed decision about when to enable/disable.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper enableAttributeCaching]):
(-[WebAccessibilityObjectWrapper disableAttributeCaching]):
(-[WebAccessibilityObjectWrapper accessibilityElementCount]):
(-[WebAccessibilityObjectWrapper accessibilityElementAtIndex:]):
(-[WebAccessibilityObjectWrapper indexOfAccessibilityElement:]):
- 8:53 AM Changeset in webkit [169046] by
-
- 3 edits in trunk/Source/WebCore
Use RenderStyle& in more places in RenderLayerBacking
https://bugs.webkit.org/show_bug.cgi?id=133061
Reviewed by Andreas Kling.
Convert several member functions to use references to RenderStyle rather
than pointers. Move canCreateTiledImage() higher in the file (no code
changes). Other minor cleanup.
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateOpacity):
(WebCore::RenderLayerBacking::updateTransform):
(WebCore::RenderLayerBacking::updateFilters):
(WebCore::RenderLayerBacking::updateBlendMode):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::hasBoxDecorations):
(WebCore::canCreateTiledImage):
(WebCore::hasBoxDecorationsOrBackgroundImage):
(WebCore::hasPerspectiveOrPreserves3D):
(WebCore::supportsDirectBoxDecorationsComposition):
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
(WebCore::RenderLayerBacking::contentChanged):
(WebCore::RenderLayerBacking::startTransition):
- rendering/RenderLayerBacking.h:
- 8:53 AM Changeset in webkit [169045] by
-
- 7 edits in trunk/Source/WebCore
Rename some RenderLayerBacking member functions
https://bugs.webkit.org/show_bug.cgi?id=133030
Reviewed by Sam Weinig.
Remove "GraphicsLayer" from some member function names on RenderLayerBacking.
No behavior change.
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::AVFWrapper::createAVCFVideoLayer):
- platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterLayout):
(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::contentChanged):
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Deleted.
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Deleted.
- rendering/RenderLayerBacking.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateLayerCompositingState):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::attachRootLayer):
- 8:18 AM Changeset in webkit [169044] by
-
- 3 edits in trunk/LayoutTests
Unreviewed gardening, try to unbreak Mac buildbots and EWS bots after r169023.
- platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
- platform/mac/js/dom/global-constructors-attributes-expected.txt:
- 4:09 AM Changeset in webkit [169043] by
-
- 2 edits in trunk/Tools
run-javascriptcore-tests should sort the list of failing stress tests
https://bugs.webkit.org/show_bug.cgi?id=132989
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-19
Reviewed by Csaba Osztrogonác.
- Scripts/run-javascriptcore-tests:
- 2:17 AM Changeset in webkit [169042] by
-
- 5 edits in trunk/Tools
webkitdirs.pm: Add setupMacWebKitEnvironment() to set XPC_DYLD_FRAMEWORK_PATH consistently
<http://webkit.org/b/132954>
Reviewed by Darin Adler.
Extract code into setupMacWebKitEnvironment() for setting up
common environment variables so it may be shared. Sets
XPC_DYLD_FRAMEWORK_PATH consistently and adds support for
using guardmalloc to some scripts.
Also adds support for parsing shared (common) command-line
switches, initially just -gguard-malloc. Scripts/bisect-builds: Add -gguard-malloc support by using sharedCommandLineOptions() and sharedCommandLineOptionsUsage().
(mountAndRunNightly): Call setupMacWebKitEnvironment(). Use a
local copy of %ENV when launching Safari so we don't have to
restore variables.
Scripts/run-api-tests: Add -gguard-malloc support by using sharedCommandLineOptions() and sharedCommandLineOptionsUsage().
Check result of GetOptions() to catch invalid command-line
switches.
(runTest): Use a local copy of %ENV when running tests so we
don't have to restore variables.
(prepareEnvironmentForRunningTestTool): Call
setupMacWebKitEnvironment().
Scripts/run-pageloadtest: Add -gguard-malloc support by using sharedCommandLineOptions() and
sharedCommandLineOptionsUsage(). Call
setupMacWebKitEnvironment().
- Scripts/webkitdirs.pm:
(sharedCommandLineOptions): Return array of common switches to
pass to Getopt::Long::GetOptions().
(sharedCommandLineOptionsUsage): Return formatted string of
common switches for printing usage help text.
(setUpGuardMallocIfNeeded): Support using '-g' for enabling
guardmalloc.
(printHelpAndExitForRunAndDebugWebKitAppIfNeeded): Ditto.
(setupMacWebKitEnvironment): Extracted from runMacWebKitApp()
and changed not to clobber DYLD_FRAMEWORK_PATH if already set.
(runMacWebKitApp): Call setupMacWebKitEnvironment(). Use a
local copy of %ENV when launching Safari so we don't have to
restore variables.
(execMacWebKitAppForDebugging): Call
setupMacWebKitEnvironment().
- 2:02 AM Changeset in webkit [169041] by
-
- 2 edits in trunk/Source/WebCore
Fix assertion failure with simple line layout debug borders enabled.
Rubber-stamped by Andreas Kling.
- rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::paintDebugBorders): We shoudn't try to paint empty rects.
- 2:00 AM Changeset in webkit [169040] by
-
- 9 edits in trunk/Source/JavaScriptCore
Removing some check-webkit-style warnings from ./dfg
https://bugs.webkit.org/show_bug.cgi?id=132854
Patch by Tanay C <tanay.c@samsung.com> on 2014-05-19
Reviewed by Darin Adler.
- dfg/DFGAbstractInterpreter.h:
- dfg/DFGAbstractValue.h:
- dfg/DFGBlockInsertionSet.h:
- dfg/DFGCommonData.h:
- dfg/DFGDominators.h:
- dfg/DFGGraph.h:
- dfg/DFGInPlaceAbstractState.h:
- dfg/DFGPredictionPropagationPhase.h:
- 1:44 AM Changeset in webkit [169039] by
-
- 2 edits in trunk/Source/WebKit2
Build fix after r169023.
- Shared/API/Cocoa/WebKitPrivate.h: Stop including headers that no longer exist.
I hope for weinig's sake that no-one was relying on them.
May 18, 2014:
- 11:44 PM Changeset in webkit [169038] by
-
- 5 edits in trunk/Source/WebCore
Reduce constructor copypasta in RenderText and RenderElement.
<https://webkit.org/b/133056>
Use delegating constructors to remove duplicated initializer lists
from the constructors of RenderText and RenderElement.
Reviewed by Anders Carlsson.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
- rendering/RenderElement.h:
- rendering/RenderText.cpp:
(WebCore::RenderText::RenderText):
- rendering/RenderText.h:
- 10:50 PM Changeset in webkit [169037] by
-
- 2 edits in trunk/Source/WebCore
Crash during scroll when latched
https://bugs.webkit.org/show_bug.cgi?id=133064
Reviewed by Simon Fraser.
- page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::platformPrepareForWheelEvents): Prevent dereference of NULL
wheelEventTarget argument.
- 9:48 PM Changeset in webkit [169036] by
-
- 1 delete in tags/Safari-538.34.42/safari-538.34-branch
Remove Duplicate Tag.
- 9:47 PM Changeset in webkit [169035] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 9:35 PM Changeset in webkit [169034] by
-
- 1 copy in tags/Safari-538.34.42/safari-538.34-branch
New Tag.
- 9:34 PM Changeset in webkit [169033] by
-
- 1 copy in tags/Safari-538.34.42
New Tag.
- 7:37 PM Changeset in webkit [169032] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, remove bogus comment. We already made the FTL use our calling convention.
That was a long time ago.
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileReturn):
- 5:51 PM Changeset in webkit [169031] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168976.
- 5:45 PM Changeset in webkit [169030] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Versioning.
- 5:43 PM Changeset in webkit [169029] by
-
- 1 copy in tags/Safari-538.34.7
New tag.
- 5:35 PM Changeset in webkit [169028] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Versioning.
- 5:28 PM Changeset in webkit [169027] by
-
- 3 edits in branches/safari-538.34.5-branch/Source/WebKit/mac
Merged r169018.
- 5:12 PM Changeset in webkit [169026] by
-
- 2 edits in trunk/Source/WebKit2
Relax an assertion when creating document loaders
https://bugs.webkit.org/show_bug.cgi?id=133058
Reviewed by Sam Weinig.
When navigating back/forward items recursively, createDocumentLoader will be called
for subframes before main frames so only associate the navigation with main frames.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createDocumentLoader):
- 4:30 PM Changeset in webkit [169025] by
-
- 2 edits in trunk/Source/WebKit2
CMake Buildfix after r169023.
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-18
Reviewed by Csaba Osztrogonác.
- CMakeLists.txt: Add new files after r168994.
- 4:25 PM Changeset in webkit [169024] by
-
- 4 edits2 adds in trunk
Input ::selection pseudo class does not work leading to hidden selection
https://bugs.webkit.org/show_bug.cgi?id=38943
Source/WebCore:
Patch by Svetlana Redchenko <redchenko@yandex-team.ru> on 2014-05-18
Reviewed by Darin Adler.
Test: fast/selectors/input-with-selection-pseudo-element.html
When text is selected inside input element, it should change the
color and background color according to the ::selection pseudo element.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::selectionBackgroundColor):
(WebCore::RenderObject::selectionColor):
(WebCore::RenderObject::selectionPseudoStyle):
- rendering/RenderObject.h:
LayoutTests:
Patch by Svetlana Redchenko <redchenko@yandex-team.ru> on 2014-05-18
Reviewed by Darin Adler.
- fast/selectors/input-with-selection-pseudo-element-expected.html: Added.
- fast/selectors/input-with-selection-pseudo-element.html: Added.
- 4:12 PM Changeset in webkit [169023] by
-
- 24 edits1 move16 adds1 delete in trunk/Source
[WebKit2] Implement ScriptMessageHandlers
https://bugs.webkit.org/show_bug.cgi?id=133053
Reviewed by Anders Carlsson.
- DerivedSources.make:
../WebCore:
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::finishCreation):
- bindings/js/JSUserMessageHandlersNamespaceCustom.cpp: Added.
(WebCore::JSUserMessageHandlersNamespace::getOwnPropertySlotDelegate):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::shouldHaveWebKitNamespaceForWorld):
(WebCore::DOMWindow::webkitNamespace):
- page/DOMWindow.h:
- page/UserContentController.cpp:
(WebCore::UserContentController::addUserMessageHandlerDescriptor):
(WebCore::UserContentController::removeUserMessageHandlerDescriptor):
- page/UserContentController.h:
(WebCore::UserContentController::userMessageHandlerDescriptors):
- page/UserMessageHandler.cpp: Added.
(WebCore::UserMessageHandler::UserMessageHandler):
(WebCore::UserMessageHandler::~UserMessageHandler):
(WebCore::UserMessageHandler::postMessage):
(WebCore::UserMessageHandler::name):
(WebCore::UserMessageHandler::world):
- page/UserMessageHandler.h: Added.
(WebCore::UserMessageHandler::create):
- page/UserMessageHandler.idl: Added.
- page/UserMessageHandlerDescriptor.cpp: Added.
(WebCore::UserMessageHandlerDescriptor::UserMessageHandlerDescriptor):
(WebCore::UserMessageHandlerDescriptor::~UserMessageHandlerDescriptor):
(WebCore::UserMessageHandlerDescriptor::name):
(WebCore::UserMessageHandlerDescriptor::world):
- page/UserMessageHandlerDescriptor.h: Added.
(WebCore::UserMessageHandlerDescriptor::Client::~Client):
(WebCore::UserMessageHandlerDescriptor::create):
(WebCore::UserMessageHandlerDescriptor::client):
- page/UserMessageHandlerDescriptorTypes.h: Added.
- page/UserMessageHandlersNamespace.cpp: Added.
(WebCore::UserMessageHandlersNamespace::UserMessageHandlersNamespace):
(WebCore::UserMessageHandlersNamespace::~UserMessageHandlersNamespace):
(WebCore::UserMessageHandlersNamespace::handler):
- page/UserMessageHandlersNamespace.h: Added.
(WebCore::UserMessageHandlersNamespace::create):
- page/UserMessageHandlersNamespace.idl: Added.
- page/WebKitNamespace.cpp: Added.
(WebCore::WebKitNamespace::WebKitNamespace):
(WebCore::WebKitNamespace::~WebKitNamespace):
(WebCore::WebKitNamespace::messageHandlers):
- page/WebKitNamespace.h: Added.
(WebCore::WebKitNamespace::create):
- page/WebKitNamespace.idl: Added.
../WebKit2:
- Scripts/webkit2/messages.py:
(struct_or_class):
(argument_coder_headers_for_type):
(headers_for_type):
- UIProcess/API/Cocoa/WKScriptMessage.mm:
(-[WKScriptMessage _initWithBody:webView:name:]):
(-[WKScriptMessage body]):
(-[WKScriptMessage webView]):
(-[WKScriptMessage name]):
(-[WKScriptMessage _scriptWorld]): Deleted.
- UIProcess/API/Cocoa/WKScriptMessageInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKScriptMessagePrivate.h.
- UIProcess/API/Cocoa/WKScriptMessagePrivate.h: Removed.
- UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController addScriptMessageHandler:name:]):
(-[WKUserContentController removeScriptMessageHandlerForName:]):
(-[WKUserContentController _addScriptMessageHandler:name:world:]): Deleted.
(-[WKUserContentController _removeScriptMessageHandlerForName:world:]): Deleted.
- UIProcess/API/Cocoa/WKUserContentControllerInternal.h:
- UIProcess/API/Cocoa/WKUserContentControllerPrivate.h: Removed.
- UIProcess/API/Cocoa/WKWebView.mm:
(pageToViewMap):
(fromWebPageProxy):
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView dealloc]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/UserContent/WebScriptMessageHandler.cpp: Added.
(WebKit::WebScriptMessageHandlerHandle::encode):
(WebKit::WebScriptMessageHandlerHandle::decode):
(WebKit::generateIdentifier):
(WebKit::WebScriptMessageHandler::create):
(WebKit::WebScriptMessageHandler::WebScriptMessageHandler):
(WebKit::WebScriptMessageHandler::~WebScriptMessageHandler):
- UIProcess/UserContent/WebScriptMessageHandler.h: Added.
(WebKit::WebScriptMessageHandler::Client::~Client):
(WebKit::WebScriptMessageHandler::handle):
(WebKit::WebScriptMessageHandler::identifier):
(WebKit::WebScriptMessageHandler::name):
(WebKit::WebScriptMessageHandler::client):
- UIProcess/UserContent/WebUserContentControllerProxy.cpp:
(WebKit::WebUserContentControllerProxy::addProcess):
(WebKit::WebUserContentControllerProxy::removeProcess):
(WebKit::WebUserContentControllerProxy::addUserScriptMessageHandler):
(WebKit::WebUserContentControllerProxy::removeUserMessageHandlerForName):
(WebKit::WebUserContentControllerProxy::didPostMessage):
- UIProcess/UserContent/WebUserContentControllerProxy.h:
- UIProcess/UserContent/WebUserContentControllerProxy.messages.in: Added.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/UserContent/WebUserContentController.cpp:
(WebKit::WebUserMessageHandlerDescriptorProxy::create):
(WebKit::WebUserMessageHandlerDescriptorProxy::~WebUserMessageHandlerDescriptorProxy):
(WebKit::WebUserMessageHandlerDescriptorProxy::didPostMessage):
(WebKit::WebUserMessageHandlerDescriptorProxy::descriptor):
(WebKit::WebUserMessageHandlerDescriptorProxy::identifier):
(WebKit::WebUserMessageHandlerDescriptorProxy::WebUserMessageHandlerDescriptorProxy):
(WebKit::WebUserContentController::addUserScriptMessageHandlers):
(WebKit::WebUserContentController::removeUserScriptMessageHandler):
- WebProcess/UserContent/WebUserContentController.h:
- WebProcess/UserContent/WebUserContentController.messages.in:
- 4:10 PM Changeset in webkit [169022] by
-
- 3 edits in tags/Safari-538.34.6/Source/WebKit/mac
Merged r169018.
- 4:06 PM Changeset in webkit [169021] by
-
- 5 edits in tags/Safari-538.34.6/Source
Versioning.
- 4:01 PM Changeset in webkit [169020] by
-
- 1 copy in tags/Safari-538.34.6
New tag.
- 3:03 PM Changeset in webkit [169019] by
-
- 4 edits in trunk
REGRESSION (r156546): Default media controls are laid out incorrectly when media element is styled with direction:rtl
https://bugs.webkit.org/show_bug.cgi?id=132531
<rdar://problem/16806267>
Source/WebCore:
Reviewed by Mark Rowe.
This was already tested by the media/video-rtl.htm reftest, now unskipped.
- Modules/mediacontrols/mediaControlsApple.css:
(audio::-webkit-media-controls-panel): Add missing direction: ltr
LayoutTests:
Reviewed by Mark Rowe.
- platform/mac/TestExpectations: Unskip media/video-rtl.html
- 2:36 PM Changeset in webkit [169018] by
-
- 3 edits in trunk/Source/WebKit/mac
Bring back two NSString category methods on iOS
https://bugs.webkit.org/show_bug.cgi?id=133055
<rdar://problem/16951983>
Reviewed by Adele Peterson.
- Misc/WebNSURLExtras.h:
- Misc/WebNSURLExtras.mm:
(-[NSString _webkit_unescapedQueryValue]):
(-[NSString _webkit_queryKeysAndValues]):
- 1:36 PM Changeset in webkit [169017] by
-
- 22 edits2 adds in trunk
support for navigator.hardwareConcurrency
https://bugs.webkit.org/show_bug.cgi?id=132588
Reviewed by Filip Pizlo.
.:
- Source/cmake/OptionsEfl.cmake:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmakeconfig.h.cmake:
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Added a new API that returns the number of CPU cores up to 8.
Test: fast/dom/navigator-hardwareConcurrency.html
- Configurations/FeatureDefines.xcconfig:
- page/Navigator.cpp:
(WebCore::Navigator::hardwareConcurrency):
- page/Navigator.h:
- page/Navigator.idl:
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/FeatureDefines.h:
Tools:
- Scripts/webkitperl/FeatureList.pm:
LayoutTests:
- fast/dom/navigator-detached-no-crash-expected.txt:
- fast/dom/navigator-hardwareConcurrency-expected.txt: Added.
- fast/dom/navigator-hardwareConcurrency.html: Added.
- 12:33 PM Changeset in webkit [169016] by
-
- 13 edits in trunk
Implement Navigations for all methods declared returning one
https://bugs.webkit.org/show_bug.cgi?id=133048
<rdar://problem/16830064>
Reviewed by Sam Weinig.
Source/WebKit2:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView goToBackForwardListItem:]):
(-[WKWebView goBack]):
(-[WKWebView goForward]):
(-[WKWebView reload]):
(-[WKWebView reloadFromOrigin]):
Create and return navigations.
(-[WKWebView _reload]):
Call -[WKWebView reload].
- UIProcess/Cocoa/NavigationState.h:
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::createBackForwardNavigation):
Create a back/forward navigation.
(WebKit::NavigationState::createReloadNavigation):
Create a reload navigation.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::reattachToWebProcessWithItem):
Generate a navigation ID and send it with the GoToBackForwardItem message.
(WebKit::WebPageProxy::reload):
Return a navigation ID.
(WebKit::WebPageProxy::goForward):
Generate a navigation ID and send it with the GoForward message.
(WebKit::WebPageProxy::goBack):
Generate a navigation ID and send it with the GoBack message.
(WebKit::WebPageProxy::goToBackForwardItem):
Generate a navigation ID and send it with the GoToBackForwardItem message.
- UIProcess/WebPageProxy.h:
Return navigation IDs where appropriate.
- UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::restoreFromSessionStateData):
Generate a navigation ID and send it with the RestoreSessionAndNavigateToCurrentItem message.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::goForward):
(WebKit::WebPage::goBack):
(WebKit::WebPage::goToBackForwardItem):
Set up the pending navigation ID.
(WebKit::WebPage::restoreSessionAndNavigateToCurrentItem):
Call goToBackForwardItem with a navigation ID.
- WebProcess/WebPage/WebPage.h:
Add navigation IDs.
- WebProcess/WebPage/WebPage.messages.in:
Add navigation IDs.
Tools:
- MiniBrowser/mac/MiniBrowser_Prefix.pch:
Import WebKit.h.
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController webView:didStartProvisionalNavigation:]):
(-[WK2BrowserWindowController webView:didReceiveServerRedirectForProvisionalNavigation:]):
(-[WK2BrowserWindowController webView:didFailProvisionalNavigation:withError:]):
(-[WK2BrowserWindowController webView:didCommitNavigation:]):
(-[WK2BrowserWindowController webView:didFinishLoadingNavigation:]):
(-[WK2BrowserWindowController webView:didFailNavigation:withError:]):
Print out the navigations.
- 10:47 AM Changeset in webkit [169015] by
-
- 2 edits in trunk/Source/WebCore
Fix iOS build.
- WebCore.exp.in:
Move UserContentController symbols to the right place.
- 10:32 AM Changeset in webkit [169014] by
-
- 3 edits in branches/ftlopt/Source/JavaScriptCore
[ftlopt] Factor out how CallLinkStatus uses exit site data
https://bugs.webkit.org/show_bug.cgi?id=133042
Reviewed by Anders Carlsson.
This makes it easier to use CallLinkStatus from clients that are calling into after
already holding some of the relevant locks. This is necessary because we use a "one lock
at a time" policy for CodeBlock locks: if you hold one then you're not allowed to acquire
any of the others. So, any code that needs to lock multiple CodeBlock locks needs to sort
of lock one, do some stuff, release it, then lock another, and then do more stuff. The
exit site data corresponds to the stuff you do while holding the baseline lock, while the
CallLinkInfo method corresponds to the stuff you do while holding the CallLinkInfo owner's
lock.
- bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeFor):
(JSC::CallLinkStatus::computeExitSiteData):
(JSC::CallLinkStatus::computeDFGStatuses):
- bytecode/CallLinkStatus.h:
(JSC::CallLinkStatus::ExitSiteData::ExitSiteData):
- 9:53 AM Changeset in webkit [169013] by
-
- 2 edits in trunk/Source/WebCore
Build fix for r169006.
Unreviewed.
- loader/ResourceLoader.h: Return didCreateQuickLookHandle() to public.
- 9:29 AM Changeset in webkit [169012] by
-
- 3 edits in trunk/Source/WebKit2
Unreviewed, rolling out r169001.
https://bugs.webkit.org/show_bug.cgi?id=133050
We can't expose the C SPI from WKWebView (Requested by
andersca on #webkit).
Reverted changeset:
"Need a way to get a WKPageRef from a WKWebView"
https://bugs.webkit.org/show_bug.cgi?id=133015
http://trac.webkit.org/changeset/169001
- 3:51 AM Changeset in webkit [169011] by
-
- 9 edits2 adds in trunk
REGRESSION (r160259): text-combine glyphs are not rendered
https://bugs.webkit.org/show_bug.cgi?id=127324
Reviewed by Andreas Kling.
Source/WebCore:
The original text gets overwritten by a change that is supposed to affect rendered text only.
Fixed by giving the text update functions well-defined purposes.
Test: fast/text/text-combine-rendering.html
- rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::styleDidChange):
(WebCore::RenderCombineText::setRenderedText):
(WebCore::RenderCombineText::combineText):
(WebCore::RenderCombineText::setTextInternal): Deleted.
- rendering/RenderCombineText.h:
- rendering/RenderCounter.cpp:
(WebCore::RenderCounter::computePreferredLogicalWidths):
- rendering/RenderText.cpp:
(WebCore::RenderText::setRenderedText):
This function now updates the rendered text but does not change the original.
Get the original text by calling originalText().
(WebCore::RenderText::setText):
This the only place original text now changes.
(WebCore::RenderText::setTextInternal): Deleted.
Renamed to setRenderedText.
- rendering/RenderText.h:
- rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::setRenderedText):
(WebCore::RenderSVGInlineText::setTextInternal): Deleted.
- rendering/svg/RenderSVGInlineText.h:
LayoutTests:
- fast/text/text-combine-rendering-expected.html: Added.
- fast/text/text-combine-rendering.html: Added.
- 12:57 AM Changeset in webkit [169010] by
-
- 2 edits in trunk/Source/WebKit2
[WK2][GTK] Buildfix after r168999.
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-18
Reviewed by Csaba Osztrogonác.
- UIProcess/gtk/WebContextGtk.cpp:
(WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory): Renamed from WebKit::WebContext::platformDefaultDatabaseDirectory().
(WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory): Added.
- 12:52 AM Changeset in webkit [169009] by
-
- 2 edits in trunk/Source/WebKit2
[WK2][EFL] Buildfix after r168999.
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-18
Reviewed by Csaba Osztrogonác.
- UIProcess/efl/WebContextEfl.cpp:
(WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory): Renamed from WebKit::WebContext::platformDefaultDatabaseDirectory().
(WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory): Added.
- 12:43 AM Changeset in webkit [169008] by
-
- 2 edits in trunk/Source/WebKit2
[WK2][cmake] Buildfix after r168994.
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-18
Reviewed by Csaba Osztrogonác.
- CMakeLists.txt: Added new files to the build system introduced in r168994.
May 17, 2014:
- 11:11 PM Changeset in webkit [169007] by
-
- 3 edits4 adds in trunk
Don't attempt to update id or name for nodes that are already removed
https://bugs.webkit.org/show_bug.cgi?id=133041
Reviewed by Sam Weinig.
Source/WebCore:
Tests: fast/dom/remove-element-with-id-that-was-inserted-on-DOMNodeRemoved.html
fast/dom/remove-element-with-name-that-was-inserted-on-DOMNodeRemoved.html
- dom/Element.cpp:
(WebCore::Element::removedFrom): Skip updating ids and names for an element not
in a treescope, as we already do for elements not in a document.
LayoutTests:
Test originally by Dan Bates.
- fast/dom/remove-element-with-id-that-was-inserted-on-DOMNodeRemoved-expected.txt: Added.
- fast/dom/remove-element-with-id-that-was-inserted-on-DOMNodeRemoved.html: Added.
- fast/dom/remove-element-with-name-that-was-inserted-on-DOMNodeRemoved-expected.txt: Added.
- fast/dom/remove-element-with-name-that-was-inserted-on-DOMNodeRemoved.html: Added.
- 10:29 PM Changeset in webkit [169006] by
-
- 11 edits in trunk
REGRESSION (NetworkProcess): Trying to use appcache fallback crashes in ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache
https://bugs.webkit.org/show_bug.cgi?id=133007
<rdar://problem/13702706>
appcache tests often fail on the Mac WebKit2 bot
https://bugs.webkit.org/show_bug.cgi?id=82061
Reviewed by Maciej Stachowiak.
Source/WebCore:
Covered by existing tests, which this patch enables.
- WebCore.exp.in: Export ResourceLoader::cancel(const ResourceError&). It used
to be virtual, but marking subclasses final has resulted in the compiler calling
it directly from WebKitLegacy framework. Seeing that no subclass overrides it,
I then made it non-virtual.
Also export ApplicationCacheHost functions that are now used from WebKit2.
- loader/ResourceLoader.h: Made the class abstract (as I didn't realize at first
that it's always either a SubresourceLoader or a NetscapePlugInStreamLoader).
Made ResourceHandleClient functions private, as they should never be called other
than via a ResourceHandleClient pointer.
- loader/NetscapePlugInStreamLoader.h:
- loader/SubresourceLoader.h:
Marked these final.
- loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willSwitchToSubstituteResource):
Added a function to be called when switching to a substitute resource. We still
need a ResourceLoader at this point, as substitute resource will be delivered through
it, but we don't want it to continue its current load.
- loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache):
Call the ResourceLoader function instead of using handle, which is null when
using out of process networking.
Source/WebKit2:
- WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::willSendRequest):
(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
(WebKit::WebResourceLoader::didFailResourceLoad):
Perform the same appcache checks that ResourceHandleClient implementation in ResourceLoader
does. We should eventually come up with a way to share the code. Perhaps add a class that
isolates ResourceLoader from networking details? But ResourceLoader was itself supposed
to be the class that isolates DocumentLoader from networking details. So, unsure.
LayoutTests:
- platform/mac-wk2/TestExpectations: Let's enable all the appcache tests (except
for a couple that fail), and see what happens on bots. I don't see any reason
why WebKit2 would be any more flaky than WebKit1 here.
- 8:44 PM Changeset in webkit [169005] by
-
- 7 edits in branches/ftlopt/Source/JavaScriptCore
[ftlopt] InlineCallFrame::isCall should be an enumeration
https://bugs.webkit.org/show_bug.cgi?id=133034
Reviewed by Sam Weinig.
Once we start inlining getters and setters, we'll want InlineCallFrame to be able to tell
us that the inlined call was a getter call or a setter call. Initially I thought I would
have a new field called "kind" that would have components NormalCall, GetterCall, and
SetterCall. But that doesn't make sense, because for GetterCall and SetterCall, isCall
would have to be true. Hence, It makes more sense to have one enumeration that is Call,
Construct, GetterCall, or SetterCall. This patch is a first step towards this.
It's interesting that isClosureCall should probably still be separate, since getter and
setter inlining could inline closure calls.
- bytecode/CodeBlock.h:
(JSC::baselineCodeBlockForInlineCallFrame):
- bytecode/CodeOrigin.cpp:
(JSC::InlineCallFrame::dumpInContext):
(WTF::printInternal):
- bytecode/CodeOrigin.h:
(JSC::InlineCallFrame::kindFor):
(JSC::InlineCallFrame::specializationKindFor):
(JSC::InlineCallFrame::InlineCallFrame):
(JSC::InlineCallFrame::specializationKind):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
- dfg/DFGOSRExitPreparation.cpp:
(JSC::DFG::prepareCodeOriginForOSRExit):
- runtime/Arguments.h:
(JSC::Arguments::finishCreation):
- 7:05 PM Changeset in webkit [169004] by
-
- 2 edits in trunk/Source/WebCore
We shouldn't make a ScrollingThread on iOS.
<https://webkit.org/b/133038>
<rdar://problem/16947589>
Don't call ScrollingThred::dispatch() from the pressure relief
code on iOS since that will end up instantiating a scrolling thread
which we'd otherwise never have.
Reviewed by Sam Weinig.
- platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::releaseMemory):
- 6:43 PM Changeset in webkit [169003] by
-
- 4 edits in trunk/Source/WebKit2
[EFL] Remove m_contentPosition from PageViewportControllerClientEfl
https://bugs.webkit.org/show_bug.cgi?id=132774
Reviewed by Anders Carlsson.
m_contentPosition is not used anywhere. So, this patch removes
m_contentPosition and reduces one unnecessary assignment in
setViewportPosition. Also, it renames contentsPoint to contentsPosition.
- UIProcess/PageViewportControllerClient.h:
- UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setViewportPosition):
- UIProcess/efl/PageViewportControllerClientEfl.h:
- 5:40 PM Changeset in webkit [169002] by
-
- 10 edits in trunk
Subpixel rendering: Add subpixelCSSOMElementMetricsEnabled to WK1 WebPreferences.
https://bugs.webkit.org/show_bug.cgi?id=133029
Reviewed by Simon Fraser.
Source/WebKit/mac:
To match the WK2 preferences API.
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences subpixelCSSOMElementMetricsEnabled]):
(-[WebPreferences setSubpixelCSSOMElementMetricsEnabled:]):
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Tools:
Added a menu item to toggle subpixelCSSOMElementMetricsEnabled's value. However
toggling it on a WK2 window needs restart.
Adding dynamic toggle to WK2 requires a WebPreferences SPI. It's not worth cluttering
the WebPreferences just to support this temporary toggle.
- MiniBrowser/mac/BrowserWindowController.h:
- MiniBrowser/mac/MainMenu.xib:
- MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController validateMenuItem:]):
(-[WK1BrowserWindowController isSubpixelCSSOMElementMetricsEnabled]):
(-[WK1BrowserWindowController toggleSubpixelCSSOMElementMetricsEnabled:]):
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController validateMenuItem:]):
(-[WK2BrowserWindowController isSubpixelCSSOMElementMetricsEnabled]):
(-[WK2BrowserWindowController toggleSubpixelCSSOMElementMetricsEnabled:]):
- 5:38 PM Changeset in webkit [169001] by
-
- 3 edits in trunk/Source/WebKit2
Need a way to get a WKPageRef from a WKWebView
<http://webkit.org/b/133015>
Reviewed by Benjamin Poulain.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _pageRef]): Added.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
(-[WKWebView _pageRef]): Added declaration.
- 4:24 PM Changeset in webkit [169000] by
-
- 3 edits in trunk/Source/WebKit2
Give user scripts custom URLs
https://bugs.webkit.org/show_bug.cgi?id=133035
Reviewed by Beth Dakin.
- UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController addUserScript:]):
Create a user-script:<number> URL for user scripts.
- UIProcess/API/Cocoa/WKUserScript.h:
Move the init method after the properties.
- 3:31 PM Changeset in webkit [168999] by
-
- 16 edits in trunk
Replace WKContextSetDatabaseDirectory with two WKContextConfiguration parameters
https://bugs.webkit.org/show_bug.cgi?id=133033
<rdar://problem/16830143>
Reviewed by Sam Weinig.
Source/WebKit2:
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
Rename databaseDirectory to webSQLDatabaseDirectory to better indicate the directory type.
- UIProcess/API/C/WKContext.cpp:
(WKContextSetDatabaseDirectory): Deleted.
This is no longer needed.
- UIProcess/API/C/WKContextConfigurationRef.cpp:
(WKContextConfigurationCopyIndexedDBDatabaseDirectory):
(WKContextConfigurationSetIndexedDBDatabaseDirectory):
(WKContextConfigurationCopyWebSQLDatabaseDirectory):
(WKContextConfigurationSetWebSQLDatabaseDirectory):
- UIProcess/API/C/WKContextConfigurationRef.h:
Add setters and getters.
- UIProcess/API/C/WKContextPrivate.h:
Remove WKContextSetDatabaseDirectory.
- UIProcess/APIContextConfiguration.cpp:
(API::ContextConfiguration::webContextConfiguration):
Set m_indexedDBDatabaseDirectory and m_webSQLDatabaseDirectory on the configuration.
- UIProcess/APIContextConfiguration.h:
(API::ContextConfiguration::indexedDBDatabaseDirectory):
(API::ContextConfiguration::setIndexedDBDatabaseDirectory):
(API::ContextConfiguration::webSQLDatabaseDirectory):
(API::ContextConfiguration::setWebSQLDatabaseDirectory):
Add getters and setters to the C++ part of WKContextConfigurationRef.
- UIProcess/WebContext.cpp:
(WebKit::WebContext::applyPlatformSpecificConfigurationDefaults):
Set webSQLDatabaseDirectory and indexedDBDatabaseDirectory.
(WebKit::WebContext::WebContext):
Initialize m_webSQLDatabaseDirectory and m_indexedDBDatabaseDirectory.
(WebKit::WebContext::ensureDatabaseProcess):
Set parameters.indexedDatabaseDirectory from m_indexedDBDatabaseDirectory.
(WebKit::WebContext::createNewWebProcess):
Set parameters.webSQLDatabaseDirectory from m_webSQLDatabaseDirectory.
- UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory):
Rename this to indicate that it's about WebSQL databases.
(WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory):
Add this.
- WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
(WebKit::WebDatabaseManager::initialize):
Update for WebProcessCreationParameters rename.
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Update for WebProcessCreationParameters rename.
Tools:
Set up the WebSQL and IndexedDB directories.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
- 2:49 PM Changeset in webkit [168998] by
-
- 2 edits in trunk/Source/WebKit2
[Phone Number Detection] drop-down menu in the phone number detection box doesn't appear.
https://bugs.webkit.org/show_bug.cgi?id=133024
Reviewed by Sam Weinig.
- WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:
(WebKit::TelephoneNumberOverlayController::drawRect): Don't clear the set of found phone numbers each
time we call drawRect. This gets called ~9 times per screen refresh, so end up with no active
phone numbers to interact with.
- 2:42 PM Changeset in webkit [168997] by
-
- 2 edits in trunk/Source/WebKit2
NetworkProcess can repeatedly crash handling Blob messages after any unrelated crash
https://bugs.webkit.org/show_bug.cgi?id=133032
<rdar://problem/16951630>
Reviewed by Geoffrey Garen.
Replaced assertions with runtime checks. This can happen if NetworkProcess previously
crashed for any unrelated reason.
- NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
(WebKit::NetworkBlobRegistry::registerBlobURL):
(WebKit::NetworkBlobRegistry::registerBlobURLForSlice):
(WebKit::NetworkBlobRegistry::unregisterBlobURL):
- 2:36 PM Changeset in webkit [168996] by
-
- 4 edits2 adds in trunk
Setting playback rate on video with media controller is not ignored.
https://bugs.webkit.org/show_bug.cgi?id=129048
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-17
Reviewed by Jer Noble.
Source/WebCore:
Replaced queries for m_playbackRate with effectivePlaybackRate()
which includes media controller playback rate.
Test: media/video-controller-child-rate.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- html/HTMLMediaElement.h:
LayoutTests:
- media/video-controller-child-rate-expected.txt: Added.
- media/video-controller-child-rate.html: Added.
- 1:14 PM Changeset in webkit [168995] by
-
- 2 edits in trunk/Source/WebKit2
-[WKWebView dealloc] should close the page
https://bugs.webkit.org/show_bug.cgi?id=133031
<rdar://problem/16929815>
Reviewed by Simon Fraser.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView dealloc]):
- 12:57 PM Changeset in webkit [168994] by
-
- 27 edits6 copies5 adds in trunk/Source
Expose WKUserScript as API
https://bugs.webkit.org/show_bug.cgi?id=133017
<rdar://problem/16948059>
Reviewed by Sam Weinig.
Source/WebCore:
- WebCore.exp.in:
Export symbols.
- WebCore.xcodeproj/project.pbxproj:
Change UserContentController.h to be a private header.
- page/Page.cpp:
(WebCore::Page::Page):
Set m_userContentController from the page configuration and add it if it's not null.
- page/Page.h:
Add UserContentController to PageClients.
- page/PageGroup.cpp:
(WebCore::PageGroup::addPage):
Only try to add a user content controller if the page doesn't already have one.
(WebCore::PageGroup::removePage):
Only try to remove the user content controller if it's the group one.
Source/WebKit2:
- DerivedSources.make:
Add WebUserContentController.
- Shared/API/Cocoa/WebKit.h:
Add WKUserScript.h
- Shared/API/c/WKSharedAPICast.h:
(WebKit::toUserScriptInjectionTime):
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- Shared/API/c/WKUserScriptInjectionTime.h:
Rename WKUserScriptInjectionTime to _WKUserScriptInjectionTime to free up the name for the Objective-C API
- Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
Encode the user content controller ID.
(WebKit::WebPageCreationParameters::decode):
Decode the user content controller ID.
- Shared/WebPageCreationParameters.h:
Add userContentControllerID.
- UIProcess/API/C/WKPageGroup.cpp:
(WKPageGroupAddUserScript):
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- UIProcess/API/C/WKPageGroup.h:
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- UIProcess/API/Cocoa/WKBrowsingContextGroup.h:
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
(-[WKBrowsingContextGroup addUserScript:baseURL:whitelistedURLPatterns:blacklistedURLPatterns:injectionTime:mainFrameOnly:]):
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- UIProcess/API/Cocoa/WKUserContentController.h:
Add new methods.
- UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController init]):
Create the WebUserContentControllerProxy object and user scripts array.
(-[WKUserContentController userScripts]):
Return the user scripts array.
(toWebCoreUserScriptInjectionTime):
Helper for converting from a WKUserScriptInjectionTime enum to WebCore::UserScriptInjectionTime.
(-[WKUserContentController addUserScript:]):
Call through to the _userContentControllerProxy object.
(-[WKUserContentController removeAllUserScripts]):
Call through to the _userContentControllerProxy object.
- UIProcess/API/Cocoa/WKUserContentControllerInternal.h: Added.
Add WebUserContentControllerProxy ivar.
- UIProcess/API/Cocoa/WKUserScript.h: Added.
Add new header.
- UIProcess/API/Cocoa/WKUserScript.mm:
(-[WKUserScript initWithSource:injectionTime:forMainFrameOnly:]):
Initialize the WKUserScript object.
(-[WKUserScript source]):
(-[WKUserScript injectionTime]):
(-[WKUserScript isForMainFrameOnly]):
Add getters.
(-[WKUserScript copyWithZone:]):
Since WKUserScript is immutable, just return a retained object.
- UIProcess/API/Cocoa/WKUserScriptInternal.h:
Add ivars.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
Set the user content controller from the configuration.
- UIProcess/UserContent/WebUserContentControllerProxy.cpp: Added.
(WebKit::generateIdentifier):
Return a unique identifier.
(WebKit::WebUserContentControllerProxy::create):
Return a new WebUserContentControllerProxy object.
(WebKit::WebUserContentControllerProxy::WebUserContentControllerProxy):
Initialize m_identifier.
(WebKit::WebUserContentControllerProxy::~WebUserContentControllerProxy):
Add destructor.
(WebKit::WebUserContentControllerProxy::addProcess):
Add the process to the m_processes set. If it's the first time doing so, add the user scripts we know about.
(WebKit::WebUserContentControllerProxy::removeProcess):
Remove the process from m_processes.
(WebKit::WebUserContentControllerProxy::addUserScript):
Add the user script and let all the web processes know that it was added.
(WebKit::WebUserContentControllerProxy::removeAllUserScripts):
Remove all user scripts and tell all the web processes about it.
- UIProcess/UserContent/WebUserContentControllerProxy.h:
Add new class.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
If the process is already running, add it to the user content controller.
(WebKit::WebPageProxy::close):
If the process is running, remove it from the user content controller.
(WebKit::WebPageProxy::connectionWillOpen):
Add the process to the user content controller.
(WebKit::WebPageProxy::resetStateAfterProcessExited):
Remove the process from the user content controller.
(WebKit::WebPageProxy::creationParameters):
Pass along the user content controller ID when creating the web page.
- UIProcess/WebPageProxy.h:
Add a WebUserContentControllerProxy object to the web page configuration.
- WebKit2.xcodeproj/project.pbxproj:
Add new files.
- WebProcess/InjectedBundle/API/c/WKBundle.cpp:
- WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
Update for WKUserScriptInjectionTime -> _WKUserScriptInjectionTime rename.
- WebProcess/UserContent/WebUserContentController.cpp: Added.
New class that manages a WebCore::UserContentController object.
(WebKit::WebUserContentController::getOrCreate):
Look up (or create) a WebUserContentController object given its identifier.
(WebKit::WebUserContentController::WebUserContentController):
Add ourselves as a message receiver.
(WebKit::WebUserContentController::~WebUserContentController):
Remove ourselves as a message receiver.
(WebKit::WebUserContentController::addUserScripts):
Add all passed in user scripts to the WebCore user content controller object.
(WebKit::WebUserContentController::removeAllUserScripts):
Remove all user scripts from the WebCore user content controller object.
- WebProcess/UserContent/WebUserContentController.messages.in: Added.
Add new messages file.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
Get a WebUserContentController object and pass it along to WebCore.
- WebProcess/WebPage/WebPage.h:
Add WebUserContentController member.
- 3:08 AM Changeset in webkit [168993] by
-
- 7 edits in trunk/Source/WebCore
REGRESSION (r166422): All RenderBox objects grew 104 bytes from adding repaint timers.
<https://webkit.org/b/133027>
<rdar://problem/16867410>
Instead of storing a rarely-used repaint timer on every RenderBox, store one
on the RenderView, and keep a hash set of renderers needing repaint.
Renderers get a flag tracking whether they have a pending lazy repaint.
This way we can avoid hash lookups in the common case.
Also added a static assertion to catch RenderBox growing in the future.
Reviewed by Antti Koivisto.
- rendering/RenderBox.cpp:
(WebCore::SameSizeAsRenderBox::~SameSizeAsRenderBox):
(WebCore::RenderBox::RenderBox):
(WebCore::RenderBox::~RenderBox):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::layoutOverflowRectForPropagation):
- rendering/RenderBox.h:
- rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
- rendering/RenderElement.h:
(WebCore::RenderElement::setRenderBoxNeedsLazyRepaint):
(WebCore::RenderElement::renderBoxNeedsLazyRepaint):
- rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
(WebCore::RenderView::scheduleLazyRepaint):
(WebCore::RenderView::unscheduleLazyRepaint):
(WebCore::RenderView::lazyRepaintTimerFired):
- rendering/RenderView.h:
May 16, 2014:
- 11:23 PM Changeset in webkit [168992] by
-
- 2 edits in trunk/Source/WebKit/efl
[EFL] Build break after 168978.
https://bugs.webkit.org/show_bug.cgi?id=133012.
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-16
Reviewed by Simon Fraser.
- ewk/ewk_view.cpp:
(_ewk_view_priv_new):
- 10:41 PM Changeset in webkit [168991] by
-
- 4 edits in trunk/Source/WebCore
[Mac][MSE] setCurrentTime() goes down fastSeek path in MediaPlayerPrivateMediaSourceAVFObjC.
https://bugs.webkit.org/show_bug.cgi?id=133023
Reviewed by Eric Carlson.
When seeking a MSE video, do not go down the fastSeekForMediaTime() path if the
seek resulted from a setCurrentTime() call. The logic can lead to attempted seeks
before buffered ranges.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::seekToTime):
- 7:11 PM Changeset in webkit [168990] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning
- 6:42 PM Changeset in webkit [168989] by
-
- 1 copy in tags/Safari-538.34.41
Create Safari-538.34.41 tag.
- 6:30 PM Changeset in webkit [168988] by
-
- 2 edits in trunk/Source/WebKit2
[GTK] Build break after 168978.
https://bugs.webkit.org/show_bug.cgi?id=133012.
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-16
Reviewed by Simon Fraser.
- UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsConstructed):
- 6:18 PM Changeset in webkit [168987] by
-
- 2 edits in trunk/LayoutTests
Fix a straggler.
Remove call to internals.settings.setRegionBasedColumnsEnabled(true).
- fast/repaint/spanner-with-margin.html:
- 5:29 PM Changeset in webkit [168986] by
-
- 2 edits in trunk/Source/WebKit2
Put back a symbol removed in r168978 that Safari needs, but deprecate it.
Reviewed by Anders Carlsson.
- Shared/API/c/WKDeprecatedFunctions.cpp:
(WKPreferencesSetRegionBasedColumnsEnabled):
(WKPreferencesGetRegionBasedColumnsEnabled):
- 5:06 PM Changeset in webkit [168985] by
-
- 269 edits in trunk/LayoutTests
Remove calls to internals.settings.setRegionBasedColumnsEnabled(true);
in tests.
Some of these tests may now be no-ops, but I haven't found a convenient
way to know which ones.
- fast/multicol/break-in-columns-before-spanner-expected.html:
- fast/multicol/break-in-columns-before-spanner.html:
- fast/multicol/break-in-scrollable-expected.html:
- fast/multicol/break-in-scrollable.html:
- fast/multicol/client-rects-spanners-complex.html:
- fast/multicol/client-rects-spanners.html:
- fast/multicol/inline-children-crash.html:
- fast/multicol/mixed-opacity-fixed-test.html:
- fast/multicol/mixed-opacity-test.html:
- fast/multicol/mixed-positioning-stacking-order.html:
- fast/multicol/multicol-li-crash.html:
- fast/multicol/newmulticol/adjacent-spanners.html:
- fast/multicol/newmulticol/avoid-column-break-inside.html:
- fast/multicol/newmulticol/balance-images.html:
- fast/multicol/newmulticol/balance-maxheight1.html:
- fast/multicol/newmulticol/balance-maxheight2.html:
- fast/multicol/newmulticol/balance1.html:
- fast/multicol/newmulticol/balance10.html:
- fast/multicol/newmulticol/balance2.html:
- fast/multicol/newmulticol/balance3.html:
- fast/multicol/newmulticol/balance4.html:
- fast/multicol/newmulticol/balance5.html:
- fast/multicol/newmulticol/balance6.html:
- fast/multicol/newmulticol/balance7.html:
- fast/multicol/newmulticol/balance8.html:
- fast/multicol/newmulticol/balance9.html:
- fast/multicol/newmulticol/block-becomes-spanner-expected.html:
- fast/multicol/newmulticol/block-becomes-spanner.html:
- fast/multicol/newmulticol/break-after-expected.html:
- fast/multicol/newmulticol/break-after.html:
- fast/multicol/newmulticol/break-before.html:
- fast/multicol/newmulticol/breaks-2-columns-3-no-balancing.html:
- fast/multicol/newmulticol/breaks-2-columns-3.html:
- fast/multicol/newmulticol/breaks-3-columns-3.html:
- fast/multicol/newmulticol/cell-shrinkback.html:
- fast/multicol/newmulticol/change-spanner-display-expected.html:
- fast/multicol/newmulticol/change-spanner-display.html:
- fast/multicol/newmulticol/change-spanner-parent-display-expected.html:
- fast/multicol/newmulticol/change-spanner-parent-display.html:
- fast/multicol/newmulticol/client-rects.html:
- fast/multicol/newmulticol/clipping-expected.html:
- fast/multicol/newmulticol/clipping-overflow-hidden-expected.html:
- fast/multicol/newmulticol/clipping-overflow-hidden.html:
- fast/multicol/newmulticol/clipping-top-overflow-expected.html:
- fast/multicol/newmulticol/clipping-top-overflow.html:
- fast/multicol/newmulticol/clipping.html:
- fast/multicol/newmulticol/column-rules-fixed-height.html:
- fast/multicol/newmulticol/columns-shorthand-parsing.html:
- fast/multicol/newmulticol/compare-with-old-impl/BottomToTop-tb.html:
- fast/multicol/newmulticol/compare-with-old-impl/LeftToRight-tb.html:
- fast/multicol/newmulticol/compare-with-old-impl/anonymous-block-split-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/before-child-anonymous-column-block.html:
- fast/multicol/newmulticol/compare-with-old-impl/clone-before-after-content-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/clone-block-children-inline-mismatch-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/clone-flexbox.html:
- fast/multicol/newmulticol/compare-with-old-impl/clone-summary.html:
- fast/multicol/newmulticol/compare-with-old-impl/column-rules-stacking.html:
- fast/multicol/newmulticol/compare-with-old-impl/column-span-inside-multicol-webkit-box.html:
- fast/multicol/newmulticol/compare-with-old-impl/continuation-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/double-merge-anonymous-block-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/empty-anonymous-block-split-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/float-not-removed-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-above-or-below.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-block-axis-flipped.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-end-of-column-with-line-height.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-end-of-column.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-float.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-gap-between-pages-flipped.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-gap-between-pages.html:
- fast/multicol/newmulticol/compare-with-old-impl/hit-test-gap-block-axis.html:
- fast/multicol/newmulticol/compare-with-old-impl/list-multi-column-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/multicol-with-child-renderLayer-for-input-expected.html:
- fast/multicol/newmulticol/compare-with-old-impl/multicol-with-child-renderLayer-for-input.html:
- fast/multicol/newmulticol/compare-with-old-impl/overflow-content.html:
- fast/multicol/newmulticol/compare-with-old-impl/positioned-child-not-removed-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/positioned-objects-not-removed-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/recursive-split-flow-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/removal-of-multicol-span-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/remove-child-split-flow-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/runin-continuation-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/shrink-to-column-height-for-pagination.html:
- fast/multicol/newmulticol/compare-with-old-impl/span-as-nested-inline-block-child.html:
- fast/multicol/newmulticol/compare-with-old-impl/split-flow-anonymous-wrapper-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/split-inline-wrong-post-block-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/table-multi-column-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/textbox-not-removed-crash.html:
- fast/multicol/newmulticol/compare-with-old-impl/update-after-content-before-child-crash.html:
- fast/multicol/newmulticol/direct-child-column-span-all.html:
- fast/multicol/newmulticol/fixed-height-fill-auto-expected.html:
- fast/multicol/newmulticol/fixed-height-fill-auto.html:
- fast/multicol/newmulticol/fixed-height-fill-balance-2.html:
- fast/multicol/newmulticol/fixed-height-fill-balance-expected.html:
- fast/multicol/newmulticol/fixed-height-fill-balance.html:
- fast/multicol/newmulticol/float-avoidance.html:
- fast/multicol/newmulticol/float-multicol.html:
- fast/multicol/newmulticol/float-paginate-complex.html:
- fast/multicol/newmulticol/float-paginate-empty-lines.html:
- fast/multicol/newmulticol/float-paginate.html:
- fast/multicol/newmulticol/hide-box-horizontal-bt-expected.html:
- fast/multicol/newmulticol/hide-box-horizontal-bt.html:
- fast/multicol/newmulticol/hide-box-vertical-lr-expected.html:
- fast/multicol/newmulticol/hide-box-vertical-lr.html:
- fast/multicol/newmulticol/hide-box-vertical-rl-expected.html:
- fast/multicol/newmulticol/hide-box-vertical-rl.html:
- fast/multicol/newmulticol/insert-row-content1-expected.html:
- fast/multicol/newmulticol/insert-row-content1.html:
- fast/multicol/newmulticol/insert-row-content2-expected.html:
- fast/multicol/newmulticol/insert-row-content2.html:
- fast/multicol/newmulticol/insert-row-content3-expected.html:
- fast/multicol/newmulticol/insert-row-content3.html:
- fast/multicol/newmulticol/insert-row-content4-expected.html:
- fast/multicol/newmulticol/insert-row-content4.html:
- fast/multicol/newmulticol/insert-row-content5-expected.html:
- fast/multicol/newmulticol/insert-row-content5.html:
- fast/multicol/newmulticol/insert-row-content6-expected.html:
- fast/multicol/newmulticol/insert-row-content6.html:
- fast/multicol/newmulticol/insert-row-content7-expected.html:
- fast/multicol/newmulticol/insert-row-content7.html:
- fast/multicol/newmulticol/insert-row-content8-expected.html:
- fast/multicol/newmulticol/insert-row-content8.html:
- fast/multicol/newmulticol/insert-row-content9-expected.html:
- fast/multicol/newmulticol/insert-row-content9.html:
- fast/multicol/newmulticol/insert-spanner-child1-expected.html:
- fast/multicol/newmulticol/insert-spanner-child1.html:
- fast/multicol/newmulticol/insert-spanner-child2-expected.html:
- fast/multicol/newmulticol/insert-spanner-child2.html:
- fast/multicol/newmulticol/insert-spanner-child3-expected.html:
- fast/multicol/newmulticol/insert-spanner-child3.html:
- fast/multicol/newmulticol/insert-spanner1-expected.html:
- fast/multicol/newmulticol/insert-spanner1.html:
- fast/multicol/newmulticol/insert-spanner2-expected.html:
- fast/multicol/newmulticol/insert-spanner2.html:
- fast/multicol/newmulticol/insert-spanner3-expected.html:
- fast/multicol/newmulticol/insert-spanner3.html:
- fast/multicol/newmulticol/insert-spanner4-expected.html:
- fast/multicol/newmulticol/insert-spanner4.html:
- fast/multicol/newmulticol/insert-spanner5-expected.html:
- fast/multicol/newmulticol/insert-spanner5.html:
- fast/multicol/newmulticol/insert-spanner6-expected.html:
- fast/multicol/newmulticol/insert-spanner6.html:
- fast/multicol/newmulticol/insert-spanner7-expected.html:
- fast/multicol/newmulticol/insert-spanner7.html:
- fast/multicol/newmulticol/insert-spanner8-expected.html:
- fast/multicol/newmulticol/insert-spanner8.html:
- fast/multicol/newmulticol/layers-in-multicol.html:
- fast/multicol/newmulticol/layers-split-across-columns.html:
- fast/multicol/newmulticol/leading-and-trailing-margin-expected.html:
- fast/multicol/newmulticol/leading-and-trailing-margin.html:
- fast/multicol/newmulticol/leading-margin.html:
- fast/multicol/newmulticol/line-grid-inside-columns.html:
- fast/multicol/newmulticol/line-grid-into-columns.html:
- fast/multicol/newmulticol/multicol-with-spanner-becomes-regular-block.html:
- fast/multicol/newmulticol/orphans-and-widows-balance.html:
- fast/multicol/newmulticol/positioned-split.html:
- fast/multicol/newmulticol/positioned-with-constrained-height.html:
- fast/multicol/newmulticol/progression-reverse-overflow.html:
- fast/multicol/newmulticol/progression-reverse.html:
- fast/multicol/newmulticol/remove-row-content1-expected.html:
- fast/multicol/newmulticol/remove-row-content1.html:
- fast/multicol/newmulticol/remove-row-content2-expected.html:
- fast/multicol/newmulticol/remove-row-content2.html:
- fast/multicol/newmulticol/remove-row-content3-expected.html:
- fast/multicol/newmulticol/remove-row-content3.html:
- fast/multicol/newmulticol/remove-row-content4-expected.html:
- fast/multicol/newmulticol/remove-row-content4.html:
- fast/multicol/newmulticol/remove-row-content5-expected.html:
- fast/multicol/newmulticol/remove-row-content5.html:
- fast/multicol/newmulticol/remove-row-content6-expected.html:
- fast/multicol/newmulticol/remove-row-content6.html:
- fast/multicol/newmulticol/remove-row-content7-expected.html:
- fast/multicol/newmulticol/remove-row-content7.html:
- fast/multicol/newmulticol/remove-row-content8-expected.html:
- fast/multicol/newmulticol/remove-row-content8.html:
- fast/multicol/newmulticol/remove-row-content9-expected.html:
- fast/multicol/newmulticol/remove-row-content9.html:
- fast/multicol/newmulticol/remove-spanner1-expected.html:
- fast/multicol/newmulticol/remove-spanner1.html:
- fast/multicol/newmulticol/remove-spanner2-expected.html:
- fast/multicol/newmulticol/remove-spanner2.html:
- fast/multicol/newmulticol/remove-spanner3-expected.html:
- fast/multicol/newmulticol/remove-spanner3.html:
- fast/multicol/newmulticol/remove-spanner4-expected.html:
- fast/multicol/newmulticol/remove-spanner4.html:
- fast/multicol/newmulticol/remove-spanner5-expected.html:
- fast/multicol/newmulticol/remove-spanner5.html:
- fast/multicol/newmulticol/remove-spanner6-expected.html:
- fast/multicol/newmulticol/remove-spanner6.html:
- fast/multicol/newmulticol/single-line.html:
- fast/multicol/newmulticol/sole-spanner.html:
- fast/multicol/newmulticol/span-between-text-expected.html:
- fast/multicol/newmulticol/span-between-text.html:
- fast/multicol/newmulticol/spanner-becomes-regular-block-expected.html:
- fast/multicol/newmulticol/spanner-becomes-regular-block.html:
- fast/multicol/newmulticol/spanner-first-expected.html:
- fast/multicol/newmulticol/spanner-first.html:
- fast/multicol/newmulticol/spanner-img-expected.html:
- fast/multicol/newmulticol/spanner-img.html:
- fast/multicol/newmulticol/spanner-inline-block-expected.html:
- fast/multicol/newmulticol/spanner-inline-block.html:
- fast/multicol/newmulticol/spanner-last-expected.html:
- fast/multicol/newmulticol/spanner-last.html:
- fast/multicol/newmulticol/spanner-nested-dynamic-expected.html:
- fast/multicol/newmulticol/spanner-nested-dynamic.html:
- fast/multicol/newmulticol/spanner-nested-expected.html:
- fast/multicol/newmulticol/spanner-nested.html:
- fast/multicol/newmulticol/spanner-pseudo-after1-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-after1.html:
- fast/multicol/newmulticol/spanner-pseudo-after2-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-after2.html:
- fast/multicol/newmulticol/spanner-pseudo-after3-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-after3.html:
- fast/multicol/newmulticol/spanner-pseudo-after4-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-after4.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after1-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after1.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after2-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after2.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after3-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after3.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after4-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before-after4.html:
- fast/multicol/newmulticol/spanner-pseudo-before1-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before1.html:
- fast/multicol/newmulticol/spanner-pseudo-before2-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before2.html:
- fast/multicol/newmulticol/spanner-pseudo-before3-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before3.html:
- fast/multicol/newmulticol/spanner-pseudo-before4-expected.html:
- fast/multicol/newmulticol/spanner-pseudo-before4.html:
- fast/multicol/newmulticol/spanner-table-expected.html:
- fast/multicol/newmulticol/spanner-table.html:
- fast/multicol/newmulticol/spanner-with-margin-expected.html:
- fast/multicol/newmulticol/spanner-with-margin.html:
- fast/multicol/newmulticol/spanner1-expected.html:
- fast/multicol/newmulticol/spanner1.html:
- fast/multicol/newmulticol/spanner2-expected.html:
- fast/multicol/newmulticol/spanner2.html:
- fast/multicol/newmulticol/spanner3-expected.html:
- fast/multicol/newmulticol/spanner3.html:
- fast/multicol/newmulticol/spanner4-expected.html:
- fast/multicol/newmulticol/spanner4.html:
- fast/multicol/newmulticol/spanner5-expected.html:
- fast/multicol/newmulticol/spanner5.html:
- fast/multicol/newmulticol/spanner6-expected.html:
- fast/multicol/newmulticol/spanner6.html:
- fast/multicol/newmulticol/spanner7-expected.html:
- fast/multicol/newmulticol/spanner7.html:
- fast/multicol/newmulticol/spanner8-expected.html:
- fast/multicol/newmulticol/spanner8.html:
- fast/multicol/newmulticol/spanner9-expected.html:
- fast/multicol/newmulticol/spanner9.html:
- fast/multicol/newmulticol/trailing-margin-with-spanner-expected.html:
- fast/multicol/newmulticol/trailing-margin-with-spanner.html:
- fast/multicol/newmulticol/trailing-margin-with-spanner2-expected.html:
- fast/multicol/newmulticol/trailing-margin-with-spanner2.html:
- fast/multicol/newmulticol/unresolvable-percent-height-2.html:
- fast/multicol/newmulticol/unresolvable-percent-height.html:
- fast/multicol/newmulticol/unresolvable-percent-max-height-2.html:
- fast/multicol/newmulticol/unresolvable-percent-max-height.html:
- fast/multicol/offset-top-left.html:
- fast/multicol/percent-height.html:
- fast/multicol/positioned-outside-of-columns.html:
- fast/multicol/scrolling-column-rules.html:
- fast/multicol/tall-float-expected.html:
- fast/multicol/tall-float.html:
- fast/multicol/transform-inside-opacity.html:
- fast/multicol/zoom-test-expected.html:
- fast/multicol/zoom-test.html:
- 4:28 PM Changeset in webkit [168984] by
-
- 9 edits in trunk/Source/WebKit2
Separate enabling sandbox extensions from the WEB_PROCESS_SANDBOX flag
https://bugs.webkit.org/show_bug.cgi?id=133016
Reviewed by Alexey Proskuryakov.
Add a distinct SANDBOX_EXTENSIONS flag to guard sandbox extensions
and switch over to it in the places that extensions are used.
- Shared/SandboxExtension.h:
- Shared/mac/SandboxExtensionMac.mm:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChooseFilesForOpenPanel):
- WebKit2Prefix.h:
- WebProcess/WebPage/WebPage.cpp:
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
- 3:09 PM Changeset in webkit [168983] by
-
- 4 edits1 add in trunk/Source/JavaScriptCore
Crash in JSC::Yarr::YarrGenerator<(JSC::Yarr::YarrJITCompileMode)0>::generatePatternCharacterFixed() due to WTF::CrashOnOverflow::overflowed + 9
https://bugs.webkit.org/show_bug.cgi?id=133009
Reviewed by Oliver Hunt.
If we determine that any alternative requires a minumum match size greater than
INT_MAX, we handle the match in the interpreter.
Check to see if the pattern has unsigned lengths before invoking YARR JIT.
- runtime/RegExp.cpp:
(JSC::RegExp::compile):
(JSC::RegExp::compileMatchOnly):
- tests/stress/large-regexp.js: New test added.
Set m_containsUnsignedLengthPattern flag if any alternative's minimum length
doesn't fit in an int.
- yarr/YarrPattern.cpp:
(JSC::Yarr::YarrPatternConstructor::setupDisjunctionOffsets):
Clear new m_containsUnsignedLengthPattern flag.
- yarr/YarrPattern.cpp:
(JSC::Yarr::YarrPattern::YarrPattern):
- yarr/YarrPattern.h:
(JSC::Yarr::YarrPattern::reset):
(JSC::Yarr::YarrPattern::containsUnsignedLengthPattern):
- 2:55 PM Changeset in webkit [168982] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Add a heuristic to set the right horizontal offset on rotation for responsive websites
https://bugs.webkit.org/show_bug.cgi?id=132937
<rdar://problem/16710097>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-16
Reviewed by Simon Fraser.
When responsive websites have the content size lay out larger than the minimal layout size,
we should not keep the relative horizontal position into view,
many of those websites have all the content on the left.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 2:47 PM Changeset in webkit [168981] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] On dynamic resize, the content offset is contrained to the old content size
https://bugs.webkit.org/show_bug.cgi?id=132972
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-16
Reviewed by Simon Fraser.
When we set the content offset, UIScrollView limits the value to the current valid range for
content size. Since the content size was only updated after the animation, when the first frame
comes in, the content offset would sometimes be limited to a smaller rect that the actual content.
To fix this, set the expected future content size before changing the offset.
During the animation, the content size could have changed arbitrarily. At the end of the animation,
we take the actual frame and set the definite content size.
Any update after that will be regular updates through didCommitLayer.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(-[WKWebView _endAnimatedResize]):
- 2:39 PM Changeset in webkit [168980] by
-
- 2 edits in trunk/Source/WebCore
[iOS] ScrollView::visibleContentRectInternal is bypassing the iOS code for unobscuredContentRect
https://bugs.webkit.org/show_bug.cgi?id=133008
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-16
Reviewed by Simon Fraser.
- platform/ScrollView.cpp:
(WebCore::ScrollView::visibleContentRectInternal):
ScrollView::visibleContentRectInternal() was calling the internal implementation of visibleContentRect().
That was skipping the iOS implementation and getting the framerect directly. That size is invalid on iOS
when the exposed rect and unobscured rect are not the same.
- 2:32 PM Changeset in webkit [168979] by
-
- 3 edits2 adds in trunk
[Mac] naturalSize not updated when preload=metadata
https://bugs.webkit.org/show_bug.cgi?id=132994
Reviewed by Eric Carlson.
Source/WebCore:
Test: media/video-load-preload-metadata-naturalsize.html
When preload=metadata, we never create an AVPlayerItem, and therefore never receive a
presentationSize KVO. When an AVAsset informs us that its tracks have changed, and there
is no AVPlayerItem, recalculate presentation size based on the first video track's natural
size.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
LayoutTests:
- media/video-load-preload-metadata-naturalsize-expected.txt: Added.
- media/video-load-preload-metadata-naturalsize.html: Added.
- 2:16 PM Changeset in webkit [168978] by
-
- 12 edits in trunk/Source
Remove "region-based columns" prefs
https://bugs.webkit.org/show_bug.cgi?id=133006
<rdar://problem/16945824>
Reviewed by Dave Hyatt.
Remove "region-based columns" prefs and related code, since this is only
way to render columns now.
Source/WebCore:
- page/Settings.in:
Source/WebKit/mac:
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setRegionBasedColumnsEnabled:]): Deleted.
(-[WebPreferences regionBasedColumnsEnabled]): Deleted.
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Source/WebKit2:
- Shared/WebPreferencesStore.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetRegionBasedColumnsEnabled): Deleted.
(WKPreferencesGetRegionBasedColumnsEnabled): Deleted.
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
- 1:53 PM Changeset in webkit [168977] by
-
- 4 edits in trunk/Source/WebCore
Link search area for touch events is too large in some cases
https://bugs.webkit.org/show_bug.cgi?id=132988
<rdar://problem/16917843>
Reviewed by Simon Fraser.
- page/ios/FrameIOS.mm:
(WebCore::Frame::qualifyingNodeAtViewportLocation):
- Adjust the search area to screen ppi.
- Remove cut-off at scale 1. This made us pick physically far-away elements when zoomed in.
- platform/PlatformScreen.h:
- platform/ios/PlatformScreenIOS.mm:
(WebCore::mobileGestaltFloatValue):
(WebCore::screenPPIFactor):
Figure out screens physical PPI relative to a base.
- 1:46 PM Changeset in webkit [168976] by
-
- 3 edits in trunk/Source/WebKit2
Work around bug in Silverlight
https://bugs.webkit.org/show_bug.cgi?id=133004
Reviewed by Anders Carlsson.
- PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
(WebKit::PluginProcessMainDelegate::doPreInitializationWork): Add low-resolution flag
to user defaults prior to NSApplication invocation. This code was moved from
PluginProcess::platformInitializeProcess.
- PluginProcess/mac/PluginProcessMac.mm:
(WebKit::PluginProcess::platformInitializeProcess): Move low-resolution flag
setting to PluginProcessMainDelegate.
- 12:53 PM Changeset in webkit [168975] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening.
Added some flaky tests to TestExpectations.
Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-05-16
- platform/gtk/TestExpectations:
- 12:45 PM Changeset in webkit [168974] by
-
- 6 edits in trunk/Source/WebCore
[MSE] Crash at WebCore::SourceBuffer::~SourceBuffer + 110
https://bugs.webkit.org/show_bug.cgi?id=132973
Reviewed by Eric Carlson.
Change SourceBuffer::m_private into a Ref<>, and add an assertion to
SourceBufferPrivateAVFObjC's destructor if its client has not been cleared.
Eliminate unnecessary churn in MediaSourcePrivateAVFObjC by having the predicate
functor take bare pointers, rather than a PassRefPtr.
The underlying problem seems to be in WebAVStreamDataParserListener. RefPtrs were
being created off the main thread to a non-thread safe ref counted class. In some
situations, this would result in double decrementing the ref, which would cause an
early destruction of the underlying object. Instead replace these RefPtr strong
pointers with explicit weak ones. Ensure the parser and its delegate are not freed
before the append operation completes by passing strong pointers into the async
append operation lambda.
There were a few places where we weren't null checking m_mediaSource before using it,
and at least one place where we weren't clearing m_mediaSource.
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::SourceBuffer): Use Ref instead of RefPtr.
(WebCore::SourceBuffer::appendBufferTimerFired): Ditto.
- Modules/mediasource/SourceBuffer.h:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjCHasAudio): Take a bare pointer, instead of a PassRefPtr.
(WebCore::MediaSourcePrivateAVFObjCHasVideo): Ditto.
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::removeSourceBuffer): Clear the back pointer when removing a buffer.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(-[WebAVStreamDataParserListener initWithParser:parent:WebCore::]): Use WeakPtr instead of RefPtr.
(-[WebAVStreamDataParserListener invalidate]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didParseStreamDataAsAsset:]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didParseStreamDataAsAsset:withDiscontinuity:]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didFailToParseStreamDataWithError:]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didProvideMediaData:forTrackID:mediaType:flags:]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didReachEndOfTrackWithTrackID:mediaType:]): Ditto.
(-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::append): Ditto.
- 12:21 PM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 12:01 PM Changeset in webkit [168973] by
-
- 3 edits in trunk/LayoutTests
[Gtk] media/media-blocked-by-beforeload.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=89811
Patch by Piotr Grad <p.grad@samsung.com> on 2014-05-16
Reviewed by Eric Carlson.
Problem is that we cannot predict when 'error' event would be called,
because is called async on 'source' element. Solution is to not log
'loadedmetadata' and 'loadstart' events.
- media/media-blocked-by-beforeload-expected.txt:
- media/media-blocked-by-beforeload.html:
- 11:47 AM Changeset in webkit [168972] by
-
- 3 edits2 adds in trunk
Subpixel rendering: Push named flows in region to device pixel when painting.
https://bugs.webkit.org/show_bug.cgi?id=132986
Reviewed by Simon Fraser.
Remove integral rounding when named flow sets the painting offset on the graphics context.
Use device pixel snapping instead to ensure that we can paint on odd device pixel positions on retina displays.
Source/WebCore:
Test: fast/regions/hidpi-region-with-auto-margin-on-subpixel-position.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
LayoutTests:
- fast/regions/hidpi-region-with-auto-margin-on-subpixel-position-expected.html: Added.
- fast/regions/hidpi-region-with-auto-margin-on-subpixel-position.html: Added.
- 11:26 AM Changeset in webkit [168971] by
-
- 3 edits in trunk/Source/WebCore
[CSS Regions] Add ASSERT to make sure using the flowThread cache does not return incorrect results
https://bugs.webkit.org/show_bug.cgi?id=132906
Reviewed by Simon Fraser.
If flowThreadContainingBlock() is called on an object which is in a different
flow thread than the one currently being laid out, this method will return an incorrect
result. I added an assertion for that to make sure we catch and treat any such scenarios.
For the moment, this assertion is only validated for regions, as multicol still has some issues.
No new tests required.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::locateFlowThreadContainingBlockNoCache):
(WebCore::RenderObject::locateFlowThreadContainingBlock):
- rendering/RenderObject.h:
- 10:07 AM Changeset in webkit [168970] by
-
- 5 edits2 adds in trunk
MemoryCache::addImageToCache should return the result of add().
https://bugs.webkit.org/show_bug.cgi?id=132928
<rdar://problem/16651547>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
API test: WebKit1.MemoryCacheADdImageToCache (MemoryCacheAddImageToCacheIOS.mm)
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::addImageToCache):
Tools:
- TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/ios/MemoryCacheAddImageToCacheIOS.mm: Added.
(TestWebKitAPI::TEST):
- 9:34 AM Changeset in webkit [168969] by
-
- 2 edits in trunk/Tools
old-run-webkit-tests: allow specifying a simulator app path
https://bugs.webkit.org/show_bug.cgi?id=132975
Reviewed by Anders Carlsson.
- Scripts/old-run-webkit-tests:
(openIPhoneSimulator):
Add new --simulator-app command line parameter for specifying the
absolute path to the simulator app to launch before starting a
session.
- 7:35 AM Changeset in webkit [168968] by
-
- 6 edits in trunk/Tools
[webkitpy] In case of multiple bug rollout, all bugs should be reopened, not only the oldest one
https://bugs.webkit.org/show_bug.cgi?id=131363
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-05-16
Reviewed by Csaba Osztrogonác.
- Scripts/webkitpy/common/checkout/checkout_mock.py:
- Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
(MockBugzilla):
- Scripts/webkitpy/tool/commands/download_unittest.py:
(test_create_rollout_multiple_revision_with_one_resolved):
(test_create_rollout_multiple_resolved):
(test_rollout_two_revisions):
(test_rollout_multiple_revisions):
(test_rollout_multiple_revisions_with_a_missing_bug_id):
- Scripts/webkitpy/tool/steps/createbug.py:
(CreateBug.run):
- Scripts/webkitpy/tool/steps/reopenbugafterrollout.py:
(ReopenBugAfterRollout.run):
- 6:22 AM Changeset in webkit [168967] by
-
- 23 edits in trunk/Source/WebCore
[CSS Regions] Reduce the RenderRegion invasiveness in rendering code
https://bugs.webkit.org/show_bug.cgi?id=132121
Reviewed by Antti Koivisto.
Remove the RenderRegion / RenderNamedFlowFragment parameters and fields from
the painting / hit testing data structures and use a stateful approach to
correctly handle regions.
When painting or hit testing, the current flow thread is saved along the current
region. They are accessed through the |currentRenderNamedFlowFragment| helper
method on RenderObject or RenderLayer.
The patch also changes a bunch of 0s to nullptrs.
Tests: No new tests, no functional change.
- html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
- rendering/HitTestLocation.cpp:
(WebCore::HitTestLocation::HitTestLocation):
(WebCore::HitTestLocation::operator=):
- rendering/HitTestLocation.h:
(WebCore::HitTestLocation::region): Deleted.
- rendering/HitTestResult.h:
- rendering/PaintInfo.h:
(WebCore::PaintInfo::PaintInfo):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::nodeAtPoint):
- rendering/RenderBox.cpp:
(WebCore::RenderBox::nodeAtPoint):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::pushContentsClip):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderBoxModelObject.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paint):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer):
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::clippedByAncestor):
- rendering/RenderObject.cpp:
(WebCore::RenderObject::currentRenderNamedFlowFragment):
- rendering/RenderObject.h:
- rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
- rendering/RenderReplica.cpp:
(WebCore::RenderReplica::paint):
- rendering/RenderTable.cpp:
(WebCore::RenderTable::nodeAtPoint):
- rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::nodeAtPoint):
- rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paint):
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced):
- 4:56 AM Changeset in webkit [168966] by
-
- 4 edits in trunk
RTCDtmfSender default values need to be updated.
https://bugs.webkit.org/show_bug.cgi?id=132952
Patch by Kiran <kiran.guduru@samsung.com> on 2014-05-16
Reviewed by Eric Carlson.
Source/WebCore:
The default ToneDuration and ToneGap values are modified in the updated spec.
So these values need to be updated.
Test: fast/mediastream/RTCPeerConnection-dtmf.html.
- Modules/mediastream/RTCDTMFSender.cpp:
LayoutTests:
Added checks to test default, min value interToneGap
and duration and max value for duration.
(Spec does not specify any max value for inTertoneGap)
- fast/mediastream/RTCPeerConnection-dtmf.html:
- 2:02 AM Changeset in webkit [168965] by
-
- 6 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168886.
- 2:00 AM Changeset in webkit [168964] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168862.
- 1:57 AM Changeset in webkit [168963] by
-
- 3 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168848.
- 1:54 AM Changeset in webkit [168962] by
-
- 26 edits1 copy in branches/safari-538.34.5-branch/Source/JavaScriptCore
Merged r168776.
- 1:53 AM Changeset in webkit [168961] by
-
- 244 edits in trunk
[WK2] Change the remaining framework includes from WebKit2 to WebKit
https://bugs.webkit.org/show_bug.cgi?id=132956
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-16
Reviewed by Sam Weinig.
Source/WebKit2:
- NetworkProcess/unix/NetworkProcessMainUnix.cpp:
- NetworkProcess/unix/NetworkProcessMainUnix.h:
- PluginProcess/unix/PluginProcessMainUnix.h:
- Shared/API/c/cairo/WKImageCairo.h:
- Shared/API/c/cf/WKURLRequestCF.h:
- Shared/API/c/cf/WKURLResponseCF.h:
- Shared/API/c/efl/WKArrayEfl.cpp:
- Shared/API/c/efl/WKArrayEfl.h:
- UIProcess/API/C/CoordinatedGraphics/WKView.h:
- UIProcess/API/C/WKBatteryManager.h:
- UIProcess/API/C/WKBatteryStatus.h:
- UIProcess/API/C/WKGrammarDetail.h:
- UIProcess/API/C/WKTextChecker.h:
- UIProcess/API/C/WKVibration.h:
- UIProcess/API/C/WKViewportAttributes.h:
- UIProcess/API/C/cairo/WKIconDatabaseCairo.h:
- UIProcess/API/C/efl/WKAPICastEfl.h:
- UIProcess/API/C/efl/WKColorPickerResultListener.h:
- UIProcess/API/C/efl/WKEventEfl.h:
- UIProcess/API/C/efl/WKPageEfl.h:
- UIProcess/API/C/efl/WKPopupItem.h:
- UIProcess/API/C/efl/WKPopupMenuListener.h:
- UIProcess/API/C/efl/WKViewEfl.cpp:
- UIProcess/API/C/efl/WKViewEfl.h:
- UIProcess/API/C/gtk/WKFullScreenClientGtk.h:
- UIProcess/API/C/gtk/WKInspectorClientGtk.h:
- UIProcess/API/C/gtk/WKView.h:
- UIProcess/API/C/gtk/WKViewPrivate.h:
- UIProcess/API/C/soup/WKContextSoup.h:
- UIProcess/API/C/soup/WKCookieManagerSoup.h:
- UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.h:
- UIProcess/API/C/soup/WKSoupRequestManager.h:
- UIProcess/API/Cocoa/WKErrorRecoveryAttempting.h:
- UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.h:
- UIProcess/API/cpp/efl/WKEinaSharedString.cpp:
- UIProcess/API/cpp/efl/WKEinaSharedString.h:
- UIProcess/API/efl/EwkView.cpp:
- UIProcess/API/efl/EwkView.h:
- UIProcess/API/efl/EwkViewCallbacks.h:
- UIProcess/API/efl/GestureRecognizer.h:
- UIProcess/API/efl/ewk_application_cache_manager_private.h:
- UIProcess/API/efl/ewk_auth_request_private.h:
- UIProcess/API/efl/ewk_back_forward_list_item_private.h:
- UIProcess/API/efl/ewk_back_forward_list_private.h:
- UIProcess/API/efl/ewk_context_menu_item.cpp:
- UIProcess/API/efl/ewk_context_private.h:
- UIProcess/API/efl/ewk_cookie_manager_private.h:
- UIProcess/API/efl/ewk_database_manager_private.h:
- UIProcess/API/efl/ewk_error_private.h:
- UIProcess/API/efl/ewk_favicon_database_private.h:
- UIProcess/API/efl/ewk_file_chooser_request_private.h:
- UIProcess/API/efl/ewk_page_group_private.h:
- UIProcess/API/efl/ewk_popup_menu_item_private.h:
- UIProcess/API/efl/ewk_popup_menu_private.h:
- UIProcess/API/efl/ewk_security_origin_private.h:
- UIProcess/API/efl/ewk_settings_private.h:
- UIProcess/API/efl/ewk_storage_manager_private.h:
- UIProcess/API/efl/ewk_view.cpp:
- UIProcess/API/efl/ewk_view_private.h:
- UIProcess/API/efl/ewk_window_features_private.h:
- UIProcess/API/efl/tests/InjectedBundle/injected_bundle_sample.cpp:
- UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
- UIProcess/API/gtk/WebKitDownloadClient.cpp:
- UIProcess/API/gtk/WebKitPrivate.h:
- UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h:
- UIProcess/efl/BatteryProvider.h:
- UIProcess/efl/ContextHistoryClientEfl.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/RequestManagerClientEfl.h:
- UIProcess/efl/TextCheckerClientEfl.h:
- UIProcess/efl/VibrationClientEfl.h:
- UIProcess/efl/ViewClientEfl.cpp:
- UIProcess/efl/ViewClientEfl.h:
- UIProcess/efl/WebInspectorProxyEfl.cpp:
- WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
- WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
- WebProcess/efl/SeccompFiltersWebProcessEfl.cpp:
- WebProcess/efl/SeccompFiltersWebProcessEfl.h:
- WebProcess/efl/WebProcessMainEfl.cpp:
- WebProcess/efl/WebProcessMainEfl.h:
- WebProcess/gtk/WebGtkInjectedBundleMain.cpp:
- WebProcess/gtk/WebProcessMainGtk.cpp:
- WebProcess/gtk/WebProcessMainGtk.h:
- mac/WKPreferences.h:
Tools:
- MiniBrowser/MiniBrowserWebProcessPlugIn.h:
- MiniBrowser/mac/AppDelegate.m:
- MiniBrowser/mac/WK2BrowserWindowController.m:
- TestWebKitAPI/InjectedBundleController.h:
- TestWebKitAPI/InjectedBundleMain.cpp:
- TestWebKitAPI/JavaScriptTest.cpp:
- TestWebKitAPI/PlatformUtilities.h:
- TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
- TestWebKitAPI/Tests/WebKit2/CanHandleRequest.cpp:
- TestWebKitAPI/Tests/WebKit2/CanHandleRequest_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/CookieManager.cpp:
- TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp:
- TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp:
- TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp:
- TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/DidNotHandleKeyDown.cpp:
- TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:
- TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp:
- TestWebKitAPI/Tests/WebKit2/EphemeralSessionPushStateNoHistoryCallback.cpp:
- TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp:
- TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:
- TestWebKitAPI/Tests/WebKit2/Find.cpp:
- TestWebKitAPI/Tests/WebKit2/FindMatches.mm:
- TestWebKitAPI/Tests/WebKit2/ForceRepaint.cpp:
- TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp:
- TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp:
- TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:
- TestWebKitAPI/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback.cpp:
- TestWebKitAPI/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle.cpp:
- TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins.cpp:
- TestWebKitAPI/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/LayoutMilestonesWithAllContentInFrame.cpp:
- TestWebKitAPI/Tests/WebKit2/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
- TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback.cpp:
- TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/LoadPageOnCrash.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
- TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp:
- TestWebKitAPI/Tests/WebKit2/ParentFrame.cpp:
- TestWebKitAPI/Tests/WebKit2/ParentFrame_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/PasteboardNotifications.mm:
- TestWebKitAPI/Tests/WebKit2/PasteboardNotifications_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp:
- TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.cpp:
- TestWebKitAPI/Tests/WebKit2/ReloadPageAfterCrash.cpp:
- TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp:
- TestWebKitAPI/Tests/WebKit2/ResizeWindowAfterCrash.cpp:
- TestWebKitAPI/Tests/WebKit2/ScrollPinningBehaviors.cpp:
- TestWebKitAPI/Tests/WebKit2/SeccompFilters.cpp:
- TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem.cpp:
- TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:
- TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
- TestWebKitAPI/Tests/WebKit2/WKStringJSString.cpp:
- TestWebKitAPI/Tests/WebKit2/WebArchive.cpp:
- TestWebKitAPI/Tests/WebKit2/WebArchive_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp:
- TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2/mac/EditorCommands.mm:
- TestWebKitAPI/Tests/WebKit2/mac/GetBackingScaleFactor.mm:
- TestWebKitAPI/Tests/WebKit2/mac/GetBackingScaleFactor_Bundle.mm:
- TestWebKitAPI/Tests/WebKit2/mac/GetPIDAfterAbortedProcessLaunch.cpp:
- TestWebKitAPI/Tests/WebKit2/mac/WeakObjCPtr.mm:
- TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp:
- TestWebKitAPI/Tests/WebKit2/win/DoNotCopyANullCFURLResponse.cpp:
- TestWebKitAPI/Tests/WebKit2/win/ResizeViewWhileHidden.cpp:
- TestWebKitAPI/Tests/WebKit2/win/TranslateMessageGeneratesWMChar.cpp:
- TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp:
- TestWebKitAPI/Tests/WebKit2/win/WMPrint.cpp:
- TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing_Bundle.cpp:
- TestWebKitAPI/Tests/WebKit2ObjC/UserContentTest.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextGroupTest.mm:
- TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextLoadDelegateTest.mm:
- TestWebKitAPI/Tests/mac/DeviceScaleFactorOnBack.mm:
- TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
- TestWebKitAPI/config.h:
- TestWebKitAPI/efl/PlatformWebView.cpp:
- TestWebKitAPI/mac/JavaScriptTestMac.mm:
- TestWebKitAPI/mac/PlatformUtilitiesMac.mm:
- TestWebKitAPI/mac/PlatformWebViewMac.mm:
- TestWebKitAPI/mac/TestBrowsingContextLoadDelegate.h:
- TestWebKitAPI/mac/WebKitAgnosticTest.mm:
- WebKitTestRunner/EventSenderProxy.h:
- WebKitTestRunner/GeolocationProviderMock.cpp:
- WebKitTestRunner/GeolocationProviderMock.h:
- WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
- WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
- WebKitTestRunner/InjectedBundle/EventSendingController.h:
- WebKitTestRunner/InjectedBundle/GCController.cpp:
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/InjectedBundle/TextInputController.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
- WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
- WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
- WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm:
- WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
- WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
- WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
- WebKitTestRunner/PlatformWebView.h:
- WebKitTestRunner/StringFunctions.h:
- WebKitTestRunner/TestController.cpp:
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
- WebKitTestRunner/TestInvocation.h:
- WebKitTestRunner/WebKitTestRunnerPrefix.h:
- WebKitTestRunner/WebNotificationProvider.cpp:
- WebKitTestRunner/WebNotificationProvider.h:
- WebKitTestRunner/WorkQueueManager.cpp:
- WebKitTestRunner/cairo/TestInvocationCairo.cpp:
- WebKitTestRunner/cg/TestInvocationCG.cpp:
- WebKitTestRunner/cocoa/CrashReporterInfo.mm:
- WebKitTestRunner/config.h:
- WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
- WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
- WebKitTestRunner/ios/PlatformWebViewIOS.mm:
- WebKitTestRunner/ios/TestControllerIOS.mm:
- WebKitTestRunner/mac/EventSenderProxy.mm:
- WebKitTestRunner/mac/PlatformWebViewMac.mm:
- WebKitTestRunner/mac/TestControllerMac.mm:
- 1:48 AM Changeset in webkit [168960] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168768.
- 1:44 AM Changeset in webkit [168959] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168724.
- 1:43 AM Changeset in webkit [168958] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168694.
- 1:42 AM Changeset in webkit [168957] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168691.
- 1:41 AM Changeset in webkit [168956] by
-
- 7 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168690.
- 1:39 AM Changeset in webkit [168955] by
-
- 5 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168637.
- 1:37 AM Changeset in webkit [168954] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168629.
- 1:35 AM Changeset in webkit [168953] by
-
- 54 edits1 copy in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168566.
- 1:26 AM Changeset in webkit [168952] by
-
- 6 edits in branches/safari-538.34.5-branch/Source
Merged r168473.
- 1:22 AM Changeset in webkit [168951] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168873.
- 1:21 AM Changeset in webkit [168950] by
-
- 8 edits in branches/safari-538.34.5-branch/Source
Merged r168882.
- 1:03 AM Changeset in webkit [168949] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168882.
- 12:56 AM Changeset in webkit [168948] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168758.
- 12:53 AM Changeset in webkit [168947] by
-
- 6 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168755.
- 12:52 AM Changeset in webkit [168946] by
-
- 12 edits in branches/safari-538.34.5-branch/Source
Merged r168744.
- 12:47 AM Changeset in webkit [168945] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merge r168777.
- 12:46 AM Changeset in webkit [168944] by
-
- 3 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168670.
- 12:42 AM Changeset in webkit [168943] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Merged r168661.
- 12:39 AM Changeset in webkit [168942] by
-
- 26 edits1 copy in branches/safari-538.34-branch/Source/JavaScriptCore
Merge r168776.
- 12:37 AM Changeset in webkit [168941] by
-
- 4 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168568.
- 12:35 AM Changeset in webkit [168940] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168563.
- 12:33 AM Changeset in webkit [168939] by
-
- 11 edits in branches/safari-538.34.5-branch
Merged r168555.
- 12:28 AM Changeset in webkit [168938] by
-
- 6 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168519.
- 12:24 AM Changeset in webkit [168937] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168514.
- 12:15 AM Changeset in webkit [168936] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebKit2
Merged r168572.
- 12:14 AM Changeset in webkit [168935] by
-
- 2 edits in branches/safari-538.34.5-branch/Source/WebCore
Merged r168557.
- 12:13 AM Changeset in webkit [168934] by
-
- 16 edits in branches/safari-538.34.5-branch/Source
Merged r168556.
- 12:12 AM Changeset in webkit [168933] by
-
- 4 edits in branches/safari-538.34.5-branch/Source
Merged r168513.
- 12:08 AM Changeset in webkit [168932] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Merged r168497.
- 12:06 AM Changeset in webkit [168931] by
-
- 10 edits in branches/safari-538.34.5-branch/Source
Merged r168459.
- 12:00 AM Changeset in webkit [168930] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r168745.
May 15, 2014:
- 11:58 PM Changeset in webkit [168929] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit/mac
Merge r168913.
- 11:52 PM Changeset in webkit [168928] by
-
- 7 edits in branches/safari-538.34.5-branch/Source
Merged r168452.
- 11:51 PM Changeset in webkit [168927] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merge r168870.
- 11:47 PM Changeset in webkit [168926] by
-
- 7 edits in branches/safari-538.34.5-branch/Source
Merged r168447.
- 10:21 PM Changeset in webkit [168925] by
-
- 4 edits in trunk
[EFL][WK2] Skip failing unit tests
https://bugs.webkit.org/show_bug.cgi?id=132979
Reviewed by Daniel Bates.
Source/WebKit2:
- PlatformEfl.cmake: Skip failing unit tests for now.
Tools:
- TestWebKitAPI/PlatformEfl.cmake: Skip failing unit tests for now.
- 9:51 PM Changeset in webkit [168924] by
-
- 2 edits in trunk/Source/WebCore
Attempt to fix the Apple Mavericks Release, Apple MountainLion Release,
Apple MountainLion Release (32-bit Build), EFL, and GTK builds following
<http://trac.webkit.org/changeset/168921> (https://bugs.webkit.org/show_bug.cgi?id=132669)
- dom/ContainerNode.cpp: Include SVGElement.h for the definition of Node::hasTagName(const SVGQualifiedName&).
- 9:44 PM Changeset in webkit [168923] by
-
- 5 edits in branches/safari-538.34.5-branch/Source
Versioning.
- 9:32 PM Changeset in webkit [168922] by
-
- 1 copy in branches/safari-538.34.5-branch
New Branch
- 9:30 PM Changeset in webkit [168921] by
-
- 11 edits24 adds in trunk
ASSERT_NOT_REACHED() in DocumentOrderedMap::get() when removing SVG subtree
https://bugs.webkit.org/show_bug.cgi?id=132669
<rdar://problem/14931432>
Reviewed by Brent Fulgham and Ryosuke Niwa.
Source/WebCore:
Fixes an assertion failure when removing an SVG element with a duplicate id.
When removing an SVG element with id A we synchronously instruct each element that references A
to find the first element with id A, call this N, from the document root and register itself to
either receive subsequent notifications from N (say, there is another element with id A) or as
waiting for an element with id A (say, N = nullptr; => we removed the last element with id A from
the document). Because the elements that reference A perform this operation synchronously when
removing an element they consult an transient state of the DocumentOrderedMap when querying for the
element with id A.
Without loss of generality, let E, E_1, E_2, and E_3 be elements, where E_1, E_2, E_3 are children
of E in that order and E_1.id = E_2.id = A and E_3.href = #A (that is, it references an element
with id A). Suppose we remove E then we remove E_1, update DocumentOrderedMap to decrement its count
for id A, and notify E_3 to look for an element with id A. This leads to an assertion failure since
DocumentOrderedMap expects to find an element with id A, E_2, but cannot find such an element when
traversing from the document root because E was unlinked from the document root (i.e. E_2 is in a
disjoint subtree).
Tests: svg/custom/change-id-of-use-during-removal.html
svg/custom/remove-subtree-including-path-with-duplicate-id-referenced-by-later-textpath.html
svg/custom/remove-subtree-including-text-with-duplicate-id-referenced-by-later-tref.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-earlier-use.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-animate.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-feimage.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-mpath.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use2.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-in-different-subtree.html
svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-with-duplicate-id-in-different-subtree.html
svg/custom/remove-use-with-duplicate-id-referenced-by-later-use.html
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::removeChild): Call SVGDocumentExtensions::rebuildElements() after we remove
a DOM subtree so that applicable SVG elements can update their referenced element when the DocumentOrderedMap
is in a stable-state.
(WebCore::ContainerNode::removeChildren): Ditto.
- svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::rebuildElements): Added; notifies SVG elements that their href attribute
changed so that they query the DocumentOrderedMap for the element they reference by id in their href attribute.
(WebCore::SVGDocumentExtensions::clearTargetDependencies): Added; Called from removing
an SVG element S from the DOM. Appends all elements that reference the id of S to the end of a Vector of
elements to be rebuilt (when SVGDocumentExtensions::rebuildElements() is called) and notifies these elements
that have been marked to be rebuilt so that they can invalidate their state (e.g. stop animating).
(WebCore::SVGDocumentExtensions::rebuildAllElementReferencesForTarget): Changed to take its argument by reference
(since it's always non-null) and simplified logic to synchronously notify SVG updates that their referenced element
may have changed. Calling SVGElement::svgAttributeChanged() on an element E should at most remove the dependencies
of E.
- svg/SVGDocumentExtensions.h:
- svg/SVGElement.cpp:
(WebCore::SVGElement::~SVGElement): Substitute "*this" for "this" as SVGDocumentExtensions::rebuildAllElementReferencesForTarget()
now takes a reference instead of a pointer.
(WebCore::SVGElement::removedFrom): Modified to call SVGDocumentExtensions::clearTargetDependencies().
(WebCore::SVGElement::attributeChanged): Substitute "*this" for "this" as SVGDocumentExtensions::rebuildAllElementReferencesForTarget()
now takes a reference instead of a pointer.
- svg/SVGElement.h:
(WebCore::SVGElement::callClearTarget): Added; calls through to private virtual SVGElement::clearTarget().
(WebCore::SVGElement::clearTarget): Added.
- svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::clearTarget): Added.
- svg/SVGTRefElement.h:
- svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::clearTarget): Added.
- svg/animation/SVGSMILElement.h:
LayoutTests:
Add tests to ensure that we don't cause an assertion failure when removing an SVG element with a duplicate id.
- svg/custom/change-id-of-use-during-removal-expected.txt: Added.
- svg/custom/change-id-of-use-during-removal.html: Added.
- svg/custom/remove-subtree-including-path-with-duplicate-id-referenced-by-later-textpath-expected.txt: Added.
- svg/custom/remove-subtree-including-path-with-duplicate-id-referenced-by-later-textpath.html: Added.
- svg/custom/remove-subtree-including-text-with-duplicate-id-referenced-by-later-tref-expected.txt: Added.
- svg/custom/remove-subtree-including-text-with-duplicate-id-referenced-by-later-tref.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-earlier-use-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-earlier-use.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-animate-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-animate.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-feimage-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-feimage.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-mpath-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-mpath.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use2-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-later-use2.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-in-different-subtree-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-in-different-subtree.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-with-duplicate-id-in-different-subtree-expected.html: Added.
- svg/custom/remove-subtree-including-use-with-duplicate-id-referenced-by-use-with-duplicate-id-in-different-subtree.html: Added.
- svg/custom/remove-use-with-duplicate-id-referenced-by-later-use-expected.html: Added.
- svg/custom/remove-use-with-duplicate-id-referenced-by-later-use.html: Added.
- 8:56 PM Changeset in webkit [168920] by
-
- 10 edits in trunk/Source
[iOS WK2] When zoomed, fixed elements jump at the start of a scroll, and jump back at the end.
https://bugs.webkit.org/show_bug.cgi?id=132978
<rdar://problem/16894428>
Reviewed by Benjamin Poulain.
Source/WebCore:
This was the actual cause of the bug; r168560 changed the rect passed in here
to be the customFixedPositionRect rather than the unobscured rect, but we
used it to call FrameView::rectForViewportConstrainedObjects() which gave back
another bogus rect. So just use the rect passed in.
- page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:
(WebCore::ScrollingTreeScrollingNodeIOS::updateLayersAfterViewportChange):
Source/WebKit2:
Move the static function fixedPositionRectFromExposedRect() to a member function on
WebPageProxy so we can call it from more places. Also never give WebCore a customFixedPosition
rect that extends past the document bounds, but allow rubber-banding/pinching in the UI process to
move fixed elements outside the document.
- UIProcess/PageClient.h: Need to expose minimumZoomScale() and contentsSize() to WebPageProxy.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::minimumZoomScale):
(WebKit::PageClientImpl::contentsSize):
- UIProcess/ios/WKContentView.mm:
(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):
Pass the computeCustomFixedPositionRect(ConstrainedToDocumentRect) to WebCore, but use computeCustomFixedPositionRect()
for the ScrollingCoordinator update.
(adjustedUnexposedEdge): Deleted.
(adjustedUnexposedMaxEdge): Deleted.
(fixedPositionRectFromExposedRect): Deleted.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::adjustedUnexposedEdge):
(WebKit::adjustedUnexposedMaxEdge):
(WebKit::WebPageProxy::computeCustomFixedPositionRect):
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): This fixes some flashing when the scrolling tree
was being updated while scrolling; we now pass the correct rect.
- 8:32 PM Changeset in webkit [168919] by
-
- 22 edits in trunk/Source/WebInspectorUI
Web Inspector: Should remove JSDoc comment blocks.
https://bugs.webkit.org/show_bug.cgi?id=132984
Patch by Jono Wells <jonowells@apple.com> on 2014-05-15
Reviewed by Timothy Hatcher.
Remove JSDoc comment blocks. These are no longer necessary.
- UserInterface/Base/Main.js:
- UserInterface/Base/Object.js:
- UserInterface/Controllers/DOMTreeManager.js:
- UserInterface/Models/CSSCompletions.js:
- UserInterface/Models/DOMNode.js:
- UserInterface/Models/SourceMap.js:
- UserInterface/Protocol/InspectorBackend.js:
- UserInterface/Protocol/RemoteObject.js:
- UserInterface/Views/ApplicationCacheFrameContentView.js:
- UserInterface/Views/ConsoleMessage.js:
- UserInterface/Views/ConsoleMessageImpl.js:
- UserInterface/Views/ContextMenu.js:
- UserInterface/Views/DOMTreeElement.js:
- UserInterface/Views/DOMTreeOutline.js:
- UserInterface/Views/DOMTreeUpdater.js:
- UserInterface/Views/DataGrid.js:
- UserInterface/Views/DatabaseContentView.js:
- UserInterface/Views/EditingSupport.js:
- UserInterface/Views/ObjectPropertiesSection.js:
- UserInterface/Views/Popover.js:
- UserInterface/Views/TreeOutline.js:
JSDoc style comment blocks removed.
- 5:11 PM Changeset in webkit [168918] by
-
- 3 edits in trunk/Source/WebKit2
<https://webkit.org/b/132976> Move discovery of sharing services off the main thread
Discovery of sharing services can require disk access and IPC. Since the interface to
ServicesController is already asynchronous, we can easily perform the discovery on a
background queue. This can eliminate tens to hundreds of milliseconds worth of work
from the main thread when creating the first web process.
Reviewed by Brady Eidson.
- UIProcess/mac/ServicesController.h:
- UIProcess/mac/ServicesController.mm:
(WebKit::ServicesController::ServicesController):
(WebKit::ServicesController::refreshExistingServices): Bail out early if we're already
in the process of refreshing the services. Kick the discovery over to a background queue,
with it hopping back to the main queue to update the actual state and notify any contexts
that were interested.
- 5:02 PM Changeset in webkit [168917] by
-
- 2 edits in trunk/Source/WebKit2
Fixed a typo in a comment and updated previous change log entry.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::elementDidFocus):
- 4:46 PM Changeset in webkit [168916] by
-
- 2 edits in trunk/Source/WebKit2
[iOS] www.wikipedia.org is loading much slower due to FormClient::willBeginInputSession
https://bugs.webkit.org/show_bug.cgi?id=132974
Reviewed by Enrica Casucci.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::elementDidFocus): Don’t call FormClient::willBeginInputSession if the
focus isn’t user-initiated, because in that case the UI process will bail out of
-_startAssistingNode:userIsInteracting:userObject: before creating an input session and
calling the -_webView:didStartInputSession:.
- 4:28 PM Changeset in webkit [168915] by
-
- 14 edits12 adds in trunk
SVG element may reference arbitrary DOM element before running its insertion logic
https://bugs.webkit.org/show_bug.cgi?id=132757
<rdar://problem/15703817>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Fixes an issue where an SVG element may reference an arbitrary DOM element e before e finished being
inserted in the tree.
Currently when an SVG element A is inserted into a document we use document.getElementById() to find the
element B it references (if any). If A is inserted before B and B has the same id as a later element in
the document then A can find B before B is notified that its been inserted into the document (i.e. before
Element::insertedFrom() is called on B). Instead, A should call document.getElementById() only after
cessation of the insertion operation that inserted it to ensure that all inserted nodes (including B)
processed their insertion-specific logic.
Tests: svg/custom/reparent-animate-element.html
svg/custom/reparent-feimage-element.html
svg/custom/reparent-mpath-element.html
svg/custom/reparent-textpath-element.html
svg/custom/reparent-tref-element.html
svg/custom/reparent-use-element.html
- svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGFEImageElement::buildPendingResources())
after the subtree we're in is inserted.
(WebCore::SVGFEImageElement::didNotifySubtreeInsertions): Added; turns around and calls SVGFEImageElement::buildPendingResources().
- svg/SVGFEImageElement.h:
- svg/SVGMPathElement.cpp:
(WebCore::SVGMPathElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGMPathElement::buildPendingResources())
after the subtree we're in is inserted.
(WebCore::SVGMPathElement::didNotifySubtreeInsertions): Added; turns around and calls SVGMPathElement::buildPendingResources().
- svg/SVGMPathElement.h:
- svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGTRefElement::buildPendingResources())
after the subtree we're in is inserted.
(WebCore::SVGTRefElement::didNotifySubtreeInsertions): Added; turns around and calls SVGTRefElement::buildPendingResources().
- svg/SVGTRefElement.h:
- svg/SVGTextPathElement.cpp:
(WebCore::SVGTextPathElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGTextPathElement::buildPendingResources())
after the subtree we're in is inserted.
(WebCore::SVGTextPathElement::didNotifySubtreeInsertions): Added; turns around and calls SVGTextPathElement::buildPendingResources().
- svg/SVGTextPathElement.h:
- svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGUseElement::buildPendingResources()) after its subtree is
inserted.
(WebCore::SVGUseElement::didNotifySubtreeInsertions): Added; turns around and calls SVGUseElement::buildPendingResources().
- svg/SVGUseElement.h:
- svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::insertedInto): Return InsertionShouldCallDidNotifySubtreeInsertions so that
we are called back to resolve our target element (i.e. call SVGSMILElement::buildPendingResources())
after the subtree we're in is inserted.
(WebCore::SVGSMILElement::didNotifySubtreeInsertions): Added; turns around and calls SVGSMILElement::buildPendingResources().
- svg/animation/SVGSMILElement.h:
LayoutTests:
Add tests to ensure that we don't cause an assertion failure when re-parenting an SVG subtree that
contains an element with a duplicate id.
- svg/custom/reparent-animate-element-expected.txt: Added.
- svg/custom/reparent-animate-element.html: Added.
- svg/custom/reparent-feimage-element-expected.txt: Added.
- svg/custom/reparent-feimage-element.html: Added.
- svg/custom/reparent-mpath-element-expected.txt: Added.
- svg/custom/reparent-mpath-element.html: Added.
- svg/custom/reparent-textpath-element-expected.txt: Added.
- svg/custom/reparent-textpath-element.html: Added.
- svg/custom/reparent-tref-element-expected.txt: Added.
- svg/custom/reparent-tref-element.html: Added.
- svg/custom/reparent-use-element-expected.txt: Added.
- svg/custom/reparent-use-element.html: Added.
- 4:03 PM Changeset in webkit [168914] by
-
- 6 edits4 adds in trunk
JSDOMWindow should not claim HasImpureGetOwnPropertySlot
https://bugs.webkit.org/show_bug.cgi?id=132918
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- jit/Repatch.cpp:
(JSC::tryRepatchIn): We forgot to check for watchpoints when repatching "in".
Source/WebCore:
Tests: js/cached-window-properties.html
js/cached-window-prototype-properties.html
We now correctly handle the impurity of JSDOMWindow's custom getOwnPropertySlot without needing the
blanket HasImpureGetOwnPropertySlot. We do this through the use of watchpoints and by explicitly forbidding
any caching beyond a certain point using PropertySlot::disableCaching. Getting rid of this flag will allow
us to cache many properties/methods on both the JSDOMWindow and its prototype, which are very commonly used
across the web.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
- bindings/scripts/CodeGeneratorJS.pm:
(HasComplexGetOwnProperty):
(InterfaceRequiresAttributesOnInstance):
(InstanceOverridesGetOwnPropertySlot):
(GenerateHeader):
LayoutTests:
We now correctly handle the impurity of JSDOMWindow's custom getOwnPropertySlot without needing the
blanket HasImpureGetOwnPropertySlot. We do this through the use of watchpoints and by explicitly forbidding
any caching beyond a certain point using PropertySlot::disableCaching. Getting rid of this flag will allow
us to cache many properties/methods on both the JSDOMWindow and its prototype, which are very commonly used
across the web.
These tests trigger inline caching of window and window prototype properties.
- js/cached-window-properties-expected.txt: Added.
- js/cached-window-properties.html: Added.
- js/cached-window-prototype-properties-expected.txt: Added.
- js/cached-window-prototype-properties.html: Added.
- 2:27 PM Changeset in webkit [168913] by
-
- 2 edits in trunk/Source/WebKit/mac
Crash in [WebSharingServicePickerController clear]
<rdar://problem/16879073> and https://bugs.webkit.org/show_bug.cgi?id=132968
Reviewed by Tim Horton.
- Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController clear]): Add a RetainPtr protector so this object
isn’t dealloc’ed partway through.
- 2:20 PM Changeset in webkit [168912] by
-
- 2 edits in trunk/Source/WebKit/mac
Initialize the WebKitRegionBasedColumnsEnabled pref on iOS WK1
https://bugs.webkit.org/show_bug.cgi?id=132969
Reviewed by Dan Bernstein.
Move this outside the #if !PLATFORM(IOS) block.
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
- 2:20 PM Changeset in webkit [168911] by
-
- 2 edits in trunk/Source/WebKit/mac
Clean up -[WebView _preferencesChanged]
https://bugs.webkit.org/show_bug.cgi?id=132967
Reviewed by Sam Weinig.
-[WebView _preferencesChanged] was a horrible mess of #ifdefs. Clean this up by
moving all the #if PLATFORM() code together, and moving all the feature-define related
settings to the end.
No behavior changes, checked by diffing the resulting Settings with and without
the patch, on OS X and iOS.
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
- 2:17 PM Changeset in webkit [168910] by
-
- 3 edits in trunk/Tools
[iOS] Support TestWebKitAPI in the iOS Simulator
<http://webkit.org/b/129535>
<rdar://problem/16203529>
Reviewed by Daniel Bates.
- Scripts/run-api-tests:
(runTest):
(listAllTests):
- Extract common arguments into local variable.
- Use xcrun to find the sim tool in order to invoke
TestWebKitAPI properly in the iOS Simulator.
- Scripts/webkitdirs.pm:
(argumentsForConfiguration): Set --device or --sim as
appropriate to fix buildTestTool() in run-api-tests.
- 2:00 PM Changeset in webkit [168909] by
-
- 4 edits in trunk/Source/WebCore
NetworkProcess crashes at ResourceHandle::continueDidReceiveResponse
https://bugs.webkit.org/show_bug.cgi?id=132966
<rdar://problem/16373694>
Reviewed by Brady Eidson.
Covered by many fast/files tests.
- platform/network/BlobResourceHandle.cpp: (WebCore::BlobResourceHandle::continueDidReceiveResponse):
- platform/network/BlobResourceHandle.h:
- platform/network/ResourceHandle.h:
Don't call delegate's continueDidReceiveResponse when loading a blob:// URL,
the delegate is null. On the Mac, we used to lazily create it, which was also wrong,
but at least not observable.
- 1:58 PM Changeset in webkit [168908] by
-
- 2 edits8 adds in trunk/LayoutTests
Automatically zip document bundles used via File API
https://bugs.webkit.org/show_bug.cgi?id=132713
<rdar://problem/13397892>
Actually land the tests.
- fast/files/filereader-zip-bundle-expected.txt: Added.
- fast/files/filereader-zip-bundle.html: Added.
- fast/files/resources/document.rtfd: Added.
- fast/files/resources/document.rtfd/TXT.rtf: Added.
- http/tests/local/fileapi/resources/document.rtfd: Added.
- http/tests/local/fileapi/resources/document.rtfd/TXT.rtf: Added.
- http/tests/local/fileapi/upload-zip-bundle-as-blob-expected.txt: Added.
- http/tests/local/fileapi/upload-zip-bundle-as-blob.html: Added.
- platform/wk2/TestExpectations:
- 1:03 PM Changeset in webkit [168907] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] WKWebView sends invalid content offsets at the end of animated resize
https://bugs.webkit.org/show_bug.cgi?id=132941
<rdar://problem/16921557>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-15
Reviewed by Tim Horton.
Since we cannot change the scale and content inset simultaneously while accounting for the obscured insets,
we end up with invalid contentOffsets.
To work around the problem, change the content scale outside of UIScrollView to ensure none of the side effect
happens.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _endAnimatedResize]):
- 12:45 PM Changeset in webkit [168906] by
-
- 2 edits in trunk/Tools
Fix a logging typo in copy-webkitlibraries-to-product-directory
Reviewed by Dean Jackson.
- Scripts/copy-webkitlibraries-to-product-directory:
- 12:17 PM Changeset in webkit [168905] by
-
- 23 edits in trunk/Source/WebCore
Unreviewed, rolling out r168899.
https://bugs.webkit.org/show_bug.cgi?id=132965
Broke some compositing regions tests on Mavericks (Requested
by mihnea_ on #webkit).
Reverted changeset:
"[CSS Regions] Reduce the RenderRegion invasiveness in
rendering code"
https://bugs.webkit.org/show_bug.cgi?id=132121
http://trac.webkit.org/changeset/168899
- 12:15 PM Changeset in webkit [168904] by
-
- 2 edits in trunk/Source/WebKit2
WebKit2 View Gestures (Zoom): Document size changes during zoom gesture cause erratic scrolling
https://bugs.webkit.org/show_bug.cgi?id=132944
<rdar://problem/15769454>
Reviewed by Simon Fraser.
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
If a layer flush occurs and we have an active transient zoom,
re-apply the transient zoom to the relevant platform layers, because
WebCore might have overwritten the relevant layer properties.
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
Reset m_transientZoomScale before flushLayers() so that we don't
re-apply the transient zoom when we're actually trying to commit it.
- 11:42 AM Changeset in webkit [168903] by
-
- 11 edits in trunk/Source
Add pointer lock to features without enabling it.
https://bugs.webkit.org/show_bug.cgi?id=132961
Patch by Alex Christensen <achristensen@webkit.org> on 2014-05-15
Reviewed by Sam Weinig.
- Configurations/FeatureDefines.xcconfig:
Added ENABLE_POINTER_LOCK to list of features.
Source/WebCore:
- WebCore.exp.in:
Added linker symbols which differ with pointer lock enabled.
- WebCore.xcodeproj/project.pbxproj:
Added PointerLockController.cpp to build.
Source/WebKit/mac:
- WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
Added extra parameters needed when pointer lock is enabled.
- 11:28 AM Changeset in webkit [168902] by
-
- 9 edits in trunk
Move subframe name getter lookup later in JSDOMWindow::getOwnPropertySlot
https://bugs.webkit.org/show_bug.cgi?id=132922
Reviewed by Geoffrey Garen.
Source/WebCore:
No new tests.
In JSDOMWindow::getOwnPropertySlot, we currently look for the property on the JSDOMWindow,
then we search the window's subframes for name getters, then we look in the window's prototype
chain. Apparently we were doing the lookup in this order to be compatible with Mozilla, but
Mozilla no longer implements this behavior. Instead, they do the lookup on the prototype before
looking for subframe name getters. We should change this to match Mozilla. This has the convenient
side effect of allowing us to cache lookups in the window's prototype chain.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
LayoutTests:
In JSDOMWindow::getOwnPropertySlot, we currently look for the property on the JSDOMWindow,
then we search the window's subframes for name getters, then we look in the window's prototype
chain. Apparently we were doing the lookup in this order to be compatible with Mozilla, but
Mozilla no longer implements this behavior. Instead, they do the lookup on the prototype before
looking for subframe name getters. We should change this to match Mozilla. This has the convenient
side effect of allowing us to cache lookups in the window's prototype chain.
- fast/dom/Window/window-function-frame-getter-precedence-expected.txt: Rebaseline to account
for change in behavior.
- fast/dom/Window/window-function-frame-getter-precedence.html:
- http/tests/security/document-all-expected.txt: Rebaseline due to the presenece of a security check
that was previously not done with the old behavior.
- http/tests/security/window-named-proto-expected.txt: Ditto.
- http/tests/security/window-named-valueOf-expected.txt: Ditto.
- http/tests/security/xss-DENIED-window-name-alert.html: Changed test so it actually tests named getters.
- 10:48 AM Changeset in webkit [168901] by
-
- 23 edits in trunk/Source
[UI-side compositing] Fix copying animations between layers, and pausing them
https://bugs.webkit.org/show_bug.cgi?id=132943
<rdar://problem/16906369&16906541>
Reviewed by Tim Horton.
Source/WebCore:
Pass the animation key back to animationStarted(), though this isn't used
when animations are running in-process.
- platform/graphics/ca/PlatformCALayer.h:
- platform/graphics/ca/mac/PlatformCALayerMac.h:
- platform/graphics/ca/mac/PlatformCALayerMac.mm:
(-[WebAnimationDelegate animationDidStart:]):
(PlatformCALayerMac::animationStarted):
- platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayerWin::animationStarted):
- platform/graphics/ca/win/PlatformCALayerWin.h:
Source/WebKit2:
Fix PlatformCAAnimationRemote to support animation copying, and to record
the beginTime for implicitly started animations. This fixes animation pausing,
and copying of animations between layers when they go between tiled and non-tiled.
This requires sending the animation key back through animationDidStart() so that
we can record this beginTime on the PlatformCAAnimationRemote in the web process.
This path doesn't set the "hasExplicitBeginTime" flag.
PlatformCAAnimationRemote also now stores a hash of active animations, so that
it can implement animationForKey(), and record the beginTime.
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidStart):
- UIProcess/mac/RemoteLayerTreeHost.h:
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::animationDidStart): Grovel for the key for this
animation; sadly CA doesn't give us an easier way.
- WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::acceleratedAnimationDidStart):
- WebProcess/WebPage/DrawingArea.messages.in:
- WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
- WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
(-[WKAnimationDelegate animationDidStart:]):
(WebKit::PlatformCAAnimationRemote::copy):
(WebKit::PlatformCAAnimationRemote::copyTimingFunctionFrom):
(WebKit::PlatformCAAnimationRemote::copyFromValueFrom):
(WebKit::PlatformCAAnimationRemote::copyToValueFrom):
(WebKit::PlatformCAAnimationRemote::copyValuesFrom):
(WebKit::PlatformCAAnimationRemote::copyKeyTimesFrom):
(WebKit::PlatformCAAnimationRemote::copyTimingFunctionsFrom):
(WebKit::addAnimationToLayer):
- WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::addAnimationForKey):
(WebKit::PlatformCALayerRemote::removeAnimationForKey):
(WebKit::PlatformCALayerRemote::animationForKey):
(WebKit::PlatformCALayerRemote::animationStarted):
- WebProcess/WebPage/mac/PlatformCALayerRemote.h:
- WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
- WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::animationDidStart):
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::acceleratedAnimationDidStart):
- 10:18 AM Changeset in webkit [168900] by
-
- 2 edits1 move1 add in trunk/Tools
TestWebKitAPI: URLExtras.mm should be a shared test for iOS and Mac
<http://webkit.org/b/132959>
Reviewed by Dan Bernstein.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add
Cocoa directory to project and move URLExtras.mm into it.
- TestWebKitAPI/Tests/Cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/URLExtras.mm.
- 9:43 AM Changeset in webkit [168899] by
-
- 23 edits in trunk/Source/WebCore
[CSS Regions] Reduce the RenderRegion invasiveness in rendering code
https://bugs.webkit.org/show_bug.cgi?id=132121
Reviewed by Antti Koivisto.
Remove the RenderRegion / RenderNamedFlowFragment parameters and fields from
the painting / hit testing data structures and use a stateful approach to
correctly handle regions.
When painting or hit testing, the current flow thread is saved along the current
region. They are accessed through the |currentRenderNamedFlowFragment| helper
method on RenderObject or RenderLayer.
The patch also changes a bunch of 0s to nullptrs.
Tests: No new tests, no functional change.
- html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
- rendering/HitTestLocation.cpp:
(WebCore::HitTestLocation::HitTestLocation):
(WebCore::HitTestLocation::operator=):
- rendering/HitTestLocation.h:
(WebCore::HitTestLocation::region): Deleted.
- rendering/HitTestResult.h:
- rendering/PaintInfo.h:
(WebCore::PaintInfo::PaintInfo):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::nodeAtPoint):
- rendering/RenderBox.cpp:
(WebCore::RenderBox::nodeAtPoint):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::pushContentsClip):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderBoxModelObject.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paint):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer):
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::clippedByAncestor):
- rendering/RenderObject.cpp:
(WebCore::RenderObject::currentRenderNamedFlowFragment):
- rendering/RenderObject.h:
- rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
- rendering/RenderReplica.cpp:
(WebCore::RenderReplica::paint):
- rendering/RenderTable.cpp:
(WebCore::RenderTable::nodeAtPoint):
- rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::nodeAtPoint):
- rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paint):
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced):
- 9:35 AM Changeset in webkit [168898] by
-
- 8 edits in trunk/Source
Clean up "has non-zero begin time" terminology in animations
https://bugs.webkit.org/show_bug.cgi?id=132942
Reviewed by Tim Horton.
Change the "non-zero beginTime" terminology in the platform CA animations
code to "explicit beginTime": this flag really means that we explicitly set
the beginTime of the animation, rather than let CA set the beginTime when
committing the animation. This flag is used for animations with negative
delay, and when pausing.
Source/WebCore:
The WKNonZeroBeginTimeFlag key was spread across PlatformCALayerMac and PlatformCAAnimationMac,
so hide it behind getter/setter functions.
Remove lots of m_layer.get() in PlatformCAAnimationMac.
- platform/graphics/ca/mac/PlatformCAAnimationMac.h:
- platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
(WebCore::hasExplicitBeginTime):
(WebCore::setHasExplicitBeginTime):
(PlatformCAAnimationMac::copy):
(PlatformCAAnimationMac::keyPath):
(PlatformCAAnimationMac::beginTime):
(PlatformCAAnimationMac::setBeginTime):
(PlatformCAAnimationMac::duration):
(PlatformCAAnimationMac::setDuration):
(PlatformCAAnimationMac::speed):
(PlatformCAAnimationMac::setSpeed):
(PlatformCAAnimationMac::timeOffset):
(PlatformCAAnimationMac::setTimeOffset):
(PlatformCAAnimationMac::repeatCount):
(PlatformCAAnimationMac::setRepeatCount):
(PlatformCAAnimationMac::autoreverses):
(PlatformCAAnimationMac::setAutoreverses):
(PlatformCAAnimationMac::fillMode):
(PlatformCAAnimationMac::setFillMode):
(PlatformCAAnimationMac::setTimingFunction):
(PlatformCAAnimationMac::copyTimingFunctionFrom):
(PlatformCAAnimationMac::isRemovedOnCompletion):
(PlatformCAAnimationMac::setRemovedOnCompletion):
(PlatformCAAnimationMac::isAdditive):
(PlatformCAAnimationMac::setAdditive):
(PlatformCAAnimationMac::valueFunction):
(PlatformCAAnimationMac::setValueFunction):
(hasNonZeroBeginTimeFlag): Deleted.
(setNonZeroBeginTimeFlag): Deleted.
- platform/graphics/ca/mac/PlatformCALayerMac.mm:
(-[WebAnimationDelegate animationDidStart:]):
Source/WebKit2:
- Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):
- WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
- WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
(-[WKAnimationDelegate animationDidStart:]):
(WebKit::PlatformCAAnimationRemote::Properties::encode):
(WebKit::PlatformCAAnimationRemote::Properties::decode):
(WebKit::PlatformCAAnimationRemote::setBeginTime):
(WebKit::addAnimationToLayer):
- 8:18 AM Changeset in webkit [168897] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, rolling out r168893.
https://bugs.webkit.org/show_bug.cgi?id=132957
Lots of media tests still come to crash on EFL layout test
(Requested by gyuyoung on #webkit).
Reverted changeset:
"LayoutTests: Unreviewed EFL gardening. Unskip media test both
EFL WK1 and WK2."
http://trac.webkit.org/changeset/168893
- 1:51 AM Changeset in webkit [168896] by
-
- 4 edits2 adds in trunk/LayoutTests
[EFL] Add new test expectations after r168544
https://bugs.webkit.org/show_bug.cgi?id=132908
Unreviewed gardening
Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-05-15
- platform/efl/TestExpectations:
- platform/efl/svg/foreignObject/svg-document-in-html-document-expected.txt:
- platform/efl/svg/text/small-fonts-in-html5-expected.txt:
- platform/efl/svg/zoom/page/zoom-svg-as-relative-image-expected.txt: Added.
- platform/efl/svg/zoom/text/zoom-svg-float-border-padding-expected.txt: Added.
- 1:09 AM Changeset in webkit [168895] by
-
- 2 edits in trunk/Source/WebKit2
[iOS] Incremental updates during scroll-to-top shouldn’t count as “stable” updates
https://bugs.webkit.org/show_bug.cgi?id=132934
Reviewed by Simon Fraser.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _updateVisibleContentRects]):
If we're in a scroll-to-top programmatic scroll, the update is not stable.
The last event comes in with _isScrollingToTop false, so we do our stable update.
- 1:06 AM Changeset in webkit [168894] by
-
- 9 edits in trunk
[GTK] Compile all installed resources as GResources
https://bugs.webkit.org/show_bug.cgi?id=131099
Reviewed by Philippe Normand.
Source/WebCore:
- PlatformGTK.cmake: Do not install the resources.
- platform/audio/gtk/AudioBusGtk.cpp:
(WebCore::AudioBus::loadPlatformResource): Load the audio resource
from GResources and use createBusFromInMemoryAudioFile().
- platform/graphics/Image.h: Remove unsued function loadPlatformThemeIcon.
- platform/graphics/gtk/ImageGtk.cpp:
(WebCore::loadImageFromGResource): Load the given icon name from GResources.
(WebCore::loadResourceSharedBuffer): Use char* instead of CString.
(WebCore::loadMissingImageIconFromTheme): Try to load the missing
icon from the current GTK icon theme.
(WebCore::Image::loadPlatformResource): Call
loadMissingImageIconFromTheme for missing icon or
loadImageFromGResource for any other icon name.
(WebCore::getPathToImageResource): Deleted.
(WebCore::getThemeIconFileName): Deleted.
(WebCore::loadImageFromFile): Deleted.
(WebCore::Image::loadPlatformThemeIcon): Deleted.
Source/WebKit2:
It avoids conflicts with old WebKit versions, and resources are
always found even without installing or using environment variables.
- PlatformGTK.cmake: Add rules to write the xml file with the
resources depending on the configure options and to generate and
build the GResources file.
Tools:
- Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_environ_for_server): Removed now unneeded
AUDIO_RESOURCES_PATH env var.
May 14, 2014:
- 10:40 PM Changeset in webkit [168893] by
-
- 2 edits in trunk/LayoutTests
LayoutTests: Unreviewed EFL gardening. Unskip media test both EFL WK1 and WK2.
Crash doesn't happen anymore.
- platform/efl/TestExpectations:
- 10:07 PM Changeset in webkit [168892] by
-
- 2 edits in trunk/Source/WebKit2
[EFL][WK2] Fix an unit test of ewk_context_url_scheme_register()
https://bugs.webkit.org/show_bug.cgi?id=132902
Reviewed by Anders Carlsson.
This test can be run when CUSTOM_PROTOCOL is enabled. Besides the test needs
to check if registered callback function works well.
- UIProcess/API/efl/tests/test_ewk2_context.cpp:
(EWK2ContextTest::schemeRequestCallback):
(TEST_F):
- 9:20 PM Changeset in webkit [168891] by
-
- 3 edits in trunk/Source/WebKit2
[EFL][WK2] Use default context for ewk_view_add
https://bugs.webkit.org/show_bug.cgi?id=132936
Reviewed by Gyuyoung Kim.
Since r146265, ewk_view_add created new context and it's regression.
This patch restores the behavior of ewk_view_add to original one.
- UIProcess/API/efl/ewk_view.cpp:
(ewk_view_add):
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
- 9:08 PM Changeset in webkit [168890] by
-
- 7 edits in trunk/Source/WebCore
Tiled scrolling indicator needs to take topContentInset into account
https://bugs.webkit.org/show_bug.cgi?id=132940
Reviewed by Simon Fraser.
The tiled scrolling indicator needs to move down by the value of the
topContentInset. This patch makes that happen by caching the topContentInset in
the TileController. This does feel a little silly since there is already a
function called setTiledScrollingIndicatorPosition() on TiledBacking. However, it
was often the case that calling that function had no effect because m_coverageMap
had not yet been created, and then the information was lost. So instead, we cache
the value.
Set TiledBacking’s copy of topContentInset whenever it changes for the FrameView.
- page/FrameView.cpp:
(WebCore::FrameView::topContentInsetDidChange):
New function to set the inset. Use the inset to position the coverage map.
- platform/graphics/TiledBacking.h:
- platform/graphics/ca/mac/TileController.h:
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::TileController):
(WebCore::TileController::setTopContentInset):
When the coverage map is created, consult the value of the inset.
- platform/graphics/ca/mac/TileCoverageMap.mm:
(WebCore::TileCoverageMap::TileCoverageMap):
Once the backing has been ensured, set the inset.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBacking):
- 8:58 PM Changeset in webkit [168889] by
-
- 2 edits in trunk/Source/WebKit2
Database Process crashes after loading html5test.com
https://bugs.webkit.org/show_bug.cgi?id=132938
<rdar://problem/16241419>
Reviewed by Ryosuke Niwa.
- DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::disconnectedFromWebProcess): Expand comment
about the null check.
(WebKit::DatabaseProcessIDBConnection::deleteDatabase): Call disconnectedFromWebProcess
to pick up its null check and to avoid duplicating code.
- 8:29 PM Changeset in webkit [168888] by
-
- 6 edits in branches/safari-538.34-branch
Rollout r168821.
- 8:27 PM Changeset in webkit [168887] by
-
- 7 edits3 deletes in branches/safari-538.34-branch
Rollout r168822.
- 8:24 PM Changeset in webkit [168886] by
-
- 6 edits in trunk/Source/WebCore
Merge r1267628 from branch.
<rdar://problem/15751219>
Pratik Solanki <psolanki@apple.com>
Reviewed by Simon Fraser.",
TileController relied on the tiling mode in TileCache to determine if it should use low-res
tiles when zooming. Unfortunately, sometimes the tiling mode gets set to Zooming even though
it's actually a pan. Thus we can end up with blurry tiles. Fix this by adding a new flag on
TileCache that controls this behavior and have UIKit set it only when we have an actual zoom
operation.
- platform/ios/LegacyTileCache.h:
(WebCore::LegacyTileCache::tileControllerShouldUseLowScaleTiles):
(WebCore::LegacyTileCache::setTileControllerShouldUseLowScaleTiles):
- platform/ios/LegacyTileCache.mm:
(WebCore::LegacyTileCache::LegacyTileCache):
- platform/ios/wak/WAKWindow.h:
- platform/ios/wak/WAKWindow.mm:
(-[WAKWindow setTileControllerShouldUseLowScaleTiles:]):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles):
- 8:23 PM Changeset in webkit [168885] by
-
- 7 edits3 deletes in tags/Safari-538.34.40
Rollout r168822.
- 8:09 PM Changeset in webkit [168884] by
-
- 6 edits in tags/Safari-538.34.40
Rollout r168821.
- 7:37 PM Changeset in webkit [168883] by
-
- 7 edits3 deletes in trunk
Unreviewed, rolling out r168750.
https://bugs.webkit.org/show_bug.cgi?id=132935
Caused repaint bugs (Requested by weinig on #webkit).
Reverted changeset:
"Text decorations do not contribute to visual overflow"
https://bugs.webkit.org/show_bug.cgi?id=132773
http://trac.webkit.org/changeset/168750
- 7:33 PM Changeset in webkit [168882] by
-
- 2 edits in trunk/Source/WebCore
[New multicolumn] Spin in RenderMultiColumnSet::repaintFlowThreadContent()
https://bugs.webkit.org/show_bug.cgi?id=132884
Reviewed by Beth Dakin.
On iOS, wikipedia pages can hang under RenderMultiColumnSet::repaintFlowThreadContent().
It appears that computedColumnHeight is set to 0 in prepareForLayout, but layout never happens
on the RenderMultiColumnSet in some cases, leaving the column height set to zero.
This caused columnIndexAtOffset() to return bad values, which resulted in very long loops
in repaintFlowThreadContent().
This fix is a stop-gap.
- rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::columnIndexAtOffset):
- 6:48 PM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 5:59 PM Changeset in webkit [168881] by
-
- 5 edits in tags/Safari-538.34.40/Source
Versioning.
- 5:32 PM Changeset in webkit [168880] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] The top/bottom edges should not be sticky when restoring the scroll position from the dynamic size update history
https://bugs.webkit.org/show_bug.cgi?id=132931
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-14
Reviewed by Sam Weinig.
The goal of dynamicSizeUpdateHistory is to make dynamic resize completely reversible.
Because of the stick-to-edges heuristics, this was not true near the top and bottom edges.
For example, start in landscape, scroll the page a bit, then rotate to portrait. Now you have
a lot more vertical space, and the top edge of the document is at the edge of the scrollview.
Rotate back to landscape: the position is restored correct, but it is then overriden by
the stick-to-edges branch.
When we restore the position from history, we should only put it back in the valid bounds, skipping
stick-to-edges entirely.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 5:27 PM Changeset in webkit [168879] by
-
- 3 edits in trunk/Source/WebCore
Remove FrameView::viewportConstrainedExtentRect, it is unused
https://bugs.webkit.org/show_bug.cgi?id=132927
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-14
Reviewed by Simon Fraser.
- page/FrameView.cpp:
(WebCore::FrameView::viewportConstrainedExtentRect): Deleted.
- page/FrameView.h:
Simon replaced this by viewportConstrainedVisibleContentRect, remove the old code.
- 5:26 PM Changeset in webkit [168878] by
-
- 1 copy in tags/Safari-538.34.40
New tag for Safari-538.34.40
- 5:26 PM Changeset in webkit [168877] by
-
- 1 delete in tags/Safari-538.34.40
Remove the Safari-538.34.40 and recreate from safari-538.34-branch
- 5:22 PM Changeset in webkit [168876] by
-
- 7 edits in branches/safari-538.34-branch/Source
Merge r168859.
- 5:20 PM Changeset in webkit [168875] by
-
- 4 edits in branches/safari-538.34-branch/Source/WebKit/mac
Merge r168847.
- 5:16 PM Changeset in webkit [168874] by
-
- 2 edits in trunk/Source/WebKit2
Enable IOSurface view snapshots for 10.9+
https://bugs.webkit.org/show_bug.cgi?id=132932
<rdar://problem/16900619>
Reviewed by Dean Jackson.
- UIProcess/mac/ViewSnapshotStore.h:
r166005 unintentionally worked around <rdar://problem/16734031>.
r168689 fixed another bug that caused sometimes randomly white snapshots.
It's safe to turn on IOSurface view snapshots where purgeability is supported.
- 5:13 PM Changeset in webkit [168873] by
-
- 2 edits in trunk/Source/WebCore
Only define MAX_GRID_TRACK_REPETITIONS if CSS_GRID_LAYOUT is enabled.
This was causing -Wunused-const-variable errors.
- css/CSSParser.cpp: Add include guard.
- 5:08 PM Changeset in webkit [168872] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Only define MAX_GRID_TRACK_REPETITIONS if CSS_GRID_LAYOUT is enabled.
This was causing -Wunused-const-variable errors.
- css/CSSParser.cpp: Add include guard.
- 4:58 PM Changeset in webkit [168871] by
-
- 4 edits in trunk/Source/WebCore
Tile cache has way too many tiles when pinch-zoomed in
https://bugs.webkit.org/show_bug.cgi?id=132929
-and corresponding-
<rdar://problem/16527172>
Reviewed by Benjamin Poulain.
This patch makes the margin sizing functions return the set margin size scaled by
the TileGrid's scale. We also need to get rid of the old notion we used to have
that margin tiles might be allowed to have a different size than the other tiles.
We don't want that. They should have the normal margin size, but they should
affect the overall coverage area.
Scale by the TileGrid's scale.
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::topMarginHeight):
(WebCore::TileController::bottomMarginHeight):
(WebCore::TileController::leftMarginWidth):
(WebCore::TileController::rightMarginWidth):
Get rid of adjustRectAtTileIndexForMargin() since we do not want to ever do this
adjustment. Use tileSize instead of margin size for all sizing computations.
- platform/graphics/ca/mac/TileGrid.h:
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::rectForTileIndex):
(WebCore::TileGrid::getTileIndexRangeForRect):
(WebCore::TileGrid::adjustRectAtTileIndexForMargin): Deleted.
- 4:36 PM Changeset in webkit [168870] by
-
- 2 edits in trunk/Source/WebCore
[Mac] Search fields should not use centered look
https://bugs.webkit.org/show_bug.cgi?id=132930
<rdar://problem/16825842>
Reviewed by Beth Dakin.
We need to explicitly set the centeredLook property
to NO on modern releases of Mac.
- rendering/RenderThemeMac.mm: Declare a new private property and set it to NO.
(WebCore::RenderThemeMac::search):
- 4:20 PM Changeset in webkit [168869] by
-
- 2 edits in trunk/Source/WebKit2
Use the correct client in WebPageProxy::unwrapCryptoKey
https://bugs.webkit.org/show_bug.cgi?id=132924
Reviewed by Darin Adler.
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::unwrapCryptoKey): Match what
we now do in wrapCryptoKey().
- 4:13 PM Changeset in webkit [168868] by
-
- 28 edits2 adds in trunk
Subpixel layout: Change Element.offset* client* scroll* return type to double.
https://bugs.webkit.org/show_bug.cgi?id=132895
Reviewed by Simon Fraser.
Source/WebCore:
This patch changes Element.offset*, Element.client* and Element.scroll* APIs return
type from long to double to match the latest CSSOM View Module spec[1].
Element.offset* and Element.client* do return subpixel values from now on.
Element.scroll* still return integral values as the scrolling code hasn't adopted to subpixel rendering yet.
subpixelCSSOMElementMetricsEnabled setting is added to be able to turn this feature on/off
from WK2 preferences. It toggles the return value from subpixel to floored integral.
It does not change layout/rendering behavior.
Reference list of what other browsers do:
IE: http://blogs.msdn.com/b/ie/archive/2012/02/17/sub-pixel-rendering-and-the-css-object-model.aspx
Blink: http://www.chromestatus.com/features/5497402177880064
Firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=825607
[1] http://www.w3.org/TR/2013/WD-cssom-view-20131217/
Test: cssom/subpixel-offsetleft-top-width-height-values.html
- dom/Element.cpp:
(WebCore::localZoomForRenderer):
(WebCore::adjustForLocalZoom):
(WebCore::convertToNonSubpixelValueIfNeeded):
(WebCore::Element::offsetLeft):
(WebCore::Element::offsetTop):
(WebCore::Element::offsetWidth):
(WebCore::Element::offsetHeight):
(WebCore::Element::clientLeft):
(WebCore::Element::clientTop):
(WebCore::Element::clientWidth):
(WebCore::Element::clientHeight):
(WebCore::Element::scrollLeft):
(WebCore::Element::scrollTop):
(WebCore::Element::setScrollLeft):
(WebCore::Element::setScrollTop):
(WebCore::Element::scrollWidth):
(WebCore::Element::scrollHeight):
- dom/Element.h:
- dom/Element.idl:
- html/HTMLBodyElement.cpp:
(WebCore::adjustForZoom):
(WebCore::HTMLBodyElement::scrollLeft):
(WebCore::HTMLBodyElement::setScrollLeft):
(WebCore::HTMLBodyElement::scrollTop):
(WebCore::HTMLBodyElement::setScrollTop):
(WebCore::HTMLBodyElement::scrollHeight):
(WebCore::HTMLBodyElement::scrollWidth):
- html/HTMLBodyElement.h:
- page/Settings.in:
Source/WebKit2:
This patch changes Element.offset*, Element.client* and Element.scroll* APIs return
type from long to double to match the latest CSSOM View Module spec[1].
Element.offset* and Element.client* do return subpixel values from now on.
Element.scroll* still return integral values as the scrolling code hasn't adopted to subpixel rendering yet.
subpixelCSSOMElementMetricsEnabled setting is added to be able to turn this feature on/off
from WK2 preferences. It toggles the return value from subpixel to floored integral.
It does not change layout/rendering behavior.
Reference list of what other browsers do:
IE: http://blogs.msdn.com/b/ie/archive/2012/02/17/sub-pixel-rendering-and-the-css-object-model.aspx
Blink: http://www.chromestatus.com/features/5497402177880064
Firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=825607
[1] http://www.w3.org/TR/2013/WD-cssom-view-20131217/
- Shared/WebPreferencesStore.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetSubpixelCSSOMElementMetricsEnabled):
(WKPreferencesGetSubpixelCSSOMElementMetricsEnabled):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
LayoutTests:
Some test cases expect integral values, so the test content is updated accordingly.
It mostly means adding Math.round() before comparing values in order to match pixelSnappedIntRect()
functionality.
- css3/calc/simple-calcs-prefixed.html: changed file format from Windows to Unix.
- css3/calc/simple-calcs.html: changed file format from Windows to Unix.
- cssom/subpixel-offsetleft-top-width-height-values-expected.txt: Added.
- cssom/subpixel-offsetleft-top-width-height-values.html: Added.
- editing/selection/drag-start-event-client-x-y.html: use floor as we compare the return value to a truncated integer.
- editing/selection/mixed-editability-10.html:
- fast/css/zoom-in-length-round-trip.html:
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
- fast/forms/basic-buttons.html:
- js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/mac/fast/scrolling/scroll-div-latched-div.html:
- platform/mac/fast/scrolling/scroll-div-latched-mainframe.html:
- platform/mac/fast/scrolling/scroll-select-bottom-test.html:
- platform/mac/fast/scrolling/scroll-select-latched-mainframe.html:
- platform/mac/fast/scrolling/scroll-select-latched-select.html:
- resources/check-layout.js:
- 3:56 PM Changeset in webkit [168867] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r168609.
- 3:55 PM Changeset in webkit [168866] by
-
- 11 edits in trunk/Source/WebKit2
[iOS][WK2] Expose the viewport meta tag width on the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=132926
<rdar://problem/16892115>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-14
Reviewed by Sam Weinig.
Safari requires the viewport meta tag width for legacy stuff on WebApps. Just send it
over to the UIProcess when it changes.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _setViewportMetaTagWidth:]):
(-[WKWebView _viewportMetaTagWidth]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didChangeViewportMetaTagWidth):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::viewportMetaTagWidthDidChange):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::viewportPropertiesDidChange):
- 3:50 PM Changeset in webkit [168865] by
-
- 3 edits5 adds in trunk/LayoutTests
[GTK] Unreviewed GTK gardening.
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-14
- platform/gtk/TestExpectations: Report and mark new tests failing.
- platform/gtk/editing/apply-style-iframe-crash-expected.txt: Added.
Rebaseline after r168641.
- platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-05-f-expected.txt: Added.
Rebaseline after r168543.
- platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-06-f-expected.txt: Added.
Rebaseline after r168543.
- platform/gtk/svg/hixie/mixed/010-expected.txt: Rebaseline after r168674.
- platform/gtk/svg/zoom/page/zoom-svg-as-relative-image-expected.txt: Added.
Rebaseline after r168350.
- platform/gtk/svg/zoom/text/zoom-svg-float-border-padding-expected.txt: Added.
Rebaseline after r168674.
- 3:39 PM Changeset in webkit [168864] by
-
- 2 edits in trunk/Source/WebKit2
[iOS WK2] Make view debugging easier
https://bugs.webkit.org/show_bug.cgi?id=132892
Reviewed by Tim Horton.
Enhance -[WKCompositingView description] to show WebKit-related information
which is useful when dumping a window's UIView hierarchy.
Also have WKTransformView and WKRemoteView inherit from WKCompositingView,
and thereby get the hitTest:withEvent: override for free, as well as better dumping.
- UIProcess/ios/RemoteLayerTreeHostIOS.mm:
(-[WKCompositingView description]):
(-[WKTransformView hitTest:withEvent:]): Deleted.
(-[WKRemoteView hitTest:withEvent:]): Deleted.
- 3:22 PM Changeset in webkit [168863] by
-
- 3 edits in tags/Safari-538.34.40/Source/WebKit2
Merge r168609.
- 3:09 PM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 2:13 PM Changeset in webkit [168862] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Fixed positioned element must relayout correctly before sending resize events to the page
https://bugs.webkit.org/show_bug.cgi?id=132920
<rdar://problem/16836866>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-14
Reviewed by Simon Fraser.
During the dynamic resize operation, we do not update the fixed position elements because
it is a very hard problem on the UI Process side.
When the animation finishes, the fixed positioned rect is recomputed on the UIProcess and pushed
to the WebProcess.
The problem is sending the rect after the animation is too late, the content can observe the fixed
elements layout through JavaScript and would get the old size.
This patch fixes the issue updating the CustomFixedPositionLayoutRect on the WebProcess before
notifying the content of the resize.
First, we layout the content to the new fixed layout size to get the new content size.
Then, we compute the new FixedPositionedLayoutRect with FrameView's viewportConstrainedObjectsRect(),
this use the real content size and our estimated unobscured content rect.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 1:48 PM Changeset in webkit [168861] by
-
- 2 edits in trunk/Source/JavaScriptCore
Inline caching for proxies clobbers baseGPR too early
https://bugs.webkit.org/show_bug.cgi?id=132916
Reviewed by Filip Pizlo.
We clobber baseGPR prior to the Structure checks, so if any of the checks fail then the slow path
gets the target of the proxy rather than the proxy itself. We need to delay the clobbering of baseGPR
until we know the inline cache is going to succeed.
- jit/Repatch.cpp:
(JSC::generateByIdStub):
- 1:17 PM Changeset in webkit [168860] by
-
- 3 edits in trunk/Source/JavaScriptCore
[Win] Unreviewed build fix.
- JavaScriptCore.vcxproj/JavaScriptCore.submit.sln: This solution
was missing commands to build LLInt portions of JSC.
- llint/LLIntData.cpp: 64-bit build fix.
- 1:12 PM Changeset in webkit [168859] by
-
- 7 edits in trunk/Source
Implement NSSharingServiceDelegate method "transitionImageForShareItem"
<rdar://problem/16878020> and https://bugs.webkit.org/show_bug.cgi?id=132911
Reviewed by Tim Horton.
Source/WebCore:
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
Source/WebKit/mac:
- Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController sharingService:transitionImageForShareItem:contentRect:]):
- WebCoreSupport/WebContextMenuClient.h:
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::renderedImageForControlledImage): Paint the entire content rect for the controlled image
into an ImageBuffer, then return the resulting NSImage. This only paints the image itself and not any
overlapping content by setting the selection and appropriate painting mode.
- 1:11 PM Changeset in webkit [168858] by
-
- 2 edits in trunk/Source/WebCore
Another unreviewed build fix.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::getTimingData):
Added necessary UNUSED_PARAMs.
- 1:03 PM Changeset in webkit [168857] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix after r168849.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::getTimingData):
Protect use of timing data with ENABLE(WEB_TIMING).
- 12:14 PM Changeset in webkit [168856] by
-
- 3 edits in tags/Safari-538.34.40/Source/WebKit2
Merge r168553.
- 12:13 PM Changeset in webkit [168855] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merge r168553.
- 12:00 PM Changeset in webkit [168854] by
-
- 1 copy in tags/Safari-538.34.5
New tag.
- 11:47 AM Changeset in webkit [168853] by
-
- 5 edits in branches/safari-538.34-branch/Source
Update versioning to 538.34.41
- 11:43 AM Changeset in webkit [168852] by
-
- 1 copy in tags/Safari-538.34.40
New tag Safari-538.34.40
- 11:40 AM Changeset in webkit [168851] by
-
- 5 edits in branches/safari-538.34-branch/Source
Update versioning to 538.34.40
- 11:32 AM Changeset in webkit [168850] by
-
- 1 delete in tags/Safari-538.34.5
Remove Tag.
- 11:28 AM Changeset in webkit [168849] by
-
- 5 edits in trunk/Source/WebCore
Refactor duplicate code in web timing.
https://bugs.webkit.org/show_bug.cgi?id=132917
Reviewed by Alexey Proskuryakov.
- platform/network/ResourceHandle.h:
Added getTimingData declaration.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::getTimingData):
- platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
Moved duplicate code to ResourceHandle.
- 11:02 AM Changeset in webkit [168848] by
-
- 3 edits in trunk/Source/WebKit2
REGRESSION(WK2): Many pages have very wrong text size after rotating.
https://bugs.webkit.org/show_bug.cgi?id=132893
<rdar://problem/16806958>
Reviewed by Benjamin Poulain.
Whenever our viewport width changes we must reset text autosizing
on the renderer.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::setViewportConfigurationMinimumLayoutSize):
(WebKit::WebPage::setMinimumLayoutSizeForMinimalUI):
(WebKit::WebPage::resetTextAutosizingBeforeLayoutIfNeeded):
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 11:02 AM Changeset in webkit [168847] by
-
- 4 edits in trunk/Source/WebKit/mac
sourceFrameOnScreenForShareItem: can be off by a pixel
<rdar://problem/16878020> and https://bugs.webkit.org/show_bug.cgi?id=132911
Reviewed by Simon Fraser.
In a land of LayoutUnits and sub-pixel rendering, converting between IntRects and
FloatRects can be error prone. So we now try to minimize such conversions.
- Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController sharingService:sourceFrameOnScreenForShareItem:]):
- WebCoreSupport/WebContextMenuClient.h:
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::clientFloatRectForNode): Split this into a separate utility method
as it will be shared with other code very soon. Instead of using absoluteBoundingBoxRect()
which does lossy float->int conversions, try to keep things in terms of FloatRects as
much as possible.
(WebContextMenuClient::screenRectForHitTestNode): Call clientFloatRectForNode to get the
FloatRect, then perform the lossy rounding conversion to an IntRect only once.
- 10:47 AM Changeset in webkit [168846] by
-
- 2 edits in trunk/LayoutTests
2014-05-14 Zalan Bujtas <Alan Bujtas>
Fix line ending style for the test.
- editing/selection/drag-start-event-client-x-y.html:
- 10:44 AM Changeset in webkit [168845] by
-
- 15 edits in trunk/Source
Use references instead of pointers with ResourceLoadTiming.
https://bugs.webkit.org/show_bug.cgi?id=132846
Reviewed by Alexey Proskuryakov.
Source/WebCore:
- WebCore.exp.in:
Removed ResourceResponseBase::setResourceLoadTiming linker symbol.
- inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForResourceResponse):
- page/PerformanceResourceTiming.cpp:
(WebCore::PerformanceResourceTiming::domainLookupStart):
(WebCore::PerformanceResourceTiming::domainLookupEnd):
(WebCore::PerformanceResourceTiming::connectStart):
(WebCore::PerformanceResourceTiming::connectEnd):
(WebCore::PerformanceResourceTiming::secureConnectionStart):
(WebCore::PerformanceResourceTiming::requestStart):
Use references instead of pointers.
- page/PerformanceResourceTiming.h:
Make an instance instead of a RefPtr.
- page/PerformanceTiming.cpp:
(WebCore::PerformanceTiming::domainLookupStart):
(WebCore::PerformanceTiming::domainLookupEnd):
(WebCore::PerformanceTiming::connectStart):
(WebCore::PerformanceTiming::connectEnd):
(WebCore::PerformanceTiming::secureConnectionStart):
(WebCore::PerformanceTiming::requestStart):
(WebCore::PerformanceTiming::responseStart):
Check to see if the loader exists, then use ResourceLoadTiming reference.
(WebCore::PerformanceTiming::resourceLoadTiming): Deleted.
- page/PerformanceTiming.h:
Removed resourceLoadTiming declaration.
- platform/network/ResourceLoadTiming.h:
(WebCore::ResourceLoadTiming::ResourceLoadTiming):
(WebCore::ResourceLoadTiming::operator=):
Replaced reference counting with copy constructors.
(WebCore::ResourceLoadTiming::create): Deleted.
(WebCore::ResourceLoadTiming::deepCopy): Deleted.
- platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::adopt):
(WebCore::ResourceResponseBase::copyData):
(WebCore::ResourceResponseBase::resourceLoadTiming):
(WebCore::ResourceResponseBase::setResourceLoadTiming):
(WebCore::ResourceResponseBase::compare):
- platform/network/ResourceResponseBase.h:
- platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::didStartRequest):
(WebCore::networkEventCallback):
Use references instead of pointers.
Source/WebKit2:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ResourceResponse>::encode):
(IPC::ArgumentCoder<ResourceResponse>::decode):
Use references instead of pointers and null checks.
- 10:29 AM Changeset in webkit [168844] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r168837.
https://bugs.webkit.org/show_bug.cgi?id=132913
The patch added an assertion which fires on 6 tests (Requested
by ap on #webkit).
Reverted changeset:
"[CSS Regions] Add ASSERT to make sure using the flowThread
cache does not return incorrect results"
https://bugs.webkit.org/show_bug.cgi?id=132906
http://trac.webkit.org/changeset/168837
- 10:24 AM Changeset in webkit [168843] by
-
- 34 edits7 deletes in trunk
Revert "Don't dispatch 'beforeload' event inside FrameView::layout()",
commit 84fe8cf6fbe8b5de9a06300ca3ef6d0ffc96948c, and associated
follow-up fixes:
"platform/mac/plugins/testplugin-onnew-onpaint.html failing after
"[Win] Unreviewed build fix after r168668.", commit
The original merged patch appears to have caused a regression in
fast/dom/HTMLObjectElement/object-as-frame.html.
<https://bugs.webkit.org/show_bug.cgi?id=132886>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
- WebCore.exp.in:
- dom/Document.cpp:
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
- dom/Document.h:
- html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::renderWidgetForJSBindings):
- html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderWidgetForJSBindings):
- page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::flushAnyPendingPostLayoutTasks):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::updateEmbeddedObjectsTimerFired): Deleted.
- page/FrameView.h:
- testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks): Deleted.
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
LayoutTests:
- compositing/plugins/composited-plugin.html:
- compositing/plugins/no-backing-store.html:
- fast/dom/beforeload/flash-before-load.html:
- fast/events/beforeload-assertion-expected.txt: Removed.
- fast/events/beforeload-assertion.html: Removed.
- fast/events/beforeload-iframe-crash-expected.txt: Removed.
- fast/events/beforeload-iframe-crash.html: Removed.
- fast/events/beforeload-input-time-crash-expected.txt: Removed.
- fast/events/beforeload-input-time-crash.html: Removed.
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html:
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-none-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-none-blocked.html:
- http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js:
(testImpl.iframe.onload):
(testImpl):
- http/tests/security/mixedContent/insecure-plugin-in-iframe.html:
- platform/mac/plugins/supports-carbon-event-model.html:
- platform/mac/plugins/testplugin-onnew-onpaint.html:
- plugins/get-user-agent-with-null-npp-from-npp-new.html:
- plugins/mouse-click-plugin-clears-selection.html:
- plugins/netscape-plugin-map-data-to-src.html:
- plugins/no-mime-with-valid-extension.html:
- plugins/plugin-initiate-popup-window.html:
- plugins/windowless_plugin_paint_test.html:
- resources/plugin.js: Removed.
- 9:59 AM Changeset in webkit [168842] by
-
- 4 edits in trunk
alidation for getUserMedia() errorCallback is missing.
https://bugs.webkit.org/show_bug.cgi?id=132901
Patch by Kiran <kiran.guduru@samsung.com> on 2014-05-14
Reviewed by Darin Adler.
Source/WebCore:
The patch adds the validation for getUserMedia errorCallBack
and throws TypeMismatchError.
Test: fast/mediastream/getusermedia.html
- Modules/mediastream/NavigatorUserMedia.cpp:
(WebCore::NavigatorUserMedia::webkitGetUserMedia):
LayoutTests:
This test checks for null values in getUserMedia errorCallback.
- fast/mediastream/getusermedia.html:
- 9:57 AM Changeset in webkit [168841] by
-
- 2 edits in trunk/Source/JavaScriptCore
ARM Traditional buildfix after r168776.
https://bugs.webkit.org/show_bug.cgi?id=132903
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-14
Reviewed by Darin Adler.
- assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::abortWithReason): Added.
- 9:48 AM Changeset in webkit [168840] by
-
- 7 edits in trunk/LayoutTests
Change line endings of some test files to LF to make it easier to commit and test changes.
- css3/calc/simple-calcs.html:
- css3/calc/simple-minmax.html:
- css3/calc/transforms-scale-expected.html:
- css3/calc/transforms-scale.html:
- css3/calc/transforms-translate-expected.html:
- css3/calc/transforms-translate.html:
- 9:44 AM Changeset in webkit [168839] by
-
- 24 edits in trunk
Remove CSS_STICKY_POSITION guards
https://bugs.webkit.org/show_bug.cgi?id=132676
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-05-14
Reviewed by Simon Fraser.
.:
- Source/cmake/OptionsEfl.cmake:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmakeconfig.h.cmake:
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
- css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EPosition):
- css/CSSValueKeywords.in:
- editing/EditingStyle.cpp:
(WebCore::EditingStyle::convertPositionStyle):
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/FeatureDefines.h:
Tools:
- Scripts/webkitperl/FeatureList.pm:
WebKitLibraries:
- win/tools/vsprops/FeatureDefines.props:
- win/tools/vsprops/FeatureDefinesCairo.props:
- 9:41 AM Changeset in webkit [168838] by
-
- 2 edits in trunk/LayoutTests
Fix line ending style for the test (as an experiment).
- css3/calc/simple-calcs-prefixed.html:
- 8:38 AM Changeset in webkit [168837] by
-
- 3 edits in trunk/Source/WebCore
[CSS Regions] Add ASSERT to make sure using the flowThread cache does not return incorrect results
https://bugs.webkit.org/show_bug.cgi?id=132906
Reviewed by Andrei Bucur.
If flowThreadContainingBlock() is called on an object which is in a different
flow thread than the one currently being laid out, this method will return an incorrect
result. I added an assertion for that to make sure we catch and treat any such scenarios.
No new tests required.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::locateFlowThreadContainingBlockNoCache):
(WebCore::RenderObject::locateFlowThreadContainingBlock):
- rendering/RenderObject.h:
- 8:14 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 7:35 AM Changeset in webkit [168836] by
-
- 5 edits in trunk/Source/WebCore
[CSS Regions] Don't relayout when updating the region range unless necessary
https://bugs.webkit.org/show_bug.cgi?id=132120
Reviewed by Antti Koivisto.
The patch reduces the cases when a relayout is made for boxes that change the region range.
This lowers the amount of nested layouts in most cases and produces big layout speedups for trees
without overhanging floats.
Tests: Major performance improvement with speedups of 50-60% on:
Layout/RegionsAuto.html, Layout/RegionsAutoMaxHeight.html and Layout/RegionsFixed.html
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateRegionRangeForBoxChild): Ask the child box if it needs a relayout
in case its region range changes.
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutBlockChild): It's not necessary to do two layouts here because
there's no block direction position change between them for the child.
(WebCore::RenderBlockFlow::needsLayoutAfterRegionRangeChange): If the block doesn't have floats
or if it expands to enclose the floats it doesn't need to relayout after a region range chage.
It's not possible for it to have a float inside overflow that must be repositioned using the new
range.
- rendering/RenderBlockFlow.h:
- rendering/RenderBox.h:
(WebCore::RenderBox::needsLayoutAfterRegionRangeChange): By default don't relayout after a region
range change.
- 6:43 AM Changeset in webkit [168835] by
-
- 2 edits in trunk/Source/WebCore
RuleData should ref the StyleRule
https://bugs.webkit.org/show_bug.cgi?id=132865
Reviewed by Andreas Kling.
As a defensive move make RuleData ref the StyleRule.
This adds some ref churn but the overall performance impact should be minimal.
- css/RuleSet.h:
(WebCore::RuleData::rule):
- 5:48 AM Changeset in webkit [168834] by
-
- 3 edits1 copy1 add1 delete in trunk/Tools
REGRESSION(CMAKE): [GTK] InputMethodFilter unit test is not built
https://bugs.webkit.org/show_bug.cgi?id=132686
Reviewed by Philippe Normand.
Bring back InputMethodFilter test to the build and compile it into
a single binary TestWebCore with the other WebCore tests. Also
move it from TestWebKitAPI/gtk/ to TestWebKitAPI/Tests/WebCore/gtk/.
- Scripts/run-gtk-tests:
(TestRunner): Remove WebCoreGtk from the list of test directories.
- TestWebKitAPI/PlatformGTK.cmake:
- TestWebKitAPI/Tests/WebCore/gtk/InputMethodFilter.cpp: Renamed from Tools/TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp.
- 5:44 AM Changeset in webkit [168833] by
-
- 2 edits in trunk/Tools
[EFL] Make XVFBDriver optional
https://bugs.webkit.org/show_bug.cgi?id=131036
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-14
Reviewed by Gyuyoung Kim.
- Scripts/webkitpy/port/efl.py:
(EflPort._driver_class):
- 2:52 AM Changeset in webkit [168832] by
-
- 5 edits in trunk/Source
Versioning.
- 2:50 AM Changeset in webkit [168831] by
-
- 1 copy in tags/Safari-538.35
New Tag.
- 2:47 AM Changeset in webkit [168830] by
-
- 4 edits in trunk/Source
Source/WebCore: GIF animations don't restart after scrolling on iOS WebKit1
https://bugs.webkit.org/show_bug.cgi?id=132900
Reviewed by Andreas Kling.
- WebCore.exp.in:
Source/WebKit/mac: GIF animations don't restart after scrolling with iOS WebKit1
https://bugs.webkit.org/show_bug.cgi?id=132900
<rdar://problem/16490858>
Reviewed by Andreas Kling.
- WebView/WebView.mm:
(-[WebView _didFinishScrollingOrZooming]):
Check if the animations need to be restarted after scrolling finishes.
- 2:46 AM Changeset in webkit [168829] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 2:44 AM Changeset in webkit [168828] by
-
- 1 copy in tags/Safari-538.34.5
New Tag.
- 2:40 AM Changeset in webkit [168827] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168767.
- 2:38 AM Changeset in webkit [168826] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168764.
- 2:34 AM Changeset in webkit [168825] by
-
- 8 edits in branches/safari-538.34-branch/Source
Merge patch for <rdar://problem/16650338>.
- 2:08 AM Changeset in webkit [168824] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168758.
- 2:06 AM Changeset in webkit [168823] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168755.
- 2:03 AM Changeset in webkit [168822] by
-
- 7 edits3 copies in branches/safari-538.34-branch
Merged r168750.
- 1:57 AM Changeset in webkit [168821] by
-
- 6 edits in branches/safari-538.34-branch
Merged r168599.
- 1:53 AM Changeset in webkit [168820] by
-
- 12 edits in branches/safari-538.34-branch/Source
Merged r168744.
- 1:44 AM Changeset in webkit [168819] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168768.
- 1:40 AM Changeset in webkit [168818] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168724.
- 1:37 AM Changeset in webkit [168817] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168694.
- 1:35 AM Changeset in webkit [168816] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168691.
- 1:33 AM Changeset in webkit [168815] by
-
- 7 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168690.
- 1:29 AM Changeset in webkit [168814] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168740.
- 1:15 AM Changeset in webkit [168813] by
-
- 2 edits1 copy1 delete in branches/safari-538.34-branch/Source/WebKit2
Merged r168739.
- 1:13 AM Changeset in webkit [168812] by
-
- 8 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168689.
- 1:11 AM Changeset in webkit [168811] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168670.
- 1:08 AM Changeset in webkit [168810] by
-
- 5 edits in branches/safari-538.34-branch/Source
Merged r168661.
- 1:04 AM Changeset in webkit [168809] by
-
- 5 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168637.
- 1:02 AM Changeset in webkit [168808] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168629.
- 12:59 AM Changeset in webkit [168807] by
-
- 9 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168655.
- 12:56 AM Changeset in webkit [168806] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168643.
- 12:54 AM Changeset in webkit [168805] by
-
- 7 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168602.
- 12:50 AM Changeset in webkit [168804] by
-
- 2 edits1 copy1 delete in branches/safari-538.34-branch/Source/WebKit2
Merged r168583.
- 12:45 AM Changeset in webkit [168803] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168572.
- 12:43 AM Changeset in webkit [168802] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168557.
- 12:41 AM Changeset in webkit [168801] by
-
- 16 edits in branches/safari-538.34-branch/Source
Merged r168556.
- 12:36 AM Changeset in webkit [168800] by
-
- 4 edits in branches/safari-538.34-branch/Source
Merged r168513.
- 12:26 AM Changeset in webkit [168799] by
-
- 4 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168568.
- 12:23 AM Changeset in webkit [168798] by
-
- 54 edits1 copy in branches/safari-538.34-branch/Source/WebKit2
Merged r168566.
- 12:18 AM Changeset in webkit [168797] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168563.
- 12:14 AM Changeset in webkit [168796] by
-
- 8 edits in branches/safari-538.34-branch
Fix dates in ChangeLogs.
May 13, 2014:
- 11:45 PM Changeset in webkit [168795] by
-
- 11 edits in branches/safari-538.34-branch
Merged r168555.
- 11:42 PM Changeset in webkit [168794] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168536.
- 11:39 PM Changeset in webkit [168793] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168519.
- 11:35 PM Changeset in webkit [168792] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168514.
- 11:33 PM Changeset in webkit [168791] by
-
- 8 edits2 adds in trunk
[CSS Regions] Assertion failure in some cases with inline blocks
https://bugs.webkit.org/show_bug.cgi?id=132859
Reviewed by Mihnea Ovidenie.
Source/WebCore:
The patch hardens the conditions when the region range caches are
populated to avoid desynchronizations when objects move during layout.
This is true especially in the case of the boxes found inside
inline blocks, that get their range from the containing line.
There is a new function |computedRegionRangeForBox| that will always
return a region range for a box using a best effort algorithm. This should
be used only when there's no need to cache region information.
This change also allows better control over the lifecycle of the
|RenderBoxRegionInfo| objects stored on the regions. We can now iterate
over the full range of the box when cleaning up the region box info. The
same applies for the width change detection function.
Test: fast/regions/inline-block-shifted-region.html
- rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::updateRegionForLine): Don't set the containing
region if the block doesn't have a range. The returned value would not
be correctly clamped.
- rendering/RenderBox.cpp:
(WebCore::RenderBlock::hasRegionRangeInFlowThread):
- rendering/RenderBox.h:
- rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeRenderBoxRegionInfo): Iterate only over
the range of the box, not from the start of the region chain.
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock): Same as
above.
(WebCore::RenderFlowThread::hasCachedRegionRangeForBox):
(WebCore::RenderFlowThread::getRegionRangeForBoxFromCachedInfo):
(WebCore::RenderFlowThread::getRegionRangeForBox):
(WebCore::RenderFlowThread::computedRegionRangeForBox): Best effort function
to determine the range of a box. It will always return something as long
as the flow thread has regions.
(WebCore::RenderFlowThread::objectShouldFragmentInFlowRegion): Use the new function
to determine the range.
- rendering/RenderFlowThread.h:
- rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::absoluteQuadsForBox): Use the new function to determine
the range.
LayoutTests:
Test that moving lines with inline blocks doesn't cause an assertion.
- fast/regions/inline-block-shifted-region-expected.txt: Added.
- fast/regions/inline-block-shifted-region.html: Added.
- 11:32 PM Changeset in webkit [168790] by
-
- 11 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168508.
- 11:24 PM Changeset in webkit [168789] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168489.
- 11:21 PM Changeset in webkit [168788] by
-
- 4 edits in branches/safari-538.34-branch/Source/WebInspectorUI
Merged r168484.
- 11:20 PM Changeset in webkit [168787] by
-
- 4 edits in trunk/Source/WebKit2
[EFL][WK2] Add ewk_view_fixed_layout_size_set|get()
https://bugs.webkit.org/show_bug.cgi?id=132811
Reviewed by Christophe Dumez.
Some EFL applications need to set size of fixed layout when enabling fixed layout.
This APIs can pass ownership regarding the size of fixed layout to application side.
- UIProcess/API/efl/ewk_view.cpp:
(ewk_view_layout_fixed_size_set):
(ewk_view_layout_fixed_size_get):
- UIProcess/API/efl/ewk_view.h:
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
- 11:17 PM Changeset in webkit [168786] by
-
- 6 edits in branches/safari-538.34-branch/Source
Merged r168473.
- 11:14 PM Changeset in webkit [168785] by
-
- 5 edits in branches/safari-538.34-branch/Source
Merged r168497.
- 11:12 PM Changeset in webkit [168784] by
-
- 10 edits in branches/safari-538.34-branch/Source
Merged r168459.
- 10:56 PM Changeset in webkit [168783] by
-
- 2 edits in trunk/Tools
Flakiness dashboard contains outdated list of bots on builders.jsonp
https://bugs.webkit.org/show_bug.cgi?id=132874
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-13
Reviewed by Darin Adler.
- TestResultServer/static-dashboards/builders.jsonp: Regenerate this
file by changing to the directory Tools/TestResultServer and executing
the script generate_builders_json.py
- 10:54 PM Changeset in webkit [168782] by
-
- 7 edits in branches/safari-538.34-branch/Source
Merged r168452.
- 10:50 PM Changeset in webkit [168781] by
-
- 7 edits in branches/safari-538.34-branch/Source
Merged r168447.
- 9:29 PM Changeset in webkit [168780] by
-
- 5 edits in branches/ftlopt/Source/JavaScriptCore
[ftlopt] DFG should not exit due to inadequate profiling coverage when it can trivially fill in the profiling coverage due to variable constant inference and the better prediction modeling of typed array GetByVals
https://bugs.webkit.org/show_bug.cgi?id=132896
Reviewed by Geoffrey Garen.
This is a slight win on SunSpider, but it's meant to ultimately help us on
embenchen/lua. We already do well on that benchmark but our convergence is slower than
I'd like.
- dfg/DFGArrayMode.cpp:
(JSC::DFG::ArrayMode::refine):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- 9:15 PM Changeset in webkit [168779] by
-
- 5 edits in trunk/Source
Fix "ASSERTION FAILED: m_representation == PlatformLayerRepresentation" with UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=132899
Reviewed by Beth Dakin.
Source/WebCore:
Export some things
- WebCore.exp.in:
Source/WebKit2:
The new InsetClipLayer and ContentShadowLayer members on scrolling nodes
need to be correctly encoded/decoded for UI-side compositing, and dumped
correctly.
- Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):
- UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
- 9:13 PM Changeset in webkit [168778] by
-
- 3 edits2 adds in trunk
[CSS Shapes] line height grows around polygon and incorrectly causes text to wrap to next line
https://bugs.webkit.org/show_bug.cgi?id=131622
Reviewed by Bem Jones-Bey.
Source/WebCore:
Corrected an earlier PolygonShape fix https://bugs.webkit.org/show_bug.cgi?id=132132
When the top or bottom of a layout line is coincident with a polygon edge vertex, we
only consider it an intersection if the edge extends into the line.
Test: fast/shapes/shape-outside-floats/shape-outside-edge-case.html
- rendering/shapes/PolygonShape.cpp:
(WebCore::OffsetPolygonEdge::clippedEdgeXRange):
LayoutTests:
- fast/shapes/shape-outside-floats/shape-outside-edge-case-expected.html: Added.
- fast/shapes/shape-outside-floats/shape-outside-edge-case.html: Added.
- 8:58 PM Changeset in webkit [168777] by
-
- 2 edits in trunk/Source/WebCore
m_layerForOverhangAreas is sometimes not positioned correctly when topContentInset
has changed
https://bugs.webkit.org/show_bug.cgi?id=132898
-and corresponding-
<rdar://problem/16644710>
Reviewed by Anders Carlsson.
This function is called whenever the topContentInset changes, so use it as an
opportunity to ensure that m_layerForOverhangAreas has been positioned correctly.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
Everyone gets an anchor point!
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
- 8:57 PM Changeset in webkit [168776] by
-
- 26 edits1 add in trunk/Source/JavaScriptCore
JIT breakpoints should be more informative
https://bugs.webkit.org/show_bug.cgi?id=132882
Reviewed by Oliver Hunt.
Introduce the notion of an AbortReason, which is a nice enumeration of coded assertion
failure names. This means that all you need to figure out why the JIT SIGTRAP'd is to look
at that platform's abort reason register (r11 on X86-64 for example).
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- assembler/AbortReason.h: Added.
- assembler/AbstractMacroAssembler.h:
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::abortWithReason):
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::abortWithReason):
- assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::abortWithReason):
- assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::abortWithReason):
- dfg/DFGSlowPathGenerator.h:
(JSC::DFG::SlowPathGenerator::generate):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::bail):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateBasicStorage):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGThunks.cpp:
(JSC::DFG::osrEntryThunkGenerator):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::jitAssertIsInt32):
(JSC::AssemblyHelpers::jitAssertIsJSInt32):
(JSC::AssemblyHelpers::jitAssertIsJSNumber):
(JSC::AssemblyHelpers::jitAssertIsJSDouble):
(JSC::AssemblyHelpers::jitAssertIsCell):
(JSC::AssemblyHelpers::jitAssertTagsInPlace):
(JSC::AssemblyHelpers::jitAssertHasValidCallFrame):
(JSC::AssemblyHelpers::jitAssertIsNull):
(JSC::AssemblyHelpers::jitAssertArgumentCountSane):
(JSC::AssemblyHelpers::emitStoreStructureWithTypeInfo):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::checkStackPointerAlignment):
(JSC::AssemblyHelpers::emitStoreStructureWithTypeInfo): Deleted.
- jit/JIT.h:
- jit/JITArithmetic.cpp:
(JSC::JIT::emitSlow_op_div):
- jit/JITOpcodes.cpp:
(JSC::JIT::emitSlow_op_loop_hint):
- jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTINativeCall):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::addStructureTransitionCheck): Deleted.
(JSC::JIT::testPrototype): Deleted.
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::compileGetDirectOffset):
- jit/RegisterPreservationWrapperGenerator.cpp:
(JSC::generateRegisterRestoration):
- jit/Repatch.cpp:
(JSC::addStructureTransitionCheck):
(JSC::linkClosureCall):
- jit/ThunkGenerators.cpp:
(JSC::emitPointerValidation):
(JSC::nativeForGenerator):
- yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generate):
- 8:43 PM Changeset in webkit [168775] by
-
- 2 edits in tags/Safari-538.34.4/Source/WebCore
Merged r168742.
- 8:39 PM Changeset in webkit [168774] by
-
- 6 edits in tags/Safari-538.34.4/Source/WebCore
Merged r168728.
- 8:31 PM Changeset in webkit [168773] by
-
- 5 edits in tags/Safari-538.34.4/Source
Versioning.
- 8:28 PM Changeset in webkit [168772] by
-
- 1 copy in tags/Safari-538.34.4
New tag.
- 8:27 PM Changeset in webkit [168771] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 8:13 PM Changeset in webkit [168770] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168742.
- 8:11 PM Changeset in webkit [168769] by
-
- 6 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168728.
- 6:09 PM Changeset in webkit [168768] by
-
- 2 edits in trunk/Source/WebKit2
Another build fix.
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/WKFoundation.h:
Make sure to include Availability.h
- 5:59 PM Changeset in webkit [168767] by
-
- 2 edits in trunk/Source/WebCore
Attempted build fix after https://bugs.webkit.org/show_bug.cgi?id=132891
- page/PageDebuggable.cpp:
- 5:35 PM Changeset in webkit [168766] by
-
- 2 edits in trunk/Source/WebKit
Step 2 (of 2) fixing the Windows build. Add new setPageScaleFactor.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
- 5:28 PM Changeset in webkit [168765] by
-
- 2 edits in trunk/Source/WebKit
Step 1 of fixing the windows build. Remove setPageScaleFactor.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
- 5:21 PM Changeset in webkit [168764] by
-
- 3 edits in trunk/Source/WebCore
Force developerExtrasEnabled when a remote Inspector client connects.
https://bugs.webkit.org/show_bug.cgi?id=132891
Reviewed by Joseph Pecoraro.
- page/PageDebuggable.cpp:
(WebCore::PageDebuggable::PageDebuggable): Initialize m_forcedDeveloperExtrasEnabled to false.
(WebCore::PageDebuggable::connect): Set m_forcedDeveloperExtrasEnabled if the setting is changed.
(WebCore::PageDebuggable::disconnect): Switch developerExtrasEnabled back to false
if m_forcedDeveloperExtrasEnabled is true.
- page/PageDebuggable.h: Added m_forcedDeveloperExtrasEnabled.
- 5:13 PM Changeset in webkit [168763] by
-
- 9 edits in trunk/Source
REGRESSION (topContentInset): Searching through Facebook Messenger's chat causes
scrolling in News Feed
https://bugs.webkit.org/show_bug.cgi?id=132889
-and corresponding-
<rdar://problem/16715716>
Reviewed by Simon Fraser.
Source/WebCore:
First of all, scrollOffsetRelativeToDocument() was very poorly named. This patch
re-names it to the much more accurate documentScrollOffsetRelativeToViewOrigin().
Re-naming it makes it clear that ONE call site was not getting the right offset.
That call site does not want to know the document’s position relative to the view
origin, but rather it wants to know the Document’s position relative to the
scrolling origin.
Export new name.
- WebCore.exp.in:
Use newly re-named documentScrollPositionRelativeToViewOrigin().
- page/FrameView.cpp:
(WebCore::FrameView::convertToRenderer):
- platform/ScrollView.cpp:
(WebCore::ScrollView::documentScrollOffsetRelativeToViewOrigin):
(WebCore::ScrollView::documentScrollPositionRelativeToViewOrigin):
(WebCore::ScrollView::documentScrollOffsetRelativeToScrollableAreaOrigin):
(WebCore::ScrollView::rootViewToContents):
(WebCore::ScrollView::windowToContents):
(WebCore::ScrollView::scrollOffsetRelativeToDocument): Deleted.
(WebCore::ScrollView::scrollPositionRelativeToDocument): Deleted.
- platform/ScrollView.h:
THIS is the spot that needs the new function,
documentScrollOffsetRelativeToScrollableAreaOrigin()()
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
Source/WebKit2:
Re-name scrollOffsetRelativeToDocument() to
documentScrollPositionRelativeToViewOrigin().
- WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::rectsForTextMatches):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):
- 5:10 PM Changeset in webkit [168762] by
-
- 1 copy in tags/Safari-537.75.15
New Tag.
- 5:09 PM Changeset in webkit [168761] by
-
- 8 edits in trunk/Source
[iOS] Page scale update messages for media controls should only fire at the end of zooming
https://bugs.webkit.org/show_bug.cgi?id=132857
<rdar://problem/16631009>
Reviewed by Simon Fraser.
As the user was zooming, the media controls that responded
to the page scale (and resized themselves) would do so
slightly out of sync with the screen refreshes, and it looked
Source/WebCore:
terrible. They really only need to get told at the end
of the zoom that they need to relayout.
Allow setPageScaleFactor to accept another parameter
that indicates if the change is stable. That way, changes
during a user triggers zoom gesture can be ignored for
media controls.
- WebCore.exp.in: Page::setPageScaleFactor takes a new parameter.
- dom/Document.cpp:
(WebCore::Document::pageScaleFactorChangedAndStable): Renamed from pageScaleFactorChanged.
(WebCore::Document::pageScaleFactorChanged): Deleted.
- dom/Document.h:
- page/Page.cpp:
(WebCore::Page::setPageScaleFactor): Accepts a new inStableState parameter,
and tells the main frame that the scale factor has changed if it's stable.
- page/Page.h:
Source/WebKit2:
terrible.
We already know if a pageScale change is happening inside
a gesture using the inStableState property of the visibleContentRectUpdateInfo.
Simply pass this along to WebCore::Page.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::updateVisibleContentRects): Pass inStableState onto the
WebCore::Page. Note that we have to send this message even if the
scale has not changed, since the last changing update might not have
been stable.
- 5:08 PM Changeset in webkit [168760] by
-
- 1 delete in tags/Safari-537.75.15
Remove trunk-based tag
- 5:07 PM Changeset in webkit [168759] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168445.
- 5:00 PM Changeset in webkit [168758] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix after r168755.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
- 4:59 PM Changeset in webkit [168757] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168654.
- 4:56 PM Changeset in webkit [168756] by
-
- 26 edits1 copy in branches/safari-538.34-branch/Source/JavaScriptCore
Merged r168443.
- 4:54 PM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 4:47 PM Changeset in webkit [168755] by
-
- 6 edits in trunk/Source/WebCore
[Mac] hasVideo should return true when video is ready to display
https://bugs.webkit.org/show_bug.cgi?id=132885
Reviewed by Jer Noble.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
(WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack): Don't change the
enabled state of the AVPlayerItemTrack during setup.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize
m_cachedIsReadyForDisplay.
(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Remove "enabled" KVO observers.
(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer): Observe "readyForDisplay"
change notifications.
(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyVideoLayer): Remove for "readyForDisplay"
observer.
(WebCore::MediaPlayerPrivateAVFoundationObjC::hasAvailableVideoFrame): Return cached readyForDisplay
state instead of polling every time.
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Call setHasVideo(true) if the
player layer is ready for display.
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateAudioTracks): Update logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateVideoTracks): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::firstFrameAvailableDidChange): Cache readyForDisplay
state, call tracksChanged() if we haven't seen a video track yet.
(WebCore::MediaPlayerPrivateAVFoundationObjC::trackEnabledDidChange): New.
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive): Correct logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksDidChange): Remove old "enabled" listeners
before release tracks, add new ones to new tracks.
(WebCore::assetTrackMetadataKeyNames): Add "enabled" to the list of properties we require to
be loaded before announcing that metadata has loaded.
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Observe
"readyForDisplay" and "enabled".
- platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:
(WebCore::VideoTrackPrivateAVFObjC::resetPropertiesFromTrack): Don't change the
enabled state of the AVPlayerItemTrack during setup.
- 4:41 PM Changeset in webkit [168754] by
-
- 15 edits2 copies in branches/safari-538.34-branch/Source
Merged r168442.
- 4:38 PM Changeset in webkit [168753] by
-
- 9 edits in branches/safari-538.34-branch/Source
Merged r168439.
- 4:34 PM Changeset in webkit [168752] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit/mac
Merged r168438.
- 4:30 PM Changeset in webkit [168751] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168441.
- 4:25 PM Changeset in webkit [168750] by
-
- 7 edits4 adds in trunk
Text decorations do not contribute to visual overflow https://bugs.webkit.org/show_bug.cgi?id=132773
Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-05-13
Reviewed by Darin Adler.
Source/WebCore:
Tests: fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect.html
- rendering/InlineTextBox.cpp:
(WebCore::textDecorationStrokeThickness): Refactor into a common function
(WebCore::wavyOffsetFromDecoration): Ditto
(WebCore::InlineTextBox::extendVerticalVisualOverflowForDecorations): Given
vertical overflow bounds, possibly extend those to include location of
decorations.
(WebCore::InlineTextBox::paintDecoration): Use refactored functions.
- rendering/InlineTextBox.h: Function signature
- rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun): Call extendVerticalVisualOverflowForDecorations()
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeAffectsVisualOverflow): Inspects shadows and text decorations
(WebCore::RenderStyle::changeRequiresLayout): Calls changeAffectsVisualOverflow()
(WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline): Moved code from here
to changeAffectsVisualOverflow().
- rendering/style/RenderStyle.h: Function signature
LayoutTests:
This test makes sure that repaint rects are extended to include text decorations that may
lie outside of the text layout rects. It compares text with an underline to text that has
had underline applied to it in a timer.
- fast/css3-text/css3-text-decoration/repaint/resources/Litherum.svg: Added. This font has a
descent of 0 (so it will not intersect underlines)
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect-expected.html: Added.
Apply the underline without any timeout
- fast/css3-text/css3-text-decoration/repaint/underline-outside-of-layout-rect.html: Added.
Apply the underline with a timeout.
- 4:06 PM Changeset in webkit [168749] by
-
- 5 edits in branches/safari-537.75-branch/Source
Versioning.
- 3:56 PM Changeset in webkit [168748] by
-
- 1 copy in tags/Safari-537.75.16
New Tag.
- 3:47 PM Changeset in webkit [168747] by
-
- 6 edits in trunk/Source/WebKit2
[iOS][WK2] When the secondary UIScrollView delegates respond to callbacks, delay the state change until both delegates have finished
https://bugs.webkit.org/show_bug.cgi?id=132849
<rdar://problem/16863716>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-13
Reviewed by Anders Carlsson.
When there are two delegates responding to UIScrollView changes, there was often an intermediate invalid
state forwarded to the UIProcess.
For example, on scroll, WKWebView would update the state based on the current obscured insets in response to
delegate callbacks.
After that update, Safari would modify the insets, thus updating the state again.
The first state changed by WKWebView is incomplete, and should never have been set.
This patch works around the issue by delaying visible update rect in those cases.
When the two delegates of WKScrollView respond to the same selector, WKScrollView invokes
[UIWebView _willInvokeUIScrollViewDelegateCallback] on entry, and
[UIWebView _didInvokeUIScrollViewDelegateCallback] on exit.
Between those two calls, WKWebView does not forward the new UI state to the WebProcess.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _willInvokeUIScrollViewDelegateCallback]):
(-[WKWebView _didInvokeUIScrollViewDelegateCallback]):
(-[WKWebView _updateVisibleContentRects]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/ios/WKViewIOS.mm:
(-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
- UIProcess/ios/WKScrollView.h:
- UIProcess/ios/WKScrollView.mm:
(-[WKScrollViewDelegateForwarder initWithInternalDelegate:externalDelegate:]):
(-[WKScrollViewDelegateForwarder forwardInvocation:]):
(-[WKScrollView setInternalDelegate:]):
- 3:34 PM Changeset in webkit [168746] by
-
- 3 edits in trunk/Source/WebKit2
[iOS][WK2] Remove the _extendedBackgroundExclusionInsets SPI
https://bugs.webkit.org/show_bug.cgi?id=132848
<rdar://problem/16875093>
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-13
Reviewed by Darin Adler.
The SPI is no longer needed by Safari.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _updateScrollViewBackground]):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _setObscuredInsets:]):
(-[WKWebView _endAnimatedResize]):
(updateTopAndBottomExtendedBackgroundExclusionIfNecessary): Deleted.
(-[WKWebView _setExtendedBackgroundExclusionInsets:]): Deleted.
(-[WKWebView _extendedBackgroundExclusionInsets]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 3:26 PM Changeset in webkit [168745] by
-
- 2 edits in trunk/Source/WebKit2
AX: Hit testing not accounting for top content inset.
https://bugs.webkit.org/show_bug.cgi?id=132876
Reviewed by Chris Fleizach.
Updated accessibilityHitTest: to account for top content inset when converting from screen coords to WebKit coords.
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:
(-[WKAccessibilityWebPageObject accessibilityHitTest:]):
- 3:13 PM Changeset in webkit [168744] by
-
- 12 edits in trunk/Source
REGRESSION (WebKit2): Zooming to text field leaves it partially hidden by the form assistant.
https://bugs.webkit.org/show_bug.cgi?id=132879
<rdar://problem/16318049>
Reviewed by Benjamin Poulain.
Source/WebCore:
Adding some exports. The fix to setScrollPosition is to avoid clamping the scroll
position when using delegate scrolling.
- WebCore.exp.in:
- platform/ScrollView.cpp:
(WebCore::ScrollView::setScrollPosition):
Source/WebKit2:
Adds the heuristics to zoom and scroll to ensure the element being focused
is fully visible and its text readable.
- Shared/AssistedNodeInformation.cpp:
(WebKit::AssistedNodeInformation::encode):
(WebKit::AssistedNodeInformation::decode):
- Shared/AssistedNodeInformation.h:
(WebKit::AssistedNodeInformation::AssistedNodeInformation):
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _zoomToFocusRect:WebCore::selectionRect:WebCore::fontSize:minimumScale:maximumScale:allowUserScaling:forceScroll:]):
(-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/ios/WKContentView.h:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView _zoomToFocusRect:selectionRect:fontSize:minimumScale:maximumScale:allowUserScaling:forceScroll:]):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _displayFormNodeInputView]):
(-[WKContentView _startAssistingNode:userIsInteracting:userObject:]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getAssistedNodeInformation):
- 2:51 PM Changeset in webkit [168743] by
-
- 2 edits in trunk/LayoutTests
platform/mac/plugins/testplugin-onnew-onpaint.html failing after r168668
<https://bugs.webkit.org/show_bug.cgi?id=132877>
Reviewed by Brent Fulgham.
- platform/mac/plugins/testplugin-onnew-onpaint.html:
Make the test wait until plug-ins have loaded before finishing.
- 2:45 PM Changeset in webkit [168742] by
-
- 2 edits in trunk/Source/WebCore
Followup to: Update positioning/drawing of the image controls button.
<rdar://problem/16885077> and https://bugs.webkit.org/show_bug.cgi?id=132883
Reviewed by Tim Horton.
Cleared up the actual intent behind review feedback on the original patch.
- html/shadow/mac/ImageControlsButtonElementMac.cpp:
(WebCore::ImageControlsButtonElementMac::maybeCreate):
- 2:38 PM Changeset in webkit [168741] by
-
- 10 edits in trunk/Websites/webkit.org
Updated the files to have the right width.
- blog-files/ftl-jit/dfg_pipeline.png:
- blog-files/ftl-jit/four_tier_performance.png:
- blog-files/ftl-jit/ftl_asm_bench_performance.png:
- blog-files/ftl-jit/ftl_pipeline.png:
- blog-files/ftl-jit/ftl_timeline.png:
- blog-files/ftl-jit/polymorphic_inlining_performance.png:
- blog-files/ftl-jit/polyvariance.png:
- blog-files/ftl-jit/polyvariant_devirtualization_performance.png:
- blog-files/ftl-jit/three_tier_performance.png:
- 2:34 PM Changeset in webkit [168740] by
-
- 2 edits in trunk/Source/WebKit2
Fix the iOS Simulator build.
- UIProcess/mac/ViewSnapshotStore.h:
- 2:27 PM Changeset in webkit [168739] by
-
- 2 edits1 add1 delete in trunk/Source/WebKit2
Speculative build fix for iOS.
- UIProcess/ios/WebMemoryPressureHandlerIOS.cpp: Removed.
- UIProcess/ios/WebMemoryPressureHandlerIOS.mm: Added.
(WebKit::WebMemoryPressureHandler::shared):
(WebKit::WebMemoryPressureHandler::WebMemoryPressureHandler):
- WebKit2.xcodeproj/project.pbxproj:
Make WebMemoryPressureHandlerIOS Obj-C.
- 2:21 PM Changeset in webkit [168738] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168550.
- 2:18 PM Changeset in webkit [168737] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168569.
- 2:17 PM Changeset in webkit [168736] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168552.
- 2:14 PM Changeset in webkit [168735] by
-
- 2 edits in branches/safari-538.34-branch/Tools
Merged r168546.
- 2:12 PM Changeset in webkit [168734] by
-
- 1 edit in branches/safari-538.34-branch/Source/WebKit2/UIProcess/API/Cocoa/WKNavigationResponsePrivate.h
Rollout previous branch specific fix.
- 2:11 PM Changeset in webkit [168733] by
-
- 1 edit12 adds in trunk/Websites/webkit.org
Add some illustrations about how JSC works.
- blog-files/ftl-jit: Added.
- blog-files/ftl-jit/dfg_pipeline.png: Added.
- blog-files/ftl-jit/four_tier_performance.png: Added.
- blog-files/ftl-jit/ftl_asm_bench_performance.png: Added.
- blog-files/ftl-jit/ftl_pipeline.png: Added.
- blog-files/ftl-jit/ftl_timeline.png: Added.
- blog-files/ftl-jit/object_model.png: Added.
- blog-files/ftl-jit/polymorphic_inlining_performance.png: Added.
- blog-files/ftl-jit/polyvariance.png: Added.
- blog-files/ftl-jit/polyvariant_devirtualization_performance.png: Added.
- blog-files/ftl-jit/three_tier_performance.png: Added.
- blog-files/ftl-jit/three_tiers.png: Added.
- 2:08 PM Changeset in webkit [168732] by
-
- 3 edits in trunk/PerformanceTests
DYEBench should run 20 iterations in browser
https://bugs.webkit.org/show_bug.cgi?id=132795
Reviewed by Gavin Barraclough.
Right now, run-perf-tests runs BYEBench 4 times with different instances of DRT/WTR to get
a more stable time and account for differences in the runtime environment, particularly,
ASLR (Address Space Layout Randomization).
While we can't account for the latter effect when the benchmark is ran inside a browser,
we can at least run 20 iterations to get a more stable (but perhaps biased by ALSR) number.
While the sample size of 20 is statistically unsound to compute the arithmetic mean from,
it's MUCH better than the current sample size of 5.
- DoYouEvenBench/Full.html:
(benchmarkClient.iterationCount): Set the default iteration count to 20.
(startTest): Use benchmarkClient.iterationCount as the iteration count.
- DoYouEvenBench/resources/benchmark-report.js:
(benchmarkClient.iterationCount): Continue to use the old iteration count of 5 when ran
inside run-perf-tests.
- 2:07 PM Changeset in webkit [168731] by
-
- 2 edits in branches/safari-538.34-branch/Tools
Merged r168545.
- 2:04 PM Changeset in webkit [168730] by
-
- 236 edits9 copies1 delete in branches/safari-538.34-branch
Merged r168541.
- 1:57 PM Changeset in webkit [168729] by
-
- 14 edits in trunk/Source/JavaScriptCore
[Win] Enum type with value zero is compatible with void*, potential cause of crashes.
https://bugs.webkit.org/show_bug.cgi?id=132772
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-05-13
Reviewed by Geoffrey Garen.
Using the MSVC compiler, an instance of an enum type with value zero, is compatible with void* (see bug 132683 for a code example).
This has caused crashes on Windows on two occasions (bug 132683, and bug 121001).
This patch tries to prevent these type of crashes by using a type with explicit constructors instead of void*.
The void* parameter in the loadDouble and storeDouble methods are replaced with TrustedImmPtr.
- assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::loadDouble):
(JSC::MacroAssemblerARM::storeDouble):
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::loadDouble):
(JSC::MacroAssemblerARM64::storeDouble):
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::loadDouble):
(JSC::MacroAssemblerARMv7::storeDouble):
- assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::loadDouble):
(JSC::MacroAssemblerMIPS::storeDouble):
- assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::loadDouble):
(JSC::MacroAssemblerSH4::storeDouble):
- assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::storeDouble):
- assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::absDouble):
(JSC::MacroAssemblerX86Common::negateDouble):
(JSC::MacroAssemblerX86Common::loadDouble):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::compileClampDoubleToByte):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::compile):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::purifyNaN):
- jit/JITInlines.h:
(JSC::JIT::emitLoadDouble):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitFloatTypedArrayGetByVal):
- jit/ThunkGenerators.cpp:
(JSC::floorThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::powThunkGenerator):
- 1:43 PM Changeset in webkit [168728] by
-
- 6 edits in trunk/Source/WebCore
Update positioning/drawing of the image controls button.
<rdar://problem/16885077> and https://bugs.webkit.org/show_bug.cgi?id=132883
Reviewed by Tim Horton.
- html/shadow/mac/ImageControlsButtonElementMac.cpp:
(WebCore::ImageControlsButtonElementMac::maybeCreate): Add inline style for top/right
positioning based on the metrics from the render theme.
- html/shadow/mac/imageControlsMac.css:
(.x-webkit-image-controls-button): Can’t hard code any positioning.
- rendering/RenderTheme.h:
(WebCore::RenderTheme::imageControlsButtonPositionOffset):
- rendering/RenderThemeMac.h:
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::servicesRolloverButtonCell):
(WebCore::RenderThemeMac::imageControlsButtonPositionOffset):
- 12:32 PM Changeset in webkit [168727] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4
Merge 165473 - [GTK][CMAKE] Too verbose build output
https://bugs.webkit.org/show_bug.cgi?id=130076
Reviewed by Carlos Garcia Campos.
.:
- Source/cmake/OptionsGTK.cmake: Generate a script which does the actual build. This
works around an issue where cmake --build doesn't support ninja's pretty printing.
Tools:
Instead of building with cmake --build which isn't smart about pretty printing and
colors, we build with a script which calls the proper build command.
- Scripts/webkitdirs.pm:
(buildCMakeGeneratedProject): For GTK+ call the script that we generate during
the CMake configuration pass.
Conflicts:
ChangeLog
Tools/ChangeLog
- 12:32 PM Changeset in webkit [168726] by
-
- 8 edits in trunk/Source
[iOS WK2] background-attachment:fixed behaves very poorly
https://bugs.webkit.org/show_bug.cgi?id=132881
<rdar://problem/16789526>
Reviewed by Beth Dakin.
Source/WebCore:
Remove the old ENABLE_FAST_MOBILE_SCROLLING code, and add a setting that
controls whether fixed backgrounds paint relative to the document, which
is enabled for iOS (WK1 and WK2). This setting is consulted when we repaint
fixed backgrounds on scrolling, when we paint them, and when we decide to make
a layer for fixed backgrounds.
- page/Settings.cpp:
- page/Settings.in:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
- rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange):
(WebCore::RenderElement::willBeRemovedFromTree):
(WebCore::shouldRepaintFixedBackgroundsOnScroll): Deleted.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::needsFixedRootBackgroundLayer):
Source/WTF:
Remove ENABLE_FAST_MOBILE_SCROLLING. Ports can use the fixedBackgroundsPaintRelativeToDocument
setting now.
- wtf/FeatureDefines.h:
- 12:32 PM Changeset in webkit [168725] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/Scripts/webkitdirs.pm
Merge 165457 - [GTK][CMake] --update-gtk has no effect
https://bugs.webkit.org/show_bug.cgi?id=130088
Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-03-11
Reviewed by Philippe Normand.
- Scripts/webkitdirs.pm:
(buildCMakeProjectOrExit): call update-webkitgtk-libs if --update-gtk has been passed
as an argument.
Conflicts:
Tools/ChangeLog
- 12:32 PM Changeset in webkit [168724] by
-
- 2 edits in trunk/Source/WebKit2
Another follow-up build fix.
- Shared/API/Cocoa/WKFoundation.h:
- 12:32 PM Changeset in webkit [168723] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4/Tools
Merge 165452 - [GTK] The jhbuild environment should set CMAKE_PREFIX_PATH and CMAKE_LIBRARY_PATH
https://bugs.webkit.org/show_bug.cgi?id=130064
Reviewed by Philippe Normand.
- efl/jhbuildrc: Remove duplicated code.
- gtk/jhbuildrc: Remove duplicated code.
- jhbuild/jhbuildrc_common.py:
(init): Move duplicated code from jhbuildrc's and extend setting CMake environment variables to
GTK+. We always set the CMAKE_LIBRARY_PATH, which should be harmless for EFL 32-bit systems.
and is apparently necessary for GTK+.
Conflicts:
Tools/ChangeLog
- 12:32 PM Changeset in webkit [168722] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source
Merge 165437 - [GTK][CMake] Add HARFBUZZ_INCLUDE_DIRS to WebKit and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=130070
Reviewed by Martin Robinson.
Source/WebKit:
- PlatformGTK.cmake:
Source/WebKit2:
- PlatformGTK.cmake:
Conflicts:
Source/WebKit/ChangeLog
Source/WebKit2/ChangeLog
- 12:31 PM Changeset in webkit [168721] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/PlatformGTK.cmake
Merge 165386 - [GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with CMake
https://bugs.webkit.org/show_bug.cgi?id=130016
Reviewed by Carlos Garcia Campos.
- Source/PlatformGTK.cmake: Add two gtkdoc targets, one which builds HTML and one which
doesn't. Add the non-HTML version to the default target, but not the HTML version. The
HTML version will still run when building the distribution tarball.
Conflicts:
ChangeLog
- 12:31 PM Changeset in webkit [168720] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4/Source
Merge 165378 - [GTK] [CMake] Clean up library linking
https://bugs.webkit.org/show_bug.cgi?id=129782
Reviewed by Philippe Normand.
.:
- Source/cmake/OptionsGTK.cmake: Add a macro to wrap all libraries in a list with --whole-archive
so that unused symbols are not dropped. This is useful when building up shared libraries
from convenience libraries.
Source/WebCore:
- PlatformGTK.cmake: Some files are duplicated on the source list of two convenience
libraries. Ensure that they are all compiled into WebCore instead of WebCorePlatformGTK.
Some simply need to be moved to WebCore from WebCorePlatformGTK. Don't try to link
WebCorePlatformGTK against WebCore -- convenience libraries should be able to save
their symbol resolution for the final linking step.
Source/WebKit:
- PlatformGTK.cmake: Use the new macro.
Source/WebKit2:
- PlatformGTK.cmake: Use the new macro.
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
Source/WebKit/ChangeLog
Source/WebKit2/ChangeLog
- 12:31 PM Changeset in webkit [168719] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/Scripts/webkitdirs.pm
Merge 165263 - [CMake] [GTK] Build with ninja when it is available
https://bugs.webkit.org/show_bug.cgi?id=129805
Reviewed by Philippe Normand.
- Scripts/webkitdirs.pm:
(canUseNinja): Added this helper which tries to execute Ninja, in an effort to determine
if it's available on the system.
(cmakeGeneratedBuildfile): Return the path to the generated build file. Only Unix support ATM.
(generateBuildSystemFromCMakeProject): For GTK+ compile with Ninja when possible.
Conflicts:
Tools/ChangeLog
- 12:31 PM Changeset in webkit [168718] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/CMakeLists.txt
Merge 165192 - [GTK][CMake] Fix the GTK+ CMake build
https://bugs.webkit.org/show_bug.cgi?id=129801
Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-03-06
Reviewed by Martin Robinson.
Include missing files for CMake build
- CMakeLists.txt: Add a missing references to DOMURLMediaStream
Conflicts:
Source/WebCore/ChangeLog
- 12:31 PM Changeset in webkit [168717] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/gtk/make-dist.py
Merge 165174 - [GTK][CMake] Tarball is created with wrong tarball paths
https://bugs.webkit.org/show_bug.cgi?id=129496
Reviewed by Daniel Bates.
- gtk/make-dist.py:
(Manifest.init): I inadvertently inverted the logic of these checks when
landing the original patch with some suggestions from the reviewer. With the
checks corrected, the tarball path is constructed properly.
Conflicts:
Tools/ChangeLog
- 12:30 PM Changeset in webkit [168716] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsCommon.cmake
Merge 165173 - [CMake] Ninja generator builds fail with "Argument list too long"
https://bugs.webkit.org/show_bug.cgi?id=129771
Reviewed by Daniel Bates.
- Source/cmake/OptionsCommon.cmake: Work around a bug in the Ninja CMake generator,
by forcing the use of response files.
Conflicts:
ChangeLog
- 12:30 PM Changeset in webkit [168715] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake
Merge 165166 - [GTK][CMake] The GObject DOM bindings should always be built
https://bugs.webkit.org/show_bug.cgi?id=127963
Reviewed by Ryosuke Niwa.
- PlatformGTK.cmake: Make compilation of the WebKitGTK+ GObject DOM bindings
unconditional, instead of conditional on the WebKit2 build.
Conflicts:
Source/WebCore/ChangeLog
Source/WebCore/PlatformGTK.cmake
- 12:30 PM Changeset in webkit [168714] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4/Source/cmake
Merge 165149 - [CMake] Use thin archives if building on Linux for non-shared-core debug builds
https://bugs.webkit.org/show_bug.cgi?id=108330
Reviewed by Martin Robinson.
In order to get non-shared debug builds, this patch applied T option for
thin archives to the flags passed to ar when cmake based ports build on linux.
In addition, applied u option which avoids adding a file twice.
- Source/cmake/OptionsCommon.cmake: Moved archive options from OptionsGTK.cmake.
- Source/cmake/OptionsEfl.cmake:
Removed error messages for non-shared-core debug builds.
- Source/cmake/OptionsGTK.cmake: Moved archive options to OptionsCommon.cmake.
Conflicts:
ChangeLog
Source/cmake/OptionsCommon.cmake
- 12:30 PM Changeset in webkit [168713] by
-
- 6 edits1 delete in releases/WebKitGTK/webkit-2.4
Merge 165114 - [GTK][CMake] Generate documentation for the DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=126211
Reviewed by Carlos Garcia Campos.
Source/WebCore:
- PlatformGTK.cmake: Add some files to the GObjectDOMBindings build, so that the
doc generation succeeds. Have the GObjectDOMBindings_INSTALLED_HEADERS variable contain
all installed headers and use another variable for GIR generation. Create the configuration
file for the gtkdoc generation.
Source/WebKit:
- PlatformGTK.cmake: The list of headers for GIR generation has a better name
now.
Source/WebKit2:
- PlatformGTK.cmake: The list of headers for GIR generation has a better name now.
Tools:
- gtk/GNUmakefile.am: No longer generation sections and SGML files in the makefile.
- gtk/generate-gtkdoc: Call the code from webkitdom.py to generate sections and SGML files.
- gtk/generate-webkitdom-doc-files: Removed.
- gtk/webkitdom.py: Moved WebKit GObject DOM bindings doc generation code here, so
that it can be called by generate-gtkdoc.
Conflicts:
Source/WebCore/ChangeLog
Source/WebKit/ChangeLog
Source/WebKit2/ChangeLog
Tools/ChangeLog
- 12:29 PM Changeset in webkit [168712] by
-
- 6 edits2 adds2 deletes in releases/WebKitGTK/webkit-2.4
Merge 165060 - [GTK] Simplify the GObject DOM bindings API break check into one step
https://bugs.webkit.org/show_bug.cgi?id=129571
Reviewed by Carlos Garcia Campos.
.:
- Source/PlatformGTK.cmake: We don't need to run the API break check before gtkdoc generation.
Add the check to 'make check.'
Source/WebCore:
- bindings/gobject/GNUmakefile.am: We no longer generate the webkitdom.symbols file in the
DerivedSources directory. All the logic is handled internally in the script now.
- bindings/scripts/gobject-run-api-break-test: Removed.
Tools:
- GNUmakefile.am: Add the API break check to 'make check.'
- gtk/check-for-webkitdom-api-breaks: Added. A combination of the two removed scripts.
- gtk/check-gdom-symbols: Removed.
- gtk/webkitdom.py: Added.
(header_name_list_from_gtkdoc_config_file): Gets the names of all headers from the gtkdoc config file.
(get_all_webkitdom_symbol_files): Find the symbol files from the names.
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
Tools/ChangeLog
- 12:29 PM Changeset in webkit [168711] by
-
- 5 edits in releases/WebKitGTK/webkit-2.4/Tools
Merge 164739 - [GTK] Reduplicate common.top_level_path in scripts
https://bugs.webkit.org/show_bug.cgi?id=129291
Reviewed by Philippe Normand.
Duplicate common.top_level_path and avoid polluting many scripts with awkward system
path manipulation and weird dependencies on the jhbuild infrastructure.
- Scripts/run-gtk-tests: Use common again.
(TestRunner._setup_testing_environment): Ditto.
- gtk/check-gdom-symbols: Ditto.
- gtk/common.py:
(top_level_path): Re-add top_level_path..
(get_build_path): Use the builtin top_level_path again.
- gtk/find-make-dist-errors: Use common again.
(get_missing_headers): Ditto.
- gtk/generate-inspector-gresource-manifest.py: Ditto.
Conflicts:
Tools/ChangeLog
- 12:29 PM Changeset in webkit [168710] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4
Merge 164704 - [GTK] generate-gtkdoc can fail with WebKit1 or WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=129319
Patch by Martin Robinson <mrobinson@igalia.com> on 2014-02-26
Reviewed by Carlos Garcia Campos.
Source/WebKit/gtk:
- GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.
Source/WebKit2:
- GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.
Tools:
- gtk/generate-gtkdoc:
(get_generator_for_config): Properly handle the situation where the pkgconfig file is missing.
Conflicts:
Source/WebKit/gtk/ChangeLog
Source/WebKit2/ChangeLog
Tools/ChangeLog
- 12:29 PM Changeset in webkit [168709] by
-
- 10 edits in releases/WebKitGTK/webkit-2.4
Merge 164632 - [GTK] generate-gtkdoc should not generate documentation for source files for unbuilt source files
https://bugs.webkit.org/show_bug.cgi?id=128417
Reviewed by Carlos Garcia Campos.
.:
- Source/cmake/OptionsGTK.cmake: Define the paths to the pkgconfig files here, so that they
may one day be used in the webkitdom config file generation.
Source/WebCore:
- bindings/gobject/GNUmakefile.am: Generate a config file for webkitdom documentation generation.
Source/WebKit:
- PlatformGTK.cmake: Correct the definition of WebKitGTK_ENUM_GENERATION_HEADERS and generate
a gtkdoc-webkitgtk.cfg file to be used by generate-gtkdoc.
Source/WebKit/gtk:
- GNUmakefile.am: Generate a config file for generate-gtkdoc.
Source/WebKit2:
- GNUmakefile.am: Generate a config file for generate-gtkdoc.
- PlatformGTK.cmake: Ditto.
Tools:
- gtk/GNUmakefile.am: Make the documentation process depend on the configuration files.
- gtk/generate-gtkdoc: Switch from using hard-coded configurations to reading them from
a makefile. This allows accepting a header list from the build system, which can be used
to dynamically build a list of ignored files. We can ignore any source file that doesn't
have a corresponding header file on the header list.
- gtk/gtkdoc.py: Now accept a headers parameter, which can be used instead of passing just
source directories to gtkdoc-scan.
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
Source/WebKit/ChangeLog
Source/WebKit/gtk/ChangeLog
Source/WebKit2/ChangeLog
Tools/ChangeLog
- 12:28 PM Changeset in webkit [168708] by
-
- 8 edits1 add1 delete in releases/WebKitGTK/webkit-2.4/Tools
Merge 164585 - Extract common parts from jhbuildrc files.
https://bugs.webkit.org/show_bug.cgi?id=125986
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Csaba Osztrogonác.
Co-authored with Peter Szanka <h868064@stud.u-szeged.hu>.
- Scripts/run-gtk-tests:
(TestRunner._setup_testing_environment):
- efl/common.py: Removed.
- efl/jhbuildrc:
- gtk/check-gdom-symbols:
- gtk/common.py:
(binary_build_path):
(get_build_path):
- gtk/find-make-dist-errors:
(get_missing_headers):
- gtk/generate-gtkdoc:
(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):
- gtk/generate-inspector-gresource-manifest.py:
- gtk/jhbuildrc:
- jhbuild/jhbuildrc_common.py: Added.
(script_path):
(top_level_path):
(init):
Conflicts:
Tools/ChangeLog
- 12:28 PM Changeset in webkit [168707] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/gtk/generate-gtkdoc
Merge 164560 - [GTK] generate-gtkdoc should use argparse
https://bugs.webkit.org/show_bug.cgi?id=128418
Reviewed by Carlos Garcia Campos.
- gtk/generate-gtkdoc: Get all arguments from argparse, pass then as parameters
to all functions, and guard the main routine with a name == main check.
Conflicts:
Tools/ChangeLog
Tools/Scripts/webkitdirs.pm
- 12:28 PM Changeset in webkit [168706] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/Scripts/webkitdirs.pm
Merge 165111 - [GTK][CMake] build-webkit should rerun cmake if the Makefile is missing
https://bugs.webkit.org/show_bug.cgi?id=129380
Reviewed by Philippe Normand.
- Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject): Check for the existence of the Makefile before
skipping CMake execution.
Conflicts:
Tools/ChangeLog
- 12:27 PM Changeset in webkit [168705] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake
Merge 165058 - [GTK][CMake] ENABLE_NAVIGATOR_CONTENT_UTILS is mistakenly enabled for the CMake build
https://bugs.webkit.org/show_bug.cgi?id=129502
Reviewed by Carlos Garcia Campos.
- Source/cmake/OptionsGTK.cmake: Disable the option for GTK+.
Conflicts:
ChangeLog
- 12:27 PM Changeset in webkit [168704] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source
Merge 164979 - [cmake] *Names.cpp file should be regenerated after touching StaticString.pm
https://bugs.webkit.org/show_bug.cgi?id=129031
Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-03-03
Reviewed by Csaba Osztrogonác.
.:
- Source/cmake/WebKitMacros.cmake: Added a call for make_names.pm dependencies in GENERATE_FONT_NAMES and GENERATE_DOM_NAMES macros.
Source/WebCore:
- CMakeLists.txt: Added make_names.pl dependencies: bindings/scripts/Hasher.pm and bindings/scripts/StaticString.pm
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
- 12:27 PM Changeset in webkit [168703] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/CMakeLists.txt
Merge 164586 - [CMake] Get rid of "FIXME: The Blackberry port ..." from WebCore/CmakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=129152
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Gyuyoung Kim.
- CMakeLists.txt:
Conflicts:
Source/WebCore/ChangeLog
- 12:27 PM Changeset in webkit [168702] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Tools/DumpRenderTree/PlatformGTK.cmake
Merge 164559 - [GTK][CMake] Many plugin tests fail when running WebKit1 layout tests
https://bugs.webkit.org/show_bug.cgi?id=129191
Reviewed by Anders Carlsson.
- DumpRenderTree/PlatformGTK.cmake: Properly specify the library build directory
for the GTK+ DumpRenderTree build. We could manually construct this path, but the
name of the directory is "lib" and not "libs". Instead we should use the CMake
variable specifically assigned to this task.
Conflicts:
Tools/ChangeLog
- 12:27 PM Changeset in webkit [168701] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake
Merge 164257 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434
Reviewed by Anders Carlsson.
- Source/cmake/OptionsGTK.cmake: Add -fno-omit-frame-pointer to the GTK+ CMake
port as well as -fno-tree-dce, like it is used in the autotools build.
Conflicts:
ChangeLog
- 12:27 PM Changeset in webkit [168700] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsCommon.cmake
Merge 164090 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434
Extend a fix for EFL to all ports that use GCC. Also include further fixes
that were applied only to the autotools build.
Reviewed by Gyuyoung Kim.
- Source/cmake/OptionsCommon.cmake: Add -fno-omit-frame-pointer to all ports as well
as -fno-tree-dce, which is necessary for GTK+.
- Source/cmake/OptionsEfl.cmake: The GCC flag additions are now in the common options file.
Conflicts:
ChangeLog
- 12:26 PM Changeset in webkit [168699] by
-
- 4 edits1 add in releases/WebKitGTK/webkit-2.4
Merge 164076 - [GTK][CMake] Generate GObject DOM bindings .symbols files
https://bugs.webkit.org/show_bug.cgi?id=126210
Reviewed by Martin Robinson.
.:
- Source/PlatformGTK.cmake: add checking DOM bindings API as a dependency
for documentation generation.
Source/WebCore:
No new tests. Build change only.
- CMakeLists.txt: list Quota module files and IDLs even if the feature
is disabled, for GTK, since we rely on that for our DOM bindings.
- PlatformGTK.cmake: add a new target to check for DOM symbols API by
running the new python script.
- bindings/gobject/GNUmakefile.am: call the new python script instead
of using a custom rule.
Tools:
- gtk/check-gdom-symbols: Added. Checks symbols compatibility.
(should_update_symbols_file):
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
Tools/ChangeLog
- 12:26 PM Changeset in webkit [168698] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/CMakeLists.txt
Merge 163379 - [CMAKE] Remove workaround for GCC 4.6
https://bugs.webkit.org/show_bug.cgi?id=128176
Reviewed by Csaba Osztrogonác.
Since r162126, WebKit requires at least 4.7.
- CMakeLists.txt:
Conflicts:
Source/WebCore/ChangeLog
- 12:26 PM Changeset in webkit [168697] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WTF/wtf/FeatureDefines.h
Merge 163339 - [GTK][CMake] Enable SUBPIXEL_LAYOUT in FeatureDefines.h like EFL does
https://bugs.webkit.org/show_bug.cgi?id=128136
Reviewed by Martin Robinson.
- wtf/FeatureDefines.h: enable SUBPIXEL_LAYOUT if it's not set, for GTK+.
Conflicts:
Source/WTF/ChangeLog
- 12:26 PM Changeset in webkit [168696] by
-
- 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake
Merge 163240 - Unreviewed. Fixed GTK+ CMake build after r162922.
- PlatformGTK.cmake: Removed SoupURIUtils.cpp from the
compilation.
Conflicts:
Source/WebCore/ChangeLog
- 12:25 PM Changeset in webkit [168695] by
-
- 9 edits in releases/WebKitGTK/webkit-2.4
Merge 163155 - [GTK] [CMake] Add support for building against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=127959
Reviewed by Anders Carlsson.
.:
- Source/cmake/OptionsGTK.cmake: Add a new option to use GTK 2 and make a variable holding the
library API version. When using GTK 2 do not build WebKit 2.
Source/JavaScriptCore:
- PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
Source/WebCore:
- PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
Source/WebKit:
- PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
Source/WebKit2:
- PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
Tools:
- DumpRenderTree/PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
- GtkLauncher/CMakeLists.txt: Ditto.
- ImageDiff/PlatformGTK.cmake: Ditto.
- TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Ditto.
Conflicts:
ChangeLog
Source/JavaScriptCore/ChangeLog
Source/WebCore/ChangeLog
Source/WebKit/ChangeLog
Source/WebKit2/ChangeLog
Tools/ChangeLog
- 12:25 PM Changeset in webkit [168694] by
-
- 2 edits in trunk/Source/WebKit2
Another follow-up build fix.
- Shared/API/Cocoa/WKFoundation.h:
- 12:25 PM Changeset in webkit [168693] by
-
- 2 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge 163114 - [GTK] [CMake] Add a "make dist" target
https://bugs.webkit.org/show_bug.cgi?id=116378
Reviewed by Gustavo Noronha Silva.
.:
- Source/PlatformGTK.cmake: A CMake support for executing the make-dist
script and then turning the tarfile into a LZMA compressed file.
Source/WebCore:
- CMakeLists.txt: Don't build WebKitVersion.h for WebKitGTK+. We don't use it
and we don't want to distribute the dependency.
Tools:
Added a script that reads a manifest file an produces a tarball. Also add
the manifest.
- gtk/make-dist.py: Added.
- gtk/manifest.txt: Added.
Conflicts:
ChangeLog
Source/WebCore/ChangeLog
Tools/ChangeLog
- 12:25 PM Changeset in webkit [168692] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2
Merge 163032 - [GTK] [CMake] Fix the build after r162835
https://bugs.webkit.org/show_bug.cgi?id=127753
Reviewed by Gustavo Noronha Silva.
- CMakeLists.txt: Add support for using the prefix header (GCC / clang only for now)
when WebKit2_USE_PREFIX_HEADER is set to true.
- PlatformGTK.cmake: Set WebKit2_USE_PREFIX_HEADER support and no longer process some message.in files.
- WebKit2Prefix.h: Add support for the CMake GTK+ build.
Conflicts:
Source/WebKit2/ChangeLog
- 12:22 PM Changeset in webkit [168691] by
-
- 2 edits in trunk/Source/WebKit2
Follow-up fix.
- UIProcess/API/Cocoa/WKNavigationAction.mm:
(-[WKNavigationAction _initWithNavigationActionData:WebKit::]):
(-[WKNavigationAction _isUserInitiated]):
- 12:20 PM Changeset in webkit [168690] by
-
- 7 edits in trunk/Source/WebKit2
Add -[WKNavigationAction modifierFlags] and -[WKNavigationAction buttonNumber]
https://bugs.webkit.org/show_bug.cgi?id=132880
<rdar://problem/16901354>
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/WKFoundation.h:
Add typedef for older systems.
- UIProcess/API/Cocoa/WKNavigationAction.h:
Add -[WKNavigationAction modifierFlags] and -[WKNavigationAction buttonNumber]
- UIProcess/API/Cocoa/WKNavigationAction.mm:
(toWKNavigationType):
This can be static now.
(toNSEventModifierFlags):
Helper to convert WebEvent::Modifiers to NSEventModifierFlags.
(toNSButtonNumber):
Helper to convert WebMouseEvent::Button to an AppKit button number.
(-[WKNavigationAction initWithNavigationActionData:WebKit::]):
New initializer that takes a NavigationActionData and fills in the relevant ivars from it.
(-[WKNavigationAction _isUserInitiated]):
Return the new ivar.
- UIProcess/API/Cocoa/WKNavigationActionInternal.h:
Remove readwrite overrides.
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
Use initWithNavigationActionData:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::UIClient::createNewPage):
Use initWithNavigationActionData:
- 11:11 AM Changeset in webkit [168689] by
-
- 8 edits in trunk/Source/WebKit2
WebKit2 View Gestures (Swipe): Encode snapshots as JPEG on some platforms
https://bugs.webkit.org/show_bug.cgi?id=127788
<rdar://problem/15928241>
Reviewed by Anders Carlsson.
Allow JPEG snapshots. Compression is done asynchronously.
Enable JPEG snapshots (for now) on all PLATFORM(MAC).
We'll switch back to IOSurface snapshots on 10.9+ after <rdar://problem/16734031> is resolved.
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
Store the image size on the ViewSnapshot.
Move IOSurface-related code to ViewSnapshotStore.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
Adopt asLayerContents().
- UIProcess/mac/ViewGestureController.h:
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::retrieveSnapshotForItem):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
Adopt asLayerContents().
Put the snapshot on the right layer (the parent of the snapshot image layer);
if it's on the snapshot image layer itself, if there is no image, the shadow
is displayed on top of the white placeholder.
Only reset snapshot purgeability if we're using IOSurface snapshots.
- UIProcess/mac/ViewSnapshotStore.h:
Add a bunch of macros to allow us to switch the snapshot backing store implementation.
- UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshotStore::ViewSnapshotStore):
(WebKit::ViewSnapshotStore::~ViewSnapshotStore):
(WebKit::ViewSnapshotStore::recordSnapshot):
If takeViewSnapshot() fails, don't remove the existing snapshot.
(WebKit::createIOSurfaceFromImage):
(WebKit::compressImageAsJPEG):
(WebKit::ViewSnapshotStore::reduceSnapshotMemoryCost):
(WebKit::ViewSnapshotStore::didCompressSnapshot):
(WebKit::ViewSnapshot::clearImage):
(WebKit::ViewSnapshot::asLayerContents):
Asynchronously compress snapshots - if we're using JPEG snapshots - for a
very large memory win (~20-30x).
- 11:01 AM Changeset in webkit [168688] by
-
- 10 edits in trunk/LayoutTests
[GTK] Unreviewed GTK gardening
Rebaseline affected tests after svg root element background repaint changes
introduced in r168674.
Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-05-13
- platform/gtk/http/tests/misc/slow-loading-image-in-pattern-expected.txt:
- platform/gtk/svg/custom/circle-move-invalidation-expected.txt:
- platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt:
- platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
- platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt:
- platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
- platform/gtk/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt:
- platform/gtk/svg/custom/svg-float-border-padding-expected.txt:
- platform/gtk/svg/text/small-fonts-in-html5-expected.txt:
- 10:56 AM Changeset in webkit [168687] by
-
- 3 edits2 adds in trunk
REGRESSSION(r168528) Subpixel rendering: Selection rect is not positioned properly when SVG text is selected.
https://bugs.webkit.org/show_bug.cgi?id=132868
Reviewed by Dirk Schulze.
Scale the selection rect. r168528 missed applying this final transform on the selection/painting rect.
Source/WebCore:
Test: svg/text/hidpi-text-selection-rect-position.html
- rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::selectionRectForTextFragment):
LayoutTests:
- svg/text/hidpi-text-selection-rect-position-expected.html: Added.
- svg/text/hidpi-text-selection-rect-position.html: Added.
- 10:30 AM Changeset in webkit [168686] by
-
- 1 edit3 adds in trunk/LayoutTests
[CSS Regions] Add basic tests for inset flows into regions
https://bugs.webkit.org/show_bug.cgi?id=132871
Reviewed by Mihnea Ovidenie.
- fast/regions/shape-outside-floats/regions-shape-outside-floats-inset-expected.html: Added.
- fast/regions/shape-outside-floats/regions-shape-outside-floats-inset.html: Added.
- 10:08 AM Changeset in webkit [168685] by
-
- 6 edits2 adds in trunk
ASSERTION FAILED: leftCategory != CalcOther && rightCategory != CalcOther
in WebCore::CSSCalcBinaryOperation::createSimplified
https://bugs.webkit.org/show_bug.cgi?id=132870
Source/WebCore:
According to the standard, calc() should be able to handle angle, time
and frequency values as well: http://www.w3.org/TR/css3-values/#calc
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-13
Reviewed by Darin Adler.
Test: fast/css/calc-with-angle-time-frequency.html
- css/CSSCalculationValue.cpp:
(WebCore::unitCategory):
(WebCore::CSSCalcPrimitiveValue::createCalcExpression):
(WebCore::CSSCalcPrimitiveValue::computeLengthPx):
(WebCore::CSSCalcPrimitiveValue::addSubtractResult):
(WebCore::CSSCalcPrimitiveValue::determineCategory):
(WebCore::CSSCalcBinaryOperation::primitiveType)
- css/CSSCalculationValue.h: extending CalculationCategory
- css/CSSParser.cpp:
(WebCore::CSSParser::validCalculationUnit):
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::primitiveType):
LayoutTests:
Added test contains calc() expressions with angle, time and frequency values,
covering all the newly introduced unit types, each of which used to fail.
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-13
Reviewed by Darin Adler.
- fast/css/calc-with-angle-time-frequency-expected.txt: Added.
- fast/css/calc-with-angle-time-frequency.html: Added.
- 9:26 AM Changeset in webkit [168684] by
-
- 2 edits in trunk/Source/WebCore
Try to fix the !ENABLE(ICONDATABASE) build
- loader/icon/IconDatabase.h: Include WTFString.h.
- 8:34 AM Changeset in webkit [168683] by
-
- 5 edits in trunk/Source/WebCore
REGRESSION(r167771): [GTK] Text fields and areas are rendered unthemed
https://bugs.webkit.org/show_bug.cgi?id=132864
Reviewed by Philippe Normand.
This is because the virtual methods changed the API in the parent,
and since we don't have the methods marked as override we didn't
noticed it. After using override keyword for all virtual methods
in the derived class another problem showed up, the ActiveListBox
selection methods were incorrectly named.
- platform/gtk/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::paintTextArea): Update to API changes in the
parent class.
- platform/gtk/RenderThemeGtk.h: Mark all virtual methods as
override and the class as final.
- platform/gtk/RenderThemeGtk2.cpp:
(WebCore::RenderThemeGtk::paintTextField): Update to API changes
in the parent class.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor): Deleted.
(WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor): Deleted.
(WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor): Deleted.
(WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor): Deleted.
- platform/gtk/RenderThemeGtk3.cpp:
(WebCore::RenderThemeGtk::paintTextField): Update to API changes
in the parent class.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor): Deleted.
(WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor): Deleted.
(WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor): Deleted.
(WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor): Deleted.
- 8:30 AM Changeset in webkit [168682] by
-
- 32 edits in trunk/LayoutTests
[EFL] Rebaseline after r168575
https://bugs.webkit.org/show_bug.cgi?id=132867
Unreviewed gardening.
Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-05-13
- platform/efl-wk2/fast/css/input-search-padding-expected.png:
- platform/efl/fast/css/css1_forward_compatible_parsing-expected.txt:
- platform/efl/fast/css/first-line-text-decoration-expected.txt:
- platform/efl/fast/css/h1-in-section-elements-expected.png:
- platform/efl/fast/css/h1-in-section-elements-expected.txt:
- platform/efl/fast/css/input-search-padding-expected.txt:
- platform/efl/fast/css/word-space-extra-expected.txt:
- platform/efl/fast/encoding/utf-16-big-endian-expected.txt:
- platform/efl/fast/encoding/utf-16-little-endian-expected.txt:
- platform/efl/fast/forms/searchfield-heights-expected.txt:
- platform/efl/fast/forms/textAreaLineHeight-expected.txt:
- platform/efl/fast/inline/continuation-outlines-expected.txt:
- platform/efl/fast/inline/outline-continuations-expected.txt:
- platform/efl/fast/invalid/nestedh3s-expected.txt:
- platform/efl/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
- platform/efl/fast/table/014-expected.txt:
- platform/efl/fast/table/dynamic-caption-add-remove-before-child-expected.txt:
- platform/efl/fast/text/international/bidi-LDB-2-HTML-expected.txt:
- platform/efl/mathml/presentation/mo-stretch-expected.png:
- platform/efl/mathml/presentation/mo-stretch-expected.txt:
- platform/efl/scrollbars/custom-scrollbar-with-incomplete-style-expected.txt:
- platform/efl/svg/hixie/error/012-expected.png:
- platform/efl/svg/hixie/error/012-expected.txt:
- platform/efl/svg/hixie/mixed/010-expected.txt:
- platform/efl/svg/in-html/circle-expected.txt:
- platform/efl/svg/wicd/rightsizing-grid-expected.txt:
- platform/efl/svg/wicd/test-rightsizing-b-expected.txt:
- platform/efl/tables/mozilla/bugs/bug113235-1-expected.txt:
- platform/efl/tables/mozilla/bugs/bug113235-2-expected.txt:
- platform/efl/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
- platform/efl/tables/mozilla/other/wa_table_tr_align-expected.txt:
- 8:20 AM Changeset in webkit [168681] by
-
- 4 edits in trunk/Source/WebCore
[GStreamer] Move toGstClockTime to utilities
https://bugs.webkit.org/show_bug.cgi?id=132702
Reviewed by Philippe Normand.
toGstClockTime should be in GStreamerUtilities and corrected typo
in getGstPlayFlag.
No new tests needed.
- platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::getGstPlayFlag): Renamed from getGstPlaysFlag.
(WebCore::toGstClockTime): Moved from MediaPlayerPrivateGStreamer.
(WebCore::getGstPlaysFlag): Deleted.
- platform/graphics/gstreamer/GStreamerUtilities.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::setDownloadBuffering):
Corrected getGstPlayFlag typo.
(WebCore::toGstClockTime): Deleted.
- 7:44 AM Changeset in webkit [168680] by
-
- 10 edits in trunk/Source
Make a few icon database improvements
https://bugs.webkit.org/show_bug.cgi?id=132812
Reviewed by Brady Eidson.
Source/WebCore:
- WebCore.exp.in: Export more IconDatabase functions, since they are now called
by WebKit2 through pointers to a class marked final.
- loader/icon/IconDatabase.cpp: Removed unneeded includes. Use override for
virtual functions.
- loader/icon/IconDatabase.h: Removed unneeded includes. Marked the class final.
Use override for virtual functions. Use a public constructor instead of a create
function.
- loader/icon/IconDatabaseBase.h: Removed unneeded includes.
Source/WebKit2:
- UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseCopyIconDataForPageURL): Moved the actual implementation of this
out of the bindings into the WebIconDatabase class.
- UIProcess/API/C/WKIconDatabase.h: Fixed argument names that were inconsistent.
- UIProcess/WebIconDatabase.cpp: Removed unneeded includes.
(WebKit::WebIconDatabase::create): Pass a reference instead of a pointer.
(WebKit::WebIconDatabase::WebIconDatabase): Take a reference instead of a pointer.
(WebKit::WebIconDatabase::invalidate): Use nullptr.
(WebKit::WebIconDatabase::setDatabasePath): Use make_unique.
(WebKit::WebIconDatabase::setIconDataForIconURL): Removed unneeded local variable.
(WebKit::WebIconDatabase::imageForPageURL): Use nullptr.
(WebKit::WebIconDatabase::nativeImageForPageURL): Ditto.
(WebKit::WebIconDatabase::didFinishURLImport): Use a modern for loop.
(WebKit::WebIconDatabase::iconDataForPageURL): Added. Moved this here from
WKIconDatabase.cpp, but also changed to use createWithoutCopying to avoid making
another copy of the data for each icon.
- UIProcess/WebIconDatabase.h: Removed unneeded includes. Derive from
IconDatabaseClient privately. Use nullptr. Added iconDataForPageURL member
function. Use a reference for the constructor argument. Use override for
virtual functions. Use unique_ptr instead of OwnPtr.
- 6:56 AM Changeset in webkit [168679] by
-
- 5 edits2 adds in trunk
[MediaStream] MediaStream.addTrack Should not check for active state.
Source/WebCore:
https://bugs.webkit.org/show_bug.cgi?id=132558
Patch by Kiran <kiran.guduru@samsung.com> on 2014-05-13
Reviewed by Eric Carlson.
MediaStream.addTrack method is checking for active state of a
MediaStream, but it should not check for active state while adding a Track.
Test: fast/mediastream/MediaStream-add-tracks-to-inactive-stream.html
- Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::addTrack):
LayoutTests:
Nhttps://bugs.webkit.org/show_bug.cgi?id=132558.
Patch by Kiran <kiran.guduru@samsung.com> on 2014-05-13
Reviewed by Eric Carlson.
MediaStream.addTrack method is checking for active state of a
MediaStream, but it should not check for active state while adding a Track
Removed check not to add tracks to ended stream:relative which forced tests to avoid this bug.
- fast/mediastream/MediaStream-add-remove-tracks-expected.txt:
- fast/mediastream/MediaStream-add-remove-tracks.html:
New tests:
- fast/mediastream/MediaStream-add-tracks-to-inactive-stream-expected.txt: Added.
- fast/mediastream/MediaStream-add-tracks-to-inactive-stream.html: Added.
- 6:11 AM Changeset in webkit [168678] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Restore regionLayoutUpdated event in iOS7 inspector and remove regionOversetChanged
https://bugs.webkit.org/show_bug.cgi?id=132731
Reviewed by Joseph Pecoraro.
Added the regionLayoutUpdated event back into the inspector for compatibility with iOS 7
and removed regionOversetChanged from the iOS7 inspector as iOS 7 does not implement that event.
- UserInterface/Models/ScriptTimelineRecord.js:
- UserInterface/Protocol/CSSObserver.js:
(WebInspector.CSSObserver.prototype.regionLayoutUpdated):
- UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
- Versions/Inspector-iOS-7.0.json:
- 3:21 AM Changeset in webkit [168677] by
-
- 44 edits in trunk/LayoutTests
[GTK] Unreviewed GTK gardening
Rebaseline affected tests by changes to avoid increasing empty
LayoutRects introduced at r168575.
Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-05-13
- platform/gtk/fast/css/css1_forward_compatible_parsing-expected.txt:
- platform/gtk/fast/css/first-line-text-decoration-expected.txt:
- platform/gtk/fast/css/h1-in-section-elements-expected.txt:
- platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
- platform/gtk/fast/css/text-overflow-input-expected.txt:
- platform/gtk/fast/css/word-space-extra-expected.txt:
- platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
- platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
- platform/gtk/fast/forms/box-shadow-override-expected.txt:
- platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
- platform/gtk/fast/forms/fieldset-align-expected.txt:
- platform/gtk/fast/forms/input-appearance-height-expected.txt:
- platform/gtk/fast/forms/placeholder-position-expected.txt:
- platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
- platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
- platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
- platform/gtk/fast/forms/search/search-size-with-decorations-expected.txt:
- platform/gtk/fast/forms/textAreaLineHeight-expected.txt:
- platform/gtk/fast/inline/continuation-outlines-expected.txt:
- platform/gtk/fast/inline/continuation-outlines-with-layers-expected.txt:
- platform/gtk/fast/inline/outline-continuations-expected.txt:
- platform/gtk/fast/invalid/nestedh3s-expected.txt:
- platform/gtk/fast/multicol/client-rects-expected.txt:
- platform/gtk/fast/multicol/client-rects-spanners-complex-expected.txt:
- platform/gtk/fast/multicol/client-rects-spanners-expected.txt:
- platform/gtk/fast/multicol/newmulticol/client-rects-expected.txt:
- platform/gtk/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
- platform/gtk/fast/multicol/span/span-margin-collapsing-expected.txt:
- platform/gtk/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
- platform/gtk/fast/regions/repaint/repaint-regions-overflow-expected.txt:
- platform/gtk/fast/repaint/search-field-cancel-expected.txt:
- platform/gtk/fast/replaced/width100percent-searchfield-expected.txt:
- platform/gtk/fast/table/014-expected.txt:
- platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.txt:
- platform/gtk/mathml/presentation/mo-stretch-expected.txt:
- platform/gtk/scrollbars/custom-scrollbar-with-incomplete-style-expected.txt:
- platform/gtk/svg/custom/use-font-face-crash-expected.txt:
- platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible-expected.txt:
- platform/gtk/svg/wicd/rightsizing-grid-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug113235-1-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug113235-2-expected.txt:
- platform/gtk/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
- platform/gtk/tables/mozilla/other/wa_table_tr_align-expected.txt:
- 3:05 AM WebKitGTK/SpeedUpBuild edited by
- (diff)
May 12, 2014:
- 11:41 PM WebKitGTK/2.4.x edited by
- (diff)
- 11:40 PM Changeset in webkit [168676] by
-
- 9 edits8 adds in trunk
WebKit2 on iOS needs to capture the main thread's floating point environment.
<https://webkit.org/b/132755>
Reviewed by Geoffrey Garen.
Source/WebCore:
For iOS, WorkerThread::workerThread() expects to be able to initialize the
worker thread's floating point environment to be the same as the one in the
main thread. The FP env of the main thread is expected to have been captured
in the mainThreadFEnv global. On WebKit2 for iOS, we neglected to initialize
mainThreadFEnv.
We now introduce a FloatingPointEnvironment class that will encapsulate the main
thread (aka "UIThread") fenv, and we'll call FloatingPointEnv::saveMainThreadEnvironment()
from ChildProcess::platformInitialize() to ensure that the FloatingPointEnvironment
singleton instance is initialized properly for WebKit2.
In the ChildProcess::platformInitialize(), we also need to initialize the ARMv7
FP env to support denormalized numbers. We'll do this before calling
saveMainThreadEnvironment().
Tests: fast/workers/worker-floating-point.html
js/floating-point-denormalized.html
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj:
- platform/ios/wak/FloatingPointEnvironment.cpp: Added.
(WebCore::FloatingPointEnvironment::env):
(WebCore::FloatingPointEnvironment::FloatingPointEnvironment):
(WebCore::FloatingPointEnvironment::enableDenormalSupport):
(WebCore::FloatingPointEnvironment::saveMainThreadEnvironment):
(WebCore::FloatingPointEnvironment::propagateMainThreadEnvironment):
- platform/ios/wak/FloatingPointEnvironment.h: Added.
- platform/ios/wak/WebCoreThread.h:
- platform/ios/wak/WebCoreThread.mm:
(RunWebThread):
(StartWebThread):
- workers/WorkerThread.cpp:
(WebCore::WorkerThread::workerThread):
Source/WebKit2:
- Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::platformInitialize):
- Call FloatingPointEnv::enableNeededFloatingPointModes() to initialize the ARMv7 FP env to support denormalized numbers.
- Call FloatingPointEnv::saveMainThreadEnvironment() to capture the main thread fp env.
LayoutTests:
- fast/workers/resources/worker-floating-point.js: Added.
(runTest1):
(doDiv):
(runTest2):
- fast/workers/worker-floating-point-expected.txt: Added.
- fast/workers/worker-floating-point.html: Added.
- js/floating-point-denormalized-expected.txt: Added.
- js/floating-point-denormalized.html: Added.
- js/script-tests/floating-point-denormalized.js: Added.
- 11:38 PM WebKitGTK/2.4.x edited by
- (diff)
- 11:14 PM Changeset in webkit [168675] by
-
- 2 edits3 adds in trunk/Source/WebKit2
[EFL][WK2] Fix ewk_view_navigation test in EWK2ViewTest
https://bugs.webkit.org/show_bug.cgi?id=132817
Reviewed by Dirk Schulze.
To load test html pages, call ewk_view_uri_set() instead of EWK2UnitTestServer.
Besides this patch adds test html page for ewk_view_navigation unit test.
- UIProcess/API/efl/tests/resources/Page1.html: Added.
- UIProcess/API/efl/tests/resources/Page2.html: Added.
- UIProcess/API/efl/tests/resources/Page3.html: Added.
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
- 11:04 PM Changeset in webkit [168674] by
-
- 22 edits6 adds in trunk
SVG root element accepts background color but fails to repaint it
https://bugs.webkit.org/show_bug.cgi?id=63153
Reviewed by Dean Jackson.
Source/WebCore:
This is back ported from Blink. Don't know the exact commit though.
The patch checks if the SVGSVGElement is an outermost root element.
If it is, mark the whole element for repaint.
Test: svg/custom/svg-root-background.html
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateHasBoxDecorations):
(WebCore::RenderBoxModelObject::updateFromStyle):
- rendering/RenderBoxModelObject.h:
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
This is a simple optimization by taking the necessary parts
from RenderReplaced and SVGRenderSupport.
- rendering/svg/RenderSVGRoot.h:
LayoutTests:
Check that background color updates if the size of an outermost
root SVG element changes.
- svg/custom/svg-root-background-expected.png: Added.
- svg/custom/svg-root-background-expected.txt: Added.
- svg/custom/svg-root-background.html: Added.
- 10:00 PM Changeset in webkit [168673] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 9:58 PM Changeset in webkit [168672] by
-
- 1 copy in tags/Safari-538.34.3
New Tag.
- 9:53 PM Changeset in webkit [168671] by
-
- 2 edits in trunk/Source/WebKit
[Win] Unreviewed build fix after r168668.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add
missing export symbols.
- 9:32 PM Changeset in webkit [168670] by
-
- 3 edits in trunk/Source/WebCore
[iOS] Fixed items are sometimes clipped after rubber-banding
https://bugs.webkit.org/show_bug.cgi?id=132851
<rdar://problem/16870790>
Reviewed by Benjamin Poulain.
On iOS fixed-position layers would get clipped to the document rect,
but with rubber-banding, we can now have a custom fixed postion rect
that extends outside the document rect.
Another issue was that we would un-composite fixed elements sometimes
when scrolling fast, again because they could fall outside of the document rect.
A final issue was that pinching could reveal parts of fixed elements that should
lie outside the viewport, rather than clipping the layers.
Fix by converting both call points to use viewportConstrainedVisibleContentRect()
rather than viewportConstrainedExtentRect(). On non-iOS platforms these are
the same, but on iOS viewportConstrainedVisibleContentRect() uses the
custom fixed position rect, which is the correct rect to intersect with.
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateCompositedBounds):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
- 8:19 PM Changeset in webkit [168669] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, fix mismatched test expectation.
- webgl/many-contexts-expected.txt:
- 7:25 PM Changeset in webkit [168668] by
-
- 31 edits7 adds in trunk
Don't dispatch 'beforeload' event inside FrameView::layout()
https://bugs.webkit.org/show_bug.cgi?id=132621
<rdar://problem/15661470>
This merges Blink revision 162073 with minor renaming and style
changes. From that commit:
Executing JavaScript code inside FrameView::layout() is problematic.
e.g. an assertion failure tested in fast/events/beforeload-assertion.html.
We should avoid it.
This CL makes 'beforeload' event dispatching for plugins and iframes asynchronous,
except plugin access from JavaScript code (HTMLPlugInElement::
renderWidgetForJSBindings).
Reviewed by Brent Fulgham.
Source/WebCore:
Tests: fast/events/beforeload-assertion.html
fast/events/beforeload-iframe-crash.html
fast/events/beforeload-input-time-crash.html
- WebCore.exp.in:
- dom/Document.cpp:
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
- dom/Document.h:
- html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::renderWidgetForJSBindings):
- html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderWidgetForJSBindings):
- page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::updateEmbeddedObjectsTimerFired):
(WebCore::FrameView::flushAnyPendingPostLayoutTasks):
(WebCore::FrameView::performPostLayoutTasks):
- page/FrameView.h:
- testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- compositing/plugins/composited-plugin.html:
- compositing/plugins/no-backing-store.html:
- fast/dom/beforeload/flash-before-load.html:
- fast/events/beforeload-assertion-expected.txt: Added.
- fast/events/beforeload-assertion.html: Added.
- fast/events/beforeload-iframe-crash-expected.txt: Added.
- fast/events/beforeload-iframe-crash.html: Added.
- fast/events/beforeload-input-time-crash-expected.txt: Added.
- fast/events/beforeload-input-time-crash.html: Added.
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html:
- http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-no-url-blocked.html:
- http/tests/security/contentSecurityPolicy/object-src-none-allowed.html:
- http/tests/security/contentSecurityPolicy/object-src-none-blocked.html:
- http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js:
(testImpl.iframe.onload):
(testImpl):
- http/tests/security/mixedContent/insecure-plugin-in-iframe.html:
- platform/mac/plugins/supports-carbon-event-model.html:
- plugins/get-user-agent-with-null-npp-from-npp-new.html:
- plugins/mouse-click-plugin-clears-selection.html:
- plugins/netscape-plugin-map-data-to-src.html:
- plugins/no-mime-with-valid-extension.html:
- plugins/plugin-initiate-popup-window.html:
- plugins/windowless_plugin_paint_test.html:
- resources/plugin.js: Added.
(runAfterPluginLoad):
- 6:29 PM Changeset in webkit [168667] by
-
- 2 edits in trunk/LayoutTests
Unreviewed. Adjust expected result for test added in r168666.
- webgl/many-contexts-expected.txt:
- 6:07 PM Changeset in webkit [168666] by
-
- 4 edits2 adds in trunk
Limit number of active graphics contexts per web process.
https://bugs.webkit.org/show_bug.cgi?id=132833.
<rdar://problem/16888459>
Reviewed by Dean Jackson.
Test: webgl/many-contexts.html
- platform/graphics/GraphicsContext3D.h:
- platform/graphics/mac/GraphicsContext3DMac.mm: Limit number of active contexts to 16.
(WebCore::GraphicsContext3D::create):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
- webgl/many-contexts-expected.txt: Added.
- webgl/many-contexts.html: Added.
- 5:32 PM Changeset in webkit [168665] by
-
- 2 edits in trunk/Source/WebCore
Build fix fix.
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::contentShadowLayerForFrameView):
- 5:29 PM Changeset in webkit [168664] by
-
- 6 edits in trunk/Source/WebCore
DataDetectorUI doesn't update with resize
https://bugs.webkit.org/show_bug.cgi?id=132830
<rdar://problem/16871179>
Reviewed by Simon Fraser.
- editing/Editor.cpp:
(WebCore::Editor::scanSelectionForTelephoneNumbers): Add public, no-argument
version that can be called after layout changes.
(WebCore::Editor::didLayout): Reprocess telephone number data
since Ranges will have changed.
- editing/Editor.h:
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::updateDataDetectorsForSelection): Added.
- editing/FrameSelection.h:
- page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks): Ask the FrameSelection to update the
Range information for selected phone numbers.
- 5:27 PM Changeset in webkit [168663] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed, EFL build fix since r168625.
- UIProcess/efl/WebContextEfl.cpp:
(WebKit::WebContext::platformDefaultLocalStorageDirectory): Remove const keyword.
- 5:21 PM Changeset in webkit [168662] by
-
- 2 edits in trunk/Source/WebCore
Fix the iOS build.
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::contentShadowLayerForFrameView):
- 5:14 PM Changeset in webkit [168661] by
-
- 5 edits in trunk/Source
[iOS WK2] Fuzzy tiles on some sites on loading
https://bugs.webkit.org/show_bug.cgi?id=132847
<rdar://problem/16816178>
Reviewed by Benjamin Poulain.
Source/WebCore:
Export WebCore::TileController::contentsScale() const
- WebCore.exp.in:
Source/WebKit2:
PlatformCALayerRemoteTiledBacking overrode setContentsScale() but not contentsScale(),
causing us to early-return from GraphicsLayerCA::updateContentsScale() and leave the
scale wrong. Fix by overriding contentsScale() also.
- WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
(WebKit::PlatformCALayerRemoteTiledBacking::contentsScale):
- WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
- 5:13 PM Changeset in webkit [168660] by
-
- 3 edits in trunk/Source/WebCore
Add debug dumping for ViewportConfiguration
https://bugs.webkit.org/show_bug.cgi?id=132843
Reviewed by Benjamin Poulain.
Add some TextStream-based dumping for ViewportConfiguration.
- page/ViewportConfiguration.cpp:
(WebCore::ViewportConfiguration::updateConfiguration):
(WebCore::ViewportConfigurationTextStream::ViewportConfigurationTextStream):
(WebCore::ViewportConfigurationTextStream::increaseIndent):
(WebCore::ViewportConfigurationTextStream::decreaseIndent):
(WebCore::dumpProperty):
(WebCore::ViewportConfigurationTextStream::writeIndent):
(WebCore::ViewportConfigurationTextStream::operator<<):
(WebCore::ViewportConfiguration::description):
(WebCore::ViewportConfiguration::dump):
- page/ViewportConfiguration.h:
- 5:11 PM Changeset in webkit [168659] by
-
- 2 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168658.
- 5:05 PM Changeset in webkit [168658] by
-
- 2 edits in trunk/Source/WebCore
Followup to "Teach Editor to support more direct replacement of a Node"
<rdar://problem/16817952> and https://bugs.webkit.org/show_bug.cgi?id=132834
Pair programmed and pair reviewed by Brady Eidson and Darin Adler.
- editing/mac/EditorMac.mm:
(WebCore::maybeCopyNodeAttributesToFragment):
(WebCore::Editor::replaceNodeFromPasteboard):
- 4:31 PM Changeset in webkit [168657] by
-
- 4 edits in trunk/Source/WebKit2
Triple-buffer RemoteLayerBackingStore
https://bugs.webkit.org/show_bug.cgi?id=132786
<rdar://problem/16877498>
Reviewed by Simon Fraser.
We need three buffers because we're currently unable to synchronize
with the render server to swap when they're not in use, so we were
throwing surfaces away far too frequently.
This hugely reduces time spent in IOSurface::create on various repaint benchmarks.
- Shared/mac/RemoteLayerBackingStore.h:
(WebKit::RemoteLayerBackingStore::hasFrontBuffer):
(WebKit::RemoteLayerBackingStore::volatility): Deleted.
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::clearBackingStore):
(WebKit::RemoteLayerBackingStore::encode):
(WebKit::RemoteLayerBackingStore::decode):
(WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer):
(WebKit::RemoteLayerBackingStore::display):
(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
(WebKit::RemoteLayerBackingStore::setBufferVolatility):
(WebKit::RemoteLayerBackingStore::Buffer::discard):
(WebKit::RemoteLayerBackingStore::setVolatility): Deleted.
- Shared/mac/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::purgeabilityTimerFired):
Put the ShareableBitmap/IOSurface and a volatility bit in a Buffer struct.
Also factor out "throw away this buffer and put it in the pool" into Buffer::discard().
We keep a volatility bit because querying IOSurface purgeability is expensive,
and we have a guarantee that any changes will happen in the Web process
and go through this class (the lack of this guarantee in most cases is why I'm not
putting this bit in WebCore::IOSurface itself).
Make it so that each buffer's volatility can be adjusted individually
by setBufferVolatility(), and adopt in RemoteLayerBackingStoreCollection.
Add a third buffer, m_secondaryBackBuffer, which will swap with the back buffer
before swapping front and back if the back buffer (soon to be the front buffer)
is still in use by the render server. This means that we will almost never
have to throw away a surface because it's in use (and conversely never need
to make a new surface).
Adjust RemoteLayerBackingStoreCollection to make secondary back surfaces purgeable
more aggressively than others.
- 4:29 PM Changeset in webkit [168656] by
-
- 2 edits in trunk/Source/WebKit
Don't make a Frameworks symlink inside WebKitLegacy.framework
https://bugs.webkit.org/show_bug.cgi?id=132842
<rdar://problem/16886939>
Reviewed by Dan Bernstein.
- WebKit.xcodeproj/project.pbxproj:
- 4:21 PM Changeset in webkit [168655] by
-
- 9 edits in trunk/Source/WebCore
Content shadow layer needs to move in sync with the content layer
https://bugs.webkit.org/show_bug.cgi?id=132841
-and corresponding-
<rdar://problem/16641115>
Reviewed by Simon Fraser.
Now that the root content layer moves a little bit (for y scroll positions between
0 and topContentInset), the shadow layer needs to move along with it since the
shadow layer should always have the same position as the root content layer.
Set the root state node’s shadow layer, and update the position whenever the root
content layer’s position is updated.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
Fetch the compositor’s layerForContentShadow().
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::contentShadowLayerForFrameView):
- page/scrolling/ScrollingCoordinator.h:
Hook up the contentShadowLayer in the state node.
- page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setContentShadowLayer):
Hook it up in the ScrollingTreeNode as well. Move the layer whenever the m
_scrolledContentsLayer is moved.
- page/scrolling/ScrollingStateScrollingNode.h:
- page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
The shadow layer needs an anchor point now that we are moving it around.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
- 4:17 PM Changeset in webkit [168654] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (r165972): Can't type into text fields in Flash
https://bugs.webkit.org/show_bug.cgi?id=132840
<rdar://problem/16671969>
Reviewed by Anders Carlsson.
- UIProcess/API/mac/WKView.mm: (-[WKView inputContext]): Restore a function that
got accidentally lost when adding async text input code.
- 4:02 PM Changeset in webkit [168653] by
-
- 8 edits in trunk/Source/WebKit2
AX: .js dialogs shown in unload while AX is running crash WebKit.
https://bugs.webkit.org/show_bug.cgi?id=123828
Reviewed by Anders Carlsson.
Utilize platform API to inform AX clients when the WebProcess will suspend and resume.
This allows us to avoid having special behavior for accessibility when the WebProcess needs
to wait on a reply.
- Platform/IPC/Connection.cpp:
(IPC::Connection::waitForSyncReply):
- Platform/IPC/Connection.h:
- Platform/IPC/mac/ConnectionMac.cpp:
(IPC::Connection::willSendSyncMessage):
(IPC::Connection::didReceiveSyncReply):
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::exceededDatabaseQuota):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
- 4:01 PM Changeset in webkit [168652] by
-
- 11 edits in branches/safari-538.34-branch/Source/WebCore
Merged r168650.
- 3:57 PM Changeset in webkit [168651] by
-
- 3 edits2 adds in trunk
<svg> with opacity and compositing double-applies its opacity
https://bugs.webkit.org/show_bug.cgi?id=116856
Reviewed by Simon Fraser.
Source/WebCore:
The opacity is applied by the compositor. However, all SVG elements
create transparency layers on their own to apply opacity. So did
SVGSVGElement.
Added a check if the current element has a compositing layer and skip
creating transparency layer if it has.
Test: svg/custom/composited-svg-with-opacity.html
- rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
LayoutTests:
Test that opacity is not applied twice for composited inline SVG.
- svg/custom/composited-svg-with-opacity-expected.html: Added.
- svg/custom/composited-svg-with-opacity.html: Added.
- 3:47 PM Changeset in webkit [168650] by
-
- 11 edits in trunk/Source/WebCore
Teach Editor to support more direct replacement of a Node
<rdar://problem/16817952> and https://bugs.webkit.org/show_bug.cgi?id=132834
Reviewed by Enrica Casucci.
The new method "Editor::replaceNodeFromPasteboard" has the intent that the new DocumentFragment
from the pasteboard is as similar to the old Node as possible.
In practice, the new DocumentFragment:
1 - Can represent a single node that's missing various attributes the original Node had.
2 - Can be an unwanted fragment of arbitrary depth when the replacement happens inside Mail.app
This fixes both of these issues.
Add a MailBlockquoteHandling enum class for various Editor operations to pass through to the
ReplaceSelectionCommand:
- editing/Editor.cpp:
(WebCore::Editor::handleTextEvent):
(WebCore::Editor::pasteAsFragment):
(WebCore::Editor::pasteWithPasteboard):
(WebCore::Editor::replaceSelectionWithFragment):
- editing/Editor.h:
- dom/TextEvent.cpp:
(WebCore::TextEvent::createForPlainTextPaste):
(WebCore::TextEvent::createForFragmentPaste):
(WebCore::TextEvent::TextEvent):
- dom/TextEvent.h:
(WebCore::TextEvent::mailBlockquoteHandling):
- editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
(WebCore::ReplaceSelectionCommand::doApply): Consider whether or not this particular Editor
operation was meant to give special consideration to Mail's Blockquotes.
- editing/ReplaceSelectionCommand.h:
- editing/efl/EditorEfl.cpp:
(WebCore::Editor::pasteWithPasteboard):
- editing/ios/EditorIOS.mm:
(WebCore::Editor::pasteWithPasteboard):
- editing/mac/EditorMac.mm:
(WebCore::Editor::pasteWithPasteboard):
(WebCore::Editor::readSelectionFromPasteboard):
(WebCore::maybeCopyNodeAttributesToFragment): If the new DocumentFragment represents a single HTML node
with the same tag name is the original HTML node, copy over most attributes from the original node.
(WebCore::Editor::replaceNodeFromPasteboard): Create the fragment, run it through maybeCopyNodeAttributesToFragment.
- WebCore.exp.in:
- 3:21 PM Changeset in webkit [168649] by
-
- 14 edits in trunk/Source/JavaScriptCore
Unreviewed, rolling out r168642.
https://bugs.webkit.org/show_bug.cgi?id=132839
Broke ARM build (Requested by jpfau on #webkit).
Reverted changeset:
"[Win] Enum type with value zero is compatible with void*,
potential cause of crashes."
https://bugs.webkit.org/show_bug.cgi?id=132772
http://trac.webkit.org/changeset/168642
- 3:19 PM Changeset in webkit [168648] by
-
- 2 edits in trunk/Source/WebInspectorUI
[Win] Correct Cygwin Path Confusion in WebInspectorUI Build
https://bugs.webkit.org/show_bug.cgi?id=132826
Reviewed by Joseph Pecoraro.
- Scripts/copy-user-interface-resources.pl: If the build is running
under Cygwin, be sure to use '/usr/bin/python', instead of just
'python' to avoid build errors.
- 2:38 PM Changeset in webkit [168647] by
-
- 25 edits1 delete in trunk/Source
Progress on web timing.
https://bugs.webkit.org/show_bug.cgi?id=132574
Reviewed by Alexey Proskuryakov.
Source/WebCore:
- CMakeLists.txt:
Removed ResourceLoadTiming.cpp.
- WebCore.exp.in:
Added linker symbols for ResourceLoadTiming.
- WebCore.xcodeproj/project.pbxproj:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
Removed ResourceLoadTiming.cpp.
- inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForTiming):
- inspector/protocol/Network.json:
Updated ResourceTiming structure.
- loader/DocumentLoadTiming.cpp:
(WebCore::DocumentLoadTiming::setNavigationStart):
- loader/DocumentLoadTiming.h: Deleted unused setNavigationStart function.
- page/Performance.idl:
Updated spec URL.
- page/PerformanceResourceTiming.cpp:
(WebCore::PerformanceResourceTiming::domainLookupStart):
(WebCore::PerformanceResourceTiming::domainLookupEnd):
(WebCore::PerformanceResourceTiming::connectStart):
(WebCore::PerformanceResourceTiming::secureConnectionStart):
(WebCore::PerformanceResourceTiming::responseEnd):
Updated ResourceLoadTiming member variable names.
(WebCore::PerformanceResourceTiming::responseStart):
- page/PerformanceResourceTiming.h:
- page/PerformanceResourceTiming.idl:
Deleted responseStart because it is not in the spec.
- page/PerformanceTiming.cpp:
(WebCore::PerformanceTiming::domainLookupStart):
(WebCore::PerformanceTiming::domainLookupEnd):
(WebCore::PerformanceTiming::connectStart):
(WebCore::PerformanceTiming::secureConnectionStart):
(WebCore::PerformanceTiming::requestStart):
(WebCore::PerformanceTiming::responseStart):
Updated ResourceLoadTiming member variable names.
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute):
Use navigationStart as base for resource load times.
- page/PerformanceTiming.idl:
Updated spec URL.
- platform/network/HTTPParsers.h:
Removed unused class declarations.
- platform/network/ResourceHandle.h:
Moved soup request time from ResourceLoadTiming to ResourceHandle.
- platform/network/ResourceLoadTiming.cpp: Removed.
- platform/network/ResourceLoadTiming.h:
(WebCore::ResourceLoadTiming::deepCopy):
(WebCore::ResourceLoadTiming::operator==):
(WebCore::ResourceLoadTiming::ResourceLoadTiming):
Updated ResourceLoadTiming member variable names.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::createNSURLConnection):
Collect timing data.
- platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
Save timing data to a ResourceLoadTiming on the ResourceResponse.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::gotHeadersCallback):
(WebCore::restartedCallback):
(WebCore::milisecondsSinceRequest):
(WebCore::ResourceHandle::didStartRequest):
(WebCore::networkEventCallback):
(WebCore::createSoupMessageForHandleAndRequest):
(WebCore::ResourceHandle::sendPendingRequest):
Updated ResourceLoadTiming member variable names.
(WebCore::wroteBodyCallback): Deleted.
Source/WebKit2:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ResourceResponse>::encode):
(IPC::ArgumentCoder<ResourceResponse>::decode):
Transfer ResourceLoadTiming values if they exist.
- 2:34 PM Changeset in webkit [168646] by
-
- 3 edits in trunk/Source/WebKit2
[Cocoa] Expose WebPage::usesEphemeralSession to the bundle
https://bugs.webkit.org/show_bug.cgi?id=132836
Reviewed by Anders Carlsson.
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController _usesNonPersistentWebsiteDataStore]):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
- 2:18 PM Changeset in webkit [168645] by
-
- 10 edits16 adds in trunk
SVG outline property is broken and inefficient
https://bugs.webkit.org/show_bug.cgi?id=113666
Reviewed by Dean Jackson.
Source/WebCore:
"[SVG2] css 'outline' property should apply to svg elements
The 'outline' property was only partially working in SVG before
this patch, this makes it work on text and text content child
elements too.
This makes SVG render the outlines as part of the foreground paint
phase.
Partly based on Florin Malita's webkit patch https://bugs.webkit.org/show_bug.cgi?id=113666#c12."
Tests: svg/custom/outline-stacking-expected.svg
svg/custom/outline-stacking.svg
svg/custom/rgba-color-outline.svg
svg/text/text-outline-expected.svg
svg/text/text-outline-rgba.html
svg/text/text-outline.html
svg/text/textpath-outline-expected.svg
svg/text/textpath-outline.svg
svg/text/tspan-multiple-outline.svg
svg/text/tspan-outline-2-expected.svg
svg/text/tspan-outline-2.svg
svg/text/tspan-outline-expected.svg
svg/text/tspan-outline.html
- rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint): Draw outline in forground
paint phase.
- rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint): Draw outline in forground
paint phase.
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced): Pass paint offset.
- rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::paint): Draw outline in forground
paint phase.
- rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::paint): Draw outline in forground
paint phase.
- rendering/svg/SVGInlineFlowBox.cpp:
(WebCore::SVGInlineFlowBox::paint): Pass paint offset.
- rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paint): Draw outline in forground
paint phase.
- rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::paint): Pass paint offset.
LayoutTests:
Test stacking for outline properties. 'outline' should
not draw above overlapping content anymore.
Test outline drawing for text elements.
- svg/custom/outline-stacking-expected.svg: Added.
- svg/custom/outline-stacking.svg: Added.
- svg/custom/rgba-color-outline-expected.html: Added.
- svg/custom/rgba-color-outline.svg: Added.
- svg/text/text-outline-expected.svg: Added.
- svg/text/text-outline-rgba-expected.html: Added.
- svg/text/text-outline-rgba.html: Added.
- svg/text/text-outline.html: Added.
- svg/text/textpath-outline-expected.svg: Added.
- svg/text/textpath-outline.svg: Added.
- svg/text/tspan-multiple-outline-expected.html: Added.
- svg/text/tspan-multiple-outline.svg: Added.
- svg/text/tspan-outline-2-expected.svg: Added.
- svg/text/tspan-outline-2.svg: Added.
- svg/text/tspan-outline-expected.svg: Added.
- svg/text/tspan-outline.html: Added.
- 2:07 PM Changeset in webkit [168644] by
-
- 19 edits in branches/safari-538.34-branch/Source
Merged r168565.
- 2:06 PM Changeset in webkit [168643] by
-
- 2 edits in trunk/Source/WebCore
Layer for bottom overhang area needs to be offset by the topContentInset
https://bugs.webkit.org/show_bug.cgi?id=132835
-and corresponding-
<rdar://problem/16641115>
Reviewed by Simon Fraser.
Push this layer down by the topContentInset in addition to the root layer height,
footer height, and header height.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateLayerForBottomOverhangArea):
- 1:42 PM Changeset in webkit [168642] by
-
- 14 edits in trunk/Source/JavaScriptCore
[Win] Enum type with value zero is compatible with void*, potential cause of crashes.
https://bugs.webkit.org/show_bug.cgi?id=132772
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-05-12
Reviewed by Geoffrey Garen.
Using the MSVC compiler, an instance of an enum type with value zero, is compatible with void* (see bug 132683 for a code example).
This has caused crashes on Windows on two occasions (bug 132683, and bug 121001).
This patch tries to prevent these type of crashes by using a type with explicit constructors instead of void*.
The void* parameter in the loadDouble and storeDouble methods are replaced with TrustedImmPtr.
- assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::loadDouble):
(JSC::MacroAssemblerARM::storeDouble):
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::loadDouble):
(JSC::MacroAssemblerARM64::storeDouble):
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::loadDouble):
(JSC::MacroAssemblerARMv7::storeDouble):
- assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::loadDouble):
(JSC::MacroAssemblerMIPS::storeDouble):
- assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::loadDouble):
(JSC::MacroAssemblerSH4::storeDouble):
- assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::storeDouble):
- assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::absDouble):
(JSC::MacroAssemblerX86Common::negateDouble):
(JSC::MacroAssemblerX86Common::loadDouble):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::compileClampDoubleToByte):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::compile):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::purifyNaN):
- jit/JITInlines.h:
(JSC::JIT::emitLoadDouble):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitFloatTypedArrayGetByVal):
- jit/ThunkGenerators.cpp:
(JSC::floorThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::powThunkGenerator):
- 1:31 PM Changeset in webkit [168641] by
-
- 6 edits in trunk
REGRESSION (r167818): editing/inserting/typing-space-to-trigger-smart-link.html fails on WebKit1 bots
<https://bugs.webkit.org/show_bug.cgi?id=132207>
<rdar://problem/16730393>
Source/WebCore:
Reverts the previous workaround in favor of a more specific fix for the
null dereference.
Reviewed by Darin Adler.
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
Check whether the run's start and end are still in the document, as
removeConflictingInlineStyleFromRun() may have removed them.
- editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::apply):
Reverted previous workaround.
(WebCore::ApplyEditCommand::ReentrancyGuard::isRecursiveCall): Deleted.
(WebCore::ApplyEditCommand::ReentrancyGuard::Scope::Scope): Deleted.
(WebCore::ApplyEditCommand::ReentrancyGuard::Scope::~Scope): Deleted.
LayoutTests:
Reviewed by Darin Adler.
- editing/apply-style-iframe-crash-expected.txt:
Rebased test result has one fewer new line.
- platform/mac-wk1/TestExpectations:
Remove test from list of expected failures.
- 1:16 PM Changeset in webkit [168640] by
-
- 10 edits in trunk/Source/WebCore
Clean up CrossThreadTask
https://bugs.webkit.org/show_bug.cgi?id=132800
Reviewed by Darin Adler.
Remove the createCallbackTask overloads and the related CrossThreadTask helper classes.
Instead, have one simple CrossThreadTask class that derives from ScriptExecutionContext::Task.
Its templated constructor takes in the method and the variadic pack of parameters. The cross-thread
copies of the parameters are then bound to that method and the resulting bind expression is used to
initialize the base class. The bind expression is constructed with a placeholder for the
ScriptExecutionContext* parameter that's provided through ScriptExecutionContext::Task::performTask().
- Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
(WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
(WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
(WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageError):
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
- Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::WorkerThreadableWebSocketChannel::Peer::send):
(WebCore::WorkerThreadableWebSocketChannel::Peer::bufferedAmount):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessage):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didStartClosingHandshake):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
(WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessageError):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::initialize):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::connect):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::fail):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::resume):
- dom/CrossThreadTask.h:
(WebCore::CrossThreadTask::CrossThreadTask):
(WebCore::CrossThreadTask1::CrossThreadTask1): Deleted.
(WebCore::CrossThreadTask1::performTask): Deleted.
(WebCore::CrossThreadTask2::CrossThreadTask2): Deleted.
(WebCore::CrossThreadTask2::performTask): Deleted.
(WebCore::CrossThreadTask3::CrossThreadTask3): Deleted.
(WebCore::CrossThreadTask3::performTask): Deleted.
(WebCore::CrossThreadTask4::CrossThreadTask4): Deleted.
(WebCore::CrossThreadTask4::performTask): Deleted.
(WebCore::CrossThreadTask5::CrossThreadTask5): Deleted.
(WebCore::CrossThreadTask5::performTask): Deleted.
(WebCore::CrossThreadTask6::CrossThreadTask6): Deleted.
(WebCore::CrossThreadTask6::performTask): Deleted.
(WebCore::CrossThreadTask7::CrossThreadTask7): Deleted.
(WebCore::CrossThreadTask7::performTask): Deleted.
(WebCore::CrossThreadTask8::CrossThreadTask8): Deleted.
(WebCore::CrossThreadTask8::performTask): Deleted.
(WebCore::createCallbackTask): Deleted.
- fileapi/FileReader.cpp:
(WebCore::FileReader::abort):
- loader/WorkerThreadableLoader.cpp:
(WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
(WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
(WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFailAccessControlCheck):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
- loader/WorkerThreadableLoader.h:
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::removeRequestFromCache):
(WebCore::MemoryCache::removeRequestFromSessionCaches):
- workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
(WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::workerObjectDestroyed):
(WebCore::WorkerMessagingProxy::connectToInspector):
(WebCore::WorkerMessagingProxy::disconnectFromInspector):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):
- 1:13 PM Changeset in webkit [168639] by
-
- 15 edits3 copies3 adds in trunk
Implement EXT_shader_texture_lod in WebGL.
https://bugs.webkit.org/show_bug.cgi?id=128985
<rdar://problem/16111396>
Source/WebCore:
Based on Chromium patch by bajones@chromium.org.
https://src.chromium.org/viewvc/blink?revision=171465&view=revision
Patch by Alex Christensen <achristensen@webkit.org> on 2014-05-12
Reviewed by Dean Jackson.
Test: webgl/conformance/extensions/ext-shader-texture-lod.html
- CMakeLists.txt:
- DerivedSources.cpp:
- DerivedSources.make:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
Added new EXTShaderTextureLOD files.
- bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
Added EXTShaderTextureLOD.
- html/canvas/EXTShaderTextureLOD.cpp: Added.
(WebCore::EXTShaderTextureLOD::EXTShaderTextureLOD):
(WebCore::EXTShaderTextureLOD::~EXTShaderTextureLOD):
(WebCore::EXTShaderTextureLOD::getName):
- html/canvas/EXTShaderTextureLOD.h: Added.
- html/canvas/EXTShaderTextureLOD.idl: Added.
- html/canvas/WebGLExtension.h:
Added EXTShaderTextureLODName.
- html/canvas/WebGLObject.cpp:
Removed unused inclusion of EXTTextureFilterAnisotropic.h.
- html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getExtension):
Added EXT_shader_texture_lod.
- html/canvas/WebGLRenderingContext.h:
Added a EXTShaderTextureLOD member variable.
LayoutTests:
Based on Firefox patch by Vladimir Vukicevic.
https://bug965848.bugzilla.mozilla.org/attachment.cgi?id=8367994
Patch by Alex Christensen <achristensen@webkit.org> on 2014-05-12
Reviewed by Dean Jackson.
- webgl/conformance/extensions/ext-shader-texture-lod-expected.txt: Added.
- webgl/conformance/extensions/ext-shader-texture-lod.html: Added.
- webgl/resources/webgl_test_files/conformance/extensions/ext-shader-texture-lod.html: Added.
- 12:54 PM Changeset in webkit [168638] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION(168625): [GTK] build broken due to WKContextSetLocalStorageDirectory
https://bugs.webkit.org/show_bug.cgi?id=132831
Unreviewed GTK build fix.
Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-05-12
- UIProcess/gtk/WebContextGtk.cpp:
(WebKit::WebContext::platformDefaultLocalStorageDirectory):
This is now a static member function.
- 12:53 PM Changeset in webkit [168637] by
-
- 5 edits in trunk/Source/WebKit2
WKWebViewConfiguration should fill in the blanks
https://bugs.webkit.org/show_bug.cgi?id=132832
<rdar://problem/16886408>
Reviewed by Dan Bernstein.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration init]):
(-[WKWebViewConfiguration _validate]):
- UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h:
- 12:47 PM Changeset in webkit [168636] by
-
- 3 edits2 adds in trunk
Disallow drag and drop of non-displayable resources.
https://bugs.webkit.org/show_bug.cgi?id=132745
<rdar://problem/10562662>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Test: http/tests/security/drag-drop-local-file.html
- page/DragController.cpp:
(WebCore::DragController::startDrag):
LayoutTests:
- http/tests/security/drag-drop-local-file-expected.txt: Added.
- http/tests/security/drag-drop-local-file.html: Added.
- 12:23 PM Changeset in webkit [168635] by
-
- 7 edits9 adds in branches/ftlopt
jsSubstring() should be lazy
https://bugs.webkit.org/show_bug.cgi?id=132556
Reviewed by Andreas Kling.
Source/JavaScriptCore:
jsSubstring() is now lazy by using a special rope that is a substring instead of a
concatenation. To make this patch super simple, we require that a substring's base is
never a rope. Hence, when resolving a rope, we either go down a non-recursive substring
path, or we go down a concatenation path which may see exactly one level of substrings in
its fibers.
This is up to a 50% speed-up on microbenchmarks and a 10% speed-up on Octane/regexp.
Relanding this with assertion fixes.
- heap/MarkedBlock.cpp:
(JSC::MarkedBlock::specializedSweep):
- runtime/JSString.cpp:
(JSC::JSRopeString::visitFibers):
(JSC::JSRopeString::resolveRopeInternal8):
(JSC::JSRopeString::resolveRopeInternal16):
(JSC::JSRopeString::clearFibers):
(JSC::JSRopeString::resolveRope):
(JSC::JSRopeString::resolveRopeSlowCase8):
(JSC::JSRopeString::resolveRopeSlowCase):
- runtime/JSString.h:
(JSC::JSRopeString::finishCreation):
(JSC::JSRopeString::append):
(JSC::JSRopeString::create):
(JSC::JSRopeString::offsetOfFibers):
(JSC::JSRopeString::fiber):
(JSC::JSRopeString::substringBase):
(JSC::JSRopeString::substringOffset):
(JSC::JSRopeString::notSubstringSentinel):
(JSC::JSRopeString::substringSentinel):
(JSC::JSRopeString::isSubstring):
(JSC::JSRopeString::setIsSubstring):
(JSC::jsSubstring):
- runtime/RegExpMatchesArray.cpp:
(JSC::RegExpMatchesArray::reifyAllProperties):
- runtime/StringPrototype.cpp:
(JSC::stringProtoFuncSubstring):
LayoutTests:
These tests get 35-50% faster.
- js/regress/script-tests/substring-concat-weird.js: Added.
(foo):
- js/regress/script-tests/substring-concat.js: Added.
(foo):
- js/regress/script-tests/substring.js: Added.
(foo):
- js/regress/substring-concat-expected.txt: Added.
- js/regress/substring-concat-weird-expected.txt: Added.
- js/regress/substring-concat-weird.html: Added.
- js/regress/substring-concat.html: Added.
- js/regress/substring-expected.txt: Added.
- js/regress/substring.html: Added.
- 12:20 PM Changeset in webkit [168634] by
-
- 1 edit in branches/safari-538.34-branch/Source/WebKit2/UIProcess/API/Cocoa/WKNavigationResponsePrivate.h
Branch build fix after r168581.
- 11:35 AM Changeset in webkit [168633] by
-
- 3 edits in branches/safari-538.34-branch/Source/WebKit2
Merged r168582.
- 11:33 AM Changeset in webkit [168632] by
-
- 6 edits1 copy in branches/safari-538.34-branch/Source/WebKit2
Merged r168581.
- 11:26 AM Changeset in webkit [168631] by
-
- 2 edits in trunk/Source/JavaScriptCore
0.4% of PLT3 in JSCell::structure() below JSObject::visitChildren().
<https://webkit.org/b/132828>
<rdar://problem/16886285>
Reviewed by Michael Saboff.
- runtime/JSObject.cpp:
(JSC::JSObject::visitButterfly):
(JSC::JSObject::visitChildren):
Use JSCell::structure(VM&) to reduce the number of hoops we jump
through to find Structures during marking.
- 11:19 AM Changeset in webkit [168630] by
-
- 4 edits in trunk/LayoutTests
fast/multicol/newmulticol/first-letter-create.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=132744
Reviewed by Antti Koivisto.
Modified test to not display anything as its only purpose is to ensure it doesn't crash.
- TestExpectations:
- fast/multicol/newmulticol/first-letter-create-expected.html:
- fast/multicol/newmulticol/first-letter-create.html:
- 11:18 AM Changeset in webkit [168629] by
-
- 2 edits in trunk/Source/WebKit2
WKWebView should default to _backgroundExtendsBeyondPage = YES
https://bugs.webkit.org/show_bug.cgi?id=132829
<rdar://problem/16886364>
Reviewed by Beth Dakin.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
- 11:12 AM Changeset in webkit [168628] by
-
- 6 edits in trunk/Source/WebKit2
Pass local storage directory to StorageManager::create
https://bugs.webkit.org/show_bug.cgi?id=132827
Reviewed by Tim Horton.
Since we know the local storage directory at creation time and we know it never changes,
we can get rid of setLocalStorageDirectory and just pass the local storage directory at creation time.
- UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
(WebKit::LocalStorageDatabaseTracker::create):
(WebKit::LocalStorageDatabaseTracker::LocalStorageDatabaseTracker):
(WebKit::LocalStorageDatabaseTracker::~LocalStorageDatabaseTracker):
(WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectory): Deleted.
(WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal): Deleted.
- UIProcess/Storage/LocalStorageDatabaseTracker.h:
- UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::create):
(WebKit::StorageManager::StorageManager):
(WebKit::StorageManager::setLocalStorageDirectory): Deleted.
- UIProcess/Storage/StorageManager.h:
- UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
- 11:08 AM Changeset in webkit [168627] by
-
- 5 edits in branches/safari-538.34-branch/Source
Versioning.
- 11:00 AM Changeset in webkit [168626] by
-
- 2 edits in trunk/Source/WebCore
WinCairo buildfix after r168611
https://bugs.webkit.org/show_bug.cgi?id=132825
Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-05-12
Reviewed by Darin Adler.
- platform/network/curl/CurlDownload.cpp:
(WebCore::CurlDownloadManager::downloadThread):
(WebCore::CurlDownload::didReceiveHeader):
(WebCore::CurlDownload::didReceiveData):
- 10:56 AM Changeset in webkit [168625] by
-
- 15 edits in trunk
Replace WKContextSetLocalStorageDirectory with a context configuration getter/setter
https://bugs.webkit.org/show_bug.cgi?id=132809
Reviewed by Dan Bernstein.
Source/WebKit2:
- UIProcess/API/C/WKContext.cpp:
(WKContextSetLocalStorageDirectory): Deleted.
- UIProcess/API/C/WKContextConfigurationRef.cpp:
(WKContextConfigurationCopyLocalStorageDirectory):
(WKContextConfigurationSetLocalStorageDirectory):
- UIProcess/API/C/WKContextConfigurationRef.h:
Add getters and setters for the local storage directory.
- UIProcess/API/C/WKContextPrivate.h:
Remove WKContextSetLocalStorageDirectory.
- UIProcess/API/Cocoa/WKProcessGroup.mm:
(-[WKProcessGroup initWithInjectedBundleURL:]):
Call WebContext::applyPlatformSpecificConfigurationDefaults.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _initWithConfiguration:]):
Call WebContext::applyPlatformSpecificConfigurationDefaults (for now).
- UIProcess/APIContextConfiguration.cpp:
(API::ContextConfiguration::webContextConfiguration):
Set the local storage. Also, call WebContext::applyPlatformSpecificConfigurationDefaults.
- UIProcess/APIContextConfiguration.h:
(API::ContextConfiguration::injectedBundlePath):
This should be const.
(API::ContextConfiguration::localStorageDirectory):
(API::ContextConfiguration::setLocalStorageDirectory):
Add getter and setter.
- UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::setLocalStorageDirectory):
ASSERT that the path isn't null.
- UIProcess/WebContext.cpp:
(WebKit::WebContext::applyPlatformSpecificConfigurationDefaults):
New helper function that will fill in platform specific defaults for empty parameters.
(WebKit::WebContext::WebContext):
Get the local storage directory from the configuration.
(WebKit::WebContext::setLocalStorageDirectory): Deleted.
(WebKit::WebContext::localStorageDirectory): Deleted.
These are no longer needed.
- UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformDefaultLocalStorageDirectory):
This should be a static member function.
Tools:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
Set the local storage directory using WKContextConfigurationSetLocalStorageDirectory.
- 10:56 AM Changeset in webkit [168624] by
-
- 3 edits2 adds in trunk
REGRESSION (r159560): Text clips on tile border if line-height < font-size
https://bugs.webkit.org/show_bug.cgi?id=132822
Reviewed by Andreas Kling.
Source/WebCore:
The first line of simple line layout run range was miscomputed.
Test: fast/text/simple-lines-range-low-line-height.html
- rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::RunResolver::lineIndexForHeight):
Lines may overlap if line-height < font-size. Apply different adjustment when searching for range begin
so that overflowing earlier lines are taken into account.
(WebCore::SimpleLineLayout::RunResolver::rangeForRect):
LayoutTests:
- fast/text/simple-lines-range-low-line-height-expected.html: Added.
- fast/text/simple-lines-range-low-line-height.html: Added.
- 9:04 AM Changeset in webkit [168623] by
-
- 2 edits in trunk/Source/WebKit2
Typo fix in generate-forwarding-headers
https://bugs.webkit.org/show_bug.cgi?id=132820
Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-12
Reviewed by Anders Carlsson.
- Scripts/generate-forwarding-headers.pl:
(collectFrameworkHeaderPaths):
- 9:00 AM Changeset in webkit [168622] by
-
- 18 edits in trunk/LayoutTests
[EFL] Rebaseline after adding tests in r168350
https://bugs.webkit.org/show_bug.cgi?id=132824
Unreviewed gardening.
Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-05-12
- platform/efl/TestExpectations:
- platform/efl/fast/multicol/client-rects-expected.txt:
- platform/efl/fast/multicol/client-rects-spanners-complex-expected.txt:
- platform/efl/fast/multicol/client-rects-spanners-expected.txt:
- platform/efl/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
- platform/efl/fast/multicol/span/span-margin-collapsing-expected.txt:
- platform/efl/svg/zoom/page/zoom-foreignObject-expected.txt:
- platform/efl/svg/zoom/page/zoom-svg-as-relative-image-expected.png:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
- platform/efl/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
- platform/efl/svg/zoom/text/zoom-foreignObject-expected.txt:
- 8:23 AM Changeset in webkit [168621] by
-
- 4 edits2 adds in trunk
Invalid information remaining in lineToRegion map of RenderFlowThread.
https://bugs.webkit.org/show_bug.cgi?id=132690
Reviewed by Antti Koivisto.
Source/WebCore:
Test: fast/multicol/newmulticol/lines-region-map-crash.html
- rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::deleteLines):
- rendering/RenderFlowThread.h:
LayoutTests:
Added test for crash caused by invalid information in the lineToRegion map.
- fast/multicol/newmulticol/lines-region-map-crash-expected.html: Added.
- fast/multicol/newmulticol/lines-region-map-crash.html: Added.
- 7:30 AM Changeset in webkit [168620] by
-
- 2 edits in trunk/Source/WebKit/efl
[EFL][WK1] Enable region based columns
https://bugs.webkit.org/show_bug.cgi?id=132646
Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-05-12
Reviewed by Gyuyoung Kim.
Enable new multi-column mode as it was enabled in WK2 (r168046).
- ewk/ewk_view.cpp:
(_ewk_view_priv_new):
- 5:48 AM Changeset in webkit [168619] by
-
- 2 edits in trunk/Source/WebKit2
[EFL] TLSErrors do not cause page load to fail when not ignored
https://bugs.webkit.org/show_bug.cgi?id=131104
Reviewed by Gyuyoung Kim.
Added EFL unit test for the bug https://bugs.webkit.org/show_bug.cgi?id=121548
- UIProcess/API/efl/tests/test_ewk2_ssl.cpp: Added new test: ewk_ssl_bad_cert_redirect_https_to_http
- 4:58 AM Changeset in webkit [168618] by
-
- 2 edits in trunk/Source/JavaScriptCore
[cmake] Add missing FTL source files to the build system.
Patch by László Langó <llango.u-szeged@partner.samsung.com> on 2014-05-12
Reviewed by Csaba Osztrogonác.
- CMakeLists.txt:
- 4:32 AM Changeset in webkit [168617] by
-
- 2 edits in trunk
Unreviewed. Bump version numbers.
- Source/cmake/OptionsGTK.cmake:
- 2:35 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 2:20 AM Changeset in webkit [168616] by
-
- 14 edits13 adds2 deletes in trunk/LayoutTests
[CSS Blending] Adjust blending pixel test expectations
https://bugs.webkit.org/show_bug.cgi?id=132737
Patch by Ion Rosca <Ion Rosca> on 2014-05-12
Reviewed by Mihnea Ovidenie.
Changing failing gif file with with one pixel base64 data and make them different for the two tests,
otherwise they might get cached and the gif animation is shared among multiple tests.
Changing the incorrect expectations for *gif-color-2* and adjusting test expectation for *gif-color-1*
- css3/blending/background-blend-mode-gif-color-2.html:
- css3/blending/background-blend-mode-gif-color.html:
- css3/blending/resources/squares.gif: Removed.
- platform/mac/css3/blending/background-blend-mode-gif-color-2-expected.png:
- platform/mac/css3/blending/background-blend-mode-gif-color-expected.png:
- platform/mac-wk1/TestExpectations:
The background-blend-mode-gif-color-2 does not pass on WK1: the git animation doesn't get started.
- platform/mac/TestExpectations: Adding bugs to the excepted blending tests.
Adjusting this test to avoid scrollbars. Adjusting test expectations.
- css3/blending/blend-mode-overflow-expected.txt: Removed.
- css3/blending/blend-mode-overflow.html:
- platform/mac/css3/blending/blend-mode-overflow-expected.png:
- platform/mac/css3/blending/blend-mode-overflow-expected.txt:
Adding pixel expectations for newly added tests:
- platform/mac/css3/blending/blend-mode-isolation-flags-append-non-stacking-context-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-append-stacking-context-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-turn-off-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-turn-off-blending-no-isolation-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-turn-off-stacking-context-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-turn-on-blending-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-flags-turn-on-stacking-context-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-turn-off-self-painting-layer-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-turn-off-self-painting-layer1-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-turn-off-self-painting-layer2-expected.png: Added.
- platform/mac/css3/blending/blend-mode-isolation-turn-on-self-painting-layer-expected.png: Added.
Adjusting pixel tests after removing non separable blend modes.
- platform/mac/css3/blending/blend-mode-simple-composited-expected.png:
- platform/mac/css3/blending/blend-mode-simple-expected.png:
- platform/mac/css3/blending/effect-background-blend-mode-expected.png:
- platform/mac/css3/blending/effect-background-blend-mode-tiled-expected.png:
- 1:57 AM Changeset in webkit [168615] by
-
- 3 edits in trunk/Tools
REGRESSION(CMAKE): [GTK] JavaScriptCore API tests are not built anymore
https://bugs.webkit.org/show_bug.cgi?id=132739
Reviewed Anders Carlsson.
- TestWebKitAPI/CMakeLists.txt: Add missing includes required by
the JSC unit tests.
- TestWebKitAPI/PlatformGTK.cmake: Bring back JavaScriptCore unit tests.
- 1:46 AM Changeset in webkit [168614] by
-
- 1 copy in releases/WebKitGTK/webkit-2.4.2
Tagging the WebKitGTK+ 2.4.2 release
- 1:02 AM Changeset in webkit [168613] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4
Unreviewed. Update NEWS and Versions.m4 for 2.4.2 release.
.:
- Source/autotools/Versions.m4: Bump version numbers.
Source/WebKit/gtk:
- NEWS: Added release notes for 2.4.2.
- 12:23 AM Changeset in webkit [168612] by
-
- 1 edit8 adds in trunk/Websites/webkit.org
Add potential illustrations for a potential future blog post about the viewport meta tag
- blog-files/simple-viewport-configuration: Added.
- blog-files/simple-viewport-configuration/860_viewport.html: Added.
- blog-files/simple-viewport-configuration/blog_with_viewport.png: Added.
- blog-files/simple-viewport-configuration/blog_without_viewport.png: Added.
- blog-files/simple-viewport-configuration/default_viewport.html: Added.
- blog-files/simple-viewport-configuration/horizontal_design.html: Added.
- blog-files/simple-viewport-configuration/inspector.png: Added.
- blog-files/simple-viewport-configuration/report_size.js: Added.
- 12:04 AM Changeset in webkit [168611] by
-
- 3 edits in trunk/Source/WebCore
Clean up MainThreadTask
https://bugs.webkit.org/show_bug.cgi?id=132799
Reviewed by Darin Adler.
Only have one simple MainThreadTask class that derives from std::function<void ()>.
Its templated constructor takes in the method and a variadic pack of parameters.
The cross-thread copies of the parameter are then bound to the given method through
std::bind(), with the resulting bind expression used to initialize the base
std::function<void ()> class.
The WebCore::callOnMainThread() functions and the helper classes are removed in favor
of passing MainThreadTask rvalues directly to WTF::callOnMainThread().
- fileapi/AsyncFileStream.cpp:
(WebCore::AsyncFileStream::startOnFileThread):
(WebCore::AsyncFileStream::stopOnFileThread):
(WebCore::AsyncFileStream::getSizeOnFileThread):
(WebCore::AsyncFileStream::openForReadOnFileThread):
(WebCore::AsyncFileStream::openForWriteOnFileThread):
(WebCore::AsyncFileStream::readOnFileThread):
(WebCore::AsyncFileStream::writeOnFileThread):
(WebCore::AsyncFileStream::truncateOnFileThread):
- platform/MainThreadTask.h:
(WebCore::MainThreadTask::MainThreadTask):
(WebCore::MainThreadTaskBase::MainThreadTaskBase): Deleted.
(WebCore::MainThreadTaskBase::~MainThreadTaskBase): Deleted.
(WebCore::MainThreadTask1::create): Deleted.
(WebCore::MainThreadTask1::MainThreadTask1): Deleted.
(WebCore::MainThreadTask2::create): Deleted.
(WebCore::MainThreadTask2::MainThreadTask2): Deleted.
(WebCore::MainThreadTask3::create): Deleted.
(WebCore::MainThreadTask3::MainThreadTask3): Deleted.
(WebCore::MainThreadTask4::create): Deleted.
(WebCore::MainThreadTask4::MainThreadTask4): Deleted.
(WebCore::MainThreadTask5::create): Deleted.
(WebCore::MainThreadTask5::MainThreadTask5): Deleted.
(WebCore::MainThreadTask6::create): Deleted.
(WebCore::MainThreadTask6::MainThreadTask6): Deleted.
(WebCore::MainThreadTask7::create): Deleted.
(WebCore::MainThreadTask7::MainThreadTask7): Deleted.
(WebCore::MainThreadTask8::create): Deleted.
(WebCore::MainThreadTask8::MainThreadTask8): Deleted.
(WebCore::executeMainThreadTask): Deleted.
(WebCore::callOnMainThread): Deleted.
- 12:01 AM Changeset in webkit [168610] by
-
- 6 edits1 delete in trunk/Source/WebCore
Simplify FileThread::Task usage
https://bugs.webkit.org/show_bug.cgi?id=132798
Reviewed by Darin Adler.
Remove the createFileThreadTask functions and the related FileThreadTask helper classes.
Instead, the FileThread::Task class now has a templated constructor that takes in a pointer
to the object instance, a method, and a variadic pack of parameters. The pointer and the
cross-thread copies of all the parameters are then bound to the given method through std::bind().
Instead of createFileThreadTask, std::make_unique<>() should be used to construct unique pointers
that wrap FileThread::Task objects.
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- fileapi/AsyncFileStream.cpp:
(WebCore::AsyncFileStream::create):
(WebCore::AsyncFileStream::stop):
(WebCore::AsyncFileStream::getSize):
(WebCore::AsyncFileStream::openForRead):
(WebCore::AsyncFileStream::openForWrite):
(WebCore::AsyncFileStream::close):
(WebCore::AsyncFileStream::read):
(WebCore::AsyncFileStream::write):
(WebCore::AsyncFileStream::truncate):
- fileapi/FileThread.h:
(WebCore::FileThread::Task::Task):
(WebCore::FileThread::Task::performTask):
(WebCore::FileThread::Task::~Task): Deleted.
- fileapi/FileThreadTask.h: Removed.
May 11, 2014:
- 11:30 PM Changeset in webkit [168609] by
-
- 3 edits in trunk/Source/WebKit2
Expose a function to copy favicon data without image conversion.
https://bugs.webkit.org/show_bug.cgi?id=132805
Patch by Gordon Sheridan <gordon_sheridan@apple.com> on 2014-05-11
Reviewed by Darin Adler.
- UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseCopyIconDataForPageURL):
Add a function to copy the data from the image of a favicon for an associated page url.
- UIProcess/API/C/WKIconDatabase.h:
Declare WKIconDatabaseCopyIconDataForPageURL.
- 11:21 PM Changeset in webkit [168608] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION(r168603): [GTK] Build broken.
https://bugs.webkit.org/show_bug.cgi?id=132810
Patch by Seongjun Kim <isAir@company100.com> on 2014-05-11
Reviewed by Carlos Garcia Campos.
- UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext):
Construct a WebContextConfiguration object and pass it to WebContext::create.
- 9:54 PM Changeset in webkit [168607] by
-
- 2 edits in trunk/Source/WebCore
Do not create a temporary string to append the SVGLength's unit
https://bugs.webkit.org/show_bug.cgi?id=132807
Reviewed by Geoffrey Garen.
- svg/SVGLength.cpp:
(WebCore::lengthTypeToString):
The caller just append the string to a number string. The function
lengthTypeToString() was creating a new WTF::String from scratch,
copied the characters to make a new string, and destroyed the WTF::String.
Instead, just append the string literal.
- 9:23 PM Changeset in webkit [168606] by
-
- 2 edits in trunk/Source/WebCore
CSS JIT: reduce cost of computing backtracking height
https://bugs.webkit.org/show_bug.cgi?id=132546
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-05-11
Reviewed by Benjamin Poulain.
Because compiler previously compute backtracking height for
previous child fragment, by leveraging this, we can limit the
maxPrefixSizeforcomputeBacktrackingHeightFromDescendant.
For example, consider selector "c>a>b>d>a>b e"'s descendant chain,
"c>a>b>d>a>b".
At the <a> position, we have matching pattern [b, a, d, b, a] and
calculate the backtracking height by following method.
pattern: [b, a, d, b, a]
candidate0: [b, a, d, b] => Not matched.
candidate1: [b, a, d] => Not matched.
candidate2: [b, a] => Matched against the pattern.
At this time, first candidate0's pattern size is
pattern.size() - 1.
And get backtracking height from descendant 3, that is
pattern.size() - candidate.size(),5 - 2.
And next, at the <c> position, we calcucate the backtracking height
for this pattern.
pattern: [b, a, d, b, a, c]
candidate0: [b, a, d, b, a] => Not matched.
candidate1: [b, a, d, b] => Not matched.
candidate2: [b, a, d] => Not matched.
candidate3: [b, a] => Not matched.
candidate4: [b] => Not matched.
candidate5: [] => Matched against the pattern.
Then, we get the backtracking height, which is 6 (6 - 0).
However, in the above case, we already know that attempts from candidate0
to candidate1 always fail, since parts of these are already tested at
the <b> position trial and we know they don't match.
So in this case, we should start this computation from candidate2,
such as,
pattern: [b, a, d, b, a, c]
candidate2: [b, a, d] => Not matched.
candidate3: [b, a] => Not matched.
candidate4: [b] => Not matched.
candidate5: [] => Matched against the pattern.
We can start computation with candidate size
pattern.size() - previousChildFragmentBacktrackingHeight.
In this example,pattern.size()is 6 and
previousChildFragmentBacktrackingHeightis 3, so candidate size is
3, that is candidate2.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::computeBacktrackingStartHeightFromDescendant):
(WebCore::SelectorCompiler::computeBacktrackingHeightFromDescendant):
- 5:08 PM Changeset in webkit [168605] by
-
- 5 edits in trunk/Source/WebKit2
Remove local storage directory and sandbox extension from WebProcessCreationParameters
https://bugs.webkit.org/show_bug.cgi?id=132808
Reviewed by Beth Dakin.
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
- 4:44 PM Changeset in webkit [168604] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed, CMake build fix after r168603
Add APIContextConfiguration.cpp and WKContextConfigurationRef.cpp to the source list.
- CMakeLists.txt:
- 3:12 PM Changeset in webkit [168603] by
-
- 13 edits4 adds in trunk
Add a WKContextConfigurationRef object and make the injected bundle path part of the configuration
https://bugs.webkit.org/show_bug.cgi?id=132806
Source/WebKit2:
<rdar://problem/16830143>
Reviewed by Beth Dakin.
Many setters on WKContextRef really only make sense to set early on, so move to a pattern where we create a
configuration object, a WKContextConfiguration which WKContexts can be created from. Add the injected bundle path
as a configuration property. More setters will follow.
- Shared/API/c/WKBase.h:
Add WKContextConfigurationRef.
- Shared/APIObject.h:
Add ContextConfiguration enum declaration.
- UIProcess/API/C/WKAPICast.h:
Handle WKContextConfigurationRef.
- UIProcess/API/C/WKContext.cpp:
(WKContextCreate):
Create an empty WKContextConfigurationRef object and pass it to WKContextCreateWithConfiguration.
(WKContextCreateWithInjectedBundlePath):
Create a WKContextConfigurationRef object, set its bundle path and pass the configuration to WKContextCreateWithConfiguration.
(WKContextCreateWithConfiguration):
Convert the WKContextConfigurationRef object to a WebContextConfiguration and pass it to WebContext::create.
- UIProcess/API/C/WKContext.h:
Add WKContextCreateWithConfiguration.
- UIProcess/API/C/WKContextConfigurationRef.cpp: Added.
(WKContextConfigurationCreate):
Create an API::ContextConfiguration object.
(WKContextConfigurationCopyInjectedBundlePath):
Return the injected bundle path.
(WKContextConfigurationSetInjectedBundlePath):
Set the injected bundle path.
- UIProcess/API/C/WKContextConfigurationRef.h: Added.
New C SPI header.
- UIProcess/API/Cocoa/WKProcessGroup.mm:
(-[WKProcessGroup initWithInjectedBundleURL:]):
Construct a WebContextConfiguration object and pass it to WebContext::Create.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _initWithConfiguration:]):
Construct a WebContextConfiguration object and pass it to WebContext::Create.
- UIProcess/APIContextConfiguration.cpp: Added.
New API::ContextConfiguration object.
(API::ContextConfiguration::webContextConfiguration):
Construct a WebContextConfiguration struct from our current configuration.
- UIProcess/APIContextConfiguration.h: Added.
- UIProcess/WebContext.cpp:
(WebKit::WebContext::create):
Pass the WebContextConfiguration to the constructor.
(WebKit::WebContext::WebContext):
Set the injected bundle path from the WebContextConfiguration object.
- UIProcess/WebContext.h:
Change the WebContext constructor and create function to take a WebContextConfiguration object.
- WebKit2.xcodeproj/project.pbxproj:
Add new files.
Tools:
Reviewed by Beth Dakin.
Migrate to WKContextConfiguration.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
- 2:02 PM Changeset in webkit [168602] by
-
- 7 edits in trunk/Source/WebCore
Headers and footers are not positioned correctly with topContentInset
https://bugs.webkit.org/show_bug.cgi?id=132787
-and corresponding-
<rdar://problem/16641115>
Reviewed by Tim Horton.
Headers and footers need to take the inset into account, and they also need to
factor in the fact that the root layer moves around now too.
The existing yPositionForRootContentLayer() is actually the right calculation for
the header layer. The root content layer wants that value, but pushed down by the
header height. Now there are static functions for both of them and the footer to
avoid duplicated code in the three spots where we need this information.
- page/FrameView.cpp:
(WebCore::FrameView::yPositionForHeaderLayer):
(WebCore::FrameView::yPositionForRootContentLayer):
(WebCore::FrameView::yPositionForFooterLayer):
- page/FrameView.h:
Use the static functions to compute the layer positions.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
How did headers ever work with this bug?? I don’t know. We need to return that
layer.
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::headerLayerForFrameView):
Use the static functions to compute the layer positions.
- page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
(WebCore::RenderLayerCompositor::updateLayerForHeader):
(WebCore::RenderLayerCompositor::updateLayerForFooter):
- 12:46 PM Changeset in webkit [168601] by
-
- 16 edits in trunk/Source/WebCore
Subpixel rendering[iOS]: <select> decoration is misaligned when the renderer is on subpixel position.
https://bugs.webkit.org/show_bug.cgi?id=132779
<rdar://problem/16631071>
Reviewed by Simon Fraser.
Push <select> theme decoration's rect to device pixel position to ensure
that the theme bounds are aligned with the renderer's bounds. (in painting terms)
However, as the decoration code paints multiple items, they all need to use snapped
final coordinates for painting : tracked here https://bugs.webkit.org/show_bug.cgi?id=132780
This patch also changes the padding values for <select> [iOS] to compensate for the integer
truncation that happened before subpixel.
Not testable.
- css/html.css:
(select):
- platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::paintMenuListButtonDecorations):
- platform/efl/RenderThemeEfl.h:
- platform/gtk/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::paintMenuListButtonDecorations):
- platform/gtk/RenderThemeGtk.h:
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paintDecorations):
- rendering/RenderTheme.h:
(WebCore::RenderTheme::paintMenuListButtonDecorations):
- rendering/RenderThemeIOS.h:
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
- rendering/RenderThemeMac.h:
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintMenuListButtonDecorations):
- rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::paintMenuListButtonDecorations):
- rendering/RenderThemeSafari.h:
- rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::paintMenuList):
(WebCore::RenderThemeWin::paintMenuListButtonDecorations):
- rendering/RenderThemeWin.h:
- 12:10 PM Changeset in webkit [168600] by
-
- 20 edits in trunk/Source/WebCore
Move Source/WebCore/workers/ code to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=132401
Reviewed by Darin Adler.
Replace uses of OwnPtr and PassOwnPtr in code under Source/WebCore/workers (and related places)
with std::unique_ptr.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::setTimeout):
(WebCore::JSDOMWindow::setInterval):
- bindings/js/JSWorkerGlobalScopeCustom.cpp:
(WebCore::JSWorkerGlobalScope::setTimeout):
(WebCore::JSWorkerGlobalScope::setInterval):
- bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::create):
- bindings/js/ScheduledAction.h:
- page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):
(WebCore::DOMTimer::didStop):
- page/DOMTimer.h:
- page/DOMWindow.cpp:
(WebCore::DOMWindow::setTimeout):
(WebCore::DOMWindow::setInterval):
- page/DOMWindow.h:
- workers/WorkerEventQueue.h:
- workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::WorkerGlobalScope):
(WebCore::WorkerGlobalScope::setTimeout):
(WebCore::WorkerGlobalScope::setInterval):
- workers/WorkerGlobalScope.h:
(WebCore::WorkerGlobalScope::clearScript):
- workers/WorkerLoaderProxy.h:
- workers/WorkerMessagingProxy.h:
- workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::WorkerRunLoop):
- workers/WorkerRunLoop.h:
- workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::loadSynchronously):
(WebCore::WorkerScriptLoader::loadAsynchronously):
(WebCore::WorkerScriptLoader::createResourceRequest):
- workers/WorkerScriptLoader.h:
- workers/WorkerThread.cpp:
(WebCore::WorkerThread::WorkerThread):
(WebCore::WorkerThread::workerThread):
(WebCore::WorkerThreadStartupData::create): Deleted.
- workers/WorkerThread.h:
- 10:35 AM Changeset in webkit [168599] by
-
- 6 edits in trunk
[Mac] [iOS] Underlines are too low
https://bugs.webkit.org/show_bug.cgi?id=132770
Reviewed by Darin Adler.
Source/WebCore:
computeUnderlineOffset() inside InlineTextBox.cpp lowers underlines from text
baseline by a value that is proportional to the font size. However, this
lowering was done a second time in
GraphicsContext::computeLineBoundsAndAntialiasingModeForText(). This patch
removes this second, platform-dependent lowering.
This duplication was caused by merging iOS into open source, where iOS used
the GraphicsContext approach and open source used the InlineTextBox approach.
Covered by fast/css3-text/css3-text-decoration/text-decoration-thickness.html.
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::computeLineBoundsAndAntialiasingModeForText): Remove
redundant lowering code
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDecoration): Clean up textDecorationThickness
variable
LayoutTests:
See per-file descriptions.
- fast/css3-text/css3-text-decoration/text-decoration-style-double-space-scales.html: Made
test more robust so it does not barely clip underlines, but rather gives them a couple
pixels of wiggle room.
- fast/css3-text/css3-text-decoration/text-decoration-thickness.html: Not only does this test
underline thickness, but it also tests underline position. Updated this test to not expect
incorrect results.
- 2:42 AM Changeset in webkit [168598] by
-
- 5 edits4 adds in trunk
Text with simple line layout not getting pushed below float when there is not enough space for it
https://bugs.webkit.org/show_bug.cgi?id=126991
Reviewed by Andreas Kling.
Source/WebCore:
Tests: fast/text/simple-lines-intruding-wide-float-dynamic.html
fast/text/simple-lines-intruding-wide-float.html
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::markLinesDirtyInBlockRange):
Invalidate the line layout path when floats change. We need to check SimpleLineLayout::canUseFor again as
intruding floats may make this flow ineligible to use the path.
- rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::floatingObjectSet):
- rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):
Test the top positions of all floats for case that would push text below the float instead of just testing
the first line. We may have floats in the middle of the paragraph too.
LayoutTests:
- fast/text/simple-lines-intruding-wide-float-dynamic-expected.html: Added.
- fast/text/simple-lines-intruding-wide-float-dynamic.html: Added.
- fast/text/simple-lines-intruding-wide-float-expected.html: Added.
- fast/text/simple-lines-intruding-wide-float.html: Added.
- 12:47 AM WebKitGTK/2.4.x edited by
- (diff)
- 12:47 AM Changeset in webkit [168597] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4/Source
Merge r168523 - jsmin.py license header confusing, mentions non-free license
https://bugs.webkit.org/show_bug.cgi?id=123665
Reviewed by Darin Adler.
Pull the most recent version from upstream, which has a clear
license.
Source/JavaScriptCore:
- inspector/scripts/jsmin.py:
Source/WebInspectorUI:
- Scripts/jsmin.py:
- 12:01 AM Changeset in webkit [168596] by
-
- 4 edits in trunk/Source/WebCore
WinCairo crashes on acid3 test
https://bugs.webkit.org/show_bug.cgi?id=131364
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-05-11
Reviewed by Brent Fulgham.
When the 304 (Not-modified) response is received, the Curl backend should look up the cached response,
and call the client method didReceiveResponse with the cached response, instead of the 304 response.
Otherwise the response will contain an empty MIME type, which causes the request to be cancelled, and the client deleted.
When the Curl cache manager then accesses the client afterwards, it is deleted, and we crash.
- platform/network/curl/CurlCacheManager.cpp:
(WebCore::CurlCacheManager::didReceiveResponse): Return early if request is cancelled.
(WebCore::CurlCacheManager::getCachedResponse): Added method to get cached response.
- platform/network/curl/CurlCacheManager.h: Ditto.
- platform/network/curl/ResourceHandleManager.cpp:
(WebCore::headerCallback): When 304 response is received, look up cached response, and use it.