Subpixel rendering: Make GraphicsLayer's offsetFromRenderer subpixel position based.
https://bugs.webkit.org/show_bug.cgi?id=128694

Reviewed by Simon Fraser.

Changing layers from using integral types to using Float/LayoutUnits so that
we can position them on subpixels. They are still integral positioned though.

Covered by existing tests.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::setOffsetFromRenderer):
(WebCore::GraphicsLayer::paintGraphicsLayerContents):
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::offsetFromRenderer): removed incorrect comment.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::computeTransformOrigin):
(WebCore::RenderLayerBacking::computePerspectiveOrigin):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresOwnBackingStore):
* rendering/RenderLayerCompositor.h:
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderRegion.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164415 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix after r164396

* GNUmakefile.list.am: Added Promises.prototype.js properly

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164416 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG should have a way of carrying and preserving conditional branch weights
https://bugs.webkit.org/show_bug.cgi?id=129083

Reviewed by Michael Saboff.
        
Branch and Switch now have branch counts/weights for each target. This is encapsulated
behind DFG::BranchTarget. We carry this data all the way to the FTL, and the DFG
backend ignores it.
        
We don't set this data yet; that's for https://bugs.webkit.org/show_bug.cgi?id=129055.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::branchData):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::linkBlock):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGGraph.h:
* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::mergeToSuccessors):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGNode.cpp:
(JSC::DFG::BranchTarget::dump):
* dfg/DFGNode.h:
(JSC::DFG::BranchTarget::BranchTarget):
(JSC::DFG::BranchTarget::setBytecodeIndex):
(JSC::DFG::BranchTarget::bytecodeIndex):
(JSC::DFG::BranchData::withBytecodeIndices):
(JSC::DFG::BranchData::takenBytecodeIndex):
(JSC::DFG::BranchData::notTakenBytecodeIndex):
(JSC::DFG::BranchData::forCondition):
(JSC::DFG::SwitchCase::SwitchCase):
(JSC::DFG::SwitchCase::withBytecodeIndex):
(JSC::DFG::SwitchData::SwitchData):
(JSC::DFG::Node::targetBytecodeOffsetDuringParsing):
(JSC::DFG::Node::targetBlock):
(JSC::DFG::Node::branchData):
(JSC::DFG::Node::successor):
(JSC::DFG::Node::successorForCondition):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBooleanBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleInt32Branch):
(JSC::DFG::SpeculativeJIT::compileStrictEqForConstant):
(JSC::DFG::SpeculativeJIT::compileRegExpExec):
(JSC::DFG::SpeculativeJIT::emitSwitchIntJump):
(JSC::DFG::SpeculativeJIT::emitSwitchImm):
(JSC::DFG::SpeculativeJIT::emitSwitchCharStringJump):
(JSC::DFG::SpeculativeJIT::emitSwitchChar):
(JSC::DFG::SpeculativeJIT::emitBinarySwitchStringRecurse):
(JSC::DFG::SpeculativeJIT::emitSwitchStringOnString):
(JSC::DFG::SpeculativeJIT::emitSwitchString):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleInt52Branch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileJump):
(JSC::FTL::LowerDFGToLLVM::compileBranch):
(JSC::FTL::LowerDFGToLLVM::compileSwitch):
(JSC::FTL::LowerDFGToLLVM::buildSwitch):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement the MathML Operator Dictionary.
https://bugs.webkit.org/show_bug.cgi?id=99620

Reviewed by Chris Fleizach.

Source/WebCore:

The MathML Operator Dictionary is implemented and the corresponding mo
attributes are parsed. Currently, only the stretchy property is used for
the visual rendering and the fence/separators properties are used by the
accessibility code. Very basic heuristics to determine the form are also
added.

Tests: mathml/presentation/mo-form-fallback.html
       mathml/presentation/mo-form-stretchy.html
       mathml/presentation/mo-invalid-attributes.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isMathFenceOperator):
(WebCore::AccessibilityRenderObject::isMathSeparatorOperator):
* mathml/mathattrs.in:
* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::createMathMLOperator):
(WebCore::RenderMathMLFenced::makeFences):
(WebCore::RenderMathMLFenced::addChild):
* rendering/mathml/RenderMathMLFenced.h:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::MathMLOperatorDictionary::ExtractKey):
(WebCore::MathMLOperatorDictionary::ExtractChar):
(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::setOperatorFlagFromAttribute):
(WebCore::RenderMathMLOperator::setOperatorPropertiesFromOpDictEntry):
(WebCore::RenderMathMLOperator::SetOperatorProperties):
(WebCore::RenderMathMLOperator::advanceForCharacter):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::shouldAllowStretching):
(WebCore::RenderMathMLOperator::updateStyle):
* rendering/mathml/RenderMathMLOperator.h:

LayoutTests:

* mathml/presentation/mo-form-fallback-expected.html: Added.
* mathml/presentation/mo-form-fallback.html: Added.
* mathml/presentation/mo-form-stretchy-expected.html: Added.
* mathml/presentation/mo-form-stretchy.html: Added.
* mathml/presentation/mo-invalid-attributes-expected.html: Added.
* mathml/presentation/mo-invalid-attributes.html: Added.
* mathml/presentation/mo-stretch.html: add an explicit stretchy attribute on the &DoubleVerticalBar; which is actually not a delimiter.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164418 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions] Add helper method for region clipping flow content
https://bugs.webkit.org/show_bug.cgi?id=129036

Reviewed by Andrei Bucur.

Add helper method to test whether a region should clip the flow thread content
and use it thoughout the code.
Code refactoring, no functionality change, no new tests.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
(WebCore::RenderRegion::shouldClipFlowThreadContent):
(WebCore::RenderRegion::rectFlowPortionForBox):
* rendering/RenderRegion.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164419 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move to using std::unique_ptr for Document and related classes
https://bugs.webkit.org/show_bug.cgi?id=129063

Reviewed by Anders Carlsson.

Replace uses of OwnPtr and PassOwnPtr in the Document and related classes with std::unique_ptr.

* dom/DOMImplementation.h:
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::removedLastRef):
(WebCore::Document::selectorQueryCache):
(WebCore::Document::implementation):
(WebCore::Document::formController):
(WebCore::Document::createStyleResolver):
(WebCore::Document::clearStyleResolver):
(WebCore::Document::clearAXObjectCache):
(WebCore::Document::axObjectCache):
(WebCore::Document::setParsing):
(WebCore::Document::styleResolverChanged):
(WebCore::Document::setTransformSource):
(WebCore::Document::accessSVGExtensions):
(WebCore::Document::sharedObjectPoolClearTimerFired):
(WebCore::Document::didAddTouchEventHandler):
* dom/Document.h:
* dom/DocumentEventQueue.cpp:
(WebCore::DocumentEventQueue::DocumentEventQueue):
* dom/DocumentEventQueue.h:
* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
* dom/DocumentMarkerController.h:
* dom/DocumentSharedObjectPool.cpp:
* dom/DocumentSharedObjectPool.h:
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::activeStyleSheetsContains):
* dom/DocumentStyleSheetCollection.h:
* dom/DocumentType.h:
* html/FormController.h:
* rendering/TextAutosizer.h:
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::doEnd):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164420 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move to using std::unique_ptr for EventListenerMap, EventTarget
https://bugs.webkit.org/show_bug.cgi?id=129062

Reviewed by Andreas Kling.

Replace uses of OwnPtr and PassOwnPtr in the EventListenerMap and
EventTarget classes with std::unique_ptr.

* dom/EventListenerMap.cpp:
(WebCore::EventListenerMap::add):
* dom/EventListenerMap.h:
* dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
* dom/EventTarget.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164421 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move to using std::unique_ptr for KeyboardEvent, ScriptExecutionContext::PendingException
https://bugs.webkit.org/show_bug.cgi?id=129061

Reviewed by Andreas Kling.

Replace uses of OwnPtr and PassOwnPtr for KeyboardEvent and ScriptExecutionContext::PendingException
classes with std::unique_ptr. ScriptExecutionContext::Task objects are still handled through OwnPtr,
but this will be addressed later.

* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::KeyboardEvent):
* dom/KeyboardEvent.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::reportException):
(WebCore::ScriptExecutionContext::publicURLManager):
* dom/ScriptExecutionContext.h:
* dom/ScriptRunner.h: Remove an unnecessary PassOwnPtr header inclusion.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164422 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Children Nodes for Canvas objects are not equal to Render Objects.
https://bugs.webkit.org/show_bug.cgi?id=123568

Patch by Artur Moryc <a.moryc@samsung.com> on 2014-02-20
Reviewed by Chris Fleizach.

Source/WebCore:

There is a difference in children nodes taken into account for RenderObject
and for NodeObject types. There is a problem with text nodes that are
focusable for EFL/GTK and therefore are not filtered out in the test like it
happens for the MAC port. Text nodes are eliminated in the
AccessibilityRenderObject::computeAccessibilityIsIgnored() method. The same
approach has been applied to the NodeObject to eliminate text nodes.

Covered by existing tests.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::computeAccessibilityIsIgnored):

LayoutTests:

The canvas-accessibilitynodeobject.html test is not failing anymore.

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of redundant Platform.h includes
https://bugs.webkit.org/show_bug.cgi?id=128817

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

* API/tests/JSNode.c:
* API/tests/JSNodeList.c:
* API/tests/minidom.c:
* API/tests/testapi.c:
* assembler/MacroAssembler.h:
* bytecode/ByValInfo.h:
* bytecode/CallLinkInfo.h:
* bytecode/CallReturnOffsetToBytecodeOffset.h:
* bytecode/CodeType.h:
* bytecode/HandlerInfo.h:
* bytecode/MethodOfGettingAValueProfile.h:
* bytecode/PolymorphicAccessStructureList.h:
* bytecode/PolymorphicPutByIdList.h:
* bytecode/StructureStubClearingWatchpoint.h:
* bytecode/StructureStubInfo.h:
* bytecode/ValueRecovery.h:
* bytecode/VirtualRegister.h:
* dfg/DFGAbstractHeap.h:
* dfg/DFGAbstractInterpreter.h:
* dfg/DFGAbstractInterpreterInlines.h:
* dfg/DFGAbstractValue.h:
* dfg/DFGAdjacencyList.h:
* dfg/DFGAllocator.h:
* dfg/DFGAnalysis.h:
* dfg/DFGArgumentsSimplificationPhase.h:
* dfg/DFGArrayMode.h:
* dfg/DFGArrayifySlowPathGenerator.h:
* dfg/DFGAtTailAbstractState.h:
* dfg/DFGBackwardsPropagationPhase.h:
* dfg/DFGBinarySwitch.h:
* dfg/DFGBlockInsertionSet.h:
* dfg/DFGBranchDirection.h:
* dfg/DFGCFAPhase.h:
* dfg/DFGCFGSimplificationPhase.h:
* dfg/DFGCPSRethreadingPhase.h:
* dfg/DFGCSEPhase.h:
* dfg/DFGCallArrayAllocatorSlowPathGenerator.h:
* dfg/DFGCapabilities.h:
* dfg/DFGClobberSet.h:
* dfg/DFGClobberize.h:
* dfg/DFGCommon.h:
* dfg/DFGCommonData.h:
* dfg/DFGConstantFoldingPhase.h:
* dfg/DFGCriticalEdgeBreakingPhase.h:
* dfg/DFGDCEPhase.h:
* dfg/DFGDesiredIdentifiers.h:
* dfg/DFGDesiredStructureChains.h:
* dfg/DFGDesiredWatchpoints.h:
* dfg/DFGDisassembler.h:
* dfg/DFGDominators.h:
* dfg/DFGDriver.h:
* dfg/DFGEdge.h:
* dfg/DFGEdgeDominates.h:
* dfg/DFGEdgeUsesStructure.h:
* dfg/DFGFailedFinalizer.h:
* dfg/DFGFiltrationResult.h:
* dfg/DFGFinalizer.h:
* dfg/DFGFixupPhase.h:
* dfg/DFGFlushFormat.h:
* dfg/DFGFlushLivenessAnalysisPhase.h:
* dfg/DFGFlushedAt.h:
* dfg/DFGGraph.h:
* dfg/DFGInPlaceAbstractState.h:
* dfg/DFGInsertionSet.h:
* dfg/DFGInvalidationPointInjectionPhase.h:
* dfg/DFGJITCode.h:
* dfg/DFGJITFinalizer.h:
* dfg/DFGLICMPhase.h:
* dfg/DFGLazyJSValue.h:
* dfg/DFGLivenessAnalysisPhase.h:
* dfg/DFGLongLivedState.h:
* dfg/DFGLoopPreHeaderCreationPhase.h:
* dfg/DFGMinifiedGraph.h:
* dfg/DFGMinifiedID.h:
* dfg/DFGMinifiedNode.h:
* dfg/DFGNaturalLoops.h:
* dfg/DFGNode.h:
* dfg/DFGNodeAllocator.h:
* dfg/DFGNodeFlags.h:
* dfg/DFGNodeType.h:
* dfg/DFGOSRAvailabilityAnalysisPhase.h:
* dfg/DFGOSREntrypointCreationPhase.h:
* dfg/DFGOSRExit.h:
* dfg/DFGOSRExitBase.h:
* dfg/DFGOSRExitCompilationInfo.h:
* dfg/DFGOSRExitCompiler.h:
* dfg/DFGOSRExitCompilerCommon.h:
* dfg/DFGOSRExitJumpPlaceholder.h:
* dfg/DFGPhase.h:
* dfg/DFGPlan.h:
* dfg/DFGPredictionInjectionPhase.h:
* dfg/DFGPredictionPropagationPhase.h:
* dfg/DFGResurrectionForValidationPhase.h:
* dfg/DFGSSAConversionPhase.h:
* dfg/DFGSafeToExecute.h:
* dfg/DFGSaneStringGetByValSlowPathGenerator.h:
* dfg/DFGSilentRegisterSavePlan.h:
* dfg/DFGSlowPathGenerator.h:
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGStackLayoutPhase.h:
* dfg/DFGStructureAbstractValue.h:
* dfg/DFGThunks.h:
* dfg/DFGTierUpCheckInjectionPhase.h:
* dfg/DFGToFTLDeferredCompilationCallback.h:
* dfg/DFGToFTLForOSREntryDeferredCompilationCallback.h:
* dfg/DFGTypeCheckHoistingPhase.h:
* dfg/DFGUnificationPhase.h:
* dfg/DFGUseKind.h:
* dfg/DFGValidate.h:
* dfg/DFGValueRecoveryOverride.h:
* dfg/DFGValueSource.h:
* dfg/DFGVariableAccessData.h:
* dfg/DFGVariableAccessDataDump.h:
* dfg/DFGVariableEvent.h:
* dfg/DFGVariableEventStream.h:
* dfg/DFGVirtualRegisterAllocationPhase.h:
* dfg/DFGWatchpointCollectionPhase.h:
* dfg/DFGWorklist.h:
* disassembler/Disassembler.h:
* ftl/FTLAbbreviatedTypes.h:
* ftl/FTLAbbreviations.h:
* ftl/FTLAbstractHeap.h:
* ftl/FTLAbstractHeapRepository.h:
* ftl/FTLCapabilities.h:
* ftl/FTLCommonValues.h:
* ftl/FTLCompile.h:
* ftl/FTLExitArgument.h:
* ftl/FTLExitArgumentForOperand.h:
* ftl/FTLExitArgumentList.h:
* ftl/FTLExitThunkGenerator.h:
* ftl/FTLExitValue.h:
* ftl/FTLFail.h:
* ftl/FTLForOSREntryJITCode.h:
* ftl/FTLFormattedValue.h:
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLJITCode.h:
* ftl/FTLJITFinalizer.h:
* ftl/FTLLink.h:
* ftl/FTLLocation.h:
* ftl/FTLLowerDFGToLLVM.h:
* ftl/FTLLoweredNodeValue.h:
* ftl/FTLOSREntry.h:
* ftl/FTLOSRExit.h:
* ftl/FTLOSRExitCompilationInfo.h:
* ftl/FTLOSRExitCompiler.h:
* ftl/FTLOutput.h:
* ftl/FTLSaveRestore.h:
* ftl/FTLStackMaps.h:
* ftl/FTLState.h:
* ftl/FTLSwitchCase.h:
* ftl/FTLThunks.h:
* ftl/FTLTypedPointer.h:
* ftl/FTLValueFormat.h:
* ftl/FTLValueFromBlock.h:
* heap/JITStubRoutineSet.h:
* interpreter/AbstractPC.h:
* jit/AssemblyHelpers.h:
* jit/CCallHelpers.h:
* jit/ClosureCallStubRoutine.h:
* jit/GCAwareJITStubRoutine.h:
* jit/HostCallReturnValue.h:
* jit/JITDisassembler.h:
* jit/JITStubRoutine.h:
* jit/JITThunks.h:
* jit/JITToDFGDeferredCompilationCallback.h:
* jit/RegisterSet.h:
* jit/Repatch.h:
* jit/ScratchRegisterAllocator.h:
* jit/TempRegisterSet.h:
* jit/ThunkGenerator.h:
* llint/LLIntData.h:
* llint/LLIntEntrypoint.h:
* llint/LLIntExceptions.h:
* llint/LLIntOfflineAsmConfig.h:
* llint/LLIntOpcode.h:
* llint/LLIntSlowPaths.h:
* llint/LLIntThunks.h:
* llint/LowLevelInterpreter.h:
* llvm/InitializeLLVM.h:
* llvm/InitializeLLVMPOSIX.h:
* llvm/LLVMAPI.h:
* os-win32/inttypes.h:
* runtime/ArrayStorage.h:
* runtime/Butterfly.h:
* runtime/CommonSlowPaths.h:
* runtime/CommonSlowPathsExceptions.h:
* runtime/IndexingHeader.h:
* runtime/JSExportMacros.h:
* runtime/PropertyOffset.h:
* runtime/SparseArrayValueMap.h:

Source/WebKit/win:

* WebDownloadCFNet.cpp:
* WebDownloadCurl.cpp:
* WebURLResponse.cpp:

Source/WebKit2:

* config.h:

Source/WTF:

* wtf/Assertions.h:
* wtf/Atomics.h:
* wtf/ByteOrder.h:
* wtf/DataLog.h:
* wtf/DisallowCType.h:
* wtf/DynamicAnnotations.h:
* wtf/ExportMacros.h:
* wtf/FastMalloc.h:
* wtf/FlipBytes.h:
* wtf/InlineASM.h:
* wtf/PrintStream.h:
* wtf/ProcessID.h:
* wtf/Threading.h:
* wtf/ThreadingPrimitives.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move to using std::unique_ptr for VisitedLinkState, CheckedRadioButtons
https://bugs.webkit.org/show_bug.cgi?id=128967

Reviewed by Andreas Kling.

Replace uses of OwnPtr and PassOwnPtr in the VisitedLinkState and
CheckedRadioButtons classes with std::unique_ptr.

* dom/CheckedRadioButtons.cpp:
(WebCore::RadioButtonGroup::RadioButtonGroup):
(WebCore::RadioButtonGroup::remove):
(WebCore::CheckedRadioButtons::addButton):
(WebCore::CheckedRadioButtons::removeButton):
* dom/CheckedRadioButtons.h:
* dom/Document.cpp:
(WebCore::Document::Document):
* dom/Document.h:
* dom/VisitedLinkState.cpp:
* dom/VisitedLinkState.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r164422.
http://trac.webkit.org/changeset/164422
https://bugs.webkit.org/show_bug.cgi?id=129102

Causes assertions in
ScriptExecutionContext::canSuspendActiveDOMObjects()
(Requested by zdobersek on #webkit).

* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::KeyboardEvent):
* dom/KeyboardEvent.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::reportException):
(WebCore::ScriptExecutionContext::publicURLManager):
* dom/ScriptExecutionContext.h:
* dom/ScriptRunner.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed EFL gardening

Add tests expectations for failing tests and remove ones for
passing tests after r163645, r163614, r164145.

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164427 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Use auto to reduce some code in loops
https://bugs.webkit.org/show_bug.cgi?id=129087

Reviewed by Chris Fleizach.

Use auto where appropriate to reduce some code.

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::boundingBoxForQuads):
(WebCore::AccessibilityObject::ariaRoleToWebCoreRole):
* accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
(webkitAccessibleHypertextGetNLinks):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164428 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: clicking on a color swatch in the Computed styles tab shouldn't show the color editing popover
https://bugs.webkit.org/show_bug.cgi?id=129093

Reviewed by Timothy Hatcher.

If the current editor is read-only, only allow cycling between color types since it wouldn't make sense to edit
such colors.

* UserInterface/CSSStyleDeclarationTextEditor.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add StackStats sources to cmake and autotools build files
https://bugs.webkit.org/show_bug.cgi?id=129103

Reviewed by Anders Carlsson.

* GNUmakefile.list.am:
* wtf/CMakeLists.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164430 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: content using a CSS transition within a popover causes the popover to disappear
https://bugs.webkit.org/show_bug.cgi?id=129089

Reviewed by Timothy Hatcher.

Simply check that the element being transitioned is indeed the popover's container before assuming
that the "transitonend" received was for a fade-out transition.

* UserInterface/Popover.js:
(WebInspector.Popover.prototype.handleEvent):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Popover should animate its frame to display its refreshed content
https://bugs.webkit.org/show_bug.cgi?id=129088

Reviewed by Timothy Hatcher.

When calling .update(), we now check whether we can animate the change of frame provided the
new computed frame to best fit the current content still matches the edge the popover uses
to attach to the target frame. If we find that we can do so, we animate the background frame
of the popover while ensuring the anchor point remains stable during the animation such that
only the popover's frame seems to animate.

* UserInterface/Geometry.js:
(WebInspector.Rect.prototype.round):
Returns a new Rect with rounded values, using a floor for the position and a ceil for the size.

* UserInterface/Main.html:
Link to the new UnitBezier.js source file.

* UserInterface/Popover.js:
(WebInspector.Popover):
Make ._anchorPoint an ivar such that we don't need to pass a reference to the anchorPoint into
the various calls leading to an update of the popover's background drawing.

(WebInspector.Popover.prototype.set frame):
We no longer round the values of the frame here, instead calling the new .round() method on Rect
in places where we compute a new frame.

(WebInspector.Popover.prototype.set content):
(WebInspector.Popover.prototype.update):
Update the calls to ._update() to set the new shouldAnimate flag to true in situations where the
popover is already visible.

(WebInspector.Popover.prototype._update):
In the situation where there is a preference to animate the frame, as set by the new shouldAnimate
parameter, check that we can indeed animate by ensuring that the edge the popover uses to attach to
the target frame remains the same upon computing the new best metrics for the new content size. If
we can indeed animate, call _animateFrame(), otherwise set the new frame, anchor point and frame
drawing discretely like we used to.

(WebInspector.Popover.prototype._setAnchorPoint):
New method to ensure we floor the position of the anchor point to ensure, when animating, that the
anchor point remains stationary.

(WebInspector.Popover.prototype._animateFrame):
Using the new UnitBezier class, animate the popover frame from its previous value to its newly computed
value while ensuring the anchor point remains, at all times, the same absolute position such that it
remains stationary during the animation. The spline used to animate the frame is the same that a CSS
transition set with an "ease" timing-function (default value) would use.

(WebInspector.Popover.prototype._drawBackground):
(WebInspector.Popover.prototype._drawFrame):
Adopt new ._edge and ._anchorPoint ivars.

* UserInterface/UnitBezier.js: Added.
New class used to perform animations using a timing function specified with a cubic Bézier curve. The code
is directly adapted from the Source/WebCore/platform/graphics/UnitBezier.h file.

(WebInspector.UnitBezier):
(WebInspector.UnitBezier.prototype.solve):
(WebInspector.UnitBezier.prototype._sampleCurveX):
(WebInspector.UnitBezier.prototype._sampleCurveY):
(WebInspector.UnitBezier.prototype._sampleCurveDerivativeX):
(WebInspector.UnitBezier.prototype._solveCurveX):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ASSERTION FAILED: isUInt16() on ARMv7 after r113253.
https://bugs.webkit.org/show_bug.cgi?id=129101

Reviewed by Michael Saboff.

If the immediate value type is encoded then we shouldn't reach this assert.
Check the immediate type to avoid assertion in alignemnt check.

* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::add):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164433 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[ASan] WebKit1 sources are not compiled using ASAN macros
<http://webkit.org/b/128871>

Reviewed by Brent Fulgham.

* Configurations/WebKit.xcconfig: Use $inherited for
OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS so that ASAN_OTHER_CFLAGS
and ASAN_OTHER_CPLUSPLUSFLAGS are inherited from
DebugRelease.xcconfig.


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