Timeline



Jul 2, 2012:

11:54 PM Changeset in webkit [121733] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[EFL][WK2] Add API to deliver a Web Intent to a frame
https://bugs.webkit.org/show_bug.cgi?id=90067

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-03
Reviewed by Kenneth Rohde Christiansen.

Add ewk_view_intent_deliver() method on the Ewk_View
to deliver a Web Intent to the view's main frame.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_intent_deliver):

  • UIProcess/API/efl/ewk_view.h:
11:27 PM Changeset in webkit [121732] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk/Source/WebKit2

[EFL][WK2] Add API to inspect a Web Intent service
https://bugs.webkit.org/show_bug.cgi?id=90066

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02
Reviewed by Kenneth Rohde Christiansen.

Add EFL API to inspect a Web Intent Service and emit
a signal on the view when a new intent service
registers.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/ewk_intent_service.cpp: Added.

(_Ewk_Intent_Service):
(ewk_intent_service_ref):
(ewk_intent_service_unref):
(ewk_intent_service_action_get):
(ewk_intent_service_type_get):
(ewk_intent_service_href_get):
(ewk_intent_service_title_get):
(ewk_intent_service_disposition_get):
(ewk_intent_service_new):

  • UIProcess/API/efl/ewk_intent_service.h: Added.
  • UIProcess/API/efl/ewk_intent_service_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_intent_service_register):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_loader_client.cpp:

(registerIntentServiceForFrame):
(ewk_view_loader_client_attach):

  • UIProcess/API/efl/ewk_view_private.h:
11:24 PM Changeset in webkit [121731] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][EFL] Free Ewk_Intent calloc'd memory with free() instead of delete
https://bugs.webkit.org/show_bug.cgi?id=90433

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02
Reviewed by Kenneth Rohde Christiansen.

Free calloc'd memory with free() instead of delete in Ewk_Intent.
Add blank lines before return statements for consistency.

  • UIProcess/API/efl/ewk_intent.cpp:

(ewk_intent_unref):
(ewk_intent_action_get):
(ewk_intent_type_get):
(ewk_intent_service_get):
(ewk_intent_suggestions_get):
(ewk_intent_extra_get):
(ewk_intent_extra_names_get):
(ewk_intent_new):

9:42 PM Changeset in webkit [121730] by yosin@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test inspector/timeline/timeline-receive-response-event.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90430

Unreviewd build fix

  • platform/chromium/TestExpectations: Mark timeline-receive-response-event.html flaky
9:25 PM Changeset in webkit [121729] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[TextureMapper] The TextureMapper should support edge-distance anti-antialiasing
https://bugs.webkit.org/show_bug.cgi?id=90308

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-07-02
Reviewed by Noam Rosenthal.

Source/WebCore:

Add an edge-distance anti-aliasing implementation for the TextureMapper. Currently
this implementation is not active for tiled layers. This implementation is based
on the one in the Chromium compositor originally written by David Raveman.

When a layer is transformed in a way that leaves its edge dimensions across pixel
boundaries, edge distance anti-aliasing will do a cheaper form of anti-aliasing
than full-scene anti-aliasing to make the transition from the layer pixel
to the background pixel smoother.

No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
compositing and 3D transforms, when those test harnesses are capable of
producing pixel output (in progress).

  • platform/graphics/texmap/TextureMapper.h: Add an enum which is used to tell

the texture mapper what edges of a texture are exposed. This will be used for
properly dealing with tiled layers in the future.

  • platform/graphics/texmap/TextureMapperBackingStore.cpp: Properly pass information

about exposed layer edges to the TextureMapper while painting.

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(TextureMapperTile): Modified arguments include exposed edges.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawQuad): Renamed from drawRect, this method can now
draw quads that have non unit-rect texture coordinates. This is necessary because
the edge distance approach draws such quad.
(WebCore::TextureMapperGL::drawBorder): Call drawQuad now instead of drawRect.
(WebCore::TextureMapperGL::drawTexture): Pass the exposedEdges argument down.
(WebCore::TextureMapperGL::drawTextureRectangleARB): Call drawQuad now instead of
drawRect.
(WebCore::viewportMatrix): Added this helper which can calculate the viewport
transform based on the current OpenGL viewport settings.
(WebCore::scaleLineEquationCoeffecientsToOptimizeDistanceCalculation): Added this
helper which optimizes the fragment shader by precalculating some constant parts
of the distance calculation.
(WebCore::getStandardEquationCoeffecientsForLine): Given two end points of line segment
get the coeffecients of the line in the standard form of the line equation.
(WebCore::quadToEdgeArray): Converts a FloatQuad to an array of four sets of pre-scaled
line coefficients so that they can be passed to OpenGL.
(WebCore::scaledVectorDifference): Helper which helps expand a quad of arbitrary
orientation.
(WebCore::inflateQuad): Inflate a quad of arbitrary orientation. The transform may
flip it so we have to look at neighboring points to expand the quad.
(WebCore::TextureMapperGL::drawTextureWithAntialiasing): Activate the anti-aliasing
program and set up all uniforms.
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram): Abstract out common operations
from drawTexture to be used with drawTextureWithAntialiasing.

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::TextureMapperGL::DrawQuad::DrawQuad): Add this small type which stores information
necessary to draw a quad -- it's original destination rect and the final size mapped to
texture coordinates.
(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp: Add the new exposedEdges argument.
  • platform/graphics/texmap/TextureMapperImageBuffer.h: Ditto.
  • platform/graphics/texmap/TextureMapperShaderManager.cpp: Add the new fragment shader for

doing edge-distance AA and a program which uses that shader.

  • platform/graphics/texmap/TextureMapperShaderManager.h: Ditto.

Source/WebKit2:

  • UIProcess/texmap/LayerBackingStore.cpp:

(WebKit::LayerBackingStore::paintToTextureMapper): Update the method to call paint with
the new argument.

9:08 PM Changeset in webkit [121728] by mitz@apple.com
  • 4 edits
    2 adds in trunk

Column height and count calculation ignores most overflow
https://bugs.webkit.org/show_bug.cgi?id=90392

Reviewed by Dean Jackson.

Source/WebCore:

Test: fast/multicol/overflow-content.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::relayoutForPagination): Changed to compute the overflow from children
and use the layout overflow height rather the content height.

LayoutTests:

  • fast/multicol/overflow-content-expected.html: Added.
  • fast/multicol/overflow-content.html: Added.
  • fast/multicol/vertical-rl/rules-with-border-before-expected.png:
8:43 PM Changeset in webkit [121727] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Refactor : move the implementation of getMIMETypeForExtension and getPreferredExtensionForMIMEType into BlackBerry platform
https://bugs.webkit.org/show_bug.cgi?id=90360

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-07-02
Reviewed by Antonio Gomes.

We should have one implementation for getMIMETypeForExtension
and getPreferredExtensionForMIMEType for both webkit and platform,
so I move this implementation to BlackBerry platform.

No new test cases , because no behavior changed.

  • platform/blackberry/MIMETypeRegistryBlackBerry.cpp:

(WebCore::MIMETypeRegistry::getMIMETypeForExtension):
(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):

8:40 PM Changeset in webkit [121726] by staikos@webkit.org
  • 5 edits in trunk

[BlackBerry] Enable scoped style for BlackBerry.
https://bugs.webkit.org/show_bug.cgi?id=90418

Reviewed by Rob Buis.

.:

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmakeconfig.h.cmake:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
8:38 PM Changeset in webkit [121725] by commit-queue@webkit.org
  • 10 edits in trunk

[BlackBerry] Use PUBLIC_BUILD to enable/disable DRT
https://bugs.webkit.org/show_bug.cgi?id=90271

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-07-02
Reviewed by George Staikos.

RIM PR #154707

Currently DRT code will be compiled only if ENABLE_DRT is set, and it's not
defined by default.
We should enable DRT by default unless PUBLIC_BUILD is set. In this way we don't
need to rebuild webkit before running DRT.

.:

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::~WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
(BlackBerry::WebKit::WebPage::runLayoutTests):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::addMessageToConsole):
(WebCore::ChromeClientBlackBerry::runJavaScriptAlert):
(WebCore::ChromeClientBlackBerry::runJavaScriptConfirm):
(WebCore::ChromeClientBlackBerry::runJavaScriptPrompt):
(WebCore::ChromeClientBlackBerry::createWindow):
(WebCore::ChromeClientBlackBerry::runBeforeUnloadConfirmPanel):
(WebCore::ChromeClientBlackBerry::setStatusbarText):
(WebCore::ChromeClientBlackBerry::exceededDatabaseQuota):
(WebCore::ChromeClientBlackBerry::keyboardUIMode):

Tools:

  • Scripts/webkitdirs.pm:

(blackberryCMakeArguments):

8:36 PM Changeset in webkit [121724] by ojan@chromium.org
  • 5 edits in trunk/Tools

webkit-patch rebaseline-expectations should share code with rebaseline-all
https://bugs.webkit.org/show_bug.cgi?id=90413

Reviewed by Dirk Pranke.

Make them share code. In addition to reducing code duplication this makes
rebaseline-expectations considerably faster by rebaselining in parallel.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(AbstractParallelRebaselineCommand):
(AbstractParallelRebaselineCommand._run_webkit_patch):
(AbstractParallelRebaselineCommand._rebaseline):
(RebaselineJson):
(RebaselineJson.execute):
(RebaselineExpectations):
(RebaselineExpectations._update_expectations_file):
(RebaselineExpectations._tests_to_rebaseline):
(RebaselineExpectations._add_tests_to_rebaseline_for_port):
(RebaselineExpectations.execute):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(test_rebaseline_all):
(test_rebaseline_expectations.run_in_parallel):
(test_rebaseline_expectations):

8:23 PM Changeset in webkit [121723] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[BlackBerry] Update DumpRenderTree to have it work interactively in parallel
https://bugs.webkit.org/show_bug.cgi?id=88326

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-07-02
Reviewed by Rob Buis.

  1. Test name is sent to torch-launcher via PPS message(from host machine). So we get test list by monitoring and receiving PPS message instead of reading file index.drt.
  2. Torch-launcher create a <test file>.done file when it finished a test.
  3. We don't need to search for Ref-tests in DumpRenderTree.cpp any more. NRWT will get them for us.
  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(BlackBerry::WebKit::DumpRenderTree::DumpRenderTree):
(BlackBerry::WebKit::DumpRenderTree::doneDrt):
(BlackBerry::WebKit::DumpRenderTree::runRemainingTests):
(BlackBerry::WebKit::DumpRenderTree::ensurePPS):
(WebKit):
(BlackBerry::WebKit::DumpRenderTree::handlePPSData):
(BlackBerry::WebKit::DumpRenderTree::waitForTest):
(BlackBerry::WebKit::DumpRenderTree::runTests):
(BlackBerry::WebKit::DumpRenderTree::dump):

  • DumpRenderTree/blackberry/DumpRenderTreeBlackBerry.h:

(DumpRenderTree):

7:22 PM Changeset in webkit [121722] by eae@chromium.org
  • 8 edits
    3 adds in trunk

Position replaced elements on pixel bounds
https://bugs.webkit.org/show_bug.cgi?id=90354

Reviewed by Eric Seidel.

To avoid sizing and repaint issues we should layout replaced elements on
pixel bounds. We already ensure that replaced elements are sized in full
pixels and that they are painted on pixel bounds. By also ensuring that
they are placed on pixel bounds we avoid pixel having the size be
expanded by pixel snapping and repainting/invalidation rect issues when
scrolling.

Test: fast/repaint/repaint-during-scroll-with-zoom.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalWidthReplaced):
(WebCore::RenderBox::computePositionedLogicalHeightReplaced):

7:19 PM Changeset in webkit [121721] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-02

  • DEPS:
7:04 PM Changeset in webkit [121720] by thakis@chromium.org
  • 4 edits in trunk/Source/WebCore

Fix new -Wunused-private-field violations
https://bugs.webkit.org/show_bug.cgi?id=90417

Reviewed by Ryosuke Niwa.

No intended behavior change.

  • inspector/InspectorFileSystemAgent.cpp:

(WebCore):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:

(WebCore::CCPrioritizedTextureManager::CCPrioritizedTextureManager):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:

(CCPrioritizedTextureManager):

6:34 PM Changeset in webkit [121719] by yosin@chromium.org
  • 2 edits in trunk/LayoutTests

Build fix for Chromium

Fix webkit-lint failure.

  • platform/chromium/TestExpectations: Got rid of "SLOW" modifier from fast/overflow/lots-of-sibling-inline-boxes.html
6:28 PM Changeset in webkit [121718] by staikos@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Implement cancelVibration, and make sure it's canceled on
destruction.
https://bugs.webkit.org/show_bug.cgi?id=90406

Reviewed by Rob Buis.

  • WebCoreSupport/VibrationClientBlackBerry.cpp:

(WebCore::VibrationClientBlackBerry::cancelVibration):
(WebCore::VibrationClientBlackBerry::vibrationDestroyed):

6:27 PM Changeset in webkit [121717] by fpizlo@apple.com
  • 32 edits
    10 adds in trunk/Source/JavaScriptCore

DFG OSR exit value recoveries should be computed lazily
https://bugs.webkit.org/show_bug.cgi?id=82155

Reviewed by Gavin Barraclough.

This change aims to reduce one aspect of DFG compile times: the fact
that we currently compute the value recoveries for each local and
argument on every speculation check. We compile many speculation checks,
so this can add up quick. The strategy that this change takes is to
have the DFG save just enough information about how the compiler is
choosing to represent state, that the DFG::OSRExitCompiler can reify
the value recoveries lazily.

This appears to be an 0.3% SunSpider speed-up and is neutral elsewhere.

I also took the opportunity to fix the sampling regions profiler (it
was missing an export macro) and to put in more sampling regions in
the DFG (which are disabled so long as ENABLE(SAMPLING_REGIONS) is
false).

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC):
(JSC::CodeBlock::shrinkDFGDataToFit):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::minifiedDFG):
(JSC::CodeBlock::variableEventStream):
(DFGData):

  • bytecode/Operands.h:

(JSC::Operands::hasOperand):
(Operands):
(JSC::Operands::size):
(JSC::Operands::at):
(JSC::Operands::operator[]):
(JSC::Operands::isArgument):
(JSC::Operands::isVariable):
(JSC::Operands::argumentForIndex):
(JSC::Operands::variableForIndex):
(JSC::Operands::operandForIndex):
(JSC):
(JSC::dumpOperands):

  • bytecode/SamplingTool.h:

(SamplingRegion):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::parse):

  • dfg/DFGCFAPhase.cpp:

(JSC::DFG::performCFA):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::performCSE):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::performFixup):

  • dfg/DFGGenerationInfo.h:

(JSC::DFG::GenerationInfo::GenerationInfo):
(JSC::DFG::GenerationInfo::initConstant):
(JSC::DFG::GenerationInfo::initInteger):
(JSC::DFG::GenerationInfo::initJSValue):
(JSC::DFG::GenerationInfo::initCell):
(JSC::DFG::GenerationInfo::initBoolean):
(JSC::DFG::GenerationInfo::initDouble):
(JSC::DFG::GenerationInfo::initStorage):
(GenerationInfo):
(JSC::DFG::GenerationInfo::noticeOSRBirth):
(JSC::DFG::GenerationInfo::use):
(JSC::DFG::GenerationInfo::spill):
(JSC::DFG::GenerationInfo::setSpilled):
(JSC::DFG::GenerationInfo::fillJSValue):
(JSC::DFG::GenerationInfo::fillCell):
(JSC::DFG::GenerationInfo::fillInteger):
(JSC::DFG::GenerationInfo::fillBoolean):
(JSC::DFG::GenerationInfo::fillDouble):
(JSC::DFG::GenerationInfo::fillStorage):
(JSC::DFG::GenerationInfo::appendFill):
(JSC::DFG::GenerationInfo::appendSpill):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGMinifiedGraph.h: Added.

(DFG):
(MinifiedGraph):
(JSC::DFG::MinifiedGraph::MinifiedGraph):
(JSC::DFG::MinifiedGraph::at):
(JSC::DFG::MinifiedGraph::append):
(JSC::DFG::MinifiedGraph::prepareAndShrink):
(JSC::DFG::MinifiedGraph::setOriginalGraphSize):
(JSC::DFG::MinifiedGraph::originalGraphSize):

  • dfg/DFGMinifiedNode.cpp: Added.

(DFG):
(JSC::DFG::MinifiedNode::fromNode):

  • dfg/DFGMinifiedNode.h: Added.

(DFG):
(JSC::DFG::belongsInMinifiedGraph):
(MinifiedNode):
(JSC::DFG::MinifiedNode::MinifiedNode):
(JSC::DFG::MinifiedNode::index):
(JSC::DFG::MinifiedNode::op):
(JSC::DFG::MinifiedNode::hasChild1):
(JSC::DFG::MinifiedNode::child1):
(JSC::DFG::MinifiedNode::hasConstant):
(JSC::DFG::MinifiedNode::hasConstantNumber):
(JSC::DFG::MinifiedNode::constantNumber):
(JSC::DFG::MinifiedNode::hasWeakConstant):
(JSC::DFG::MinifiedNode::weakConstant):
(JSC::DFG::MinifiedNode::getIndex):
(JSC::DFG::MinifiedNode::compareByNodeIndex):
(JSC::DFG::MinifiedNode::hasChild):

  • dfg/DFGNode.h:

(Node):

  • dfg/DFGOSRExit.cpp:

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

  • dfg/DFGOSRExit.h:

(OSRExit):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompiler.h:

(OSRExitCompiler):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::performPredictionPropagation):

  • dfg/DFGRedundantPhiEliminationPhase.cpp:

(JSC::DFG::performRedundantPhiElimination):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::SpeculativeJIT):
(DFG):
(JSC::DFG::SpeculativeJIT::fillStorage):
(JSC::DFG::SpeculativeJIT::noticeOSRBirth):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT.h:

(DFG):
(JSC::DFG::SpeculativeJIT::use):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::spill):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::recordSetLocal):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValueRecoveryOverride.h: Added.

(DFG):
(ValueRecoveryOverride):
(JSC::DFG::ValueRecoveryOverride::ValueRecoveryOverride):

  • dfg/DFGValueSource.cpp: Added.

(DFG):
(JSC::DFG::ValueSource::dump):

  • dfg/DFGValueSource.h: Added.

(DFG):
(JSC::DFG::dataFormatToValueSourceKind):
(JSC::DFG::valueSourceKindToDataFormat):
(JSC::DFG::isInRegisterFile):
(ValueSource):
(JSC::DFG::ValueSource::ValueSource):
(JSC::DFG::ValueSource::forPrediction):
(JSC::DFG::ValueSource::forDataFormat):
(JSC::DFG::ValueSource::isSet):
(JSC::DFG::ValueSource::kind):
(JSC::DFG::ValueSource::isInRegisterFile):
(JSC::DFG::ValueSource::dataFormat):
(JSC::DFG::ValueSource::valueRecovery):
(JSC::DFG::ValueSource::nodeIndex):
(JSC::DFG::ValueSource::nodeIndexFromKind):
(JSC::DFG::ValueSource::kindFromNodeIndex):

  • dfg/DFGVariableEvent.cpp: Added.

(DFG):
(JSC::DFG::VariableEvent::dump):
(JSC::DFG::VariableEvent::dumpFillInfo):
(JSC::DFG::VariableEvent::dumpSpillInfo):

  • dfg/DFGVariableEvent.h: Added.

(DFG):
(VariableEvent):
(JSC::DFG::VariableEvent::VariableEvent):
(JSC::DFG::VariableEvent::reset):
(JSC::DFG::VariableEvent::fillGPR):
(JSC::DFG::VariableEvent::fillPair):
(JSC::DFG::VariableEvent::fillFPR):
(JSC::DFG::VariableEvent::spill):
(JSC::DFG::VariableEvent::death):
(JSC::DFG::VariableEvent::setLocal):
(JSC::DFG::VariableEvent::movHint):
(JSC::DFG::VariableEvent::kind):
(JSC::DFG::VariableEvent::nodeIndex):
(JSC::DFG::VariableEvent::dataFormat):
(JSC::DFG::VariableEvent::gpr):
(JSC::DFG::VariableEvent::tagGPR):
(JSC::DFG::VariableEvent::payloadGPR):
(JSC::DFG::VariableEvent::fpr):
(JSC::DFG::VariableEvent::virtualRegister):
(JSC::DFG::VariableEvent::operand):
(JSC::DFG::VariableEvent::variableRepresentation):

  • dfg/DFGVariableEventStream.cpp: Added.

(DFG):
(JSC::DFG::VariableEventStream::logEvent):
(MinifiedGenerationInfo):
(JSC::DFG::MinifiedGenerationInfo::MinifiedGenerationInfo):
(JSC::DFG::MinifiedGenerationInfo::update):
(JSC::DFG::VariableEventStream::reconstruct):

  • dfg/DFGVariableEventStream.h: Added.

(DFG):
(VariableEventStream):
(JSC::DFG::VariableEventStream::appendAndLog):

  • dfg/DFGVirtualRegisterAllocationPhase.cpp:

(JSC::DFG::performVirtualRegisterAllocation):

6:24 PM Changeset in webkit [121716] by abarth@webkit.org
  • 2 edits in trunk/Tools

Remove flashplugin-installer from the EWS image because it causes some tests to crash
https://bugs.webkit.org/show_bug.cgi?id=90403

Reviewed by Tony Chang.

  • EWSTools/cold-boot.sh:
6:21 PM Changeset in webkit [121715] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

Build fix for Chromimum

r121710 removed WebCore/platform/qt/GraphicsLayerQt.{cpp,h}.
However, that patch didn't remove them from WebCore.gypi.

  • WebCore.gypi: Removed GraphicsLayerQt.{cpp,h}
6:08 PM Changeset in webkit [121714] by jsbell@chromium.org
  • 18 edits in trunk/Source/WebCore

IDL overloads should not treat wrapper types as nullable by default
https://bugs.webkit.org/show_bug.cgi?id=90218

Reviewed by Kentaro Hara.

Wrapper types were being treated as Nullable by default during overloaded
method dispatching, which deviates from the WebIDL specification. This change
introduces the "?" type suffix into the parser, and treats wrapper types
only nullable if specified. (The behavior of array types and other non-wrapper
types are not changed, and only overloaded methods are checked.)

IDL files with affected overloads are modified to include the "?" suffix
so that no behavior changes are introduced by this patch - the JS and V8
generator results before/after the change show no diffs.

Test: bindings/scripts/test/TestObj.idl (a non-nullable overload)

  • Modules/indexeddb/IDBDatabase.idl: Added "?" where necessary.
  • Modules/indexeddb/IDBIndex.idl: Added "?" where necessary.
  • Modules/indexeddb/IDBObjectStore.idl: Added "?" where necessary.
  • Modules/webaudio/AudioContext.idl: Added "?" where necessary.
  • Modules/webaudio/AudioNode.idl: Added "?" where necessary.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheckExpression): Add isNullable check.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateParametersCheckExpression): Add isNullable check.

  • bindings/scripts/IDLParser.pm: Parse/set isNullable.

(parseParameters):

  • bindings/scripts/IDLStructure.pm: Add basic type suffix parsing.
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
(WebCore):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod):

  • bindings/scripts/test/TestObj.idl: Mark previous overload params with ?, add new one without.
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::overloadedMethod8Callback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::overloadedMethodCallback):

  • dom/DataTransferItemList.idl: Added "?" where necessary.
  • fileapi/WebKitBlobBuilder.idl: Added "?" where necessary.
  • html/DOMURL.idl: Added "?" where necessary.
  • html/canvas/CanvasRenderingContext2D.idl: Added "?" where necessary.
  • html/canvas/WebGLRenderingContext.idl: Added "?" where necessary.
5:53 PM Changeset in webkit [121713] by leandrogracia@chromium.org
  • 7 edits
    3 adds in trunk

[Chromium] Implement a Layout Test for editing/SurroundingText
https://bugs.webkit.org/show_bug.cgi?id=82461

Reviewed by Ryosuke Niwa.

Source/WebKit/chromium:

Allow passing nodes as arguments for layout test methods.

  • public/WebBindings.h:

(WebBindings):

  • src/WebBindings.cpp:

(WebKit::getNodeImpl):
(WebKit):
(WebKit::WebBindings::getNode):

Tools:

Add a new method to the layout test controller in order to retrieve the
text surrounding a provided element.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::textSurroundingElement):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

LayoutTests:

Add a new layout test for the surrounding text feature.

  • platform/chromium/editing/surrounding-text/surrounding-text-expected.txt: Added.
  • platform/chromium/editing/surrounding-text/surrounding-text.html: Added.
5:10 PM Changeset in webkit [121712] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG::ArgumentsSimplificationPhase should assert that the PhantomArguments nodes it creates are not shouldGenerate()
https://bugs.webkit.org/show_bug.cgi?id=90407

Reviewed by Mark Hahnenberg.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

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

5:02 PM EFLWebKit edited by ryuan.choi@samsung.com
Bump libsoup and glib-networking version (diff)
4:44 PM Changeset in webkit [121711] by eae@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed chromium rebaseline.

  • platform/chromium-linux/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
  • platform/chromium-mac/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
3:44 PM Changeset in webkit [121710] by noam.rosenthal@nokia.com
  • 15 edits
    2 deletes in trunk/Source

[Qt] Get rid of GraphicsLayerQt
https://bugs.webkit.org/show_bug.cgi?id=78598

Reviewed by Luiz Agostini.

Source/WebCore:

Remove GraphicsLayerQt.h/cpp, as well as references to the non-TextureMapper code paths
in GraphicsContext3DQt and MediaPlayerPrivateQt.

No new tests, removing unused code paths.

  • Target.pri:
  • platform/graphics/PlatformLayer.h:
  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
(WebCore):

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore):

  • platform/graphics/qt/GraphicsLayerQt.cpp: Removed.
  • platform/graphics/qt/GraphicsLayerQt.h: Removed.
  • platform/graphics/qt/MediaPlayerPrivateQt.cpp:

(WebCore):

  • platform/graphics/qt/MediaPlayerPrivateQt.h:

(MediaPlayerPrivateQt):

  • plugins/qt/PluginViewQt.cpp:

(WebCore::PluginView::invalidateRect):
(WebCore::PluginView::platformStart):

Source/WebKit/qt:

Removed all references to GraphicsLayerQt, including #ifdef code paths that only apply
when TEXTURE_MAPPER is disabled.

  • Api/qgraphicswebview.cpp:

(QGraphicsWebView::paint):

  • Api/qwebframe.cpp:

(QWebFramePrivate::renderFromTiledBackingStore):
(QWebFramePrivate::renderRelativeCoords):

  • Api/qwebframe_p.h:

(QWebFramePrivate::QWebFramePrivate):
(QWebFramePrivate):

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):

  • WebCoreSupport/PageClientQt.cpp:

(WebCore):
(WebCore::PageClientQGraphicsWidget::~PageClientQGraphicsWidget):
(WebCore::PageClientQGraphicsWidget::update):
(WebCore::PageClientQGraphicsWidget::syncLayers):
(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

  • WebCoreSupport/PageClientQt.h:

(WebCore):
(WebCore::PageClientQWidget::PageClientQWidget):
(PageClientQWidget):
(PageClientQGraphicsWidget):

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

LayoutUnit::epsilon() is wrong
https://bugs.webkit.org/show_bug.cgi?id=90083

Patch by Behdad Esfahbod <behdad@behdad.org> on 2012-07-02
Reviewed by Eric Seidel.

Do division in floats, not integers.

No new tests. No code using the affected function.

  • platform/FractionalLayoutUnit.h:

(WebCore::FractionalLayoutUnit::epsilon):

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

Compositing layer sync should cause deferred repaints to be fired immediately
https://bugs.webkit.org/show_bug.cgi?id=90401
<rdar://problem/11792028>

Reviewed by Simon Fraser and Antti Koivisto.

If we sync compositing layers and allow the repaint to be deferred, there is time for a
visible flash to occur. Instead, stop the deferred repaint timer and repaint immediately.

No new tests, configuration and timing dependent.

  • page/FrameView.cpp:

(WebCore::FrameView::syncCompositingStateForThisFrame):
(WebCore::FrameView::checkStopDelayingDeferredRepaints):
(WebCore::FrameView::stopDelayingDeferredRepaints): Split off from checkStopDelayingDeferredRepaints.

  • page/FrameView.h:

(FrameView): Add stopDelayingDeferredRepaints.

3:08 PM WebKit Team edited by luiz@webkit.org
(diff)
2:47 PM Changeset in webkit [121707] by benjamin@webkit.org
  • 39 edits in trunk/Source

Do not do any logging initialization when logging is disabled
https://bugs.webkit.org/show_bug.cgi?id=90228

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-07-02
Reviewed by Simon Fraser.

Source/WebCore:

Initializating of the logging channels was taking time on startup. When logging is disabled
(and the LOG macro does nothing), we should aslo disable logging channels and initialization.

This patch #ifdef the Logging initialization with the macro LOG_DISABLED.

  • WebCore.exp.in:
  • make-export-file-generator: Explicitely adds Assertions.h so that LOG_DISABLED is defined.
  • platform/Logging.cpp:
  • platform/Logging.h:
  • platform/blackberry/LoggingBlackBerry.cpp:
  • platform/efl/LoggingEfl.cpp:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/gtk/LoggingGtk.cpp:
  • platform/mac/LoggingMac.mm:
  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::ensureSessionIsInitialized):

  • platform/qt/LoggingQt.cpp:
  • platform/win/LoggingWin.cpp:
  • platform/wx/LoggingWx.cpp:

Source/WebKit/blackberry:

  • Api/BlackBerryGlobal.cpp:

(BlackBerry::WebKit::globalInitialize):

Source/WebKit/chromium:

  • src/WebKit.cpp:

(WebKit::enableLogChannel):

Source/WebKit/efl:

  • ewk/ewk_main.cpp:

(_ewk_init_body):

Source/WebKit/gtk:

  • webkit/webkitglobals.cpp:

(webkitInit):

Source/WebKit/mac:

  • Misc/WebIconDatabase.mm:

(-[WebIconDatabase _scaleIcon:toSize:]):

  • Misc/WebKitLogging.h:
  • Misc/WebKitLogging.m:
  • WebView/WebHTMLView.mm:

(-[WebHTMLView _attributeStringFromDOMRange:]):

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit/qt:

  • WebCoreSupport/InitWebCoreQt.cpp:

(WebCore::initializeWebCoreQt):

Source/WebKit/win:

  • WebView.cpp:

(WebView::initWithFrame):

Source/WebKit/wx:

  • WebView.cpp:

(WebKit::WebView::Create):

Source/WebKit2:

  • Platform/Logging.cpp:
  • Platform/Logging.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

2:27 PM Changeset in webkit [121706] by ojan@chromium.org
  • 3 edits in trunk/Tools

Delete unused rebaseline method in gardeningserver.py
https://bugs.webkit.org/show_bug.cgi?id=90396

Reviewed by Eric Seidel.

As best I can tell, the only usage was in this unittest.

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningHTTPRequestHandler.updateexpectations):

  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:

(GardeningServerTest.test_rebaseline_new_port):

1:48 PM Changeset in webkit [121705] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Another crashing test on the EWS. We think this is because of the flash
package we have installed.

  • platform/chromium/TestExpectations:
1:44 PM Changeset in webkit [121704] by eae@chromium.org
  • 9 edits
    9 adds
    2 deletes in trunk/LayoutTests

Unreviewed chromium rebaseline for r121697.

  • platform/chromium-linux-x86/fast/multicol/vertical-lr: Added.
  • platform/chromium-linux-x86/fast/multicol/vertical-lr/float-avoidance-expected.txt: Added.
  • platform/chromium-linux-x86/fast/multicol/vertical-rl/float-avoidance-expected.txt: Added.
  • platform/chromium-linux/fast/multicol/vertical-lr/float-avoidance-expected.png:
  • platform/chromium-linux/fast/multicol/vertical-lr/float-avoidance-expected.txt: Added.
  • platform/chromium-linux/fast/multicol/vertical-rl/float-avoidance-expected.png:
  • platform/chromium-linux/fast/multicol/vertical-rl/float-avoidance-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/multicol/vertical-lr/float-avoidance-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/multicol/vertical-rl/float-avoidance-expected.png: Removed.
  • platform/chromium-mac/fast/multicol/vertical-lr/float-avoidance-expected.png:
  • platform/chromium-mac/fast/multicol/vertical-rl/float-avoidance-expected.png:
  • platform/chromium-win-xp/fast/multicol/vertical-lr: Added.
  • platform/chromium-win-xp/fast/multicol/vertical-lr/float-avoidance-expected.txt: Added.
  • platform/chromium-win-xp/fast/multicol/vertical-rl: Added.
  • platform/chromium-win-xp/fast/multicol/vertical-rl/float-avoidance-expected.txt: Added.
  • platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.png:
  • platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.txt:
  • platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.png:
  • platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.txt:
12:56 PM Changeset in webkit [121703] by alexis.menard@openbossa.org
  • 4 edits in trunk/LayoutTests

fast/box-decoration-break/box-decoration-break-rendering.html failing on mac bots
https://bugs.webkit.org/show_bug.cgi?id=89620

Reviewed by Simon Fraser.

Remove the border-radius from the test case as it can produce differences between
the test case and the reference html. At first we thought the 3 pixels difference
was only happening on Mac but after investigation it also happens in Qt (at least).
It was not triggered because ImageDiff was called with some tolerance. Turning the
tolerance to 0 on Qt also trigger some pixel differences.

The differences on how the radius is drawn can be explained by the fact that
the reference html and the test case uses two different paths for drawing the border.
The reference on the slice case only draw three borders which leads into the contruction
of three different drawing paths that we use to clip and clip out. We then draw the border with
antialiasing off as we have constructed the outer and inner paths pretty accurately.
The test case in the other hand uses the fast path for drawing the borders. The slice effect
is in fact is happening because the graphics context is clipped to the current InlineFlowBox rect but still
the border has 4 edges and its drawing will happen using the following : create a path with
an outer rounded rectangle and an inner rounded rectangle. The path is then filled with RULE_EVENODD
and anti-aliasing turn on to achieve a nice looking effect.

To conclude the pixel differences are the fact of the two different drawing techniques used here. Fast
drawing and anti-aliasing to get a decent result or more accurate algorithm but slower. The original test
was not about testing the radiuses of the borders but rather if the borders are cloned or sliced. Even
removing the radius still cover the feature.

  • fast/box-decoration-break/box-decoration-break-rendering-expected.html:
  • fast/box-decoration-break/box-decoration-break-rendering.html:
  • platform/mac/Skipped:
12:46 PM Changeset in webkit [121702] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL][CMake] Integrate API unit tests with CTest
https://bugs.webkit.org/show_bug.cgi?id=87251

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-07-02
Reviewed by Daniel Bates.

.:

Enable CTest on the root CMakeLists.txt as it is expected
to be here. This will create a new build target ("make test")
to run all the API unit tests.

  • CMakeLists.txt:

Source/WebKit:

Add every test to the test runner build target.

  • PlatformEfl.cmake:
12:45 PM Changeset in webkit [121701] by dpranke@chromium.org
  • 4 edits in trunk/Tools

REGRESSION(r121497): It switched off and broke many unittests
https://bugs.webkit.org/show_bug.cgi?id=90371

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2012-07-02
Reviewed by Adam Barth.

  • Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

(ChromiumMacPortTest): Use snowleopard as os_version instead of leopard, because it isn't supported anymore.

  • Scripts/webkitpy/layout_tests/port/chromium_port_testcase.py:

(ChromiumPortTestCase.test_all_test_configurations): Remove leopard testcases, because it isn't supported anymore.

  • Scripts/webkitpy/layout_tests/port/port_testcase.py:

(PortTestCase): Inherit class PortTestCase from unittest.TestCase instead of object.

12:25 PM Changeset in webkit [121700] by barraclough@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Array.prototype.pop should throw if property is not configurable
https://bugs.webkit.org/show_bug.cgi?id=75788

Rubber Stamped by Oliver Hunt.

No real bug here any more, but the error we throw sometimes has a misleading message.

  • runtime/JSArray.cpp:

(JSC::JSArray::pop):

12:22 PM Changeset in webkit [121699] by ojan@chromium.org
  • 9 edits in trunk/Tools

Move rebaseline-all command from the gardening-server down into webkit-patch
https://bugs.webkit.org/show_bug.cgi?id=90395

Reviewed by Adam Barth.

This is just moving code. It it in preparation for making rebaseline-expectations
use the same code in order to get the parallelism benefits and reduces the amount
of code we have for doing rebaselines.

  • Scripts/webkitpy/common/checkout/checkout_unittest.py:

(CheckoutTest.test_apply_patch):
Updated due to the change to executive_mock.

  • Scripts/webkitpy/common/system/executive_mock.py:

(MockExecutive.run_command):
Update to print out the input passed to stdin.

  • Scripts/webkitpy/tool/commands/download_unittest.py:

Updated due to executive_mock change.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineAll):
(RebaselineAll._run_webkit_patch):
(RebaselineAll._builders_to_fetch_from):
(RebaselineAll._rebaseline_commands):
(RebaselineAll._files_to_add):
(RebaselineAll._optimize_baselines):
(RebaselineAll._rebaseline):
(RebaselineAll.execute):
All this code is just copy-pasted except for mechanical changes
(e.g. self.server.tool --> self._tool) and the reading in of the
JSON from stdin instead of the post body.

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(test_rebaseline_all):
Copied the test-case out of gardeningserver_unittest.py.

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningHTTPRequestHandler):
(GardeningHTTPRequestHandler.rebaseline):
(GardeningHTTPRequestHandler.rebaselineall):

  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:

(GardeningServerTest.test_rebaselineall):
(GardeningServerTest.test_rebaselineall.run_command):

12:12 PM Changeset in webkit [121698] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] New API tests introduced in r121620 fail
https://bugs.webkit.org/show_bug.cgi?id=90372

Reviewed by Luiz Agostini.

Updated the pixel comparison to produce more predictable results.

  • UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:

(compareImages):

12:11 PM Changeset in webkit [121697] by mitz@apple.com
  • 7 edits
    2 adds in trunk

<rdar://problem/11787030> In vertical writing modes, child following float-clearing block has incorrect logical top
https://bugs.webkit.org/show_bug.cgi?id=90359

Reviewed by Anders Carlsson.

Source/WebCore:

Test: fast/writing-mode/logical-height-after-clear.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::clearFloatsIfNeeded): Changed to use logicalTop() and logicalHeight()
instead of y() and height().

LayoutTests:

  • fast/writing-mode/logical-height-after-clear-expected.html: Added.
  • fast/writing-mode/logical-height-after-clear.html: Added.
  • platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.png:
  • platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.txt:
  • platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.png:
  • platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.txt:
11:25 AM Changeset in webkit [121696] by ojan@chromium.org
  • 5 edits in trunk/Tools

Remove Leopard support from the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=90390

Reviewed by Adam Barth.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(nonChromiumPlatform):
(chromiumPlatform):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(test):

  • TestResultServer/static-dashboards/run-embedded-unittests.html:
  • TestResultServer/static-dashboards/run-unittests.html:
11:08 AM Changeset in webkit [121695] by ojan@chromium.org
  • 2 edits in trunk/Tools

Fix posting from garden-o-matic. This broke in moving away from jquery's ajax method
in http://trac.webkit.org/changeset/121617.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/net.js:
10:56 AM Changeset in webkit [121694] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Reviewed by Martin Robinson.

Create a new category for test failures that only fail on specific architecture. Tests
under this category are essentially marked as flaky, but in reality only fail on the
build architecture under which they are listed. This is a convenient workaround for
keeping tests from being recognized as newly-passing on architectures where the failure
does not occur.

  • platform/gtk/TestExpectations:
10:50 AM Changeset in webkit [121693] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Clean up slow HTTP tests on GTK platform

Rubber-stamped by Martin Robinson.

Skip the HTTP tests that take half a minute to run, most oftenly failing
as well. These tests only extend the overall testing time.
Also group the tests failing due to missing authentication handling in DRT,
missing multipart/x-mixed-replace support in libsoup and open a new bug
for the failing http/tests/plugins/plugin-document-has-focus.html test.

  • platform/gtk/TestExpectations:
10:30 AM Changeset in webkit [121692] by arko@motorola.com
  • 3 edits in trunk/Source/WebCore

Microdata: Fix build failure after r121580.
https://bugs.webkit.org/show_bug.cgi?id=90378

Reviewed by Ryosuke Niwa.

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::properties):

  • html/HTMLElement.h:
10:24 AM Changeset in webkit [121691] by tommyw@google.com
  • 22 edits
    3 copies
    2 adds in trunk

MediaStream API: Update MediaStreamTrackList to match the specification
https://bugs.webkit.org/show_bug.cgi?id=90171

Reviewed by Adam Barth.

Source/Platform:

The latest update to the specification added add and remove methods with corresponding callbacks.
The callbacks can be triggered both from JS and from the platform layer.

  • chromium/public/WebMediaStreamCenterClient.h:

(WebKit):
(WebMediaStreamCenterClient):

Source/WebCore:

The latest update to the specification added add and remove methods with corresponding callbacks.
The callbacks can be triggered both from JS and from the platform layer.

Test: fast/mediastream/MediaStreamTrackList.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::~MediaStream):
(WebCore::MediaStream::streamEnded):
(WebCore::MediaStream::addTrack):
(WebCore):
(WebCore::MediaStream::removeTrack):

  • Modules/mediastream/MediaStream.h:

(MediaStream):

  • Modules/mediastream/MediaStreamTrackEvent.cpp: Copied from Source/WebCore/Modules/mediastream/MediaStreamTrackList.cpp.

(WebCore):
(WebCore::MediaStreamTrackEvent::create):
(WebCore::MediaStreamTrackEvent::MediaStreamTrackEvent):
(WebCore::MediaStreamTrackEvent::~MediaStreamTrackEvent):
(WebCore::MediaStreamTrackEvent::track):
(WebCore::MediaStreamTrackEvent::interfaceName):

  • Modules/mediastream/MediaStreamTrackEvent.h: Copied from Source/WebCore/Modules/mediastream/MediaStreamTrackList.h.

(WebCore):
(MediaStreamTrackEvent):

  • Modules/mediastream/MediaStreamTrackEvent.idl: Copied from Source/WebCore/Modules/mediastream/MediaStreamTrackList.idl.
  • Modules/mediastream/MediaStreamTrackList.cpp:

(WebCore::MediaStreamTrackList::create):
(WebCore::MediaStreamTrackList::MediaStreamTrackList):
(WebCore::MediaStreamTrackList::detachOwner):
(WebCore):
(WebCore::MediaStreamTrackList::add):
(WebCore::MediaStreamTrackList::remove):
(WebCore::MediaStreamTrackList::stop):
(WebCore::MediaStreamTrackList::interfaceName):
(WebCore::MediaStreamTrackList::scriptExecutionContext):
(WebCore::MediaStreamTrackList::eventTargetData):
(WebCore::MediaStreamTrackList::ensureEventTargetData):

  • Modules/mediastream/MediaStreamTrackList.h:

(MediaStreamTrackList):

  • Modules/mediastream/MediaStreamTrackList.idl:
  • WebCore.gypi:
  • dom/EventNames.h:

(WebCore):

  • dom/EventNames.in:
  • dom/EventTargetFactory.in:
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::MediaStreamCenter::addMediaStreamTrack):
(WebCore):
(WebCore::MediaStreamCenter::removeMediaStreamTrack):

  • platform/mediastream/MediaStreamCenter.h:

(MediaStreamCenter):

  • platform/mediastream/MediaStreamDescriptor.h:

(MediaStreamDescriptorOwner):

  • platform/mediastream/chromium/MediaStreamCenterChromium.cpp:

(WebCore::MediaStreamCenterChromium::didAddMediaStreamTrack):
(WebCore):
(WebCore::MediaStreamCenterChromium::didRemoveMediaStreamTrack):
(WebCore::MediaStreamCenterChromium::addMediaStreamTrack):
(WebCore::MediaStreamCenterChromium::removeMediaStreamTrack):

  • platform/mediastream/chromium/MediaStreamCenterChromium.h:

(WebKit):
(MediaStreamCenterChromium):

  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:

(WebCore::MediaStreamCenterGStreamer::didAddMediaStreamTrack):
(WebCore):
(WebCore::MediaStreamCenterGStreamer::didRemoveMediaStreamTrack):

  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.h:

(MediaStreamCenterGStreamer):

LayoutTests:

  • fast/mediastream/MediaStreamTrackList-expected.txt: Added.
  • fast/mediastream/MediaStreamTrackList.html: Added.
10:20 AM Changeset in webkit [121690] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: incorrect height of main timeline pane after switching to memory mode
https://bugs.webkit.org/show_bug.cgi?id=90387

Reviewed by Pavel Feldman.

  • update cached container height when setting vertical splitter position.
  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype.set _setSplitterPosition):

9:59 AM Changeset in webkit [121689] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[MICRODATA] Build failure in html/HTMLPropertiesCollection.h
https://bugs.webkit.org/show_bug.cgi?id=90379

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02
Reviewed by Ryosuke Niwa.

Switch HTMLCollection::append() visibility from private
to protected so that HTMLPropertiesCollection subclass
can call it. This fixes build when MICRODATA flag is
turned on.

No new tests, build fix.

  • html/HTMLCollection.h:

(HTMLCollectionCacheBase):

9:50 AM Changeset in webkit [121688] by eae@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium expectations update.

  • platform/chromium/TestExpectations:
9:42 AM Changeset in webkit [121687] by tony@chromium.org
  • 6 edits in trunk/LayoutTests

Unreviewed: Fix a flexbox reftest that was failing on most platforms.

Remove the test case that caused the image diff. I'll try to come up
with a different way to test this.

  • css3/flexbox/anonymous-block-expected.html:
  • css3/flexbox/anonymous-block.html:
  • platform/chromium/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/Skipped:
9:31 AM Changeset in webkit [121686] by alexis.menard@openbossa.org
  • 3 edits
    2 adds in trunk/Source/WebKit2

[Qt] Fix WebProcess crash on Mac when accessing a site with video tag.
https://bugs.webkit.org/show_bug.cgi?id=90384

Reviewed by Jocelyn Turcotte.

We need to initialize the private symbols used by MediaPlayerPrivateQTKit
otherwise they will be null and it will lead to a crash. We copy WebSystemInterface
files for WK2 just like the Mac port as WK2 may have different needs than WK1 layer (we
may add or remove symbols in here). It doesn't fix the video rendering yet but it's
first step.

  • Target.pri:
  • WebProcess/WebCoreSupport/qt/WebSystemInterface.h: Added.
  • WebProcess/WebCoreSupport/qt/WebSystemInterface.mm: Added.

(InitWebCoreSystemInterfaceForWK2):

  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::WebProcessMainQt):

9:22 AM Changeset in webkit [121685] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This test is a flaky crash on the cr-linux-ews, which is causing the
bot to be very slow in processing patches and to spam bugs with false
failures. Mark this test as flaky while we investigate.

  • platform/chromium/TestExpectations:
9:10 AM Changeset in webkit [121684] by Carlos Garcia Campos
  • 3 edits in trunk/Tools

[GTK] Read fonts path when running layout tests from alternative fonts dir when main dir doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=89437

Reviewed by Martin Robinson.

If main fonts directory doesn't exist, try with an alternative
fonts directory at build directory.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(getOutputDir):
(getFontsPath):
(initializeFonts):

  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::getOutputDir):
(WTR):
(WTR::getFontsPath):
(WTR::inititializeFontConfigSetting):

9:08 AM Changeset in webkit [121683] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

A start "body" tag in the "in body" insertion mode is a parse error
https://bugs.webkit.org/show_bug.cgi?id=90373

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-07-02
Reviewed by Eric Seidel.

According to HTML5 specification (http://www.w3.org/TR/html5/tree-construction.html#parsing-main-inbody),
a start "body" tag in the "in body" insertion mode is a parse error. So parseError(token) is required here.
No behavior change because parseError(token) is just a marker.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processStartTagForInBody):

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

[EFL] [WK2] Remove content sniffer and decoder initialization from WebProcess
https://bugs.webkit.org/show_bug.cgi?id=90275

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-07-02
Reviewed by Martin Robinson.

Do not initialize content sniffer and decoder in the WebProcess
because the initialization is now done in WebCore.

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl):

8:54 AM Changeset in webkit [121681] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] Don't run the tests with jhbuild wrapper if it's already running under jhbuild
https://bugs.webkit.org/show_bug.cgi?id=89435

Reviewed by Martin Robinson.

  • Scripts/new-run-webkit-tests: Don't run the tests with the

jhbuild wrapper if there isn't a Dependencies directory inside the
build directory.

8:32 AM Changeset in webkit [121680] by Csaba Osztrogonác
  • 5 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, update expected files, skip new failing tests.

  • platform/qt-5.0-wk2/Skipped: Skip fast/viewport/viewport-91.html because of bug90376.
  • platform/qt-5.0/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Updated after r121599.
  • platform/qt-5.0/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Updated after r121599.
  • platform/qt/Skipped: Skip inspector/debugger/script-snippet-model.html because of bug90385.
8:21 AM Changeset in webkit [121679] by gyuyoung.kim@samsung.com
  • 4 edits
    2 moves in trunk/Source/WebKit

[EFL] Rename NotificationPresenterEfl with NotificationClientEfl
https://bugs.webkit.org/show_bug.cgi?id=90370

Reviewed by Csaba Osztrogonác.

Source/WebKit:

Bug 80488 renamed NotificationPresenter with NotificationClient. So, EFL port needs to adjust
it as well.

  • PlatformEfl.cmake:

Source/WebKit/efl:

Bug 80488 renamed NotificationPresenter with NotificationClient. So, EFL port needs to adjust it as well.

  • WebCoreSupport/ChromeClientEfl.cpp:
  • WebCoreSupport/NotificationClientEfl.cpp: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationPresenterClientEfl.cpp.

(WebCore):
(WebCore::NotificationClientEfl::NotificationClientEfl):
(WebCore::NotificationClientEfl::~NotificationClientEfl):
(WebCore::NotificationClientEfl::show):
(WebCore::NotificationClientEfl::cancel):
(WebCore::NotificationClientEfl::notificationObjectDestroyed):
(WebCore::NotificationClientEfl::notificationControllerDestroyed):
(WebCore::NotificationClientEfl::requestPermission):
(WebCore::NotificationClientEfl::checkPermission):
(WebCore::NotificationClientEfl::cancelRequestsForPermission):

  • WebCoreSupport/NotificationClientEfl.h: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationPresenterClientEfl.h.

(WebCore):
(NotificationClientEfl):

7:20 AM Changeset in webkit [121678] by rakuco@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Unreviewed build fix with ENABLE_NETSCAPE_PLUGIN_API after r121467.

  • plugins/efl/PluginPackageEfl.cpp:

(WebCore::PluginPackage::load): Move the declaration of `err'
before the first `goto' statement.

7:18 AM Changeset in webkit [121677] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: replace recursion with a stack in DOM nodes snapshot traversal.
https://bugs.webkit.org/show_bug.cgi?id=89889

Number of DOM nodes native snapshots can handle was limited
by the process stack size because of recursion used to traverse the nodes.
The patch changes the recursion to a stack based algorithm.

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-07-02
Reviewed by Yury Semikhatsky.

  • dom/MemoryInstrumentation.h:

(MemoryInstrumentation):
(InstrumentedPointerBase):
(WebCore::MemoryInstrumentation::InstrumentedPointerBase::~InstrumentedPointerBase):
(InstrumentedPointer):
(WebCore::MemoryInstrumentation::InstrumentedPointer::InstrumentedPointer):
(WebCore::MemoryInstrumentation::reportInstrumentedPointer):
(WebCore):
(WebCore::::process):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore):

7:12 AM Changeset in webkit [121676] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

Web Inspector: Add requestFileContent command and fileContentReceived event
https://bugs.webkit.org/show_bug.cgi?id=89642

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-07-02
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: http/tests/inspector/filesystem/read-file.html

  • inspector/Inspector.json:
  • inspector/InspectorFileSystemAgent.cpp:

(WebCore):
(WebCore::InspectorFileSystemAgent::requestFileContent):

  • inspector/InspectorFileSystemAgent.h:

(InspectorFileSystemAgent):

  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemModel.prototype.requestMetadata):
(WebInspector.FileSystemModel.prototype.requestFileContent):
(WebInspector.FileSystemModel.File.prototype.get resourceType):
(WebInspector.FileSystemModel.File.prototype.requestFileContent):
(WebInspector.FileSystemRequestManager):
(WebInspector.FileSystemRequestManager.prototype._metadataReceived):
(WebInspector.FileSystemRequestManager.prototype.requestFileContent.requestAccepted):
(WebInspector.FileSystemRequestManager.prototype.requestFileContent):
(WebInspector.FileSystemRequestManager.prototype._fileContentReceived):
(WebInspector.FileSystemDispatcher.prototype.metadataReceived):
(WebInspector.FileSystemDispatcher.prototype.fileContentReceived):

LayoutTests:

  • http/tests/inspector/filesystem/read-file-expected.txt: Added.
  • http/tests/inspector/filesystem/read-file.html: Added.
6:10 AM Changeset in webkit [121675] by commit-queue@webkit.org
  • 4 edits in trunk

Web Inspector: Add refresh button to FileSystemView status bar
https://bugs.webkit.org/show_bug.cgi?id=90244

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-07-02
Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • inspector/front-end/FileSystemView.js:

(WebInspector.FileSystemView):
(WebInspector.FileSystemView.prototype.get statusBarItems):
(WebInspector.FileSystemView.prototype.showView):
(WebInspector.FileSystemView.prototype._refresh):
(WebInspector.FileSystemView.EntryTreeElement.prototype._directoryContentReceived):

LayoutTests:

  • http/tests/inspector/filesystem/directory-tree.html:
5:56 AM Changeset in webkit [121674] by zandobersek@gmail.com
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed GTK gardening, removing GTK-specific baseline that's
not required anymore after r121661.

  • platform/gtk/fast/viewport/viewport-91-expected.txt: Removed.
5:51 AM Changeset in webkit [121673] by vsevik@chromium.org
  • 11 edits in trunk

Web Inspector: Implement snippets evaluation.
https://bugs.webkit.org/show_bug.cgi?id=88707

Reviewed by Pavel Feldman.

Source/WebCore:

Implemented snippet evaluation and adjusted breakpoints behavior when editing snippet.
Snippets are evaluated using separate compile and run.
Breakpoints are updated after compilation (once scriptId is available they can be set in debugger).
If separate compile and run is not supported by port or debugger is paused we fall back to evaluation in console.

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView.prototype.runScript.runCallback):
(WebInspector.ConsoleView.prototype.runScript):
(WebInspector.ConsoleView.prototype._printResult):

  • inspector/front-end/JavaScriptSource.js:

(WebInspector.JavaScriptSource.prototype.supportsEnabledBreakpointsWhileEditing):

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
(WebInspector.JavaScriptSourceFrame.prototype.beforeTextChanged):
(WebInspector.JavaScriptSourceFrame.prototype._didEditContent):
(WebInspector.JavaScriptSourceFrame.prototype._removeBreakpointsBeforeEditing):
(WebInspector.JavaScriptSourceFrame.prototype._restoreBreakpointsAfterEditing):
(WebInspector.JavaScriptSourceFrame.prototype._addBreakpointDecoration):
(WebInspector.JavaScriptSourceFrame.prototype._onMouseDown):

  • inspector/front-end/ScriptSnippetModel.js:

(WebInspector.ScriptSnippetModel.prototype.deleteScriptSnippet):
(WebInspector.ScriptSnippetModel.prototype._setScriptSnippetContent):
(WebInspector.ScriptSnippetModel.prototype.evaluateScriptSnippet.compileCallback):
(WebInspector.ScriptSnippetModel.prototype.evaluateScriptSnippet):
(WebInspector.ScriptSnippetModel.prototype._rawLocationToUILocation):
(WebInspector.ScriptSnippetModel.prototype._removeBreakpoints):
(WebInspector.ScriptSnippetModel.prototype._restoreBreakpoints):
(WebInspector.ScriptSnippetModel.prototype._evaluationSourceURL):
(WebInspector.SnippetJavaScriptSource.prototype.isDivergedFromVM):
(WebInspector.SnippetJavaScriptSource.prototype.workingCopyCommitted):
(WebInspector.SnippetJavaScriptSource.prototype.workingCopyChanged):
(WebInspector.SnippetJavaScriptSource.prototype.evaluate):
(WebInspector.SnippetJavaScriptSource.prototype.supportsEnabledBreakpointsWhileEditing):
(WebInspector.SnippetJavaScriptSource.prototype.breakpointStorageId):

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):

LayoutTests:

  • inspector/debugger/script-snippet-model-expected.txt:
  • inspector/debugger/script-snippet-model.html:
5:13 AM Changeset in webkit [121672] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: StyleSource should set content using CSSStyleModelResourceBinding directly.
https://bugs.webkit.org/show_bug.cgi?id=89891

Reviewed by Pavel Feldman.

StyleSource now calls CSS resource binding directly.
CSS resource binding now adds resource revision only after setStyleSheetText call returns from backend.
Resource.revertAndClearHistory is now clearing history asynchronously
since Resource.setContent adds revision that should be removed as well.

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel.prototype.getViaInspectorResourceForRule):
(WebInspector.CSSStyleModel.prototype.resourceBinding):
(WebInspector.CSSStyleModelResourceBinding.prototype.setStyleContent.innerCallback):
(WebInspector.CSSStyleModelResourceBinding.prototype.setStyleContent):
(WebInspector.CSSStyleModelResourceBinding.prototype.setContent):

  • inspector/front-end/Resource.js:

(WebInspector.Resource.prototype.revertAndClearHistory):
(WebInspector.Resource.prototype.revertAndClearHistory.clearHistory):

  • inspector/front-end/RevisionHistoryView.js:

(WebInspector.RevisionHistoryView.prototype._createResourceItem):

  • inspector/front-end/StylesPanel.js:

(WebInspector.StyleSource.prototype.workingCopyCommitted):
(WebInspector.StyleSource.prototype.workingCopyChanged):

5:07 AM Changeset in webkit [121671] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk/Source/WebCore

Web Inspector: Add DirectoryContentView for FileSystemView
https://bugs.webkit.org/show_bug.cgi?id=89961

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-07-02
Reviewed by Vsevolod Vlasov.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/DirectoryContentView.js: Added.
  • inspector/front-end/FileSystemView.js:

(WebInspector.FileSystemView):
(WebInspector.FileSystemView.EntryTreeElement.prototype.onattach):
(WebInspector.FileSystemView.EntryTreeElement.prototype.onselect):
(WebInspector.FileSystemView.EntryTreeElement.prototype._directoryContentReceived):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
4:27 AM Changeset in webkit [121670] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Simplify detection of non-installed module file

Has the additional advantage that we do not rely on additional information.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-29
Reviewed by Tor Arne Vestbø.

  • qmake/qt_webkit.pri:
3:55 AM Changeset in webkit [121669] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk/LayoutTests

[EFL] Rebaseline needed after r121296 and r121599
https://bugs.webkit.org/show_bug.cgi?id=90364

Unreviewed EFL gardening. Update baselines for a few
test cases after r121296 and r121599.

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02

  • platform/efl/TestExpectations:
  • platform/efl/fast/backgrounds/size/zero-expected.png:
  • platform/efl/fast/backgrounds/size/zero-expected.txt:
  • platform/efl/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/efl/fast/transforms/bounding-rect-zoom-expected.txt: Added.
  • platform/efl/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png:
  • platform/efl/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
3:44 AM Changeset in webkit [121668] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Fix compilation error in GamepadsEfl.cpp in debug mode
https://bugs.webkit.org/show_bug.cgi?id=90369

Unreviewed, EFL build fix.

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02

  • platform/efl/GamepadsEfl.cpp:

(WebCore::GamepadsEfl::registerDevice):
(WebCore::GamepadsEfl::unregisterDevice):

3:30 AM Changeset in webkit [121667] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Skip fast/js/navigator-language.html
https://bugs.webkit.org/show_bug.cgi?id=90365

Unreviewed EFL gardening.
Skip fast/js/navigator-language.html until
Bug 89639 is fixed.

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-02

  • platform/efl/TestExpectations:
2:50 AM Changeset in webkit [121666] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Design WebSockets panel
https://bugs.webkit.org/show_bug.cgi?id=89461

Use DataGrid to display the data.
Put "Data" column first. Make it wider.
Remove "Mask" column since it appears to be always true for outgoing frames,
and false for incoming.

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-07-02
Reviewed by Pavel Feldman.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/NetworkItemView.js:

(WebInspector.NetworkItemView): Don't show Preview, Response, Cookies
and Timing tabs for succefuly established WebSocket connection.

  • inspector/front-end/ResourceWebSocketFrameView.js:

(WebInspector.ResourceWebSocketFrameView):

  • inspector/front-end/networkPanel.css:

(.resource-websocket):
(.resource-websocket, .resource-websocket .data-grid):
(.resource-websocket .data-grid .data):
(.resource-websocket td):
(.resource-websocket .data-column div):
(.resource-websocket-row-outcoming):
(.resource-websocket-row-outcoming:not(.selected) td):
(.resource-websocket-row-outcoming:not(.selected) td, .resource-websocket-row-outcoming:not(.selected) + tr td):
(.resource-websocket-row-opcode):
(.resource-websocket-row-opcode td):
(.resource-websocket-row-opcode td, .resource-websocket-row-opcode + tr td):
(.resource-websocket-row-error):

2:31 AM Changeset in webkit [121665] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

Unreviewed, rolling out r120329, r121113, and r121138.
http://trac.webkit.org/changeset/120329
http://trac.webkit.org/changeset/121113
http://trac.webkit.org/changeset/121138
https://bugs.webkit.org/show_bug.cgi?id=90368

Introduced noticeable keyboard-related spins due to
synchronous IPC. (Requested by kling on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-02

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handleKeyboardEvent):
(WebKit::WebPageProxy::didReceiveEvent):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::keyEvent):

2:07 AM Changeset in webkit [121664] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Add some expectations for the top flaky tests on chromium-linux.

  • platform/chromium/TestExpectations:
1:42 AM Changeset in webkit [121663] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[V8Binding] Merging v8NumberArray()/v8NumberArrayToVector() to v8Array()/toNativeArray() respectively.
https://bugs.webkit.org/show_bug.cgi?id=90338

Patch by Vineet Chaudhary <Vineet> on 2012-07-02
Reviewed by Kentaro Hara.

We can remove v8NumberArray() and v8NumberArrayToVector() implementaion
merging them to current v8Array() and toNativeArray() traits.

Tests: TestObj.idl
Shouldn't cause any behavioural changes.

  • bindings/scripts/CodeGeneratorV8.pm: Removed float[]/double[] specific binding code.

(IsRefPtrType):
(GetNativeType):
(JSValueToNative):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8TestObj.cpp: Rebased binding test.

(WebCore::TestObjV8Internal::floatArrayAttrGetter):
(WebCore::TestObjV8Internal::floatArrayAttrSetter):
(WebCore::TestObjV8Internal::doubleArrayAttrGetter):
(WebCore::TestObjV8Internal::doubleArrayAttrSetter):

  • bindings/v8/V8Binding.h: Added templates for float and double.

(WebCore::v8Array):
(WebCore::toNativeArray):

12:50 AM Changeset in webkit [121662] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Updated Chromium test expectations. Added a missing bug
number to the expectations.

  • platform/chromium/TestExpectations:
12:35 AM Changeset in webkit [121661] by kbalazs@webkit.org
  • 7 edits in trunk

[EFL] [GTK] [QT] fast/viewport/viewport-91.html is failing after r121555
https://bugs.webkit.org/show_bug.cgi?id=90286

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-07-02
Reviewed by Daniel Bates.

Source/WebCore:

Since the deprecatedTargetDPI was an int and the deviceDPI was also an int the result
was truncated. Changed deprecatedTargetDPI to a float value. Viewport test 91 now passes.

  • dom/ViewportArguments.h:

(ViewportArguments):

LayoutTests:

Unskip now passing tests.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
12:10 AM Changeset in webkit [121660] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip new failing test.

  • platform/qt/Skipped:
12:07 AM Changeset in webkit [121659] by kkristof@inf.u-szeged.hu
  • 5 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r121599.

  • platform/qt/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
  • platform/qt/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
12:04 AM Changeset in webkit [121658] by yurys@chromium.org
  • 12 edits in trunk/Source/WebCore

Web Inspector: add v8 bindings memory info to the native memory graph
https://bugs.webkit.org/show_bug.cgi?id=90149

Reviewed by Pavel Feldman.

Size of V8 binding maps is now reported on the memory chart.

  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::collectBindingMemoryInfo):

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::reportMemoryUsage):
(WebCore):

  • bindings/v8/DOMDataStore.h:

(WebCore):
(DOMDataStore):

  • bindings/v8/IntrusiveDOMWrapperMap.h:

(WebCore::ChunkedTable::reportMemoryUsage):
(ChunkedTable):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::collectBindingMemoryInfo):
(WebCore):

  • bindings/v8/ScriptProfiler.h:

(WebCore):
(ScriptProfiler):

  • bindings/v8/V8Binding.cpp:

(WebCore::V8BindingPerIsolateData::reportMemoryUsage):
(WebCore):
(WebCore::StringCache::reportMemoryUsage):

  • bindings/v8/V8Binding.h:

(WebCore):
(StringCache):
(V8BindingPerIsolateData):

  • bindings/v8/V8DOMMap.h:

(WebCore):
(AbstractWeakReferenceMap):

  • dom/MemoryInstrumentation.h:

(MemoryInstrumentation):
(WebCore):
(WebCore::MemoryInstrumentation::reportHashMap): added a method for reporting
size of a HashMap.

  • inspector/InspectorMemoryAgent.cpp:

(MemoryBlockName):
(WebCore):
(WebCore::domTreeInfo):

Jul 1, 2012:

11:22 PM Changeset in webkit [121657] by commit-queue@webkit.org
  • 13 edits
    1 add in trunk

[EFL] Add Gamepad support
https://bugs.webkit.org/show_bug.cgi?id=90170

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-01
Reviewed by Kenneth Rohde Christiansen.

.:

  • Source/cmake/FindEFL.cmake: Bump EFL libs dependencies.
  • Source/cmake/OptionsEfl.cmake: Turn on GAMEPAD flag on EFL port.
  • Source/cmakeconfig.h.cmake: Add GAMEPAD flag to CMake.

Source/WebCore:

Add support for the Gamepad feature on the EFL port.

The implementation of this class relies on the Linux
kernel joystick API.

Gamepad devices are recognized through the GamepadsEfl
class, of which implementation is based on Eeze
library. This way devices are properly registered on
connection as objects of the GamepadDeviceEfl class
which inherits GamepadDeviceLinux. GamepadDeviceEfl
reads the joystick data through an Ecore_Fd_Handler
and updates the device state accordingly. The
GamepadsEfl object is then polled for gamepads data
through the sampleGamepads method.

No new tests - already tested by gamepad/*

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • platform/efl/GamepadsEfl.cpp: Added.

(WebCore):
(GamepadDeviceEfl):
(WebCore::GamepadDeviceEfl::create):
(WebCore::GamepadDeviceEfl::GamepadDeviceEfl):
(WebCore::GamepadDeviceEfl::~GamepadDeviceEfl):
(WebCore::GamepadDeviceEfl::readCallback):
(GamepadsEfl):
(WebCore::GamepadsEfl::onGamePadChange):
(WebCore::GamepadsEfl::GamepadsEfl):
(WebCore::GamepadsEfl::~GamepadsEfl):
(WebCore::GamepadsEfl::registerDevice):
(WebCore::GamepadsEfl::unregisterDevice):
(WebCore::GamepadsEfl::updateGamepadList):
(WebCore::sampleGamepads):

Tools:

  • Scripts/webkitperl/FeatureList.pm: Turn on GAMEPAD flag

by default for EFL port.

  • efl/jhbuild.modules: Bump dependency versions of EFL libs

since the latest Eeze is required for gamepad support.

LayoutTests:

Unskip gamepad/gamepad-api.html now that Gamepad
support is enabled on EFL port.

gamepad/gamepad-polling-access.html is still
skipped because it requires additional test
infrastructure.

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
10:21 PM Changeset in webkit [121656] by commit-queue@webkit.org
  • 1 edit
    2 adds
    2 deletes in trunk/LayoutTests

Move platform/qt/fast/jsnavigator-language.html to fast/js
https://bugs.webkit.org/show_bug.cgi?id=90261

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-07-01
Reviewed by Ryosuke Niwa.

Efl needs a test case for navigator.language.
This test case is modified for all ports.

  • fast/js/navigator-language-expected.txt: Copied from LayoutTests/platform/qt/fast/js/navigator-language-expected.txt.
  • fast/js/navigator-language.html: Copied from LayoutTests/platform/qt/fast/js/navigator-language.html.
  • platform/qt/fast/js/navigator-language-expected.txt: Removed.
  • platform/qt/fast/js/navigator-language.html: Removed.
10:11 PM Changeset in webkit [121655] by keishi@webkit.org
  • 5 edits
    14 deletes in trunk/Source

Unreviewed, rolling out r121650.
http://trac.webkit.org/changeset/121650
https://bugs.webkit.org/show_bug.cgi?id=90303

runhooks is failing for chromium win bots and
WebAnimationTest.DefaultSettings is crashing

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebAnimation.h: Removed.
  • chromium/public/WebAnimationCurve.h: Removed.
  • chromium/public/WebFloatAnimationCurve.h: Removed.
  • chromium/public/WebFloatKeyframe.h: Removed.
  • chromium/public/WebTransformAnimationCurve.h: Removed.
  • chromium/public/WebTransformKeyframe.h: Removed.

Source/WebKit/chromium:

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebAnimation.cpp: Removed.
  • src/WebAnimationCurveCommon.cpp: Removed.
  • src/WebAnimationCurveCommon.h: Removed.
  • src/WebFloatAnimationCurve.cpp: Removed.
  • src/WebTransformAnimationCurve.cpp: Removed.
  • tests/WebAnimationTest.cpp: Removed.
  • tests/WebFloatAnimationCurveTest.cpp: Removed.
  • tests/WebTransformAnimationCurveTest.cpp: Removed.
10:07 PM Changeset in webkit [121654] by Lucas Forschler
  • 4 edits in branches/safari-536-branch/Source

Versioning.

9:32 PM Changeset in webkit [121653] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Fix TestExpectations error caused in r121652.

Unreviewed.

  • platform/chromium/TestExpectations:
9:15 PM Changeset in webkit [121652] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Removing LEOPARD from TestExpectations so the tests run.
Caused by r121595

Unreviewed.

  • platform/chromium/TestExpectations:
7:55 PM Changeset in webkit [121651] by jamesr@google.com
  • 6 edits in trunk

Unreviewed, rolling out r121635.
http://trac.webkit.org/changeset/121635
https://bugs.webkit.org/show_bug.cgi?id=90286

Breaks compile on clang error: in-class initializer for static
data member of type 'const float' is a GNU extension
[-Werror,-Wgnu]

Source/WebCore:

  • dom/ViewportArguments.h:

(ViewportArguments):

LayoutTests:

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
7:21 PM Changeset in webkit [121650] by commit-queue@webkit.org
  • 5 edits
    14 adds in trunk/Source

[chromium] Create a WebKit::Web* wrapper for the cc animation classes
https://bugs.webkit.org/show_bug.cgi?id=90303

Patch by Ian Vollick <vollick@chromium.org> on 2012-07-01
Reviewed by James Robinson.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebAnimation.h: Added.

(WebCore):
(WebKit):
(WebAnimation):
(WebKit::WebAnimation::WebAnimation):
(WebKit::WebAnimation::~WebAnimation):

  • chromium/public/WebAnimationCurve.h: Added.

(WebCore):
(WebKit):
(WebAnimationCurve):
(WebKit::WebAnimationCurve::~WebAnimationCurve):
(WebKit::WebAnimationCurve::WebAnimationCurve):

  • chromium/public/WebFloatAnimationCurve.h: Added.

(WebCore):
(WebKit):
(WebFloatAnimationCurve):
(WebKit::WebFloatAnimationCurve::WebFloatAnimationCurve):
(WebKit::WebFloatAnimationCurve::~WebFloatAnimationCurve):

  • chromium/public/WebFloatKeyframe.h: Added.

(WebKit):
(WebKit::WebFloatKeyframe::WebFloatKeyframe):
(WebFloatKeyframe):

  • chromium/public/WebTransformAnimationCurve.h: Added.

(WebCore):
(WebKit):
(WebTransformAnimationCurve):
(WebKit::WebTransformAnimationCurve::WebTransformAnimationCurve):
(WebKit::WebTransformAnimationCurve::~WebTransformAnimationCurve):

  • chromium/public/WebTransformKeyframe.h: Added.

(WebKit):
(WebKit::WebTransformKeyframe::WebTransformKeyframe):
(WebTransformKeyframe):

Source/WebKit/chromium:

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebAnimation.cpp: Added.

(WebKit):
(WebKit::WebAnimation::iterations):
(WebKit::WebAnimation::setIterations):
(WebKit::WebAnimation::startTime):
(WebKit::WebAnimation::setStartTime):
(WebKit::WebAnimation::timeOffset):
(WebKit::WebAnimation::setTimeOffset):
(WebKit::WebAnimation::alternatesDirection):
(WebKit::WebAnimation::setAlternatesDirection):
(WebKit::WebAnimation::toCCActiveAnimation):
(WebKit::WebAnimation::initialize):
(WebKit::WebAnimation::destroy):

  • src/WebAnimationCurveCommon.cpp: Added.

(WebKit):
(WebKit::createTimingFunction):

  • src/WebAnimationCurveCommon.h: Added.

(WebCore):
(WebKit):

  • src/WebFloatAnimationCurve.cpp: Added.

(WebKit):
(WebKit::WebFloatAnimationCurve::add):
(WebKit::WebFloatAnimationCurve::toCCAnimationCurve):
(WebKit::WebFloatAnimationCurve::initialize):
(WebKit::WebFloatAnimationCurve::destroy):

  • src/WebTransformAnimationCurve.cpp: Added.

(WebKit):
(WebKit::WebTransformAnimationCurve::add):
(WebKit::WebTransformAnimationCurve::toCCAnimationCurve):
(WebKit::WebTransformAnimationCurve::initialize):
(WebKit::WebTransformAnimationCurve::destroy):

  • tests/WebAnimationTest.cpp: Added.
  • tests/WebFloatAnimationCurveTest.cpp: Added.
  • tests/WebTransformAnimationCurveTest.cpp: Added.
7:12 PM Changeset in webkit [121649] by commit-queue@webkit.org
  • 7 edits
    1 copy
    2 adds in trunk/Source/WebKit2

[EFL][WK2] Add API to inspect a Web Intent
https://bugs.webkit.org/show_bug.cgi?id=89749

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-01
Reviewed by Kenneth Rohde Christiansen.

Add EFL API to inspect a Web Intent and emit a signal
on the view when a new intent request is made.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/ewk_intent.cpp: Added.

(_Ewk_Intent):
(ewk_intent_ref):
(ewk_intent_unref):
(ewk_intent_action_get):
(ewk_intent_type_get):
(ewk_intent_service_get):
(ewk_intent_suggestions_get):
(ewk_intent_extra_get):
(ewk_intent_extra_names_get):
(ewk_intent_new):

  • UIProcess/API/efl/ewk_intent.h: Added.
  • UIProcess/API/efl/ewk_intent_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_intent_request_new):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_loader_client.cpp:

(didReceiveIntentForFrame):
(ewk_view_loader_client_attach):

  • UIProcess/API/efl/ewk_view_private.h:
5:40 PM Changeset in webkit [121648] by Lucas Forschler
  • 1 copy in tags/Safari-536.25

New Tag.

5:34 PM Changeset in webkit [121647] by abarth@webkit.org
  • 2 edits in trunk/Tools

Unreviewed.

Using the default start cylinder for fdisk causes a warning about the
partition not starting on physical sector boundary. The Ubuntu forums
recommend using a number that's divisible by 8, which is what we do in
this patch.

  • EWSTools/cold-boot.sh:
5:27 PM Changeset in webkit [121646] by timothy@apple.com
  • 4 edits in trunk/Source

Make the "Inspect Element" context menu item appear in nightly builds again.

rdar://problem/11702613
https://webkit.org/b/89323

Reviewed by Dan Bernstein.

Source/WebCore:

  • platform/ContextMenuItem.h:

Fix the order of the ContextMenuAction enum to be binary compatible with
older versions of WebKit.

Source/WebKit/mac:

  • WebView/WebUIDelegatePrivate.h:

Add missing enums that were added in ContextMenuItem.h but left out here.

5:08 PM Changeset in webkit [121645] by mitz@apple.com
  • 3 edits
    3 adds in trunk

<rdar://problem/11785743> [mac] Non-BMP characters in vertical text appear as missing glyphs
https://bugs.webkit.org/show_bug.cgi?id=90349

Reviewed by Dean Jackson.

Source/WebCore:

Test: platform/mac/fast/text/vertical-surrogate-pair.html

  • platform/graphics/mac/GlyphPageTreeNodeMac.cpp:

(WebCore::GlyphPage::fill): When calling wkGetVerticalGlyphsForCharacters or
CTFontGetGlyphsForCharacters with a buffer consisting of surrogate pair, account for those
functions’ behavior of placing glyphs at indices corresponding to the first character of
each pair.

LayoutTests:

  • platform/mac/fast/text/vertical-surrogate-pair.html: Added.
  • platform/mac/platform/mac/fast/text/vertical-surrogate-pair-expected.png: Added.
  • platform/mac/platform/mac/fast/text/vertical-surrogate-pair-expected.txt: Added.
5:08 PM Changeset in webkit [121644] by abarth@webkit.org
  • 3 edits in trunk/Tools

Unreviewed.

It turns out we need to use Ubuntu 10.04 to get the right image results
for chromium-linux. This patch updates our scripts to be compatible
with Ubuntu 10.04.

  • EWSTools/cold-boot.sh:
    • fdisk doesn't have p and 1 as default commands in 10.04.
  • EWSTools/start-queue.sh:
    • git doesn't understanding the -B argument in 10.04. We've been using this change locally on the EC2 bots for a while.
4:08 PM Changeset in webkit [121643] by bashi@chromium.org
  • 3 edits
    2 adds in trunk

Arabic shaping is incorrect if ZWNJ exist
https://bugs.webkit.org/show_bug.cgi?id=89843

Reviewed by Dan Bernstein.

Source/WebCore:

mac port treats ZWJ (zero-width-joiner) and ZWNJ (zero-width-non-joiner) as a part of combining
character sequence. This could cause a problem when the font doesn't have glyph mapping of ZWJ and ZWNJ.
Suppose the text to be rendered is "U+0645(MEEM) U+06CC(FARSI YEH) U+200C(ZWNJ)". In this case, U+0645
and U+06CC are rendered in isolated form if the font doesn't have a glyph for ZWNJ. They should be joined.

This patch changes handling of ZWJ and ZWNJ. Treats ZWJ and ZWNJ as base characters so that a complex text
run isn't separate at the point of ZWJ and ZWNJ even the font doesn't contain glyphs for them.
If ComplexTextController finds ZWJ, it doesn't split the current complex text run.

Test: platform/mac/fast/text/arabic-zwj-and-zwnj.html

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::advanceByCombiningCharacterSequence): Don't treat ZWJ and ZWNJ as a part of combining character sequence.
(WebCore::ComplexTextController::collectComplexTextRuns): Set fontData to nextFontData if the baseCharacter is ZWJ.

LayoutTests:

  • platform/mac/fast/text/arabic-zwj-and-zwnj-expected.html: Added.
  • platform/mac/fast/text/arabic-zwj-and-zwnj.html: Added.
3:54 PM Changeset in webkit [121642] by eae@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed rebaseline for mac post r121599.

  • platform/mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
3:49 PM Changeset in webkit [121641] by abarth@webkit.org
  • 2 edits in trunk/Tools

Unreviewed.

  • EWSTools/boot.sh:
    • We need to start the screen in detached mode so that we can run it remotely via ssh.
3:44 PM Changeset in webkit [121640] by eae@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations update for chromium.

  • platform/chromium/TestExpectations:
3:40 PM Changeset in webkit [121639] by Lucas Forschler
  • 2 edits in branches/safari-536-branch/Source/WebKit2

Merged r120377

3:37 PM Changeset in webkit [121638] by Lucas Forschler
  • 5 edits in branches/safari-536-branch/Source/WebKit2

Merged r121167

3:34 PM Changeset in webkit [121637] by Lucas Forschler
  • 2 edits in branches/safari-536-branch/Source/WebKit2

Rollout r121168

2:30 PM Changeset in webkit [121636] by abarth@webkit.org
  • 2 edits in trunk/Tools

Unreviewed.

  • EWSTools/cold-boot.sh:
    • Turns out we need to sudo this command in order for it to actually dimiss the EULA screen. :)
2:16 PM WebInspector edited by wil@marrant.org
(diff)
2:01 PM Changeset in webkit [121635] by commit-queue@webkit.org
  • 6 edits in trunk

[EFL] [GTK] [QT] fast/viewport/viewport-91.html is failing after r121555
https://bugs.webkit.org/show_bug.cgi?id=90286

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-07-01
Reviewed by Daniel Bates.

Source/WebCore:

Since the deprecatedTargetDPI was an int and the deviceDPI was also an int the result
was truncated. Changed deprecatedTargetDPI to a float value. Viewport test 91 now passes.

  • dom/ViewportArguments.h:

(ViewportArguments):

LayoutTests:

Unskip now passing tests.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
10:09 AM Changeset in webkit [121634] by staikos@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Clear visited links when clearing history.
https://bugs.webkit.org/show_bug.cgi?id=90345

Reviewed by Antonio Gomes.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::clearHistory):

Jun 30, 2012:

8:54 PM Changeset in webkit [121633] by fpizlo@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

JSObject wastes too much memory on unused property slots
https://bugs.webkit.org/show_bug.cgi?id=90255

Reviewed by Mark Hahnenberg.

Rolling back in after applying a simple fix: it appears that
JSObject::setStructureAndReallocateStorageIfNecessary() was allocating more
property storage than necessary. Fixing this appears to resolve the crash.

This does a few things:

  • JSNonFinalObject no longer has inline property storage.


  • Initial out-of-line property storage size is 4 slots for JSNonFinalObject, or 2x the inline storage for JSFinalObject.


  • Property storage is only reallocated if it needs to be. Previously, we would reallocate the property storage on any transition where the original structure said shouldGrowProperyStorage(), but this led to spurious reallocations when doing transitionless property adds and there are deleted property slots available. That in turn led to crashes, because we would switch to out-of-line storage even if the capacity matched the criteria for inline storage.


  • Inline JSFunction allocation is killed off because we don't have a good way of inlining property storage allocation. This didn't hurt performance. Killing off code is better than fixing it if that code wasn't doing any good.


This looks like a 1% progression on V8.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_func):
(JSC):
(JSC::JIT::emit_op_new_func_exp):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::finishCreation):

  • runtime/JSObject.h:

(JSC::JSObject::isUsingInlineStorage):
(JSObject):
(JSC::JSObject::finishCreation):
(JSC):
(JSC::JSNonFinalObject::hasInlineStorage):
(JSNonFinalObject):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC::JSNonFinalObject::finishCreation):
(JSC::JSFinalObject::hasInlineStorage):
(JSC::JSFinalObject::finishCreation):
(JSC::JSObject::offsetOfInlineStorage):
(JSC::JSObject::setPropertyStorage):
(JSC::Structure::inlineStorageCapacity):
(JSC::Structure::isUsingInlineStorage):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::nextPropertyStorageCapacity):
(JSC):
(JSC::Structure::growPropertyStorageCapacity):
(JSC::Structure::suggestedNewPropertyStorageSize):

  • runtime/Structure.h:

(JSC::Structure::putWillGrowPropertyStorage):
(Structure):

4:32 PM Changeset in webkit [121632] by eae@chromium.org
  • 1 edit
    5 adds in trunk/LayoutTests

Unreviewed chromium rebaseline for svg/zoom.

  • platform/chromium-linux-x86/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Added.
  • platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Added.
  • platform/chromium-win-xp/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Added.
  • platform/chromium-win-xp/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Added.
  • platform/chromium-win-xp/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
4:29 PM Changeset in webkit [121631] by eae@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium windows rebaseline.

  • platform/chromium-win-xp/http/tests/inspector/resource-tree/resource-request-content-while-loading-expected.txt:
3:54 PM Changeset in webkit [121630] by commit-queue@webkit.org
  • 4 edits in trunk

[BlackBerry] WebView/Browser cause blank screen when selecting a dropdown field.
https://bugs.webkit.org/show_bug.cgi?id=90241

This issue is caused by single quotes in option's labels.
We should use the escape character of single quotes in JavaScript's string which
starts and ends with single quotes.
So we replace lablels' single quotes with its escape character during generating the
select popUp's HTML.

.:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-30
Reviewed by George Staikos.

  • ManualTests/blackberry/select-popup-items-unicode-display.html:

Source/WebKit/blackberry:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-30
Reviewed by George Staikos.

  • WebCoreSupport/SelectPopupClient.cpp:

(WebCore::SelectPopupClient::generateHTML):

12:28 PM Changeset in webkit [121629] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

Webkit crashes in DFG on Google Docs when creating a new document
https://bugs.webkit.org/show_bug.cgi?id=90209

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Don't attempt to short-circuit Phantom(GetLocal) if the GetLocal is for a
captured variable.

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-cfg-simplify-phantom-get-local-on-same-block-set-local-expected.txt: Added.
  • fast/js/dfg-cfg-simplify-phantom-get-local-on-same-block-set-local.html: Added.
  • fast/js/script-tests/dfg-cfg-simplify-phantom-get-local-on-same-block-set-local.js: Added.

(baz):
(stuff):
(foo):
(o.g):

8:55 AM Changeset in webkit [121628] by commit-queue@webkit.org
  • 22 edits
    1 add in trunk/Source

[chromium] CanvasLayerTextureUpdater needs to convert opaque rects back to content space.
https://bugs.webkit.org/show_bug.cgi?id=90092

The CanvasLayerTextureUpdater currently receives its opaque rects in
layer space, but is expected to return them in content space and does
not convert them. This patch adds this conversion. To avoid numerical
errors, this patch also switches to using float rects to store opaque
rects where appropriate.

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-30
Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebContentLayerClient.h:

(WebKit):
(WebContentLayerClient):

Source/WebCore:

Unit test: ContentLayerTest.ContentLayerPainterWithDeviceScale

  • platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:

(WebCore::CanvasLayerTextureUpdater::paintContents):

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerPainter::ContentLayerPainter):
(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::paint):

  • platform/graphics/chromium/ContentLayerChromium.h:

(WebCore):
(ContentLayerDelegate):
(ContentLayerPainter):

  • platform/graphics/chromium/LayerPainterChromium.h:

(WebCore):
(LayerPainterChromium):

  • platform/graphics/chromium/LinkHighlight.cpp:

(WebCore::LinkHighlight::paintContents):

  • platform/graphics/chromium/LinkHighlight.h:

(LinkHighlight):

  • platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.cpp:

(WebCore::OpaqueRectTrackingContentLayerDelegate::paintContents):

  • platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.h:

(OpaqueRectTrackingContentLayerDelegate):

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

Source/WebKit/chromium:

  • WebKit.gypi:
  • src/WebContentLayerImpl.cpp:

(WebKit::WebContentLayerImpl::paintContents):

  • src/WebContentLayerImpl.h:

(WebContentLayerImpl):

  • tests/CCLayerTreeHostCommonTest.cpp:
  • tests/CCLayerTreeHostTest.cpp:

(WTF::TestOpacityChangeLayerDelegate::paintContents):
(WTF::MockContentLayerDelegate::paintContents):

  • tests/ContentLayerChromiumTest.cpp: Added.

(WebKit):
(OpaqueRectDrawingGraphicsContextPainter):
(WebKit::OpaqueRectDrawingGraphicsContextPainter::OpaqueRectDrawingGraphicsContextPainter):
(WebKit::OpaqueRectDrawingGraphicsContextPainter::~OpaqueRectDrawingGraphicsContextPainter):
(MockContentLayerDelegate):
(WebKit::MockContentLayerDelegate::MockContentLayerDelegate):
(WebKit::TEST):

  • tests/LayerChromiumTest.cpp:
  • tests/OpaqueRectTrackingContentLayerDelegateTest.cpp:

(WebCore::TEST_F):

  • tests/TiledLayerChromiumTest.cpp:
  • tests/WebLayerTest.cpp:
5:09 AM Changeset in webkit [121627] by zandobersek@gmail.com
  • 10 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r121605.
http://trac.webkit.org/changeset/121605
https://bugs.webkit.org/show_bug.cgi?id=90336

Changes caused flaky crashes in sputnik/Unicode tests on Apple
WK1 and GTK Linux builders

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateJSFinalObject):
(JSC):
(JSC::JIT::emitAllocateJSFunction):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_func):
(JSC::JIT::emitSlow_op_new_func):
(JSC):
(JSC::JIT::emit_op_new_func_exp):
(JSC::JIT::emitSlow_op_new_func_exp):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::finishCreation):

  • runtime/JSObject.h:

(JSC::JSObject::isUsingInlineStorage):
(JSObject):
(JSC::JSObject::finishCreation):
(JSC):
(JSNonFinalObject):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC::JSNonFinalObject::finishCreation):
(JSFinalObject):
(JSC::JSFinalObject::finishCreation):
(JSC::JSObject::offsetOfInlineStorage):
(JSC::JSObject::setPropertyStorage):
(JSC::Structure::isUsingInlineStorage):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::JSObject::transitionTo):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC):
(JSC::Structure::growPropertyStorageCapacity):
(JSC::Structure::suggestedNewPropertyStorageSize):

  • runtime/Structure.h:

(JSC::Structure::shouldGrowPropertyStorage):
(JSC::Structure::propertyStorageSize):

4:56 AM Changeset in webkit [121626] by jpetsovits@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Allow surface resizing for use cases other than rotation.
https://bugs.webkit.org/show_bug.cgi?id=90295
RIM PR 171459

Reviewed by George Staikos.

A new API method setHasPendingSurfaceSizeChange() is
introduced for that effect, and used inside of
setViewportSize() to let the WebPageClient do the
resizing. Methods are renamed to reflect that this
is not exclusively meant for rotation anymore.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPage::setScreenOrientation):
(WebKit):
(BlackBerry::WebKit::WebPage::setHasPendingSurfaceSizeChange):
(BlackBerry::WebKit::WebPagePrivate::resizeSurfaceIfNeeded):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

  • Api/WebPage.h:
  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

3:39 AM Changeset in webkit [121625] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK and EFL gardening, adding image expectation
for the failing css3/flexbox/anonymous-block.html test.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
3:21 AM Changeset in webkit [121624] by zandobersek@gmail.com
  • 4 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening, updating baselines after r121599.

  • platform/gtk/fast/transforms/bounding-rect-zoom-expected.txt: Added.
  • platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
2:29 AM Changeset in webkit [121623] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Remove unused declaration.
HTMLDocumentParser::begin() has no method definition.

  • html/parser/HTMLDocumentParser.h:

Jun 29, 2012:

10:02 PM Changeset in webkit [121622] by abarth@webkit.org
  • 2 edits in trunk/Tools

Turns out we need zip too.

  • EWSTools/cold-boot.sh:
10:00 PM Changeset in webkit [121621] by abarth@webkit.org
  • 2 edits
    1 add in trunk/Tools

Add a cold-boot.sh script for the EWS
https://bugs.webkit.org/show_bug.cgi?id=90330

Unreviewed.

  • EWSTools/cold-boot.sh: Added.
    • This script can take us from a cold GCE instance to a running EWS bot in one fell swoop.
  • EWSTools/start-queue.sh:
    • The if-block at the top of this script was causing trouble. I removed it from the bots a while ago. Now that we're using SVN to cold-boot the EWS bots, we need to make this change in the repo.
9:18 PM Changeset in webkit [121620] by commit-queue@webkit.org
  • 7 edits
    18 adds in trunk

[Qt][WK2] Private non-QtQuick API
https://bugs.webkit.org/show_bug.cgi?id=84532

.:

Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2012-06-29
Reviewed by Noam Rosenthal.

API tests for QRawWebView.

  • Source/tests.pri:

Source/WebKit2:

Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2012-06-29
Reviewed by Noam Rosenthal.

Adding new private non-QtQuick API. This new C++ API makes it possible
to have control over the lower levels of WebKit without going via QML.

This is a first version of the API, enough to show pages on the screen.
Many features are not implemented.

  • Target.pri:
  • UIProcess/API/qt/raw/qrawwebview.cpp: Added.
  • UIProcess/API/qt/raw/qrawwebview_p.h: Added.
  • UIProcess/API/qt/raw/qrawwebview_p_p.h: Added.

The tests for the new API are pixel tests. They use QRawWebView to load
html files and generate images, and them compare those images to the ones
in UIProcess/API/qt/tests/html/resources.

  • UIProcess/API/qt/tests/html/bluesquare.html: Added.
  • UIProcess/API/qt/tests/html/redsquare.html: Added.
  • UIProcess/API/qt/tests/html/resources/qwkview_noBackground1.png: Added.
  • UIProcess/API/qt/tests/html/resources/qwkview_noBackground3.png: Added.
  • UIProcess/API/qt/tests/html/resources/qwkview_paint.png: Added.
  • UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro: Added.
  • UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp: Added.

Tools:

MiniBrowserRaw is an usage example for the QRawWebView API.
It is only an example and is not fully implemented.

Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2012-06-29
Reviewed by Noam Rosenthal.

  • MiniBrowser/qt/raw/DerivedSources.pri: Added.
  • MiniBrowser/qt/raw/MiniBrowserRaw.pro: Added.
  • MiniBrowser/qt/raw/Target.pri: Added.
  • MiniBrowser/qt/raw/View.cpp: Added.
  • MiniBrowser/qt/raw/View.h: Added.
  • Scripts/webkitpy/style/checker.py:
  • Tools.pro:
8:54 PM Changeset in webkit [121619] by ojan@chromium.org
  • 4 edits in trunk/Tools

Remove leopard bots from garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=90328

Reviewed by Adam Barth.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
8:52 PM Changeset in webkit [121618] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r121569.
http://trac.webkit.org/changeset/121569
https://bugs.webkit.org/show_bug.cgi?id=90082

It broke a couple of tests in Qt Linux Release

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillRect):

8:36 PM Changeset in webkit [121617] by ojan@chromium.org
  • 3 edits in trunk/Tools

garden-o-matic broken: TypeError: 'undefined' is not an object (evaluating 'buildLocations[currentIndex].url')
https://bugs.webkit.org/show_bug.cgi?id=90243

Reviewed by Dirk Pranke.

jQuery was trying to be too smart and parsing the jsonp as json because of it's content-type.
Excise jQuery and just use XHR directly since it's easier to maintain something where we control it
all.

Not really sure how to unittest this. I tested it all manually of course.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/net.js:

Made net.ajax a drop-in replacement for the features of $.ajax that we were using.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:

Not related to this patch, but figured I'd update the failing test while I was at it.

8:36 PM Changeset in webkit [121616] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

updateDescendantDependentFlags() is inside #if USE(ACCELERATED_COMPOSITING)
https://bugs.webkit.org/show_bug.cgi?id=90245

Reviewed by Dan Bernstein.

updateDescendantDependentFlags() and updateTransform() should be
outside the USE(ACCELERATED_COMPOSITING) #ifdef. They do work
that is needed even if accelerated compositing is disabled.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::styleChanged):

8:32 PM Changeset in webkit [121615] by arv@chromium.org
  • 7 edits
    4 adds in trunk

[V8] HTMLCollection wrappers are not retained
https://bugs.webkit.org/show_bug.cgi?id=90208

Reviewed by Adam Barth.

Source/WebCore:

Generate visitDOMWrapper for HTMLCollection and HTMLAllCollection so that we add an implicit reference from the owner
to the collection.

Tests: fast/dom/htmlallcollection-reachable.html

fast/dom/htmlcollection-reachable.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation): Instead of hard coding to use base() for HTMLAllCollection and HTMLCollection we now
annotate the IDL file to use GenerateIsReachable=ImplBaseRoot.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateVisitDOMWrapper): Generate visitDOMWrapper if GenerateIsReachable is ImplBaseRoot.

  • bindings/scripts/IDLAttributes.txt: Added ImplBaseRoot.
  • html/HTMLAllCollection.idl: Added annotations.
  • html/HTMLCollection.idl: Ditto.

LayoutTests:

  • fast/dom/htmlallcollection-reachable-expected.txt: Added.
  • fast/dom/htmlallcollection-reachable.html: Added.
  • fast/dom/htmlcollection-reachable-expected.txt: Added.
  • fast/dom/htmlcollection-reachable.html: Added.
8:27 PM Changeset in webkit [121614] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix layout test runner for Android after https://bugs.webkit.org/show_bug.cgi?id=88134
https://bugs.webkit.org/show_bug.cgi?id=90309

Patch by Yaron Friedman <yfriedman@chromium.org> on 2012-06-29
Reviewed by Adam Barth.

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:

(ChromiumAndroidPort.start_http_server):

8:16 PM Changeset in webkit [121613] by tony@chromium.org
  • 7 edits in trunk

All child elements of a flex container should be turned into a flex item
https://bugs.webkit.org/show_bug.cgi?id=90323

Reviewed by Ojan Vafai.

Source/WebCore:

We used to only convert some elements to blocks, but now we convert everything except text nodes.
This was recently changed here:
http://wiki.csswg.org/topics/css3-flexbox-flexbox-replaced-children

Tests: css3/flexbox/anonymous-block.html : Add new test case.

css3/flexbox/flexitem.html: Update results.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

LayoutTests:

  • css3/flexbox/anonymous-block-expected.html:
  • css3/flexbox/anonymous-block.html:
  • css3/flexbox/flexitem-expected.txt:
  • css3/flexbox/flexitem.html:
8:09 PM Changeset in webkit [121612] by jsbell@chromium.org
  • 17 edits in trunk/Source

IndexedDB: Keep direction on IDBCursor to avoid calls to back end
https://bugs.webkit.org/show_bug.cgi?id=90114

Source/WebCore:

Reviewed by Tony Chang.

Let IDBCursor handle direction() accessor locally, without a call to
the IDBCursorBackendImpl which (in some ports) may reside in a different
process. Not a heavily called function, but further reduces the surface
area exposed by the XXXInterface classes.

No new tests - no functional changes.

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::create): Accept direction, known at creation time.
(WebCore::IDBCursor::IDBCursor): Stash in member.
(WebCore::IDBCursor::direction): Use local copy
(WebCore::IDBCursor::stringToDirection): Return enum value, not int.

  • Modules/indexeddb/IDBCursor.h:

(IDBCursor):

  • Modules/indexeddb/IDBCursorBackendImpl.cpp: Remove accessor.
  • Modules/indexeddb/IDBCursorBackendImpl.h:

(IDBCursorBackendImpl):

  • Modules/indexeddb/IDBCursorBackendInterface.h: Remove accessor.
  • Modules/indexeddb/IDBCursorWithValue.cpp:

(WebCore::IDBCursorWithValue::create):
(WebCore::IDBCursorWithValue::IDBCursorWithValue):

  • Modules/indexeddb/IDBCursorWithValue.h:

(IDBCursorWithValue):

  • Modules/indexeddb/IDBIndex.cpp: Prep IDBRequest with cursor direction too.

(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::openKeyCursor):

  • Modules/indexeddb/IDBObjectStore.cpp: Ditto.

(WebCore::IDBObjectStore::openCursor):

  • Modules/indexeddb/IDBRequest.cpp: Stash direction for pending cursor too.

(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setCursorDetails):
(WebCore::IDBRequest::onSuccess): Apply stashed direction to new cursor.

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):

Source/WebKit/chromium:

Stop plumbing IDBCursorBackendInterface::direction() through API.

Reviewed by Tony Chang.

  • src/IDBCursorBackendProxy.cpp:
  • src/IDBCursorBackendProxy.h:

(IDBCursorBackendProxy):

  • src/WebIDBCursorImpl.cpp:
  • src/WebIDBCursorImpl.h:

(WebIDBCursorImpl):

7:36 PM Changeset in webkit [121611] by tony@chromium.org
  • 6 edits in trunk

Allow align-self: stretch to cause the item size to shrink below its intrinsic size
https://bugs.webkit.org/show_bug.cgi?id=90304

Reviewed by Ojan Vafai.

Source/WebCore:

The spec used to say that stretch could only make items grow, but now
it allows items to shrink.
http://dev.w3.org/csswg/css3-flexbox/#align-items-stretch

Tests: css3/flexbox/flex-align-stretch.html Updated expectations.

css3/flexbox/child-overflow.html Updated expectations.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):

LayoutTests:

  • css3/flexbox/child-overflow-expected.html:
  • css3/flexbox/child-overflow.html:
  • css3/flexbox/flex-align-stretch.html:
7:02 PM Changeset in webkit [121610] by commit-queue@webkit.org
  • 12 edits
    3 adds
    2 deletes in trunk

NPObjectWrapper may not address all window script object lifetime issues
https://bugs.webkit.org/show_bug.cgi?id=85679

Source/WebCore:

The ScriptController implementations force-deallocate the window script object to ensure that DOM objects are not leaked if an NPAPI plugin fails to release a reference to it before being destroyed. The NPObjectWrapper was added to ensure that NPAPI scripting could not touch the real window script object after it had been deallocated, by providing the plugin with a small wrapper which will leak if the plugin fails to dereference it.

This patch removes NPObjectWrapper and instead drops the window script NPObject's reference to the underlying V8Object in ScriptController::clearScriptObjects(). If a plugin fails to dereference the object then the NPV8Object wrapper will be leaked but the DOM objects it references will not.

Patch by James Weatherall <wez@chromium.org> on 2012-06-29
Reviewed by Nate Chapin.

Test: plugins/npruntime/leak-window-scriptable-object.html

  • WebCore.gypi:
  • bindings/v8/NPObjectWrapper.cpp: Removed.
  • bindings/v8/NPObjectWrapper.h: Removed.
  • bindings/v8/NPV8Object.cpp:

(WebCore::disposeUnderlyingV8Object):
(WebCore):
(WebCore::freeV8NPObject):
(_NPN_Invoke):
(_NPN_InvokeDefault):
(_NPN_EvaluateHelper):
(_NPN_GetProperty):
(_NPN_SetProperty):
(_NPN_RemoveProperty):
(_NPN_HasProperty):
(_NPN_HasMethod):
(_NPN_Enumerate):
(_NPN_Construct):

  • bindings/v8/NPV8Object.h:

(WebCore):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::ScriptController):
(WebCore::ScriptController::clearScriptObjects):
(WebCore::ScriptController::windowScriptNPObject):

  • bindings/v8/ScriptController.h:

(ScriptController):

Tools:

TestNetscapePlugin now has a leak-window-scriptable-object test which takes a reference to the window script object, and a second reference to it via the "self" property, and does not release those references. This is used to simulate a leaky plugin in layout tests of the NPAPI scripting interface glue code.

Patch by James Weatherall <wez@chromium.org> on 2012-06-29
Reviewed by Nate Chapin.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

(PluginTest::NPN_GetProperty):

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h:

(PluginTest):

  • DumpRenderTree/TestNetscapePlugIn/Tests/LeakWindowScriptableObject.cpp: Added.

(LeakWindowScriptableObject):
(LeakWindowScriptableObject::LeakWindowScriptableObject):
(LeakWindowScriptableObject::NPP_New):

LayoutTests:

Test that NPAPI plugins that leak references to the window script object don't cause the containing document to be leaked.

Patch by James Weatherall <wez@chromium.org> on 2012-06-29
Reviewed by Nate Chapin.

  • plugins/npruntime/leak-window-scriptable-object-expected.txt: Added.
  • plugins/npruntime/leak-window-scriptable-object.html: Added.
6:23 PM Changeset in webkit [121609] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Update complex fonts on Android to use fonts from a newer SDK
https://bugs.webkit.org/show_bug.cgi?id=90296

Reviewed by Nate Chapin.

These fonts are available in the Jelly Bean SDK.

  • platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp:

(WebCore::ComplexTextController::ComplexTextController):
(WebCore::ComplexTextController::getComplexFontPlatformData):

6:20 PM Changeset in webkit [121608] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk/Source/WebKit

Source/WebKit: [EFL] Add support for Unit Tests, based on the gtest library.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-06-29
Reviewed by Chang Shu.

Add configuration for building gtest library, testing framework and unit tests.

  • PlatformEfl.cmake:

Source/WebKit/efl: [EFL] Implementation of testing framework and unit tests for WebKit-EFL port.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech <k.czech@samsung.com>, Tomasz Morawski <t.morawski@samsung.com> on 2012-06-29
Reviewed by Chang Shu.

Testing framework is based on gtest library. Gtest library is part of the WebKit project. Framework is devided into base part and view part.
Base part takes care of efl initialization, defines test macros and prepares test to run. View part is a context of each test.

  • tests/UnitTestUtils/EWKTestBase.cpp: Added.

(EWKUnitTests):
(EWKUnitTests::EWKTestBase::init):
(EWKUnitTests::EWKTestBase::shutdown):
(EWKUnitTests::EWKTestBase::shutdownAll):
(EWKUnitTests::EWKTestBase::startTest):
(EWKUnitTests::EWKTestBase::endTest):
(EWKUnitTests::EWKTestBase::createTest):
(EWKUnitTests::EWKTestBase::runTest):

  • tests/UnitTestUtils/EWKTestBase.h: Added.

(EWKUnitTests):
(EWKTestBase):

  • tests/UnitTestUtils/EWKTestConfig.h: Added.

(Config):

  • tests/UnitTestUtils/EWKTestView.cpp: Added.

(EWKUnitTests):
(EWKUnitTests::EWKTestEcoreEvas::EWKTestEcoreEvas):
(EWKUnitTests::EWKTestEcoreEvas::evas):
(EWKUnitTests::EWKTestEcoreEvas::show):
(EWKUnitTests::EWKTestView::EWKTestView):
(EWKUnitTests::EWKTestView::init):
(EWKUnitTests::EWKTestView::show):
(EWKUnitTests::EWKTestView::mainFrame):
(EWKUnitTests::EWKTestView::evas):
(EWKUnitTests::EWKTestView::bindEvents):

  • tests/UnitTestUtils/EWKTestView.h: Added.

(EWKUnitTests):
(EWKTestEcoreEvas):
(EWKTestView):
(EWKUnitTests::EWKTestView::webView):

  • tests/resources/default_test_page.html: Added.
  • tests/test_ewk_view.cpp: Added.

(ewkViewEditableGetCb):
(TEST):
(ewkViewUriGetCb):

  • tests/test_runner.cpp: Added.

(parseCustomArguments):
(main):

6:14 PM Changeset in webkit [121607] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove warning about protected values when the Heap is being destroyed
https://bugs.webkit.org/show_bug.cgi?id=90302

Reviewed by Geoffrey Garen.

Having to do book-keeping about whether values allocated from a certain
VM are or are not protected makes the JSC API much more difficult to use
correctly. Clients should be able to throw an entire VM away and not have
to worry about unprotecting all of the values that they protected earlier.

  • heap/Heap.cpp:

(JSC::Heap::lastChanceToFinalize):

5:58 PM Changeset in webkit [121606] by eae@chromium.org
  • 6 edits in trunk/LayoutTests

Unreviewed chromium windows rebaselines for r121599.

  • platform/chromium-win/fast/reflections/reflection-with-zoom-expected.png:
  • platform/chromium-win/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
5:25 PM Changeset in webkit [121605] by fpizlo@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

JSObject wastes too much memory on unused property slots
https://bugs.webkit.org/show_bug.cgi?id=90255

Reviewed by Mark Hahnenberg.

This does a few things:

  • JSNonFinalObject no longer has inline property storage.


  • Initial out-of-line property storage size is 4 slots for JSNonFinalObject, or 2x the inline storage for JSFinalObject.


  • Property storage is only reallocated if it needs to be. Previously, we would reallocate the property storage on any transition where the original structure said shouldGrowProperyStorage(), but this led to spurious reallocations when doing transitionless property adds and there are deleted property slots available. That in turn led to crashes, because we would switch to out-of-line storage even if the capacity matched the criteria for inline storage.


  • Inline JSFunction allocation is killed off because we don't have a good way of inlining property storage allocation. This didn't hurt performance. Killing off code is better than fixing it if that code wasn't doing any good.


This looks like a 1% progression on V8.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_func):
(JSC):
(JSC::JIT::emit_op_new_func_exp):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::finishCreation):

  • runtime/JSObject.h:

(JSC::JSObject::isUsingInlineStorage):
(JSObject):
(JSC::JSObject::finishCreation):
(JSC):
(JSC::JSNonFinalObject::hasInlineStorage):
(JSNonFinalObject):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC::JSNonFinalObject::finishCreation):
(JSC::JSFinalObject::hasInlineStorage):
(JSC::JSFinalObject::finishCreation):
(JSC::JSObject::offsetOfInlineStorage):
(JSC::JSObject::setPropertyStorage):
(JSC::Structure::inlineStorageCapacity):
(JSC::Structure::isUsingInlineStorage):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::nextPropertyStorageCapacity):
(JSC):
(JSC::Structure::growPropertyStorageCapacity):
(JSC::Structure::suggestedNewPropertyStorageSize):

  • runtime/Structure.h:

(JSC::Structure::putWillGrowPropertyStorage):
(Structure):

5:20 PM Changeset in webkit [121604] by eae@chromium.org
  • 9 edits in trunk/LayoutTests

Unreviewed chromium rebaselines for r121599.

  • platform/chromium-mac-snowleopard/fast/reflections/reflection-with-zoom-expected.png:
  • platform/chromium-mac-snowleopard/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
  • platform/chromium-mac/fast/reflections/reflection-with-zoom-expected.png:
  • platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
4:56 PM Changeset in webkit [121603] by rniwa@webkit.org
  • 27 edits in trunk/Source/WebCore

HTMLCollection's caches should be owned by either ElementRareData or Document
https://bugs.webkit.org/show_bug.cgi?id=90322

Reviewed by Anders Carlsson.

Removed all instances of OwnPtr<HTMLCollection> except ones on ElementRareData and Document.
ElementRareData::ensureCachedHTMLCollection then polymorphically creates HTMLCollection or
its subclass as deemed necessary.

This refactoring allows us to move HTMLCollection to use the same invalidation model as
DynamicNodeList (invalidated during DOM mutations) in a follow up.

  • dom/Document.cpp:

(WebCore::Document::all):

  • dom/Document.h:

(Document):

  • dom/Element.cpp:

(WebCore::ElementRareData::ensureCachedHTMLCollection):
(WebCore):
(WebCore::Element::cachedHTMLCollection):

  • dom/Element.h:

(Element):

  • dom/ElementRareData.h:

(WebCore):
(ElementRareData):
(WebCore::ElementRareData::cachedHTMLCollection):

  • dom/Node.cpp:

(WebCore):

  • dom/Node.h:

(Node):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::setItemType):
(NodeRareData):

  • html/CollectionType.h:
  • html/HTMLCollection.cpp:

(WebCore::shouldIncludeChildren):
(WebCore::HTMLCollection::isAcceptableElement):

  • html/HTMLElement.cpp:

(WebCore):
(WebCore::HTMLElement::properties):

  • html/HTMLElement.h:

(HTMLElement):

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::elements):

  • html/HTMLFieldSetElement.h:

(HTMLFieldSetElement):

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):
(WebCore::HTMLFormCollection::create):

  • html/HTMLFormCollection.h:

(HTMLFormCollection):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::elements):

  • html/HTMLFormElement.h:
  • html/HTMLOptionsCollection.cpp:

(WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
(WebCore::HTMLOptionsCollection::create):

  • html/HTMLOptionsCollection.h:

(HTMLOptionsCollection):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::selectedOptions):
(WebCore::HTMLSelectElement::options):
(WebCore::HTMLSelectElement::invalidateSelectedItems):
(WebCore::HTMLSelectElement::setRecalcListItems):

  • html/HTMLSelectElement.h:
  • html/HTMLTableElement.cpp:

(WebCore::HTMLTableElement::rows):

  • html/HTMLTableElement.h:
  • html/HTMLTableRowsCollection.cpp:

(WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
(WebCore::HTMLTableRowsCollection::create):

  • html/HTMLTableRowsCollection.h:

(HTMLTableRowsCollection):

4:49 PM Changeset in webkit [121602] by ojan@chromium.org
  • 2 edits in trunk/Source/WebCore

Add FIXMEs for vertical writing mode and override sizes.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::overrideLogicalContentWidth):
(WebCore::RenderBox::overrideLogicalContentHeight):

4:45 PM Changeset in webkit [121601] by jamesr@google.com
  • 4 edits in trunk/Source/WebCore

[chromium] Use CCThread::Task in compositor's RateLimiter instead of Timer
https://bugs.webkit.org/show_bug.cgi?id=90300

Reviewed by Adrienne Walker.

  • platform/graphics/chromium/RateLimiter.cpp:

(RateLimiter::Task):
(WebCore::RateLimiter::Task::create):
(WebCore::RateLimiter::Task::~Task):
(WebCore::RateLimiter::Task::Task):
(WebCore):
(WebCore::RateLimiter::RateLimiter):
(WebCore::RateLimiter::start):
(WebCore::RateLimiter::stop):
(WebCore::RateLimiter::rateLimitContext):

  • platform/graphics/chromium/RateLimiter.h:

(WebCore):
(RateLimiter):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::~CCLayerTreeHost):

4:40 PM Changeset in webkit [121600] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Remove type from screenColorProfile API
https://bugs.webkit.org/show_bug.cgi?id=90299

Patch by Tony Payne <tpayne@chromium.org> on 2012-06-29
Reviewed by Adam Barth.

Source/Platform:

  • chromium/public/Platform.h:

(WebKit::Platform::screenColorProfile): Removed type from chromium
public API's version of screenColorProfile().

Source/WebCore:

Covered by existing tests.

  • platform/PlatformScreen.h:

(WebCore): Removed type from screenColorProfile().

  • platform/blackberry/PlatformScreenBlackBerry.cpp:

(WebCore::screenColorProfile):

  • platform/chromium/PlatformScreenChromium.cpp:

(WebCore::screenColorProfile):

  • platform/efl/PlatformScreenEfl.cpp:

(WebCore::screenColorProfile):

  • platform/gtk/PlatformScreenGtk.cpp:

(WebCore::screenColorProfile):

  • platform/image-decoders/ImageDecoder.h:

(WebCore::ImageDecoder::qcmsOutputDeviceProfile): Updated call to
screenColorProfile() to not pass type param.

  • platform/mac/PlatformScreenMac.mm:

(WebCore::screenColorProfile):

  • platform/qt/PlatformScreenQt.cpp:

(WebCore::screenColorProfile):

  • platform/win/PlatformScreenWin.cpp:

(WebCore::screenColorProfile):

4:26 PM Changeset in webkit [121599] by eae@chromium.org
  • 19 edits
    2 adds in trunk

Allow non-borders to be adjusted to less than 1 when zoomed out
https://bugs.webkit.org/show_bug.cgi?id=90104

Reviewed by Eric Seidel.

Source/WebCore:

Change CSSPrimitiveValue::computeLengthDouble to allow values to be
adjusted to less than 1.0 when zoomed out. This avoids an off by one
error for floats with margins when zoomed out that can cause floats to
wrap and break pages.

The logic that prevents the value from being adjusted to less than 1 was
added to ensure that borders are still painted even when zoomed out.
By moving the logic to ApplyPropertyComputeLength::applyValue, which is
used for borders and outlines, that functionality is preserved.

Test: fast/sub-pixel/float-with-margin-in-container.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLengthDouble):

  • css/StyleBuilder.cpp:

(WebCore::ApplyPropertyComputeLength::applyValue):

LayoutTests:

Add test ensuring that floats with margins do not wrap in fixed sized
containers and update existing results as needed.

  • fast/css/zoom-background-repeat-x.html:
  • fast/sub-pixel/float-with-margin-in-container-expected.txt: Added.
  • fast/sub-pixel/float-with-margin-in-container.html: Added.
  • platform/chromium-linux/fast/reflections/reflection-with-zoom-expected.png:
  • platform/chromium-linux/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
  • platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/chromium-win/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/mac/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
  • platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
3:55 PM Changeset in webkit [121598] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Let Xcode have its own way after r121513.

  • WebCore.xcodeproj/project.pbxproj:
3:51 PM Changeset in webkit [121597] by commit-queue@webkit.org
  • 13 edits in trunk

[CSS Regions] Adding feature defines for CSS Regions for Windows
https://bugs.webkit.org/show_bug.cgi?id=88645

Patch by Mihai Balan <mibalan@adobe.com> on 2012-06-29
Reviewed by Tony Chang.

Source/WebCore:

Re-trying to enable CSS regions on Windows. This time only enabling
regions (not exclusions) because of some strange compilation/linking
issues.

  • css/CSSPropertyNames.in: Touched file to make sure property names get properly rebuilt.

Source/WebKit/win:

Re-trying to enable CSS regions on Windows. This time only enabling
regions since exclusions lead to some very strange compiling/linking
problems. This time adding preferences code to make sure the settings
get propagated to DRT (previous experiments by abucur showed they
didn't.).

  • WebPreferenceKeysPrivate.h: Added preference key for CSS regions
  • Interfaces/IWebPreferences.idl: Added getters and setters for CSS regions settings
  • WebPreferences.cpp: ditto

(WebPreferences::initializeDefaultSettings):
(WebPreferences::isCSSRegionsEnabled):
(WebPreferences::setCSSRegionsEnabled):

  • WebPreferences.h: ditto

(WebPreferences):

  • WebView.cpp: Added settings code to handle CSS regions, too

(WebView::notifyPreferencesChanged):

WebKitLibraries:

Re-trying to enable CSS regions on Windows. This time only enabling
regions since exclusions lead to some very strange compiling/linking
problems.

  • win/tools/vsprops/FeatureDefines.vsprops: Added default value for ENABLE_CSS_REGIONS
  • win/tools/vsprops/FeatureDefinesCairo.vsprops: ditto

LayoutTests:

Re-trying to enable CSS regions on Windows. This time only enabling
regions (not exclusions) because of some strange compilation/linking
issues. Fixing a couple of non-regions related tests that get different
results once regions are enabled.

  • platform/win/fast/js/global-constructors-expected.txt: Added WebKitCSSRule to expected
3:45 PM WebKitIDL edited by arv@chromium.org
(diff)
3:25 PM Changeset in webkit [121596] by dpranke@chromium.org
  • 2 edits in trunk/Tools

webkitpy: add comment about how determine_full_port_name() works for apple ports, fix -wk2 bug
https://bugs.webkit.org/show_bug.cgi?id=90314

Reviewed by Ojan Vafai.

Add comments and fix a bug in how we would handle the mac-wk2
and win-wk2 port names after confusion around in bug 90312 :).

  • Scripts/webkitpy/layout_tests/port/apple.py:

(ApplePort.determine_full_port_name):

3:16 PM Changeset in webkit [121595] by dpranke@chromium.org
  • 8 edits in trunk/Tools

webkitpy: remove support for mac leopard from chromium configurations
https://bugs.webkit.org/show_bug.cgi?id=90313

Reviewed by Tony Chang.

Google has shipped the last version of Chrome that will support
Mac OS 10.5 (Leopard), and we no longer have bots that run this
configuration, so we're removing support for it.

A subsequent change will remove the baselines in platform/chromium-mac-leopard.

  • Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:

(BaselineOptimizerTest.test_complex_shadowing):

  • Scripts/webkitpy/layout_tests/port/builders.py:
  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort):

  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:

(ChromiumMacPort):

  • Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

(ChromiumMacPortTest.test_versions):

  • Scripts/webkitpy/layout_tests/port/factory_unittest.py:

(FactoryTest.test_mac):
(FactoryTest.test_chromium_mac):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(test_rebaseline_and_copy_test_with_lion_result):

3:10 PM Changeset in webkit [121594] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] WebFontRendering.cpp requires some OS(ANDROID) ifdefs to build downstream
https://bugs.webkit.org/show_bug.cgi?id=90292

Reviewed by Nate Chapin.

These ifdefs are required to build this file downstream. There's some
sublte difference between how the OS flags are set upstream and
downstream. This is on our list of issues to resolve, but in the
meantime, this patch makes these files identical upstream and
downstream to reduce noise in the upstreaming queue.

  • src/linux/WebFontRendering.cpp:

(WebKit::WebFontRendering::setSubpixelPositioning):

3:02 PM Changeset in webkit [121593] by noam.rosenthal@nokia.com
  • 2 edits
    53 adds
    1 delete in trunk/LayoutTests

[Qt][WK2] Unskip/rebaseline some compositing tests.
https://bugs.webkit.org/show_bug.cgi?id=90290

Reviewed by Laszlo Gombos.

Rebaseline compositing tests that have good results that are slightly different than the
generic results, and unskipping several tests that should not be skipped.

  • platform/qt-5.0-wk2/Skipped:
  • platform/qt-5.0-wk2/compositing/iframes/composited-iframe-scroll-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/fixed-position-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/iframe-content-flipping-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/iframe-size-to-zero-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/invisible-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/layout-on-compositing-change-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/leave-compositing-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/nested-composited-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/nested-iframe-scrolling-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/remove-iframe-crash-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/repaint-after-losing-scrollbars-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/scroll-fixed-transformed-element-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/iframes/scroll-grandchild-iframe-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/masks/direct-image-mask-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/masks/masked-ancestor-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/masks/multiple-masks-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/masks/simple-composited-mask-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/become-simple-composited-reflection-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/compositing-change-inside-reflection-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/empty-reflection-with-mask-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/masked-reflection-on-composited-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/nested-reflection-mask-change-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/nested-reflection-transformed-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/nested-reflection-transformed2-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-in-composited-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-on-composited-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-opacity-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-ordering-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-positioning-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/reflection-positioning2-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/remove-add-reflection-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/remove-reflection-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/reflections/simple-composited-reflections-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-relative-expected.txt: Added.
2:57 PM Changeset in webkit [121592] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

Source/WebCore: Web Inspector: Add data length to resource events on timeline to
keep track of the amount of data loaded and the total data length
https://bugs.webkit.org/show_bug.cgi?id=89244

Patch by Hanna Ma <Hanma@rim.com> on 2012-06-29
Reviewed by Pavel Feldman.

Added data length to inspector timeline popup
content for resources to keep track of the amount of data loaded.
Tests: inspector/timeline/timeline-network-received-data.html

  • English.lproj/localizedStrings.js:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willReceiveResourceDataImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willReceiveResourceData):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willReceiveResourceData):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createReceiveResourceData):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._showPopover):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.prototype.reset):
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::didReceiveData):

  • inspector/timeline/timeline-network-received-data.html: Added.
  • inspector/timeline/timeline-network-received-data-expected.txt: Added.
  • inspector/timeline/timeline-test.js:

LayoutTests: Web Inspector: Add data length to resource events on timeline to
keep track of the amount of data loaded and the total data length.
https://bugs.webkit.org/show_bug.cgi?id=89244

Patch by Hanna Ma <Hanma@rim.com> on 2012-06-29
Reviewed by Pavel Feldman.

Added tests for resource receive data events.

  • inspector/timeline/timeline-network-received-data-expected.txt: Added.
  • inspector/timeline/timeline-network-received-data.html: Added.
  • inspector/timeline/timeline-test.js:
2:53 PM Changeset in webkit [121591] by ojan@chromium.org
  • 3 edits in trunk/Tools

Fix optimize-baselines to not move baselines from win to win-7sp0
https://bugs.webkit.org/show_bug.cgi?id=90312

Reviewed by Dirk Pranke.

It used to consider win-7sp0 as the common directory for all the Apple
windows ports and incorrectly move results out of win.

  • Scripts/webkitpy/common/checkout/baselineoptimizer.py:
  • Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:

(BaselineOptimizerTest.test_win_does_not_drop_to_win_7sp0):
(BaselineOptimizerTest.test_common_directory_includes_root):

2:43 PM Changeset in webkit [121590] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

[WK2] Move intent delivery code from the frame to the page
https://bugs.webkit.org/show_bug.cgi?id=89974

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-29
Reviewed by Anders Carlsson.

Move the intent delivery code from the frame to the page
and add the corresponding C API for WKPage.

  • UIProcess/API/C/WKPage.cpp:

(WKPageDeliverIntentToFrame):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::stopLoading):

  • UIProcess/WebFrameProxy.h:

(WebKit):

  • UIProcess/WebPageProxy.cpp:

(WebKit):
(WebKit::WebPageProxy::deliverIntentToFrame):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

2:25 PM Changeset in webkit [121589] by shawnsingh@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after 121580.

WebKit Linux debug bots was complaining about signed vs unsigned integer comparison.

  • html/HTMLCollection.h:

(WebCore::HTMLCollectionCacheBase::HTMLCollectionCacheBase):

2:23 PM Changeset in webkit [121588] by eae@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed chromium xp rebaseline.

  • platform/chromium-win-xp/http/tests/inspector: Added.
  • platform/chromium-win-xp/http/tests/inspector/resource-tree: Added.
  • platform/chromium-win-xp/http/tests/inspector/resource-tree/resource-request-content-while-loading-expected.txt: Added.
2:13 PM Changeset in webkit [121587] by danakj@chromium.org
  • 1 edit in branches/chromium/1180/Source/WebCore/platform/graphics/chromium/cc/CCOverdrawMetrics.cpp

Merge 121224 - [chromium] CCOverdrawMetrics should use the deviceViewportSize to count actual pixels
https://bugs.webkit.org/show_bug.cgi?id=89922

Reviewed by Adrienne Walker.

  • platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:

(WebCore::CCOverdrawMetrics::recordMetricsInternal):

TBR=danakj@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10704050

2:11 PM Changeset in webkit [121586] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Page jumps after post-pinch-zoom re-render
https://bugs.webkit.org/show_bug.cgi?id=90282

Reviewed by Antonio Gomes.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 170255
In r120622, we moved ScrollableArea::setConstrainsScrollingToContentEdge(false|true)
from WebPage::setScrollPosition() to BackingStorePrivate::setScrollingOrZooming()
to address an overscroll reset issue.
However, when we are ending bitmap zooming, UI thread can call
BackingStorePrivate::setScrollingOrZooming(false) before WebKit thread
calls WebPage::setScrollPosition(), in which case it will set
ScrollableArea::m_constrainsScrollingToContentEdge to true earlier.
To fix this, we can cache ScrollableArea::m_constrainsScrollingToContentEdge
and always set it to false before we set scroll position in WebKit
thread to avoid scroll position clamping during scrolling, and restore
it to what it was after that.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setScrollPosition):

1:32 PM Changeset in webkit [121585] by ojan@chromium.org
  • 2 edits
    2 adds
    1 delete in trunk/LayoutTests

Rebaseline some tests where Chrome differs due to V8's different toString implementation
for some built-ins. We should probably get V8 and JSC to agree here, but that's not terribly
pressing since the web clearly doesn't depend on the specifics here.

  • platform/chromium-win/fast/js/global-constructors-expected.txt: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/js/function-names-expected.txt: Added.
  • platform/chromium/fast/js/global-constructors-expected.txt: Added.
1:26 PM Changeset in webkit [121584] by mitz@apple.com
  • 10 edits in trunk/Source/WebKit2

Can’t get basic element info from a WKRenderObject
https://bugs.webkit.org/show_bug.cgi?id=90301

Reviewed by Anders Carlsson.

Moved the element info (tag name, id and class names) from WebRenderLayer to WebRenderObject,
and gave WebRenderLayer a reference to a (shallow) WebRenderObject. Added WKRenderObject API
for getting element info, while leaving the WKRenderLayer API in place for now for Safari.

  • Shared/API/c/WKRenderLayer.cpp:

(WKRenderLayerGetRenderer): Added this wrapper.
(WKRenderLayerCopyRendererName): Changed to get the name from the renderer.
(WKRenderLayerCopyElementTagName): Changed to go through the renderer.
(WKRenderLayerCopyElementID): Ditto.
(WKRenderLayerGetElementClassNames): Ditto.

  • Shared/API/c/WKRenderLayer.h: Added declaration of WKRenderLayerGetRenderer() and comments

about removing older API.

  • Shared/API/c/WKRenderObject.cpp:

(WKRenderObjectCopyElementTagName): Added this wrapper.
(WKRenderObjectCopyElementID): Ditto.
(WKRenderObjectGetElementClassNames): Ditto.

  • Shared/API/c/WKRenderObject.h:
  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode): Removed the element info from the encoding of
WebRenderLayer, and added the renderer. Added the element info to the encoding of
WebRenderObject.
(WebKit::UserMessageDecoder::baseDecode): Updated to match the encoding changes.

  • Shared/WebRenderLayer.cpp:

(WebKit::WebRenderLayer::WebRenderLayer): Changed to initialize the m_renderer member
variable with a WebRenderObject for the layer’s renderer, and removed the initialization of
the element-related member variables that were removed.

  • Shared/WebRenderLayer.h:

(WebKit::WebRenderLayer::create): Changed to take a renderer instead of renderer and element
info.
(WebKit::WebRenderLayer::renderer): Added this getter.
(WebKit::WebRenderLayer::WebRenderLayer): Changed to take a renderer instead of renderer and
element info.

  • Shared/WebRenderObject.cpp:

(WebKit::WebRenderObject::create): Changed to pass true for the shouldIncludeDescendants
parameter.
(WebKit::WebRenderObject::WebRenderObject): Added a shouldIncludeDescdendants boolean
parameter. When it is false, the m_children array remains null. Added initialization of
member variables with the element’s tag name, id and class list.

  • Shared/WebRenderObject.h:

(WebKit::WebRenderObject::create): Added an overload that takes a RenderObject and creates
a shallow WebRenderObject.
(WebRenderObject): Changed to take element tag name, id and class list.
(WebKit::WebRenderObject::elementTagName): Added this getter.
(WebKit::WebRenderObject::elementID): Ditto.
(WebKit::WebRenderObject::elementClassNames): Ditto.
(WebKit::WebRenderObject::WebRenderObject):

12:57 PM Changeset in webkit [121583] by jamesr@google.com
  • 13 edits in trunk/Source

[chromium] Remove mapRect and mapQuad from WebTransformationMatrix
https://bugs.webkit.org/show_bug.cgi?id=90230

Reviewed by Adrienne Walker.

Source/Platform:

Removes clipping-unaware mapRect, mapQuad and projectPoint functions from the WebTransformationMatrix interface.

  • chromium/public/WebTransformationMatrix.h:

(WebTransformationMatrix):

Source/WebCore:

Replaces calls to WebTransformationMatrix::mapRect/mapQuad with clipping-aware calls to CCMathUtils. In most
cases, we do not expect clipping to happen. For others (such as area calculations in CCOverdrawMetrics) we can
handle a clipped quad easily.

  • platform/chromium/support/WebTransformationMatrix.cpp:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawTileQuad):

  • platform/graphics/chromium/RenderSurfaceChromium.cpp:

(WebCore::RenderSurfaceChromium::drawableContentRect):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::getDrawRect):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::transformSurfaceOpaqueRegion):
(WebCore::addOcclusionBehindLayer):

  • platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:

(WebCore):
(WebCore::polygonArea):
(WebCore::areaOfMappedQuad):
(WebCore::CCOverdrawMetrics::didUpload):
(WebCore::CCOverdrawMetrics::didCullForDrawing):
(WebCore::CCOverdrawMetrics::didDraw):

  • platform/graphics/chromium/cc/CCRenderPass.cpp:

(WebCore::CCRenderPass::appendQuadsToFillScreen):

  • platform/graphics/chromium/cc/CCRenderSurface.cpp:

(WebCore::CCRenderSurface::drawableContentRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.cpp:

(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

12:05 PM Changeset in webkit [121582] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac build fix after r121575. It rolls out r121547 but didn't roll out the follow up build fix r121553.

  • platform/graphics/mac/FontCustomPlatformData.h:

(FontCustomPlatformData):

12:03 PM Changeset in webkit [121581] by zandobersek@gmail.com
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed GTK gardening, adding a new baseline required after r121555.

  • platform/gtk/fast/viewport/viewport-91-expected.txt: Added.
11:58 AM Changeset in webkit [121580] by rniwa@webkit.org
  • 13 edits in trunk/Source/WebCore

Share the same cache in HTMLCollection and DynamicNodeLists
https://bugs.webkit.org/show_bug.cgi?id=90118

Reviewed by Anders Carlsson.

This patch introduces two new base classes DynamicNodeListCacheBase and HTMLCollectionCacheBase to share
the cache object between DynamicNodeList and HTMLCollection. HTMLCollectionCacheBase inherits from
DynamicNodeListCacheBase and contains extra caches and bit flags for HTMLCollection. DynamicNodeList::Cache
and HTMLCollection::Cache had been removed and flattened into these two classes for the easy inheritance.

In DynamicNodeList, we have a very straight forward one-to-one mapping from old Caches member variables:

m_caches.lastItem -> cachedItem()
m_caches.lastItemOffset -> cachedItemOffset()
m_caches.cachedLength -> cachedLength()
m_caches.isItemCacheValid -> isItemCacheValid()
m_caches.isLengthCacheValid -> isLengthCacheValid()
m_caches.type -> removed because it was never used.
m_caches.rootedAtDocument -> isRootedAtDocument()
m_caches.shouldInvalidateOnAttributeChange -> shouldInvalidateOnAttributeChange()

In HTMLCollection, there is one semantic change in the way item cache is managed. Previously, we only had
m_cache.current which was used as both cachedItem() and isItemCacheValid() (not valid when current is null).
There are some asymmetric code changes due to one-to-many relationship. Also, all method names have been updated
to use that of DynamicNodeList terminology. Thus we have the following correspondence:

m_cache.current -> cachedItem() / isItemCacheValid()
m_cache.position -> cachedItemOffset()
m_cache.length -> cachedLength()
m_cache.elementsArrayPosition -> cachedElementsArrayOffset()
m_cache.hasLength -> isLengthCacheValid()
m_cache.hasNameCache -> hasNameCache() / setHasNameCache()
m_cache.idCache -> idCache() / addIdCache()
m_cache.nameCache -> idCache() / addNameCache()

In addition, we had to rename HTMLCollection::clearCache to invalidateCache to avoid the name collision with
HTMLCollectionCacheBase::clearCache.

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):

  • dom/DynamicNodeList.h:

(DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isRootedAtDocument):
(WebCore::DynamicNodeListCacheBase::shouldInvalidateOnAttributeChange):
(WebCore::DynamicNodeListCacheBase::isItemCacheValid):
(WebCore::DynamicNodeListCacheBase::cachedItem):
(WebCore::DynamicNodeListCacheBase::cachedItemOffset):
(WebCore::DynamicNodeListCacheBase::isLengthCacheValid):
(WebCore::DynamicNodeListCacheBase::cachedLength):
(WebCore::DynamicNodeListCacheBase::setLengthCache):
(WebCore::DynamicNodeListCacheBase::setItemCache):
(WebCore::DynamicNodeListCacheBase::clearCache):
(WebCore):
(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::invalidateCache):
(WebCore::DynamicNodeList::rootNode):
(DynamicNodeList):

  • html/HTMLAllCollection.cpp:

(WebCore::HTMLAllCollection::namedItemWithIndex):

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::isAcceptableElement):
(WebCore::HTMLCollection::itemAfter):
(WebCore::HTMLCollection::length):
(WebCore::HTMLCollection::item):
(WebCore::HTMLCollection::checkForNameMatch):
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):
(WebCore::HTMLCollectionCacheBase::append):

  • html/HTMLCollection.h:

(HTMLCollectionCacheBase):
(WebCore::HTMLCollectionCacheBase::HTMLCollectionCacheBase):
(WebCore::HTMLCollectionCacheBase::type):
(WebCore::HTMLCollectionCacheBase::clearCache):
(WebCore::HTMLCollectionCacheBase::setItemCache):
(WebCore::HTMLCollectionCacheBase::cachedElementsArrayOffset):
(WebCore::HTMLCollectionCacheBase::includeChildren):
(WebCore::HTMLCollectionCacheBase::cacheTreeVersion):
(WebCore::HTMLCollectionCacheBase::idCache):
(WebCore::HTMLCollectionCacheBase::nameCache):
(WebCore::HTMLCollectionCacheBase::appendIdCache):
(WebCore::HTMLCollectionCacheBase::appendNameCache):
(WebCore::HTMLCollectionCacheBase::hasNameCache):
(WebCore::HTMLCollectionCacheBase::setHasNameCache):
(WebCore):
(WebCore::HTMLCollection::isEmpty):
(WebCore::HTMLCollection::hasExactlyOneItem):
(WebCore::HTMLCollection::base):
(HTMLCollection):

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::item):
(WebCore::HTMLFormCollection::updateNameCache):

  • html/HTMLNameCollection.cpp:

(WebCore::HTMLNameCollection::itemAfter):

  • html/HTMLNameCollection.h:

(HTMLNameCollection):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::invalidateSelectedItems):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::HTMLTableRowsCollection::itemAfter):

  • html/HTMLTableRowsCollection.h:

(HTMLTableRowsCollection):

11:52 AM Changeset in webkit [121579] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] [GTK] [QT] fast/viewport/viewport-91.html is failing after r121555
https://bugs.webkit.org/show_bug.cgi?id=90287

Unreviewed gardening. Skip fast/viewport/viewport-91.html
for EFL, GTK and QT ports. The test is failing after r121555.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-29

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
11:43 AM Changeset in webkit [121578] by tony@chromium.org
  • 18 edits in trunk/Source

Unreviewed, rolling out r121572.
http://trac.webkit.org/changeset/121572
https://bugs.webkit.org/show_bug.cgi?id=90249

Breaks Mac build since it depends on r121547, which was rolled
out

Source/WebCore:

  • WebCore.exp.in:
  • page/AlternativeTextClient.h:
  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::populate):

  • platform/graphics/cg/ImageBufferDataCG.h:
  • platform/graphics/mac/GraphicsContextMac.mm:

(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/network/Credential.h:
  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore):
(WebCore::initializeMaximumHTTPConnectionCountPerHost):

  • platform/text/TextChecking.h:

(WebCore):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::containsPaintedContent):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):

  • WebProcess/WebCoreSupport/WebEditorClient.h:

Source/WTF:

  • wtf/ThreadingPthreads.cpp:

(WTF::initializeCurrentThreadInternal):

11:28 AM Changeset in webkit [121577] by ojan@chromium.org
  • 5 edits in trunk/Tools

Fix rebaselining for Qt and Apple ports
https://bugs.webkit.org/show_bug.cgi?id=90204

Reviewed by Dirk Pranke.

-Apporpriately put wk2 results in the -wk2 directories.
-Since Qt and Apple-Win don't have bots that correspond to the
platform/qt and platform/win directories, we need to fudge it
and always put the results in those directories for those ports.

  • Scripts/webkitpy/layout_tests/port/builders.py:

(rebaseline_override_dir):

  • Scripts/webkitpy/layout_tests/port/factory.py:

(_builder_options):
Identify webkit2 builders by the WK2 in the builder name.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineTest._baseline_directory):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaseline.test_baseline_directory):

11:27 AM Changeset in webkit [121576] by jpetsovits@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

Add blitVisibleContents() as public API.
https://bugs.webkit.org/show_bug.cgi?id=90211

Reviewed by Adam Treat.

We keep blitContents() (with src/dst rectangles)
for compatibility with older Cascades sprints for now,
but want to switch to always blitting the full viewport
and this is a good first step.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStore::blitVisibleContents):
(WebKit):

  • Api/BackingStore.h:
11:14 AM Changeset in webkit [121575] by tony@chromium.org
  • 21 edits in trunk/Source/WebCore

Unreviewed, rolling out r121547.
http://trac.webkit.org/changeset/121547
https://bugs.webkit.org/show_bug.cgi?id=90256

Breaks Chromium Mac build

  • platform/LocalizedStrings.cpp:

(WebCore::imageTitle):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setAllowsFontSmoothing):

  • platform/graphics/cg/ImageCG.cpp:

(WebCore::Image::drawPattern):

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::clear):

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::boundingRect):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore):
(WebCore::canSetCascadeListForCustomFont):
(WebCore::FontPlatformData::ctFont):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/graphics/mac/ComplexTextController.cpp:
  • platform/graphics/mac/FontCacheMac.mm:

(WebCore):
(WebCore::fontCacheATSNotificationCallback):
(WebCore::FontCache::platformInit):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::createFontCustomPlatformData):

  • platform/graphics/mac/FontCustomPlatformData.h:

(WebCore::FontCustomPlatformData::FontCustomPlatformData):

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore::SimpleFontData::platformInit):

  • platform/graphics/mac/WebLayer.h:
  • platform/mac/CursorMac.mm:

(WebCore::Cursor::ensurePlatformCursor):

  • platform/mac/DisplaySleepDisabler.cpp:

(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore):
(WebCore::DisplaySleepDisabler::systemActivityTimerFired):

  • platform/mac/DisplaySleepDisabler.h:

(DisplaySleepDisabler):

  • platform/mac/HTMLConverter.h:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/PopupMenuMac.mm:

(WebCore::PopupMenuMac::populate):

  • platform/mac/ScrollElasticityController.mm:
10:55 AM Changeset in webkit [121574] by commit-queue@webkit.org
  • 27 edits
    7 adds in trunk/Source

[chromium] Adding PrioritizedTexture and replacing ContentsTextureManager
https://bugs.webkit.org/show_bug.cgi?id=84308

Patch by Eric Penner <epenner@google.com> on 2012-06-29
Reviewed by Adrienne Walker.

Source/WebCore:

PrioritizedTextures have a priority such that all texture requests can be
prioritized. There are three steps involved:

  • Call setRequestPriority()
  • Check if the request succeeded with canAcquireBackingTexture()
  • Call acquireBackingTexture() when uploading a new texture.

Internally both the texture requests and the backing textures get sorted.
Requests are sorted so they can be prioritized. Backing textures are sorted
so that they can be recycled/evicted in the right order (lowest priority first).

Prioritizing textures doesn't assign backing textures to texture requests but
rather just marks which textures can have a backing texture "when needed". This
allows us to keep the old textures in use as long as possible.

The unit tests support all the use cases from the original texture manager
but also adds assumptions about priority order throughout all the tests. The
function assertInvariants() is added to test the validity of the manager
and all textures/allocations within it.

The TiledLayerChromium tests are updated to request textures first with
prioritizeTextures(), and update them with the updater (such that allocate
gets called) before pushPropertiesTo is called (when they need to be valid).

  • WebCore.gypi:
  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::BitmapCanvasLayerTextureUpdater::createTexture):
(WebCore::BitmapCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:

(WebCore):
(Texture):
(BitmapCanvasLayerTextureUpdater):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::createTexture):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:

(Texture):
(BitmapSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::setTexturePriorities):
(WebCore):
(WebCore::ContentLayerChromium::update):

  • platform/graphics/chromium/ContentLayerChromium.h:

(ContentLayerChromium):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::createAcceleratedCanvas):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::createTexture):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:

(Texture):
(FrameBufferSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerTextureUpdater::Texture::Texture):
(WebCore::ImageLayerTextureUpdater::createTexture):
(WebCore::ImageLayerTextureUpdater::updateTextureRect):
(WebCore::ImageLayerChromium::setTexturePriorities):
(WebCore):

  • platform/graphics/chromium/ImageLayerChromium.h:

(ImageLayerChromium):

  • platform/graphics/chromium/LayerChromium.h:

(LayerChromium):
(WebCore::LayerChromium::setTexturePriorities):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore::LayerTextureUpdater::Texture::texture):
(WebCore::LayerTextureUpdater::Texture::swapTextureWith):
(WebCore::LayerTextureUpdater::Texture::Texture):
(Texture):

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarLayerChromium::pushPropertiesTo):
(WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):
(WebCore::ScrollbarLayerChromium::updatePart):
(WebCore):
(WebCore::ScrollbarLayerChromium::setTexturePriorities):

  • platform/graphics/chromium/ScrollbarLayerChromium.h:

(ScrollbarLayerChromium):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::managedTexture):
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::textureManager):
(WebCore::TiledLayerChromium::createTile):
(WebCore::TiledLayerChromium::tileNeedsBufferedUpdate):
(WebCore::TiledLayerChromium::updateTiles):
(WebCore::TiledLayerChromium::setTexturePriorities):
(WebCore):
(WebCore::TiledLayerChromium::setTexturePrioritiesInRect):
(WebCore::TiledLayerChromium::resetUpdateState):
(WebCore::TiledLayerChromium::updateLayerRect):
(WebCore::TiledLayerChromium::idleUpdateLayerRect):
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):

  • platform/graphics/chromium/TiledLayerChromium.h:

(TiledLayerChromium):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::deleteContentsTexturesOnImplThread):
(WebCore::CCLayerTreeHost::beginCommitOnImplThread):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::evictAllContentTextures):
(WebCore::CCLayerTreeHost::contentsTextureManager):
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::prioritizeTextures):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore):
(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCPrioritizedTexture.cpp: Added.

(WebCore):
(WebCore::CCPrioritizedTexture::CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::~CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::setTextureManager):
(WebCore::CCPrioritizedTexture::setDimensions):
(WebCore::CCPrioritizedTexture::requestLate):
(WebCore::CCPrioritizedTexture::acquireBackingTexture):
(WebCore::CCPrioritizedTexture::textureId):
(WebCore::CCPrioritizedTexture::bindTexture):
(WebCore::CCPrioritizedTexture::framebufferTexture2D):
(WebCore::CCPrioritizedTexture::setCurrentBacking):

  • platform/graphics/chromium/cc/CCPrioritizedTexture.h: Added.

(WebCore):
(CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::create):
(WebCore::CCPrioritizedTexture::textureManager):
(WebCore::CCPrioritizedTexture::format):
(WebCore::CCPrioritizedTexture::size):
(WebCore::CCPrioritizedTexture::memorySizeBytes):
(WebCore::CCPrioritizedTexture::setRequestPriority):
(WebCore::CCPrioritizedTexture::requestPriority):
(WebCore::CCPrioritizedTexture::canAcquireBackingTexture):
(WebCore::CCPrioritizedTexture::haveBackingTexture):
(Backing):
(WebCore::CCPrioritizedTexture::Backing::size):
(WebCore::CCPrioritizedTexture::Backing::format):
(WebCore::CCPrioritizedTexture::Backing::memorySizeBytes):
(WebCore::CCPrioritizedTexture::Backing::textureId):
(WebCore::CCPrioritizedTexture::Backing::currentTexture):
(WebCore::CCPrioritizedTexture::Backing::setCurrentTexture):
(WebCore::CCPrioritizedTexture::Backing::Backing):
(WebCore::CCPrioritizedTexture::Backing::~Backing):
(WebCore::CCPrioritizedTexture::isAbovePriorityCutoff):
(WebCore::CCPrioritizedTexture::setAbovePriorityCutoff):
(WebCore::CCPrioritizedTexture::setManagerInternal):
(WebCore::CCPrioritizedTexture::currentBacking):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp: Added.

(WebCore):
(WebCore::CCPrioritizedTextureManager::CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::~CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::setMemoryAllocationLimitBytes):
(WebCore::CCPrioritizedTextureManager::prioritizeTextures):
(WebCore::CCPrioritizedTextureManager::clearPriorities):
(WebCore::CCPrioritizedTextureManager::requestLate):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::allBackingTexturesWereDeleted):
(WebCore::CCPrioritizedTextureManager::unlink):
(WebCore::CCPrioritizedTextureManager::link):
(WebCore::CCPrioritizedTextureManager::registerTexture):
(WebCore::CCPrioritizedTextureManager::unregisterTexture):
(WebCore::CCPrioritizedTextureManager::returnBackingTexture):
(WebCore::CCPrioritizedTextureManager::createBacking):
(WebCore::CCPrioritizedTextureManager::destroyBacking):
(WebCore::CCPrioritizedTextureManager::assertInvariants):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.h: Added.

(WebCore):
(CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::create):
(WebCore::CCPrioritizedTextureManager::createTexture):
(WebCore::CCPrioritizedTextureManager::memoryUseBytes):
(WebCore::CCPrioritizedTextureManager::memoryAboveCutoffBytes):
(WebCore::CCPrioritizedTextureManager::setMaxMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::maxMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::setPreferredMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::preferredMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::setMaxMemoryPriorityCutoff):
(WebCore::CCPrioritizedTextureManager::maxMemoryPriorityCutoff):
(WebCore::CCPrioritizedTextureManager::compareTextures):
(WebCore::CCPrioritizedTextureManager::compareBackings):

  • platform/graphics/chromium/cc/CCPriorityCalculator.cpp: Added.

(WebCore):
(WebCore::CCPriorityCalculator::uiPriority):
(WebCore::CCPriorityCalculator::visiblePriority):
(WebCore::CCPriorityCalculator::lingeringPriority):
(WebCore::CCPriorityCalculator::priorityFromDistance):
(WebCore::CCPriorityCalculator::priorityFromVisibility):

  • platform/graphics/chromium/cc/CCPriorityCalculator.h: Added.

(WebCore):
(CCPriorityCalculator):
(WebCore::CCPriorityCalculator::highestPriority):
(WebCore::CCPriorityCalculator::lowestPriority):
(WebCore::CCPriorityCalculator::priorityIsLower):
(WebCore::CCPriorityCalculator::priorityIsHigher):

  • platform/graphics/chromium/cc/CCTextureUpdater.cpp:

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):

  • tests/CCPrioritizedTextureTest.cpp: Added.

(WTF):
(CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::~CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::texturesMemorySize):
(WTF::CCPrioritizedTextureTest::createManager):
(WTF::CCPrioritizedTextureTest::validateTexture):
(WTF::CCPrioritizedTextureTest::allocator):
(WTF::TEST_F):

  • tests/CCTiledLayerTestCommon.cpp:

(WebKitTests::FakeLayerTextureUpdater::Texture::Texture):
(WebKitTests::FakeLayerTextureUpdater::Texture::updateRect):
(WebKitTests::FakeLayerTextureUpdater::createTexture):
(WebKitTests::FakeTiledLayerChromium::FakeTiledLayerChromium):
(WebKitTests::FakeTiledLayerWithScaledBounds::FakeTiledLayerWithScaledBounds):

  • tests/CCTiledLayerTestCommon.h:

(Texture):
(FakeLayerTextureUpdater):
(FakeTiledLayerChromium):
(FakeTiledLayerWithScaledBounds):

  • tests/TiledLayerChromiumTest.cpp:
10:47 AM Changeset in webkit [121573] by Lucas Forschler
  • 3 edits in branches/safari-534.57-branch/Source/WebCore

Merge <rdar://problem/11736630>

10:36 AM Changeset in webkit [121572] by eric@webkit.org
  • 18 edits in trunk/Source

Remove BUILDING_ON_LEOPARD now that no ports build on Leopard
https://bugs.webkit.org/show_bug.cgi?id=90249

Reviewed by Ryosuke Niwa.

Source/WebCore:

I don't think I quite got it all yet, but this is another step towards
removing Leopard support in WebCore.

  • WebCore.exp.in:
  • page/AlternativeTextClient.h:
  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::populate):

  • platform/graphics/cg/ImageBufferDataCG.h:
  • platform/graphics/mac/GraphicsContextMac.mm:

(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/network/Credential.h:
  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore):
(WebCore::initializeMaximumHTTPConnectionCountPerHost):

  • platform/text/TextChecking.h:

(WebCore):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::containsPaintedContent):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):

  • WebProcess/WebCoreSupport/WebEditorClient.h:

Source/WTF:

  • wtf/ThreadingPthreads.cpp:

(WTF::initializeCurrentThreadInternal):

10:29 AM Changeset in webkit [121571] by zoltan@webkit.org
  • 3 edits in trunk/Tools

Add support for --force parameter to run-performance-tests
https://bugs.webkit.org/show_bug.cgi?id=90279

Reviewed by Dirk Pranke.

It's helpful to be able to run tests from the Skipped list of the performance tests.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._collect_tests):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Add test.

(test_collect_tests_with_skipped_list):

10:20 AM Changeset in webkit [121570] by kling@webkit.org
  • 9 edits in trunk/Source/WebCore

Unreviewed, rolling out r121562.
http://trac.webkit.org/changeset/121562
https://bugs.webkit.org/show_bug.cgi?id=89945

Broke a couple of editing/pasteboard tests.

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::length):
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::cssText):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::copy):
(WebCore::PropertySetCSSStyleDeclaration::makeMutable):
(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
(WebCore::InlineCSSStyleDeclaration::didMutate):
(WebCore::InlineCSSStyleDeclaration::parentStyleSheet):

  • css/PropertySetCSSStyleDeclaration.h:

(WebCore::PropertySetCSSStyleDeclaration::clearParentElement):
(PropertySetCSSStyleDeclaration):
(WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::ensureInlineCSSStyleDeclaration):
(WebCore::StylePropertySet::clearParentElement):
(WebCore):

  • css/StylePropertySet.h:

(StylePropertySet):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::destroyInlineStyle):
(WebCore):

  • dom/ElementAttributeData.h:

(ElementAttributeData):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::~StyledElement):
(WebCore):
(WebCore::StyledElement::styleAttributeChanged):

  • dom/StyledElement.h:

(StyledElement):
(WebCore::StyledElement::destroyInlineStyle):

10:17 AM Changeset in webkit [121569] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Add missing support for tiled shadow blur on fillRect
https://bugs.webkit.org/show_bug.cgi?id=90082

Patch by Bruno de Oliveira Abinader <Bruno de Oliveira Abinader> on 2012-06-29
Reviewed by Noam Rosenthal.

This overloaded fillRect implementation also supports this optimization in
certain situations.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillRect):

9:48 AM Changeset in webkit [121568] by tony@chromium.org
  • 8 edits in trunk

[GTK] Enable CSS grid layout LayoutTests on GTK+
https://bugs.webkit.org/show_bug.cgi?id=90226

Reviewed by Martin Robinson.

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setCSSGridLayoutEnabled): Pass through to Settings object.

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Tools:

This feature is disabled via Settings by default, but for testing,
we enable it using layoutTestController.overridePreferences. Add the
necessary plumbing for DRT.

WTR already works because support was added for Apple Mac earlier.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues): Feature is off by default.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::overridePreference): Add handling of WebKitCSSGridLayoutEnabled.

LayoutTests:

  • platform/gtk/TestExpectations: Tests should pass.
9:01 AM Changeset in webkit [121567] by senorblanco@chromium.org
  • 87 edits
    18 adds
    18 deletes in trunk/LayoutTests

Unreviewed gardening.

Rebaseline tests affected by r121452.

  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-linux/svg/carto.net/scrollbar-expected.png:
  • platform/chromium-mac-snowleopard/fast/borders/border-image-scale-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-mac-snowleopard/svg/carto.net/scrollbar-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/image-small-width-height-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
  • platform/chromium-mac-snowleopard/transitions/cross-fade-background-image-expected.png:
  • platform/chromium-mac/fast/borders/border-image-scale-transform-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png:
  • platform/chromium-mac/svg/carto.net/scrollbar-expected.png:
  • platform/chromium-mac/svg/custom/image-small-width-height-expected.png:
  • platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
  • platform/chromium-mac/transitions/cross-fade-background-image-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-win-xp/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-win-xp/svg/carto.net: Removed.
  • platform/chromium-win/fast/borders/border-image-scale-transform-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png:
  • platform/chromium-win/svg/carto.net/scrollbar-expected.png:
  • platform/chromium-win/svg/custom/image-small-width-height-expected.png:
  • platform/chromium-win/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
  • platform/chromium-win/transitions/cross-fade-background-image-expected.png:
  • platform/chromium/TestExpectations:
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
  • platform/win-7sp0/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
  • platform/win-7sp0/svg/carto.net: Added.
  • platform/win-7sp0/svg/carto.net/scrollbar-expected.png: Added.
  • platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Removed.
  • platform/win/svg/W3C-I18N/text-anchor-no-markup-expected.png: Removed.
  • platform/win/svg/carto.net: Removed.
  • platform/win/svg/carto.net/scrollbar-expected.png: Removed.
8:57 AM Changeset in webkit [121566] by beidson@apple.com
  • 3 edits in trunk/Source/WebCore

Build fix - These should not be executable!

Rubberstamped by Jessie Berlin.

  • loader/cache/CachedSVGDocument.cpp: Removed property svn:executable.
  • loader/cache/CachedSVGDocument.h: Removed property svn:executable.
8:30 AM Changeset in webkit [121565] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Layout Test inspector/debugger/debugger-compile-and-run.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90285

Reviewed by Pavel Feldman.

  • inspector/debugger/debugger-compile-and-run.html:
8:27 AM Changeset in webkit [121564] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Update FIXME comment in XMLDocumentParser::wellFormed
https://bugs.webkit.org/show_bug.cgi?id=90223

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

XMLDocumentParser::wellFormed is still used by the XMLHttpRequest to check if the responseXML was well formed.
So it can't be removed.

  • xml/parser/XMLDocumentParser.h:

(XMLDocumentParser):

8:23 AM Changeset in webkit [121563] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] Added Qt port for garden-o-matic.
https://bugs.webkit.org/show_bug.cgi?id=82719

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-06-29
Reviewed by Adam Barth.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:

(.):

8:21 AM Changeset in webkit [121562] by kling@webkit.org
  • 9 edits in trunk/Source/WebCore

Separate mutating CSSStyleDeclaration operations.
<http://webkit.org/b/89945>

Reviewed by Antti Koivisto.

Use separate paths for mutating the StylePropertySet wrapped by a CSSStyleDeclaration.
PropertySetCSSStyleDeclaration now has:

  • propertySet() const
  • ensureMutablePropertySet()

This is prep work for supporting immutable ElementAttributeData objects, the idea being
that calling ensureMutablePropertySet() may cause the element to convert its internal
attribute storage (which also holds the inline StylePropertySet.)

To that end, also removed the weird logic that allowed you to kill the inline style object
by removing the 'style' attribute. We now simply clear out all the properties in that case
which saves us a bunch of hassle (no need for a ~StyledElement anymore.)
Note that InlineCSSStyleDeclaration now refs the element rather than the inline style.

There should be no web-facing behavior change from any of this.

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::length):
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::cssText):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::copy):
(WebCore::PropertySetCSSStyleDeclaration::makeMutable):
(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
(WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):
(WebCore::InlineCSSStyleDeclaration::ref):
(WebCore::InlineCSSStyleDeclaration::deref):
(WebCore::InlineCSSStyleDeclaration::didMutate):
(WebCore::InlineCSSStyleDeclaration::parentStyleSheet):
(WebCore::InlineCSSStyleDeclaration::ensureMutablePropertySet):

  • css/PropertySetCSSStyleDeclaration.h:

(PropertySetCSSStyleDeclaration):
(WebCore::PropertySetCSSStyleDeclaration::propertySet):
(WebCore::PropertySetCSSStyleDeclaration::ensureMutablePropertySet):
(InlineCSSStyleDeclaration):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::ensureInlineCSSStyleDeclaration):

  • css/StylePropertySet.h:

(StylePropertySet):

  • dom/ElementAttributeData.cpp:
  • dom/ElementAttributeData.h:

(ElementAttributeData):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::styleAttributeChanged):

  • dom/StyledElement.h:

(WebCore::StyledElement::~StyledElement):
(StyledElement):

8:19 AM Changeset in webkit [121561] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Roll chromium rev to 144906
https://bugs.webkit.org/show_bug.cgi?id=90278

Unreviewed. Deps roll.

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-29

  • DEPS:
8:16 AM Changeset in webkit [121560] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Don't call SegmentedString::toString() twice in XMLDocumentParser::append(const SegmentedString&)
https://bugs.webkit.org/show_bug.cgi?id=90254

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

We can reuse the local variable parseString instead of calling s.toString() again.
No behavior change, so no new tests.

  • xml/parser/XMLDocumentParser.cpp:

(WebCore::XMLDocumentParser::append):

7:38 AM Changeset in webkit [121559] by zandobersek@gmail.com
  • 2 edits in trunk

Unreviewed build fix after r121518, adding a missing symbol to symbols.filter.

  • Source/autotools/symbols.filter:
7:35 AM Changeset in webkit [121558] by senorblanco@chromium.org
  • 2 edits
    15 adds
    8 deletes in trunk/LayoutTests

[chromium] Unreviewed gardening.

New baselines for tests added in r121513.

  • platform/chromium-linux/css3/filters/effect-reference-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-expected.txt: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-external-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-external-expected.txt: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-hw-expected.txt: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-ordering-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-ordering-expected.txt: Removed.
  • platform/chromium-mac/css3/filters/effect-reference-expected.png: Added.
  • platform/chromium-mac/css3/filters/effect-reference-expected.txt: Added.
  • platform/chromium-mac/css3/filters/effect-reference-external-expected.png: Added.
  • platform/chromium-mac/css3/filters/effect-reference-hw-expected.png: Added.
  • platform/chromium-mac/css3/filters/effect-reference-hw-expected.txt: Added.
  • platform/chromium-mac/css3/filters/effect-reference-ordering-expected.png: Added.
  • platform/chromium-mac/css3/filters/effect-reference-ordering-expected.txt: Added.
  • platform/chromium-win/css3/filters/effect-reference-expected.png: Added.
  • platform/chromium-win/css3/filters/effect-reference-expected.txt: Added.
  • platform/chromium-win/css3/filters/effect-reference-external-expected.png: Added.
  • platform/chromium-win/css3/filters/effect-reference-hw-expected.png: Added.
  • platform/chromium-win/css3/filters/effect-reference-hw-expected.txt: Added.
  • platform/chromium-win/css3/filters/effect-reference-ordering-expected.png: Added.
  • platform/chromium-win/css3/filters/effect-reference-ordering-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/css3/filters/effect-reference-external-expected.txt: Added.
7:31 AM Changeset in webkit [121557] by mihnea@adobe.com
  • 7 edits
    10 adds in trunk

Crash when flowing a fixed positioned element into a region.
https://bugs.webkit.org/show_bug.cgi?id=88133

Reviewed by Julien Chaffraix and Abhishek Arya.

Source/WebCore:

When a fixed positioned element is collected into a named flow, we have to make sure
that such element has the RenderFlowThread as containing block instead of RenderView,
so that the fixed positioned element is laid out properly.
Making the RenderFlowThread the top most containing block for named flow elements required the
modification of RenderLayer::convertToLayerCoords so that the fixed positioned elements inside the
named flow take the same code path as the absolute positioned elements inside the named flow.
I also added a method, checkBlockPositionedObjectsNeedLayout, in order to verify that a block
that is ending its layout, setNeedsLayout(false), has all the positioned children laid out.
This way, we will hit an assertion if an out-of-flow positioned child inside a RenderFlowThread
is not laid out after the RenderFlowThread is laid out.

Tests: fast/regions/absolute-pos-elem-in-named-flow.html

fast/regions/absolute-pos-elem-in-region.html
fast/regions/fixed-pos-elem-in-named-flow.html
fast/regions/fixed-pos-elem-in-named-flow2.html
fast/regions/fixed-pos-elem-in-region.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::checkPositionedObjectsNeedLayout):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::convertToLayerCoords):

  • rendering/RenderObject.cpp:

(WebCore):
(WebCore::RenderObject::checkBlockPositionedObjectsNeedLayout):
(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::container):

  • rendering/RenderObject.h:

(RenderObject):
(WebCore::RenderObject::setNeedsLayout):

LayoutTests:

When a fixed positioned element is collected into a named flow, we have to make sure
that such element has the RenderFlowThread as containing block instead of RenderView,
so that the fixed positioned element is laid out properly.

  • fast/regions/absolute-pos-elem-in-named-flow-expected.txt: Added.
  • fast/regions/absolute-pos-elem-in-named-flow.html: Added.
  • fast/regions/absolute-pos-elem-in-region-expected.html: Added.
  • fast/regions/absolute-pos-elem-in-region.html: Added.
  • fast/regions/fixed-pos-elem-in-named-flow-expected.txt: Added.
  • fast/regions/fixed-pos-elem-in-named-flow.html: Added.
  • fast/regions/fixed-pos-elem-in-named-flow2-expected.txt: Added.
  • fast/regions/fixed-pos-elem-in-named-flow2.html: Added.
  • fast/regions/fixed-pos-elem-in-region-expected.html: Added.
  • fast/regions/fixed-pos-elem-in-region.html: Added.
6:52 AM Changeset in webkit [121556] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: [Device Metrics] "Fit window" option inhibits adjusting the page zoom factor
https://bugs.webkit.org/show_bug.cgi?id=90187

Reviewed by Vsevolod Vlasov.

Source/WebKit/chromium:

This change fixes the stale zoom factor, which does not get updated upon browser window resize in the "Fit window" mode.
The expected test results have little to do with actual dimensions of the test page in Chrome on a real mobile device,
since Chrome on the mobile uses a different zooming technique (pageScaleFactor-based viewport using layout width
rather than plain pageZoomFactor) and font boosting, which has not been upstreamed yet.

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::DeviceMetricsSupport::autoZoomPageToFitWidth):
(WebKit::DeviceMetricsSupport::ensureOriginalZoomFactor):

LayoutTests:

  • inspector/styles/override-screen-size-expected.txt:
  • platform/chromium/inspector/styles/device-metrics-fit-window-expected.txt:
5:51 AM Changeset in webkit [121555] by commit-queue@webkit.org
  • 24 edits in trunk/Source

Don't hardcode target dpi of 160 (it should be 96 on desktop)
https://bugs.webkit.org/show_bug.cgi?id=88114

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-06-29
Reviewed by Adam Barth.

Source/WebCore:

No behavioural change, current tests in fast/viewport cover all
functionality.

  • WebCore.exp.in: Updated symbol for computeViewportAttributes.
  • dom/ViewportArguments.cpp: Use new parameter for devicePixelRatio

and don't calculate it anymore.

(WebCore::computeViewportAttributes):

  • dom/ViewportArguments.h: Change the deviceDPI parameter to

devicePixelRatio and put the onus
on the embedder to supply the
correct value. Add temporary constant.

(WebCore):

Source/WebKit/blackberry:

Added new WebSetting to specify what the devicePixelRatio should be.
Updated the call to computeViewportAttributes.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):

  • Api/WebSettings.cpp:

(WebKit):
(BlackBerry::WebKit::WebSettings::standardSettings):
(BlackBerry::WebKit::WebSettings::devicePixelRatio):
(BlackBerry::WebKit::WebSettings::setDevicePixelRatio):

  • Api/WebSettings.h:
  • WebKitSupport/DumpRenderTreeSupport.cpp:

(DumpRenderTreeSupport::dumpConfigurationForViewport):

Source/WebKit/chromium:

Updated the call to computeViewportAttributes.

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):

Source/WebKit/efl:

Updated the call to computeViewportAttributes.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::dumpConfigurationForViewport):

  • ewk/ewk_view.cpp:

(_ewk_view_viewport_attributes_compute):

Source/WebKit/gtk:

Updated the call to computeViewportAttributes.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::dumpConfigurationForViewport):

  • webkit/webkitviewportattributes.cpp:

(webkitViewportAttributesRecompute):

Source/WebKit/qt:

Updated the call to computeViewportAttributes.

  • Api/qwebpage.cpp:

(QWebPage::viewportAttributesForSize):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::viewportAsText):

Source/WebKit2:

Updated the call to computeViewportAttributes.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):
(WebKit::WebPage::viewportConfigurationAsText):

5:49 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
5:47 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
5:25 AM Changeset in webkit [121554] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

JS binding code generator doesn't handle "attribute unsigned long[]" well.
https://bugs.webkit.org/show_bug.cgi?id=84540

Patch by Vineet Chaudhary <Vineet> on 2012-06-29
Reviewed by Kentaro Hara.

In JS/V8 Bindings using traits instead of specialised functions.
Also added support for "unsigned long" in JSDOMBinding and V8Binding.

No new tests, as no behavioural changes.

  • bindings/js/JSDOMBinding.h:

(WebCore::Traits::arrayJSValue):
(WebCore::jsArray):

  • bindings/v8/V8Binding.h:

(WebCore::Traits::arrayV8Value):
(WebCore::v8Array):

5:23 AM Changeset in webkit [121553] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed mac build fix after r121547.
Remove the now-unused FontCustomPlatformData::m_atsContainer.

  • platform/graphics/mac/FontCustomPlatformData.h:

(FontCustomPlatformData):

5:08 AM Changeset in webkit [121552] by tkent@chromium.org
  • 3 edits
    2 adds in trunk

<textarea> unnecessarily saves the value in some cases
https://bugs.webkit.org/show_bug.cgi?id=90259

Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/textarea/textarea-state-restore.html

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::saveFormControlState):
We apply EOL normalization to value(), but don't apply it to
defaultValue(). Also value() can return a null string, which never
equals to any strings. To check m_isDirty is what we need..

LayoutTests:

  • fast/forms/textarea/textarea-state-restore-expected.txt: Added.
  • fast/forms/textarea/textarea-state-restore.html: Added.
5:06 AM Changeset in webkit [121551] by apavlov@chromium.org
  • 8 edits in trunk/Source/WebCore

Web Inspector: Provide source data for all known rule types in CSSParser, except "keyframe" and "region"
https://bugs.webkit.org/show_bug.cgi?id=88420

Reviewed by Antti Koivisto.

This change transitions the CSS source code model from a flat list of style rules to a tree of all types of CSS rules
(some of them lack actual source code data), which is crucial to model-based CSS stylesheet source editing
(add/remove CSS rule) and navigation.
As a side effect, the CSS parsing performance on PerformanceTests/Parser/css-parser-yui.html is improved roughly by 2%:

  • originally: median= 282.051282051 runs/s, stdev= 1.51236798322 runs/s, min= 278.481012658 runs/s, max= 283.870967742 runs/s
  • with patch applied: median= 287.206266319 runs/s, stdev= 1.31518320219 runs/s, min= 282.051282051 runs/s, max= 288.713910761 runs/s

No new tests, as there is no client-visible behavior change. Existing Inspector tests will be modified
to test the new data provided, along with the necessary Inspector plumbing.

  • css/CSSGrammar.y:
  • css/CSSMediaRule.cpp:

(WebCore::CSSMediaRule::reattach): Check for mediaQueries() validity before reattaching.

  • css/CSSParser.cpp: Unless explicitly specified below, the method changes are related to the extension of the

source-based CSS model provided by the parser.
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::setupParser):
(WebCore::CSSParser::parseDeclaration): Accept a CSSRuleSourceData for filling, since it now contains
the related style source range.
(WebCore::CSSParser::createImportRule):
(WebCore::CSSParser::createMediaRule): Create CSSMediaRule even if media and rules are empty,
which is consistent with Mozilla.
(WebCore::CSSParser::processAndAddNewRuleToSourceTreeIfNeeded):
(WebCore):
(WebCore::CSSParser::addNewRuleToSourceTree):
(WebCore::CSSParser::createKeyframesRule):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createRegionRule):
(WebCore::CSSParser::fixUnparsedPropertyRanges):
(WebCore::CSSParser::markRuleHeaderStart):
(WebCore::CSSParser::markRuleHeaderEnd):
(WebCore::CSSParser::markRuleBodyStart):
(WebCore::CSSParser::markRuleBodyEnd):
(WebCore::CSSParser::markPropertyStart):
(WebCore::CSSParser::markPropertyEnd):

  • css/CSSParser.h:

(CSSParser):

  • css/CSSPropertySourceData.h: Extend the model to handle more types of rules and their containments.

(WebCore):
(WebCore::CSSRuleSourceData::create):
(WebCore::CSSRuleSourceData::createUnknown):
(CSSRuleSourceData):
(WebCore::CSSRuleSourceData::CSSRuleSourceData):

  • inspector/InspectorStyleSheet.cpp: Follow the CSSParser API changes but retain the flat stored CSS rules structure.

(ParsedStyleSheet):
(flattenSourceData): Flatten the rule tree to retain the existing rule-handling code intact.
(ParsedStyleSheet::setSourceData):
(ParsedStyleSheet::ruleSourceDataAt):
(WebCore::InspectorStyle::buildObjectForStyle):
(WebCore::InspectorStyle::setPropertyText):
(WebCore::InspectorStyle::styleText):
(WebCore::InspectorStyleSheet::setRuleSelector):
(WebCore::InspectorStyleSheet::deleteRule):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::buildObjectForStyle):
(WebCore::InspectorStyleSheet::ensureSourceData):
(WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
(WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
(WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):

  • inspector/InspectorStyleSheet.h:
5:05 AM Changeset in webkit [121550] by kbalazs@webkit.org
  • 4 edits in trunk/Tools

[Qt][WTR] Get rid of using DumpRenderTreeSupportQt
https://bugs.webkit.org/show_bug.cgi?id=90262

Reviewed by Alexey Proskuryakov.

Now that we decided to not support v8 in WebKit2
we can get rid of using DumpRenderTreeSupportQt
in WebKitTestRunner.

  • Tools.pro:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::resetAfterTest):
(WTR::InjectedBundlePage::didClearWindowForFrame):

  • WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:
4:22 AM Changeset in webkit [121549] by vsevik@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: Annotate TextViewer.js
https://bugs.webkit.org/show_bug.cgi?id=90266

Reviewed by Yury Semikhatsky.

Annotated TextViewer.js and fixed found errors.
Drive-by: Fixed NativeMemorySnapshotView.js compilation.
Drive-by: Fixed protocol-externs.js compilation.
Drive-by: Removed unused platform parameter from TextViewer constructor.

  • inspector/Inspector.json:
  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::runScript):

  • inspector/InspectorDebuggerAgent.h:

(InspectorDebuggerAgent):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeMemoryBarChart.prototype._updateView):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):

4:21 AM Changeset in webkit [121548] by commit-queue@webkit.org
  • 1 edit
    2 adds
    1 delete in trunk/LayoutTests

[EFL] Gardening after r121468
https://bugs.webkit.org/show_bug.cgi?id=90257

Unreviewed EFL gardening after r121468.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-29

  • platform/efl/fast/dom/Window/window-lookup-precedence-expected.txt: Removed.
  • platform/efl/fast/forms/label/labelable-elements-expected.txt: Added.
3:44 AM Changeset in webkit [121547] by eric@webkit.org
  • 21 edits in trunk/Source/WebCore

Remove still more BUILDING_ON_LEOPARD branches now that no port supports leopard
https://bugs.webkit.org/show_bug.cgi?id=90256

Reviewed by Ryosuke Niwa.

  • platform/LocalizedStrings.cpp:

(WebCore::imageTitle):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setAllowsFontSmoothing):

  • platform/graphics/cg/ImageCG.cpp:

(WebCore::Image::drawPattern):

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::clear):

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::boundingRect):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::ctFont):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/graphics/mac/ComplexTextController.cpp:
  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fontCacheRegisteredFontsChangedNotificationCallback):
(WebCore::FontCache::platformInit):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::createFontCustomPlatformData):

  • platform/graphics/mac/FontCustomPlatformData.h:

(WebCore::FontCustomPlatformData::FontCustomPlatformData):

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore::SimpleFontData::platformInit):

  • platform/graphics/mac/WebLayer.h:
  • platform/mac/CursorMac.mm:

(WebCore::Cursor::ensurePlatformCursor):

  • platform/mac/DisplaySleepDisabler.cpp:

(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):

  • platform/mac/DisplaySleepDisabler.h:

(DisplaySleepDisabler):

  • platform/mac/HTMLConverter.h:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/PopupMenuMac.mm:

(WebCore::PopupMenuMac::populate):

  • platform/mac/ScrollElasticityController.mm:
3:31 AM Changeset in webkit [121546] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed attempt at a build fix for 64-bit debug build,
touch InsertionPoint.cpp to try to get it rebuilt.

  • html/shadow/InsertionPoint.cpp:

(WebCore):

3:15 AM Changeset in webkit [121545] by vestbo@webkit.org
  • 3 edits in trunk/Tools

Revert r121540, it broke most Qt builds

3:09 AM Changeset in webkit [121544] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Make build-webkit reject uknown configurations, eg. --profile

The qmake-based buildsystem doesn't support it.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-29
Reviewed by Tor Arne Vestbø.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

3:03 AM Changeset in webkit [121543] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Don't add Qt module dependencies in features.prf

The required dependencies are already added in WebCore.pri.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-29
Reviewed by Tor Arne Vestbø.

2:54 AM Changeset in webkit [121542] by commit-queue@webkit.org
  • 10 edits
    3 adds in trunk

Web Inspector: Add FileSystemView
https://bugs.webkit.org/show_bug.cgi?id=73301

This patch introduce a split view as FileSystemView. Including directory tree as sidebar tree.

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-29
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: http/tests/inspector/filesystem/directory-tree.html

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemModel.Entry.compare):

  • inspector/front-end/FileSystemView.js: Added.
  • inspector/front-end/ResourcesPanel.js:

(WebInspector.ResourcesPanel.prototype.showFileSystem):
(WebInspector.FileSystemTreeElement.prototype.get itemURL):
(WebInspector.FileSystemTreeElement.prototype.onattach):
(WebInspector.FileSystemTreeElement.prototype._handleContextMenuEvent):
(WebInspector.FileSystemTreeElement.prototype._refreshFileSystem):
(WebInspector.FileSystemTreeElement.prototype.onselect):
(WebInspector.FileSystemTreeElement.prototype.clear):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:

LayoutTests:

  • http/tests/inspector/filesystem/directory-tree-expected.txt: Added.
  • http/tests/inspector/filesystem/directory-tree.html: Added.
  • http/tests/inspector/filesystem/filesystem-test.js:

(initialize_FileSystemTest.incrementRequestCount):
(initialize_FileSystemTest.decrementRequestCount):
(initialize_FileSystemTest.InspectorTest.callOnRequestCompleted):

2:50 AM Changeset in webkit [121541] by haraken@chromium.org
  • 17 edits in trunk/Source/WebCore

[V8] Replace v8::Integer::New() with v8Integer() in custom bindings
https://bugs.webkit.org/show_bug.cgi?id=90242

Reviewed by Yury Semikhatsky.

v8Integer() is a fast wrapper of v8::Integer::New().
This patch replaces v8::Integer::New() with v8Integer() in custom bindings,
and pass isolates.

No tests. No change in behavior.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator):
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery):

  • bindings/v8/custom/V8ClipboardCustom.cpp:

(WebCore::V8Clipboard::typesAccessorGetter):

  • bindings/v8/custom/V8DOMStringMapCustom.cpp:

(WebCore::V8DOMStringMap::namedPropertyQuery):
(WebCore::V8DOMStringMap::namedPropertyEnumerator):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::WindowSetTimeoutImpl):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::getInt8Callback):
(WebCore::V8DataView::getUint8Callback):

  • bindings/v8/custom/V8HTMLInputElementCustom.cpp:

(WebCore::V8HTMLInputElement::selectionStartAccessorGetter):
(WebCore::V8HTMLInputElement::selectionEndAccessorGetter):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::lengthAccessorGetter):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::functionDetailsCallback):

  • bindings/v8/custom/V8MessageEventCustom.cpp:

(WebCore::V8MessageEvent::portsAccessorGetter):

  • bindings/v8/custom/V8MutationCallbackCustom.cpp:

(WebCore::V8MutationCallback::handleEvent):

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::namedPropertyGetter):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlCallback):

  • bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:

(WebCore::V8SQLTransactionSync::executeSqlCallback):

  • bindings/v8/custom/V8StorageCustom.cpp:

(WebCore::V8Storage::namedPropertyEnumerator):
(WebCore::V8Storage::indexedPropertyGetter):
(WebCore::V8Storage::namedPropertyQuery):
(WebCore::V8Storage::indexedPropertySetter):
(WebCore::V8Storage::indexedPropertyDeleter):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):
(WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
(WebCore::V8WebGLRenderingContext::getSupportedExtensionsCallback):

  • bindings/v8/custom/V8WorkerContextCustom.cpp:

(WebCore::SetTimeoutOrInterval):

2:49 AM Changeset in webkit [121540] by vestbo@webkit.org
  • 3 edits in trunk/Tools

[Qt] Use LIBS_PRIVATE instead of putting dependencies into LIBS

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-27
Reviewed by Tor Arne Vestbø..

  • qmake/mkspecs/features/default_post.prf:
  • qmake/mkspecs/features/functions.prf:
2:44 AM Changeset in webkit [121539] by haraken@chromium.org
  • 6 edits in trunk/Source/WebCore

Unreviewed, rolling out r121520.
http://trac.webkit.org/changeset/121520
https://bugs.webkit.org/show_bug.cgi?id=90246

the performance optimization needs more investigation

  • dom/DatasetDOMStringMap.cpp:

(WebCore::convertPropertyNameToAttributeName):

  • dom/Element.cpp:

(WebCore::Element::getAttributeNS):
(WebCore::Element::removeAttribute):
(WebCore::Element::removeAttributeNS):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):

  • dom/Element.h:

(Element):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::getAttributeNode):

  • dom/ElementAttributeData.h:

(ElementAttributeData):

2:35 AM Changeset in webkit [121538] by haraken@chromium.org
  • 17 edits in trunk/Source/WebCore

[V8] Replace v8::Integer::New() with v8Integer() in bindings/v8/*.{h,cpp}
https://bugs.webkit.org/show_bug.cgi?id=90238

Reviewed by Yury Semikhatsky.

v8Integer() is a fast wrapper of v8::Integer::New().
We can replace v8::Integer::New() with v8Integer()
in bindings/v8/*.{h,cpp}. In addition, we pass isolate
to v8Integer() where possible.

No tests. No change in behavior.

  • bindings/v8/Dictionary.cpp:

(WebCore::Dictionary::get):

  • bindings/v8/NPV8Object.cpp:

(_NPN_Enumerate): Changed v8::None to 0, for consistency with other code.

  • bindings/v8/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::addListener):

  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::compileScript):

  • bindings/v8/SerializedScriptValue.cpp:
  • bindings/v8/V8Binding.cpp:

(WebCore::v8Array):
(WebCore::v8ValueToWebCoreDOMStringList):

  • bindings/v8/V8Binding.h:

(WebCore::v8Array):
(WebCore::v8NumberArrayToVector):

  • bindings/v8/V8Collection.h:

(WebCore::nodeCollectionIndexedPropertyEnumerator):
(WebCore::collectionIndexedPropertyEnumerator):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • bindings/v8/V8NPObject.cpp:

(WebCore::npObjectQueryProperty):
(WebCore::npObjectPropertyEnumerator):

  • bindings/v8/V8NPUtils.cpp:

(WebCore::convertNPVariantToV8Object):

  • bindings/v8/V8Proxy.cpp:

(WebCore::batchConfigureConstants):
(WebCore::V8Proxy::compileScript):

  • bindings/v8/V8Utilities.cpp:

(WebCore::createHiddenDependency):
(WebCore::removeHiddenDependency):

  • bindings/v8/V8WindowErrorHandler.cpp:

(WebCore::V8WindowErrorHandler::callListenerFunction):

  • bindings/v8/V8WorkerContextErrorHandler.cpp:

(WebCore::V8WorkerContextErrorHandler::callListenerFunction):

  • bindings/v8/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::addListener):

2:32 AM Changeset in webkit [121537] by vsevik@chromium.org
  • 7 edits
    2 adds in trunk

Web Inspector: Resource content is not loaded if Resource.requestContent method is called before network request is finished.
https://bugs.webkit.org/show_bug.cgi?id=90153

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: http/tests/inspector/resource-tree/resource-request-content-while-loading.html

  • inspector/front-end/NetworkRequest.js:
  • inspector/front-end/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.prototype.requestContent):
(WebInspector.Resource.prototype._requestFinished):

LayoutTests:

Resource.requestContent() now checks that request (if there is one) was already loaded before requesting content from PageAgent.
Drive-by: Removed unneeded legacy request._resource field.

  • http/tests/inspector/network/network-request-revision-content.html:
  • http/tests/inspector/resource-tree/resource-request-content-while-loading-expected.txt: Added.
  • http/tests/inspector/resource-tree/resource-request-content-while-loading.html: Added.
  • http/tests/inspector/resources-test.js:

(initialize_ResourceTest.InspectorTest.runAfterResourcesAreFinished.checkResources):
(initialize_ResourceTest.InspectorTest.runAfterResourcesAreFinished):
(initialize_ResourceTest.InspectorTest.showResource.showResourceCallback):
(initialize_ResourceTest.InspectorTest.showResource):
(initialize_ResourceTest.InspectorTest.resourceMatchingURL.visit):
(initialize_ResourceTest.InspectorTest.resourceMatchingURL):
(initialize_ResourceTest):

  • inspector/debugger/raw-source-code.html:
2:17 AM Changeset in webkit [121536] by keishi@webkit.org
  • 33 edits in trunk/Source

Unreviewed, rolling out r121529.
http://trac.webkit.org/changeset/121529
https://bugs.webkit.org/show_bug.cgi?id=90260

Failed to compile on Chromium WebKitMacBuilder (Requested by
keishi on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-29

Source/WebCore:

  • platform/LocalizedStrings.cpp:

(WebCore):

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::platformAddPathForRoundedRect):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::setFont):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::showGlyphsWithAdvances):

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore):

  • platform/mac/CursorMac.mm:

(WebCore::Cursor::ensurePlatformCursor):

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore):

  • platform/mac/PlatformEventFactoryMac.mm:

(WebCore::momentumPhaseForEvent):
(WebCore::phaseForEvent):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):

  • platform/text/cf/HyphenationCF.cpp:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):

Source/WebKit/mac:

  • DefaultDelegates/WebDefaultContextMenuDelegate.mm:

(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):

  • Misc/WebNSControlExtras.m:

(-[NSControl sizeToFitAndAdjustWindowHeight]):

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

  • WebView/WebDynamicScrollBarsView.mm:

(-[WebDynamicScrollBarsView scrollWheel:]):

  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):

  • WebView/WebView.mm:

(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):

Source/WebKit2:

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):

  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WTF:

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

  • wtf/unicode/icu/CollatorICU.cpp:

(WTF::Collator::userDefault):

2:12 AM Changeset in webkit [121535] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Add toggle breakpoint shortcut.
https://bugs.webkit.org/show_bug.cgi?id=90188

Reviewed by Yury Semikhatsky.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._onMouseDown):
(WebInspector.JavaScriptSourceFrame.prototype._toggleBreakpoint):
(WebInspector.JavaScriptSourceFrame.prototype.toggleBreakpointOnCurrentLine):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._toggleBreakpoint):
(WebInspector.ScriptsPanel.prototype._showOutlineDialog):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextViewer.prototype.selection):

2:09 AM Changeset in webkit [121534] by vsevik@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: Cursor should follow execution line when debugging.
https://bugs.webkit.org/show_bug.cgi?id=90184

Reviewed by Yury Semikhatsky.

Added TextViewer.setSelection public method to set cursor selection in the editor.
Added TextRange.createFromLocation method to create TextRanges with the same start and end points.
Drive-by: removed unused _setCaretLocation() method in TextViewer.js

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.setExecutionLine):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._revealExecutionLine):
(WebInspector.ScriptsPanel.prototype._editorSelected):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame.prototype.setSelection):
(WebInspector.SourceFrame.prototype.setContent):

  • inspector/front-end/TextEditorModel.js:

(WebInspector.TextRange.createFromLocation):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextViewer.prototype.setSelection):
(WebInspector.TextEditorMainPanel.prototype.highlightLine):

2:05 AM Changeset in webkit [121533] by vsevik@chromium.org
  • 9 edits in trunk

Web Inspector: IDBObjectStore.autoIncrement flag not exposed
https://bugs.webkit.org/show_bug.cgi?id=89701

Reviewed by Yury Semikhatsky.

Source/WebCore:

Plumbed objectStore.autoIncrement to inspector front-end and added it to tooltip.

  • English.lproj/localizedStrings.js:
  • inspector/Inspector.json:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore):

  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel.prototype._loadDatabase.callback):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.ObjectStore):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.IDBObjectStoreTreeElement.prototype._updateTooltip):

LayoutTests:

  • http/tests/inspector/indexeddb/database-structure-expected.txt:
  • http/tests/inspector/indexeddb/database-structure.html:
2:02 AM Changeset in webkit [121532] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Deleting unused function in WebDeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=90185

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-29
Reviewed by Adam Barth.

Deleting the unused copy assignment function in WebDeviceOrientation.

  • public/WebDeviceOrientation.h:

(WebDeviceOrientation):

  • src/WebDeviceOrientation.cpp:
1:55 AM Changeset in webkit [121531] by apavlov@chromium.org
  • 5 edits
    2 adds in trunk

Use floating keyframe rule list when parsing @-webkit-keyframes and allow abrupt rule termination
https://bugs.webkit.org/show_bug.cgi?id=90073

Reviewed by Antti Koivisto.

Source/WebCore:

  • The grammar is changed to allow abruptly terminated stylesheet in the @-webkit-keyframes (use closing_brace, not '}').
  • A floating StyleKeyframe vector is introduced to separate the creation and filling of StyleRuleKeyframes, as other rules do.

Test: fast/css/css-keyframe-unexpected-end.html

  • css/CSSGrammar.y:
  • css/CSSParser.cpp:

(WebCore::CSSParser::createFloatingKeyframeVector):
(WebCore):
(WebCore::CSSParser::sinkFloatingKeyframeVector):
(WebCore::CSSParser::createKeyframesRule):

  • css/CSSParser.h:

LayoutTests:

  • fast/css/css-keyframe-unexpected-end-expected.txt: Added.
  • fast/css/css-keyframe-unexpected-end.html: Added.
1:46 AM Changeset in webkit [121530] by yurys@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: add character data to the DOM section of native memory view
https://bugs.webkit.org/show_bug.cgi?id=89968

Reviewed by Vsevolod Vlasov.

Count strings referenced from CharacterData node and its descendants
as part of the DOM tree structures in the native memory view.

  • dom/CharacterData.cpp:

(WebCore::CharacterData::reportMemoryUsage):
(WebCore):

  • dom/CharacterData.h:

(CharacterData):

  • dom/MemoryInstrumentation.h:

(MemoryInstrumentation):
(WebCore::MemoryObjectInfo::reportString):
(MemoryObjectInfo):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore):
(WebCore::domTreeInfo):
(WebCore::jsExternalResourcesInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

1:28 AM Changeset in webkit [121529] by eric@webkit.org
  • 33 edits in trunk/Source

Remove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
https://bugs.webkit.org/show_bug.cgi?id=90252

Reviewed by Ryosuke Niwa.

Source/WebCore:

  • platform/LocalizedStrings.cpp:

(WebCore):

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::platformAddPathForRoundedRect):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::setFont):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::showGlyphsWithAdvances):

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore):

  • platform/mac/CursorMac.mm:

(WebCore::Cursor::ensurePlatformCursor):

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore):

  • platform/mac/PlatformEventFactoryMac.mm:

(WebCore::momentumPhaseForEvent):
(WebCore::phaseForEvent):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):

  • platform/text/cf/HyphenationCF.cpp:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):

Source/WebKit/mac:

  • DefaultDelegates/WebDefaultContextMenuDelegate.mm:

(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):

  • Misc/WebNSControlExtras.m:

(-[NSControl sizeToFitAndAdjustWindowHeight]):

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

  • WebView/WebDynamicScrollBarsView.mm:

(-[WebDynamicScrollBarsView scrollWheel:]):

  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):

  • WebView/WebView.mm:

(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):

Source/WebKit2:

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):

  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WTF:

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

  • wtf/unicode/icu/CollatorICU.cpp:

(WTF::Collator::userDefault):

1:14 AM Changeset in webkit [121528] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: showConsole() should close previous view in drawer.
https://bugs.webkit.org/show_bug.cgi?id=90070

Reviewed by Yury Semikhatsky.

  • inspector/front-end/inspector.js:

(WebInspector.showConsole):
(WebInspector.showPanel):

12:59 AM BuildingQtOnLinux edited by ssandela@innominds.com
Update the required dependencies on Debian/Ubuntu command (diff)
12:46 AM Changeset in webkit [121527] by kkristof@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r121494. Added new baseline to
fast/frames/flattening/frameset-flattening-advanced.html

Patch by János Badics <János Badics> on 2012-06-29

  • platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.png:
  • platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.txt:
12:44 AM Changeset in webkit [121526] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove a #include erroneously added in r120896.

  • editing/VisibleSelection.h:
12:26 AM Changeset in webkit [121525] by yosin@chromium.org
  • 9 edits
    3 adds in trunk/Source

[Platform] Implement Date Time format parser
https://bugs.webkit.org/show_bug.cgi?id=89963

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces Unicode TR35 LDML date time format parser for
input type "time" if ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS) is true.

Test: WebKit/chromium/tests/DateTimeFormatTest.cpp

  • CMakeLists.txt: Added DateTimeFormat.cpp
  • GNUmakefile.list.am: Added DateTimeFormat.{cpp,h}
  • Target.pri: ditto
  • WebCore.gypi: ditto
  • WebCore.vcproj/WebCore.vcproj: ditto
  • WebCore.xcodeproj/product.pbxproj: ditto
  • platform/text/DateTimeFormat.cpp: Added.

(WebCore::mapCharacterToFieldTypeInternal):
(WebCore::DateTimeFormat::DateTimeFormat):
(WebCore::DateTimeFormat::mapCharacterToFieldType):
(WebCore::DateTimeFormat::parse):

  • platform/text/DateTimeFormat.h: Added.

(DateTimeFormat):
(TokenHandler):
(WebCore::DateTimeFormat::TokenHandler::~TokenHandler):

Source/WebKit/chromium:

This patch adds an unit test for date time format parser if
ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS) is true.

  • tests/DateTimeFormatTest.cpp: Added.

(DateTimeFormatTest):
(Token):
(DateTimeFormatTest::Token::Token):
(DateTimeFormatTest::Token::operator==):
(DateTimeFormatTest::Token::toString):
(Tokens):
(DateTimeFormatTest::Tokens::Tokens):
(DateTimeFormatTest::Tokens::operator==):
(DateTimeFormatTest::Tokens::toString):
(DateTimeFormatTest::parse):
(DateTimeFormatTest::single):
(TokenHandler):
(DateTimeFormatTest::TokenHandler::~TokenHandler):
(DateTimeFormatTest::TokenHandler::fieldType):
(DateTimeFormatTest::TokenHandler::tokens):
(DateTimeFormatTest::TokenHandler::visitField):
(DateTimeFormatTest::TokenHandler::visitLiteral):
(operator<<):
(TEST_F):

12:15 AM Changeset in webkit [121524] by eric@webkit.org
  • 15 edits in trunk/Source

Remove more BUILDING_ON_LEOPARD usage in PLATFORM(MAC) code
https://bugs.webkit.org/show_bug.cgi?id=85846

Reviewed by Adam Barth.

PLATFORM(MAC) has not supported Leopard for several months now.
This change removes about 1/3 of the remaining BUILDING_ON_LEOPARD
uses in the PLATFORM(MAC) codepaths. PLATFORM(CHROMIUM) still
supports BUILDING_ON_LEOPARD for now.

Source/WebCore:

  • WebCore.exp.in:
  • dom/Document.cpp:

(WebCore::Document::updateRangesAfterChildrenChanged):
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):
(WebCore::Document::textNodeSplit):

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedSelection):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::markMisspellingsAfterTyping):
(WebCore::TypingCommand::typingAddedToOpenCommand):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::pasteWithPasteboard):

  • loader/EmptyClients.h:

(EmptyEditorClient):

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
(WebCore):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):

  • page/EditorClient.h:

(EditorClient):

  • platform/LocalizedStrings.cpp:

(WebCore::contextMenuItemTagSearchWeb):

  • platform/MemoryPressureHandler.cpp:

(WebCore):

  • platform/SuddenTermination.h:

(WebCore):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsImage):
(WebCore::GraphicsLayerCA::constrainedSize):

  • platform/graphics/ca/PlatformCALayer.h:

(PlatformCALayer):

  • platform/graphics/ca/mac/PlatformCAAnimationMac.mm:

(fromCAValueFunctionType):
(PlatformCAAnimation::valueFunction):
(PlatformCAAnimation::setValueFunction):

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(toCAFilterType):
(PlatformCALayer::anchorPoint):
(PlatformCALayer::setAnchorPoint):
(PlatformCALayer::contentsTransform):
(PlatformCALayer::setContentsTransform):
(PlatformCALayer::isGeometryFlipped):
(PlatformCALayer::setGeometryFlipped):
(PlatformCALayer::acceleratesDrawing):
(PlatformCALayer::setAcceleratesDrawing):
(PlatformCALayer::setMinificationFilter):
(PlatformCALayer::setMagnificationFilter):
(PlatformCALayer::contentsScale):
(PlatformCALayer::setContentsScale):

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::setScale):
(WebCore::TileCache::setAcceleratesDrawing):
(WebCore::TileCache::createTileLayer):

Source/WTF:

  • wtf/Platform.h:
12:06 AM Changeset in webkit [121523] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Use StringBuilder in SegmentedString::toString()
https://bugs.webkit.org/show_bug.cgi?id=90247

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

Use a StringBuilder instead of String concatenation because StringBuilder is generally faster.
No new tests. Covered by existing tests.

  • platform/text/SegmentedString.cpp:

(WebCore::SegmentedString::toString):

  • platform/text/SegmentedString.h:

(WebCore::SegmentedSubstring::appendTo):

Jun 28, 2012:

11:54 PM Changeset in webkit [121522] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac build fix after r121518.

  • WebCore.exp.in:
11:38 PM Changeset in webkit [121521] by rniwa@webkit.org
  • 4 edits
    2 copies in trunk

DOMHTMLCollection::item may return a wrong element after namedItem is called
https://bugs.webkit.org/show_bug.cgi?id=90240

Reviewed by Antti Koivisto.

Source/WebCore:

The bug was caused by namedItem updating m_cache.current without updating m_cache.position.
Fixed the bug by updating both. This is similar to the bug I fixed in r121478.

WebKit API Test: WebKit1.HTMLCollectionNamedItemTest

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::namedItem):

Tools:

Add a WebKit API test since namedItem is not used in the JS/V8 binding code.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/HTMLCollectionNamedItem.html: Copied from Tools/TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.html.
  • TestWebKitAPI/Tests/mac/HTMLCollectionNamedItem.mm: Copied from Tools/TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.mm.

(TestWebKitAPI::TEST):

11:20 PM Changeset in webkit [121520] by haraken@chromium.org
  • 6 edits in trunk/Source/WebCore

Change argument types of Element::getAttribute*() from String to AtomicString
https://bugs.webkit.org/show_bug.cgi?id=90246

Reviewed by Ryosuke Niwa.

This is a follow-up patch for r121439. r121439 changed an argument type of
Element::getAttribute() from String to AtomicString, which optimized
performance of Dromaeo/dom-attr.html. This patch changes other argument types
of Element::getAttribute*() from String to AtomicString. See the ChangeLog in
http://trac.webkit.org/changeset/121439 for more details about why this change
optimizes performance.

No tests. No change in behavior.

  • dom/DatasetDOMStringMap.cpp:

(WebCore::convertPropertyNameToAttributeName):

  • dom/Element.cpp:

(WebCore::Element::getAttributeNS):
(WebCore::Element::removeAttribute):
(WebCore::Element::removeAttributeNS):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):

  • dom/Element.h:

(Element):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::getAttributeNode):

  • dom/ElementAttributeData.h:

(ElementAttributeData):

11:12 PM Changeset in webkit [121519] by tkent@chromium.org
  • 6 edits in trunk

REGRESSION(r106388): Form hidden element values being restored
incorrectly for dynamically generated content
https://bugs.webkit.org/show_bug.cgi?id=88685

Reviewed by Hajime Morita.

Source/WebCore:

We should not save value attribute updated during parsing.

Test: fast/forms/state-restore-to-non-edited-controls.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):
Initialize m_valueAttributeWasUpdatedAfterParsing.
(WebCore::HTMLInputElement::parseAttribute):
Set true to m_valueAttributeWasUpdatedAfterParsing if value
attribute is updated and it's not in parsing.

  • html/HTMLInputElement.h:

(WebCore::HTMLInputElement::valueAttributeWasUpdatedAfterParsing):
Added for HiddenInputType.

  • html/HiddenInputType.cpp:

(WebCore::HiddenInputType::saveFormControlState):
Save the value only if valueAttributeWasUpdatedAfterParsing() is true.

LayoutTests:

  • fast/forms/state-restore-to-non-edited-controls-expected.txt:

A failing test is fixed.

11:00 PM Changeset in webkit [121518] by morrita@google.com
  • 11 edits in trunk

[Refactoring] NodeRenderingContext ctor could be built on top of the ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=89732

Reviewed by Dimitri Glazkov.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

The constructor of NodeRenderingContext implements almost same
logic as ComposedShadowTreeWalker::parent(). This change
eliminates the duplication by employing ComposedShadowTreeWalker in the constructor.

ComposedShadowTreeWalker has same difference from
NodeRenderingContext though. So this change also extends
ComposedShadowTreeWalker to support these missing pieces, which
are encapsulated in newly introduced ParentTranversalDetails
class where:

  • not only the parent, but also the insertion point of the child is returned,
  • resetStyleInheritance from the child-parent traversal is computed and
  • if the starting point is out of the composition, it returns null as a parent.

This change also inlines some ComposedShadowTreeWalker methods for speed.

No new tests. Covered by existing tests.

  • WebCore.exp.in:
  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::shadowOfParent):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didTraverseInsertionPoint):
(WebCore):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didTraverseShadowRoot):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didFindNode):
(WebCore::ComposedShadowTreeWalker::findParent):
(WebCore::ComposedShadowTreeWalker::escapeFallbackContentElement):
(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):
(WebCore::ComposedShadowTreeWalker::traverseParent):
(WebCore::ComposedShadowTreeWalker::traverseParentInCurrentTree):
(WebCore::ComposedShadowTreeWalker::traverseParentBackToYoungerShadowRootOrHost):

  • dom/ComposedShadowTreeWalker.h:

(ParentTranversalDetails):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::ParentTranversalDetails):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::node):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::insertionPoint):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::resetStyleInheritance):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::outOfComposition):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::childWasOutOfComposition):
(ComposedShadowTreeWalker):
(WebCore::ComposedShadowTreeWalker::ComposedShadowTreeWalker):
(WebCore):

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::parentRenderer):
(WebCore::NodeRenderingContext::shouldCreateRenderer):
(WebCore::NodeRenderingContext::isOnEncapsulationBoundary):

  • dom/NodeRenderingContext.h:

(NodeRenderingContext):
(WebCore::NodeRenderingContext::parentNodeForRenderingAndStyle):
(WebCore::NodeRenderingContext::resetStyleInheritance):
(WebCore::NodeRenderingContext::insertionPoint):

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
9:45 PM Changeset in webkit [121517] by bashi@chromium.org
  • 2 edits
    4 adds in trunk/LayoutTests

[Chromium] unreviewed test expectations update after r121510.

  • platform/chromium-mac-leopard/css3/font-feature-settings-rendering-expected.png: Added.
  • platform/chromium-mac-snowleopard/css3/font-feature-settings-rendering-expected.png: Added.
  • platform/chromium-mac/css3/font-feature-settings-rendering-expected.png: Added.
  • platform/chromium-mac/css3/font-feature-settings-rendering-expected.txt: Added.
  • platform/chromium/TestExpectations:
9:20 PM Changeset in webkit [121516] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

[BlackBerry] Selection items show as garbage for non-ascii characters.
https://bugs.webkit.org/show_bug.cgi?id=89969

Add charset utf-8 to the select popup's page.

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-28
Reviewed by Antonio Gomes.

.:

  • ManualTests/blackberry/select-popup-items-unicode-display.html: Added.

Source/WebKit/blackberry:

  • WebCoreSupport/SelectPopupClient.cpp:

(WebCore::SelectPopupClient::generateHTML):

8:59 PM Changeset in webkit [121515] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Mark 4 tests in css3/filters as MISSING. Caused by r121513.

Unreviewed.

  • platform/chromium/TestExpectations:
7:52 PM Changeset in webkit [121514] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Checkerboard shown when clicking on error page buttons
https://bugs.webkit.org/show_bug.cgi?id=90152
RIM PR #161867

Reviewed by George Staikos.

Reset m_hasBlitJobs when resetting tiles to prevent ui thread from drawing checkerboard unintentionally.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resetTiles):

7:50 PM Changeset in webkit [121513] by senorblanco@chromium.org
  • 31 edits
    16 adds in trunk

Source/WebCore: Implement filter url() function.
https://bugs.webkit.org/show_bug.cgi?id=72443

url() references can be internal, in which case the DOM nodes are
retrieved directly from the current document, or external, in which
case a CachedSVGDocument request is made, and the filter node build is
deferred until the document is loaded. WebKitSVGDocumentValue
holds the CachedSVGDocument (if any) and the URL as a CSSValue,
and is stored in the CSSValue chain as the argument to the reference
filter.

One notable difference between internal and external references is
that internal references will automatically update on an SVG filter node
attribute change, while external references will not, since they live
in a separate document. This is consistent with the Mozilla
implementation. In order to make this work, the RenderLayer is made a
client of the RenderSVGResourceContainer, and calls
filterNeedsRepaint() when the SVG nodes are invalidated.

Some plumbing: The CSS StyleResolver was refactored to load all
all external resources (images, shaders and (now) SVG filters) in a
single function, loadPendingResources(). The PlatformLayer typedef
was moved out into its own file, in order to break a cyclic
dependency. SVGFilterBuilder was modified to accept the SourceGraphic
and SourceAlpha FilterEffects in its constructor and factory function,
rather than extracting them from the parent Filter. (This is necessary
so that the url() filter can correctly hook up its inputs from
previous CSS filters.)

Reviewed by Dean Jackson.

Tests: css3/filters/effect-reference-external.html

css3/filters/effect-reference-hw.html
css3/filters/effect-reference-ordering.html
css3/filters/effect-reference.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Add WebKitCSSSVGDocumentValue to the various build files.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForFilter):
Use the reference filter's url when getting the computed style for
a reference filter.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFilter):
Create the referenceFilterValue's argument as a
WebKitCSSSVGDocumentValue instead of a CSS string.

  • css/CSSValue.cpp:

(WebCore::CSSValue::cssText):
Add support for WebKitCSSSVGDocumentValue.
(WebCore::CSSValue::destroy):
Add support for WebKitCSSSVGDocumentValue.

  • css/CSSValue.h:

(WebCore::CSSValue::isWebKitCSSSVGDocumentValue):
Add support for WebKitCSSSVGDocumentValue.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):
Keep track of pending SVG document references, and load them when
necessary.

  • css/StyleResolver.h:
  • css/WebKitCSSSVGDocumentValue.cpp: Added.

New CSSValue subclass for holding SVG document references.
(WebCore::WebKitCSSSVGDocumentValue::WebKitCSSSVGDocumentValue):
(WebCore::WebKitCSSSVGDocumentValue::~WebKitCSSSVGDocumentValue):
(WebCore::WebKitCSSSVGDocumentValue::load):
(WebCore::WebKitCSSSVGDocumentValue::customCssText):

  • css/WebKitCSSSVGDocumentValue.h: Added.

(WebCore::WebKitCSSSVGDocumentValue::create):
(WebCore::WebKitCSSSVGDocumentValue::cachedSVGDocument):
(WebCore::WebKitCSSSVGDocumentValue::url):
(WebCore::WebKitCSSSVGDocumentValue::loadRequested):

  • platform/graphics/GraphicsLayer.h:

Refactor PlatformLayer out into its own file, to avoid circular
includes.

  • platform/graphics/ImageBuffer.h:

Include PlatformLayer.h instead of GraphicsLayer.h.

  • platform/graphics/PlatformLayer.h: Added.

Refactor PlatformLayer out into its own file, to avoid circular
includes.

  • platform/graphics/filters/FilterOperation.h:

(WebCore::ReferenceFilterOperation::create):
(WebCore::ReferenceFilterOperation::clone):
(WebCore::ReferenceFilterOperation::url):
(WebCore::ReferenceFilterOperation::fragment):
(ReferenceFilterOperation):
(WebCore::ReferenceFilterOperation::data):
(WebCore::ReferenceFilterOperation::setData):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
Augment ReferenceFilterOperation to maintain a data pointer,
in order to preserve context while loading external SVG documents.
Replace "reference" with "url" and "fragment" members, in order to
ease retrieval of the appropriate DOM objects.

  • platform/graphics/filters/FilterOperations.cpp:

(WebCore::FilterOperations::hasReferenceFilter):
Convenience function for finding reference filters.

  • platform/graphics/filters/FilterOperations.h:

(FilterOperations):

  • platform/mac/ScrollbarThemeMac.mm:

Include GraphicsLayer.h explicitly, since ImageBuffer.h no longer
includes it (and only includes PlatformLayer.h).

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):
Utility function to build a FilterEffect node graph for a
ReferenceFilterOperation.
(WebCore::FilterEffectRenderer::build):
Call the above builder function for ReferenceFilterOperations.

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

(WebCore::RenderLayer::updateOrRemoveFilterEffect):
If we have reference filters, update them along with other filters.
(WebCore::RenderLayer::filterNeedsRepaint):

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayerFilterInfo::~RenderLayerFilterInfo):
(WebCore::RenderLayerFilterInfo::notifyFinished):
Implement callback function when external SVGDocuments are loaded.
(WebCore::RenderLayerFilterInfo::updateReferenceFilterClients):
Add the FilterInfo as a client to be called when SVGDocuments are
loaded.
(WebCore::RenderLayerFilterInfo::removeReferenceFilterClients):
Remove this from the list of notified clients.

  • rendering/RenderLayerFilterInfo.h:

Add new member vars for tracking internal and external SVG
references, so we can remove ourselves as a client when done.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
When marking client DOM nodes for repaint, also mark any RenderLayers
referring to this DOM tree via filters as needing repaint.
(WebCore::RenderSVGResourceContainer::addClientRenderLayer):
(WebCore::RenderSVGResourceContainer::removeClientRenderLayer):

  • rendering/svg/RenderSVGResourceContainer.h:

Maintain a list of RenderLayer clients on each SVG resource container,
and turn SVG DOM repaint notifications into filter repaint (CSS)
notifications.

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives):
Construct a SourceGraphic and SourceAlpha node explicitly for the
SVG builder case.

  • svg/graphics/filters/SVGFilterBuilder.cpp:

(WebCore::SVGFilterBuilder::SVGFilterBuilder):

  • svg/graphics/filters/SVGFilterBuilder.h:

(WebCore::SVGFilterBuilder::create):
Add the SourceGraphic and SourceAlpha as parameters to the constructor
and create() methods, so they can be supplied by the caller.

LayoutTests: Add tests for the url() filter function.
https://bugs.webkit.org/show_bug.cgi?id=72443

Reviewed by Dean Jackson.

  • css3/filters/effect-reference-external.html: Added.
  • css3/filters/effect-reference-hw.html: Added.
  • css3/filters/effect-reference-ordering.html: Added.
  • css3/filters/effect-reference.html: Added.
  • css3/filters/resources/hueRotate.svg: Added.
  • platform/chromium-linux/css3/filters/effect-reference-expected.png: Added.
  • platform/chromium-linux/css3/filters/effect-reference-expected.txt: Added.
  • platform/chromium-linux/css3/filters/effect-reference-external-expected.png: Added.
  • platform/chromium-linux/css3/filters/effect-reference-external-expected.txt: Added.
  • platform/chromium-linux/css3/filters/effect-reference-hw-expected.png: Added.
  • platform/chromium-linux/css3/filters/effect-reference-hw-expected.txt: Added.
  • platform/chromium-linux/css3/filters/effect-reference-ordering-expected.png: Added.
  • platform/chromium-linux/css3/filters/effect-reference-ordering-expected.txt: Added.
  • platform/chromium/TestExpectations:
7:46 PM Changeset in webkit [121512] by dpranke@chromium.org
  • 7 edits
    2 deletes in trunk/Tools

nrwt: remove the 'google-chrome' port code
https://bugs.webkit.org/show_bug.cgi?id=88824

Reviewed by Ojan Vafai.

NRWT now supports passing additional baseline directories
and expectations files on the command line, so there's no need
to support the concept of a 'google-chrome' port directly.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.path_to_test_expectations_file):

  • Scripts/webkitpy/layout_tests/port/builders.py:
  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:

(ChromiumMacPort.init):

  • Scripts/webkitpy/layout_tests/port/chromium_win.py:

(ChromiumWinPort.init):

  • Scripts/webkitpy/layout_tests/port/factory.py:

(PortFactory):

  • Scripts/webkitpy/layout_tests/port/factory_unittest.py:

(FactoryTest.test_win):

  • Scripts/webkitpy/layout_tests/port/google_chrome.py: Removed.
  • Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py: Removed.
7:40 PM Changeset in webkit [121511] by fpizlo@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

DFG recompilation heuristics should be based on count, not rate
https://bugs.webkit.org/show_bug.cgi?id=90146

Reviewed by Oliver Hunt.

This removes a bunch of code that was previously trying to prevent spurious
reoptimizations if a large enough majority of executions of a code block did
not result in OSR exit. It turns out that this code was purely harmful. This
patch removes all of that logic and replaces it with a dead-simple
heuristic: if you exit more than N times (where N is an exponential function
of the number of times the code block has already been recompiled) then we
will recompile.

This appears to be a broad ~1% win on many benchmarks large and small.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::osrExitCounter):
(JSC::CodeBlock::countOSRExit):
(CodeBlock):
(JSC::CodeBlock::addressOfOSRExitCounter):
(JSC::CodeBlock::offsetOfOSRExitCounter):
(JSC::CodeBlock::adjustedExitCountThreshold):
(JSC::CodeBlock::exitCountThresholdForReoptimization):
(JSC::CodeBlock::exitCountThresholdForReoptimizationFromLoop):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):

  • bytecode/ExecutionCounter.cpp:

(JSC::ExecutionCounter::setThreshold):

  • bytecode/ExecutionCounter.h:

(ExecutionCounter):
(JSC::ExecutionCounter::clippedThreshold):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileBody):

  • dfg/DFGOSRExit.cpp:

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

  • dfg/DFGOSRExitCompiler.cpp:

(JSC::DFG::OSRExitCompiler::handleExitCounts):

  • dfg/DFGOperations.cpp:
  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/Options.cpp:

(Options):
(JSC::Options::initializeOptions):

  • runtime/Options.h:

(Options):

7:37 PM Changeset in webkit [121510] by bashi@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] CTFontCopyTable of MacOSX10.5 SDK doesn't work for layout tables
https://bugs.webkit.org/show_bug.cgi?id=90235

Reviewed by Kent Tamura.

Use CGFontCopyTableForTag instead.

No new tests. css3/font-feature-settings-rendering.html should pass. I'll rebase expectations once bots get the result.

  • platform/graphics/harfbuzz/ng/HarfBuzzFaceCoreText.cpp:

(WebCore::harfbuzzCoreTextGetTable):

7:37 PM Changeset in webkit [121509] by dpranke@chromium.org
  • 6 edits
    1 delete in trunk/Tools

nrwt: clean up how arguments are passed to workers
https://bugs.webkit.org/show_bug.cgi?id=90126

Reviewed by Ojan Vafai.

The way arguments are passed to workers has been crufty. It
turns out it can be a lot cleaner via two things:
1) using a factory method instead of instantiating objects
directly in manager_worker_broker removes the need for passing
'worker arguments' to the broker.
2) it turns out that since mock hosts and test ports are purely
in-memory constructions, they can be pickled and passed to child
workers, meaning that the worker no longer needs hacky code to
pass the port in a special case or to guess what to do if we
don't have a host - all of the test-specific logic can move to
the test file, where we can stub out the mock host's
port_factory to return the same already-created port when it
needs to be shared.

This change also moves WorkerException to manager_worker_broker.py
where it belongs, and removes several useless tests that were
just a maintenance burden (and would've needed rewriting when we
change the rest of the broker implementation).

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._run_tests.worker_factory):
(Manager._run_tests):

  • Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:

(get):
(WorkerException):
(AbstractWorker.init):
(_ManagerConnection.init):
(_ManagerConnection.start_worker):
(_InlineManager.init):
(_InlineManager.start_worker):
(_MultiProcessManager._can_pickle_host):
(_MultiProcessManager):
(_MultiProcessManager.start_worker):
(_WorkerConnection.init):
(_InlineWorkerConnection.init):
(_InlineWorkerConnection.join):
(_InlineWorkerConnection.run):
(_Process.run):
(_MultiProcessWorkerConnection.init):
(_MultiProcessWorkerConnection.start):
(_MultiProcessWorkerConnection):
(_MultiProcessWorkerConnection.run):

  • Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:

(_TestWorker.init):
(_TestWorker.run):
(_TestsMixin.test_name):
(_TestsMixin.test_cancel):
(_TestsMixin.test_done):
(_TestsMixin.test_unknown_message):
(InlineBrokerTests.setUp):
(MultiProcessBrokerTests.setUp):

  • Scripts/webkitpy/layout_tests/controllers/worker.py:

(Worker.init):
(Worker.run):

  • Scripts/webkitpy/layout_tests/controllers/worker_unittest.py: Removed.
  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(passing_run):
(logging_run):
(run_and_capture):
(MainTest.test_child_processes_2):
(MainTest.test_child_processes_min):
(MainTest.test_exception_raised):
(MainTest.test_keyboard_interrupt):
(MainTest.test_retrying_and_flaky_tests):
(MainTest.test_run_orderinline):

7:36 PM Changeset in webkit [121508] by pdr@google.com
  • 2 edits in trunk/Source/WebCore

Add preventative assert in SVGTRefElement
https://bugs.webkit.org/show_bug.cgi?id=90203

Reviewed by Abhishek Arya.

SVGTRefElement::detachTarget() adds a pending resource via addPendingResource.
Due to some recent bugs in this area, an assert is being added to prevent
users from calling detachTarget when not in a document. Doing
so would create a bug such as in WK90042.

This assert will not fire currently because detachTarget is only called after
a DOMNodeRemovedFromDocumentEvent event fires, which only comes from
dispatchChildRemovalEvents when the node is in a document.

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::detachTarget):

7:13 PM Changeset in webkit [121507] by dpranke@chromium.org
  • 3 edits in trunk/Tools

nrwt: don't try to catch worker exceptions in run_webkit_tests.main
https://bugs.webkit.org/show_bug.cgi?id=90125

Reviewed by Ojan Vafai.

It turns out run_webkit_tests.py wasn't really using
WorkerException and the catch we had for it was pointless. I've
removed the symbol import and moved it to the integration tests
where it is needed. Eventually the definition of the exception
moves to the broker module, and so minimizing the number of
users of it is a good thing.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.test_exception_raised):

7:09 PM Changeset in webkit [121506] by mikelawther@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

Mark css3/calc/transitions.html flaky (http://webkit.org/b/90234)

  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:
6:59 PM Changeset in webkit [121505] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt: clean up passing of log messages between processes
https://bugs.webkit.org/show_bug.cgi?id=90123

Reviewed by Ojan Vafai.

It turns out log messages are perfectly picklable by themselves
and contain the process id of the process that generated the
message, so if we just pass the record from the worker to the
manager and call logger.handle() in the manager, everything just
works :).

The change is covered by existing tests.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._log_messages):

  • Scripts/webkitpy/layout_tests/controllers/worker.py:

(_WorkerLogHandler.emit):

  • Scripts/webkitpy/layout_tests/views/metered_stream.py:

(MeteredStream.init):
(_LogHandler.emit):

6:56 PM Changeset in webkit [121504] by wsiegrist@apple.com
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/buildbot.tac

Make sure master umask is set correctly

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

[Qt] Remove unnecessary AffineTransform calls
https://bugs.webkit.org/show_bug.cgi?id=90178

Patch by Bruno de Oliveira Abinader <Bruno de Oliveira Abinader> on 2012-06-28
Reviewed by Noam Rosenthal.

Qt currently ignores the const AffineTransform& parameter on
Pattern::createPlatformPattern, so removing it from all its Qt calls and
changing the function signature if platform is Qt.

  • platform/graphics/Pattern.h:

(Pattern):

  • platform/graphics/qt/FontQt.cpp:

(WebCore::fillPenForContext):
(WebCore::strokePenForContext):

  • platform/graphics/qt/FontQt4.cpp:

(WebCore::fillPenForContext):
(WebCore::strokePenForContext):

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::drawRepeatPattern):

  • platform/graphics/qt/PatternQt.cpp:

(WebCore::Pattern::createPlatformPattern):

6:45 PM Changeset in webkit [121502] by dpranke@chromium.org
  • 2 edits
    2 adds in trunk/Tools

add a pylint wrapper for linting python code
https://bugs.webkit.org/show_bug.cgi?id=90232

Reviewed by Adam Barth.

Currently we use 'pep8' to check python code in
check-webkit-style. pep8 is fast but simple; pylint is slower
but has much more robust linting capabilities and will catch
variable typos and all sorts of other things. Eventually we
should switch check-webkit-style to use this, but our code is
far from linting now so it needs to be cleaned up first.

This change adds the infrastructure and a wrapper so we can
start doing that.

  • Scripts/lint-webkitpy: Added.
  • Scripts/webkitpy/pylintrc: Added.
  • Scripts/webkitpy/thirdparty/init.py:

(AutoinstallImportHook.find_module):
(AutoinstallImportHook._install_pylint):

6:42 PM Changeset in webkit [121501] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

[Qt] When uploading an opaque image to a texture for TextureMapper, unnecessary alpha operations take place
https://bugs.webkit.org/show_bug.cgi?id=90229

Reviewed by Luiz Agostini.

For opaque web content in WebKit2, we use the RGB32 image format. When we special-case
it in GraphicsContext3DQt, we can avoid any alpha operations and perform a regular copy.

Covered existing API tests, as this code path is always used when rendering.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3D::getImageData):

6:30 PM Changeset in webkit [121500] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Compile chromium compositor implementation files into separate .lib
https://bugs.webkit.org/show_bug.cgi?id=90233

Reviewed by Adam Barth.

  • WebCore.gyp/WebCore.gyp:
6:18 PM Changeset in webkit [121499] by tony@chromium.org
  • 4 edits in trunk/Tools

[GTK] Use WEBKITOUTPUTDIR to find fonts in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=90215

Reviewed by Martin Robinson.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeFonts): Check for WEBKITOUTPUTDIR first.

  • Scripts/webkitpy/layout_tests/port/gtk.py:

(GtkPort.setup_environ_for_server): Copy the environment variable to the child process.

  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::inititializeFontConfigSetting): Check for WEBKITOUTPUTDIR first.

6:18 PM Changeset in webkit [121498] by wsiegrist@apple.com
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg

Switch master ditto command to unzip since the new master does not have ditto.

6:14 PM Changeset in webkit [121497] by dpranke@chromium.org
  • 19 edits
    1 copy in trunk/Tools

derive ChromiumPort from WebKitPort in NRWT in order to support skipping tests if symbols are missing
https://bugs.webkit.org/show_bug.cgi?id=89706

Reviewed by Ojan Vafai.

Try again to land the change first landed in r121363. This patch
adds a bunch more tests and reworks the handling of
port-specific default values for --pixel-tests and --time-out-ms
to be more consistent (adding a default_pixel_tests() method,
pushing the webkit default_timeout_ms() value up into base.py,
and overriding it properly in the chromium and apple mac ports.

Also change the logic in
run_webkit_tests._setup_derived_options() to not second-guess
what the port wants the timeout value to be for debug builds;
computing this in two different places led to several bugs.

This change also changes the Chromium unittest ports to derive
from ChromiumPortTestCase instead of PortTestCase, so that we
ensure that we're running the same tests on all port variants
more easily. There's more cleanup that can be done here, but
this is good enough for now

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.default_pixel_tests):
(Port):
(Port.default_timeout_ms):

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort):
(ChromiumPort.init):
(ChromiumPort.default_pixel_tests):
(ChromiumPort.default_timeout_ms):
(ChromiumPort.driver_name):
(ChromiumPort._driver_class):
(ChromiumPort._missing_symbol_to_skipped_tests):
(ChromiumPort.skipped_layout_tests):
(ChromiumPort.setup_test_run):
(ChromiumPort._path_to_image_diff):
(ChromiumPort._convert_path):

  • Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:

(ChromiumAndroidPortTest):
(ChromiumAndroidPortTest.test_expectations_files):

  • Scripts/webkitpy/layout_tests/port/chromium_linux.py:

(ChromiumLinuxPort._modules_to_search_for_symbols):

  • Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:

(ChromiumLinuxPortTest):

  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:

(ChromiumMacPort._modules_to_search_for_symbols):

  • Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

(ChromiumMacPortTest):

  • Scripts/webkitpy/layout_tests/port/chromium_port_testcase.py:

split off from chromium_unittest.

  • Scripts/webkitpy/layout_tests/port/chromium_win.py:

(ChromiumWinPort._modules_to_search_for_symbols):

  • Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:

(ChromiumWinTest):

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort.default_timeout_ms):

  • Scripts/webkitpy/layout_tests/port/mac_unittest.py:

(MacTest.test_default_timeout_ms):

  • Scripts/webkitpy/layout_tests/port/mock_drt.py:

(MockDRTPort.start_http_server):

  • Scripts/webkitpy/layout_tests/port/port_testcase.py:

(PortTestCase.test_default_timeout_ms):
(PortTestCase):
(PortTestCase.test_default_pixel_tests):

  • Scripts/webkitpy/layout_tests/port/test.py:

(TestPort.default_pixel_tests):

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitPort._modules_to_search_for_symbols):
(WebKitPort):
(WebKitPort._symbols_string):
(WebKitPort._skipped_tests_for_unsupported_features):

  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

(TestWebKitPort._symbols_string):
(TestWebKitPort._tests_for_disabled_features):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(_set_up_derived_options):

6:13 PM Changeset in webkit [121496] by arv@chromium.org
  • 4 edits
    3 adds in trunk

[V8] NodeList wrappers are not kept alive as needed
https://bugs.webkit.org/show_bug.cgi?id=90194

Reviewed by Ojan Vafai.

Source/WebCore:

We need to add custom reachability code for DynamicNodeLists. If the owner of
a DynamicNodeList is reachable then the DynamicNodeList must also be reachable.

Test: fast/dom/NodeList/nodelist-reachable.html

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::visitDOMWrapper): AddImplicitReferences from the owner wrapper.
(WebCore):

  • dom/NodeList.idl:

LayoutTests:

  • fast/dom/NodeList/nodelist-reachable-expected.txt: Added.
  • fast/dom/NodeList/nodelist-reachable.html: Added.
  • platform/chromium/fast/dom/NodeList/nodelist-reachable-expected.txt: Added.
5:59 PM Changeset in webkit [121495] by hayato@chromium.org
  • 3 edits in trunk/LayoutTests

Add a test for a 'user-modify' css property of distributed nodes.
https://bugs.webkit.org/show_bug.cgi?id=90197

Reviewed by Ryosuke Niwa.

  • fast/dom/shadow/user-modify-inheritance-expected.txt:
  • fast/dom/shadow/user-modify-inheritance.html:
5:55 PM Changeset in webkit [121494] by commit-queue@webkit.org
  • 4 edits
    6 adds in trunk

frameborder="no" on frameset is ignored if border attribute set
https://bugs.webkit.org/show_bug.cgi?id=17767

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-06-28
Reviewed by Tony Chang.

Source/WebCore:

Fixes <frameset> frameborder and border handling. Previously we'd
override the frameborder=no setting if border was set. We also
treated frameborder="anything" the same as frameborder=0 since we
we just converted it to a number so frameborder=yes was incorrectly
treated the same as frameborder=no.

Tests: fast/frames/frameset-frameborder-boolean-values.html

fast/frames/frameset-frameborder-inheritance.html
fast/frames/frameset-frameborder-overrides-border.html

  • html/HTMLFrameSetElement.cpp: Proper parsing of yes,no,1,0 values.

(WebCore::HTMLFrameSetElement::parseAttribute):

  • html/HTMLFrameSetElement.h:

(WebCore::HTMLFrameSetElement::border): Border should be 0 if frameborder=no.

LayoutTests:

Add lots of tests for <frameset> frameborder and border handling.

  • fast/frames/frameset-frameborder-boolean-values-expected.txt: Added.
  • fast/frames/frameset-frameborder-boolean-values.html: Added.
  • fast/frames/frameset-frameborder-inheritance-expected.txt: Added.
  • fast/frames/frameset-frameborder-inheritance.html: Added.
  • fast/frames/frameset-frameborder-overrides-border-expected.txt: Added.
  • fast/frames/frameset-frameborder-overrides-border.html: Added.
5:47 PM Changeset in webkit [121493] by jsbell@chromium.org
  • 2 edits in trunk/Tools

run-bindings-tests should return non-zero exit code on test failure
https://bugs.webkit.org/show_bug.cgi?id=90205

Reviewed by Adam Barth.

  • Scripts/run-bindings-tests:

(main):

5:38 PM Changeset in webkit [121492] by jsbell@chromium.org
  • 20 edits
    7 moves
    3 adds in trunk

IndexedDB: Implement IDBTransaction internal active flag
https://bugs.webkit.org/show_bug.cgi?id=89379

Reviewed by Tony Chang.

Source/WebCore:

IDB transactions should only be "active" during IDB success/error callbacks;
attempts to make new requests otherwise (e.g. in a setTimeout callback)
should fail even if the transaction has not yet finished. Implement this logic,
and the closely related requirement that transactions are deactivated when
the context they were created in returns to the event loop, and finally that
when so deactivated they should commit rather than abort (as previously
implemented) if no requests have been filed.

Tests: storage/indexeddb/transaction-active-flag.html

storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html
storage/indexeddb/transaction-complete-with-js-recursion.html
storage/indexeddb/transaction-complete-workers.html

  • Modules/indexeddb/IDBPendingTransactionMonitor.cpp: Simplify API.

(WebCore::transactions):
(WebCore::IDBPendingTransactionMonitor::addNewTransaction):
(WebCore::IDBPendingTransactionMonitor::deactivateNewTransactions):

  • Modules/indexeddb/IDBPendingTransactionMonitor.h:

(WebCore):
(IDBPendingTransactionMonitor):

  • Modules/indexeddb/IDBRequest.cpp: Unregisters from transaction when done,

not on destruction. No longer responsible for working with the pending monitor.
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::~IDBRequest):
(WebCore::IDBRequest::markEarlyDeath):
(WebCore::IDBRequest::resetReadyState):
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent): Set active flag on transaction during callback.

  • Modules/indexeddb/IDBTransaction.cpp: Use state enum to better track lifecycle, and

take ownership of relationship with pending monitor.
(WebCore::IDBTransaction::IDBTransaction): Special cases for version change
transactions.
(WebCore::IDBTransaction::~IDBTransaction):
(WebCore::IDBTransaction::error):
(WebCore::IDBTransaction::setError):
(WebCore::IDBTransaction::objectStore):
(WebCore::IDBTransaction::objectStoreCreated):
(WebCore::IDBTransaction::objectStoreDeleted):
(WebCore::IDBTransaction::setActive): Let IDBRequest and IDBPendingTransactionMonitor
toggle the active state. Needs some smarts because (1) state may move to Finishing during
the request's dispatch phase due to an implicit/explicit abort, and (2) a monitor call
will only trigger a commit if the transaction hasn't had any requests filed.
(WebCore):
(WebCore::IDBTransaction::abort):
(WebCore::IDBTransaction::registerRequest):
(WebCore::IDBTransaction::unregisterRequest):
(WebCore::IDBTransaction::onAbort):
(WebCore::IDBTransaction::onComplete):
(WebCore::IDBTransaction::hasPendingActivity):
(WebCore::IDBTransaction::dispatchEvent):
(WebCore::IDBTransaction::canSuspend):
(WebCore::IDBTransaction::enqueueEvent):

  • Modules/indexeddb/IDBTransaction.h:

(WebCore::IDBTransaction::isFinished):
(IDBTransaction):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::commit): Allow explicit commit() calls from the front end
if no requests have been filed.

  • Modules/indexeddb/IDBTransactionBackendInterface.h:

(IDBTransactionBackendInterface): Expose commit() method.

  • bindings/js/JSMainThreadExecState.cpp:

(WebCore::JSMainThreadExecState::didLeaveScriptContext): Change target function name.

  • bindings/v8/V8RecursionScope.cpp:

(WebCore::V8RecursionScope::didLeaveScriptContext): Change target function name.

Source/WebKit/chromium:

To match the IDB spec, transactions that have had no requests
filed against them should commit, not abort. This requires plumbing
through the commit() call from front-end to back-end.

  • src/IDBTransactionBackendProxy.cpp:

(WebKit::IDBTransactionBackendProxy::commit):
(WebKit):

  • src/IDBTransactionBackendProxy.h:

(IDBTransactionBackendProxy):

  • src/WebIDBTransactionImpl.cpp:

(WebKit::WebIDBTransactionImpl::commit):
(WebKit):

  • src/WebIDBTransactionImpl.h:

LayoutTests:

  • storage/indexeddb/resources/transaction-active-flag.js: Added.
  • storage/indexeddb/resources/transaction-basics.js:

(completeCallback): Empty transactions now commit rather than abort.
(emptyCompleteCallback):

  • storage/indexeddb/resources/transaction-complete-workers.js: Renamed from LayoutTests/storage/indexeddb/resources/transaction-abort-workers.js.
  • storage/indexeddb/structured-clone.html: Assumed empty transactions aborted.
  • storage/indexeddb/transaction-active-flag-expected.txt: Added.
  • storage/indexeddb/transaction-active-flag.html: Added.
  • storage/indexeddb/transaction-basics-expected.txt:
  • storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-cross-frame-expected.txt.
  • storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-cross-frame.html.
  • storage/indexeddb/transaction-complete-with-js-recursion-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-expected.txt.
  • storage/indexeddb/transaction-complete-with-js-recursion.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion.html.
  • storage/indexeddb/transaction-complete-workers-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-workers-expected.txt.
  • storage/indexeddb/transaction-complete-workers.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-workers.html.
  • storage/indexeddb/tutorial.html: Assumed empty transactions aborted.
5:13 PM Changeset in webkit [121491] by pdr@google.com
  • 3 edits
    2 adds in trunk

Prevent crash in animate resource handling
https://bugs.webkit.org/show_bug.cgi?id=90042

Reviewed by Abhishek Arya.

Source/WebCore:

This patch adds a check that we are in a document before registering animation
resources and creating a target element in SVGSMILElement. This prevents a crash where
we would register resources and create the target when we were not in a document
but fail to deregister / reset the target when we were removed from a document.
In failing to reset the target, we can crash when trying to deregister resources that
were not created after being inserted into a document and then removed.

The existence of m_targetResources and registered animation resources is now
tied to being in a document.

Test: svg/custom/animate-reference-crash.html

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::targetElement):

LayoutTests:

  • svg/custom/animate-reference-crash-expected.txt: Added.
  • svg/custom/animate-reference-crash.html: Added.
5:06 PM Changeset in webkit [121490] by wsiegrist@apple.com
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/buildbot.tac

Update buildbot config for new hardware.

5:01 PM Changeset in webkit [121489] by abarth@webkit.org
  • 2 edits in trunk/Tools

[chromium] Reset the device scale factor to 1 before each test is run
https://bugs.webkit.org/show_bug.cgi?id=90212

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

Some tests change the device scale factor, so this needs to be reset to
1.0 at the start of each test to avoid test flakiness.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::reset):

4:48 PM Changeset in webkit [121488] by jsbell@chromium.org
  • 3 edits
    3 adds in trunk

IndexedDB: IDBDatabase should have a close pending field.
https://bugs.webkit.org/show_bug.cgi?id=71129

Reviewed by Tony Chang.

Source/WebCore:

Handle the IDB spec case that "versionchange" events should not be fired
against connections that have the internal "closePending" flag set but
are not yet closed due to running transactions.

Test: storage/indexeddb/database-closepending-flag.html

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::onVersionChange):

LayoutTests:

  • storage/indexeddb/database-closepending-flag-expected.txt: Added.
  • storage/indexeddb/database-closepending-flag.html: Added.
  • storage/indexeddb/resources/database-closepending-flag.js: Added.

(test):
(openConnection.request.onsuccess.request.onsuccess):
(openConnection.request.onsuccess):
(openConnection):
(testIDBDatabaseName):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess):
(testIDBDatabaseObjectStoreNames.request.onsuccess):
(testIDBDatabaseObjectStoreNames):
(testIDBDatabaseTransaction):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onblocked):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess):
(testDatabaseDeletion.request.onsuccess.request.onblocked):
(testDatabaseDeletion.request.onsuccess.request.onsuccess):

4:38 PM Changeset in webkit [121487] by ojan@chromium.org
  • 2 edits in trunk/LayoutTests

Replace a BUG_OJAN with a proper tracking bug and unskip two
tests in preparation for rebaselining them.

  • platform/chromium/TestExpectations:
4:27 PM Changeset in webkit [121486] by enne@google.com
  • 11 edits
    1 copy
    1 move
    1 add
    3 deletes in trunk/Source

[chromium] Split WebScrollbar into WebPluginScrollbar and WebScrollbar
https://bugs.webkit.org/show_bug.cgi?id=90117

Reviewed by James Robinson.

Source/Platform:

Move WebScrollbar from client API to Platform.

  • Platform.gypi:
  • chromium/public/WebScrollbar.h: Copied from Source/WebKit/chromium/public/WebPluginScrollbarClient.h.

(WebKit):
(WebScrollbar):
(WebKit::WebScrollbar::~WebScrollbar):

Source/WebCore:

Make WebCore also depend on Platform.

  • WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

Convert WebScrollbar/WebScrollbarClient/WebScrollbarImpl to be
WebPluginScrollbar, WebPluginScrollbarClient, and
WebPluginScrollbarImpl. Modify ScrollbarGroup
to use this instead.

WebScrollbar is now the base interface for a pre-existing scrollbar
that is accessed in a const manner. It also provides all of the common
WebKit ScrollTypes.h enums. WebPluginScrollbar is now a scrollbar that
has been externally created and is externally modified in terms of its
position, invalidation, and painting.

This is a pre-refactoring for adding Web versions of ScrollbarTheme
into the Platform directory which will operate on WebScrollbar, but
that don't need all of what WebPluginScrollbar provides.

As WebScrollbar is moved to Platform, WebKit.gyp now must depend on
Platform as well.

  • WebKit.gyp:
  • public/WebPluginScrollbar.h:

(WebKit):
(WebPluginScrollbar):
(WebKit::WebPluginScrollbar::~WebPluginScrollbar):

  • public/WebPluginScrollbarClient.h:

(WebKit):
(WebPluginScrollbarClient):

  • public/WebScrollbar.h: Removed.
  • public/WebScrollbarClient.h: Removed.
  • src/AssertMatchingEnums.cpp:
  • src/ScrollbarGroup.cpp:

(WebKit::ScrollbarGroup::scrollbarCreated):
(WebKit::ScrollbarGroup::scrollbarDestroyed):
(WebKit::ScrollbarGroup::scrollSize):
(WebKit::ScrollbarGroup::scrollPosition):
(WebKit::ScrollbarGroup::contentsSize):

  • src/ScrollbarGroup.h:

(WebKit):
(ScrollbarGroup):

  • src/WebPluginScrollbarImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarImpl.cpp.

(WebKit):
(WebKit::WebPluginScrollbar::createForPlugin):
(WebKit::WebPluginScrollbar::defaultThickness):
(WebKit::WebPluginScrollbarImpl::WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::~WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::setScrollOffset):
(WebKit::WebPluginScrollbarImpl::invalidateScrollbarRect):
(WebKit::WebPluginScrollbarImpl::getTickmarks):
(WebKit::WebPluginScrollbarImpl::convertFromContainingViewToScrollbar):
(WebKit::WebPluginScrollbarImpl::scrollbarStyleChanged):
(WebKit::WebPluginScrollbarImpl::isOverlay):
(WebKit::WebPluginScrollbarImpl::value):
(WebKit::WebPluginScrollbarImpl::setLocation):
(WebKit::WebPluginScrollbarImpl::setValue):
(WebKit::WebPluginScrollbarImpl::setDocumentSize):
(WebKit::WebPluginScrollbarImpl::scroll):
(WebKit::WebPluginScrollbarImpl::paint):
(WebKit::WebPluginScrollbarImpl::handleInputEvent):
(WebKit::WebPluginScrollbarImpl::onMouseDown):
(WebKit::WebPluginScrollbarImpl::onMouseUp):
(WebKit::WebPluginScrollbarImpl::onMouseMove):
(WebKit::WebPluginScrollbarImpl::onMouseLeave):
(WebKit::WebPluginScrollbarImpl::onMouseWheel):
(WebKit::WebPluginScrollbarImpl::onKeyDown):

  • src/WebPluginScrollbarImpl.h: Added.

(WebCore):
(WebKit):
(WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::scrollOffset):
(WebKit::WebPluginScrollbarImpl::scrollbar):

  • src/WebScrollbarImpl.h: Removed.
4:25 PM Changeset in webkit [121485] by hclam@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Mark a test as failing on Linux debug

fast/forms/select/select-state-restore.html is failing on Linux debug because of timeout.

Not reviewed.

  • platform/chromium/TestExpectations:
4:21 PM Changeset in webkit [121484] by ojan@chromium.org
  • 14 edits
    1 copy
    1 move in trunk/LayoutTests

Rebaselines after http://trac.webkit.org/changeset/119507.
These were all done using "webkit-patch rebaseline-expectations".

  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug131020-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug131020-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.txt:
  • platform/chromium-win/tables/mozilla/bugs/bug131020-expected.png:
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/tables/mozilla/bugs/bug131020-expected.txt: Copied from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
  • platform/gtk/TestExpectations:
  • platform/gtk/tables/mozilla/bugs/bug131020-expected.txt: Renamed from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
  • platform/mac/TestExpectations:
  • platform/mac/tables/mozilla/bugs/bug131020-expected.txt:
  • platform/qt/TestExpectations:
  • platform/qt/tables/mozilla/bugs/bug131020-expected.txt:
  • platform/win/TestExpectations:
4:20 PM Changeset in webkit [121483] by abarth@webkit.org
  • 3 edits
    1 add in trunk/Source/WebKit/chromium

[Chromium] On Android, we should be able to ask the embedder what intents exist in a region of the page
https://bugs.webkit.org/show_bug.cgi?id=90210

Reviewed by Dimitri Glazkov.

This patch introduces a function that asks the embedder to analyze the
region around a hit test result for interesting content, like phone
numbers, email addresses, or physical addresses. The embedder then
responds with the "most interesting" content, together with an intent
URL for enacting the intent embodied by that content.

This function will be used in a subsequent patch to detect content
after touch events.

  • WebKit.gyp:
  • public/WebContentDetectionResult.h: Added.

(WebKit):
(WebContentDetectionResult):
(WebKit::WebContentDetectionResult::WebContentDetectionResult):
(WebKit::WebContentDetectionResult::isValid):
(WebKit::WebContentDetectionResult::range):
(WebKit::WebContentDetectionResult::string):
(WebKit::WebContentDetectionResult::intent):

  • public/WebViewClient.h:

(WebViewClient):
(WebKit::WebViewClient::detechContentAround):

4:12 PM Changeset in webkit [121482] by sullivan@apple.com
  • 4 edits in trunk/Source/WebKit2

<https://bugs.webkit.org/show_bug.cgi?id=90216>
<rdar://problem/11766518>
Undo handling in WebKit2 is not robust against some page-closing code paths

Reviewed by Enrica Casucci.

  • UIProcess/API/mac/PageClientImpl.h:

Declared public function viewWillMoveToAnotherWindow().

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
New function, calls clearAllEditCommands() to remove any Undo actions from the stack.
This guarantees that no Undo actions will be abandoned when the PageClientImpl is dealloc'ed.

  • UIProcess/API/mac/WKView.mm:

(-[WKView viewWillMoveToWindow:]):
Now informs PageClientImpl via new function PageClientImpl::viewWillMoveToAnotherWindow().

4:05 PM Changeset in webkit [121481] by hayato@chromium.org
  • 5 edits in trunk

CompositeShadowTreeWalker should use InsertionPoint::hasDistribution() instead of InsertionPoint::isActive().
https://bugs.webkit.org/show_bug.cgi?id=89177

Reviewed by Dimitri Glazkov.

Source/WebCore:

Prevents ComposedShadowTreeWalker from escaping out of an
insertion point (which has distributed nodes) from a non-used
fallback element in the insertion point. Such a fallback element
should be treated as in an orphaned subtree.

ComposedShadowTreeParentWalker will be also fixed in a follow-up patch.

Test: fast/dom/shadow/composed-shadow-tree-walker.html

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):

LayoutTests:

  • fast/dom/shadow/composed-shadow-tree-walker-expected.txt:
  • fast/dom/shadow/composed-shadow-tree-walker.html:
4:03 PM Changeset in webkit [121480] by commit-queue@webkit.org
  • 8 edits
    1 add in trunk/Source/JavaScriptCore

Adding a commenting utility to record BytecodeGenerator comments
with opcodes that are emitted. Presently, the comments can only
be constant strings. Adding comments for opcodes is optional.
If a comment is added, the comment will be printed following the
opcode when CodeBlock::dump() is called.

This utility is disabled by default, and is only meant for VM
development purposes. It should not be enabled for product builds.

To enable this utility, set ENABLE_BYTECODE_COMMENTS in CodeBlock.h
to 1.

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

Patch by Mark Lam <mark.lam@apple.com> on 2012-06-28
Reviewed by Geoffrey Garen.

  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecodeCommentAndNewLine): Dumps the comment.
(JSC):
(JSC::CodeBlock::printUnaryOp): Add comment dumps.
(JSC::CodeBlock::printBinaryOp): Add comment dumps.
(JSC::CodeBlock::printConditionalJump): Add comment dumps.
(JSC::CodeBlock::printCallOp): Add comment dumps.
(JSC::CodeBlock::printPutByIdOp): Add comment dumps.
(JSC::CodeBlock::dump): Add comment dumps.
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::commentForBytecodeOffset):

Finds the comment for an opcode if available.

(JSC::CodeBlock::dumpBytecodeComments):

For debugging whether comments are collected.
It is not being called anywhere.

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::bytecodeComments):

  • bytecode/Comment.h: Added.

(JSC):
(Comment):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitOpcode): Calls emitComment().
(JSC):
(JSC::BytecodeGenerator::emitComment): Adds comment to CodeBlock.
(JSC::BytecodeGenerator::prependComment):

Registers a comment for emitComemnt() to use later.

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):
(JSC::BytecodeGenerator::emitComment):
(JSC::BytecodeGenerator::prependComment):

These are inlined versions of these functions that nullify them
when ENABLE_BYTECODE_COMMENTS is 0.

(JSC::BytecodeGenerator::comments):

4:02 PM Changeset in webkit [121479] by rniwa@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Fix a typo in the change log per review comment.

4:01 PM Changeset in webkit [121478] by rniwa@webkit.org
  • 5 edits
    2 adds in trunk

Cleanup HTMLFormCollection
https://bugs.webkit.org/show_bug.cgi?id=90111

Reviewed by Andreas Kling.

Source/WebCore:

Got rid of getNamedItem and enamed getNamedFormItem to firstNamedItem and got rid of duplicateNumber argument since
it's always 0. Also made it a static local function. In addition, removed nextItem() since it's not used anywhere.

WebKit API Test: WebKit1.HTMLFormCollectionNamedItemTest

  • html/HTMLFormCollection.cpp:

(WebCore::firstNamedItem):
(WebCore):
(WebCore::HTMLFormCollection::namedItem):

  • html/HTMLFormCollection.h:

(HTMLFormCollection):

Tools:

Add a WebKit API test using copy-paste design pattern per kling's request.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.html: Added.
  • TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.mm: Added.

(-[HTMLFormCollectionNamedItemTest webView:didFinishLoadForFrame:]):
(TestWebKitAPI):
(TestWebKitAPI::TEST):

3:57 PM Changeset in webkit [121477] by commit-queue@webkit.org
  • 12 edits in trunk/Source

IndexedDB: Hook up render-side key ASSERTing for get()
https://bugs.webkit.org/show_bug.cgi?id=90001

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-28
Reviewed by Tony Chang.

Source/WebCore:

Hook up the new onSuccess and add it to the interface. For now,
simply assert that the right value is set. Add the same assertion
logic in the value-construction logic when the cursor advances.

No new tests, existing tests verify this refactor is correct.

  • Modules/indexeddb/IDBCallbacks.h:

(IDBCallbacks):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::getInternal):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore):
(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBRequest.h:
  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromSerializedValueAndKeyPath):

  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore):

Source/WebKit/chromium:

Hook up Chromium WebKit API to new onSuccess handler.

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess):

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp:
3:45 PM Changeset in webkit [121476] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

[mac] WKTR windows still don't stay off screen sometimes
https://bugs.webkit.org/show_bug.cgi?id=90214
<rdar://problem/11760263>

Reviewed by Simon Fraser.

In some cases, the system itself will consult [WebKitTestRunnerWindow frame], so we should refrain from
overriding it and instead provide a different method to use when we want the web-facing "fake" window origin
(for PlatformWebView::windowFrame()).

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(-[WebKitTestRunnerWindow frameRespectingFakeOrigin]):
(WTR::PlatformWebView::windowFrame):

3:41 PM NewRunWebKitTests edited by rafael.lobo@openbossa.org
Adding a tip about how to put expected results into a given platform path. (diff)
3:34 PM Changeset in webkit [121475] by Martin Robinson
  • 4 edits
    2 adds in trunk/Tools

[GTK] Add unit tests for GtkInputMethodFilter
https://bugs.webkit.org/show_bug.cgi?id=88698

Reviewed by Carlos Garcia Campos.

Add unit tests for GtkInputMethodFilter in the WebCore platform layer.
This change adds the TestGtk test suite which will be used for all non-API
layer GTK unit tests.

  • TestWebKitAPI/GNUmakefile.am: Update the build to include the new tests.
  • TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp: Added.

(TestWebKitAPI::PlatformWebView::PlatformWebView): Remove the call to gtk_init here
as it's now in main.cpp.

  • TestWebKitAPI/gtk/main.cpp: Change the g_type_init call to gtk_init, because now

a majority of all unit tests depend on GTK+ being initialized.

2:55 PM Changeset in webkit [121474] by commit-queue@webkit.org
  • 7 edits in trunk

Add support for DEPTH_STENCIL to WEBGL_depth_texture
https://bugs.webkit.org/show_bug.cgi?id=90109

Patch by Gregg Tavares <gman@google.com> on 2012-06-28
Reviewed by Kenneth Russell.

Source/WebCore:

  • html/canvas/WebGLDepthTexture.idl:
  • html/canvas/WebGLFramebuffer.cpp:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):

LayoutTests:

  • fast/canvas/webgl/webgl-depth-texture-expected.txt:
  • fast/canvas/webgl/webgl-depth-texture.html:
2:51 PM Changeset in webkit [121473] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[chromium] Move chromium compositor implementation files into separate section in WebCore.gypi
https://bugs.webkit.org/show_bug.cgi?id=90201

Patch by James Robinson <jamesr@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

This moves the chromium compositor implementation files to a separate gyp variable to make future changes
easier. The files still all link into webcore_platform.lib, as before.

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
2:43 PM Changeset in webkit [121472] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-28

  • DEPS:
2:30 PM Changeset in webkit [121471] by schenney@chromium.org
  • 2 edits
    8 adds in trunk/LayoutTests

[chromium] rebaseline svg text layouts?
https://bugs.webkit.org/show_bug.cgi?id=89936

Unreviewed Chromium test expectations update.

The SVG tests for this bug all seem OK, so they are being rebaselined.
The other content is less clear, so it is being left for an expert.

  • platform/chromium-win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
  • platform/chromium-win-xp/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
  • platform/chromium-win-xp/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
  • platform/chromium-win-xp/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Added.
  • platform/chromium-win-xp/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
  • platform/chromium-win-xp/svg/text/text-intro-05-t-expected.txt: Added.
  • platform/chromium-win-xp/svg/zoom/page/zoom-foreignObject-expected.png: Added.
  • platform/chromium/TestExpectations:
2:26 PM Changeset in webkit [121470] by hclam@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Mark a test as slow.
https://bugs.webkit.org/show_bug.cgi?id=90207

fast/forms/select/select-state-restore.html is a slow test on debug builds.
Not reviewed.

  • platform/chromium/TestExpectations:
2:10 PM Changeset in webkit [121469] by hclam@chromium.org
  • 15 edits
    2 deletes in trunk/Source/WebKit/chromium

Unreviewed, rolling out r121463.
http://trac.webkit.org/changeset/121463
https://bugs.webkit.org/show_bug.cgi?id=90094

Broke Windows build.

  • WebKit.gypi:
  • WebKitUnitTests.gyp:
  • public/WebDOMMessageEvent.h:
  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::AssociatedURLLoaderTest):
(WebKit::AssociatedURLLoaderTest::SetUp):
(WebKit::AssociatedURLLoaderTest::CheckMethodFails):
(WebKit::AssociatedURLLoaderTest::CheckHeaderFails):
(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):

  • tests/EventListenerTest.cpp:
  • tests/FrameTestHelpers.cpp:

(WebKit::FrameTestHelpers::registerMockedURLLoad):
(FrameTestHelpers):
(WebKit::FrameTestHelpers::loadFrame):

  • tests/FrameTestHelpers.h:

(FrameTestHelpers):

  • tests/ListenerLeakTest.cpp:

(WebKit::ListenerLeakTest::RunTest):

  • tests/PopupMenuTest.cpp:

(WebKit::SelectPopupMenuTest::registerMockedURLLoad):
(WebKit::SelectPopupMenuTest::loadFrame):
(WebKit::TEST_F):

  • tests/RunAllTests.cpp:
  • tests/URLTestHelpers.cpp: Removed.
  • tests/URLTestHelpers.h: Removed.
  • tests/WebFrameTest.cpp:

(WebKit::WebFrameTest::registerMockedHttpURLLoad):
(WebKit::WebFrameTest::registerMockedChromeURLLoad):
(WebKit::TEST_F):

  • tests/WebPageNewSerializerTest.cpp:

(WebKit::WebPageNewSerializeTest::registerMockedURLLoad):
(WebPageNewSerializeTest):
(WebKit::WebPageNewSerializeTest::setUpCSSTestPage):
(WebKit::WebPageNewSerializeTest::loadURLInTopFrame):
(WebKit::WebPageNewSerializeTest::resourceVectorContains):
(WebKit::TEST_F):

  • tests/WebPageSerializerTest.cpp:

(WebKit::WebPageSerializerTest::registerMockedURLLoad):
(WebKit::WebPageSerializerTest::loadURLInTopFrame):
(WebKit::WebPageSerializerTest::webVectorContains):
(WebKit::TEST_F):

  • tests/WebViewTest.cpp:

(WebKit::TEST_F):
(WebKit::WebViewTest::testAutoResize):
(WebKit::WebViewTest::testTextInputType):

2:02 PM Changeset in webkit [121468] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

[EFL] Enable support for HTML5 datalist
https://bugs.webkit.org/show_bug.cgi?id=90157

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-28
Reviewed by Martin Robinson.

.:

Turn on DATALIST flag by default on EFL port to
support HTML5 datalist tag.

  • Source/cmake/OptionsEfl.cmake:

Tools:

Turn on DATALIST flag by default on EFL port to
support HTML5 datalist tag.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

  • platform/efl/Skipped: Unskip fast/forms/datalist tests now that

the DATALIST flag is turned on by default on EFL port.

  • platform/efl/fast/forms/datalist/input-list-expected.txt: Added.

We need platform-specific result because we don't support datalist
UI for any element yet. This should be progressively added later
on and the expected result will evolve.

1:56 PM Changeset in webkit [121467] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[EFL] Use Eina_Module API instead of dlopen in PluginPackageEfl
https://bugs.webkit.org/show_bug.cgi?id=89972

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-28
Reviewed by Antonio Gomes.

Use convenience helpers in Eina_Module to load plugins instead
of POSIX dlopen().

No new tests, behavior has not changed.

  • platform/FileSystem.h:

(WebCore):

  • platform/efl/FileSystemEfl.cpp:

(WebCore::unloadModule):

  • plugins/efl/PluginPackageEfl.cpp:

(WebCore::PluginPackage::load):

1:54 PM Changeset in webkit [121466] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32bit DFG incorrectly claims an fpr is fillable even if it has not been proven double
https://bugs.webkit.org/show_bug.cgi?id=90127

Reviewed by Filip Pizlo.

The 32-bit version of fillSpeculateDouble doesn't handle Number->fpr loads
correctly. This patch fixes this by killing the fill info in the GenerationInfo
when the spillFormat doesn't guarantee the value is a double.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):

1:47 PM Changeset in webkit [121465] by bfulgham@webkit.org
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Unreviewed build correction. Add two missing macro
declarations to vsprops file.

  • win/tools/vsprops/FeatureDefinesCairo.vsprops: Add missing

ENABLE_HIGH_DPI_CANVAS and ENABLE_REQUEST_ANIMATION_FRAME macros.

1:37 PM Changeset in webkit [121464] by tony@chromium.org
  • 10 edits in trunk

Enable CSS grid layout LayoutTests on platform Mac
https://bugs.webkit.org/show_bug.cgi?id=90113

Reviewed by Ojan Vafai.

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetDefaultsToConsistentValues): Reset the value to NO between tests.

LayoutTests:

Use 1 instead of true, since that's what WebView.mm expects.

  • fast/css-grid-layout/containing-block-grids.html:
  • fast/css-grid-layout/display-grid-set-get.html:
  • fast/css-grid-layout/floating-empty-grids.html:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
  • fast/css-grid-layout/grid-columns-rows-get-set.html:
  • fast/css-grid-layout/grid-item-column-row-get-set.html:
  • platform/mac/Skipped: Unskip tests.
1:34 PM Changeset in webkit [121463] by shawnsingh@chromium.org
  • 15 edits
    1 copy
    1 add in trunk/Source/WebKit/chromium

[chromium] Use WEBKIT_IMPLEMENTATION == 1 for webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=90094

Reviewed by Adam Barth.

This patch adds the WEBKIT_IMPLEMENTATION = 1 define to
WebKitUnitTests.gyp. To get it to compile correctly, some string
and URL code was refactored and fixed.

  • WebKit.gypi:
  • WebKitUnitTests.gyp:
  • public/WebDOMMessageEvent.h:

(WebKit::WebDOMMessageEvent::WebDOMMessageEvent):

  • tests/AssociatedURLLoaderTest.cpp:
  • tests/EventListenerTest.cpp:
  • tests/FrameTestHelpers.cpp:

(WebKit::FrameTestHelpers::loadFrame):

  • tests/FrameTestHelpers.h:
  • tests/ListenerLeakTest.cpp:

(WebKit::ListenerLeakTest::RunTest):

  • tests/PopupMenuTest.cpp:
  • tests/RunAllTests.cpp:
  • tests/URLTestHelpers.cpp: Added.

(URLTestHelpers):
(WebKit::URLTestHelpers::registerMockedURLFromBaseURL):
(WebKit::URLTestHelpers::registerMockedURLLoad):

  • tests/URLTestHelpers.h: Copied from Source/WebKit/chromium/public/WebDOMMessageEvent.h.

(WebKit):
(URLTestHelpers):
(WebKit::URLTestHelpers::toKURL):

  • tests/WebFrameTest.cpp:
  • tests/WebPageNewSerializerTest.cpp:
  • tests/WebPageSerializerTest.cpp:
  • tests/WebViewTest.cpp:
1:33 PM Changeset in webkit [121462] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[Qt] Fix TextureMapper rendering of GraphicsSurface on Mac
https://bugs.webkit.org/show_bug.cgi?id=90154

Patch by Jocelyn Turcotte <turcotte.j@gmail.com> on 2012-06-28
Reviewed by Noam Rosenthal.

Fix a regression introduced in r120608.
texture2DRect takes texel coordinates, unlike texture2D which needs normalized coordinates.

Pass an additional textureSize uniform and multiply it by the normalized coordinates.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawTextureRectangleARB):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::TextureMapperShaderProgram::TextureMapperShaderProgram):
(WebCore::TextureMapperShaderProgramRectSimple::TextureMapperShaderProgramRectSimple):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(WebCore::TextureMapperShaderProgram::textureSizeLocation):
(TextureMapperShaderProgram):

1:28 PM Changeset in webkit [121461] by Simon Fraser
  • 9 edits in trunk/Source/WebCore

Improve compositing logging output
https://bugs.webkit.org/show_bug.cgi?id=90199

Reviewed by Tim Horton (w00t!).

Improve the compositing logging channel output in a few
useful ways:

  1. Report memory use, rather than megapixels
  2. Show element class names
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::backingStoreMemoryEstimate):

  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::backingStoreMemoryEstimate):

  • platform/graphics/ca/GraphicsLayerCA.h:

(GraphicsLayerCA):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::nameForLayer):
(WebCore::RenderLayerBacking::backingStoreMemoryEstimate):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::RenderLayerCompositor):
(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::logLayerInfo):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

1:27 PM Changeset in webkit [121460] by mifenton@rim.com
  • 2 edits in trunk/Tools

[BlackBerry] Add watchlist options for Blackberry and editing.
https://bugs.webkit.org/show_bug.cgi?id=90193

Unreviewed.

Add BlackBerry and Editing watchlist and monitor them.

  • Scripts/webkitpy/common/config/watchlist:
1:22 PM Changeset in webkit [121459] by senorblanco@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Remove a duplicate expectation.

  • platform/chromium/TestExpectations:
1:19 PM Changeset in webkit [121458] by jamesr@google.com
  • 8 edits in trunk/Source/WebCore

[chromium] Fix up more includes in compositor code
https://bugs.webkit.org/show_bug.cgi?id=90200

Reviewed by Adrienne Walker.

Adds includes we are using and removes ones that we aren't using.

  • platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:
  • platform/graphics/chromium/ContentLayerChromium.cpp:
  • platform/graphics/chromium/ProgramBinding.cpp:
  • platform/graphics/chromium/RenderSurfaceChromium.cpp:
  • platform/graphics/chromium/cc/CCGraphicsContext.h:
  • platform/graphics/chromium/cc/CCRenderSurface.h:

(WebCore):

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
1:13 PM Changeset in webkit [121457] by schenney@chromium.org
  • 4 edits in trunk/LayoutTests

[chromium] svg/custom/clip-path-referencing-use2.svg fails in "drt mode" in DRT
https://bugs.webkit.org/show_bug.cgi?id=85085

Unreviewed Chromium expectations update.

NRWT is not printing the stdout from this test, which is not really
enough to warrant keeping the expectations incorrect. The bug stays
open.

  • platform/chromium-mac/svg/custom/clip-path-referencing-use2-expected.txt:
  • platform/chromium-win/svg/custom/clip-path-referencing-use2-expected.txt:
  • platform/chromium/TestExpectations:
1:02 PM Changeset in webkit [121456] by commit-queue@webkit.org
  • 5 edits
    1 move
    1 add
    1 delete in trunk

[CSSRegions]Rename NamedFlow::contentNodes to NamedFlow::getContent()
https://bugs.webkit.org/show_bug.cgi?id=90163

Patch by Andrei Onea <onea@adobe.com> on 2012-06-28
Reviewed by Andreas Kling.

Source/WebCore:

Latest CSS Regions spec defines the NamedFlow interface as having a function named getContent,
rather than an attribute named contentNodes.
http://www.w3.org/TR/css3-regions/#the-namedflow-interface

Test: fast/regions/webkit-named-flow-get-content.html

  • dom/WebKitNamedFlow.cpp:

(WebCore::WebKitNamedFlow::getContent):

  • dom/WebKitNamedFlow.h:

(WebKitNamedFlow):

  • dom/WebKitNamedFlow.idl:

LayoutTests:

Changed test for NameFlow::contentNodes to reflect new spec, which uses
NameFlow::getContent().

  • fast/regions/webkit-named-flow-content-nodes-expected.txt: Removed.
  • fast/regions/webkit-named-flow-get-content-expected.txt: Added.
  • fast/regions/webkit-named-flow-get-content.html: Renamed from LayoutTests/fast/regions/webkit-named-flow-content-nodes.html.
12:56 PM Changeset in webkit [121455] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Unreviewed, upgrade myself to a reviewer!

http://www.webkit.org/blog/2082/tim-horton-is-now-a-webkit-reviewer/

  • Scripts/webkitpy/common/config/committers.py:
12:48 PM Changeset in webkit [121454] by rniwa@webkit.org
  • 6 edits
    2 adds in trunk

REGRESSION(r121232): named properties on document and window may return wrong object
https://bugs.webkit.org/show_bug.cgi?id=90133

Reviewed by Andreas Kling.

Source/WebCore:

Fixed the bug. Also replaced hasAnyItem by isEmpty (hasAnyItem() is equivalent to !isEmpty()).

Test: fast/dom/HTMLDocument/named-item-multiple-match.html

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::V8DOMWindow::namedPropertyGetter):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::GetNamedProperty):

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::isEmpty):
(WebCore::HTMLCollection::hasExactlyOneItem):

LayoutTests:

Add a regression test.

  • fast/dom/HTMLDocument/named-item-multiple-match-expected.txt: Added.
  • fast/dom/HTMLDocument/named-item-multiple-match.html: Added.
12:45 PM Changeset in webkit [121453] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[Chromium] Chromium's LayoutTestController is missing setBackingScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=83635

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

Added InvokeCallbackTask, a new derived class of MethodTask. When
setBackingScaleFactor is called, a call to setDeviceScaleFactor in
WebView is made and then postTask is used to invoke the callback
function specified in testRunner.setBackingScaleFactor.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(InvokeCallbackTask):
(InvokeCallbackTask::InvokeCallbackTask):
(InvokeCallbackTask::runIfValid):
(LayoutTestController::setBackingScaleFactor):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

12:37 PM Changeset in webkit [121452] by commit-queue@webkit.org
  • 28 edits in trunk

[Skia] Computing the resampling mode ignores scale applied to the canvas
https://bugs.webkit.org/show_bug.cgi?id=72073

Patch by Zeev Lieber <zlieber@chromium.org> on 2012-06-28
Reviewed by Stephen White.

Source/WebCore:

Re-basing earlier patch by Daniel Sievers; updated tests.

Take into account canvas scale when computing image resampling mode.

When drawing a bitmap and computing the best resampling mode based
on the requested scale, take into account CSS scale and page scale
that are applied to the canvas. This allows for single-pass scaling
in potentially better quality (RESAMPLE_AWESOME) and also takes
better advantage of the scaled image cache in that codepath.

Existing tests updated to expect different resampling method (and
therefore a different image) whenever canvas scaling changes.

  • platform/graphics/skia/ImageSkia.cpp:

(WebCore::paintSkBitmap):

LayoutTests:

Updated tests to expect different image when resampling method changed.

  • platform/chromium-linux/fast/borders/border-image-scale-transform-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png:
  • platform/chromium-linux/svg/carto.net/scrollbar-expected.png:
  • platform/chromium-linux/svg/custom/image-small-width-height-expected.png:
  • platform/chromium-linux/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
  • platform/chromium-linux/transitions/cross-fade-background-image-expected.png:
  • platform/chromium/TestExpectations:
12:35 PM Changeset in webkit [121451] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Change WebViewImpl::textInputInfo to use root editable element.
https://bugs.webkit.org/show_bug.cgi?id=90179

Patch by Oli Lan <olilan@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

WebViewImpl::textInputInfo currently returns text value and offsets relative to the
focused node. For contenteditable nodes, this may not give the expected result.

This patch changes the method to return value and offsets for the root editable element.
This also allows the implementation to be simplified somewhat.

This also ensures that the offsets returned will use the same basis as the recently added
method Editor::setSelectionOffsets (and WebViewImpl::setEditableSelectionOffsets).

Testing for textInputInfo has been added to WebViewTest.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo):

  • tests/WebViewTest.cpp:

(WebKit::TEST_F):

12:27 PM Changeset in webkit [121450] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[chromium] Should schedule a commit when dropping contents textures
https://bugs.webkit.org/show_bug.cgi?id=90031

Patch by James Robinson <jamesr@chromium.org> on 2012-06-28
Reviewed by Adrienne Walker.

Source/WebCore:

If we're dropping contents textures on the impl thread, we need to schedule a commit to pick up new contents at
the next commit opportunity. Also adds some traces to make debugging issues like this easier.

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::commitComplete):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):

  • platform/graphics/chromium/cc/CCScheduler.cpp:

(WebCore::CCScheduler::processScheduledActions):

Source/WebKit/chromium:

Adds a somewhat vacuous test unit test for committing when releasing textures.

  • tests/CCLayerTreeHostImplTest.cpp:
12:20 PM Changeset in webkit [121449] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebKit2

[WK2] Add C API to inspect a Web Intent service
https://bugs.webkit.org/show_bug.cgi?id=89276

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-28
Reviewed by Anders Carlsson.

Add C API for Web intent service so that it can be queried
on client side.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • UIProcess/API/C/WKIntentServiceInfo.cpp: Added.

(WKIntentServiceInfoGetTypeID):
(WKIntentServiceInfoCopyAction):
(WKIntentServiceInfoCopyType):
(WKIntentServiceInfoCopyHref):
(WKIntentServiceInfoCopyTitle):
(WKIntentServiceInfoCopyDisposition):

  • UIProcess/API/C/WKIntentServiceInfo.h: Added.
12:15 PM Changeset in webkit [121448] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

ThreadingWin: Silence GCC compiler warnings
https://bugs.webkit.org/show_bug.cgi?id=89491

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-28
Reviewed by Adam Roben.

  • wtf/ThreadingWin.cpp:

(WTF::createThreadInternal):
(WTF::PlatformCondition::timedWait):
(WTF::PlatformCondition::signal): Fix unused-but-set-variable
warnings.

12:03 PM Changeset in webkit [121447] by ojan@chromium.org
  • 6 edits in trunk/Tools

Make rebaseline-test and rebaseline-expectations work for non-Chromium ports
https://bugs.webkit.org/show_bug.cgi?id=90186

Reviewed by Adam Barth.

This makes rebaselining work for all ports that have a TestExpectations file
in the tree. I didn't test other ports.

This doesn't address 100% of the problem. The rebaseline code puts the expectations
in the most specific directory and relies on optimize-baselines to merge baselines
appropriately. This only works if every platform directory has an equivalent bot
that runs the tests, which is not true for most ports.

  • Scripts/webkitpy/common/net/buildbot/buildbot.py:

(Builder._revision_and_build_for_filename):
Some bots have filenames that aren't revision/build number pairs
e.g. they are random junk like aQhxvx. Handle this gracefully.
(Builder._fetch_revision_to_build_map):
(Builder._file_info_list_to_revision_to_build_list):

  • Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:

(BuilderTest.test_build_and_revision_for_filename):
(BuilderTest.test_file_info_list_to_revision_to_build_list):

  • Scripts/webkitpy/layout_tests/port/builders.py:

Update the list of builders. This list needs to be kept up
to date for the rebaseline tool to work.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineTest._results_url):
(RebaselineExpectations._run_webkit_patch):
(RebaselineExpectations._rebaseline_port):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

Qt port uses qmake to determine the right version. Systems without qmake correctly fallback
to a specific version.

11:58 AM Changeset in webkit [121446] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Don't malloc RenderGeometryMap steps individually
https://bugs.webkit.org/show_bug.cgi?id=90074

Reviewed by Simon Fraser.

Mallocs and frees for steps under RenderGeometryMap::pus/popMappingsToAncestor can total ~2% of the profile when animating transforms.

  • rendering/RenderGeometryMap.cpp:

(WebCore):
(WebCore::RenderGeometryMap::absolutePoint):
(WebCore::RenderGeometryMap::absoluteRect):
(WebCore::RenderGeometryMap::mapToAbsolute):
(WebCore::RenderGeometryMap::push):
(WebCore::RenderGeometryMap::pushView):
(WebCore::RenderGeometryMap::popMappingsToAncestor):

  • rendering/RenderGeometryMap.h:

(WebCore):
(WebCore::RenderGeometryMapStep::RenderGeometryMapStep):

Move to header.

(RenderGeometryMapStep):
(RenderGeometryMap):

Make the step vector hold RenderGeometryMapSteps instead of RenderGeometryMapStep*'s.

(WTF):

Give RenderGeometryMapSteps SimpleClassVectorTraits. This is needed for dealing with OwnPtr in the struct (and makes it faster too).
The type is simple enought to move by memcpy.

11:22 AM WebKitGTK/1.8.x edited by kalevlember@gmail.com
Add patches for Windows NPAPI plugin support (diff)
11:15 AM Changeset in webkit [121445] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GTK] Remove Windows support from plugins/gtk/
https://bugs.webkit.org/show_bug.cgi?id=89501

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-28
Reviewed by Martin Robinson.

The GTK+ port now uses plugins/gtk/ on Windows, which leaves
PluginPackageGtk.cpp and PluginViewGtk.cpp solely for XP_UNIX platforms.

  • plugins/gtk/PluginPackageGtk.cpp:

(WebCore::PluginPackage::fetchInfo):
(WebCore::webkitgtkXError):
(WebCore::PluginPackage::load):

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::getRootWindow):
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::paint):
(WebCore::PluginView::handleKeyboardEvent):
(WebCore::setXCrossingEventSpecificFields):
(WebCore::PluginView::handleMouseEvent):
(WebCore::PluginView::handleFocusOutEvent):
(WebCore::PluginView::setNPWindowIfNeeded):
(WebCore::PluginView::platformGetValueStatic):
(WebCore::PluginView::platformGetValue):
(WebCore::getPluginDisplay):
(WebCore::getVisualAndColormap):
(WebCore::PluginView::platformStart):
(WebCore::PluginView::platformDestroy):

11:09 AM Changeset in webkit [121444] by jschuh@chromium.org
  • 1 edit in branches/chromium/1132/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp

Merge 120881

TBR=raymes@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10692027

11:08 AM Changeset in webkit [121443] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Change FrameView::scrollContentsFastPath to use m_fixedObjects
https://bugs.webkit.org/show_bug.cgi?id=90045

Reviewed by James Robinson.

FrameView now has a hash set of fixed-position objects, so use
that instead of RenderBlock::positionedObjects(); we'll avoid traversing
through absolutely positioned objects, and this will work better for sticky
positioning in future.

No behavior change, so no new tests.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsFastPath):

11:06 AM Changeset in webkit [121442] by tony@chromium.org
  • 18 edits
    2 adds in trunk

Split flex into flex-grow/flex-shrink/flex-basis
https://bugs.webkit.org/show_bug.cgi?id=86525

Reviewed by Ojan Vafai.

Source/WebCore:

Split flex into 3 separate properties per the spec:
http://dev.w3.org/csswg/css3-flexbox/#flex-components

Tests: css3/flexbox/flex-longhand-parsing.html

css3/flexbox/flex-property-parsing.html: Updated test results.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore): -webkit-flex is no longer enumerable.
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Add new css property names and use
getCSSPropertyValuesForShorthandProperties for WebkitFlex. Also sort flex propery names.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue): Fix indent.
(WebCore::CSSParser::parseValue): Add parsing for new properties and handle -webkit-flex: none.
(WebCore::CSSParser::parseFlex): Switch to new names (positive -> grow, negative -> shrink,
preferred size -> basis) and assign to longhand properties.

  • css/CSSParser.h:
  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty): Add new properties.

  • css/CSSPropertyNames.in: Add new properties.
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder): Delete special handling of applying flex and just use shorthand handlers.

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue): Add new shorthand.
(WebCore::StylePropertySet::asText):

  • css/StylePropertyShorthand.cpp:

(WebCore::webkitFlexShorthand): Add new shorthand.
(WebCore::shorthandForProperty):

  • css/StylePropertyShorthand.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList): Add to list of properties applied by StyleBuilder.
Handle initial and inherit for flex.

LayoutTests:

If -webkit-flex is set to none, when the user reads the value back out, it is
now 0 0 auto. 'none' is for convenience, not an actual value.

  • css3/flexbox/flex-longhand-parsing-expected.txt:
  • css3/flexbox/flex-longhand-parsing.html: Test flex-grow, flex-shrink and flex-basis.
  • css3/flexbox/flex-property-parsing-expected.txt:
  • css3/flexbox/flex-property-parsing.html: Update results for 'none'.
  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • fast/css/getComputedStyle/resources/property-names.js: Remove -webkit-flex since it's no longer enumerable.
  • svg/css/getComputedStyle-basic-expected.txt:
11:00 AM Changeset in webkit [121441] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK][Win]: Fix plugin drawing to an offscreen buffer
https://bugs.webkit.org/show_bug.cgi?id=89499

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-28
Reviewed by Brent Fulgham.

Take into account that the GTK+ port draws to a backing store and adjust
the target rectangle calculation accordingly.

  • plugins/win/PluginViewWin.cpp:

(WebCore::PluginView::paint):
(WebCore::PluginView::setNPWindowRect):

10:14 AM Changeset in webkit [121440] by kling@webkit.org
  • 2 edits in trunk/LayoutTests

[WK2] platform/mac/editing/spelling/autocorrection-blockquote-crash.html fails.
<http://webkit.org/b/90156>

Skip this test on mac-wk2 for now.

  • platform/mac-wk2/Skipped:
10:07 AM Changeset in webkit [121439] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

Optimize Dromaeo/dom-attr.html by speeding up Element::getAttribute()
https://bugs.webkit.org/show_bug.cgi?id=90174

Reviewed by Adam Barth.

This patch improves performance of Dromaeo/dom-attr.html by 4.0%.
The patch improves performance of getAttribute() and JavaScript
property setter for DOM objects (e.g. 'div.foo = 123').
The performance improvement becomes larger, as the number of
attributes defined on the DOM object increases.

Without the patch in Chromium/Linux (runs/s)
7679.4, 7739.7, 7634.0, 7726.4, 7663.9

With the patch in Chromium/Linux (runs/s)
7977.7, 8032.2, 8112.8, 7948.1, 7924.5

This patch just changes a type of 'name' of Element::getAttribute(String& name)
from String& to AtomicString&.

The key observation is that AtomicString(String& x) is faster than
operator==(String& x, AtomicString& y). AtomicString(String& x) calculates
a hash of a given String and adds it to a hash table. The calculation
complexity is O(the length of x). On the other hand,
operator==(String& x, AtomicString& y) compares a String and an AtomicString by
StringImpl::equal(StringImpl*, StringImpl*), the calculation complexity of
which is O(2 * min(the length of x, the length of y)).
In addition, the comparison logic is more complicated than the logic
of calculating the hash. Consequently, AtomicString(String& x) is
faster than operator==(String& x, AtomicString& y).

Keeping that in mind, let's estimate the performance of
Element::getAttribute("class") for <div id="A" lang="B" title="C" class="D" dir="E">.
Here "id", "lang", "title", "class" and "dir" are stored as AtomicStrings
in QualifiedName::localName(). Initially, "class" in Element::getAttribute("class")
is a String.

If we use Element::getAttribute(String& name) (i.e. without the patch),
ElementAttributeData::getAttributeItemIndex() executes four
operator==(String&, AtomicString&) by the time it finds the "class" attribute:

(1) if ("class" == "id") operator==(String&, AtomicString&)
(2) if ("class" == "lang")
operator==(String&, AtomicString&)
(3) if ("class" == "title") operator==(String&, AtomicString&)
(4) if ("class" == "class")
operator==(String&, AtomicString&)

On the other hand, if we use Element::getAttribute(AtomicString& name)
(i.e. with the patch), ElementAttributeData::getAttributeItemIndex()
executes one AtomicString(String&) and four operator==(AtomicString&, AtomicString&)
by the time it finds the "class" attribute:

(1) AtomicString("class") AtomicString(String&)
(2) if ("class" == "id")
operator==(AtomicString&, AtomicString&)
(3) if ("class" == "lang") operator==(AtomicString&, AtomicString&)
(4) if ("class" == "title")
operator==(AtomicString&, AtomicString&)
(5) if ("class" == "class") operator==(AtomicString&, AtomicString&)

Considering that the overhead of operator==(AtomicString&, AtomicString&) is close
to 0 since it is just a pointer comparison, the latter approach is faster than
the former approach.

Performance improvement will be large for elements that have multiple attributes,
but it is faster even for elements that have only one attribute.
For exmaple, Dromaeo/dom-attr.html tests getAttribute() for an element that has
only one attribute, the result shows 4.0% improvement.

Another example optimized by this patch is 'div.foo = 123', where foo is not
an attribute of div. In this case, before 123 is set, JavaScript calls back
Element::getAttribute() to check whether 'foo' is defined on div by
scanning all the attributes of div.

No tests. No change in behavior.

  • dom/Element.cpp:

(WebCore::Element::getAttribute):

  • dom/Element.h:

(Element):
(WebCore::Element::getAttributeItemIndex):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::getAttributeItemIndexSlowCase):

  • dom/ElementAttributeData.h:

(ElementAttributeData):
(WebCore::ElementAttributeData::getAttributeItem):
(WebCore::ElementAttributeData::getAttributeItemIndex):

9:52 AM Changeset in webkit [121438] by hans@chromium.org
  • 5 edits in trunk

Speech JavaScript API: Don't dispatch end event after ActiveDOMObject::stop()
https://bugs.webkit.org/show_bug.cgi?id=90176

Reviewed by Adam Barth.

Source/WebCore:

It is probably not safe to dispatch an event on an object that has
been ActiveDOMObject::stop()'ed.

This used to happen in the navigate-away.html test, which I believe
then caused speechgrammar-basics.html (which was typically run
afterwards, by the same worker), to crash flakily. See Bug 89717.

Test: speechgrammar-basics.html should no longer be flaky.

  • Modules/speech/SpeechRecognition.cpp:

(WebCore::SpeechRecognition::didEnd):
(WebCore::SpeechRecognition::stop):
(WebCore::SpeechRecognition::SpeechRecognition):

  • Modules/speech/SpeechRecognition.h:

LayoutTests:

speechgrammar-basics.html should no longer be flaky.

  • platform/chromium/TestExpectations:
9:43 AM Changeset in webkit [121437] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] [WK2] Memory leak in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=90168

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-28
Reviewed by Martin Robinson.

Fixed a memory leak in WebCoreSynchronousLoader by using adoptGRef
instead of just getting new reference of GMainLoop.

No new tests. No change in behavior.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):

9:35 AM Changeset in webkit [121436] by danakj@chromium.org
  • 16 edits in trunk/Source

[chromium] Do not multiply bounds by contentsScale in TiledLayerChromium and CanvasLayerTextureUpdater
https://bugs.webkit.org/show_bug.cgi?id=90103

Reviewed by Adrienne Walker.

Source/WebCore:

Non-integer scale factors can scale the bounds of a layer such that
different rounding is applied to the width and height in the content
bounds. We should never multiply bounds by contentsScale in order to
work correctly with non-integer scale factors. Instead, always use the
contentBounds/bounds ratio for width and height independently.

Tests: TiledLayerChromiumTest.nonIntegerContentsScaleIsNotDistortedDuringPaint

TiledLayerChromiumTest.nonIntegerContentsScaleIsNotDistortedDuringInvalidation

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:

(BitmapCanvasLayerTextureUpdater):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:

(BitmapSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:

(WebCore::CanvasLayerTextureUpdater::paintContents):

  • platform/graphics/chromium/CanvasLayerTextureUpdater.h:

(CanvasLayerTextureUpdater):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore::LayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarLayerChromium::updatePart):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h:

(SkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::setNeedsDisplayRect):
(WebCore::TiledLayerChromium::updateTiles):

Source/WebKit/chromium:

  • tests/CCTiledLayerTestCommon.cpp:

(WebKitTests::FakeLayerTextureUpdater::prepareToUpdate):

  • tests/CCTiledLayerTestCommon.h:

(FakeTiledLayerChromium):

  • tests/TiledLayerChromiumTest.cpp:
9:14 AM Changeset in webkit [121435] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Make GC's fill{Rounded}Rect use optimized shadow blur code
https://bugs.webkit.org/show_bug.cgi?id=90082

Patch by Bruno de Oliveira Abinader <Bruno de Oliveira Abinader> on 2012-06-28
Reviewed by Noam Rosenthal.

ShadowBlur::drawRectShadow makes use of optimized tiles-based drawPattern, which
is not present when using {begin/end}shadowLayer.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::pushTransparencyLayerInternal):

9:05 AM Changeset in webkit [121434] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[chromium] Introduce way to reload a page using the original request URL
https://bugs.webkit.org/show_bug.cgi?id=89788

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

Adds a new reload method for cases where we need to override the URL
when reloading a page. This is needed for situations where a server
redirects navigation based on information that may have changed since
the last time the page was loaded.

User agents, for example, can cause a server to redirect to the mobile
version of a page. Changing to the desktop version by switching user agents
requires loading a URL from before the redirect occurred.

Also adds a unit test to confirm that scroll position and page scale are
saved when the reload occurs.

  • public/WebFrame.h:

(WebFrame):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::reloadWithGivenURL):
(WebKit):

  • src/WebFrameImpl.h:

(WebFrameImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setClearPageScaleFactorOnLoad):
(WebKit):
(WebKit::WebViewImpl::didCommitLoad):

  • src/WebViewImpl.h:

(WebViewImpl):

8:43 AM Changeset in webkit [121433] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Provide context menu 'Delete all watch expressions.'
https://bugs.webkit.org/show_bug.cgi?id=89735

Patch by Rahul Tiwari <rahultiwari.cse.iitr@gmail.com> on 2012-06-28
Reviewed by Yury Semikhatsky.

Added context menu delete and delete all watch expressions.

No new tests required as its a minor UI related change.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/WatchExpressionsSidebarPane.js:

(WebInspector.WatchExpressionsSection.prototype.updateExpression):
(WebInspector.WatchExpressionsSection.prototype._deleteAllExpressions):
(WebInspector.WatchExpressionsSection.prototype.findAddedTreeElement):
(WebInspector.WatchExpressionTreeElement.prototype.update):
(WebInspector.WatchExpressionTreeElement.prototype._contextMenu):
(WebInspector.WatchExpressionTreeElement.prototype._deleteAllButtonClicked):

8:33 AM Changeset in webkit [121432] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

m_cssVariablesEnabled member is not initialized in Page Settings
https://bugs.webkit.org/show_bug.cgi?id=90147

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-28
Reviewed by Simon Hausmann.

Properly initialize the m_cssVariablesEnabled member in Page
Settings.

No new tests, no behavior change.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

7:43 AM Changeset in webkit [121431] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt][NRWT] Fix baseline and skipped file search path.
https://bugs.webkit.org/show_bug.cgi?id=89882

Unreviewed trivial typo fix after r121430.

  • Scripts/webkitpy/layout_tests/port/qt_unittest.py:

(QtPortTest._assert_search_path):
(QtPortTest._assert_skipped_path):

7:33 AM Changeset in webkit [121430] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

[Qt][NRWT] Fix baseline and skipped file search path.
https://bugs.webkit.org/show_bug.cgi?id=89882

Patch by János Badics <János Badics> on 2012-06-28
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/layout_tests/port/qt.py:

(QtPort._search_paths):
(QtPort):
(QtPort.baseline_search_path):
(QtPort._skipped_file_search_paths):

  • Scripts/webkitpy/layout_tests/port/qt_unittest.py:

(QtPortTest):
(QtPortTest._assert_skipped_path):
(QtPortTest.test_baseline_search_path):
(QtPortTest.test_skipped_file_search_path):

7:27 AM Changeset in webkit [121429] by apavlov@chromium.org
  • 7 edits in trunk

[Qt] inspector/styles/inject-stylesheet.html makes 4 tests flakey (TEXT PASS)
https://bugs.webkit.org/show_bug.cgi?id=90167

Reviewed by Csaba Osztrogonác.

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::removeUserStyleSheets):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools:

DRT should remove user stylesheets from the page group when resetting before running another test.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):

LayoutTests:

Unskip the previously offensive test.

  • platform/qt/Skipped:
7:10 AM Changeset in webkit [121428] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[WK2] New fast/events/drag-display-none-element.html fails
https://bugs.webkit.org/show_bug.cgi?id=90177

Unreviewed gardening, skip the new failing test.

  • platform/wk2/Skipped:
6:16 AM Changeset in webkit [121427] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] css3/filters/huge-region-composited.html makes css3/filters/huge-region.html crash
https://bugs.webkit.org/show_bug.cgi?id=90165

[Qt] inspector/styles/inject-stylesheet.html makes 4 tests flakey (TEXT PASS)
https://bugs.webkit.org/show_bug.cgi?id=90167

Unreviewed gardening, skip the guilty tests.

  • platform/qt/Skipped:
6:07 AM Changeset in webkit [121426] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt][DRT] Reset AcceleratedCompositingEnabled between tests
https://bugs.webkit.org/show_bug.cgi?id=90164

Reviewed by Simon Hausmann.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::WebPage::resetSettings):

4:39 AM Changeset in webkit [121425] by Csaba Osztrogonác
  • 9 edits in trunk

[Qt] Restore original value of mock scrollbars between tests
https://bugs.webkit.org/show_bug.cgi?id=90155

Reviewed by Simon Hausmann.

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setMockScrollbarsEnabled):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools:

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::WebPage::resetSettings):

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::setMockScrollbarsEnabled):

  • DumpRenderTree/qt/LayoutTestControllerQt.h:

(LayoutTestController):

LayoutTests:

  • platform/qt/Skipped: Unskip tests which doesn't break anything now.
2:57 AM Changeset in webkit [121424] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening after r121388
https://bugs.webkit.org/show_bug.cgi?id=90145

Unreviewed EFL gardening. The new fast/events/drag-display-none-element.html
test added in r121388 does not pass on EFL port because of missing drag'n'drop support.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-06-28

  • platform/efl/TestExpectations:
2:36 AM Changeset in webkit [121423] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] plugin is loaded to the web process via MainResourceLoader::substituteMIMETypeFromPluginDatabase
https://bugs.webkit.org/show_bug.cgi?id=86489

Reviewed by Simon Hausmann.

Removed the substituteMIMETypeFromPluginDatabase quirk from
MainResourceLoader. It would be possible to fix it in a way
that is compatible with WebKit2, but given that it was a Qt
only fix, and that it's not clear that we still need it, and
it's not even work currently, I decided to remove it. At least
it is -1 platform ifdef in common code.

Just removed a non-tested quirk, no test needed.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::didReceiveResponse):

2:30 AM Changeset in webkit [121422] by mrowe@apple.com
  • 2 edits in trunk/Tools

<http://webkit.org/b/90096> Building within Xcode sometimes does a full rebuild after building via build-webkit

We need to ensure that build-webkit uses the same setting for SHARED_PRECOMPS_DIR
as what Xcode itself will use when building, otherwise switching between the two
can result in the precompiled headers being rebuilt and thus the entire world
rebuilding.

Reviewed by Dan Bernstein.

  • Scripts/webkitdirs.pm:

(determineBaseProductDir):

1:51 AM Changeset in webkit [121421] by haraken@chromium.org
  • 8 edits in trunk/Source/WebCore

[V8] Optimize Integer::New() by caching persistent handles for small integers
https://bugs.webkit.org/show_bug.cgi?id=90043

Reviewed by Adam Barth.

The patch improves performance of Dromaeo/dom-query.html by 3.6%,
and Bindings/scroll-top.html by 17.3%.

The performance results in my Chromium/Linux:

[Dromaeo/dom-query.html]
796310.4 runs/s => 824745.4 runs/s (+3.6%)

[Bindings/scroll-top.html]
204.68 runs/s => 240.15 runs/s (+17.3%)

This patch introduces V8BindingPerIsolateData::IntegerCache (just like
V8BindingPerIsolateData::StringCache) to cache persistent handles
for small integers.

No new tests. No change in behavior.

  • bindings/v8/V8Binding.h: Implemented v8Integer() and v8UnsignedInteger(),

which returns cached persistent handles for integers smaller than 64.
(WebCore):
(IntegerCache):
(WebCore::IntegerCache::IntegerCache):
(WebCore::IntegerCache::v8Integer):
(WebCore::IntegerCache::v8UnsignedInteger):
(WebCore::V8BindingPerIsolateData::integerCache):
(V8BindingPerIsolateData):
(WebCore::v8Integer):
(WebCore::v8UnsignedInteger):

  • bindings/v8/V8Binding.cpp:

(WebCore):
(WebCore::IntegerCache::createSmallIntegers):

  • bindings/v8/WorkerScriptController.cpp:

(~WorkerScriptController): ~V8BindingPerIsolateData() should be called before
isolate->Exit(), since ~V8BindingPerIsolateData() calls V8 APIs that requires
the current isolate.

  • bindings/scripts/CodeGeneratorV8.pm: Replaced Integer::New() and Integer::NewFromUnsigned()

with v8Integer() and v8UnsignedInteger().
(GenerateNormalAttrGetter):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp: Updated run-bindings-tests results.

(WebCore::TestActiveDOMObjectV8Internal::excitingAttrAttrGetter):

  • bindings/scripts/test/V8/V8TestObj.cpp: Ditto.

(WebCore::TestObjV8Internal::readOnlyIntAttrAttrGetter):
(WebCore::TestObjV8Internal::shortAttrAttrGetter):
(WebCore::TestObjV8Internal::unsignedShortAttrAttrGetter):
(WebCore::TestObjV8Internal::intAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedIntegralAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrGetter):
(WebCore::TestObjV8Internal::attrWithGetterExceptionAttrGetter):
(WebCore::TestObjV8Internal::attrWithSetterExceptionAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::conditionalAttr1AttrGetter):
(WebCore::TestObjV8Internal::conditionalAttr2AttrGetter):
(WebCore::TestObjV8Internal::conditionalAttr3AttrGetter):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrGetter):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrGetter):
(WebCore::TestObjV8Internal::enabledAtContextAttr1AttrGetter):
(WebCore::TestObjV8Internal::enabledAtContextAttr2AttrGetter):
(WebCore::TestObjV8Internal::strawberryAttrGetter):
(WebCore::TestObjV8Internal::descriptionAttrGetter):
(WebCore::TestObjV8Internal::idAttrGetter):
(WebCore::TestObjV8Internal::intMethodCallback):
(WebCore::TestObjV8Internal::intMethodWithArgsCallback):
(WebCore::TestObjV8Internal::classMethodWithOptionalCallback):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: Ditto.

(WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetter):

1:48 AM Changeset in webkit [121420] by tkent@chromium.org
  • 8 edits
    3 adds in trunk

Classify form control states by their owner forms
https://bugs.webkit.org/show_bug.cgi?id=89950

Reviewed by Hajime Morita.

Source/JavaScriptCore:

Expose WTF::StringBuilder::canShrink()

Source/WebCore:

To improve robustness of the form state restore feature, we classify
form control states by their owner forms. Owner forms are identified by
their action URLs and index numbers in forms with the same action URLs.

Implementation approach:
Extend FormElementKey class to have "formKey" string, which is a
combination of the action URL and an index number, or a fixed string for
no form owner.
FormKeyGenerator class is responsible to generate the "formKey" strings

Test: fast/forms/state-restore-per-form.html

  • html/FormController.cpp:

(FormKeyGenerator):
(WebCore::FormKeyGenerator::create): A factory function.
(WebCore::FormKeyGenerator::FormKeyGenerator): A private constructor.
(WebCore::createKey):
A helper for formKey(). This makes strings like "<action URL> #<index>".
(WebCore::FormKeyGenerator::formKey):
Returns a formKey for the specified HTMLFormElement*.
(WebCore::FormKeyGenerator::willDeleteForm):
Unregister HTMLFormElement*. This function is necessary because form
restore feature works during parsing and a script might delete form
elements.
(WebCore::formStateSignature): Bump the version.
(WebCore::FormController::formElementsState):
Records a formKey string for each of control state.
(WebCore::FormController::setStateForNewFormElements):
Loads formKeys from stateVector, and uses them for FormElementKey.
(WebCore::FormController::takeStateForFormElement):

  • Construct and destruct FormKeyGenerator if needed.
  • Passing a formKey for the specified form control to FormElementKey.

(WebCore::FormController::willDeleteForm):
Delegate to FormKeyGenerator::willDeleteForm.

(WebCore::FormElementKey::FormElementKey): Add formKey argument and member.
(WebCore::FormElementKey::operator=): ditto.
(WebCore::FormElementKey::ref): ditto.
(WebCore::FormElementKey::deref): ditto.

  • html/FormController.h:

(FormElementKey): Add formKey argument and member.
(FormController): Add a FormKeyGenerator member which is used during restoring.

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::~HTMLFormElement): Notify the death to FormController.

LayoutTests:

  • fast/forms/resources/state-restore-per-form-back.html: Added.
  • fast/forms/state-restore-per-form-expected.txt:

Added. This contains some FAIL lines. They are expected and will
be fixed in webkit.org/b/89962.

  • fast/forms/state-restore-per-form.html: Added.
  • fast/forms/state-restore-broken-state-expected.txt:

Updated for the serialization format change.

1:44 AM Changeset in webkit [121419] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update

  • platform/chromium/TestExpectations:

platform/chromium/accessibility/add-to-menu-list-crashes.html is passing.

1:39 AM Changeset in webkit [121418] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, removing crash expectation for the
fast/workers/worker-context-gc.html test as the offending revision
was rolled out in r121417.

  • platform/gtk/TestExpectations:
1:34 AM Changeset in webkit [121417] by zandobersek@gmail.com
  • 13 edits in trunk/Source

Unreviewed, rolling out r121395.
http://trac.webkit.org/changeset/121395
https://bugs.webkit.org/show_bug.cgi?id=90143

Patch causes crashes in fast/workers/worker-context-gc.html
(Requested by zdobersek on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-28

Source/WebCore:

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::open):

  • workers/DedicatedWorkerThread.cpp:

(WebCore::DedicatedWorkerThread::create):
(WebCore::DedicatedWorkerThread::DedicatedWorkerThread):

  • workers/DedicatedWorkerThread.h:

(DedicatedWorkerThread):

  • workers/DefaultSharedWorkerRepository.cpp:

(SharedWorkerProxy):
(WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):

  • workers/SharedWorkerThread.cpp:

(WebCore::SharedWorkerThread::create):
(WebCore::SharedWorkerThread::SharedWorkerThread):

  • workers/SharedWorkerThread.h:

(SharedWorkerThread):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::startWorkerContext):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThreadStartupData::create):
(WorkerThreadStartupData):
(WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
(WebCore::WorkerThread::WorkerThread):

  • workers/WorkerThread.h:

(WorkerThread):

Source/WebKit/chromium:

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::startWorkerContext):

  • src/WebWorkerClientImpl.cpp:

(WebKit::WebWorkerClientImpl::startWorkerContext):

12:46 AM Changeset in webkit [121416] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] KURL assert at fast/loader/opaque-base-url.html
https://bugs.webkit.org/show_bug.cgi?id=89468

Reviewed by Simon Hausmann.

Don't use the KURL(ParsedURLStringTag, const String&) constructor.
We cannot be sure that the url in encode was valid and even if it
was the message could have been corrupted.

  • Shared/qt/WebCoreArgumentCodersQt.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):

12:30 AM Changeset in webkit [121415] by yosin@chromium.org
  • 7 edits
    1 add in trunk/Source

[Platform] Implement functions for localized time format information
https://bugs.webkit.org/show_bug.cgi?id=89965

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces three functions for time format:

  1. localizedTimeFormatText()
  2. localizedShortTimeFormatText()
  3. timeAMPMLabels()

for input type "time" if ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS) is true.

Having both localizedTimeFormat and localizedShortTimeFormat is for
displaying only two fields hour and minute when step >= 60. There is
no way to remove second field from "h:m:s" pattern string. We don't
know whether ":" after "m" belongs minute or second field.

Test: WebKit/chromium/tests/LocalizedDateICUTest.cpp

  • platform/text/LocaleICU.cpp:

(WebCore::LocaleICU::LocaleICU):
(WebCore::createFallbackAMPMLabels): Added.
(WebCore::LocaleICU::initializeDateTimeFormat): Added.
(WebCore::LocaleICU::localizedTimeFormatText): Added.
(WebCore::LocaleICU::localizedShortTimeFormatText): Added.
(WebCore::LocaleICU::timeAMPMLabels): Added.

  • platform/text/LocaleICU.h:

(LocaleICU):

  • platform/text/LocalizedDate.h:
  • platform/text/LocalizedDateICU.cpp:

(WebCore::localizedTimeFormatText): Added.
(WebCore::localizedShortTimeFormatText): Added.
(WebCore::timeAMPMLabels): Added.

Source/WebKit/chromium:

This patch adds new test LocalizedDateICUTest if ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS)
is true.

  • WebKit.gypi:
  • tests/LocalizedDateICUTest.cpp: Added.

(LocalizedDateICUTest):
(Labels):
(LocalizedDateICUTest::Labels::Labels):
(LocalizedDateICUTest::Labels::operator==):
(LocalizedDateICUTest::Labels::toString):
(LocalizedDateICUTest::labels):
(LocalizedDateICUTest::localizedDateFormatText):
(LocalizedDateICUTest::localizedShortDateFormatText):
(LocalizedDateICUTest::timeAMPMLabels):
(operator<<):
(TEST_F):

12:25 AM Changeset in webkit [121414] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip a new test to hide an annoying bug
https://bugs.webkit.org/show_bug.cgi?id=87680 (and paint the bot green)

  • platform/qt/Skipped:
12:17 AM Changeset in webkit [121413] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding a crash expectation for the
fast/workers/worker-context-gc.html test that started crashing after r121395.

  • platform/gtk/TestExpectations:
Note: See TracTimeline for information about the timeline view.