Timeline



Jul 23, 2013:

9:54 PM Changeset in webkit [153077] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-537-branch

Merged r153072. <rdar://problem/14324895>

9:52 PM Changeset in webkit [153076] by Lucas Forschler
  • 6 edits in branches/safari-537-branch/Source/WebKit2

Merged r153070. <rdar://problem/14223830>

9:51 PM Changeset in webkit [153075] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG string concatenation optimizations might emit speculative nodes after emitting nodes that kill the original inputs
https://bugs.webkit.org/show_bug.cgi?id=119032

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

It just needs some Phantom action.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::attemptToMakeFastStringAdd):

LayoutTests:

  • fast/js/dfg-strcat-over-objects-then-exit-on-it-expected.txt: Added.
  • fast/js/dfg-strcat-over-objects-then-exit-on-it.html: Added.
  • fast/js/script-tests/dfg-strcat-over-objects-then-exit-on-it.js: Added.

(foo):
(bar):
(x):

6:10 PM Changeset in webkit [153074] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Need ExpressionRangeInfo before ResolveForPuts in strict mode.
https://bugs.webkit.org/show_bug.cgi?id=118997.

Reviewed by Oliver Hunt.

If we add an assertion in UnlinkedCodeBlock::expressionRangeForBytecodeOffset()
to ensure that we are able to find an ExpressionRangeInfo for any given bytecode
offset, the following tests will fails:

fast/js/basic-strict-mode.html
fast/js/mozilla/strict/8.7.2.html

With this fix, those tests will no longer fail.

  • bytecompiler/NodesCodegen.cpp:

(JSC::AssignResolveNode::emitBytecode):
(JSC::ForInNode::emitBytecode):

  • Emit expression info before calls to emitResolveBaseForPut() when in strict mode.
5:56 PM Changeset in webkit [153073] by mark.lam@apple.com
  • 6 edits in trunk

Added ExpressionRangeInfo for BinaryOpNodes that can throw exceptions
due to type coersion.
https://bugs.webkit.org/show_bug.cgi?id=116853.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • bytecompiler/NodesCodegen.cpp:

(JSC::BinaryOpNode::emitBytecode):

  • Added expression info for the strcat and the general binary op cases. I did not add expression info for the "compare with null" case because that comparison cannot trigger type coersion, and hence it won't throw any exceptions and doesn't need the expression info.

LayoutTests:

Added the test case from bugzilla which exercises the general binary op
type coersion case, plus another for exercising the strcat case.

  • fast/js/line-column-numbers-expected.txt:
  • fast/js/line-column-numbers.html:
  • fast/js/script-tests/line-column-numbers.js:
5:53 PM Changeset in webkit [153072] by akling@apple.com
  • 5 edits
    2 adds in trunk

REGRESSION(r150867): FrameView auto-sizing + delegate denied image load may cause StyleResolver to re-enter itself.
<rdar://problem/14324895>
<http://webkit.org/b/119023>

Reviewed by Simon Fraser.

Source/WebCore:

The bug happened when FrameView::autoSizeIfEnabled() was getting called below FrameLoader::checkCompleted()
triggered by an incorrect loadDone() callback originating in SubresourceLoader::didCancel().

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::loadPendingResources):

Add an assertion that this function is not getting re-entered. If a similar bug occurs
in the future, this will help the lucky person debugging.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didCancel):

Don't notifyDone() if the SubresourceLoader is in Uninitialized state.

Tools:

Add a test for this rather specific problem.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing.mm: Added.

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing_Bundle.cpp: Added.

(TestWebKitAPI::DenyWillSendRequestTest::DenyWillSendRequestTest):
(TestWebKitAPI::DenyWillSendRequestTest::willSendRequestForFrame):
(TestWebKitAPI::DenyWillSendRequestTest::didCreatePage):

5:41 PM Changeset in webkit [153071] by mark.lam@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Removed unused sourceOffset from JSTokenLocation.
https://bugs.webkit.org/show_bug.cgi?id=118996.

Reviewed by Geoffrey Garen.

This also removes the assertion reported in the bug because it is now
moot, thereby resolving the assertion failure issue on Windows.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ArrayNode::toArgumentList):
(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • parser/Lexer.cpp:

(JSC::::lex):

  • parser/Lexer.h:

(JSC::::lexExpectIdentifier):

  • parser/Nodes.h:
  • parser/Parser.cpp:

(JSC::::Parser):
(JSC::::parseFunctionInfo):
(JSC::::parseExpressionOrLabelStatement):
(JSC::::parseMemberExpression):

  • parser/Parser.h:

(JSC::::parse):

  • parser/ParserTokens.h:

(JSC::JSTokenLocation::JSTokenLocation):

5:35 PM Changeset in webkit [153070] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

10.7: Java applets do not work due to sandbox violation/exception
https://bugs.webkit.org/show_bug.cgi?id=118920
<rdar://problem/14471541&12910934&14223830&14260729&14267679>

Patch by Simon Cooper <scooper@apple.com> on 2013-07-23
Reviewed by Alexey Proskuryakov.

Introduce versioning into the common profile and use it to fix
a number of issues with Java on 10.7 and 10.8. Allow writing the
com.apple.java.util.prefs preference file. This change also
introduces a "/Library/Application Support/Java/PublicFiles"
area which Java can read without any restrictions. Files written
to this location will need to be created and written to by
a privileged process.

  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
  • Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
5:26 PM Changeset in webkit [153069] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153068. <rdar://problem/14523331>

4:46 PM Changeset in webkit [153068] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Pixel-snap the unavailable plugin indicator arrow for maximum sharpness
https://bugs.webkit.org/show_bug.cgi?id=119024
<rdar://problem/14523331>

Reviewed by Anders Carlsson.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::addReplacementArrowPath):
(WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
Pixel-snap the unavailable plugin indicator arrow. Snapping directions
were chosen by eye/symmetry to look best on 1x and 2x devices at
1x and 2x page scale.

4:42 PM Changeset in webkit [153067] by rniwa@webkit.org
  • 4 edits
    2 adds in trunk

The computed values of fix length padding should be subpixel precision like margin
https://bugs.webkit.org/show_bug.cgi?id=118936

Reviewed by Simon Fraser.

Source/WebCore:

The bug was caused by ComputedStyleExtractor::propertyValue always returning the used value
for padding. Fixed the bug by returning the computed value when they're of fixed length.

This aligns the behaviors of getComputedStyle(~).padding~ with getComputedStyle(~).margin~,
which had been fixed in r102149. While the current CSSOM specification says getComputedStyle
should return the used values for margins when display property is set to anything but none,
new behavior matches that of Chrome, Firefox, and Internet Explorer.

Also extracted zoomAdjustedPaddingOrMarginPixelValue to reduce the code duplication.

Test: fast/css/getComputedStyle/getComputedStyle-padding-margin-subpixel-length.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::zoomAdjustedPaddingOrMarginPixelValue): Extracted.
(WebCore::ComputedStyleExtractor::propertyValue):

LayoutTests:

Add a regression test for obtaining the computed values of floating point padding and margin.
They shouldn't be rounded to whole pixels.

  • fast/css/getComputedStyle/getComputedStyle-padding-margin-subpixel-length-expected.txt: Added.
  • fast/css/getComputedStyle/getComputedStyle-padding-margin-subpixel-length.html: Added.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top-expected.html: Use a different technique to detect

the subpixel layout since paddings

3:51 PM Changeset in webkit [153066] by Lucas Forschler
  • 6 edits
    2 copies in branches/safari-537-branch

Merged r153060. <rdar://problem/14478260>

3:49 PM Changeset in webkit [153065] by Lucas Forschler
  • 7 edits
    3 copies in branches/safari-537-branch

Merged r153003. <rdar://problem/14403809>

3:35 PM Changeset in webkit [153064] by achristensen@apple.com
  • 57 edits
    185 adds
    2 deletes in trunk/Source

Source/ThirdParty/ANGLE: Updated ANGLE to latest git commit (047373aa3eb408be62be52ade840fa5f11e72337).
Added missing ANGLE files except unused tests, extensions, samples, build, and .git directories.
Ran Bison after making some changes to fix compile errors (see below).

https://bugs.webkit.org/show_bug.cgi?id=118550

Reviewed by Dean Jackson.

  • ANGLE.plist: Updated from svn to git.
  • ANGLE.xcodeproj/project.pbxproj: Renamed DetectRecursion to DetectCallDepth.
  • AUTHORS: Added.
  • CONTRIBUTORS: Added.
  • DEPS: Added.
  • GNUmakefile.am: Renamed DetectRecursion to DetectCallDepth and added Uniform.cpp.
  • LICENSE: Added.
  • README.chromium: Added.
  • Target.pri: Renamed DetectRecursion to DetectCallDepth.
  • codereview.settings: Added.
  • include/EGL/eglext.h:
  • include/GLES2/gl2ext.h:
  • include/GLSLANG/ShaderLang.h:
  • src/ANGLE.sln: Added.
  • src/build_angle.gyp: Added.
  • src/build_angle.gypi: Added.
  • src/common/RefCountObject.cpp:
  • src/common/angleutils.h:

(ArraySize):
(SafeRelease):

  • src/common/debug.cpp:
  • src/common/debug.h:
  • src/common/system.h:
  • src/common/version.h:
  • src/compiler/64bit-lexer-safety.patch: Added.
  • src/compiler/BaseTypes.h:

(getQualifierString):

  • src/compiler/CodeGenHLSL.cpp:

(ConstructCompiler):

  • src/compiler/Common.h:
  • src/compiler/Compiler.cpp:

(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
(TCompiler::InitBuiltInSymbolTable):
(TCompiler::detectCallDepth):
(TCompiler::limitExpressionComplexity):
(TCompiler::getResources):

  • src/compiler/ConstantUnion.h:

(ConstantUnion::ConstantUnion):

  • src/compiler/DetectCallDepth.cpp: Added.

(DetectCallDepth::FunctionNode::FunctionNode):
(DetectCallDepth::FunctionNode::getName):
(DetectCallDepth::FunctionNode::addCallee):
(DetectCallDepth::FunctionNode::detectCallDepth):
(DetectCallDepth::FunctionNode::reset):
(DetectCallDepth::DetectCallDepth):
(DetectCallDepth::~DetectCallDepth):
(DetectCallDepth::visitAggregate):
(DetectCallDepth::checkExceedsMaxDepth):
(DetectCallDepth::resetFunctionNodes):
(DetectCallDepth::detectCallDepthForFunction):
(DetectCallDepth::detectCallDepth):
(DetectCallDepth::findFunctionByName):

  • src/compiler/DetectCallDepth.h: Added.

(DetectCallDepth::getInfoSink):

  • src/compiler/DetectRecursion.cpp: Removed.
  • src/compiler/DetectRecursion.h: Removed.
  • src/compiler/Diagnostics.cpp:

(TDiagnostics::writeInfo):

  • src/compiler/ForLoopUnroll.cpp:

(ForLoopUnroll::evaluateIntConstant):

  • src/compiler/InfoSink.cpp:

(TInfoSinkBase::prefix):
(TInfoSinkBase::location):
(TInfoSinkBase::message):

  • src/compiler/InfoSink.h:
  • src/compiler/Initialize.cpp:

(InsertBuiltInFunctions):
(IdentifyBuiltIns):
(InitExtensionBehavior):

  • src/compiler/Initialize.h:
  • src/compiler/Intermediate.cpp:

(TIntermediate::addSymbol):
(TIntermediate::addBinaryMath):
(TIntermediate::addAssign):
(TIntermediate::addIndex):
(TIntermediate::addUnaryMath):
(TIntermediate::setAggregateOperator):
(TIntermediate::addConversion):
(TIntermediate::growAggregate):
(TIntermediate::makeAggregate):
(TIntermediate::addSelection):
(TIntermediate::addComma):
(TIntermediate::addConstantUnion):
(TIntermediate::addSwizzle):
(TIntermediate::addLoop):
(TIntermediate::addBranch):
(TIntermUnary::promote):
(TIntermBinary::promote):
(CompareStruct):
(CompareStructure):
(TIntermConstantUnion::fold): Added implied static_casts to fix compiling errors on Mac.
(TIntermediate::promoteConstantUnion):

  • src/compiler/OutputGLSL.cpp:

(TOutputGLSL::visitSymbol):

  • src/compiler/OutputGLSL.h:
  • src/compiler/OutputGLSLBase.cpp:

(TOutputGLSLBase::writeVariableType):
(TOutputGLSLBase::writeConstantUnion):
(TOutputGLSLBase::visitBinary):
(TOutputGLSLBase::visitAggregate):
(TOutputGLSLBase::getTypeName):
(TOutputGLSLBase::structDeclared):
(TOutputGLSLBase::declareStruct):

  • src/compiler/OutputGLSLBase.h:
  • src/compiler/OutputHLSL.cpp:

(sh::OutputHLSL::OutputHLSL):
(sh::OutputHLSL::getUniforms):
(sh::OutputHLSL::header):
(sh::OutputHLSL::visitSymbol):
(sh::OutputHLSL::visitBinary):
(sh::OutputHLSL::visitAggregate):
(sh::OutputHLSL::visitSelection):
(sh::OutputHLSL::visitLoop):
(sh::OutputHLSL::handleExcessiveLoop):
(sh::OutputHLSL::argumentString):
(sh::OutputHLSL::typeString):
(sh::OutputHLSL::textureString):
(sh::OutputHLSL::initializer):
(sh::OutputHLSL::addConstructor):
(sh::OutputHLSL::writeConstantUnion):
(sh::OutputHLSL::decorateUniform):
(sh::OutputHLSL::decorateField):
(sh::OutputHLSL::registerString):
(sh::OutputHLSL::samplerRegister):
(sh::OutputHLSL::uniformRegister):
(sh::OutputHLSL::declareUniform):
(sh::OutputHLSL::glVariableType):
(sh::OutputHLSL::glVariablePrecision):

  • src/compiler/OutputHLSL.h:
  • src/compiler/ParseHelper.cpp:

(TParseContext::parseVectorFields):
(TParseContext::parseMatrixFields):
(TParseContext::error):
(TParseContext::warning):
(TParseContext::assignError):
(TParseContext::unaryOpError):
(TParseContext::binaryOpError):
(TParseContext::precisionErrorCheck):
(TParseContext::lValueErrorCheck):
(TParseContext::globalErrorCheck):
(TParseContext::reservedErrorCheck):
(TParseContext::constructorErrorCheck):
(TParseContext::voidErrorCheck):
(TParseContext::boolErrorCheck):
(TParseContext::samplerErrorCheck):
(TParseContext::structQualifierErrorCheck):
(TParseContext::parameterSamplerErrorCheck):
(TParseContext::containsSampler):
(TParseContext::arraySizeErrorCheck):
(TParseContext::arrayQualifierErrorCheck):
(TParseContext::arrayTypeErrorCheck):
(TParseContext::arrayErrorCheck):
(TParseContext::nonInitConstErrorCheck):
(TParseContext::nonInitErrorCheck):
(TParseContext::paramErrorCheck):
(TParseContext::extensionErrorCheck):
(TParseContext::isExtensionEnabled):
Replaced auto with std::map<std::string, TBehavior>::const_iterator to fix Qt and EFL compiling errors.
(TParseContext::findFunction):
(TParseContext::executeInitializer):
(TParseContext::addConstructor):
(TParseContext::constructBuiltIn):
(TParseContext::constructStruct):
(TParseContext::addConstVectorNode):
(TParseContext::addConstMatrixNode):
(TParseContext::addConstArrayNode):
(TParseContext::addConstStruct):
(TParseContext::enterStructDeclaration):
(TParseContext::structNestingErrorCheck):
(TParseContext::addIndexExpression):

  • src/compiler/ParseHelper.h:

(TParseContext::TParseContext):
(TParseContext::pragma):

  • src/compiler/PoolAlloc.cpp:

(TPoolAllocator::allocate):

  • src/compiler/ShHandle.h:

(TShHandleBase::getAsTranslatorHLSL):

  • src/compiler/ShaderLang.cpp:

(ShInitBuiltInResources):
(ShGetInfoPointer):

  • src/compiler/SymbolTable.cpp:

(TType::TType):
(TType::buildMangledName):
(TType::getObjectSize):
(TStructure::containsArrays):
(TStructure::buildMangledName):
(TStructure::calculateObjectSize):
(TStructure::calculateDeepestNesting):
(TSymbolTableLevel::relateToExtension):

  • src/compiler/SymbolTable.h:

(TSymbol::relateToExtension):
(TSymbol::getExtension):
(TVariable::TVariable):
(TVariable::setQualifier):
(TVariable::shareConstPointer):
(TSymbolTableLevel::insert):
(TSymbolTable::insertConstInt):
(TSymbolTable::insertBuiltIn):

  • src/compiler/TranslatorHLSL.cpp:

(TranslatorHLSL::TranslatorHLSL):
(TranslatorHLSL::translate):

  • src/compiler/TranslatorHLSL.h:

(TranslatorHLSL::getAsTranslatorHLSL):
(TranslatorHLSL::getUniforms):

  • src/compiler/Types.h: Removed enum bit fields to fix gcc compiler errors.

(TField::TField):
(TField::type):
(TField::name):
(NewPoolTFieldList):
(TStructure::TStructure):
(TStructure::name):
(TStructure::fields):
(TStructure::mangledName):
(TStructure::objectSize):
(TStructure::deepestNesting):
(TType::TType):
(TType::elementRegisterCount):
(TType::totalRegisterCount):
(TType::clearArrayness):
(TType::getStruct):
(TType::setStruct):
(TType::getMangledName):
(TType::getDeepestStructNesting):
(TType::isStructureContainingArrays):
(TPublicType::setBasic):

  • src/compiler/Uniform.cpp: Added.

(sh::Uniform::Uniform):

  • src/compiler/Uniform.h: Added.
  • src/compiler/VariableInfo.cpp:

(getUserDefinedVariableInfo):

  • src/compiler/glslang.l:
  • src/compiler/glslang.y: Moved YYLTYPE definition into %union to work with Bison 2.3.
  • src/compiler/glslang_lex.cpp:

(yy_get_previous_state):
(yy_try_NUL_trans):
(yyget_lloc):
(yyset_lloc):
(string_input):
(check_type):
(reserved_word):
(glslang_scan):

  • src/compiler/glslang_tab.cpp:

(yyerror):

  • src/compiler/glslang_tab.h:
  • src/compiler/intermOut.cpp:

(TOutputTraverser::visitUnary):
(TOutputTraverser::visitAggregate):
(TOutputTraverser::visitConstantUnion):

  • src/compiler/intermediate.h:

(TIntermNode::TIntermNode):
(TIntermNode::~TIntermNode):
(TIntermNode::getLine):
(TIntermNode::setLine):
(TIntermNode::getAsLoopNode):
(TIntermTyped::totalRegisterCount):
(TIntermTyped::elementRegisterCount):
(TIntermTyped::getArraySize):
(TIntermConstantUnion::getIConst):
(TIntermConstantUnion::getFConst):
(TIntermConstantUnion::getBConst):
(TIntermAggregate::TIntermAggregate):
(TIntermTraverser::TIntermTraverser):
(TIntermTraverser::getMaxDepth):
(TIntermTraverser::incrementDepth):

  • src/compiler/localintermediate.h:
  • src/compiler/parseConst.cpp:

(TConstTraverser::visitSymbol):
(TConstTraverser::visitBinary):
(TConstTraverser::visitUnary):
(TConstTraverser::visitAggregate):
(TConstTraverser::visitSelection):
(TConstTraverser::visitConstantUnion):
(TConstTraverser::visitLoop):
(TConstTraverser::visitBranch):
(TIntermediate::parseConstTree):

  • src/compiler/preprocessor/64bit-tokenizer-safety.patch: Added.
  • src/compiler/preprocessor/Tokenizer.cpp:

(yy_get_previous_state):
(yy_try_NUL_trans):

  • src/compiler/preprocessor/Tokenizer.l:
  • src/compiler/preprocessor/preprocessor.vcxproj: Added.
  • src/compiler/preprocessor/preprocessor.vcxproj.filters: Added.
  • src/compiler/timing/RestrictVertexShaderTiming.cpp:

(RestrictVertexShaderTiming::visitSymbol):

  • src/compiler/translator_common.vcxproj: Added.
  • src/compiler/translator_common.vcxproj.filters: Added.
  • src/compiler/translator_hlsl.vcxproj: Added.
  • src/compiler/translator_hlsl.vcxproj.filters: Added.
  • src/libEGL/Config.cpp: Added.

(egl::Config::Config):
(egl::Config::getHandle):
(egl::SortConfig::SortConfig):
(egl::SortConfig::scanForWantedComponents):
(egl::SortConfig::wantedComponentsSize):
(egl::SortConfig::operator()):
(egl::ConfigSet::ConfigSet):
(egl::ConfigSet::add):
(egl::ConfigSet::size):
(egl::ConfigSet::getConfigs):
(egl::ConfigSet::get):

  • src/libEGL/Config.h: Added.
  • src/libEGL/Display.cpp: Added.

(egl::Display::getDisplay):
(egl::Display::Display):
(egl::Display::~Display):
(egl::Display::initialize):
(egl::Display::terminate):
(egl::Display::getConfigs):
(egl::Display::getConfigAttrib):
(egl::Display::createWindowSurface):
(egl::Display::createOffscreenSurface):
(egl::Display::createContext):
(egl::Display::restoreLostDevice):
(egl::Display::destroySurface):
(egl::Display::destroyContext):
(egl::Display::notifyDeviceLost):
(egl::Display::recreateSwapChains):
(egl::Display::isInitialized):
(egl::Display::isValidConfig):
(egl::Display::isValidContext):
(egl::Display::isValidSurface):
(egl::Display::hasExistingWindowSurface):
(egl::Display::initExtensionString):
(egl::Display::getExtensionString):
(egl::Display::initVendorString):
(egl::Display::getVendorString):

  • src/libEGL/Display.h: Added.

(egl::Display::getRenderer):

  • src/libEGL/Surface.cpp: Added.

(egl::Surface::Surface):
(egl::Surface::~Surface):
(egl::Surface::initialize):
(egl::Surface::release):
(egl::Surface::resetSwapChain):
(egl::Surface::resizeSwapChain):
(egl::Surface::swapRect):
(egl::Surface::getWindowHandle):
(egl::SurfaceWindowProc):
(egl::Surface::subclassWindow):
(egl::Surface::unsubclassWindow):
(egl::Surface::checkForOutOfDateSwapChain):
(egl::Surface::swap):
(egl::Surface::postSubBuffer):
(egl::Surface::getWidth):
(egl::Surface::getHeight):
(egl::Surface::isPostSubBufferSupported):
(egl::Surface::getSwapChain):
(egl::Surface::setSwapInterval):
(egl::Surface::getTextureFormat):
(egl::Surface::getTextureTarget):
(egl::Surface::setBoundTexture):
(egl::Surface::getBoundTexture):
(egl::Surface::getFormat):

  • src/libEGL/Surface.h: Added.
  • src/libEGL/libEGL.cpp: Added.

(validateDisplay):
(validateConfig):
(validateContext):
(validateSurface):

  • src/libEGL/libEGL.def: Added.
  • src/libEGL/libEGL.rc: Added.
  • src/libEGL/libEGL.vcxproj: Added.
  • src/libEGL/libEGL.vcxproj.filters: Added.
  • src/libEGL/main.cpp: Added.

(DllMain):
(egl::setCurrentError):
(egl::getCurrentError):
(egl::setCurrentAPI):
(egl::getCurrentAPI):
(egl::setCurrentDisplay):
(egl::getCurrentDisplay):
(egl::setCurrentDrawSurface):
(egl::getCurrentDrawSurface):
(egl::setCurrentReadSurface):
(egl::getCurrentReadSurface):
(egl::error):

  • src/libEGL/main.h: Added.

(egl::error):
(egl::success):

  • src/libEGL/resource.h: Added.
  • src/libGLESv2/BinaryStream.h: Added.

(gl::BinaryInputStream::BinaryInputStream):
(gl::BinaryInputStream::read):
(gl::BinaryInputStream::skip):
(gl::BinaryInputStream::offset):
(gl::BinaryInputStream::error):
(gl::BinaryInputStream::endOfStream):
(gl::BinaryOutputStream::BinaryOutputStream):
(gl::BinaryOutputStream::write):
(gl::BinaryOutputStream::length):
(gl::BinaryOutputStream::data):

  • src/libGLESv2/Buffer.cpp: Added.

(gl::Buffer::Buffer):
(gl::Buffer::~Buffer):
(gl::Buffer::bufferData):
(gl::Buffer::bufferSubData):
(gl::Buffer::getStorage):
(gl::Buffer::size):
(gl::Buffer::usage):
(gl::Buffer::getStaticVertexBuffer):
(gl::Buffer::getStaticIndexBuffer):
(gl::Buffer::invalidateStaticData):
(gl::Buffer::promoteStaticUsage):

  • src/libGLESv2/Buffer.h: Added.
  • src/libGLESv2/Context.cpp: Added.

(gl::makeStaticString):
(gl::Context::Context):
(gl::Context::~Context):
(gl::Context::makeCurrent):
(gl::Context::markContextLost):
(gl::Context::isContextLost):
(gl::Context::setClearColor):
(gl::Context::setClearDepth):
(gl::Context::setClearStencil):
(gl::Context::setCullFace):
(gl::Context::isCullFaceEnabled):
(gl::Context::setCullMode):
(gl::Context::setFrontFace):
(gl::Context::setDepthTest):
(gl::Context::isDepthTestEnabled):
(gl::Context::setDepthFunc):
(gl::Context::setDepthRange):
(gl::Context::setBlend):
(gl::Context::isBlendEnabled):
(gl::Context::setBlendFactors):
(gl::Context::setBlendColor):
(gl::Context::setBlendEquation):
(gl::Context::setStencilTest):
(gl::Context::isStencilTestEnabled):
(gl::Context::setStencilParams):
(gl::Context::setStencilBackParams):
(gl::Context::setStencilWritemask):
(gl::Context::setStencilBackWritemask):
(gl::Context::setStencilOperations):
(gl::Context::setStencilBackOperations):
(gl::Context::setPolygonOffsetFill):
(gl::Context::isPolygonOffsetFillEnabled):
(gl::Context::setPolygonOffsetParams):
(gl::Context::setSampleAlphaToCoverage):
(gl::Context::isSampleAlphaToCoverageEnabled):
(gl::Context::setSampleCoverage):
(gl::Context::isSampleCoverageEnabled):
(gl::Context::setSampleCoverageParams):
(gl::Context::setScissorTest):
(gl::Context::isScissorTestEnabled):
(gl::Context::setDither):
(gl::Context::isDitherEnabled):
(gl::Context::setLineWidth):
(gl::Context::setGenerateMipmapHint):
(gl::Context::setFragmentShaderDerivativeHint):
(gl::Context::setViewportParams):
(gl::Context::setScissorParams):
(gl::Context::setColorMask):
(gl::Context::setDepthMask):
(gl::Context::setActiveSampler):
(gl::Context::getReadFramebufferHandle):
(gl::Context::getDrawFramebufferHandle):
(gl::Context::getRenderbufferHandle):
(gl::Context::getArrayBufferHandle):
(gl::Context::getActiveQuery):
(gl::Context::setEnableVertexAttribArray):
(gl::Context::getVertexAttribState):
(gl::Context::setVertexAttribState):
(gl::Context::getVertexAttribPointer):
(gl::Context::setPackAlignment):
(gl::Context::getPackAlignment):
(gl::Context::setUnpackAlignment):
(gl::Context::getUnpackAlignment):
(gl::Context::setPackReverseRowOrder):
(gl::Context::getPackReverseRowOrder):
(gl::Context::createBuffer):
(gl::Context::createProgram):
(gl::Context::createShader):
(gl::Context::createTexture):
(gl::Context::createRenderbuffer):
(gl::Context::createFramebuffer):
(gl::Context::createFence):
(gl::Context::createQuery):
(gl::Context::deleteBuffer):
(gl::Context::deleteShader):
(gl::Context::deleteProgram):
(gl::Context::deleteTexture):
(gl::Context::deleteRenderbuffer):
(gl::Context::deleteFramebuffer):
(gl::Context::deleteFence):
(gl::Context::deleteQuery):
(gl::Context::getBuffer):
(gl::Context::getShader):
(gl::Context::getProgram):
(gl::Context::getTexture):
(gl::Context::getRenderbuffer):
(gl::Context::getReadFramebuffer):
(gl::Context::getDrawFramebuffer):
(gl::Context::bindArrayBuffer):
(gl::Context::bindElementArrayBuffer):
(gl::Context::bindTexture2D):
(gl::Context::bindTextureCubeMap):
(gl::Context::bindReadFramebuffer):
(gl::Context::bindDrawFramebuffer):
(gl::Context::bindRenderbuffer):
(gl::Context::useProgram):
(gl::Context::linkProgram):
(gl::Context::setProgramBinary):
(gl::Context::beginQuery):
(gl::Context::endQuery):
(gl::Context::setFramebufferZero):
(gl::Context::setRenderbufferStorage):
(gl::Context::getFramebuffer):
(gl::Context::getFence):
(gl::Context::getQuery):
(gl::Context::getArrayBuffer):
(gl::Context::getElementArrayBuffer):
(gl::Context::getCurrentProgramBinary):
(gl::Context::getTexture2D):
(gl::Context::getTextureCubeMap):
(gl::Context::getSamplerTexture):
(gl::Context::getBooleanv):
(gl::Context::getFloatv):
(gl::Context::getIntegerv):
(gl::Context::getQueryParameterInfo):
(gl::Context::applyRenderTarget):
(gl::Context::applyState):
(gl::Context::applyShaders):
(gl::Context::applyTextures):
(gl::Context::readPixels):
(gl::Context::clear):
(gl::Context::drawArrays):
(gl::Context::drawElements):
(gl::Context::sync):
(gl::Context::recordInvalidEnum):
(gl::Context::recordInvalidValue):
(gl::Context::recordInvalidOperation):
(gl::Context::recordOutOfMemory):
(gl::Context::recordInvalidFramebufferOperation):
(gl::Context::getError):
(gl::Context::getResetStatus):
(gl::Context::isResetNotificationEnabled):
(gl::Context::getMajorShaderModel):
(gl::Context::getMaximumPointSize):
(gl::Context::getMaximumCombinedTextureImageUnits):
(gl::Context::getMaxSupportedSamples):
(gl::Context::getMaximumRenderTargets):
(gl::Context::supportsEventQueries):
(gl::Context::supportsOcclusionQueries):
(gl::Context::supportsBGRATextures):
(gl::Context::supportsDXT1Textures):
(gl::Context::supportsDXT3Textures):
(gl::Context::supportsDXT5Textures):
(gl::Context::supportsFloat32Textures):
(gl::Context::supportsFloat32LinearFilter):
(gl::Context::supportsFloat32RenderableTextures):
(gl::Context::supportsFloat16Textures):
(gl::Context::supportsFloat16LinearFilter):
(gl::Context::supportsFloat16RenderableTextures):
(gl::Context::getMaximumRenderbufferDimension):
(gl::Context::getMaximumTextureDimension):
(gl::Context::getMaximumCubeTextureDimension):
(gl::Context::getMaximumTextureLevel):
(gl::Context::supportsLuminanceTextures):
(gl::Context::supportsLuminanceAlphaTextures):
(gl::Context::supportsDepthTextures):
(gl::Context::supports32bitIndices):
(gl::Context::supportsNonPower2Texture):
(gl::Context::supportsInstancing):
(gl::Context::supportsTextureFilterAnisotropy):
(gl::Context::getTextureMaxAnisotropy):
(gl::Context::getCurrentReadFormatType):
(gl::Context::detachBuffer):
(gl::Context::detachTexture):
(gl::Context::detachFramebuffer):
(gl::Context::detachRenderbuffer):
(gl::Context::getIncompleteTexture):
(gl::Context::skipDraw):
(gl::Context::setVertexAttrib):
(gl::Context::setVertexAttribDivisor):
(gl::Context::initExtensionString):
(gl::Context::getExtensionString):
(gl::Context::initRendererString):
(gl::Context::getRendererString):
(gl::Context::blitFramebuffer):

  • src/libGLESv2/Context.h: Added.

(gl::VertexAttribute::VertexAttribute):
(gl::VertexAttribute::typeSize):
(gl::VertexAttribute::stride):

  • src/libGLESv2/Fence.cpp: Added.

(gl::Fence::Fence):
(gl::Fence::~Fence):
(gl::Fence::isFence):
(gl::Fence::setFence):
(gl::Fence::testFence):
(gl::Fence::finishFence):
(gl::Fence::getFenceiv):

  • src/libGLESv2/Fence.h: Added.
  • src/libGLESv2/Float16ToFloat32.cpp: Added.

(gl::float16ToFloat32):

  • src/libGLESv2/Float16ToFloat32.py: Added.

(convertMantissa):
(convertExponent):
(convertOffset):

  • src/libGLESv2/Framebuffer.cpp: Added.

(gl::Framebuffer::Framebuffer):
(gl::Framebuffer::~Framebuffer):
(gl::Framebuffer::lookupRenderbuffer):
(gl::Framebuffer::setColorbuffer):
(gl::Framebuffer::setDepthbuffer):
(gl::Framebuffer::setStencilbuffer):
(gl::Framebuffer::detachTexture):
(gl::Framebuffer::detachRenderbuffer):
(gl::Framebuffer::getRenderTargetSerial):
(gl::Framebuffer::getDepthbufferSerial):
(gl::Framebuffer::getStencilbufferSerial):
(gl::Framebuffer::getColorbuffer):
(gl::Framebuffer::getDepthbuffer):
(gl::Framebuffer::getStencilbuffer):
(gl::Framebuffer::getDepthOrStencilbuffer):
(gl::Framebuffer::getReadColorbuffer):
(gl::Framebuffer::getReadColorbufferType):
(gl::Framebuffer::getFirstColorbuffer):
(gl::Framebuffer::getColorbufferType):
(gl::Framebuffer::getDepthbufferType):
(gl::Framebuffer::getStencilbufferType):
(gl::Framebuffer::getColorbufferHandle):
(gl::Framebuffer::getDepthbufferHandle):
(gl::Framebuffer::getStencilbufferHandle):
(gl::Framebuffer::getDrawBufferState):
(gl::Framebuffer::setDrawBufferState):
(gl::Framebuffer::isEnabledColorAttachment):
(gl::Framebuffer::hasEnabledColorAttachment):
(gl::Framebuffer::hasStencil):
(gl::Framebuffer::usingExtendedDrawBuffers):
(gl::Framebuffer::completeness):
(gl::DefaultFramebuffer::DefaultFramebuffer):
(gl::Framebuffer::getSamples):
(gl::DefaultFramebuffer::completeness):

  • src/libGLESv2/Framebuffer.h: Added.
  • src/libGLESv2/HandleAllocator.cpp: Added.

(gl::HandleAllocator::HandleAllocator):
(gl::HandleAllocator::~HandleAllocator):
(gl::HandleAllocator::setBaseHandle):
(gl::HandleAllocator::allocate):
(gl::HandleAllocator::release):

  • src/libGLESv2/HandleAllocator.h: Added.
  • src/libGLESv2/Program.cpp: Added.

(gl::AttributeBindings::AttributeBindings):
(gl::AttributeBindings::~AttributeBindings):
(gl::InfoLog::InfoLog):
(gl::InfoLog::~InfoLog):
(gl::InfoLog::getLength):
(gl::InfoLog::getLog):
(gl::InfoLog::appendSanitized):
(gl::InfoLog::append):
(gl::InfoLog::reset):
(gl::Program::Program):
(gl::Program::~Program):
(gl::Program::attachShader):
(gl::Program::detachShader):
(gl::Program::getAttachedShadersCount):
(gl::AttributeBindings::bindAttributeLocation):
(gl::Program::bindAttributeLocation):
(gl::Program::link):
(gl::AttributeBindings::getAttributeBinding):
(gl::Program::unlink):
(gl::Program::isLinked):
(gl::Program::getProgramBinary):
(gl::Program::setProgramBinary):
(gl::Program::release):
(gl::Program::addRef):
(gl::Program::getRefCount):
(gl::Program::getProgramBinaryLength):
(gl::Program::getInfoLogLength):
(gl::Program::getInfoLog):
(gl::Program::getAttachedShaders):
(gl::Program::getActiveAttribute):
(gl::Program::getActiveAttributeCount):
(gl::Program::getActiveAttributeMaxLength):
(gl::Program::getActiveUniform):
(gl::Program::getActiveUniformCount):
(gl::Program::getActiveUniformMaxLength):
(gl::Program::flagForDeletion):
(gl::Program::isFlaggedForDeletion):
(gl::Program::validate):
(gl::Program::isValidated):

  • src/libGLESv2/Program.h: Added.
  • src/libGLESv2/ProgramBinary.cpp: Added.

(gl::str):
(gl::UniformLocation::UniformLocation):
(gl::ProgramBinary::ProgramBinary):
(gl::ProgramBinary::~ProgramBinary):
(gl::ProgramBinary::getSerial):
(gl::ProgramBinary::issueSerial):
(gl::ProgramBinary::getPixelExecutable):
(gl::ProgramBinary::getVertexExecutable):
(gl::ProgramBinary::getGeometryExecutable):
(gl::ProgramBinary::getAttributeLocation):
(gl::ProgramBinary::getSemanticIndex):
(gl::ProgramBinary::getUsedSamplerRange):
(gl::ProgramBinary::usesPointSize):
(gl::ProgramBinary::usesPointSpriteEmulation):
(gl::ProgramBinary::usesGeometryShader):
(gl::ProgramBinary::getSamplerMapping):
(gl::ProgramBinary::getSamplerTextureType):
(gl::ProgramBinary::getUniformLocation):
(gl::ProgramBinary::setUniform1fv):
(gl::ProgramBinary::setUniform2fv):
(gl::ProgramBinary::setUniform3fv):
(gl::ProgramBinary::setUniform4fv):
(gl::transposeMatrix):
(gl::ProgramBinary::setUniformMatrix2fv):
(gl::ProgramBinary::setUniformMatrix3fv):
(gl::ProgramBinary::setUniformMatrix4fv):
(gl::ProgramBinary::setUniform1iv):
(gl::ProgramBinary::setUniform2iv):
(gl::ProgramBinary::setUniform3iv):
(gl::ProgramBinary::setUniform4iv):
(gl::ProgramBinary::getUniformfv):
(gl::ProgramBinary::getUniformiv):
(gl::ProgramBinary::dirtyAllUniforms):
(gl::ProgramBinary::applyUniforms):
(gl::ProgramBinary::packVaryings):
(gl::ProgramBinary::linkVaryings):
(gl::ProgramBinary::load):
(gl::ProgramBinary::save):
(gl::ProgramBinary::getLength):
(gl::ProgramBinary::link):
(gl::ProgramBinary::linkAttributes):
(gl::ProgramBinary::linkUniforms):
(gl::ProgramBinary::defineUniform):
(gl::ProgramBinary::generateGeometryShaderHLSL):
(gl::ProgramBinary::generatePointSpriteHLSL):
(gl::ProgramBinary::decorateAttribute):
(gl::ProgramBinary::isValidated):
(gl::ProgramBinary::getActiveAttribute):
(gl::ProgramBinary::getActiveAttributeCount):
(gl::ProgramBinary::getActiveAttributeMaxLength):
(gl::ProgramBinary::getActiveUniform):
(gl::ProgramBinary::getActiveUniformCount):
(gl::ProgramBinary::getActiveUniformMaxLength):
(gl::ProgramBinary::validate):
(gl::ProgramBinary::validateSamplers):
(gl::ProgramBinary::Sampler::Sampler):
(gl::AttributeSorter::AttributeSorter):
(gl::AttributeSorter::operator()):
(gl::ProgramBinary::sortAttributesByLayout):

  • src/libGLESv2/ProgramBinary.h: Added.

(gl::UniformLocation::UniformLocation):

  • src/libGLESv2/Query.cpp: Added.

(gl::Query::Query):
(gl::Query::~Query):
(gl::Query::begin):
(gl::Query::end):
(gl::Query::getResult):
(gl::Query::isResultAvailable):
(gl::Query::getType):

  • src/libGLESv2/Query.h: Added.
  • src/libGLESv2/Renderbuffer.cpp: Added.

(gl::RenderbufferInterface::RenderbufferInterface):
(gl::RenderbufferInterface::addProxyRef):
(gl::RenderbufferInterface::releaseProxy):
(gl::RenderbufferInterface::getRedSize):
(gl::RenderbufferInterface::getGreenSize):
(gl::RenderbufferInterface::getBlueSize):
(gl::RenderbufferInterface::getAlphaSize):
(gl::RenderbufferInterface::getDepthSize):
(gl::RenderbufferInterface::getStencilSize):
(gl::RenderbufferTexture2D::RenderbufferTexture2D):
(gl::RenderbufferTexture2D::~RenderbufferTexture2D):
(gl::RenderbufferTexture2D::addProxyRef):
(gl::RenderbufferTexture2D::releaseProxy):
(gl::RenderbufferTexture2D::getRenderTarget):
(gl::RenderbufferTexture2D::getDepthStencil):
(gl::RenderbufferTexture2D::getWidth):
(gl::RenderbufferTexture2D::getHeight):
(gl::RenderbufferTexture2D::getInternalFormat):
(gl::RenderbufferTexture2D::getActualFormat):
(gl::RenderbufferTexture2D::getSamples):
(gl::RenderbufferTexture2D::getSerial):
(gl::RenderbufferTextureCubeMap::RenderbufferTextureCubeMap):
(gl::RenderbufferTextureCubeMap::~RenderbufferTextureCubeMap):
(gl::RenderbufferTextureCubeMap::addProxyRef):
(gl::RenderbufferTextureCubeMap::releaseProxy):
(gl::RenderbufferTextureCubeMap::getRenderTarget):
(gl::RenderbufferTextureCubeMap::getDepthStencil):
(gl::RenderbufferTextureCubeMap::getWidth):
(gl::RenderbufferTextureCubeMap::getHeight):
(gl::RenderbufferTextureCubeMap::getInternalFormat):
(gl::RenderbufferTextureCubeMap::getActualFormat):
(gl::RenderbufferTextureCubeMap::getSamples):
(gl::RenderbufferTextureCubeMap::getSerial):
(gl::Renderbuffer::Renderbuffer):
(gl::Renderbuffer::~Renderbuffer):
(gl::Renderbuffer::addRef):
(gl::Renderbuffer::release):
(gl::Renderbuffer::getRenderTarget):
(gl::Renderbuffer::getDepthStencil):
(gl::Renderbuffer::getWidth):
(gl::Renderbuffer::getHeight):
(gl::Renderbuffer::getInternalFormat):
(gl::Renderbuffer::getActualFormat):
(gl::Renderbuffer::getRedSize):
(gl::Renderbuffer::getGreenSize):
(gl::Renderbuffer::getBlueSize):
(gl::Renderbuffer::getAlphaSize):
(gl::Renderbuffer::getDepthSize):
(gl::Renderbuffer::getStencilSize):
(gl::Renderbuffer::getSamples):
(gl::Renderbuffer::getSerial):
(gl::Renderbuffer::setStorage):
(gl::RenderbufferStorage::RenderbufferStorage):
(gl::RenderbufferStorage::~RenderbufferStorage):
(gl::RenderbufferStorage::getRenderTarget):
(gl::RenderbufferStorage::getDepthStencil):
(gl::RenderbufferStorage::getWidth):
(gl::RenderbufferStorage::getHeight):
(gl::RenderbufferStorage::getInternalFormat):
(gl::RenderbufferStorage::getActualFormat):
(gl::RenderbufferStorage::getSamples):
(gl::RenderbufferStorage::getSerial):
(gl::RenderbufferStorage::issueSerial):
(gl::RenderbufferStorage::issueCubeSerials):
(gl::Colorbuffer::Colorbuffer):
(gl::Colorbuffer::~Colorbuffer):
(gl::Colorbuffer::getRenderTarget):
(gl::DepthStencilbuffer::DepthStencilbuffer):
(gl::DepthStencilbuffer::~DepthStencilbuffer):
(gl::DepthStencilbuffer::getDepthStencil):
(gl::Depthbuffer::Depthbuffer):
(gl::Depthbuffer::~Depthbuffer):
(gl::Stencilbuffer::Stencilbuffer):
(gl::Stencilbuffer::~Stencilbuffer):

  • src/libGLESv2/Renderbuffer.h: Added.

(gl::RenderbufferInterface::~RenderbufferInterface):

  • src/libGLESv2/ResourceManager.cpp: Added.

(gl::ResourceManager::ResourceManager):
(gl::ResourceManager::~ResourceManager):
(gl::ResourceManager::addRef):
(gl::ResourceManager::release):
(gl::ResourceManager::createBuffer):
(gl::ResourceManager::createShader):
(gl::ResourceManager::createProgram):
(gl::ResourceManager::createTexture):
(gl::ResourceManager::createRenderbuffer):
(gl::ResourceManager::deleteBuffer):
(gl::ResourceManager::deleteShader):
(gl::ResourceManager::deleteProgram):
(gl::ResourceManager::deleteTexture):
(gl::ResourceManager::deleteRenderbuffer):
(gl::ResourceManager::getBuffer):
(gl::ResourceManager::getShader):
(gl::ResourceManager::getTexture):
(gl::ResourceManager::getProgram):
(gl::ResourceManager::getRenderbuffer):
(gl::ResourceManager::setRenderbuffer):
(gl::ResourceManager::checkBufferAllocation):
(gl::ResourceManager::checkTextureAllocation):
(gl::ResourceManager::checkRenderbufferAllocation):

  • src/libGLESv2/ResourceManager.h: Added.
  • src/libGLESv2/Shader.cpp: Added.

(gl::Shader::Shader):
(gl::Shader::~Shader):
(gl::Shader::getHandle):
(gl::Shader::setSource):
(gl::Shader::getInfoLogLength):
(gl::Shader::getInfoLog):
(gl::Shader::getSourceLength):
(gl::Shader::getTranslatedSourceLength):
(gl::Shader::getSourceImpl):
(gl::Shader::getSource):
(gl::Shader::getTranslatedSource):
(gl::Shader::getUniforms):
(gl::Shader::isCompiled):
(gl::Shader::getHLSL):
(gl::Shader::addRef):
(gl::Shader::release):
(gl::Shader::getRefCount):
(gl::Shader::isFlaggedForDeletion):
(gl::Shader::flagForDeletion):
(gl::Shader::initializeCompiler):
(gl::Shader::releaseCompiler):
(gl::Shader::parseVaryings):
(gl::Shader::resetVaryingsRegisterAssignment):
(gl::Shader::uncompile):
(gl::Shader::compileToHLSL):
(gl::Shader::parseType):
(gl::Shader::compareVarying):
(gl::VertexShader::VertexShader):
(gl::VertexShader::~VertexShader):
(gl::VertexShader::getType):
(gl::VertexShader::uncompile):
(gl::VertexShader::compile):
(gl::VertexShader::getSemanticIndex):
(gl::VertexShader::parseAttributes):
(gl::FragmentShader::FragmentShader):
(gl::FragmentShader::~FragmentShader):
(gl::FragmentShader::getType):
(gl::FragmentShader::compile):

  • src/libGLESv2/Shader.h: Added.

(gl::Varying::Varying):
(gl::Attribute::Attribute):

  • src/libGLESv2/Texture.cpp: Added.

(gl::Texture::Texture):
(gl::Texture::~Texture):
(gl::Texture::setMinFilter):
(gl::Texture::setMagFilter):
(gl::Texture::setWrapS):
(gl::Texture::setWrapT):
(gl::Texture::setMaxAnisotropy):
(gl::Texture::setUsage):
(gl::Texture::getMinFilter):
(gl::Texture::getMagFilter):
(gl::Texture::getWrapS):
(gl::Texture::getWrapT):
(gl::Texture::getMaxAnisotropy):
(gl::Texture::getLodOffset):
(gl::Texture::getSamplerState):
(gl::Texture::getUsage):
(gl::Texture::isMipmapFiltered):
(gl::Texture::setImage):
(gl::Texture::setCompressedImage):
(gl::Texture::subImage):
(gl::Texture::subImageCompressed):
(gl::Texture::getNativeTexture):
(gl::Texture::hasDirtyImages):
(gl::Texture::resetDirty):
(gl::Texture::getTextureSerial):
(gl::Texture::getRenderTargetSerial):
(gl::Texture::isImmutable):
(gl::Texture::creationLevels):
(gl::Texture2D::Texture2D):
(gl::Texture2D::~Texture2D):
(gl::Texture2D::addProxyRef):
(gl::Texture2D::releaseProxy):
(gl::Texture2D::getTarget):
(gl::Texture2D::getWidth):
(gl::Texture2D::getHeight):
(gl::Texture2D::getInternalFormat):
(gl::Texture2D::getActualFormat):
(gl::Texture2D::redefineImage):
(gl::Texture2D::setImage):
(gl::Texture2D::bindTexImage):
(gl::Texture2D::releaseTexImage):
(gl::Texture2D::setCompressedImage):
(gl::Texture2D::commitRect):
(gl::Texture2D::subImage):
(gl::Texture2D::subImageCompressed):
(gl::Texture2D::copyImage):
(gl::Texture2D::copySubImage):
(gl::Texture2D::storage):
(gl::Texture2D::isSamplerComplete):
(gl::Texture2D::isMipmapComplete):
(gl::Texture2D::isCompressed):
(gl::Texture2D::isDepth):
(gl::Texture2D::createTexture):
(gl::Texture2D::updateTexture):
(gl::Texture2D::convertToRenderTarget):
(gl::Texture2D::generateMipmaps):
(gl::Texture2D::getRenderbuffer):
(gl::Texture2D::getRenderTarget):
(gl::Texture2D::getDepthStencil):
(gl::Texture2D::levelCount):
(gl::Texture2D::getStorage):
(gl::TextureCubeMap::TextureCubeMap):
(gl::TextureCubeMap::~TextureCubeMap):
(gl::TextureCubeMap::addProxyRef):
(gl::TextureCubeMap::releaseProxy):
(gl::TextureCubeMap::getTarget):
(gl::TextureCubeMap::getWidth):
(gl::TextureCubeMap::getHeight):
(gl::TextureCubeMap::getInternalFormat):
(gl::TextureCubeMap::getActualFormat):
(gl::TextureCubeMap::setImagePosX):
(gl::TextureCubeMap::setImageNegX):
(gl::TextureCubeMap::setImagePosY):
(gl::TextureCubeMap::setImageNegY):
(gl::TextureCubeMap::setImagePosZ):
(gl::TextureCubeMap::setImageNegZ):
(gl::TextureCubeMap::setCompressedImage):
(gl::TextureCubeMap::commitRect):
(gl::TextureCubeMap::subImage):
(gl::TextureCubeMap::subImageCompressed):
(gl::TextureCubeMap::isSamplerComplete):
(gl::TextureCubeMap::isCubeComplete):
(gl::TextureCubeMap::isMipmapCubeComplete):
(gl::TextureCubeMap::isCompressed):
(gl::TextureCubeMap::createTexture):
(gl::TextureCubeMap::updateTexture):
(gl::TextureCubeMap::convertToRenderTarget):
(gl::TextureCubeMap::setImage):
(gl::TextureCubeMap::faceIndex):
(gl::TextureCubeMap::redefineImage):
(gl::TextureCubeMap::copyImage):
(gl::TextureCubeMap::copySubImage):
(gl::TextureCubeMap::storage):
(gl::TextureCubeMap::generateMipmaps):
(gl::TextureCubeMap::getRenderbuffer):
(gl::TextureCubeMap::getRenderTarget):
(gl::TextureCubeMap::levelCount):
(gl::TextureCubeMap::getStorage):

  • src/libGLESv2/Texture.h: Added.
  • src/libGLESv2/Uniform.cpp: Added.

(gl::Uniform::Uniform):
(gl::Uniform::~Uniform):
(gl::Uniform::isArray):
(gl::Uniform::elementCount):

  • src/libGLESv2/Uniform.h: Added.
  • src/libGLESv2/angletypes.h: Added.
  • src/libGLESv2/constants.h: Added.
  • src/libGLESv2/libGLESv2.cpp: Added.

(validImageSize):
(checkTextureFormatType):
(validateSubImageParams2D):
(validateSubImageParamsCube):
(validReadFormatType):

  • src/libGLESv2/libGLESv2.def: Added.
  • src/libGLESv2/libGLESv2.rc: Added.
  • src/libGLESv2/libGLESv2.vcxproj: Added.
  • src/libGLESv2/libGLESv2.vcxproj.filters: Added.
  • src/libGLESv2/main.cpp: Added.

(DllMain):
(gl::makeCurrent):
(gl::getContext):
(gl::getNonLostContext):
(gl::getDisplay):
(gl::error):

  • src/libGLESv2/main.h: Added.

(gl::error):

  • src/libGLESv2/mathutil.h: Added.

(gl::Vector4::Vector4):
(gl::isPow2):
(gl::log2):
(gl::ceilPow2):
(gl::clamp):
(gl::clamp01):
(gl::unorm):
(gl::supportsSSE2):
(gl::float32ToFloat16):
(rx::Range::Range):

  • src/libGLESv2/precompiled.cpp: Added.
  • src/libGLESv2/precompiled.h: Added.
  • src/libGLESv2/renderer: Added.
  • src/libGLESv2/renderer/Blit.cpp: Added.

(rx::Blit::Blit):
(rx::Blit::~Blit):
(rx::Blit::initGeometry):
(rx::Blit::setShader):
(rx::Blit::setVertexShader):
(rx::Blit::setPixelShader):
(rx::Blit::getSurfaceRect):
(rx::Blit::boxFilter):
(rx::Blit::copy):
(rx::Blit::formatConvert):
(rx::Blit::setFormatConvertShaders):
(rx::Blit::copySurfaceToTexture):
(rx::Blit::setViewport):
(rx::Blit::setCommonBlitState):
(rx::Blit::render):
(rx::Blit::saveState):
(rx::Blit::restoreState):

  • src/libGLESv2/renderer/Blit.h: Added.
  • src/libGLESv2/renderer/BufferStorage.cpp: Added.

(rx::BufferStorage::BufferStorage):
(rx::BufferStorage::~BufferStorage):
(rx::BufferStorage::getSerial):
(rx::BufferStorage::updateSerial):
(rx::BufferStorage::markBufferUsage):

  • src/libGLESv2/renderer/BufferStorage.h: Added.
  • src/libGLESv2/renderer/BufferStorage11.cpp: Added.

(rx::BufferStorage11::BufferStorage11):
(rx::BufferStorage11::~BufferStorage11):
(rx::BufferStorage11::makeBufferStorage11):
(rx::BufferStorage11::getData):
(rx::BufferStorage11::setData):
(rx::BufferStorage11::clear):
(rx::BufferStorage11::getSize):
(rx::BufferStorage11::supportsDirectBinding):
(rx::BufferStorage11::markBufferUsage):
(rx::BufferStorage11::getBuffer):

  • src/libGLESv2/renderer/BufferStorage11.h: Added.
  • src/libGLESv2/renderer/BufferStorage9.cpp: Added.

(rx::BufferStorage9::BufferStorage9):
(rx::BufferStorage9::~BufferStorage9):
(rx::BufferStorage9::makeBufferStorage9):
(rx::BufferStorage9::getData):
(rx::BufferStorage9::setData):
(rx::BufferStorage9::clear):
(rx::BufferStorage9::getSize):
(rx::BufferStorage9::supportsDirectBinding):

  • src/libGLESv2/renderer/BufferStorage9.h: Added.
  • src/libGLESv2/renderer/Fence11.cpp: Added.

(rx::Fence11::Fence11):
(rx::Fence11::~Fence11):
(rx::Fence11::isFence):
(rx::Fence11::setFence):
(rx::Fence11::testFence):
(rx::Fence11::finishFence):
(rx::Fence11::getFenceiv):

  • src/libGLESv2/renderer/Fence11.h: Added.
  • src/libGLESv2/renderer/Fence9.cpp: Added.

(rx::Fence9::Fence9):
(rx::Fence9::~Fence9):
(rx::Fence9::isFence):
(rx::Fence9::setFence):
(rx::Fence9::testFence):
(rx::Fence9::finishFence):
(rx::Fence9::getFenceiv):

  • src/libGLESv2/renderer/Fence9.h: Added.
  • src/libGLESv2/renderer/FenceImpl.h: Added.

(rx::FenceImpl::FenceImpl):
(rx::FenceImpl::~FenceImpl):
(rx::FenceImpl::setStatus):
(rx::FenceImpl::getStatus):
(rx::FenceImpl::setCondition):
(rx::FenceImpl::getCondition):

  • src/libGLESv2/renderer/Image.cpp: Added.

(rx::Image::Image):
(rx::Image::loadAlphaDataToBGRA):
(rx::Image::loadAlphaDataToNative):
(rx::Image::loadAlphaFloatDataToRGBA):
(rx::Image::loadAlphaHalfFloatDataToRGBA):
(rx::Image::loadLuminanceDataToNativeOrBGRA):
(rx::Image::loadLuminanceFloatDataToRGBA):
(rx::Image::loadLuminanceFloatDataToRGB):
(rx::Image::loadLuminanceHalfFloatDataToRGBA):
(rx::Image::loadLuminanceAlphaDataToNativeOrBGRA):
(rx::Image::loadLuminanceAlphaFloatDataToRGBA):
(rx::Image::loadLuminanceAlphaHalfFloatDataToRGBA):
(rx::Image::loadRGBUByteDataToBGRX):
(rx::Image::loadRGBUByteDataToRGBA):
(rx::Image::loadRGB565DataToBGRA):
(rx::Image::loadRGB565DataToRGBA):
(rx::Image::loadRGBFloatDataToRGBA):
(rx::Image::loadRGBFloatDataToNative):
(rx::Image::loadRGBHalfFloatDataToRGBA):
(rx::Image::loadRGBAUByteDataToBGRA):
(rx::Image::loadRGBAUByteDataToNative):
(rx::Image::loadRGBA4444DataToBGRA):
(rx::Image::loadRGBA4444DataToRGBA):
(rx::Image::loadRGBA5551DataToBGRA):
(rx::Image::loadRGBA5551DataToRGBA):
(rx::Image::loadRGBAFloatDataToRGBA):
(rx::Image::loadRGBAHalfFloatDataToRGBA):
(rx::Image::loadBGRADataToBGRA):

  • src/libGLESv2/renderer/Image.h: Added.

(rx::Image::~Image):
(rx::Image::getWidth):
(rx::Image::getHeight):
(rx::Image::getInternalFormat):
(rx::Image::getActualFormat):
(rx::Image::markDirty):
(rx::Image::markClean):
(rx::Image::setManagedSurface):

  • src/libGLESv2/renderer/Image11.cpp: Added.

(rx::Image11::Image11):
(rx::Image11::~Image11):
(rx::Image11::makeImage11):
(rx::Image11::generateMipmap):
(rx::Image11::isDirty):
(rx::Image11::updateSurface):
(rx::Image11::redefine):
(rx::Image11::isRenderableFormat):
(rx::Image11::getDXGIFormat):
(rx::Image11::loadData):
(rx::Image11::loadCompressedData):
(rx::Image11::copy):
(rx::Image11::getStagingTexture):
(rx::Image11::getStagingSubresource):
(rx::Image11::createStagingTexture):
(rx::Image11::map):
(rx::Image11::unmap):

  • src/libGLESv2/renderer/Image11.h: Added.
  • src/libGLESv2/renderer/Image9.cpp: Added.

(rx::Image9::Image9):
(rx::Image9::~Image9):
(rx::Image9::generateMip):
(rx::Image9::makeImage9):
(rx::Image9::generateMipmap):
(rx::Image9::copyLockableSurfaces):
(rx::Image9::redefine):
(rx::Image9::createSurface):
(rx::Image9::lock):
(rx::Image9::unlock):
(rx::Image9::isRenderableFormat):
(rx::Image9::getD3DFormat):
(rx::Image9::getSurface):
(rx::Image9::setManagedSurface):
(rx::Image9::updateSurface):
(rx::Image9::loadData):
(rx::Image9::loadCompressedData):
(rx::Image9::copy):

  • src/libGLESv2/renderer/Image9.h: Added.

(rx::Image9::isDirty):

  • src/libGLESv2/renderer/ImageSSE2.cpp: Added.

(rx::Image::loadRGBAUByteDataToBGRASSE2):
(rx::Image::loadAlphaDataToBGRASSE2):

  • src/libGLESv2/renderer/IndexBuffer.cpp: Added.

(rx::IndexBuffer::IndexBuffer):
(rx::IndexBuffer::~IndexBuffer):
(rx::IndexBuffer::getSerial):
(rx::IndexBuffer::updateSerial):
(rx::IndexBufferInterface::IndexBufferInterface):
(rx::IndexBufferInterface::~IndexBufferInterface):
(rx::IndexBufferInterface::getIndexType):
(rx::IndexBufferInterface::getBufferSize):
(rx::IndexBufferInterface::getSerial):
(rx::IndexBufferInterface::mapBuffer):
(rx::IndexBufferInterface::unmapBuffer):
(rx::IndexBufferInterface::getIndexBuffer):
(rx::IndexBufferInterface::getWritePosition):
(rx::IndexBufferInterface::setWritePosition):
(rx::IndexBufferInterface::discard):
(rx::IndexBufferInterface::setBufferSize):
(rx::StreamingIndexBufferInterface::StreamingIndexBufferInterface):
(rx::StreamingIndexBufferInterface::~StreamingIndexBufferInterface):
(rx::StreamingIndexBufferInterface::reserveBufferSpace):
(rx::StaticIndexBufferInterface::StaticIndexBufferInterface):
(rx::StaticIndexBufferInterface::~StaticIndexBufferInterface):
(rx::StaticIndexBufferInterface::reserveBufferSpace):
(rx::StaticIndexBufferInterface::lookupRange):
(rx::StaticIndexBufferInterface::addRange):

  • src/libGLESv2/renderer/IndexBuffer.h: Added.

(rx::StaticIndexBufferInterface::IndexRange::operator<):

  • src/libGLESv2/renderer/IndexBuffer11.cpp: Added.

(rx::IndexBuffer11::IndexBuffer11):
(rx::IndexBuffer11::~IndexBuffer11):
(rx::IndexBuffer11::initialize):
(rx::IndexBuffer11::makeIndexBuffer11):
(rx::IndexBuffer11::mapBuffer):
(rx::IndexBuffer11::unmapBuffer):
(rx::IndexBuffer11::getIndexType):
(rx::IndexBuffer11::getBufferSize):
(rx::IndexBuffer11::setSize):
(rx::IndexBuffer11::discard):
(rx::IndexBuffer11::getIndexFormat):
(rx::IndexBuffer11::getBuffer):

  • src/libGLESv2/renderer/IndexBuffer11.h: Added.
  • src/libGLESv2/renderer/IndexBuffer9.cpp: Added.

(rx::IndexBuffer9::IndexBuffer9):
(rx::IndexBuffer9::~IndexBuffer9):
(rx::IndexBuffer9::initialize):
(rx::IndexBuffer9::makeIndexBuffer9):
(rx::IndexBuffer9::mapBuffer):
(rx::IndexBuffer9::unmapBuffer):
(rx::IndexBuffer9::getIndexType):
(rx::IndexBuffer9::getBufferSize):
(rx::IndexBuffer9::setSize):
(rx::IndexBuffer9::discard):
(rx::IndexBuffer9::getIndexFormat):
(rx::IndexBuffer9::getBuffer):

  • src/libGLESv2/renderer/IndexBuffer9.h: Added.
  • src/libGLESv2/renderer/IndexDataManager.cpp: Added.

(rx::IndexDataManager::IndexDataManager):
(rx::IndexDataManager::~IndexDataManager):
(rx::indexTypeSize):
(rx::convertIndices):
(rx::computeRange):
(rx::IndexDataManager::prepareIndexData):
(rx::IndexDataManager::getCountingIndices):

  • src/libGLESv2/renderer/IndexDataManager.h: Added.
  • src/libGLESv2/renderer/InputLayoutCache.cpp: Added.

(rx::InputLayoutCache::InputLayoutCache):
(rx::InputLayoutCache::~InputLayoutCache):
(rx::InputLayoutCache::initialize):
(rx::InputLayoutCache::clear):
(rx::InputLayoutCache::applyVertexBuffers):
(rx::InputLayoutCache::hashInputLayout):
(rx::InputLayoutCache::compareInputLayouts):

  • src/libGLESv2/renderer/InputLayoutCache.h: Added.
  • src/libGLESv2/renderer/Query11.cpp: Added.

(rx::Query11::Query11):
(rx::Query11::~Query11):
(rx::Query11::begin):
(rx::Query11::end):
(rx::Query11::getResult):
(rx::Query11::isResultAvailable):
(rx::Query11::testQuery):

  • src/libGLESv2/renderer/Query11.h: Added.
  • src/libGLESv2/renderer/Query9.cpp: Added.

(rx::Query9::Query9):
(rx::Query9::~Query9):
(rx::Query9::begin):
(rx::Query9::end):
(rx::Query9::getResult):
(rx::Query9::isResultAvailable):
(rx::Query9::testQuery):

  • src/libGLESv2/renderer/Query9.h: Added.
  • src/libGLESv2/renderer/QueryImpl.h: Added.

(rx::QueryImpl::QueryImpl):
(rx::QueryImpl::~QueryImpl):
(rx::QueryImpl::getType):

  • src/libGLESv2/renderer/RenderStateCache.cpp: Added.

(rx::RenderStateCache::RenderStateCache):
(rx::RenderStateCache::~RenderStateCache):
(rx::RenderStateCache::initialize):
(rx::RenderStateCache::clear):
(rx::RenderStateCache::hashBlendState):
(rx::RenderStateCache::compareBlendStates):
(rx::RenderStateCache::getBlendState):
(rx::RenderStateCache::hashRasterizerState):
(rx::RenderStateCache::compareRasterizerStates):
(rx::RenderStateCache::getRasterizerState):
(rx::RenderStateCache::hashDepthStencilState):
(rx::RenderStateCache::compareDepthStencilStates):
(rx::RenderStateCache::getDepthStencilState):
(rx::RenderStateCache::hashSamplerState):
(rx::RenderStateCache::compareSamplerStates):
(rx::RenderStateCache::getSamplerState):

  • src/libGLESv2/renderer/RenderStateCache.h: Added.
  • src/libGLESv2/renderer/RenderTarget.h: Added.

(rx::RenderTarget::RenderTarget):
(rx::RenderTarget::~RenderTarget):
(rx::RenderTarget::getWidth):
(rx::RenderTarget::getHeight):
(rx::RenderTarget::getInternalFormat):
(rx::RenderTarget::getActualFormat):
(rx::RenderTarget::getSamples):

  • src/libGLESv2/renderer/RenderTarget11.cpp: Added.

(rx::getRTVSubresourceIndex):
(rx::getDSVSubresourceIndex):
(rx::RenderTarget11::RenderTarget11):
(rx::RenderTarget11::~RenderTarget11):
(rx::RenderTarget11::makeRenderTarget11):
(rx::RenderTarget11::getTexture):
(rx::RenderTarget11::getRenderTargetView):
(rx::RenderTarget11::getDepthStencilView):
(rx::RenderTarget11::getShaderResourceView):
(rx::RenderTarget11::getSubresourceIndex):

  • src/libGLESv2/renderer/RenderTarget11.h: Added.
  • src/libGLESv2/renderer/RenderTarget9.cpp: Added.

(rx::RenderTarget9::RenderTarget9):
(rx::RenderTarget9::~RenderTarget9):
(rx::RenderTarget9::makeRenderTarget9):
(rx::RenderTarget9::getSurface):

  • src/libGLESv2/renderer/RenderTarget9.h: Added.
  • src/libGLESv2/renderer/Renderer.cpp: Added.

(rx::Renderer::Renderer):
(rx::Renderer::~Renderer):
(rx::Renderer::initializeCompiler):
(rx::Renderer::compileToBinary):

  • src/libGLESv2/renderer/Renderer.h: Added.

(getComparableOSVersion):
(rx::Renderer::getVertexTextureSupport):

  • src/libGLESv2/renderer/Renderer11.cpp: Added.

(rx::Renderer11::Renderer11):
(rx::Renderer11::~Renderer11):
(rx::Renderer11::makeRenderer11):
(rx::Renderer11::initialize):
(rx::Renderer11::initializeDevice):
(rx::Renderer11::generateConfigs):
(rx::Renderer11::deleteConfigs):
(rx::Renderer11::sync):
(rx::Renderer11::createSwapChain):
(rx::Renderer11::setSamplerState):
(rx::Renderer11::setTexture):
(rx::Renderer11::setRasterizerState):
(rx::Renderer11::setBlendState):
(rx::Renderer11::setDepthStencilState):
(rx::Renderer11::setScissorRectangle):
(rx::Renderer11::setViewport):
(rx::Renderer11::applyPrimitiveType):
(rx::Renderer11::applyRenderTarget):
(rx::Renderer11::applyVertexBuffer):
(rx::Renderer11::applyIndexBuffer):
(rx::Renderer11::drawArrays):
(rx::Renderer11::drawElements):
(rx::Renderer11::drawLineLoop):
(rx::Renderer11::drawTriangleFan):
(rx::Renderer11::applyShaders):
(rx::Renderer11::applyUniforms):
(rx::Renderer11::clear):
(rx::Renderer11::maskedClear):
(rx::Renderer11::markAllStateDirty):
(rx::Renderer11::releaseDeviceResources):
(rx::Renderer11::notifyDeviceLost):
(rx::Renderer11::isDeviceLost):
(rx::Renderer11::testDeviceLost):
(rx::Renderer11::testDeviceResettable):
(rx::Renderer11::release):
(rx::Renderer11::resetDevice):
(rx::Renderer11::getAdapterVendor):
(rx::Renderer11::getRendererDescription):
(rx::Renderer11::getAdapterIdentifier):
(rx::Renderer11::getBGRATextureSupport):
(rx::Renderer11::getDXT1TextureSupport):
(rx::Renderer11::getDXT3TextureSupport):
(rx::Renderer11::getDXT5TextureSupport):
(rx::Renderer11::getDepthTextureSupport):
(rx::Renderer11::getFloat32TextureSupport):
(rx::Renderer11::getFloat16TextureSupport):
(rx::Renderer11::getLuminanceTextureSupport):
(rx::Renderer11::getLuminanceAlphaTextureSupport):
(rx::Renderer11::getTextureFilterAnisotropySupport):
(rx::Renderer11::getTextureMaxAnisotropy):
(rx::Renderer11::getEventQuerySupport):
(rx::Renderer11::getViewportBounds):
(rx::Renderer11::getMaxVertexTextureImageUnits):
(rx::Renderer11::getMaxCombinedTextureImageUnits):
(rx::Renderer11::getReservedVertexUniformVectors):
(rx::Renderer11::getReservedFragmentUniformVectors):
(rx::Renderer11::getMaxVertexUniformVectors):
(rx::Renderer11::getMaxFragmentUniformVectors):
(rx::Renderer11::getMaxVaryingVectors):
(rx::Renderer11::getNonPower2TextureSupport):
(rx::Renderer11::getOcclusionQuerySupport):
(rx::Renderer11::getInstancingSupport):
(rx::Renderer11::getShareHandleSupport):
(rx::Renderer11::getDerivativeInstructionSupport):
(rx::Renderer11::getPostSubBufferSupport):
(rx::Renderer11::getMajorShaderModel):
(rx::Renderer11::getMinorShaderModel):
(rx::Renderer11::getMaxPointSize):
(rx::Renderer11::getMaxViewportDimension):
(rx::Renderer11::getMaxTextureWidth):
(rx::Renderer11::getMaxTextureHeight):
(rx::Renderer11::get32BitIndexSupport):
(rx::Renderer11::getMinSwapInterval):
(rx::Renderer11::getMaxSwapInterval):
(rx::Renderer11::getMaxSupportedSamples):
(rx::Renderer11::getNearestSupportedSamples):
(rx::Renderer11::getMaxRenderTargets):
(rx::Renderer11::copyToRenderTarget):
(rx::Renderer11::copyImage):
(rx::Renderer11::copyTexture):
(rx::Renderer11::unapplyRenderTargets):
(rx::Renderer11::setOneTimeRenderTarget):
(rx::Renderer11::createRenderTarget):
(rx::Renderer11::loadExecutable):
(rx::Renderer11::compileToExecutable):
(rx::Renderer11::createVertexBuffer):
(rx::Renderer11::createIndexBuffer):
(rx::Renderer11::createBufferStorage):
(rx::Renderer11::createQuery):
(rx::Renderer11::createFence):
(rx::Renderer11::getRenderTargetResource):
(rx::Renderer11::blitRect):
(rx::Renderer11::readPixels):
(rx::Renderer11::createImage):
(rx::Renderer11::generateMipmap):
(rx::Renderer11::createTextureStorage2D):
(rx::Renderer11::createTextureStorageCube):
(rx::getFastPixelCopySize):
(rx::readPixelColor):
(rx::writePixelColor):
(rx::Renderer11::readTextureData):
(rx::Renderer11::blitRenderbufferRect):
(rx::Renderer11::resolveMultisampledTexture):
(rx::Renderer11::getLUID):

  • src/libGLESv2/renderer/Renderer11.h: Added.

(rx::Renderer11::getDevice):
(rx::Renderer11::getDeviceContext):
(rx::Renderer11::getDxgiFactory):

  • src/libGLESv2/renderer/Renderer9.cpp: Added.

(rx::Renderer9::Renderer9):
(rx::Renderer9::~Renderer9):
(rx::Renderer9::makeRenderer9):
(rx::Renderer9::initialize):
(rx::Renderer9::initializeDevice):
(rx::Renderer9::getDefaultPresentParameters):
(rx::Renderer9::generateConfigs):
(rx::Renderer9::deleteConfigs):
(rx::Renderer9::startScene):
(rx::Renderer9::endScene):
(rx::Renderer9::sync):
(rx::Renderer9::createSwapChain):
(rx::Renderer9::allocateEventQuery):
(rx::Renderer9::freeEventQuery):
(rx::Renderer9::createVertexShader):
(rx::Renderer9::createPixelShader):
(rx::Renderer9::createVertexBuffer):
(rx::Renderer9::createIndexBuffer):
(rx::Renderer9::createBufferStorage):
(rx::Renderer9::createQuery):
(rx::Renderer9::createFence):
(rx::Renderer9::setSamplerState):
(rx::Renderer9::setTexture):
(rx::Renderer9::setRasterizerState):
(rx::Renderer9::setBlendState):
(rx::Renderer9::setDepthStencilState):
(rx::Renderer9::setScissorRectangle):
(rx::Renderer9::setViewport):
(rx::Renderer9::applyPrimitiveType):
(rx::Renderer9::getNullColorbuffer):
(rx::Renderer9::applyRenderTarget):
(rx::Renderer9::applyVertexBuffer):
(rx::Renderer9::applyIndexBuffer):
(rx::Renderer9::drawArrays):
(rx::Renderer9::drawElements):
(rx::Renderer9::drawLineLoop):
(rx::drawPoints):
(rx::Renderer9::drawIndexedPoints):
(rx::Renderer9::applyShaders):
(rx::Renderer9::applyUniforms):
(rx::Renderer9::applyUniformnfv):
(rx::Renderer9::applyUniformniv):
(rx::Renderer9::applyUniformnbv):
(rx::Renderer9::clear):
(rx::Renderer9::markAllStateDirty):
(rx::Renderer9::releaseDeviceResources):
(rx::Renderer9::notifyDeviceLost):
(rx::Renderer9::isDeviceLost):
(rx::Renderer9::testDeviceLost):
(rx::Renderer9::testDeviceResettable):
(rx::Renderer9::resetDevice):
(rx::Renderer9::getAdapterVendor):
(rx::Renderer9::getRendererDescription):
(rx::Renderer9::getAdapterIdentifier):
(rx::Renderer9::getMultiSampleSupport):
(rx::Renderer9::getBGRATextureSupport):
(rx::Renderer9::getDXT1TextureSupport):
(rx::Renderer9::getDXT3TextureSupport):
(rx::Renderer9::getDXT5TextureSupport):
(rx::Renderer9::getDepthTextureSupport):
(rx::Renderer9::getFloat32TextureSupport):
(rx::Renderer9::getFloat16TextureSupport):
(rx::Renderer9::getLuminanceTextureSupport):
(rx::Renderer9::getLuminanceAlphaTextureSupport):
(rx::Renderer9::getTextureFilterAnisotropySupport):
(rx::Renderer9::getTextureMaxAnisotropy):
(rx::Renderer9::getEventQuerySupport):
(rx::Renderer9::getMaxVertexTextureImageUnits):
(rx::Renderer9::getMaxCombinedTextureImageUnits):
(rx::Renderer9::getReservedVertexUniformVectors):
(rx::Renderer9::getReservedFragmentUniformVectors):
(rx::Renderer9::getMaxVertexUniformVectors):
(rx::Renderer9::getMaxFragmentUniformVectors):
(rx::Renderer9::getMaxVaryingVectors):
(rx::Renderer9::getNonPower2TextureSupport):
(rx::Renderer9::getOcclusionQuerySupport):
(rx::Renderer9::getInstancingSupport):
(rx::Renderer9::getShareHandleSupport):
(rx::Renderer9::getDerivativeInstructionSupport):
(rx::Renderer9::getPostSubBufferSupport):
(rx::Renderer9::getMajorShaderModel):
(rx::Renderer9::getMaxPointSize):
(rx::Renderer9::getMaxViewportDimension):
(rx::Renderer9::getMaxTextureWidth):
(rx::Renderer9::getMaxTextureHeight):
(rx::Renderer9::get32BitIndexSupport):
(rx::Renderer9::getCapsDeclTypes):
(rx::Renderer9::getMinSwapInterval):
(rx::Renderer9::getMaxSwapInterval):
(rx::Renderer9::getMaxSupportedSamples):
(rx::Renderer9::getNearestSupportedSamples):
(rx::Renderer9::getMaxRenderTargets):
(rx::Renderer9::ConvertTextureInternalFormat):
(rx::Renderer9::copyToRenderTarget):
(rx::Renderer9::getBufferPool):
(rx::Renderer9::copyImage):
(rx::Renderer9::blitRect):
(rx::Renderer9::readPixels):
(rx::Renderer9::createRenderTarget):
(rx::Renderer9::loadExecutable):
(rx::Renderer9::compileToExecutable):
(rx::Renderer9::boxFilter):
(rx::Renderer9::getTexturePool):
(rx::Renderer9::createImage):
(rx::Renderer9::generateMipmap):
(rx::Renderer9::createTextureStorage2D):
(rx::Renderer9::createTextureStorageCube):
(rx::Renderer9::getLUID):

  • src/libGLESv2/renderer/Renderer9.h: Added.

(rx::Renderer9::getDevice):

  • src/libGLESv2/renderer/ShaderCache.h: Added.

(rx::ShaderCache::ShaderCache):
(rx::ShaderCache::~ShaderCache):
(rx::ShaderCache::initialize):
(rx::ShaderCache::create):
(rx::ShaderCache::clear):
(rx::ShaderCache::createShader):

  • src/libGLESv2/renderer/ShaderExecutable.h: Added.

(rx::ShaderExecutable::ShaderExecutable):
(rx::ShaderExecutable::~ShaderExecutable):
(rx::ShaderExecutable::getFunction):
(rx::ShaderExecutable::getLength):

  • src/libGLESv2/renderer/ShaderExecutable11.cpp: Added.

(rx::ShaderExecutable11::ShaderExecutable11):
(rx::ShaderExecutable11::~ShaderExecutable11):
(rx::ShaderExecutable11::makeShaderExecutable11):
(rx::ShaderExecutable11::getVertexShader):
(rx::ShaderExecutable11::getPixelShader):
(rx::ShaderExecutable11::getGeometryShader):
(rx::ShaderExecutable11::getConstantBuffer):

  • src/libGLESv2/renderer/ShaderExecutable11.h: Added.
  • src/libGLESv2/renderer/ShaderExecutable9.cpp: Added.

(rx::ShaderExecutable9::ShaderExecutable9):
(rx::ShaderExecutable9::~ShaderExecutable9):
(rx::ShaderExecutable9::makeShaderExecutable9):
(rx::ShaderExecutable9::getVertexShader):
(rx::ShaderExecutable9::getPixelShader):

  • src/libGLESv2/renderer/ShaderExecutable9.h: Added.
  • src/libGLESv2/renderer/SwapChain.h: Added.

(rx::SwapChain::SwapChain):
(rx::SwapChain::~SwapChain):
(rx::SwapChain::getShareHandle):

  • src/libGLESv2/renderer/SwapChain11.cpp: Added.

(rx::SwapChain11::SwapChain11):
(rx::SwapChain11::~SwapChain11):
(rx::SwapChain11::release):
(rx::SwapChain11::releaseOffscreenTexture):
(rx::SwapChain11::resetOffscreenTexture):
(rx::SwapChain11::resize):
(rx::SwapChain11::reset):
(rx::SwapChain11::initPassThroughResources):
(rx::SwapChain11::swapRect):
(rx::SwapChain11::getOffscreenTexture):
(rx::SwapChain11::getRenderTarget):
(rx::SwapChain11::getRenderTargetShaderResource):
(rx::SwapChain11::getDepthStencil):
(rx::SwapChain11::getDepthStencilTexture):
(rx::SwapChain11::makeSwapChain11):
(rx::SwapChain11::recreate):

  • src/libGLESv2/renderer/SwapChain11.h: Added.

(rx::SwapChain11::getWidth):
(rx::SwapChain11::getHeight):

  • src/libGLESv2/renderer/SwapChain9.cpp: Added.

(rx::SwapChain9::SwapChain9):
(rx::SwapChain9::~SwapChain9):
(rx::SwapChain9::release):
(rx::convertInterval):
(rx::SwapChain9::resize):
(rx::SwapChain9::reset):
(rx::SwapChain9::swapRect):
(rx::SwapChain9::getRenderTarget):
(rx::SwapChain9::getDepthStencil):
(rx::SwapChain9::getOffscreenTexture):
(rx::SwapChain9::makeSwapChain9):
(rx::SwapChain9::recreate):

  • src/libGLESv2/renderer/SwapChain9.h: Added.
  • src/libGLESv2/renderer/TextureStorage.cpp: Added.

(rx::TextureStorageInterface::TextureStorageInterface):
(rx::TextureStorageInterface::~TextureStorageInterface):
(rx::TextureStorageInterface::isRenderTarget):
(rx::TextureStorageInterface::isManaged):
(rx::TextureStorageInterface::getTextureSerial):
(rx::TextureStorageInterface::issueTextureSerial):
(rx::TextureStorageInterface::getLodOffset):
(rx::TextureStorageInterface::levelCount):
(rx::TextureStorageInterface2D::TextureStorageInterface2D):
(rx::TextureStorageInterface2D::~TextureStorageInterface2D):
(rx::TextureStorageInterface2D::getRenderTarget):
(rx::TextureStorageInterface2D::generateMipmap):
(rx::TextureStorageInterface2D::getRenderTargetSerial):
(rx::TextureStorageInterfaceCube::TextureStorageInterfaceCube):
(rx::TextureStorageInterfaceCube::~TextureStorageInterfaceCube):
(rx::TextureStorageInterfaceCube::getRenderTarget):
(rx::TextureStorageInterfaceCube::generateMipmap):
(rx::TextureStorageInterfaceCube::getRenderTargetSerial):

  • src/libGLESv2/renderer/TextureStorage.h: Added.

(rx::TextureStorage::TextureStorage):
(rx::TextureStorage::~TextureStorage):
(rx::TextureStorageInterface::getStorageInstance):

  • src/libGLESv2/renderer/TextureStorage11.cpp: Added.

(rx::TextureStorage11::TextureStorage11):
(rx::TextureStorage11::~TextureStorage11):
(rx::TextureStorage11::makeTextureStorage11):
(rx::TextureStorage11::GetTextureBindFlags):
(rx::TextureStorage11::IsTextureFormatRenderable):
(rx::TextureStorage11::getBindFlags):
(rx::TextureStorage11::getBaseTexture):
(rx::TextureStorage11::getLodOffset):
(rx::TextureStorage11::isRenderTarget):
(rx::TextureStorage11::isManaged):
(rx::TextureStorage11::levelCount):
(rx::TextureStorage11::getSubresourceIndex):
(rx::TextureStorage11::updateSubresourceLevel):
(rx::TextureStorage11::generateMipmapLayer):
(rx::TextureStorage11_2D::TextureStorage11_2D):
(rx::TextureStorage11_2D::~TextureStorage11_2D):
(rx::TextureStorage11_2D::makeTextureStorage11_2D):
(rx::TextureStorage11_2D::getRenderTarget):
(rx::TextureStorage11_2D::getSRV):
(rx::TextureStorage11_2D::generateMipmap):
(rx::TextureStorage11_Cube::TextureStorage11_Cube):
(rx::TextureStorage11_Cube::~TextureStorage11_Cube):
(rx::TextureStorage11_Cube::makeTextureStorage11_Cube):
(rx::TextureStorage11_Cube::getRenderTarget):
(rx::TextureStorage11_Cube::getSRV):
(rx::TextureStorage11_Cube::generateMipmap):

  • src/libGLESv2/renderer/TextureStorage11.h: Added.

(rx::TextureStorage11::getRenderTarget):
(rx::TextureStorage11::generateMipmap):

  • src/libGLESv2/renderer/TextureStorage9.cpp: Added.

(rx::TextureStorage9::TextureStorage9):
(rx::TextureStorage9::~TextureStorage9):
(rx::TextureStorage9::makeTextureStorage9):
(rx::TextureStorage9::GetTextureUsage):
(rx::TextureStorage9::IsTextureFormatRenderable):
(rx::TextureStorage9::isRenderTarget):
(rx::TextureStorage9::isManaged):
(rx::TextureStorage9::getPool):
(rx::TextureStorage9::getUsage):
(rx::TextureStorage9::getLodOffset):
(rx::TextureStorage9::levelCount):
(rx::TextureStorage9_2D::TextureStorage9_2D):
(rx::TextureStorage9_2D::~TextureStorage9_2D):
(rx::TextureStorage9_2D::makeTextureStorage9_2D):
(rx::TextureStorage9_2D::getSurfaceLevel):
(rx::TextureStorage9_2D::getRenderTarget):
(rx::TextureStorage9_2D::generateMipmap):
(rx::TextureStorage9_2D::getBaseTexture):
(rx::TextureStorage9_2D::initializeRenderTarget):
(rx::TextureStorage9_Cube::TextureStorage9_Cube):
(rx::TextureStorage9_Cube::~TextureStorage9_Cube):
(rx::TextureStorage9_Cube::makeTextureStorage9_Cube):
(rx::TextureStorage9_Cube::getCubeMapSurface):
(rx::TextureStorage9_Cube::getRenderTarget):
(rx::TextureStorage9_Cube::generateMipmap):
(rx::TextureStorage9_Cube::getBaseTexture):
(rx::TextureStorage9_Cube::initializeRenderTarget):

  • src/libGLESv2/renderer/TextureStorage9.h: Added.

(rx::TextureStorage9::getRenderTarget):
(rx::TextureStorage9::generateMipmap):

  • src/libGLESv2/renderer/VertexBuffer.cpp: Added.

(rx::VertexBuffer::VertexBuffer):
(rx::VertexBuffer::~VertexBuffer):
(rx::VertexBuffer::updateSerial):
(rx::VertexBuffer::getSerial):
(rx::VertexBufferInterface::VertexBufferInterface):
(rx::VertexBufferInterface::~VertexBufferInterface):
(rx::VertexBufferInterface::getSerial):
(rx::VertexBufferInterface::getBufferSize):
(rx::VertexBufferInterface::setBufferSize):
(rx::VertexBufferInterface::getWritePosition):
(rx::VertexBufferInterface::setWritePosition):
(rx::VertexBufferInterface::discard):
(rx::VertexBufferInterface::storeVertexAttributes):
(rx::VertexBufferInterface::storeRawData):
(rx::VertexBufferInterface::reserveVertexSpace):
(rx::VertexBufferInterface::reserveRawDataSpace):
(rx::VertexBufferInterface::getVertexBuffer):
(rx::StreamingVertexBufferInterface::StreamingVertexBufferInterface):
(rx::StreamingVertexBufferInterface::~StreamingVertexBufferInterface):
(rx::StreamingVertexBufferInterface::reserveSpace):
(rx::StaticVertexBufferInterface::StaticVertexBufferInterface):
(rx::StaticVertexBufferInterface::~StaticVertexBufferInterface):
(rx::StaticVertexBufferInterface::lookupAttribute):
(rx::StaticVertexBufferInterface::reserveSpace):
(rx::StaticVertexBufferInterface::storeVertexAttributes):

  • src/libGLESv2/renderer/VertexBuffer.h: Added.
  • src/libGLESv2/renderer/VertexBuffer11.cpp: Added.

(rx::VertexBuffer11::VertexBuffer11):
(rx::VertexBuffer11::~VertexBuffer11):
(rx::VertexBuffer11::initialize):
(rx::VertexBuffer11::makeVertexBuffer11):
(rx::VertexBuffer11::storeVertexAttributes):
(rx::VertexBuffer11::storeRawData):
(rx::VertexBuffer11::getSpaceRequired):
(rx::VertexBuffer11::requiresConversion):
(rx::VertexBuffer11::getBufferSize):
(rx::VertexBuffer11::setBufferSize):
(rx::VertexBuffer11::discard):
(rx::VertexBuffer11::getVertexSize):
(rx::VertexBuffer11::getDXGIFormat):
(rx::VertexBuffer11::getBuffer):
(rx::copyVertexData):
(rx::copyFixedVertexData):
(rx::copyToFloatVertexData):
(rx::VertexBuffer11::getVertexConversion):

  • src/libGLESv2/renderer/VertexBuffer11.h: Added.
  • src/libGLESv2/renderer/VertexBuffer9.cpp: Added.

(rx::VertexBuffer9::VertexBuffer9):
(rx::VertexBuffer9::~VertexBuffer9):
(rx::VertexBuffer9::initialize):
(rx::VertexBuffer9::makeVertexBuffer9):
(rx::VertexBuffer9::storeVertexAttributes):
(rx::VertexBuffer9::storeRawData):
(rx::VertexBuffer9::getSpaceRequired):
(rx::VertexBuffer9::requiresConversion):
(rx::VertexBuffer9::getVertexSize):
(rx::VertexBuffer9::getDeclType):
(rx::VertexBuffer9::getBufferSize):
(rx::VertexBuffer9::setBufferSize):
(rx::VertexBuffer9::discard):
(rx::VertexBuffer9::getBuffer):
(rx::VertexBuffer9::initializeTranslations):
(rx::VertexBuffer9::typeIndex):
(rx::VertexBuffer9::formatConverter):
(rx::VertexBuffer9::spaceRequired):

  • src/libGLESv2/renderer/VertexBuffer9.h: Added.
  • src/libGLESv2/renderer/VertexDataManager.cpp: Added.

(rx::elementsInBuffer):
(rx::VertexDataManager::VertexDataManager):
(rx::VertexDataManager::~VertexDataManager):
(rx::directStoragePossible):
(rx::VertexDataManager::prepareVertexData):

  • src/libGLESv2/renderer/VertexDataManager.h: Added.
  • src/libGLESv2/renderer/VertexDeclarationCache.cpp: Added.

(rx::VertexDeclarationCache::VertexDeclarationCache):
(rx::VertexDeclarationCache::~VertexDeclarationCache):
(rx::VertexDeclarationCache::applyDeclaration):
(rx::VertexDeclarationCache::markStateDirty):

  • src/libGLESv2/renderer/VertexDeclarationCache.h: Added.
  • src/libGLESv2/renderer/generatemip.h: Added.

(rx::L8::average):
(rx::A8L8::average):
(rx::A8R8G8B8::average):
(rx::A16B16G16R16F::average):
(rx::R16F::average):
(rx::R16G16F::average):
(rx::A32B32G32R32F::average):
(rx::R32F::average):
(rx::R32G32F::average):
(rx::R32G32B32F::average):
(rx::GenerateMip):

  • src/libGLESv2/renderer/renderer11_utils.cpp: Added.

(gl_d3d11::ConvertBlendFunc):
(gl_d3d11::ConvertBlendOp):
(gl_d3d11::ConvertColorMask):
(gl_d3d11::ConvertCullMode):
(gl_d3d11::ConvertComparison):
(gl_d3d11::ConvertDepthMask):
(gl_d3d11::ConvertStencilMask):
(gl_d3d11::ConvertStencilOp):
(gl_d3d11::ConvertFilter):
(gl_d3d11::ConvertTextureWrap):
(gl_d3d11::ConvertMinLOD):
(gl_d3d11::ConvertMaxLOD):
(d3d11_gl::ConvertBackBufferFormat):
(d3d11_gl::ConvertDepthStencilFormat):
(d3d11_gl::ConvertRenderbufferFormat):
(d3d11_gl::ConvertTextureInternalFormat):
(gl_d3d11::ConvertRenderbufferFormat):
(gl_d3d11::ConvertTextureFormat):
(d3d11::SetPositionTexCoordVertex):
(d3d11::SetPositionDepthColorVertex):
(d3d11::ComputePixelSizeBits):
(d3d11::ComputeBlockSizeBits):
(d3d11::IsCompressed):
(d3d11::GetTextureFormatDimensionAlignment):
(d3d11::IsDepthStencilFormat):
(d3d11::GetDepthTextureFormat):
(d3d11::GetDepthShaderResourceFormat):
(d3d11::SetDebugName):

  • src/libGLESv2/renderer/renderer11_utils.h: Added.

(d3d11::isDeviceLostError):

  • src/libGLESv2/renderer/renderer9_utils.cpp: Added.

(gl_d3d9::ConvertComparison):
(gl_d3d9::ConvertColor):
(gl_d3d9::ConvertBlendFunc):
(gl_d3d9::ConvertBlendOp):
(gl_d3d9::ConvertStencilOp):
(gl_d3d9::ConvertTextureWrap):
(gl_d3d9::ConvertCullMode):
(gl_d3d9::ConvertCubeFace):
(gl_d3d9::ConvertColorMask):
(gl_d3d9::ConvertMagFilter):
(gl_d3d9::ConvertMinFilter):
(gl_d3d9::ConvertRenderbufferFormat):
(gl_d3d9::GetMultisampleTypeFromSamples):
(d3d9_gl::GetStencilSize):
(d3d9_gl::GetAlphaSize):
(d3d9_gl::GetSamplesFromMultisampleType):
(d3d9_gl::IsFormatChannelEquivalent):
(d3d9_gl::ConvertBackBufferFormat):
(d3d9_gl::ConvertDepthStencilFormat):
(d3d9_gl::ConvertRenderTargetFormat):
(d3d9_gl::GetEquivalentFormat):
(d3d9::IsCompressedFormat):
(d3d9::ComputeRowSize):

  • src/libGLESv2/renderer/renderer9_utils.h: Added.

(d3d9::isDeviceLostError):

  • src/libGLESv2/renderer/shaders: Added.
  • src/libGLESv2/renderer/shaders/Blit.ps: Added.
  • src/libGLESv2/renderer/shaders/Blit.vs: Added.
  • src/libGLESv2/renderer/shaders/Clear11.hlsl: Added.
  • src/libGLESv2/renderer/shaders/Passthrough11.hlsl: Added.
  • src/libGLESv2/renderer/shaders/compiled: Added.
  • src/libGLESv2/renderer/shaders/compiled/clear11vs.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/clearmultiple11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/clearsingle11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/componentmaskps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/flipyvs.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/luminanceps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthrough11vs.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthroughlum11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthroughlumalpha11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthroughps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthroughrgb11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/passthroughrgba11ps.h: Added.
  • src/libGLESv2/renderer/shaders/compiled/standardvs.h: Added.
  • src/libGLESv2/renderer/shaders/generate_shaders.bat: Added.
  • src/libGLESv2/renderer/vertexconversion.h: Added.

(rx::Identity::convert):
(rx::Cast::convert):
(rx::Normalize::convert):
(rx::FixedToFloat::convert):
(rx::SimpleDefaultValues::zero):
(rx::SimpleDefaultValues::one):
(rx::NormalizedDefaultValues::zero):
(rx::NormalizedDefaultValues::one):
(rx::VertexDataConverter::convertArray):
(rx::VertexDataConverter::pointerAddBytes):
(rx::VertexDataConverter::copyComponent):

  • src/libGLESv2/resource.h: Added.
  • src/libGLESv2/utilities.cpp: Added.

(gl::UniformComponentCount):
(gl::UniformComponentType):
(gl::UniformComponentSize):
(gl::UniformInternalSize):
(gl::UniformExternalSize):
(gl::VariableRowCount):
(gl::VariableColumnCount):
(gl::AllocateFirstFreeBits):
(gl::ComputePitch):
(gl::ComputeCompressedPitch):
(gl::ComputeCompressedSize):
(gl::IsCompressed):
(gl::IsDepthTexture):
(gl::IsStencilTexture):
(gl::MakeValidSize):
(gl::ComputePixelSize):
(gl::IsCubemapTextureTarget):
(gl::IsInternalTextureTarget):
(gl::ConvertSizedInternalFormat):
(gl::ExtractFormat):
(gl::ExtractType):
(gl::IsColorRenderable):
(gl::IsDepthRenderable):
(gl::IsStencilRenderable):
(gl::IsFloat32Format):
(gl::IsFloat16Format):
(gl::GetAlphaSize):
(gl::GetRedSize):
(gl::GetGreenSize):
(gl::GetBlueSize):
(gl::GetDepthSize):
(gl::GetStencilSize):
(gl::IsTriangleMode):
(getTempPath):
(writeFile):

  • src/libGLESv2/utilities.h: Added.
  • src/third_party/murmurhash: Added.
  • src/third_party/murmurhash/LICENSE: Added.
  • src/third_party/murmurhash/MurmurHash3.cpp: Added, replaced tabs with spaces.

(rotl32):
(rotl64):
(getblock):
(fmix):
(MurmurHash3_x86_32):
(MurmurHash3_x86_128):
(MurmurHash3_x64_128):

  • src/third_party/murmurhash/MurmurHash3.h: Added, replaced tabs with spaces.

Source/WebCore: Updated ANGLE to latest git commit (047373aa3eb408be62be52ade840fa5f11e72337).
https://bugs.webkit.org/show_bug.cgi?id=118550

Reviewed by Dean Jackson.

  • CMakeLists.txt: Renamed DetectRecursion to DetectCallDepth and added Uniform.cpp.
3:20 PM Changeset in webkit [153063] by commit-queue@webkit.org
  • 3 edits
    6 moves
    5 adds
    2 deletes in trunk/LayoutTests

[CSS Shapes] New positioning model: support for rounded rectangle shape-outside
https://bugs.webkit.org/show_bug.cgi?id=118081

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-07-23
Reviewed by Dean Jackson.

Update the shape-outside rounded rectangle tests and import them from
the CSS WG's repository. They have been moved to the CSS WG repository
so they can be part of the spec test suite for CSS Shapes.

  • TestExpectations: Remove skipping for tests that have been replaced.
  • csswg/submitted/shapes/shape-outside/resources/rounded-rectangle.js: Added.

(ellipseXIntercept):
(scanConvertRoundedRectangleOutside):
(genLeftRightRoundedRectFloatShapeOutsideRefTest):
(genLeftRoundedRectFloatShapeOutsideRefTest):
(genRightRoundedRectFloatShapeOutsideRefTest):

  • csswg/submitted/shapes/shape-outside/resources/subpixel-utils.js: Added.

(SubPixelLayout):
(SubPixelLayout.):

  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001-expected.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001-expected.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002-expected.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002-expected.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003-expected.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003-expected.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003.html.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004-expected.html: Added.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html: Added.
  • csswg/submitted/shapes/shape-outside/w3c-import.log:
2:53 PM Changeset in webkit [153062] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Use Checked<uint32_t, RecordOverflow> instead of CheckedInt in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=118988

Reviewed by Oliver Hunt.

Use the WTF's Checked class, with uint32_t as the numeric type and RecordOverflow as the overflow handler,
instead of the CheckedInt class. This removes a layering violation that's occurring due to including the CheckedInt
header that's currently located in the WebCore layer (alongside the HTML canvas code in Source/WebCore/html/canvas).

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore::GraphicsContext3D::computeImageSizeInBytes):

12:47 PM Changeset in webkit [153061] by Alan Bujtas
  • 3 edits
    2 adds in trunk

REGRESSION(r152313): Links in certain twitter postings don't warp correctly on page
https://bugs.webkit.org/show_bug.cgi?id=118435

Reviewed by David Hyatt.

When we find an empty inline in the middle of the word, prefer breaking it before
instead of after to match other browsers' rendering.

Source/WebCore:

Test: fast/text/whitespace/inline-whitespace-wrapping-12.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::canBreakAtThisPosition):

LayoutTests:

  • fast/text/whitespace/inline-whitespace-wrapping-12-expected.html: Added.
  • fast/text/whitespace/inline-whitespace-wrapping-12.html: Added.
12:09 PM Changeset in webkit [153060] by ap@apple.com
  • 6 edits
    2 adds in trunk

Dictionary hotkey does not work on vertical text
https://bugs.webkit.org/show_bug.cgi?id=118993
<rdar://problem/14478260>

Reviewed by Enrica Casucci.

Test: platform/mac/editing/input/firstrectforcharacterrange-vertical.html

  • editing/Editor.cpp: (WebCore::collapseCaretWidth): A helper function. (WebCore::Editor::firstRectForRange): Many changes:
  • use RenderObject::absoluteBoundingBoxRectForRange() in regular case, because that's more direct that getting caret rects and computing bounding rect from those.
  • handle collapsed ranges separately, because absoluteBoundingBoxRectForRange() doesn't provide the needed result, and because it can be done faster.
  • wherever we use carets to compute the result, account for vertical text (in a hackish way, as we don't have layout information at Editor level).
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::localCaretRect): Removed dead code.
12:02 PM Changeset in webkit [153059] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/win

[Win] WebView didReceiveIcon delegate call doesn't have the icon in it
https://bugs.webkit.org/show_bug.cgi?id=100379

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-23
Reviewed by Brent Fulgham.

Added missing icon to WebView didReceiveIcon delegate call, fixes <rdar://problem/5491010>.

  • WebView.cpp:

(WebView::dispatchDidReceiveIconFromWebFrame):

11:49 AM Changeset in webkit [153058] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

[CSS Shapes] New positioning model: Borders
https://bugs.webkit.org/show_bug.cgi?id=118822

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-07-23
Reviewed by Dean Jackson.

Source/WebCore:

Converting to the shape coordinate system was not properly accounting
for borders and padding. This has been fixed and a new convienence
method added because of the added complexity of the conversion.

Test: csswg/submitted/shapes/shape-outside/shape-outside-floats-square-border-000.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::logicalLeftFloatOffsetForLine): Update to use

computeSegmentsForContainingBlockLine to do the coordinate
conversion.

(WebCore::RenderBlock::logicalRightFloatOffsetForLine): Ditto.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Ditto.

  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::computeSegmentsForContainingBlockLine):

Add new method to do the coordinate conversion from the containing
block coordinate system to the coordinate system of the shape so
that the segments can be correctly calculated.

LayoutTests:

Test that the shape is properly respected when the float has a border.

  • csswg/submitted/shapes/shape-outside/shape-outside-floats-square-border-000-expected.html: Added.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-square-border-000.html: Added.
  • csswg/submitted/shapes/shape-outside/w3c-import.log: Updated with new

import information.

10:36 AM Changeset in webkit [153057] by abucur@adobe.com
  • 5 edits
    4 adds
    32 deletes in trunk/LayoutTests

[CSS Regions] Convert percentage-margins-* tests to ref-tests
https://bugs.webkit.org/show_bug.cgi?id=118723

Reviewed by Andreas Kling.

The patch converts the percentage margins tests for regions in ref tests.

  • fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.html: Added.
  • fast/regions/percentage-margins-mixed-ltr-dominant-regions.html:
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.html: Added.
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions.html:
  • fast/regions/percentage-margins-rtl-variable-width-regions-expected.html: Added.
  • fast/regions/percentage-margins-rtl-variable-width-regions.html:
  • fast/regions/percentage-margins-variable-width-regions-expected.html: Added.
  • fast/regions/percentage-margins-variable-width-regions.html:
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
10:36 AM Changeset in webkit [153056] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix after r153054.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
10:16 AM Changeset in webkit [153055] by allan.jensen@digia.com
  • 4 edits in trunk/Source

Remove deprecated and unused compositing settings
https://bugs.webkit.org/show_bug.cgi?id=119014

Reviewed by Andreas Kling.

Source/WebCore:

  • page/Settings.in:

Source/WebKit/qt:

Remove A set of settings to control accelerated compositing that have long been
replaced with triggers returned by ChromeClient, but haven't been fully removed.

They are only set by the Qt port but not read anywhere.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):

10:14 AM Changeset in webkit [153054] by timothy_horton@apple.com
  • 16 edits
    2 adds in trunk

Add a test for plug-in unavailability indicator obscurity detection
https://bugs.webkit.org/show_bug.cgi?id=119007

Reviewed by Anders Carlsson.

Test: plugins/unavailable-plugin-indicator-obscurity.html

Expose the ability to test whether the unavailable plugin indicator
is obscured via the internals object.

  • testing/Internals.cpp:

(WebCore::Internals::isPluginUnavailabilityIndicatorObscured):

  • testing/Internals.h:
  • testing/Internals.idl:

Expose RenderEmbeddedObject::isReplacementObscured as
internals.isPluginUnavailabilityIndicatorObscured for testing purposes.

Expose the ability to block plug-ins via pluginLoadPolicy to testRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setBlockAllPlugins):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
Add testRunner.setBlockAllPlugins function (and corresponding message to
forward it through to TestController).

  • WebKitTestRunner/TestController.cpp:

Initialize m_shouldBlockAllPlugins to false (and drive-by initialize m_handlesAuthenticationChallenges).

(WTR::TestController::createWebViewWithOptions):
Register our pluginLoadPolicy callback.

(WTR::TestController::resetStateToConsistentValues):
Reset m_shouldBlockAllPlugins to false.

(WTR::TestController::pluginLoadPolicy):
Return the existing plugin load policy, unless setBlockAllPlugins(true)
was called, in which case we reject all plugins with kWKPluginLoadPolicyBlocked.

  • WebKitTestRunner/TestController.h:

(WTR::TestController::setBlockAllPlugins):

Add a test that ensures that RenderEmbeddedObject accurately detects the
various different ways the unavailable plugin dialog can be obscured.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
  • plugins/unavailable-plugin-indicator-obscurity-expected.txt: Added.
  • plugins/unavailable-plugin-indicator-obscurity.html: Added.
  • Source/autotools/symbols.filter:

Expose RenderEmbeddedObject::isReplacementObscured to internals.

9:43 AM Changeset in webkit [153053] by zoltan@webkit.org
  • 4 edits in trunk/LayoutTests

[Qt] REGRESSION(r152906) Modified fast/shapes/shape-inside/shape-inside-overflow.html ref test fails.
https://bugs.webkit.org/show_bug.cgi?id=118964

Reviewed by Andreas Kling.

I modified the test to use Ahem font. Now it's working well on Qt as well.

  • fast/shapes/shape-inside/shape-inside-overflow-expected.html:
  • fast/shapes/shape-inside/shape-inside-overflow.html:
8:36 AM Changeset in webkit [153052] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit/gtk

[GTK] GtkAdjustmentWatcher idle source not correctly handled
https://bugs.webkit.org/show_bug.cgi?id=119003

Reviewed by Martin Robinson.

GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater()
creates a new idle source and initializes
m_updateAdjustmentCallbackId, which is used everywhere and
specially in the destructor to cancel the source when the
GtkAdjustmentWatcher is deleted. However,
m_updateAdjustmentCallbackId is reset to 0 in
GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars() only when
not returning early. This method is public and not only called by
the updateAdjustmentCallback, which means that a call to
updateAdjustmentsFromScrollbars could reset the
m_updateAdjustmentCallbackId without actually destroying the source.

  • WebCoreSupport/GtkAdjustmentWatcher.cpp:

(WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars):
Cancel the adjustment later idle if it has been scheduled.
(WebKit::GtkAdjustmentWatcher::updateAdjustmentCallback): Reset
m_updateAdjustmentCallbackId.

  • WebCoreSupport/GtkAdjustmentWatcher.h:
8:08 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:34 AM Changeset in webkit [153051] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Added expectations for flaky tests.

  • platform/gtk/TestExpectations: Added new expectations.
6:32 AM Changeset in webkit [153050] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Unskip passing tests.
https://bugs.webkit.org/show_bug.cgi?id=119008

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-23

  • platform/gtk/TestExpectations: unskip editing/selection/mixed-editability-10.html,

editing/selection/5825350-1.html and editing/selection/5825350-2.html since they have new
baselines, unskip http/tests/security/mixedContent/insecure-audio-video-in-main-frame.html
after r152778, unskip fast/images/webgl-teximage2d.html after r152531 and
svg/custom/xlink-prefix-in-attributes.html after r152785

6:20 AM Changeset in webkit [153049] by mario@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Baseline and rebaseline needed after r152612 and r152911.

  • platform/gtk/editing/caret/caret-color-expected.txt: Added.
  • platform/gtk/fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Updated.
5:35 AM Changeset in webkit [153048] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebKit2

[EFL][WK2] Add doneWithTouchEvent callback to the WKViewClient.
https://bugs.webkit.org/show_bug.cgi?id=110085

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2013-07-23
Reviewed by Kenneth Rohde Christiansen.

Add doneWithTouchEvent callback to the WKViewClient in order to get the
result of touch events in the EwkView. The result will be used to
recognize gestures in the Bug 102643.

APIs to get values from WKTouchEventRef and WKTouchPointRef are added
because WKTypeRef is opaque to the applications.

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/API/C/efl/WKAPICastEfl.h:

(WebKit::toAPI):

  • UIProcess/API/C/efl/WKEventEfl.cpp:

(WKTouchEventGetType):
(WKTouchEventGetTouchPoints):
(WKTouchEventGetModifiers):
(WKTouchEventGetTimestamp):
(WKTouchPointGetID):
(WKTouchPointGetState):
(WKTouchPointGetScreenPosition):
(WKTouchPointGetPosition):
(WKTouchPointGetRadius):
(WKTouchPointGetRotationAngle):
(WKTouchPointGetForceFactor):

  • UIProcess/API/C/efl/WKEventEfl.h:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::doneWithTouchEvent):

  • UIProcess/API/efl/EwkView.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::doneWithTouchEvent):

  • UIProcess/CoordinatedGraphics/WebViewClient.cpp:

(WebKit::WebViewClient::doneWithTouchEvent):

  • UIProcess/CoordinatedGraphics/WebViewClient.h:
  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::doneWithTouchEvent):
(WebKit::ViewClientEfl::ViewClientEfl):

  • UIProcess/efl/ViewClientEfl.h:
5:24 AM Changeset in webkit [153047] by mario@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Added needed baselines after r104133.

  • platform/gtk/perf/nested-combined-selectors-expected.txt: Added.
4:51 AM Changeset in webkit [153046] by zandobersek@gmail.com
  • 4 edits in trunk/Source/WebCore

[Soup] Clean up header inclusions in ResourceRequest(Soup), SocketStreamHandle
https://bugs.webkit.org/show_bug.cgi?id=118984

Reviewed by Darin Adler.

Execute a minor cleanup of the header inclusions in Soup-specific ResourceRequestSoup.cpp, ResourceRequest.h
and SocketStreamHandle.h source files. The inclusions are sorted into proper order, with blank lines and unnecessary
reinclusions removed.

  • platform/network/soup/ResourceRequest.h:
  • platform/network/soup/ResourceRequestSoup.cpp:
  • platform/network/soup/SocketStreamHandle.h:
4:38 AM Changeset in webkit [153045] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[Soup] Remove unnecessary header inclusions in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=118983

Reviewed by Martin Robinson.

Remove inclusions of the CachedResourceLoader, ChromeClient, Frame and Page headers. These are not
necessary (anymore) and only prevent the source file to be built independently of WebCore, as it should be.

  • platform/network/soup/ResourceHandleSoup.cpp:
4:30 AM Changeset in webkit [153044] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebInspectorUI

WebSocket initialization to use remote inspector
https://bugs.webkit.org/show_bug.cgi?id=118678

Patch by Roland Takacs <rtakacs@inf.u-szeged.hu> on 2013-07-23
Reviewed by Timothy Hatcher.

Add WebSocket initialization and define a 'connect-src' directive in the
Content-Security-Policy HTTP header to enable the connection.

  • UserInterface/InspectorFrontendHostStub.js:

(.WebInspector.InspectorFrontendHostStub.prototype.sendMessageToBackend):

  • UserInterface/Main.html:
  • UserInterface/Main.js:

(WebInspector.loaded):
(WebInspector._initializeWebSocketIfNeeded.createSocket.WebInspector):
(WebInspector._initializeWebSocketIfNeeded.createSocket):
(WebInspector._initializeWebSocketIfNeeded):

4:25 AM Changeset in webkit [153043] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

Remove unnecessary header inclusions in GraphicsContext3D.cpp, GraphicsContext3DOpenGLCommon.cpp
https://bugs.webkit.org/show_bug.cgi?id=118989

Reviewed by Darin Adler.

  • platform/graphics/GraphicsContext3D.cpp: Remove the unnecessary DrawingBuffer header inclusion.
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: Remove the unnecessary

CanvasRenderingContext and WebGLObject header inclusions.

4:24 AM Changeset in webkit [153042] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

Remove the topDocumentURL member of the GraphicsContext3D::Attributes struct
https://bugs.webkit.org/show_bug.cgi?id=118987

Reviewed by Darin Adler.

Remove the topDocumentURL member that currently resides in the GraphicsContext3D::Attributes struct.
It's not used anywhere and only has one place where it is set, in WebGLRenderingContext::create.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::create):

  • platform/graphics/GraphicsContext3D.h:
4:21 AM Changeset in webkit [153041] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

Remove unused DrawingBuffer::paintRenderingResultsToImageData
https://bugs.webkit.org/show_bug.cgi?id=118986

Reviewed by Darin Adler.

Remove the paintRenderingResultsToImageData method of the DrawingBuffer class. It is not used anywhere
and also introduces a nasty layering violation by including and operating with the ImageData class.

  • platform/graphics/gpu/DrawingBuffer.cpp:
  • platform/graphics/gpu/DrawingBuffer.h:
4:20 AM Changeset in webkit [153040] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Remove unnecessary includes in FormDataBuilder.cpp
https://bugs.webkit.org/show_bug.cgi?id=118991

Reviewed by Darin Adler.

  • platform/network/FormDataBuilder.cpp: Remove the Frame and FrameLoader header inclusions,

nothing these two headers provide is used in this source file.

4:17 AM Changeset in webkit [153039] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Fix the style of the ContentDispositionType enum definition
https://bugs.webkit.org/show_bug.cgi?id=118990

Reviewed by Darin Adler.

  • platform/network/HTTPParsers.h: Align the style of the ContentDispositionType enumeration

definition with the other enumeration definitions in the HTTPParsers header, using the
'enum Name { ... }' style instead of a typedef.

3:35 AM Changeset in webkit [153038] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. New baselines after r152941.
https://bugs.webkit.org/show_bug.cgi?id=119005

Unreviewed GTK gardening.

GTK's DumpRenderTree prints CONFIRM instead of CONFIRM NAVIGATION, so we need
platform-specific expectations.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-23

  • platform/gtk/fast/loader/show-only-one-beforeunload-dialog-expected.txt: Added.
  • platform/gtk/http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin-expected.txt: Added.
3:08 AM Changeset in webkit [153037] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Skip failing test.
https://bugs.webkit.org/show_bug.cgi?id=119006

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-23

  • platform/gtk/TestExpectations: mathml/presentation/fenced-mi.html fails

after being converted to ref test.

3:03 AM Changeset in webkit [153036] by mario@webkit.org
  • 1 edit
    7 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Added needed baselines for GTK+.

  • platform/gtk/fast/block/lineboxcontain/block-with-ideographs-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/details-summary-before-after-expected.txt: Added.
  • platform/gtk/fast/css3-text/css3-text-decoration/text-decoration-line-scaled-expected.txt: Added.
  • platform/gtk/fast/regions/region-dynamic-after-before-expected.txt: Added.
  • platform/gtk/fast/regions/region-generated-content-before-after-expected.txt: Added.
  • platform/gtk/fast/text/text-combine-different-fonts-expected.txt: Added.
  • platform/gtk/svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures-expected.txt: Added.
2:49 AM Changeset in webkit [153035] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[GTK] Mock GDK_IS_X11_DISPLAY macro can be redefined unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=118980

Reviewed by Martin Robinson.

  • platform/gtk/GtkVersioning.h: Only define the GDK_IS_X11_DISPLAY macro when using the GTK+ 2 API version

as that's the only supported configuration where the macro is not defined. Definining it only if it's not
yet defined at the time of inclusion of this header can cause redefinitions in GTK+ headers that are normally
included later.

1:24 AM Changeset in webkit [153034] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Enable some MathML reftests on Windows and EFL ports.
https://bugs.webkit.org/show_bug.cgi?id=118916

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-23
Reviewed by Chris Fleizach.

  • platform/efl/TestExpectations: do not skip over.html
  • platform/win/TestExpectations: enable most of the non-pixel tests

Jul 22, 2013:

10:40 PM Changeset in webkit [153033] by fpizlo@apple.com
  • 13 edits
    5 adds in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: DFG should do a high-level LICM before going to FTL
https://bugs.webkit.org/show_bug.cgi?id=118749

Reviewed by Oliver Hunt.

Implements LICM hoisting for nodes that never write anything and never read
things that are clobbered by the loop. There are some other preconditions for
hoisting, see DFGLICMPhase.cpp.

Also did a few fixes:

  • ClobberSet::add was failing to switch Super entries to Direct entries in some cases.


  • DFGClobberize.cpp needed to #include "Operations.h".


  • DCEPhase needs to process the graph in reverse DFS order, when we're in SSA.


  • AbstractInterpreter can now execute a Node without knowing its indexInBlock. Knowing the indexInBlock is an optional optimization that all other clients of AI still opt into, but LICM doesn't.


This makes the FTL a 2.19x speed-up on imaging-gaussian-blur.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreter.h:

(AbstractInterpreter):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):
(JSC::DFG::::execute):
(DFG):
(JSC::DFG::::clobberWorld):
(JSC::DFG::::clobberStructures):

  • dfg/DFGAtTailAbstractState.cpp: Added.

(DFG):
(JSC::DFG::AtTailAbstractState::AtTailAbstractState):
(JSC::DFG::AtTailAbstractState::~AtTailAbstractState):
(JSC::DFG::AtTailAbstractState::createValueForNode):
(JSC::DFG::AtTailAbstractState::forNode):

  • dfg/DFGAtTailAbstractState.h: Added.

(DFG):
(AtTailAbstractState):
(JSC::DFG::AtTailAbstractState::initializeTo):
(JSC::DFG::AtTailAbstractState::forNode):
(JSC::DFG::AtTailAbstractState::variables):
(JSC::DFG::AtTailAbstractState::block):
(JSC::DFG::AtTailAbstractState::isValid):
(JSC::DFG::AtTailAbstractState::setDidClobber):
(JSC::DFG::AtTailAbstractState::setIsValid):
(JSC::DFG::AtTailAbstractState::setBranchDirection):
(JSC::DFG::AtTailAbstractState::setFoundConstants):
(JSC::DFG::AtTailAbstractState::haveStructures):
(JSC::DFG::AtTailAbstractState::setHaveStructures):

  • dfg/DFGBasicBlock.h:

(JSC::DFG::BasicBlock::insertBeforeLast):

  • dfg/DFGBasicBlockInlines.h:

(DFG):

  • dfg/DFGClobberSet.cpp:

(JSC::DFG::ClobberSet::add):
(JSC::DFG::ClobberSet::addAll):

  • dfg/DFGClobberize.cpp:

(JSC::DFG::doesWrites):

  • dfg/DFGClobberize.h:

(DFG):

  • dfg/DFGDCEPhase.cpp:

(JSC::DFG::DCEPhase::DCEPhase):
(JSC::DFG::DCEPhase::run):
(JSC::DFG::DCEPhase::fixupBlock):
(DCEPhase):

  • dfg/DFGEdgeDominates.h: Added.

(DFG):
(EdgeDominates):
(JSC::DFG::EdgeDominates::EdgeDominates):
(JSC::DFG::EdgeDominates::operator()):
(JSC::DFG::EdgeDominates::result):
(JSC::DFG::edgesDominate):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGLICMPhase.cpp: Added.

(LICMPhase):
(JSC::DFG::LICMPhase::LICMPhase):
(JSC::DFG::LICMPhase::run):
(JSC::DFG::LICMPhase::attemptHoist):
(DFG):
(JSC::DFG::performLICM):

  • dfg/DFGLICMPhase.h: Added.

(DFG):

  • dfg/DFGPlan.cpp:

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

9:52 PM Changeset in webkit [153032] by Beth Dakin
  • 3 edits in trunk/Source/WebCore

StickyPositionConstraints should store the constrainingRectAtLastLayout
https://bugs.webkit.org/show_bug.cgi?id=118999

Reviewed by Simon Fraser.

Much like how FixedPositionConstraints store a viewportRectAtLastLayout,
StickyConstraints should store a constrainingRectAtLastLayout. We'll need this to
get sticky right in overflow areas once overflow areas scroll on the scrolling
thread.

  • page/scrolling/ScrollingConstraints.h:

(WebCore::StickyPositionViewportConstraints::StickyPositionViewportConstraints):
(WebCore::StickyPositionViewportConstraints::constrainingRectAtLastLayout):
(WebCore::StickyPositionViewportConstraints::setConstrainingRectAtLastLayout):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):

7:30 PM Changeset in webkit [153031] by Lucas Forschler
  • 11 edits in branches/safari-537-branch/Source

Merged r153017. <rdar://problem/14511268>

7:16 PM Changeset in webkit [153030] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebCore

Merged r153014. <rdar://problem/14516421>

7:12 PM Changeset in webkit [153029] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153013. <rdar://problem/14511232>

7:10 PM Changeset in webkit [153028] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r152989. <rdar://problem/13580220>

7:08 PM Changeset in webkit [153027] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152984. <rdar://problem/14155030>

7:04 PM Changeset in webkit [153026] by Lucas Forschler
  • 4 edits in branches/safari-537-branch

Merged r152951. <rdar://problem/14504480>

7:03 PM Changeset in webkit [153025] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Tools

Merged r152484. <rdar://problem/14504480>

6:51 PM Changeset in webkit [153024] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152950. <rdar://problem/14496721>

6:47 PM Changeset in webkit [153023] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebKit2

Merged r152787. <rdar://problem/14418799>

6:43 PM Changeset in webkit [153022] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

DateInputType constructor initiate incorrect base class
https://bugs.webkit.org/show_bug.cgi?id=118962

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-07-22
Reviewed by Gyuyoung Kim.

No new test required since solving code error

  • html/DateInputType.cpp:

(WebCore::DateInputType::DateInputType):
Corrected the base class instantiation in constructor.

6:24 PM Changeset in webkit [153021] by Lucas Forschler
  • 15 edits
    9 copies in branches/safari-537-branch

Merged r152941. <rdar://problem/14475779>

6:16 PM Changeset in webkit [153020] by Lucas Forschler
  • 2 edits in branches/safari-537-branch

Merged r152939. <rdar://problem/14497952>

6:15 PM Changeset in webkit [153019] by Lucas Forschler
  • 5 edits in branches/safari-537-branch

Merged r152939. <rdar://problem/14365153>

6:03 PM Changeset in webkit [153018] by Lucas Forschler
  • 14 edits
    50 copies in branches/safari-537-branch

Merged r152911. <rdar://problem/14109351>

6:02 PM Changeset in webkit [153017] by timothy_horton@apple.com
  • 11 edits in trunk/Source

Plug-in unavailability indicator should not be displayed if a blocked plugin's indicator is clipped
https://bugs.webkit.org/show_bug.cgi?id=118998
<rdar://problem/14511268>

Reviewed by Anders Carlsson.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::updateWidget):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::updateWidget):

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::defaultEventHandler):
(WebCore::HTMLPlugInElement::supportsFocus):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::createJavaAppletWidget):
(WebCore::SubframeLoader::loadPlugin):

  • page/FrameView.cpp:

(WebCore::FrameView::updateWidget):
Rename showsUnavailablePluginIndicator to isPluginUnavailable, since being unavailable
and actually showing the indicator are two totally different things.

  • WebCore.exp.in: Expose setUnavailablePluginIndicatorIsHidden.
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
Rename m_showsUnavailablePluginIndicator to m_isPluginUnavailable.
Add m_isUnavailablePluginIndicatorHidden, defaulting to false.

(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription):
Set m_isPluginUnavailable when we get an unavailability reason.

(WebCore::RenderEmbeddedObject::paint):
(WebCore::RenderEmbeddedObject::setUnavailablePluginIndicatorIsHidden): Added.

  • rendering/RenderEmbeddedObject.h:

(WebCore::RenderEmbeddedObject::isPluginUnavailable): Added.

(WebCore::RenderEmbeddedObject::showsUnavailablePluginIndicator):
Repurpose "showsUnavailablePluginIndicator" to actually represent whether
the indicator is displayed (i.e. the plugin is unavailable, and the
indicator is not hidden).

5:54 PM Changeset in webkit [153016] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-537-branch

Merged r152907. <rdar://problem/14494580>

5:51 PM Changeset in webkit [153015] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152882. <rdar://problem/14488577>

5:14 PM Changeset in webkit [153014] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

RenderEmbeddedObject::isReplacementObscured should include the arrow in its area-of-interest
https://bugs.webkit.org/show_bug.cgi?id=118995
<rdar://problem/14516421>

Reviewed by Anders Carlsson.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::unavailablePluginIndicatorBounds):
Rename method from replacementTextRect to unavailablePluginIndicatorBounds for accuracy.
Use the bounding box of the indicator's path, which includes the rounded rect behind
the text as well as the arrow button.

(WebCore::RenderEmbeddedObject::isReplacementObscured):

  • rendering/RenderEmbeddedObject.h:
5:05 PM Changeset in webkit [153013] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

<applet> plugins are instantiated post-attach (instead of post-layout like for object and embed)
https://bugs.webkit.org/show_bug.cgi?id=118994
<rdar://problem/14511232>

Reviewed by Anders Carlsson.

Make <applet> consistent with <object> and <embed>, deferring plugin
instantiation to post-layout, so that layout is up-to-date if anything
needs it (like RenderEmbeddedObject::isReplacementObscured) during creation.

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::updateWidget):
Copy code from HTMLObjectElement/HTMLEmbedElement that defers plugin
creation until post-layout tasks. Java is always an NPAPI plugin, so
we should always defer if requested.

4:53 PM Changeset in webkit [153012] by Lucas Forschler
  • 4 edits in branches/safari-537-branch

Merged r152874. <rdar://problem/14473010>

4:43 PM Changeset in webkit [153011] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152868. <rdar://problem/14486297>

4:37 PM Changeset in webkit [153010] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebKit2

Merged r152866. <rdar://problem/14474988>

4:34 PM Changeset in webkit [153009] by Lucas Forschler
  • 4 edits in branches/safari-537-branch/Source/WebKit2

Merged r152862. <rdar://problem/13826348>

3:33 PM Changeset in webkit [153008] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r152858. <rdar://problem/14480588>

3:29 PM Changeset in webkit [153007] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

String::lower() - Skip to slow path on the first failure
https://bugs.webkit.org/show_bug.cgi?id=118885

Reviewed by Andreas Kling.

In the 8 bits case, we don't need to know the state of the full string before changing characters
to their lowercase variant.
Just fail immediately and start transforming characters from the point of failure.

This avoid reading the string twice when the uppercase character is not at the end of the string.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::lower):

3:26 PM Changeset in webkit [153006] by Lucas Forschler
  • 4 edits in branches/safari-537-branch/Source

Merged r152848. <rdar://problem/14481659>

3:23 PM Changeset in webkit [153005] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Do not allocate 2 AtomicString just to do a comparison in HTMLAnchorElement::setRel()
https://bugs.webkit.org/show_bug.cgi?id=118941

Reviewed by Gavin Barraclough.

Currently, the only type of link relation supported by HTMLAnchorElement is RelationNoReferrer.

To find the value, we create a SpaceSplitString with the input value of the attribute (which
create one or more AtomicString depending on the input). Then we create a new AtomicString for
the literal "noreferrer". Finally, we compare the pointers and throw away all the AtomicStrings.

This causes a lot of memory operations for something really simple.

This patch adds a little helper method to SpaceSplitString to find a literal in the input. The only
allocation happens if we need to foldCase(). The following operations are done without allocating
new buffer and without hashing the input.

  • dom/SpaceSplitString.cpp:

(WebCore::tokenizeSpaceSplitString):
(WebCore::AppendTokenToVectorTokenProcessor::AppendTokenToVectorTokenProcessor):
(WebCore::AppendTokenToVectorTokenProcessor::processToken):
(WebCore::SpaceSplitStringData::createVector):
(WebCore::TokenIsEqualToCStringTokenProcessor::TokenIsEqualToCStringTokenProcessor):
(WebCore::TokenIsEqualToCStringTokenProcessor::processToken):
(WebCore::TokenIsEqualToCStringTokenProcessor::referenceStringWasFound):
(WebCore::SpaceSplitString::spaceSplitStringContainsValue):

  • dom/SpaceSplitString.h:

(WebCore::SpaceSplitString::spaceSplitStringContainsValue):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::setRel):

3:17 PM Changeset in webkit [153004] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r152839. <rdar://problem/14247011>

3:10 PM Changeset in webkit [153003] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk

segfault in RenderLayerCompositor when the iframe's position attribute is changed and it embeds <object>.
https://bugs.webkit.org/show_bug.cgi?id=118965

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-22
Reviewed by Simon Fraser.

Do not change the composition state unless we can reliably figure out the iframe's size.
If the renderer is not yet attached, its size is not computable.

Source/WebCore:

Test: compositing/iframes/iframe-position-absolute-with-padding-percentage-crash.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForFrame):

LayoutTests:

  • compositing/iframes/iframe-position-absolute-with-padding-percentage-crash-expected.txt: Added.
  • compositing/iframes/iframe-position-absolute-with-padding-percentage-crash.html: Added.
  • compositing/iframes/resources/embed-tag-with-composition.html: Added.
  • platform/efl/TestExpectations: skip
  • platform/efl-wk2/TestExpectations: skip
  • platform/qt-5.0-wk1/TestExpectations: skip
  • platform/qt-5.0-wk2/TestExpectations: skip
3:04 PM Changeset in webkit [153002] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: VoiceOver only read the first column in a safari table
https://bugs.webkit.org/show_bug.cgi?id=118992

Reviewed by Tim Horton.

Source/WebCore:

In case the first section has fewer columns than the rest of the table, the AXTable was only reporting the number of
columns for the first section. We need to take the max number of columns out of all sections.

Test: accessibility/table-with-mismatch-column-count-in-initial-section.html

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::addChildren):

LayoutTests:

  • accessibility/table-with-mismatch-column-count-in-initial-section-expected.txt: Added.
  • accessibility/table-with-mismatch-column-count-in-initial-section.html: Added.
2:59 PM Changeset in webkit [153001] by Lucas Forschler
  • 18 edits in branches/safari-537-branch

Merged r152824. <rdar://problem/14209318>

2:50 PM Changeset in webkit [153000] by Lucas Forschler
  • 38 edits
    1 delete in branches/safari-537-branch

Rollout of r152701. <rdar://problem/14209318>

2:48 PM Changeset in webkit [152999] by Lucas Forschler
  • 4 edits in branches/safari-537-branch/LayoutTests

Rollout of r152703. <rdar://problem/14209318>

2:32 PM Changeset in webkit [152998] by Beth Dakin
  • 7 edits
    2 adds in trunk

StickyPositionContraints should not need to change to account for a RenderLayer's
scrollOffset
https://bugs.webkit.org/show_bug.cgi?id=118958
-and corresponding-
<rdar://problem/12469203>

Reviewed by Simon Fraser.

Source/WebCore:

Before this patch, to get sticky offsets right in overflow areas, the
StickyPositionConstraints changed on every scroll to factor it in. This will be a
problem once we can scroll overflow areas on the scrolling thread. The constraints
should never have to change to account for the scroll position. This patch fixes
that issue by changing the StickyPositionViewportConstraints’s containerBlockRect
and stickyBoxRect to be in a coordinate space that is relative to the scrolling
ancestor rather than being absolute. This patch also removes ‘absolute’ from those
variable names since they are no longer absolute.

A few re-names in the StickyPositionViewportConstraints class. The parameter to
computeStickyOffset() used to be called viewportRect, and is now called
constrainingRect. m_absoluteStickyBoxRect is now m_stickyBoxRect, and
m_absoluteContainingBlockRect is now m_containingBlockRect. And finally,
layerPositionForViewportRect() is now layerPositionForConstrainingRect()

  • page/scrolling/ScrollingConstraints.cpp:

(WebCore::StickyPositionViewportConstraints::computeStickyOffset):
(WebCore::StickyPositionViewportConstraints::layerPositionForConstrainingRect):

  • page/scrolling/ScrollingConstraints.h:

(WebCore::StickyPositionViewportConstraints::StickyPositionViewportConstraints):
(WebCore::StickyPositionViewportConstraints::containingBlockRect):
(WebCore::StickyPositionViewportConstraints::setContainingBlockRect):
(WebCore::StickyPositionViewportConstraints::stickyBoxRect):
(WebCore::StickyPositionViewportConstraints::setStickyBoxRect):
(WebCore::StickyPositionViewportConstraints::operator==):

Accounting for the re-names.

  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):
(WebCore::ScrollingStateStickyNode::dumpProperties):

  • page/scrolling/mac/ScrollingTreeStickyNode.mm:

(WebCore::ScrollingTreeStickyNode::parentScrollPositionDidChange):

Compute all values relative to the scrolling ancestor. This requires some juggling
in the overflow case to factor border and padding in or out.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):

This is where the scrollOffset should be factored in.
(WebCore::RenderBoxModelObject::stickyPositionOffset):

LayoutTests:

This tests stick in overflow areas where the sticky’s containing block overflows
the overflow area. The sticky object should not extend beyond the overflow area in
that case.

  • fast/css/sticky/sticky-top-overflow-container-overflow-expected.html: Added.
  • fast/css/sticky/sticky-top-overflow-container-overflow.html: Added.
2:24 PM Changeset in webkit [152997] by Lucas Forschler
  • 7 edits
    2 copies in branches/safari-537-branch

Merged r152793. <rdar://problem/14152444>

2:21 PM Changeset in webkit [152996] by Lucas Forschler
  • 11 edits in branches/safari-537-branch

Merged r152788. <rdar://problem/14421609>

2:17 PM Changeset in webkit [152995] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-537-branch

Merged r152783. <rdar://problem/13540428>

2:15 PM Changeset in webkit [152994] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Websites/bugs.webkit.org

Merged r152751. <rdar://problem/14450661>

2:12 PM Changeset in webkit [152993] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r152743. <rdar://problem/14459780>

2:09 PM Changeset in webkit [152992] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152737. <rdar://problem/14435663>

2:07 PM Changeset in webkit [152991] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-537-branch

Merged r152721. <rdar://problem/14446514>

1:56 PM Changeset in webkit [152990] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebInspectorUI

Merged r152651. <rdar://problem/14406853>

1:54 PM Changeset in webkit [152989] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

PlugIn content can disappear after restarting
https://bugs.webkit.org/show_bug.cgi?id=118982

Reviewed by Simon Fraser.

When a snapshotted plug-in is restarted, we inserted its compositing
layer back into the tree, but didn't recalculate style. This meant
that a subsequent compositing tree operation (such as any hardware
animation) could cause the content to disappear.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::setDisplayState): Force a style recalc.
(WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired): Ditto.

1:52 PM Changeset in webkit [152988] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152600. <rdar://problem/14474400>

12:49 PM Changeset in webkit [152987] by joone.hur@intel.com
  • 2 edits
    5 adds in trunk/LayoutTests

Rebaseline the caret color test for the Mac port after r152612
https://bugs.webkit.org/show_bug.cgi?id=118961

Reviewed by Alexey Proskuryakov.

Added expected results of the caret color test for the Mac port.

  • platform/mac-wk2/editing/caret/caret-color-expected.png: Added.
  • platform/mac/TestExpectations:
  • platform/mac/editing/caret/caret-color-expected.png: Added.
  • platform/mac/editing/caret/caret-color-expected.txt: Added.
12:38 PM Changeset in webkit [152986] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION(r152227) Images with compositing layer don't show up unless the containing window is resized.
https://bugs.webkit.org/show_bug.cgi?id=118951

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-22
Reviewed by Simon Fraser.

Ensure that the content rect is initialized when the image is set on the graphics layer.

RenderLayerBacking::updateGraphicsLayerGeometry() only updates the contents rect when
the associated graphics layer has a content layer. Since the image gets committed
on the graphics layer after the update calls, the contents rect is left uninitialized.

Source/WebCore:

Test: compositing/images/positioned-image-content-rect.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateImageContents):

LayoutTests:

  • compositing/images/positioned-image-content-rect-expected.html: Added.
  • compositing/images/positioned-image-content-rect.html: Added.
11:48 AM Changeset in webkit [152985] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Old Web Inspector] When right-clicking on a DataGrid column, show editing menu option as "Edit <columnName>" instead of just "Edit"
https://bugs.webkit.org/show_bug.cgi?id=118971

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-07-22
Reviewed by Timothy Hatcher.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DataGrid.js: Change "Edit" for "Edit <columnTitle>"

(WebInspector.DataGrid.prototype._contextMenuInDataTable):

11:25 AM Changeset in webkit [152984] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Frequent MESSAGE_CHECK failures in WebPageProxy::didReceiveEvent
https://bugs.webkit.org/show_bug.cgi?id=118976
<rdar://problem/14155030>

Reviewed by Sam Weinig.

  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessExited): Clear m_gestureEventQueue, just like we clear all other event queues here.
11:14 AM Changeset in webkit [152983] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Fixed WinCairo build configurations.
https://bugs.webkit.org/show_bug.cgi?id=118932

Reviewed by Brent Fulgham.

  • WebKit.vcxproj/WebKit.sln:

Made WinCairo not build AssembleBuildLogs (wasn't working, not necessary).
Made Debug_WinCairo build with Debug_WinCairo configuration.
Made 64-bit WinCairo not build QTMovieWin.

11:12 AM Changeset in webkit [152982] by achristensen@apple.com
  • 6 edits in trunk/Source

Added assembly files to Windows 64-bit builds.
https://bugs.webkit.org/show_bug.cgi?id=118931

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Added JITStubsMSVC64.asm for x64 and enabled MASM.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Added JITStubsMSVC64.asm.

Source/WebCore:

  • WebCore.vcxproj/WebCore.vcxproj: Added PaintHooks.asm for x64 and enabled MASM.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Added PaintHooks.asm.
11:10 AM Changeset in webkit [152981] by commit-queue@webkit.org
  • 4 edits
    30 adds
    3 deletes in trunk/LayoutTests

Unreviewed, rolling out r152968.
http://trac.webkit.org/changeset/152968
https://bugs.webkit.org/show_bug.cgi?id=118975

"I forgot to add a test" (Requested by abucur on #webkit).

  • fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.html: Removed.
  • fast/regions/percentage-margins-mixed-ltr-dominant-regions.html:
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.html: Removed.
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions.html:
  • fast/regions/percentage-margins-rtl-variable-width-regions-expected.html: Removed.
  • fast/regions/percentage-margins-rtl-variable-width-regions.html:
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Added.
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Added.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Added.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Added.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Added.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Added.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.png: Added.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.txt: Added.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Added.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Added.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Added.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Added.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Added.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Added.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.png: Added.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.txt: Added.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Added.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Added.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Added.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Added.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Added.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Added.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Added.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Added.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Added.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Added.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Added.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Added.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.png: Added.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.txt: Added.
11:06 AM Changeset in webkit [152980] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Fix WebGL to a 2D canvas copies.
https://bugs.webkit.org/show_bug.cgi?id=118921
https://jira.bbqnx.net/browse/BRWSR-12714
JIRA 449577

Patch by Jakob Petsovits <jpetsovits@blackberry.com> on 2013-07-22
Reviewed by George Staikos.

The transform here was converted incorrectly when it
replaced the pixel copy that was there before.
As a true draw transformation, it doesn't need the "- 1"
modification that pixel copies often require.

Fixes existing webgl/conformance/canvas tests.

  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::paintToCanvas):

10:05 AM Changeset in webkit [152979] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: When right-clicking on a DataGrid column, show editing
menu option as "Edit <columnName>" instead of just "Edit"
https://bugs.webkit.org/show_bug.cgi?id=118970

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-07-22
Reviewed by Timothy Hatcher.

  • Localizations/en.lproj/localizedStrings.js: Add literal "Edit '%s'"
  • UserInterface/DataGrid.js: Change "Edit" for "Edit <columnTitle>"

(WebInspector.DataGrid.prototype._contextMenuInDataTable):

10:04 AM Changeset in webkit [152978] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening of AppleWin port. Skip some crashing tests.

  • platform/win/TestExpectations:
9:39 AM Changeset in webkit [152977] by mario@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Added baselines needed after r110542.

  • platform/gtk/fast/forms/label/labelable-elements-expected.txt: Added.
9:35 AM Changeset in webkit [152976] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[Curl] Download fails for certain urls.
https://bugs.webkit.org/show_bug.cgi?id=118468

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-22
Reviewed by Brent Fulgham.

Source/WebCore:

The current Curl download implementation has a few shortcomings:
1) Downloading from secure locations fails. We need to provide Curl with the path to a certificate file (.pem file).
2) Cookies are not set in the download request. We need to give Curl the path to the cookie file.
3) When a normal load is converted to a download, some of the headers from the original request is not sent (e.g. Referer, User agent).

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownload::CurlDownload): Initialize custom headers member.
(WebCore::CurlDownload::~CurlDownload): Free custom headers member.
(WebCore::CurlDownload::init): Set certificate and cookie file path.
(WebCore::CurlDownload::closeFile): Check file handle against value for invalid platform handle.
(WebCore::CurlDownload::writeDataToFile): Added utility method to write download data to file.
(WebCore::CurlDownload::addHeaders): Added utility method to add headers to request.
(WebCore::CurlDownload::didReceiveData): Use writeDataToFile utility method.

  • platform/network/curl/CurlDownload.h:

Put class in WebCore namespace.
Added method to init download from resource handle, request, and response object.
Added utility method to write download data to file.
Added utility method to add headers to request.
Added custom headers member.

Source/WebKit/win:

Initialize download from provided resource handle, request, and response object.

  • WebDownload.h: Use WebCore namespace for Curl download class.
  • WebDownloadCurl.cpp:

(WebDownload::init): Initialize download from provided resource handle, request, and response object.

9:26 AM Changeset in webkit [152975] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

[iOS] captions sometimes positioned incorrectly after fullscreen state change
https://bugs.webkit.org/show_bug.cgi?id=118912

Reviewed by Jer Noble.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay): Call clearTextTrackRepresentation.
(WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Call updateDisplay so

cues are re-rendered with the updated size.

(WebCore::MediaControlTextTrackContainerElement::clearTextTrackRepresentation): Cleanup the

text track representation.

(WebCore::MediaControlTextTrackContainerElement::enteredFullscreen): New, force cues to be updated.
(WebCore::MediaControlTextTrackContainerElement::exitedFullscreen): Ditto.

  • html/shadow/MediaControlElements.h:
  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::enteredFullscreen): Call MediaControlTextTrackContainerElement::enteredFullscreen.
(WebCore::MediaControls::exitedFullscreen): Call MediaControlTextTrackContainerElement::exitedFullscreen.

9:23 AM Changeset in webkit [152974] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Rebase after r152814.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-22

  • platform/qt-5.0-wk1/http/tests/security/contentSecurityPolicy/object-src-none-allowed-expected.txt:
9:23 AM Changeset in webkit [152973] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[Windows] Unreviewed build fix.

  • WTF.vcxproj/WTFGenerated.make: Stop triggering a "Build All" when things have not changed.
9:19 AM Changeset in webkit [152972] by mario@webkit.org
  • 1 edit
    17 adds in trunk/LayoutTests

Unreviewed gardening. Added new baselines for GTK+ after r152911.

  • platform/gtk/fast/multicol/pagination/BottomToTop-bt-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/BottomToTop-lr-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/BottomToTop-rl-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/BottomToTop-tb-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/LeftToRight-bt-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/LeftToRight-lr-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/LeftToRight-rl-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/LeftToRight-tb-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/RightToLeft-bt-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/RightToLeft-lr-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/RightToLeft-rl-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/RightToLeft-tb-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/TopToBottom-bt-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/TopToBottom-lr-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/TopToBottom-rl-expected.txt: Added.
  • platform/gtk/fast/multicol/pagination/TopToBottom-tb-expected.txt: Added.
9:10 AM Changeset in webkit [152971] by mario@webkit.org
  • 1 edit
    8 adds in trunk/LayoutTests

Unreviewed gardening. Added baselines for GTK+ related to subpixel layout.

  • platform/gtk/editing/selection/mixed-editability-10-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/animate-elem-22-b-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/animate-elem-23-t-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/coords-units-03-b-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt: Added.
  • platform/gtk/svg/custom/pattern-with-transformation-expected.txt: Added.
  • platform/gtk/svg/text/text-midpoint-split-bug-expected.txt: Added.
8:01 AM Changeset in webkit [152970] by mario@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed gardening. Added needed baselines for GTK after r149088.

  • platform/gtk/editing/selection/5825350-1-expected.txt: Added.
  • platform/gtk/editing/selection/5825350-2-expected.txt: Added.
7:04 AM Changeset in webkit [152969] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt][WK1] Support direct painting without GraphicsSurface
https://bugs.webkit.org/show_bug.cgi?id=118302

Reviewed by Jocelyn Turcotte.

Configure the WebGL OpenGL context to share texture with
the HostWindow OpenGL if available, and paint accelerated
using the the now shared textures.

This should return the performance without GraphicsSurface
on the WK1 code path to what it was before r135995 (28/11 2012).

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

7:02 AM Changeset in webkit [152968] by abucur@adobe.com
  • 4 edits
    3 adds
    30 deletes in trunk/LayoutTests

[CSS Regions] Convert percentage-margins-* tests to ref-tests
https://bugs.webkit.org/show_bug.cgi?id=118723

Reviewed by Andreas Kling.

The patch converts the percentage margins tests for regions in ref tests.

  • fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.html: Added.
  • fast/regions/percentage-margins-mixed-ltr-dominant-regions.html:
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.html: Added.
  • fast/regions/percentage-margins-mixed-rtl-dominant-regions.html:
  • fast/regions/percentage-margins-rtl-variable-width-regions-expected.html: Added.
  • fast/regions/percentage-margins-rtl-variable-width-regions.html:
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/gtk/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
  • platform/qt/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
6:39 AM Changeset in webkit [152967] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Add accesibility/lists.html as 'Missing' expectation.

  • platform/gtk/TestExpectations: Added test.
6:21 AM Changeset in webkit [152966] by kadam@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skipping failing tests.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-22

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt/TestExpectations:
6:15 AM Changeset in webkit [152965] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Regression: Multiple tests fail after r152701 changed how unavailable plugins are handled
https://bugs.webkit.org/show_bug.cgi?id=118730

Unreviewed GTK gardening. Unskip tests no longer failing.

Changes from r152701 were reverted in r152814 and later reworked in r152824,
so the tests no longer fail.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-22

  • platform/gtk/TestExpectations:
6:03 AM Changeset in webkit [152964] by mario@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Update test expectations for GTK.

  • platform/gtk/accessibility/aria-option-role-expected.txt: Update

expectations to match those from EFL.

  • platform/gtk/TestExpectations: Removed test from failures expectations,

now it's running as expected.

5:08 AM Changeset in webkit [152963] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source/WebCore

Introduce toSVGUseElement(), use it
https://bugs.webkit.org/show_bug.cgi?id=118942

Reviewed by Allan Sandfeld Jensen.

As a step to change static_cast with toSVGXXX, static_cast<SVGUseElement*> can
be changed with toSVGUseElement().

No new tests, no behavior change.

  • dom/EventRetargeter.h:

(WebCore::EventRetargeter::eventTargetRespectingTargetRules):

  • page/EventHandler.cpp:

(WebCore::instanceAssociatedWithShadowTreeElement):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):

  • rendering/svg/RenderSVGTransformableContainer.cpp:

(WebCore::RenderSVGTransformableContainer::calculateLocalTransform):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::title):

  • svg/SVGUseElement.cpp:

(WebCore::dumpInstanceTree):
(WebCore::SVGUseElement::buildInstanceTree):
(WebCore::SVGUseElement::expandUseElementsInShadowTree):

  • svg/SVGUseElement.h:

(WebCore::toSVGUseElement):

5:07 AM Changeset in webkit [152962] by gyuyoung.kim@samsung.com
  • 9 edits in trunk/Source/WebCore

Use toSVGPathElement() instead of static_cast<>
https://bugs.webkit.org/show_bug.cgi?id=118960

Reviewed by Allan Sandfeld Jensen.

Though there is toSVGPathElement(), some files still use static_cast<SVGPathElement*>.
To remove all static_cast<> use, we need to change argument from SVGElement to Element.

Merge from https://src.chromium.org/viewvc/blink?view=rev&revision=154621

No new tests, no behavior change.

  • rendering/svg/RenderSVGTextPath.cpp:

(WebCore::RenderSVGTextPath::layoutPath):

  • rendering/svg/SVGPathData.cpp:

(WebCore::updatePathFromPathElement):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::operator<<):

  • svg/SVGMPathElement.cpp:

(WebCore::SVGMPathElement::pathElement):

  • svg/SVGPathElement.h:

(WebCore::toSVGPathElement):

  • svg/SVGPathSegList.cpp:

(WebCore::SVGPathSegList::commitChange):

  • svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:

(WebCore::SVGAnimatedPathSegListPropertyTearOff::animValDidChange):

  • svg/properties/SVGPathSegListPropertyTearOff.cpp:

(WebCore::SVGPathSegListPropertyTearOff::contextElement):

4:44 AM Changeset in webkit [152961] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Implement more of DOM3 KeyEvent key-identifiers
https://bugs.webkit.org/show_bug.cgi?id=118566

Reviewed by Jocelyn Turcotte.

Implemented as many of the key values from http://www.w3.org/TR/DOM-Level-3-Events/#key-values-list
as Qt keycodes support.

Also corrected the mapping of the Menu key, which was confused because MENU
is also the ancient Microsoft speak for the Alt keys.

  • platform/qt/PlatformKeyboardEventQt.cpp:

(WebCore::keyIdentifierForQtKeyCode):

1:46 AM Changeset in webkit [152960] by kadam@inf.u-szeged.hu
  • 2 edits
    1 move
    2 adds
    1 delete in trunk/LayoutTests

[Qt] Unreviewed gardening. Update platform specific expectations.

  • platform/qt-5.0-wk1/fast/loader/show-only-one-beforeunload-dialog-expected.txt: Added after r152941.
  • platform/qt-5.0-wk1/http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin-expected.txt: Added after r152941.
  • platform/qt-5.0-wk2/fast/multicol/shrink-to-column-height-for-pagination-expected.png: Removed.
  • platform/qt/fast/multicol/shrink-to-column-height-for-pagination-expected.png: Added after r152911.
  • platform/qt/fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Renamed from LayoutTests/platform/qt-5.0-wk2/fast/multicol/shrink-to-column-height-for-pagination-expected.txt.

Jul 21, 2013:

9:04 PM Changeset in webkit [152959] by fpizlo@apple.com
  • 5 edits
    6 adds in branches/dfgFourthTier/Source

fourthTier: DFG Nodes should be able to abstractly tell you what they read and what they write
https://bugs.webkit.org/show_bug.cgi?id=118910

Source/JavaScriptCore:

Reviewed by Sam Weinig.

Add the notion of AbstractHeap to the DFG. This is analogous to the AbstractHeap in
the FTL, except that the FTL's AbstractHeaps are used during LLVM lowering and are
engineered to obey LLVM TBAA logic. The FTL's AbstractHeaps are also engineered to
be inexpensive to use (they just give you a TBAA node) but expensive to create (you
create them all up front). FTL AbstractHeaps also don't actually give you the
ability to reason about aliasing; they are *just* a mechanism for lowering to TBAA.
The DFG's AbstractHeaps are engineered to be both cheap to create and cheap to use.
They also give you aliasing machinery. The DFG AbstractHeaps are represented
internally by a int64_t. Many comparisons between them are just integer comaprisons.
AbstractHeaps form a three-level hierarchy (World is the supertype of everything,
Kind with a TOP payload is a direct subtype of World, and Kind with a non-TOP
payload is the direct subtype of its corresponding TOP Kind).

Add the notion of a ClobberSet. This is the set of AbstractHeaps that you had
clobbered. It represents the set that results from unifying a bunch of
AbstractHeaps, and is intended to quickly answer overlap questions: does the given
AbstractHeap overlap any AbstractHeap in the ClobberSet? To this end, if you add an
AbstractHeap to a set, it "directly" adds the heap itself, and "super" adds all of
its ancestors. An AbstractHeap is said to overlap a set if any direct or super
member is equal to it, or if any of its ancestors are equal to a direct member.

Example #1:

  • I add Variables(5). I.e. Variables is the Kind and 5 is the payload. This is a subtype of Variables, which is a subtype of World.
  • You query Variables. I.e. Variables with a TOP payload, which is the supertype of Variables(X) for any X, and a subtype of World.


The set will have Variables(5) as a direct member, and Variables and World as
super members. The Variables query will immediately return true, because
Variables is indeed a super member.


Example #2:

  • I add Variables(5)
  • You query NamedProperties


NamedProperties is not a member at all (neither direct or super). We next
query World. World is a member, but it's a super member, so we return false.


Example #3:

  • I add Variables
  • You query Variables(5)


The set will have Variables as a direct member, and World as a super member.
The Variables(5) query will not find Variables(5) in the set, but then it
will query Variables. Variables is a direct member, so we return true.


Example #4:

  • I add Variables
  • You query NamedProperties(5)


Neither NamedProperties nor NamedProperties(5) are members. We next query
World. World is a member, but it's a super member, so we return false.


Overlap queries require that either the heap being queried is in the set (either
direct or super), or that one of its ancestors is a direct member. Another way to
think about how this works is that two heaps A and B are said to overlap if
A.isSubtypeOf(B) or B.isSubtypeOf(A). This is sound since heaps form a
single-inheritance heirarchy. Consider that we wanted to implement a set that holds
heaps and answers the question, "is any member in the set an ancestor (i.e.
supertype) of some other heap". We would have the set contain the heaps themselves,
and we would satisfy the query "A.isSubtypeOfAny(set)" by walking the ancestor
chain of A, and repeatedly querying its membership in the set. This is what the
"direct" members of our set do. Now consider the other part, where we want to ask if
any member of the set is a descendent of a heap, or "A.isSupertypeOfAny(set)". We
would implement this by implementing set.add(B) as adding not just B but also all of
B's ancestors; then we would answer A.isSupertypeOfAny(set) by just checking if A is
in the set. With two such sets - one that answers isSubtypeOfAny() and another that
answers isSupertypeOfAny() - we could answer the "do any of my heaps overlap your
heap" question. ClobberSet does this, but combines the two sets into a single
HashMap. The HashMap's value, "direct", means that the key is a member of both the
supertype set and the subtype set; if it's false then it's only a member of one of
them.

Finally, this adds a functorized clobberize() method that adds the read and write
clobbers of a DFG::Node to read and write functors. Common functors for adding to
ClobberSets, querying overlap, and doing nothing are provided. Convenient wrappers
are also provided. This allows you to say things like:

ClobberSet set;
addWrites(graph, node1, set);
if (readsOverlap(graph, node2, set))

We know that node1 may write to something that node2 may read from.


Currently this facility is only used to improve graph dumping, but it will be
instrumental in both LICM and GVN. In the future, I want to completely kill the
NodeClobbersWorld and NodeMightClobber flags, and eradicate CSEPhase's hackish way
of accomplishing almost exactly what AbstractHeap gives you.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractHeap.cpp: Added.

(DFG):
(JSC::DFG::AbstractHeap::Payload::dump):
(JSC::DFG::AbstractHeap::dump):
(WTF):
(WTF::printInternal):

  • dfg/DFGAbstractHeap.h: Added.

(DFG):
(AbstractHeap):
(Payload):
(JSC::DFG::AbstractHeap::Payload::Payload):
(JSC::DFG::AbstractHeap::Payload::top):
(JSC::DFG::AbstractHeap::Payload::isTop):
(JSC::DFG::AbstractHeap::Payload::value):
(JSC::DFG::AbstractHeap::Payload::valueImpl):
(JSC::DFG::AbstractHeap::Payload::operator==):
(JSC::DFG::AbstractHeap::Payload::operator!=):
(JSC::DFG::AbstractHeap::Payload::operator<):
(JSC::DFG::AbstractHeap::Payload::isDisjoint):
(JSC::DFG::AbstractHeap::Payload::overlaps):
(JSC::DFG::AbstractHeap::AbstractHeap):
(JSC::DFG::AbstractHeap::operator!):
(JSC::DFG::AbstractHeap::kind):
(JSC::DFG::AbstractHeap::payload):
(JSC::DFG::AbstractHeap::isDisjoint):
(JSC::DFG::AbstractHeap::overlaps):
(JSC::DFG::AbstractHeap::supertype):
(JSC::DFG::AbstractHeap::hash):
(JSC::DFG::AbstractHeap::operator==):
(JSC::DFG::AbstractHeap::operator!=):
(JSC::DFG::AbstractHeap::operator<):
(JSC::DFG::AbstractHeap::isHashTableDeletedValue):
(JSC::DFG::AbstractHeap::payloadImpl):
(JSC::DFG::AbstractHeap::encode):
(JSC::DFG::AbstractHeapHash::hash):
(JSC::DFG::AbstractHeapHash::equal):
(AbstractHeapHash):
(WTF):

  • dfg/DFGClobberSet.cpp: Added.

(DFG):
(JSC::DFG::ClobberSet::ClobberSet):
(JSC::DFG::ClobberSet::~ClobberSet):
(JSC::DFG::ClobberSet::add):
(JSC::DFG::ClobberSet::addAll):
(JSC::DFG::ClobberSet::contains):
(JSC::DFG::ClobberSet::overlaps):
(JSC::DFG::ClobberSet::clear):
(JSC::DFG::ClobberSet::direct):
(JSC::DFG::ClobberSet::super):
(JSC::DFG::ClobberSet::dump):
(JSC::DFG::ClobberSet::setOf):
(JSC::DFG::addReads):
(JSC::DFG::addWrites):
(JSC::DFG::addReadsAndWrites):
(JSC::DFG::readsOverlap):
(JSC::DFG::writesOverlap):

  • dfg/DFGClobberSet.h: Added.

(DFG):
(ClobberSet):
(JSC::DFG::ClobberSet::isEmpty):
(ClobberSetAdd):
(JSC::DFG::ClobberSetAdd::ClobberSetAdd):
(JSC::DFG::ClobberSetAdd::operator()):
(ClobberSetOverlaps):
(JSC::DFG::ClobberSetOverlaps::ClobberSetOverlaps):
(JSC::DFG::ClobberSetOverlaps::operator()):
(JSC::DFG::ClobberSetOverlaps::result):

  • dfg/DFGClobberize.cpp: Added.

(DFG):
(JSC::DFG::didWrites):

  • dfg/DFGClobberize.h: Added.

(DFG):
(JSC::DFG::clobberize):
(NoOpClobberize):
(JSC::DFG::NoOpClobberize::NoOpClobberize):
(JSC::DFG::NoOpClobberize::operator()):
(CheckClobberize):
(JSC::DFG::CheckClobberize::CheckClobberize):
(JSC::DFG::CheckClobberize::operator()):
(JSC::DFG::CheckClobberize::result):

  • dfg/DFGGraph.cpp:

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

Source/WTF:

Reviewed by Sam Weinig.

Fix compile goof in sortedListDump().

  • wtf/ListDump.h:

(WTF::sortedListDump):

8:57 PM Changeset in webkit [152958] by fpizlo@apple.com
  • 4 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: It should be easy to figure out which blocks nodes belong to
https://bugs.webkit.org/show_bug.cgi?id=118957

Reviewed by Sam Weinig.

  • dfg/DFGGraph.cpp:

(DFG):
(JSC::DFG::Graph::initializeNodeOwners):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGNode.h:
8:36 PM Changeset in webkit [152957] by fpizlo@apple.com
  • 18 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: NodeExitsForward shouldn't be duplicated in NodeType
https://bugs.webkit.org/show_bug.cgi?id=118956

Reviewed by Sam Weinig.

We had two way of expressing that something exits forward: the NodeExitsForward
flag and the word 'Forward' in the NodeType. That's kind of dumb. This patch
makes it just be a flag.

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::int32ToDoubleCSE):
(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGMinifiedNode.h:

(JSC::DFG::belongsInMinifiedGraph):
(JSC::DFG::MinifiedNode::hasChild):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
(JSC::DFG::Node::hasStructureSet):
(JSC::DFG::Node::hasStructure):
(JSC::DFG::Node::hasArrayMode):
(JSC::DFG::Node::willHaveCodeGenOrOSR):

  • dfg/DFGNodeType.h:

(DFG):
(JSC::DFG::needsOSRForwardRewiring):

  • dfg/DFGPredictionPropagationPhase.cpp:

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::run):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

  • dfg/DFGVariableEventStream.cpp:

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

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode):

8:24 PM Changeset in webkit [152956] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Cleanup InspectorFrontendHostStub.js
https://bugs.webkit.org/show_bug.cgi?id=118959

Patch by Seokju Kwon <Seokju Kwon> on 2013-07-21
Reviewed by Timothy Hatcher.

Remove some functions because we dont use on New Inspector.

  • UserInterface/InspectorFrontendHostStub.js:

(.WebInspector.InspectorFrontendHostStub):
(.WebInspector.InspectorFrontendHostStub.prototype.save):

5:13 PM Changeset in webkit [152955] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebCore

Introduce toSVGGradientElement(), use it
https://bugs.webkit.org/show_bug.cgi?id=118943

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGGradientElement*> can
be changed with toSVGGradientElement().

No new tests, no behavior change.

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::gradientElement):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/SVGResources.cpp:

(WebCore::targetReferenceFromResource):

  • svg/SVGGradientElement.h:

(WebCore::toSVGGradientElement):

  • svg/SVGLinearGradientElement.cpp:

(WebCore::SVGLinearGradientElement::collectGradientAttributes):

  • svg/SVGRadialGradientElement.cpp:

(WebCore::SVGRadialGradientElement::collectGradientAttributes):

4:42 PM Changeset in webkit [152954] by fpizlo@apple.com
  • 10 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: It should be possible for a DFG::Node to claim to exit to one CodeOrigin, but then claim that it belongs to a different CodeOrigin for all other purposes
https://bugs.webkit.org/show_bug.cgi?id=118946

Reviewed by Geoffrey Garen.

We want to decouple the exit target code origin of a node from the code origin
for all other purposes. The purposes of code origins are:

  • Where the node will exit, if it exits. The exit target should be consistent with the surrounding nodes, in that if you just looked at the code origins of nodes in the graph, they would be consistent with the code origins in bytecode. This is necessary for live-at-bytecode analyses to work, and to preserve the original bytecode semantics when exiting.


  • What kind of code the node came from, for semantics thingies. For example, we might use the code origin to find the node's global object for doing an original array check. Or we might use it to determine if the code is in strict mode. Or other similar things. When we use the code origin in this way, we're basically using it as a way of describing the node's meta-data without putting it into the node directly, to save space. In the absurd extreme you could imagine nodes not even having NodeTypes or NodeFlags, and just using the CodeOrigin to determine what bytecode the node originated from. We won't do that, but you can think of this use of code origins as just a way of compressing meta-data.


  • What code origin we should supply profiling to, if we exit. This is closely related to the semantics thingies, in that the exit profiling is a persistent kind of semantic meta-data that survives between recompiles, and the only way to do that is to ascribe it to the original bytecode via the code origin.


If we hoist a node, we need to change the exit target code origin, but we must not
change the code origin for other purposes. The best way to do this is to decouple
the two kinds of code origin.

OSR exit data structures already do this, because they may edit the exit target
code origin while keeping the code origin for profiling intact. This happens for
forward exits. So, we just need to thread separation all the way back to DFG::Node.
That's what this patch does.

  • dfg/DFGNode.h:

(JSC::DFG::Node::Node):
(Node):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExitBase.h:

(JSC::DFG::OSRExitBase::OSRExitBase):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(LowerDFGToLLVM):

  • ftl/FTLOSRExit.cpp:

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

  • ftl/FTLOSRExit.h:

(OSRExit):

2:44 PM Changeset in webkit [152953] by fpizlo@apple.com
  • 6 edits
    1 add in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: each DFG node that relies on other nodes to do their type checks should be able to tell you if those type checks happened
https://bugs.webkit.org/show_bug.cgi?id=118866

Reviewed by Sam Weinig.

Adds a safeToExecute() method that takes a node and an abstract state and tells you
if the node will run without crashing under that state.

(JSC::CodeBlock::CodeBlock):

  • dfg/DFGCFAPhase.cpp:

(CFAPhase):
(JSC::DFG::CFAPhase::CFAPhase):
(JSC::DFG::CFAPhase::run):
(JSC::DFG::CFAPhase::performBlockCFA):
(JSC::DFG::CFAPhase::performForwardCFA):

  • dfg/DFGSafeToExecute.h: Added.

(DFG):
(SafeToExecuteEdge):
(JSC::DFG::SafeToExecuteEdge::SafeToExecuteEdge):
(JSC::DFG::SafeToExecuteEdge::operator()):
(JSC::DFG::SafeToExecuteEdge::result):
(JSC::DFG::safeToExecute):

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::isValidOffset):
(StructureAbstractValue):

  • runtime/Options.h:

(JSC):

2:28 PM Changeset in webkit [152952] by fpizlo@apple.com
  • 9 edits
    3 adds in branches/dfgFourthTier

fourthTier: FTL should be able to generate LLVM IR that uses an intrinsic for OSR exit
https://bugs.webkit.org/show_bug.cgi?id=118948

Source/JavaScriptCore:

Reviewed by Sam Weinig.

  • Add the ability to generate LLVM IR but then not use it, via --llvmAlwaysFails=true. This allows doing "what if" experiments with IR generation, even if the generated IR can't yet execute.


  • Add an OSR exit path that just calls an intrinsic that combines the branch and the off-ramp.

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

  • ftl/FTLFail.cpp: Added.

(FTL):
(JSC::FTL::fail):

  • ftl/FTLFail.h: Added.

(FTL):

  • ftl/FTLIntrinsicRepository.h:

(FTL):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::emitOSRExitCall):

  • runtime/Options.h:

(JSC):

Tools:

Reviewed by Sam Weinig.

  • Make ReducedFTL capable of dealing with code that uses the fake OSR exit intrinsic, by exporting it as a function.


  • Make combineModules.rb idempotent. Sometimes it's convenient to run a file through it even if you know that you've already done so. See processIRDump.sh.


  • Add a script, processIRDump.sh, that takes the output of --dumpLLVMIR=true and runs it through ReducedFTL automatically. You typically want to say something like:


jsc --dumpLLVMIR=true <program(s)> > jsc-output.txt
./processIRDump.sh --timing < jsc-output.txt

  • ReducedFTL/ReducedFTL.c:

(webkit_osr_exit):

  • ReducedFTL/combineModules.rb:
  • ReducedFTL/processIRDump.sh: Added.
12:05 PM Changeset in webkit [152951] by akling@apple.com
  • 4 edits in trunk

KURL creates duplicate strings when completing data: URIs.
<http://webkit.org/b/118952>
<rdar://problem/14504480>

Reviewed by Anders Carlsson.

Source/WebCore:

When checking if the original URL input string can be reused, compare against the part
of the parsing buffer that we would actually return, not the entire buffer.

632 kB progression on <http://www.nytimes.com/>

Test: KURLTest.KURLDataURIStringSharing

  • platform/KURL.cpp:

(WebCore::KURL::parse):

Tools:

  • TestWebKitAPI/Tests/WebCore/KURL.cpp:

(TestWebKitAPI::TEST_F):

11:55 AM Changeset in webkit [152950] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Java Updater not launched on Lion and Mountain Lion
https://bugs.webkit.org/show_bug.cgi?id=118953
<rdar://problem/14496721>

Reviewed by Sam Weinig.

On Lion and Mountain Lion, -[NSURL isEqual:] will return NO for two file URLs if one of
them has "localhost" specified, even if the paths are otherwise equal. Work around this by
comparing the paths directly.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::isJavaUpdaterURL):

Jul 20, 2013:

6:45 PM Changeset in webkit [152949] by Brent Fulgham
  • 2 edits
    1 delete in trunk/Source/JavaScriptCore

[Windows] Remove unneeded custom stdint.h now that we build on VS2010.
https://bugs.webkit.org/show_bug.cgi?id=118868.

Reviewed by Anders Carlsson.

  • os-win32/stdint.h: Removed.
  • GNUmakefile.list.am: Removed reference to os-win32/stdint.h
6:02 PM Changeset in webkit [152948] by benjamin@webkit.org
  • 6 edits in trunk/Source/WebCore

Add ASCIILiteral() on strings allocated often enough to appear in my Instruments
https://bugs.webkit.org/show_bug.cgi?id=118937

Reviewed by Alexey Proskuryakov.

  • html/BaseCheckableInputType.cpp:

(WebCore::BaseCheckableInputType::saveFormControlState):
(WebCore::BaseCheckableInputType::fallbackValue):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::CachedScript):

  • platform/network/ResourceRequestBase.h:

(WebCore::ResourceRequestBase::ResourceRequestBase):

5:31 PM Changeset in webkit [152947] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Tools

fourthTier: We should use the no-asserts build of LLVM if that's what the user configured
https://bugs.webkit.org/show_bug.cgi?id=118947

Reviewed by Dan Bernstein.

  • Scripts/copy-webkitlibraries-to-product-directory:
3:23 PM Changeset in webkit [152946] by dino@apple.com
  • 43 edits
    1 move
    3 adds
    77 deletes in trunk/Source

Updated ANGLE is leaking like a sieve
https://bugs.webkit.org/show_bug.cgi?id=118939

Rollout 152863, r152821, r152929 and r152755.

Source/ThirdParty/ANGLE:

  • ANGLE.plist:
  • ANGLE.xcodeproj/project.pbxproj:
  • DerivedSources.make: Removed.
  • GNUmakefile.am:
  • Target.pri:
  • include/GLSLANG/ShaderLang.h:
  • src/compiler/BaseTypes.h:

(getQualifierString):

  • src/compiler/Common.h:

(EncodeSourceLoc):
(DecodeSourceLoc):

  • src/compiler/Compiler.cpp:

(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
(TCompiler::detectRecursion):

  • src/compiler/ConstantUnion.h:

(ConstantUnion::ConstantUnion):

  • src/compiler/DetectCallDepth.cpp: Removed.
  • src/compiler/DetectRecursion.cpp: Added.

(DetectRecursion::FunctionNode::FunctionNode):
(DetectRecursion::FunctionNode::getName):
(DetectRecursion::FunctionNode::addCallee):
(DetectRecursion::FunctionNode::detectRecursion):
(DetectRecursion::DetectRecursion):
(DetectRecursion::~DetectRecursion):
(DetectRecursion::visitAggregate):
(DetectRecursion::detectRecursion):
(DetectRecursion::findFunctionByName):

  • src/compiler/DetectRecursion.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/DetectCallDepth.h.
  • src/compiler/Diagnostics.cpp:

(TDiagnostics::writeInfo):

  • src/compiler/ForLoopUnroll.cpp:

(ForLoopUnroll::evaluateIntConstant):

  • src/compiler/InfoSink.cpp:

(TInfoSinkBase::prefix):
(TInfoSinkBase::location):
(TInfoSinkBase::message):

  • src/compiler/InfoSink.h:
  • src/compiler/Initialize.cpp:

(BuiltInFunctionsCommon):
(BuiltInFunctionsVertex):
(TBuiltIns::initialize):
(IdentifyBuiltIns):
(InitExtensionBehavior):

  • src/compiler/Intermediate.cpp:

(TIntermediate::addSymbol):
(TIntermediate::addBinaryMath):
(TIntermediate::addAssign):
(TIntermediate::addIndex):
(TIntermediate::addUnaryMath):
(TIntermediate::setAggregateOperator):
(TIntermediate::addConversion):
(TIntermediate::growAggregate):
(TIntermediate::makeAggregate):
(TIntermediate::addSelection):
(TIntermediate::addComma):
(TIntermediate::addConstantUnion):
(TIntermediate::addSwizzle):
(TIntermediate::addLoop):
(TIntermediate::addBranch):
(TIntermUnary::promote):
(TIntermBinary::promote):
(CompareStruct):
(CompareStructure):
(TIntermConstantUnion::fold):
(TIntermediate::promoteConstantUnion):

  • src/compiler/OutputGLSL.cpp:

(TOutputGLSL::writeVariablePrecision):

  • src/compiler/OutputGLSL.h:
  • src/compiler/OutputGLSLBase.cpp:

(TOutputGLSLBase::writeVariableType):
(TOutputGLSLBase::writeConstantUnion):
(TOutputGLSLBase::visitBinary):
(TOutputGLSLBase::visitAggregate):
(TOutputGLSLBase::getTypeName):
(TOutputGLSLBase::hashFunctionName):

  • src/compiler/OutputGLSLBase.h:
  • src/compiler/OutputHLSL.cpp:

(sh::OutputHLSL::OutputHLSL):
(sh::OutputHLSL::header):
(sh::OutputHLSL::visitSymbol):
(sh::OutputHLSL::visitBinary):
(sh::OutputHLSL::visitAggregate):
(sh::OutputHLSL::visitSelection):
(sh::OutputHLSL::visitLoop):
(sh::OutputHLSL::handleExcessiveLoop):
(sh::OutputHLSL::typeString):
(sh::OutputHLSL::initializer):
(sh::OutputHLSL::addConstructor):
(sh::OutputHLSL::writeConstantUnion):
(sh::OutputHLSL::decorateField):

  • src/compiler/OutputHLSL.h:
  • src/compiler/ParseHelper.cpp:

(TParseContext::parseVectorFields):
(TParseContext::parseMatrixFields):
(TParseContext::error):
(TParseContext::warning):
(TParseContext::assignError):
(TParseContext::unaryOpError):
(TParseContext::binaryOpError):
(TParseContext::precisionErrorCheck):
(TParseContext::lValueErrorCheck):
(TParseContext::globalErrorCheck):
(TParseContext::reservedErrorCheck):
(TParseContext::constructorErrorCheck):
(TParseContext::voidErrorCheck):
(TParseContext::boolErrorCheck):
(TParseContext::samplerErrorCheck):
(TParseContext::structQualifierErrorCheck):
(TParseContext::parameterSamplerErrorCheck):
(TParseContext::containsSampler):
(TParseContext::arraySizeErrorCheck):
(TParseContext::arrayQualifierErrorCheck):
(TParseContext::arrayTypeErrorCheck):
(TParseContext::arrayErrorCheck):
(TParseContext::arraySetMaxSize):
(TParseContext::nonInitConstErrorCheck):
(TParseContext::nonInitErrorCheck):
(TParseContext::paramErrorCheck):
(TParseContext::extensionErrorCheck):
(TParseContext::handleExtensionDirective):
(TParseContext::handlePragmaDirective):
(TParseContext::findFunction):
(TParseContext::executeInitializer):
(TParseContext::addConstructor):
(TParseContext::constructBuiltIn):
(TParseContext::constructStruct):
(TParseContext::addConstVectorNode):
(TParseContext::addConstMatrixNode):
(TParseContext::addConstArrayNode):
(TParseContext::addConstStruct):
(TParseContext::enterStructDeclaration):
(TParseContext::structNestingErrorCheck):

  • src/compiler/ParseHelper.h:

(TParseContext::TParseContext):
(TParseContext::pragma):

  • src/compiler/PoolAlloc.cpp:

(TPoolAllocator::allocate):

  • src/compiler/ShHandle.h:
  • src/compiler/ShaderLang.cpp:

(ShInitBuiltInResources):

  • src/compiler/SymbolTable.cpp:

(TType::TType):
(TType::buildMangledName):
(TType::getStructSize):
(TType::computeDeepestStructNesting):
(TType::isStructureContainingArrays):
(TSymbolTableLevel::relateToExtension):
(TSymbol::TSymbol):
(TVariable::TVariable):
(TVariable::clone):
(TFunction::TFunction):
(TFunction::clone):
(TSymbolTableLevel::clone):
(TSymbolTable::copyTable):

  • src/compiler/SymbolTable.h:

(TVariable::TVariable):
(TVariable::updateArrayInformationType):
(TVariable::getArrayInformationType):
(TParameter::copyParam):
(TFunction::relateToExtension):
(TFunction::getExtension):

  • src/compiler/Types.h:

(NewPoolTTypeList):
(TType::TType):
(TType::copyType):
(TType::clone):
(TType::getObjectSize):
(TType::getMaxArraySize):
(TType::setMaxArraySize):
(TType::clearArrayness):
(TType::setArrayInformationType):
(TType::getArrayInformationType):
(TType::getStruct):
(TType::setStruct):
(TType::getTypeName):
(TType::setTypeName):
(TType::isField):
(TType::getFieldName):
(TType::setFieldName):
(TType::getMangledName):
(TType::getDeepestStructNesting):
(TPublicType::setBasic):

  • src/compiler/VariableInfo.cpp:

(getUserDefinedVariableInfo):

  • src/compiler/builtin_symbol_table.cpp: Removed.
  • src/compiler/builtin_symbol_table.h: Removed.
  • src/compiler/builtin_symbols.json: Removed.
  • src/compiler/generate_builtin_symbol_table.py: Removed.
  • src/compiler/glslang.l:
  • src/compiler/glslang.y:
  • src/compiler/glslang_lex.cpp:

(yy_get_previous_state):
(yy_try_NUL_trans):
(yy_push_state):
(yy_pop_state):
(yy_top_state):
(string_input):
(check_type):
(reserved_word):
(yyerror):
(glslang_scan):

  • src/compiler/glslang_tab.cpp:
  • src/compiler/glslang_tab.h:
  • src/compiler/intermOut.cpp:

(TOutputTraverser::visitUnary):
(TOutputTraverser::visitAggregate):
(TOutputTraverser::visitConstantUnion):

  • src/compiler/intermediate.h:

(TIntermNode::TIntermNode):
(TIntermNode::getLine):
(TIntermNode::setLine):
(TIntermNode::~TIntermNode):
(TIntermConstantUnion::setUnionArrayPointer):
(TIntermAggregate::TIntermAggregate):
(TIntermAggregate::setEndLine):
(TIntermAggregate::getEndLine):
(TIntermTraverser::TIntermTraverser):
(TIntermTraverser::incrementDepth):

  • src/compiler/localintermediate.h:
  • src/compiler/parseConst.cpp:

(TConstTraverser::visitSymbol):
(TConstTraverser::visitBinary):
(TConstTraverser::visitUnary):
(TConstTraverser::visitAggregate):
(TConstTraverser::visitSelection):
(TConstTraverser::visitConstantUnion):
(TConstTraverser::visitLoop):
(TConstTraverser::visitBranch):
(TIntermediate::parseConstTree):

  • src/compiler/timing/RestrictVertexShaderTiming.cpp:

(RestrictVertexShaderTiming::visitSymbol):

  • src/libEGL/Config.cpp: Removed.
  • src/libEGL/Config.h: Removed.
  • src/libEGL/Display.cpp: Removed.
  • src/libEGL/Display.h: Removed.
  • src/libEGL/README: Added.
  • src/libEGL/ShaderCache.h: Removed.
  • src/libEGL/Surface.cpp: Removed.
  • src/libEGL/Surface.h: Removed.
  • src/libEGL/libEGL.cpp: Removed.
  • src/libEGL/libEGL.def: Removed.
  • src/libEGL/libEGL.rc: Removed.
  • src/libEGL/libEGL.vcxproj: Removed.
  • src/libEGL/libEGL.vcxproj.filters: Removed.
  • src/libEGL/main.cpp: Removed.
  • src/libEGL/main.h: Removed.
  • src/libEGL/resource.h: Removed.
  • src/libGLESv2/BinaryStream.h: Removed.
  • src/libGLESv2/Blit.cpp: Removed.
  • src/libGLESv2/Blit.h: Removed.
  • src/libGLESv2/Buffer.cpp: Removed.
  • src/libGLESv2/Buffer.h: Removed.
  • src/libGLESv2/Context.cpp: Removed.
  • src/libGLESv2/Context.h: Removed.
  • src/libGLESv2/D3DConstantTable.cpp: Removed.
  • src/libGLESv2/D3DConstantTable.h: Removed.
  • src/libGLESv2/Fence.cpp: Removed.
  • src/libGLESv2/Fence.h: Removed.
  • src/libGLESv2/Float16ToFloat32.cpp: Removed.
  • src/libGLESv2/Float16ToFloat32.py: Removed.
  • src/libGLESv2/Framebuffer.cpp: Removed.
  • src/libGLESv2/Framebuffer.h: Removed.
  • src/libGLESv2/HandleAllocator.cpp: Removed.
  • src/libGLESv2/HandleAllocator.h: Removed.
  • src/libGLESv2/IndexDataManager.cpp: Removed.
  • src/libGLESv2/IndexDataManager.h: Removed.
  • src/libGLESv2/Program.cpp: Removed.
  • src/libGLESv2/Program.h: Removed.
  • src/libGLESv2/ProgramBinary.cpp: Removed.
  • src/libGLESv2/ProgramBinary.h: Removed.
  • src/libGLESv2/Query.cpp: Removed.
  • src/libGLESv2/Query.h: Removed.
  • src/libGLESv2/README: Added.
  • src/libGLESv2/Renderbuffer.cpp: Removed.
  • src/libGLESv2/Renderbuffer.h: Removed.
  • src/libGLESv2/ResourceManager.cpp: Removed.
  • src/libGLESv2/ResourceManager.h: Removed.
  • src/libGLESv2/Shader.cpp: Removed.
  • src/libGLESv2/Shader.h: Removed.
  • src/libGLESv2/Texture.cpp: Removed.
  • src/libGLESv2/Texture.h: Removed.
  • src/libGLESv2/TextureSSE2.cpp: Removed.
  • src/libGLESv2/VertexDataManager.cpp: Removed.
  • src/libGLESv2/VertexDataManager.h: Removed.
  • src/libGLESv2/libGLESv2.cpp: Removed.
  • src/libGLESv2/libGLESv2.def: Removed.
  • src/libGLESv2/libGLESv2.rc: Removed.
  • src/libGLESv2/libGLESv2.vcxproj: Removed.
  • src/libGLESv2/libGLESv2.vcxproj.filters: Removed.
  • src/libGLESv2/main.cpp: Removed.
  • src/libGLESv2/main.h: Removed.
  • src/libGLESv2/mathutil.h: Removed.
  • src/libGLESv2/resource.h: Removed.
  • src/libGLESv2/shaders/Blit.ps: Removed.
  • src/libGLESv2/shaders/Blit.vs: Removed.
  • src/libGLESv2/shaders/componentmaskps.h: Removed.
  • src/libGLESv2/shaders/flipyvs.h: Removed.
  • src/libGLESv2/shaders/generate_shaders.bat: Removed.
  • src/libGLESv2/shaders/luminanceps.h: Removed.
  • src/libGLESv2/shaders/passthroughps.h: Removed.
  • src/libGLESv2/shaders/standardvs.h: Removed.
  • src/libGLESv2/utilities.cpp: Removed.
  • src/libGLESv2/utilities.h: Removed.
  • src/libGLESv2/vertexconversion.h: Removed.

Source/WebCore:

  • CMakeLists.txt:
11:39 AM Changeset in webkit [152945] by fpizlo@apple.com
  • 4 edits
    1 add in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: StringObjectUse uses structures, and CSE should know that
https://bugs.webkit.org/show_bug.cgi?id=118940

Reviewed by Geoffrey Garen.

This is asymptomatic right now, but we should fix it.

(JSC::DFG::CSEPhase::putStructureStoreElimination):

  • dfg/DFGEdgeUsesStructure.h: Added.

(DFG):
(EdgeUsesStructure):
(JSC::DFG::EdgeUsesStructure::EdgeUsesStructure):
(JSC::DFG::EdgeUsesStructure::operator()):
(JSC::DFG::EdgeUsesStructure::result):
(JSC::DFG::edgesUseStructure):

  • dfg/DFGUseKind.h:

(DFG):
(JSC::DFG::usesStructure):

10:58 AM Changeset in webkit [152944] by fpizlo@apple.com
  • 9 edits
    13 adds in branches/dfgFourthTier

fourthTier: String GetByVal out-of-bounds handling is so wrong
https://bugs.webkit.org/show_bug.cgi?id=118935

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Bunch of String GetByVal out-of-bounds fixes:

  • Even if the string proto chain is sane, we need to watch out for negative indices. They may get values or call getters in the prototypes, since proto sanity doesn't check for negative indexed properties, as they are not technically indexed properties.


  • GetByVal String out-of-bounds does in fact clobberWorld(). CSE should be given this information.


  • GetByVal String out-of-bounds does in fact clobberWorld(). CFA should be given this information.


Also fixed some other things:

  • If the DFG is disabled, the testRunner should pretend that we've done a bunch of DFG compiles. That's necessary to prevent the tests from timing out.


  • Disassembler shouldn't try to dump source code since it's not safe in the concurrent JIT.
  • API/JSCTestRunnerUtils.cpp:

(JSC::numberOfDFGCompiles):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGDisassembler.cpp:

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

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::byValIsPure):

  • dfg/DFGSaneStringGetByValSlowPathGenerator.h: Added.

(DFG):
(SaneStringGetByValSlowPathGenerator):
(JSC::DFG::SaneStringGetByValSlowPathGenerator::SaneStringGetByValSlowPathGenerator):
(JSC::DFG::SaneStringGetByValSlowPathGenerator::generateInternal):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

LayoutTests:

Reviewed by Geoffrey Garen.

  • fast/js/dfg-string-out-of-bounds-check-structure-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-check-structure.html: Added.
  • fast/js/dfg-string-out-of-bounds-cse-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-cse.html: Added.
  • fast/js/dfg-string-out-of-bounds-negative-check-structure-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-negative-check-structure.html: Added.
  • fast/js/dfg-string-out-of-bounds-negative-proto-value-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-negative-proto-value.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-string-out-of-bounds-check-structure.js: Added.

(foo):

  • fast/js/script-tests/dfg-string-out-of-bounds-cse.js: Added.

(foo):

  • fast/js/script-tests/dfg-string-out-of-bounds-negative-check-structure.js: Added.

(foo):
(while):

  • fast/js/script-tests/dfg-string-out-of-bounds-negative-proto-value.js: Added.

(foo):

12:26 AM Changeset in webkit [152943] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Pagination: Do not paint the baseBackgroundColor if asked to skipRootBackground.
https://bugs.webkit.org/show_bug.cgi?id=118933

Reviewed by Simon Fraser.

Captions rendered through TextTrackRepresentation are rendered with a background
color when in paginated views. Do not fill the paint area with the
baseBackgroundColor when the paint flags include SkipRootBackground.

  • rendering/RenderView.cpp:

(WebCore::RenderView::paint):

12:02 AM Changeset in webkit [152942] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.0.4

Tagging the WebKitGTK+ 2.0.4 release

Jul 19, 2013:

11:43 PM Changeset in webkit [152941] by beidson@apple.com
  • 15 edits
    9 adds in trunk

Pages should not be able to abuse users inside beforeunload handlers.
<rdar://problem/14475779> and https://bugs.webkit.org/show_bug.cgi?id=118871.

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests: fast/loader/show-only-one-beforeunload-dialog.html

http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin.html
http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::shouldClose):
(WebCore::FrameLoader::handleBeforeUnloadEvent):
(WebCore::FrameLoader::shouldCloseFiringBeforeUnloadEvent): Renamed from fireBeforeUnloadEvent.

Add logic to enforce "1 beforeunload dialog per navigation" as well as "iframes can only show beforeunload
dialogs if their entire ancestry's security origins match the navigating frame."

  • loader/FrameLoader.h:
  • loader/FrameLoader.h:

Add the ability for Page to know when any frame is dispatching beforeunload:

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::incrementFrameHandlingBeforeUnloadEventCount):
(WebCore::Page::decrementFrameHandlingBeforeUnloadEventCount):
(WebCore::Page::isAnyFrameHandlingBeforeUnloadEvent):

  • page/Page.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::print): Disallow if any frame is in beforeunload dispatch.
(WebCore::DOMWindow::alert): Ditto.
(WebCore::DOMWindow::confirm): Ditto.
(WebCore::DOMWindow::prompt): Ditto.
(WebCore::DOMWindow::showModalDialog): Ditto.

LayoutTests:

In addition to the new tests, updated some results of previous tests that were relying on "alert"
as a poor man's logging method.

  • fast/events/onbeforeunload-focused-iframe-expected.txt:
  • fast/events/onbeforeunload-focused-iframe.html:
  • fast/events/onunload-clears-onbeforeunload-expected.txt:
  • fast/events/onunload-clears-onbeforeunload.html:
  • fast/loader/page-dismissal-modal-dialogs-expected.txt:
  • fast/loader/page-dismissal-modal-dialogs.html:
  • fast/loader/recursive-before-unload-crash-expected.txt:
  • fast/loader/recursive-before-unload-crash.html:
  • fast/loader/resources/iframe-with-beforeunload.html: Added.
  • fast/loader/show-only-one-beforeunload-dialog-expected.txt: Added.
  • fast/loader/show-only-one-beforeunload-dialog.html: Added.
  • http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin-expected.txt: Added.
  • http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin.html: Added.
  • http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin-expected.txt: Added.
  • http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin.html: Added.
  • http/tests/misc/resources/iframe-with-beforeunload.html: Added.
  • http/tests/misc/resources/notify-done.html: Added.
11:42 PM Changeset in webkit [152940] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0

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

.:

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

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.0.4.
8:37 PM Changeset in webkit [152939] by Chris Fleizach
  • 5 edits in trunk

AX: VoiceOver not detecting misspelled words don't work in all cases
https://bugs.webkit.org/show_bug.cgi?id=118924

Reviewed by Tim Horton.

Source/WebCore:

VoiceOver is now looking for a new misspelled attribute.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetSpelling):
(AXAttributedStringAppendText):

Tools:

Make the misspelled detection dependent on both types of attributes being present.

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::attributedStringRangeIsMisspelled):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):

7:59 PM Changeset in webkit [152938] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Extract computeRenderStyleForProperty and nodeOrItsAncestorNeedsStyleRecalc from ComputedStyleExtractor::propertyValue
https://bugs.webkit.org/show_bug.cgi?id=118930

Reviewed by Andreas Kling.

Extracted two functions as a preparation to fix bugs 118032 and 118618.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::nodeOrItsAncestorNeedsStyleRecalc):
(WebCore::computeRenderStyleForProperty):
(WebCore::ComputedStyleExtractor::propertyValue):

7:53 PM Changeset in webkit [152937] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Structure::isValidOffset() should be able to tell you if you're loading a valid JSValue, and not just not crashing
https://bugs.webkit.org/show_bug.cgi?id=118911

Reviewed by Geoffrey Garen.

We could also have a separate method like "willNotCrash(offset)", but that's not
what isValidOffset() is intended to mean.

  • runtime/Structure.h:

(JSC::Structure::isValidOffset):

6:32 PM Changeset in webkit [152936] by Stephanie Lewis
  • 2 edits in trunk/Tools

<rdar://problem/14499595> pagination wk2 api test failing on ML (118928)

Unreviewed.

Rebaseline pagination test after http://trac.webkit.org/changeset/152911

  • TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp:

(TestWebKitAPI::didLayout):

5:58 PM Changeset in webkit [152935] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Cache style declaration CSSOM wrappers directly on MutableStylePropertySet.
<http://webkit.org/b/118883>

Reviewed by Gavin Barraclough

Merge https://chromium.googlesource.com/chromium/blink/+/183bcd51eb0e79cab930cf46695df05dc793630f
From Blink r153700 by <ager@chromium.org>:

In my measurements the mapping is adding more overhead than just having a field
in all MutableStylePropertySet objects. So this saves memory and makes access
faster.

  • css/StylePropertySet.cpp:

(WebCore::MutableStylePropertySet::MutableStylePropertySet):
(WebCore::MutableStylePropertySet::~MutableStylePropertySet):
(WebCore::StylePropertySet::hasCSSOMWrapper):
(WebCore::MutableStylePropertySet::cssStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureCSSStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):

  • css/StylePropertySet.h:

(WebCore::StylePropertySet::StylePropertySet):

5:11 PM Changeset in webkit [152934] by achristensen@apple.com
  • 3 edits in trunk/Tools

Improved code coverage generation.
https://bugs.webkit.org/show_bug.cgi?id=118926

Reviewed by Tim Horton.

  • Scripts/build-webkit: Removed exception preventing ANGLE code coverage support.
  • Scripts/generate-coverage-data: Added --no-build to run-javascriptcore-tests call.

(generateReport): Moved report generation to a subroutine.

4:30 PM Changeset in webkit [152933] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix on Windows after r152930.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Added missing close paren.
4:08 PM Changeset in webkit [152932] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

Some compositing tests fail on ML WK2 Debugi
https://bugs.webkit.org/show_bug.cgi?id=118925

Unreviewed.

  • platform/mac-wk2/TestExpectations:
3:46 PM Changeset in webkit [152931] by dbates@webkit.org
  • 2 edits in trunk/Tools

Make Perl tools work when using git bisect with Git branch build setup
https://bugs.webkit.org/show_bug.cgi?id=118512

Reviewed by Martin Robinson.

The various Perl tools (run-webkit-app, {debug, run}-safari, et cetera) don't work
during a git bisect session with a Git branch build setup (i.e. git config
core.webKitBranchBuild true). Specifically, the tools cannot find the branch-
specific build of WebKit because they cannot determine the branch Git is on (since
git bisect puts Git into a detached HEAD state). We should teach our tooling to
parse the file .git/BISECT_START (created by git bisect start) for the name of the
branch Git was on when we began a git bisect session. Then the tools can determine
the path to the built WebKit.

  • Scripts/VCSUtils.pm:

(gitDirectory): Added.
(gitBisectStartBranch): Added.
(gitBranch): Modified to call gitBisectStartBranch() when we have a detached
HEAD (e.g. running git bisect).
(determineVCSRoot): Modified to call gitDirectory() to determine the path to
the .git directory in the Git checkout.

3:44 PM Changeset in webkit [152930] by achristensen@apple.com
  • 3 edits in trunk/Source/WebKit

Added 64-bit symbols to WebKitExports.def.in for 64-bit Windows builds
and a macro to only use them for 64-bit builds.
https://bugs.webkit.org/show_bug.cgi?id=118887

Reviewed by Brent Fulgham.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Added 64-bit symbols.
  • WebKit.vcxproj/WebKitExportGenerator/make-export-file-generator:

Added support for new symbolWithPointer macro.

3:07 PM Changeset in webkit [152929] by achristensen@apple.com
  • 2 edits
    1 add in trunk/Source/ThirdParty/ANGLE

Generate derived files in ANGLE at build time rather than when updating from upstream.
https://bugs.webkit.org/show_bug.cgi?id=118872

Reviewed by Mark Rowe.

  • ANGLE.xcodeproj/project.pbxproj: Made Derived Sources target which calls DerivedSources.make,

moved generated files into Derived Sources group.

  • DerivedSources.make: Added.
2:51 PM Changeset in webkit [152928] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip failing tests to make WinEWS bots happy.

  • platform/win/TestExpectations:
2:40 PM Changeset in webkit [152927] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[Windows] Avoid passing addresses of temporaries to Windows API.
https://bugs.webkit.org/show_bug.cgi?id=118917

Reviewed by Anders Carlsson.

The temporary Vector returned by String::charactersWithNullTermination
was going out of scope before its first use, causing Windows API to
receive garbage memory.

  • platform/win/ContextMenuWin.cpp:

(WebCore::ContextMenu::createPlatformContextMenuFromItems):

  • platform/win/PasteboardWin.cpp:

(WebCore::createGlobalHDropContent):

  • platform/win/SSLKeyGeneratorWin.cpp:

(WebCore::WebCore::signedPublicKeyAndChallengeString):

1:54 PM Changeset in webkit [152926] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unskip flaky tests on AppleWin.
Flakiness is not an issue with the tests themselves but with the test infrastructure.

  • platform/win/TestExpectations:
1:32 PM Changeset in webkit [152925] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Remove lineWithinShapeBounds() from ShapeInfo since it's no longer used
https://bugs.webkit.org/show_bug.cgi?id=118913

Reviewed by Andreas Kling.

No new tests, no behavior change.

  • rendering/shapes/ShapeInfo.h: Remove lineWithinShapeBounds().
1:30 PM Changeset in webkit [152924] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some flaky tests on AppleWin port.

  • platform/win/TestExpectations:
1:14 PM Changeset in webkit [152923] by commit-queue@webkit.org
  • 3 edits
    17 adds
    48 deletes in trunk/LayoutTests

More conversions from MathML pixel tests to reftests.
https://bugs.webkit.org/show_bug.cgi?id=118853

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-19
Reviewed by Chris Fleizach.

  • mathml/presentation/fenced-expected.html: Added.
  • mathml/presentation/fenced-mi-expected.html: Added.
  • mathml/presentation/fenced-mi.html: Added.
  • mathml/presentation/fenced-mi.xhtml: Removed.
  • mathml/presentation/fenced.html: Added.
  • mathml/presentation/fenced.xhtml: Removed.
  • mathml/presentation/mroot-pref-width-expected.html: Added.
  • mathml/presentation/mroot-pref-width.html:
  • mathml/presentation/row-alignment.xhtml: Removed.
  • mathml/presentation/style-border-padding-background-expected.html: Added.
  • mathml/presentation/style-border-padding-background.html: Added.
  • mathml/presentation/style-color-sqrt-expected-mismatch.html: Added.
  • mathml/presentation/style-color-sqrt.html: Added.
  • mathml/presentation/style.xhtml: Removed.
  • mathml/presentation/tables-columnalign-expected.html: Added.
  • mathml/presentation/tables-columnalign.html: Added.
  • mathml/presentation/tables-simple-expected.html: Added.
  • mathml/presentation/tables-simple.html: Added.
  • mathml/presentation/tables-spans-dynamic-expected.html: Added.
  • mathml/presentation/tables-spans-dynamic.html: Added.
  • mathml/presentation/tables-spans-expected.html: Added.
  • mathml/presentation/tables-spans.html: Added.
  • mathml/presentation/tables.xhtml: Removed.
  • mathml/xHeight.xhtml: Removed.
  • platform/efl/mathml/presentation/fenced-expected.png: Removed.
  • platform/efl/mathml/presentation/fenced-expected.txt: Removed.
  • platform/efl/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/efl/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/efl/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/efl/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/efl/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/efl/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/efl/mathml/presentation/style-expected.png: Removed.
  • platform/efl/mathml/presentation/style-expected.txt: Removed.
  • platform/efl/mathml/presentation/tables-expected.png: Removed.
  • platform/efl/mathml/presentation/tables-expected.txt: Removed.
  • platform/efl/mathml/xHeight-expected.png: Removed.
  • platform/efl/mathml/xHeight-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fenced-expected.png: Removed.
  • platform/gtk/mathml/presentation/fenced-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/gtk/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/gtk/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/gtk/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/gtk/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/gtk/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/gtk/mathml/presentation/style-expected.png: Removed.
  • platform/gtk/mathml/presentation/style-expected.txt: Removed.
  • platform/gtk/mathml/presentation/tables-expected.png: Removed.
  • platform/gtk/mathml/presentation/tables-expected.txt: Removed.
  • platform/gtk/mathml/xHeight-expected.png: Removed.
  • platform/gtk/mathml/xHeight-expected.txt: Removed.
  • platform/mac/TestExpectations:
  • platform/mac/mathml/presentation/fenced-expected.png: Removed.
  • platform/mac/mathml/presentation/fenced-expected.txt: Removed.
  • platform/mac/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/mac/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/mac/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/mac/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/mac/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/mac/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/mac/mathml/presentation/style-expected.png: Removed.
  • platform/mac/mathml/presentation/style-expected.txt: Removed.
  • platform/mac/mathml/presentation/tables-expected.png: Removed.
  • platform/mac/mathml/presentation/tables-expected.txt: Removed.
  • platform/mac/mathml/xHeight-expected.png: Removed.
  • platform/mac/mathml/xHeight-expected.txt: Removed.
1:04 PM Changeset in webkit [152922] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebKit2

[GTK] Need a way to enable region based columns from the command line
https://bugs.webkit.org/show_bug.cgi?id=116611

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-07-19
Reviewed by Martin Robinson.

Add an environment variable to enable experimental features.

This provides a means to enable experimental features without polluting
the public API.

Environment variable name: WEBKITGTK_EXPERIMENTAL_FEATURES

Format: WEBKITGTK_EXPERIMENTAL_FEATURES="<feature1>=1,<feature2>=1,..."
Or, to enable all experimental features: WEBKITGTK_EXPERIMENTAL_FEATURES=all

So far the only feature is region based columns (implement multicol using
the CSS regions implementation rather than ColumnInfo & co) - REGION_BASED_COLUMNS.

Example: WEBKITGTK_EXPERIMENTAL_FEATURES="REGION_BASED_COLUMNS=1"

  • GNUmakefile.list.am:
  • PlatformGTK.cmake:
  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsConstructed):
(webkit_settings_class_init):

  • UIProcess/gtk/ExperimentalFeatures.cpp: Added.

(WebKit):
(Setting):
(WebKit::ExperimentalFeatures::ExperimentalFeatures):
(WebKit::ExperimentalFeatures::isEnabled):
(WebKit::ExperimentalFeatures::setEnableByName):
(WebKit::ExperimentalFeatures::parseEnvironment):

  • UIProcess/gtk/ExperimentalFeatures.h: Added.

(WebKit):
(ExperimentalFeatures):

12:43 PM Changeset in webkit [152921] by achristensen@apple.com
  • 40 edits in trunk

Added x64 configuration to Visual Studio build.
https://bugs.webkit.org/show_bug.cgi?id=118888

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

Source/ThirdParty:

  • gtest/msvc/gtest-md.vcxproj:

Source/WebCore:

  • WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCoreGenerated.vcxproj:
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj:

Source/WebKit:

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
  • WebKit.vcxproj/WebKit.sln:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj.filters:
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj:
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj.filters:

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.vcxproj/WTFGenerated.vcxproj:

Tools:

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj.filters:
  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiff.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePlugin.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj:
  • win/record-memory/record-memory.vcxproj:
12:42 PM Changeset in webkit [152920] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some flaky tests on AppleWin port.

  • platform/win/TestExpectations:
12:21 PM Changeset in webkit [152919] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Spatial Navigation handling of space key in <select> appears to confuse listIndex and optionIndex.
https://bugs.webkit.org/show_bug.cgi?id=99525

Source/WebCore:

HTMLSelect Element inherently contains the logic to focus option node and thus, implementing an explicit logic to find the focus index is not required.

Patch by Abhijeet Kandalkar <abhijeet.k@samsung.com> on 2013-07-19
Reviewed by Joseph Pecoraro.

Test: fast/spatial-navigation/snav-multiple-select-optgroup.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • page/SpatialNavigation.cpp:

(WebCore::canScrollInDirection):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::addFocusRingRects):

LayoutTests:

Added testcase to test support of option group within HTMLSelect element.

Patch by Abhijeet Kandalkar <abhijeet.k@samsung.com> on 2013-07-19
Reviewed by Joseph Pecoraro.

  • fast/spatial-navigation/snav-multiple-select-optgroup-expected.txt: Added.
  • fast/spatial-navigation/snav-multiple-select-optgroup.html: Added.
11:56 AM Changeset in webkit [152918] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152877. <rdar://problem/14271327>

11:55 AM Changeset in webkit [152917] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152818. <rdar://problem/14473897>

11:54 AM Changeset in webkit [152916] by Lucas Forschler
  • 12 edits
    12 copies in branches/safari-537-branch

Merged r152813. <rdar://problem/14473897>

11:51 AM Changeset in webkit [152915] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.3/Source/WebKit2

Merged r152877. <rdar://problem/14271327>

11:49 AM Changeset in webkit [152914] by Lucas Forschler
  • 3 edits in tags/Safari-537.51.3/Source/JavaScriptCore

Merged r152818. <rdar://problem/14473897>

11:46 AM Changeset in webkit [152913] by Lucas Forschler
  • 12 edits
    12 copies in tags/Safari-537.51.3

Merged r152813. <rdar://problem/14473897>

11:38 AM Changeset in webkit [152912] by Lucas Forschler
  • 5 edits in tags/Safari-537.51.3/Source

Versioning.

11:37 AM Changeset in webkit [152911] by hyatt@apple.com
  • 14 edits
    50 adds in trunk

OSX: ePub: Unable to select text in vertical Japanese book
https://bugs.webkit.org/show_bug.cgi?id=118864
<rdar://problem/14109351>

Reviewed by Dan Bernstein and Sam Weinig.

Source/WebCore:

This patch fixes all of the various writing-mode and pagination combinations
so that the columns are painted in the correct location. The code that sets up
the initial painting translation offset in the block direction and that advances
that offset has been pulled into two helper functions, initialBlockOffsetForPainting
and blockDeltaForPaintingNextColumn, and that code is now shared by the four call
sites that need it (painting and hit testing in RenderBlock and painting and hit testing
in RenderLayer).

This patch also backs out the maximumScrollPosition change, since it only occurred because
of incorrect sizing of the RenderView, and this sizing issue has now been corrected by
ensuring that computeLogicalHeight() always makes sure you are the size of the viewport
and does not shrink you to the column height.

There was also a race condition that caused pagination to be incorrect if layout occurred
before the html/body renderer that set the writing-mode were available. When this happened,
the writing mode got propagated up to the view, but the column styles didn't get
adjusted to compensate for the writing mode change.

Added tests for every pagination and writing-mode combination in fast/multicol/pagination.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForDocument):
(WebCore::StyleResolver::adjustRenderStyle):
Move setStylesForPaginationMode into RenderStyle and make it a member function. This is
necessary so that the style can be adjusted dynamically to fix the race condition mentioned
above.

  • page/FrameView.cpp:

(WebCore::FrameView::maximumScrollPosition):
Back out this change since the symptom it was fixing only occurred because the logical
height of the view was being set incorrectly.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::checkForPaginationLogicalHeightChange):
Patch the column code that sets up the initial page height to use the pagination API's
page height rather than the viewport logical height. This allows the view to still match
the viewport in dimensions rather than being incorrectly sized to the column height.

(WebCore::RenderBlock::initialBlockOffsetForPainting):
(WebCore::RenderBlock::blockDeltaForPaintingNextColumn):
Two new helper functions used to set up the block direction paint/hit testing translation.
The major bug fix that occurred in this code is that the old block axis code didn't handle
reversal correctly and it also used physical coordinates to try to determine the translation
offset, when you really need to use logical coordinates in the original writing mode coordinate
system to determine the offset.

(WebCore::RenderBlock::paintColumnContents):
Patched to call the new helper functions.

(WebCore::ColumnRectIterator::ColumnRectIterator):
(WebCore::ColumnRectIterator::adjust):
(WebCore::ColumnRectIterator::update):
Patched to call the new helper functions.

  • rendering/RenderBlock.h:

Add the two new helper functions to the RenderBlock header.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleDidChange):
If the writing mode of the html/body propagates to the viewport and changes its writing mode,
also change our column styles to match if we're in paginated mode.

(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
Call the new pageOrViewLogicalHeight function on RenderView instead of
RenderBox::viewLogicalHeightForPercentages (which is now removed).

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintChildLayerIntoColumns):
(WebCore::RenderLayer::hitTestChildLayerColumns):
Patched to use the two new helper functions for block direction paint offset setup and
advancement.

  • rendering/RenderView.cpp:

(WebCore::RenderView::pageOrViewLogicalHeight):
New helper function that does what viewLogicalHeightForPercentages used to do but also
handles returning the page length for block axis column progression. Again, this is to
allow the view to retain its correct size (matching the viewport).

(WebCore::RenderView::viewLogicalHeight):
Back out the code that made the view grow or shrink to the size of the Pagination API page
length when the progression was block axis. This was the source of most of the scroll origin
and scrolling issues.

  • rendering/RenderView.h:

Add the new pageOrViewLogicalHeight() function.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setColumnStylesFromPaginationMode):
This is the old StyleResolver function for setting up the column styles. It's in RenderStyle
now so that it can be called at any time to change a style rather than only at style resolution
time.

  • rendering/style/RenderStyle.h:

Declaration of the setColumnStylesFromPaginationMode function.

LayoutTests:

  • fast/multicol/pagination: Added.
  • fast/multicol/pagination/BottomToTop-bt.html: Added.
  • fast/multicol/pagination/BottomToTop-lr.html: Added.
  • fast/multicol/pagination/BottomToTop-rl.html: Added.
  • fast/multicol/pagination/BottomToTop-tb.html: Added.
  • fast/multicol/pagination/LeftToRight-bt.html: Added.
  • fast/multicol/pagination/LeftToRight-lr.html: Added.
  • fast/multicol/pagination/LeftToRight-rl.html: Added.
  • fast/multicol/pagination/LeftToRight-tb.html: Added.
  • fast/multicol/pagination/RightToLeft-bt.html: Added.
  • fast/multicol/pagination/RightToLeft-lr.html: Added.
  • fast/multicol/pagination/RightToLeft-rl.html: Added.
  • fast/multicol/pagination/RightToLeft-tb.html: Added.
  • fast/multicol/pagination/TopToBottom-bt.html: Added.
  • fast/multicol/pagination/TopToBottom-lr.html: Added.
  • fast/multicol/pagination/TopToBottom-rl.html: Added.
  • fast/multicol/pagination/TopToBottom-tb.html: Added.
  • platform/mac/fast/multicol/pagination: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.txt: Added.
  • platform/mac/fast/multicol/shrink-to-column-height-for-pagination-expected.png:
  • platform/mac/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:
11:31 AM Changeset in webkit [152910] by Lucas Forschler
  • 1 copy in tags/Safari-537.51.3

New Tag.

11:14 AM Changeset in webkit [152909] by fpizlo@apple.com
  • 13 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Structure should be able to tell you if it's valid to load at a given offset from any object with that structure
https://bugs.webkit.org/show_bug.cgi?id=118878

Reviewed by Oliver Hunt.

  • Change Structure::isValidOffset() to actually answer the question "If I attempted to load from an object of this structure, at this offset, would I commit suicide or would I get back some kind of value?"


  • Change StorageAccessData::offset to use a PropertyOffset. It should have been that way from the start.


  • Fix PutStructure so that it sets haveStructures in all of the cases that it should.


  • Make GetByOffset also reference the base object in addition to the butterfly.


The future use of this power will be to answer questions like "If I hoisted this
GetByOffset or PutByOffset to this point, would it cause crashes, or would it be
fine?"

I don't currently plan to use this power to perform validation, since the CSE has
the power to eliminate CheckStructure's that the CFA wouldn't be smart enough to
remove - both in the case of StructureSets where size >= 2 and in the case of
CheckStructures that match across PutStructures. At first I tried to write a
validator that was aware of this, but the validation code got way too complicated
and I started having nightmares of spurious assertion bugs being filed against me.

This also changes some of the code for how we hash FunctionExecutable's for debug
dumps, since that code still had some thread-safety issues. Basically, the
concurrent JIT needs to use the CodeBlock's precomputed hash and never call anything
that could transitively try to compute the hash from the source code. The source
code is a string that may be lazily computed, and that involves all manner of thread
unsafe things.

  • bytecode/CodeOrigin.cpp:

(JSC::InlineCallFrame::hash):

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handlePutByOffset):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCFAPhase.cpp:

(JSC::DFG::CFAPhase::performBlockCFA):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.h:

(StorageAccessData):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToGetByOffset):

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compilePutByOffset):

  • runtime/FunctionExecutableDump.cpp:

(JSC::FunctionExecutableDump::dump):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::isValidOffset):

10:52 AM Changeset in webkit [152908] by commit-queue@webkit.org
  • 9 edits in trunk/Source

[Curl] Http response code 401 (Authentication required) is not handled.
https://bugs.webkit.org/show_bug.cgi?id=118849

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-19
Reviewed by Brent Fulgham.

The current Curl implementation does not handle a 401 response.
When receiving http code 401, we need to give a notification that authorization is required, by calling the appropriate notification method.
This gives a WebKit client the possibility to present a password dialog to the user.
In response to this, we should provide Curl with the given username and password, so another request can be sent with the given credentials.

Source/WebCore:

  • platform/network/ResourceHandle.h:

Added method to check if credential storage should be used.

  • platform/network/ResourceHandleInternal.h:

Added member to keep track of number of authentication failures.

(WebCore::ResourceHandleInternal::ResourceHandleInternal):

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::shouldUseCredentialStorage):

Added method to check if credential storage should be used.

(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):

Implement method; notify client when authentication is required.

(WebCore::ResourceHandle::receivedCredential):

Implement method; provide Curl with password and username when available.

(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):

Implement method; reset Curl username and password.

(WebCore::ResourceHandle::receivedCancellation):

Implement method; notify client that authorization has been cancelled.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::isHttpAuthentication):

Added function to check if http code is an 'Authorization required' code.

(WebCore::getProtectionSpace):

Added function to initialize a protection space object from a Curl handle and a response object.

(WebCore::headerCallback):

Notify client when authorization is required.

(WebCore::ResourceHandleManager::applyAuthenticationToRequest):

Added method to set Curl username and password.

(WebCore::ResourceHandleManager::initializeHandle):

Use method to set Curl username and password.

  • platform/network/curl/ResourceHandleManager.h:

Added method to set Curl username and password.

Source/WebKit/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does,
notify delegate when authorization is required.

  • WebURLAuthenticationChallengeSenderCurl.cpp:

(WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does.

(WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does.

(WebURLAuthenticationChallengeSender::useCredential):

Implement empty method; use the same implementation as the CFNetwork version does.

10:47 AM Changeset in webkit [152907] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Hover doesn't work for block elements inside a href element
https://bugs.webkit.org/show_bug.cgi?id=118907

Patch by Radu Stavila <stavila@adobe.com> on 2013-07-19
Reviewed by David Hyatt.

Source/WebCore:

Added test for hovering block elements inside a href element.

Test: fast/css/hover-display-block.html

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::hoverAncestor):

LayoutTests:

Don't skip all anonymous objects when searching for the hover ancestor, only the ones
directly flowed into a region.

  • fast/css/hover-display-block-expected.txt: Added.
  • fast/css/hover-display-block.html: Added.
10:46 AM Changeset in webkit [152906] by zoltan@webkit.org
  • 5 edits in trunk

[CSS Shapes] Clear overflowing line's segments in pushShapeContentOverflowBelowTheContentBox
https://bugs.webkit.org/show_bug.cgi?id=118002

Reviewed by David Hyatt.

When the last line in the shape overlaps with the shape bottom boundaries we need to clear the computed segments. (We need to compute
the segments anyway, since shape-outside's code uses the same code path to determine its segments and the line containing is not a
requirement in that case.) Rather then doing the job in RenderBlock::LineBreaker::nextLineBreak I moved the functionality to its correct
place to pushShapeContentOverflowBelowTheContentBox. Now all the overflow related functionality is located in one function. I fixed the
corresponding layout test.

Source/WebCore:

Tests: I modified shape-inside-overflow.html.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::pushShapeContentOverflowBelowTheContentBox): Remove segments if line overlaps with the shape's boundaries.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Move segments clear logic to pushShapeContentOverflowBelowContentBox.

LayoutTests:

  • fast/shapes/shape-inside/shape-inside-overflow-expected.html:
  • fast/shapes/shape-inside/shape-inside-overflow.html:
10:43 AM Changeset in webkit [152905] by ggaren@apple.com
  • 2 edits in trunk/Source/WebCore

TrailingObjects shouldn't shrink vector capacity in a loop
https://bugs.webkit.org/show_bug.cgi?id=118322

Reviewed by Darin Adler.

This seems to take about 3% off the profile of loading a large text file.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::TrailingObjects::clear): clear() has the built-in side effect
of throwing away existing capacity. Use shrink(0) to indicate that we
want to keep our existing capacity.

10:40 AM Changeset in webkit [152904] by zoltan@webkit.org
  • 7 edits in trunk/LayoutTests

[CSS Shapes][CSS Regions] Modify existing tests to test overflow also when padding is applied on the container
https://bugs.webkit.org/show_bug.cgi?id=117881

Reviewed by David Hyatt.

Currently, we don't have tests which test the overflow behavior when there is padding applied on the container.
I modified the existing tests to cover these cases as well and increase our test coverage.

  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html:
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html:
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html:
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html:
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html:
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html:
10:33 AM Changeset in webkit [152903] by Martin Robinson
  • 3 edits in trunk/Tools

Add a couple people to the MathML watchlist
https://bugs.webkit.org/show_bug.cgi?id=118909

Reviewed by Andreas Kling.

Add a couple people to the MathML watchlist and add Kalyan's other
email address to fix style checker warnings about the watchlist
contents.

  • Scripts/webkitpy/common/config/contributors.json: Add Frédéric to the

list of contributors and add Kalyan's second email address.

  • Scripts/webkitpy/common/config/watchlist: Add myself and Frédéric to the MathML

watchlist.

9:13 AM Changeset in webkit [152902] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Update test expectations for MathML after r152840.
https://bugs.webkit.org/show_bug.cgi?id=118053

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-19
Reviewed by Chris Fleizach.

  • TestExpectations: unskip mspace tests
  • platform/mac/TestExpectations: ImageOnlyFailure for mspace-units
8:21 AM Changeset in webkit [152901] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Update expectations after r152793, r152777 and r152872
https://bugs.webkit.org/show_bug.cgi?id=118906

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-19

  • platform/gtk/TestExpectations: Mark svg/animations/svgenum-animation-6.html as flaky, and

mathml/presentation/bug95404.html, introduced in r152777, as ImageOnlyFailure.

  • platform/gtk/editing/pasteboard/emacs-cntl-y-001-expected.txt: New baseline after r152872.
  • platform/gtk/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Ditto.
  • platform/gtk/fast/dom/Range/getClientRects-expected.txt: Ditto.
  • platform/gtk/fast/js/function-length-expected.txt: Ditto.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-expected.txt: Added after r152872.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Added after r152872.
  • platform/gtk/tables/mozilla/marvin/backgr_index-expected.txt: New baseline after r152793.
6:37 AM Changeset in webkit [152900] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt][WK2] More unreviewed cleanup for pixel tester bot.

  • platform/qt-5.0-wk2/TestExpectations:
6:27 AM Changeset in webkit [152899] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed cleanup for pixel tester bot.

  • platform/qt-5.0-wk2/TestExpectations:
5:46 AM Changeset in webkit [152898] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Merge decamelizations fix ups in the GObject DOM bindings code generator
https://bugs.webkit.org/show_bug.cgi?id=117543

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-07-19
Reviewed by Carlos Garcia Campos.

Ensure that all the code that calls to decamelize() applies the same fix ups

Now all functions that need to decamelize a string should simply call
to decamelize(). This function calls to FixUpDecamelize to apply some
fix ups.

  • bindings/scripts/CodeGeneratorGObject.pm:

(decamelize): decamelizes a string and applies fix ups
(FixUpDecamelize): applies a series of fix ups to a decamelized string
(GetParentGObjType): moved fix ups to FixUpDecamelize()
(GenerateProperties): simply call to decamelize
(GenerateHeader): simply call to decamelize
(GetGReturnMacro): simply call to decamelize
(GenerateFunction): simply call to decamelize
(GenerateCFile): simply call to decamelize
(GenerateEventTargetIface): simply call to decamelize

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

[GTK] Fix regression in DumpRenderTree introduced in r152782 by checking if uri is valid
https://bugs.webkit.org/show_bug.cgi?id=118895

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-19
Reviewed by Philippe Normand.

In r152782 an uri is used to create an string representation without checking first if it
is valid. That fails later when the string is used to check for existing redirections. This
patch ensures that the uri is valid before using it.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(willSendRequestCallback): Ensure an uri is valid before using it.

5:13 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:11 AM Changeset in webkit [152896] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r152340 - [WK2] Invalidate FontCache before purging MemoryCache upon WebProcess termination/closure
https://bugs.webkit.org/show_bug.cgi?id=118280

Reviewed by Darin Adler.

Invalidate the FontCache before disabling and purging the MemoryCache in WebProcess::didClose
and WebProcess::terminate. This frees up additional references to objects that were held
by the FontCache, reducing the amount of 'LEAK: *' output when exiting MiniBrowser or
WebKitTestRunner in debug builds.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::terminate):
(WebKit::WebProcess::didClose):

5:09 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:07 AM Changeset in webkit [152895] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r151674 - [GTK][GStreamer] Fullscreen option in video element context menu not working
https://bugs.webkit.org/show_bug.cgi?id=105191

.:

Fullscreen with native controls is outdated and even broken in
[GTK][WK2], so they are deactivated for now.

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-06-18
Reviewed by Philippe Normand.

  • Source/autotools/SetupAutoconfHeader.m4: Removed the use of

fullscreen native media controls.

4:52 AM Changeset in webkit [152894] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed.

Fix an assertion failure which causes debug bots to fail.

  • platform/network/NetworkStateNotifier.cpp:

(WebCore::NetworkStateNotifier::addNetworkStateChangeListener):

3:31 AM Changeset in webkit [152893] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] media/video-seek-multiple.html is failing
https://bugs.webkit.org/show_bug.cgi?id=117580

Patch by Miguel Gomez <magomez@igalia.com> on 2013-07-19
Reviewed by Philippe Normand.

Source/WebCore:

When receiving several seek calls in a row, ensure that the final position
is the one requested in the last call received.

Already covered in test media/video-seek-multiple.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::seek):

LayoutTests:

Change expectation for media/video-seek-multiple.html test

  • platform/gtk/TestExpectations:
3:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:26 AM Changeset in webkit [152892] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r149543 - [GStreamer] GStreamer log crashes in MediaPlayerPrivateGStreamerBase because of uninitialized category
https://bugs.webkit.org/show_bug.cgi?id=115575

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-05-03
Reviewed by Philippe Normand.

No new tests needed.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

Using extern debug category.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

Declaring debug category as not static.

3:21 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:19 AM Changeset in webkit [152891] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.0

Merge r148131 - Clicking on the volume slider of HTML5 elements is pausing sometimes
https://bugs.webkit.org/show_bug.cgi?id=112548

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-04-10
Reviewed by Eric Carlson.

Source/WebCore:

Test: media/click-volume-bar-not-pausing.html

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
Calling the setDefaultHandled() method on the event prevents it
from being incorrectly propagated from the volume button up to the
MediaDocument.

LayoutTests:

Added test.

  • media/click-volume-bar-not-pausing-expected.txt: Added.
  • media/click-volume-bar-not-pausing.html: Added.
3:13 AM Changeset in webkit [152890] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r152712 - [GTK] Remove compile warnings about GTK+ API deprecated after 3.6
https://bugs.webkit.org/show_bug.cgi?id=118237

Reviewed by Philippe Normand.

We depend on GTK+3.6 so we are not interested in compile warnings
about deprecated API after 3.6

  • Source/autotools/SetupAutoconfHeader.m4: Define

GDK_VERSION_MIN_REQUIRED in config.h.

2:10 AM Changeset in webkit [152889] by kangil.han@samsung.com
  • 9 edits in trunk/Source/WebCore

Use explicit HTMLFrameElementBase cast and introduce toHTMLFrameElementBase
https://bugs.webkit.org/show_bug.cgi?id=118873

Reviewed by Ryosuke Niwa.

It should be HTMLFrameElementBase that embraces both HTMLFrameElement and HTMLIFrameElement.
This also makes correct toFooElement possible.
Next, to avoid direct use of static_cast, this patch introduces toHTMLFrameElementBase for code cleanup.

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::didNotifySubtreeInsertions):

  • html/HTMLFrameElementBase.h:

(WebCore::toHTMLFrameElementBase):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadSubframe):

  • page/EventHandler.cpp:

(WebCore::targetIsFrame):

  • page/FrameView.cpp:

(WebCore::FrameView::init):

  • rendering/RenderFrameBase.cpp:

(WebCore::RenderFrameBase::layoutWithFlattening):

  • rendering/RenderLayer.cpp:

(WebCore::frameElementAndViewPermitScroll):
(WebCore::RenderLayer::scrollRectToVisible):

1:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
1:36 AM Changeset in webkit [152888] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r152552 - Fix build against GTK+ 2.0
https://bugs.webkit.org/show_bug.cgi?id=117895

Patch by Dominique Leuenberger <dimstar@opensuse.org> on 2013-07-10
Reviewed by Martin Robinson.

GTK2 build fails for undefined GDK_IS_X11_DISPLAY
GTK 2.0 does define GDK_WINDOWING_X11,but GDK_IS_X11_DISPLAY is not
present in GTK+ 2.0. A dummy defines is sufficient, as GTK 2.0 is not
that multiple backend aware anyway...

  • platform/gtk/GtkVersioning.h: Define GDK_IS_X11_DISPLAY for GTK+ 2.0 and compatibility for gtk_widget_get_preferred_size()
  • plugins/gtk/gtk2xtbin.c: Include config.h
1:22 AM Changeset in webkit [152887] by zarvai@inf.u-szeged.hu
  • 5 edits
    1 copy in trunk/LayoutTests

[Qt] Unreviewed gardening. Rebase failing tests.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-19

  • platform/qt-5.0-wk2/tables/mozilla/marvin/backgr_index-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/marvin/backgr_index-expected.txt: Copied from LayoutTests/platform/qt/tables/mozilla/marvin/backgr_index-expected.txt.
  • platform/qt/fast/lists/inlineBoxWrapperNullCheck-expected.txt:
  • platform/qt/http/tests/security/contentSecurityPolicy/object-src-none-blocked-expected.txt:
  • platform/qt/tables/mozilla/marvin/backgr_index-expected.txt:
Note: See TracTimeline for information about the timeline view.