Timeline



Jan 21, 2012:

7:45 PM Changeset in webkit [105584] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK][PATCH] Enable MathML support by default
https://bugs.webkit.org/show_bug.cgi?id=76790

Patch by Priit Laes <plaes@plaes.org> on 2012-01-21
Reviewed by Martin Robinson.

  • configure.ac: Enable MathML by default.
7:30 PM Changeset in webkit [105583] by commit-queue@webkit.org
  • 13 edits in trunk/Source

[Chromium] Incremental texture updates are not atomic.
https://bugs.webkit.org/show_bug.cgi?id=72672

Patch by David Reveman <reveman@chromium.org> on 2012-01-21
Reviewed by Adam Barth.

Source/WebCore:

Use a new set of textures for each commit when incremental
texture updates are enabled.

This patch is tested by the following unit test:

  • CCLayerTreeHostTestAtomicCommit.runMultiThread
  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::ManagedTexture):
(WebCore::ManagedTexture::steal):

  • platform/graphics/chromium/ManagedTexture.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:

(WebCore::CCSingleThreadProxy::partialTextureUpdateCapability):

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

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):
(WebCore::CCThreadProxy::partialTextureUpdateCapability):

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

Source/WebKit/chromium:

Add CCLayerTreeHostTestAtomicCommit test that verifies atomicity
of commits.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::create):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::createTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::deleteTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::bindTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::texture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::usedTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::CompositorFakeWebGraphicsContext3DWithTextureTracking):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::MockContentLayerDelegate::drawsContent):
(WTF::MockContentLayerDelegate::paintContents):
(WTF::MockContentLayerDelegate::notifySyncRequired):
(WTF::CCLayerTreeHostTestAtomicCommit::CCLayerTreeHostTestAtomicCommit):
(WTF::CCLayerTreeHostTestAtomicCommit::beginTest):
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::layout):
(WTF::CCLayerTreeHostTestAtomicCommit::afterTest):
(WTF::TEST_F):

  • tests/CompositorFakeWebGraphicsContext3D.h:
5:43 PM Changeset in webkit [105582] by abarth@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add baselines for test after http://trac.webkit.org/changeset/105575.
This baseline looks very similar to the existing non-Chromium baseline.

  • platform/chromium-mac-snowleopard/svg/filters/feImage-preserveAspectratio-expected.png: Added.
  • platform/chromium-win/svg/filters/feImage-preserveAspectratio-expected.png: Added.
5:36 PM Changeset in webkit [105581] by fpizlo@apple.com
  • 8 edits
    9 adds
    1 delete in trunk/Source/JavaScriptCore

DFG should not have code that directly decodes the states of old JIT inline
cache data structures
https://bugs.webkit.org/show_bug.cgi?id=76768

Reviewed by Sam Weinig.

Introduced new classes (like GetByIdStatus) that encapsulate the set of things
that the DFG would like to know about property accesses and calls. Whereas it
previously got this information by directly decoding the data structures used
by the old JIT for inline caching, it now uses these classes, which do the work
for it. This should make it somewhat more straight forward to introduce new
ways of profiling the same information.

Also hoisted StructureSet into bytecode/ from dfg/, because it's now used by
code in bytecode/.

Making this work right involved carefully ensuring that the heuristics for
choosing how to handle property accesses was at least as good as what we had
before, since I completely restructured that code. Currently the performance
looks neutral. Since I rewrote the code I did change some things that I never
liked before, like previously if a put_bu_id had executed exactly once then
we'd compile it as if it had taken slow-path. Executing once is special because
then the inline cache is not baked in, so there is no information about how the
DFG should optimize the code. Now this is rationalized: if the put_by_id does
not offer enough information to be optimized (i.e. had executed 0 or 1 times)
then we turn it into a forced OSR exit (i.e. a patch point). However, get_by_id
still has the old behavior; I left it that way because I didn't want to make
too many changes at once.

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

(JSC::CallLinkStatus::computeFor):

  • bytecode/CallLinkStatus.h: Added.

(JSC::CallLinkStatus::CallLinkStatus):
(JSC::CallLinkStatus::isSet):
(JSC::CallLinkStatus::operator!):
(JSC::CallLinkStatus::couldTakeSlowPath):
(JSC::CallLinkStatus::callTarget):

  • bytecode/GetByIdStatus.cpp: Added.

(JSC::GetByIdStatus::computeFor):

  • bytecode/GetByIdStatus.h: Added.

(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::state):
(JSC::GetByIdStatus::isSet):
(JSC::GetByIdStatus::operator!):
(JSC::GetByIdStatus::isSimpleDirect):
(JSC::GetByIdStatus::takesSlowPath):
(JSC::GetByIdStatus::makesCalls):
(JSC::GetByIdStatus::structureSet):
(JSC::GetByIdStatus::offset):

  • bytecode/MethodCallLinkStatus.cpp: Added.

(JSC::MethodCallLinkStatus::computeFor):

  • bytecode/MethodCallLinkStatus.h: Added.

(JSC::MethodCallLinkStatus::MethodCallLinkStatus):
(JSC::MethodCallLinkStatus::isSet):
(JSC::MethodCallLinkStatus::operator!):
(JSC::MethodCallLinkStatus::needsPrototypeCheck):
(JSC::MethodCallLinkStatus::structure):
(JSC::MethodCallLinkStatus::prototypeStructure):
(JSC::MethodCallLinkStatus::function):
(JSC::MethodCallLinkStatus::prototype):

  • bytecode/PutByIdStatus.cpp: Added.

(JSC::PutByIdStatus::computeFor):

  • bytecode/PutByIdStatus.h: Added.

(JSC::PutByIdStatus::PutByIdStatus):
(JSC::PutByIdStatus::state):
(JSC::PutByIdStatus::isSet):
(JSC::PutByIdStatus::operator!):
(JSC::PutByIdStatus::isSimpleReplace):
(JSC::PutByIdStatus::isSimpleTransition):
(JSC::PutByIdStatus::takesSlowPath):
(JSC::PutByIdStatus::oldStructure):
(JSC::PutByIdStatus::newStructure):
(JSC::PutByIdStatus::structureChain):
(JSC::PutByIdStatus::offset):

  • bytecode/StructureSet.h: Added.

(JSC::StructureSet::StructureSet):
(JSC::StructureSet::clear):
(JSC::StructureSet::add):
(JSC::StructureSet::addAll):
(JSC::StructureSet::remove):
(JSC::StructureSet::contains):
(JSC::StructureSet::isSubsetOf):
(JSC::StructureSet::isSupersetOf):
(JSC::StructureSet::size):
(JSC::StructureSet::at):
(JSC::StructureSet::operator[]):
(JSC::StructureSet::last):
(JSC::StructureSet::predictionFromStructures):
(JSC::StructureSet::operator==):
(JSC::StructureSet::dump):

  • dfg/DFGAbstractValue.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGStructureSet.h: Removed.
5:09 PM Changeset in webkit [105580] by commit-queue@webkit.org
  • 4 edits
    6 adds in trunk

Add .url attribute alongside .URL in EventSource and WebSocket to comply with the specs but not break existing usage.
https://bugs.webkit.org/show_bug.cgi?id=40899

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-21
Reviewed by Adam Barth.

Source/WebCore:

Tests: fast/eventsource/eventsource-url-attribute.html

http/tests/websocket/tests/hixie76/url-attribute.html
http/tests/websocket/tests/hybi/url-attribute.html

  • page/EventSource.idl:
  • websockets/WebSocket.idl:

LayoutTests:

  • fast/eventsource/eventsource-url-attribute-expected.txt: Added.
  • fast/eventsource/eventsource-url-attribute.html: Added.
  • http/tests/websocket/tests/hixie76/url-attribute-expected.txt: Added.
  • http/tests/websocket/tests/hixie76/url-attribute.html: Added.
  • http/tests/websocket/tests/hybi/url-attribute-expected.txt: Added.
  • http/tests/websocket/tests/hybi/url-attribute.html: Added.
4:48 PM Changeset in webkit [105579] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JIT compilation should not require ExecState
https://bugs.webkit.org/show_bug.cgi?id=76729
<rdar://problem/10731545>

Reviewed by Gavin Barraclough.

Changed the relevant JIT driver functions to take JSGlobalData& instead of
ExecState*, since really they just needed the global data.

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGDriver.h:

(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • jit/JITDriver.h:

(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

3:56 PM Changeset in webkit [105578] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r105564.
http://trac.webkit.org/changeset/105564
https://bugs.webkit.org/show_bug.cgi?id=76792

Does not compile on Chromium Mac (Requested by abarth on
#webkit).

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

Source/WebCore:

  • platform/graphics/chromium/ManagedTexture.cpp:
  • platform/graphics/chromium/ManagedTexture.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):

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

Source/WebKit/chromium:

  • tests/CCLayerTreeHostTest.cpp:

(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):

  • tests/CompositorFakeWebGraphicsContext3D.h:
9:19 AM Changeset in webkit [105577] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed weekend gardening. Skip the new failing tests to paint the bots green.

  • platform/qt-wk2/Skipped:
  • platform/qt/Skipped:
7:40 AM Changeset in webkit [105576] by cmarrin@apple.com
  • 19 edits
    6 adds in trunk

Implement hardware accelerated Brightness and contrast filters
https://bugs.webkit.org/show_bug.cgi?id=75521
https://bugs.webkit.org/show_bug.cgi?id=76719

Reviewed by Simon Fraser.

Source/WebCore:

Implemented hardware accelerated brightness and contrast filters. This also fixes
the bug where grayscale filter was accidentally never getting hardware accelerated.
It also complies with proposed spec changes for the brightness filter to be additive
rather than multiplicative, according to https://bugs.webkit.org/show_bug.cgi?id=76719.
Had to make both fixes in the same patch because I had to change the allowed brightness
values for the hardware version, so I had to change the software version as well.

Tests: css3/filters/effect-brightness-hw.html

css3/filters/effect-contrast-hw.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBuiltinFilterArguments):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::createFilterOperations):

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayer::setFilters):
(PlatformCALayer::filtersCanBeComposited):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

LayoutTests:

New tests for hardware accelerated brightness and contrast filters. Also
added brightness and contrast values to effect-combined-hw test. And changed
brightness values in effect-brightness.html to reflect new spec.
Also fixed parsing and computed style tests to reflect new brightness spec.

  • css3/filters/effect-brightness-expected.png:
  • css3/filters/effect-brightness-hw-expected.png: Added.
  • css3/filters/effect-brightness-hw-expected.txt: Added.
  • css3/filters/effect-brightness-hw.html: Added.
  • css3/filters/effect-brightness.html:
  • css3/filters/effect-combined-expected.png:
  • css3/filters/effect-combined-hw-expected.png:
  • css3/filters/effect-combined-hw-expected.txt:
  • css3/filters/effect-combined-hw.html:
  • css3/filters/effect-combined.html:
  • css3/filters/effect-contrast-hw-expected.png: Added.
  • css3/filters/effect-contrast-hw-expected.txt: Added.
  • css3/filters/effect-contrast-hw.html: Added.
  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-parsing-expected.txt:
  • css3/filters/filter-property-parsing-invalid-expected.txt:
  • css3/filters/script-tests/filter-property-computed-style.js:
  • css3/filters/script-tests/filter-property-parsing-invalid.js:
  • css3/filters/script-tests/filter-property-parsing.js:
4:28 AM Changeset in webkit [105575] by Nikolas Zimmermann
  • 5 edits
    3 adds in trunk

2012-01-21 Nikolas Zimmermann <nzimmermann@rim.com>

<feImage> ignores preserveAspectRatio="none"
https://bugs.webkit.org/show_bug.cgi?id=76780

Reviewed by Antti Koivisto.

Add new testcase covering preserveAspectRatio="none" + <feImage>, which is now fixed.

  • platform/chromium/test_expectations.txt: Add new test, that needs a rebaseline.
  • platform/mac/svg/filters/feImage-preserveAspectratio-expected.png: Added.
  • platform/mac/svg/filters/feImage-preserveAspectratio-expected.txt: Added.
  • svg/filters/feImage-preserveAspectratio.svg: Added.

2012-01-21 Nikolas Zimmermann <nzimmermann@rim.com>

<feImage> ignores preserveAspectRatio="none"
https://bugs.webkit.org/show_bug.cgi?id=76780

Reviewed by Antti Koivisto.

preserveAspectRatio="none" was ignored in SVGFEImage. It always called transformRect() w/o checking
whether it was supposed to transform the rect or not - move code from RenderSVGImage right into
transformRect(), to do nothing if preserveAspectRatio="none" was given.

Test: svg/filters/feImage-preserveAspectratio.svg

  • rendering/svg/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
  • svg/SVGPreserveAspectRatio.cpp: (WebCore::SVGPreserveAspectRatio::transformRect):
2:18 AM Changeset in webkit [105574] by jochen@chromium.org
  • 3 edits
    6 adds in trunk

history.replaceState should update the HistoryItem to use a GET method if previously non-GET (POST)
https://bugs.webkit.org/show_bug.cgi?id=76721

Reviewed by Mihai Parparita.

Source/WebCore:

Tests: http/tests/history/replacestate-post-to-get-2.html

http/tests/history/replacestate-post-to-get.html

  • loader/HistoryController.cpp:

(WebCore::HistoryController::replaceState):

LayoutTests:

  • http/tests/history/replacestate-post-to-get-2-expected.txt: Added.
  • http/tests/history/replacestate-post-to-get-2.html: Added.
  • http/tests/history/replacestate-post-to-get-expected.txt: Added.
  • http/tests/history/replacestate-post-to-get.html: Added.
  • http/tests/history/resources/replacestate-current.php: Added.
  • http/tests/history/resources/replacestate-forward-back.php: Added.
2:00 AM Changeset in webkit [105573] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Null dereference in SVGDocumentExtensions::removePendingResource when updating <use>'s href
https://bugs.webkit.org/show_bug.cgi?id=69284

Patch by Florin Malita <fmalita@google.com> on 2012-01-21
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Test: svg/custom/use-crash-pending-resource.svg

The crash is caused by assumptions in SVGUseElement that xlink:href is the only
pending resource. This patch adds support for dealing with multiple pending resources.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::hasPendingResource):
(WebCore::SVGDocumentExtensions::isElementPendingResources):
(WebCore::SVGDocumentExtensions::isElementPendingResource):
(WebCore::SVGDocumentExtensions::removePendingResourceForElement):

  • svg/SVGDocumentExtensions.h:
  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded):
(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible):
Renamed SVGDocumentExtensions::hasPendingResources -> Renamed SVGDocumentExtensions::hasPendingResource.
Renamed SVGDocumentExtensions::isElementInPendingResources -> SVGDocumentExtensions::isElementPendingResources.
Added support for querying and removing pending resources for a specific element.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::svgAttributeChanged):
(WebCore::SVGUseElement::buildPendingResource):
Refactored to support multiple pending resources.

LayoutTests:

  • svg/custom/use-crash-pending-resource-expected.txt: Added.
  • svg/custom/use-crash-pending-resource.svg: Added.
12:51 AM Changeset in webkit [105572] by commit-queue@webkit.org
  • 4 edits in trunk

REGRESSION (Safari 5.0.5 - ToT): crash in SVG test http://dev.w3.org/SVG/profiles/1.1F2/test/harness/htmlObjectApproved/animate-elem-39-t.html
https://bugs.webkit.org/show_bug.cgi?id=64671

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-21
Reviewed by Nikolas Zimmermann.

Source/WebCore:

No new tests. This change is to fix crashes in existing tests.

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::beginListChanged): If the new begin time is
later than the current end time, and the event time is also after then
end time (but we have not yet updated to that time) and the animation
is active, we need to make the animation inactive explicitly.

LayoutTests:

  • platform/chromium/test_expectations.txt: Marking all svg/W3C-SVG-1.1/animate-elem* tests

as flakey pending this change being committed and new results.

12:42 AM Changeset in webkit [105571] by timothy@apple.com
  • 4 edits in trunk/Source/WebKit2

Make WebKit2 remember the height of the Web Inspector when it is docked.

https://webkit.org/b/76769

Reviewed by Dan Bernstein.

  • Shared/WebPreferencesStore.h: Added InspectorAttachedHeight.
  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::setAttachedWindowHeight): Call WebPreferencesStore::setInspectorAttachedHeight.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformAttach): Set the height of the inspector's WKView to inspectorAttachedHeight.
(WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): Remove unneeded setNeedsDisplay: calls.

12:17 AM Changeset in webkit [105570] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

PopupMenuClient::multiple() should be const
https://bugs.webkit.org/show_bug.cgi?id=76771

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-01-21
Reviewed by Kent Tamura.

  • platform/PopupMenuClient.h:

(WebCore::PopupMenuClient::multiple):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::multiple):

  • rendering/RenderMenuList.h:

Jan 20, 2012:

10:06 PM Changeset in webkit [105569] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk/Source/WebCore

Switch indexeddb to use supplemental IDL for DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=76723

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-01-20
Reviewed by Adam Barth.

No new tests required, all existing tests pass.

  • Modules/indexeddb: Added.
  • Modules/indexeddb/DOMWindowIndexedDatabase.cpp: Added. webkitIndexedDB() method previously in DOMWindow.cpp

(WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
(WebCore::DOMWindowIndexedDatabase::~DOMWindowIndexedDatabase):
(WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):

  • Modules/indexeddb/DOMWindowIndexedDatabase.h: Added.
  • Modules/indexeddb/DOMWindowIndexedDatabase.idl: Added. attributes previously in DOMWindow.idl
  • WebCore.gyp/WebCore.gyp: add Modules/indexeddb/ directory
  • WebCore.gypi: add Modules/indexeddb/*
  • page/DOMWindow.cpp: remove webkitIndexedDB() method, add accessor methods for m_idbFactory

(WebCore::DOMWindow::getIDBFactory):
(WebCore::DOMWindow::setIDBFactory):

  • page/DOMWindow.h:
  • page/DOMWindow.idl:
8:11 PM Changeset in webkit [105568] by levin@chromium.org
  • 2 edits in trunk/Source/WebCore

Allow isContextThread to be called while in ~ScriptExecutionContext.
https://bugs.webkit.org/show_bug.cgi?id=76756

Reviewed by Adam Barth.

It is possible for objects to get torn down or get called from ~ScriptExecutionContext
and in turn call isContextThread. The resulting behavior is undefined. This change defines
the behavior. I don't know of any places that do this but I have a test that is rarely
failing due to isContextThread being false. This is my best guess as to why, and I
don't see a reason to try to avoid calling isContextThread at this point.

No new functionality exposed so no new tests.

  • dom/ScriptExecutionContext.h:

(WebCore::ScriptExecutionContext::isContextThread):

7:32 PM Changeset in webkit [105567] by levin@chromium.org
  • 3 edits in trunk/Tools

The leaky DC check should use adoptPtr as a signal instead of OwnPtr to get less false positives.
https://bugs.webkit.org/show_bug.cgi?id=76752

Reviewed by Eric Seidel.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_for_leaky_patterns):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(LeakyPatternTest.test_create_dc):
(LeakyPatternTest.test_create_compatible_dc):

7:19 PM Changeset in webkit [105566] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[chromium] Write unit tests for compositor-thread zooming
https://bugs.webkit.org/show_bug.cgi?id=71529

Patch by Alexandre Elias <aelias@google.com> on 2012-01-20
Reviewed by James Robinson.

Add unit tests for pinch zoom and page scale animation. Includes
small cleanups in CCLayerTreeHostImpl for testability.

Source/WebCore:

  • platform/graphics/chromium/cc/CCInputHandler.h:
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
(WebCore::CCLayerTreeHostImpl::setViewportSize):

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

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit::CCLayerTreeHostImplTest::setupScrollAndContentsLayers):
(WebKit::TEST_F):

7:03 PM Changeset in webkit [105565] by ostapenko.viatcheslav@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] [WK2] Division by zero error in QtViewportInteractionEngine::setItemRectVisible
https://bugs.webkit.org/show_bug.cgi?id=76674

Reviewed by Kenneth Rohde Christiansen.

Make sure that itemRect is not empty.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::setItemRectVisible):

6:49 PM Changeset in webkit [105564] by commit-queue@webkit.org
  • 13 edits in trunk/Source

[Chromium] Incremental texture updates are not atomic.
https://bugs.webkit.org/show_bug.cgi?id=72672

Patch by David Reveman <reveman@chromium.org> on 2012-01-20
Reviewed by James Robinson.

Source/WebCore:

Use a new set of textures for each commit when incremental
texture updates are enabled.

This patch is tested by the following unit test:

  • CCLayerTreeHostTestAtomicCommit.runMultiThread
  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::ManagedTexture):
(WebCore::ManagedTexture::steal):

  • platform/graphics/chromium/ManagedTexture.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:

(WebCore::CCSingleThreadProxy::partialTextureUpdateCapability):

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

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):
(WebCore::CCThreadProxy::partialTextureUpdateCapability):

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

Source/WebKit/chromium:

Add CCLayerTreeHostTestAtomicCommit test that verifies atomicity
of commits.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::create):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::createTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::deleteTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::bindTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::texture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::usedTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::CompositorFakeWebGraphicsContext3DWithTextureTracking):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::MockContentLayerDelegate::drawsContent):
(WTF::MockContentLayerDelegate::paintContents):
(WTF::MockContentLayerDelegate::notifySyncRequired):
(WTF::CCLayerTreeHostTestAtomicCommit::CCLayerTreeHostTestAtomicCommit):
(WTF::CCLayerTreeHostTestAtomicCommit::beginTest):
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::layout):
(WTF::CCLayerTreeHostTestAtomicCommit::afterTest):
(WTF::TEST_F):

  • tests/CompositorFakeWebGraphicsContext3D.h:
6:35 PM Changeset in webkit [105563] by eae@chromium.org
  • 720 edits in branches/subpixellayout/Source

Merge missing trunk changes (up until 105194) into branch.

6:34 PM Changeset in webkit [105562] by crogers@google.com
  • 2 edits in trunk/Source/WebCore

De-zippering incorrectly snaps to target gain
https://bugs.webkit.org/show_bug.cgi?id=76741

Reviewed by Kenneth Russell.

  • platform/audio/AudioBus.cpp:
6:21 PM Changeset in webkit [105561] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

[chromium] Partially filled pixels do not occlude pixels below them.
https://bugs.webkit.org/show_bug.cgi?id=76658

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-20
Reviewed by James Robinson.

Source/WebCore:

Test: compositing/culling/tile-occlusion-boundaries.html

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

(WebCore::enclosedIntRect):
(WebCore::CCQuadCuller::cullOccludedQuads):

LayoutTests:

  • compositing/culling/tile-occlusion-boundaries-expected.png: Added.
  • compositing/culling/tile-occlusion-boundaries-expected.txt: Added.
  • compositing/culling/tile-occlusion-boundaries.html: Added.
  • compositing/resources/green.jpg: Added.
6:06 PM Changeset in webkit [105560] by shawnsingh@chromium.org
  • 2 edits in trunk/Tools

Changed my status in commiters.py

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
5:34 PM Changeset in webkit [105559] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Small cleanup of {get,put}CurrentFrame for WebMediaPlayerClientImpl/CCVideoLayerImpl.
https://bugs.webkit.org/show_bug.cgi?id=76332

Patch by Ami Fischman <fischman@chromium.org> on 2012-01-20
Reviewed by James Robinson.

Source/WebCore:

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

(WebCore::CCVideoLayerImpl::draw):

Source/WebKit/chromium:

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::putCurrentFrame):

5:16 PM Changeset in webkit [105558] by sfalken@apple.com
  • 2 edits in trunk/Source/WebKit2

Drag/drop of a file into a WebView on Windows needs to allow access to that file
https://bugs.webkit.org/show_bug.cgi?id=76753
<rdar://problem/10731719>

Reviewed by Alexey Proskuryakov.

The Windows drag/drop code path was missing the code to open a file read exception.

Added code to match the Mac version, while allowing directories and multiple files to
also be dragged (matching our previous behavior).

  • UIProcess/win/WebView.cpp:

(WebKit::maybeCreateSandboxExtensionFromDragData): Added.
(WebKit::WebView::Drop): Add a universal read exception if we're dragging a file into a WebView to open it.

5:11 PM Changeset in webkit [105557] by abarth@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a Chromium-specific baselines for
fast/dom/Window/open-invalid-url.html. Although this expected result
says "FAIL", the behavior seems to be reasonable.

  • platform/chromium/fast/dom/Window/open-invalid-url-expected.txt: Added.
4:45 PM Changeset in webkit [105556] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

<rdar://problem/9328684> and https://bugs.webkit.org/show_bug.cgi?id=62764 Frequent crashes due to null frame below ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache

Reviewed by Sam Weinig.

No way to reproduce without special malloc debugging and that doesn't even reproduce on all platforms. So still no test.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::detachFromFrame): Protect m_frame for the duration of this method.

4:36 PM Changeset in webkit [105555] by levin@chromium.org
  • 3 edits in trunk/Source/JavaScriptCore

Make OwnPtr<HDC> work for the Chromium Windows port.
https://bugs.webkit.org/show_bug.cgi?id=76738

Reviewed by Jian Li.

Chromium Windows build.

  • wtf/OwnPtrCommon.h: Changed from platform WIN to OS WIN for

OwnPtr<HDC> and similar constructs.

4:09 PM Changeset in webkit [105554] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

WebCore should not send invalid URLs to client createWindow methods.
https://bugs.webkit.org/show_bug.cgi?id=39017

Unreviewed test fix.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::createWindow): Let empty URLs through.
4:05 PM Changeset in webkit [105553] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from 118291 to 118493.

  • DEPS:
4:03 PM Changeset in webkit [105552] by weinig@apple.com
  • 23 edits in trunk/Source

Make WebCore RunLoop work for WebKit1
https://bugs.webkit.org/show_bug.cgi?id=76739

Reviewed by Anders Carlsson.

Source/WebCore:

  • platform/RunLoop.cpp:

Specialize RunLoop initialization for Mac, where it can happen on any thread.

  • platform/RunLoop.h:

Add RunLoop constructor that takes a CFRunLoopRef on the mac for initializing
the main thread.

  • platform/mac/RunLoopMac.mm:

(WebCore::RunLoop::initializeMainRunLoop):
Add new implementation that can work from any thread (and multiple threads at the
same time if necessary).

(WebCore::RunLoop::current):
Treat the main thread specially, not storing it in thread specific data.

(WebCore::RunLoop::main):
Copy main accessor since it needs access to the file static.

(WebCore::RunLoop::RunLoop):
Add constructor which takes a CFRunLoopRef.

Source/WebKit/mac:

  • Carbon/CarbonWindowAdapter.mm:

(+[CarbonWindowAdapter initialize]):

  • History/WebBackForwardList.mm:

(+[WebBackForwardList initialize]):

  • History/WebHistoryItem.mm:

(+[WebHistoryItem initialize]):

  • Misc/WebElementDictionary.mm:

(+[WebElementDictionary initialize]):

  • Misc/WebIconDatabase.mm:

(+[WebIconDatabase initialize]):

  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(+[WebHostedNetscapePluginView initialize]):

  • Plugins/WebBaseNetscapePluginView.mm:
  • Plugins/WebBasePluginPackage.mm:
  • Plugins/WebNetscapePluginView.mm:

(+[WebNetscapePluginView initialize]):

  • WebCoreSupport/WebEditorClient.mm:

(+[WebUndoStep initialize]):

  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebView/WebArchive.mm:

(+[WebArchivePrivate initialize]):

  • WebView/WebDataSource.mm:

(+[WebDataSourcePrivate initialize]):

  • WebView/WebHTMLView.mm:

(+[WebHTMLViewPrivate initialize]):
(+[WebHTMLView initialize]):

  • WebView/WebResource.mm:

(+[WebResourcePrivate initialize]):

  • WebView/WebTextIterator.mm:

(+[WebTextIteratorPrivate initialize]):

  • WebView/WebView.mm:

(+[WebView initialize]):

  • WebView/WebViewData.mm:

(+[WebViewPrivate initialize]):
Initialized the main run loop in addition to other initialization.

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

run-webkit-tests --lint-test-files crawls the whole LayoutTests subtree
https://bugs.webkit.org/show_bug.cgi?id=76748

Reviewed by Ryosuke Niwa.

It crawls the whole subtree and then doesn't use the data. Cutting this out
saves 4 seconds warm and 17 seconds cold on my Mac Pro.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(run):

3:36 PM Changeset in webkit [105550] by abarth@webkit.org
  • 2 edits in trunk/Tools

Another tiny tweak to the garden-o-matic CSS. This makes things line
up slightly nicer when there aren't any failures.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/onebar.css:

(#summary):

3:23 PM Changeset in webkit [105549] by timothy_horton@apple.com
  • 4 edits
    2 adds in trunk

Crash in RenderSVGResourceContainer::markAllClientsForInvalidation
https://bugs.webkit.org/show_bug.cgi?id=76606
<rdar://problem/10720970>

Reviewed by Dirk Schulze.

Notify SVGResourcesCache and superclass when RenderSVGInline is about
to be destroyed, preventing a crash.

Test: svg/custom/crash-inline-container-client.html

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::willBeDestroyed):

  • rendering/svg/RenderSVGInline.h:
  • svg/custom/crash-inline-container-client-expected.txt: Added.
  • svg/custom/crash-inline-container-client.html: Added.
3:22 PM Changeset in webkit [105548] by ap@apple.com
  • 3 edits
    2 adds in trunk

WebCore should not send invalid URLs to client createWindow methods.
https://bugs.webkit.org/show_bug.cgi?id=39017

Reviewed by Sam Weinig.

Test: fast/dom/window/open-invalid-url.html

  • page/DOMWindow.cpp: (WebCore::DOMWindow::createWindow): Bail out early for invalid URLs.
3:21 PM Changeset in webkit [105547] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Revert r105545. Something got broken about gclient/gyp but I can't figure out what.

  • DEPS:
3:00 PM Changeset in webkit [105546] by caio.oliveira@openbossa.org
  • 2 edits in trunk/Source/WebCore

Remove unused variable in RenderReplaced after r105513
https://bugs.webkit.org/show_bug.cgi?id=76742

Reviewed by Daniel Bates.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):

2:59 PM Changeset in webkit [105545] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from 118291 to 118530.

  • DEPS:
2:49 PM Changeset in webkit [105544] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Plumb damage from accelerated canvas 2D.
https://bugs.webkit.org/show_bug.cgi?id=76728

Patch by Jonathan Backer <backer@chromium.org> on 2012-01-20
Reviewed by Kenneth Russell.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::contentChanged):

2:17 PM Changeset in webkit [105543] by rniwa@webkit.org
  • 5 edits in trunk/Tools

run-perf-tests should support --test-results-server option
https://bugs.webkit.org/show_bug.cgi?id=76680

Reviewed by Adam Barth.

Add --test-results-server, --builder-name, and --build-number options to run-perf-tests
to be used by perf bots. Also refactor file_uploader as needed.

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.init):
(FileUploader.upload_single_file):
(FileUploader.upload_as_multipart_form_data):
(FileUploader):
(FileUploader._upload_data):
(FileUploader._upload_data.callback):

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:

(JSONResultsGeneratorBase.upload_json_files):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner):
(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_json):
(PerfTestsRunner._upload_json):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner):
(test_run_with_upload_json):
(test_run_with_upload_json.mock_upload_json):
(test_upload_json):
(test_upload_json.MockFileUploader):
(test_upload_json.MockFileUploader.init):
(test_upload_json.MockFileUploader.upload_single_file):
(test_parse_args):

2:16 PM Changeset in webkit [105542] by jchaffraix@webkit.org
  • 4 edits
    2 adds in trunk

Crash in RenderTable::borderBefore
https://bugs.webkit.org/show_bug.cgi?id=75215

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/table/crash-beforeBorder-dirty-section.html

This is a regression from r97661 that added some calls to get the object's borders but tables are a
special case and they may need to recompute some sections' pointers.

The whole sections' pointers lazy recomputation logic is unfortunately far from being bullet proof and
this change is only a mitigation for the current crash.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::borderBefore):
(WebCore::RenderTable::borderAfter):
Make sure we recompute our sections. The change was made here to avoid hitting the
path used inside the table code (ie outerBorder{Before|After}) that shouldn't be
affected.

  • rendering/RenderTable.h:

(WebCore::RenderTable::topSection):
Added an ASSERT to catch more bad use in the future.

LayoutTests:

  • fast/table/crash-beforeBorder-dirty-section-expected.txt: Added.
  • fast/table/crash-beforeBorder-dirty-section.html: Added.
2:10 PM Changeset in webkit [105541] by leviw@chromium.org
  • 14 edits in branches/subpixellayout/Source

Fixing widget painting on all platforms, and fixing an issue where nested NSViews were handed a subpixel value for the visible area. Correcting an enclosingIntRect usage in PaintInfo. Cleaning up some unnecessary changes to shrink patch noise.

1:19 PM Changeset in webkit [105540] by Simon Fraser
  • 3 edits in trunk/Source/WebKit/mac

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

This breaks builds.

  • WebView/WebPreferences.mm:
  • WebView/WebPreferencesPrivate.h:
1:05 PM Changeset in webkit [105539] by ggaren@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Removed some regexp entry boilerplate code
https://bugs.webkit.org/show_bug.cgi?id=76687

Reviewed by Darin Adler.

1% - 2% speedup on regexp tests, no change overall.

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

  • ASSERT that our startIndex is non-negative, because anything less would be uncivilized.


  • ASSERT that our input is not the null string for the same reason.
  • No need to test for startOffset being past the end of the string, since the regular expression engine will do this test for us.
  • No need to initialize the output vector, since the regular expression engine will fill it in for us.
  • yarr/YarrInterpreter.cpp:

(JSC::Yarr::Interpreter::interpret):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::compile):

RegExp used to do these jobs for us, but now we do them for ourselves
because it's a better separation of concerns, and the JIT can do them
more efficiently than C++ code:

  • Test for "past the end" before doing any matching -- otherwise a* will match with zero length past the end of the string, which is wrong.
  • Initialize the output vector before doing any matching.
1:05 PM Changeset in webkit [105538] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

Add proper offset to position right click to simulate a context menu invocation.
https://bugs.webkit.org/show_bug.cgi?id=76421

Patch by Marc-Andre Decoste <mad@chromium.org> on 2012-01-20
Reviewed by Ojan Vafai.

.:

  • ManualTests/win/contextmenu-key3.html: Added.

Source/WebCore:

Manual tests only because DRT doesn't support context menu key.

  • page/EventHandler.cpp:

(WebCore::EventHandler::sendContextMenuEventForKey):

1:01 PM Changeset in webkit [105537] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Build fix for no-DFG configuration.
Needed for <rdar://problem/10727689>.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitProfiledOpcode):

  • jit/JIT.h:

(JSC::JIT::emitValueProfilingSite):

12:55 PM Changeset in webkit [105536] by abarth@webkit.org
  • 2 edits in trunk/Tools

The party time image overlaps real content! This patch makes the
image centered vertically.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/onebar.css:

(#onebar.partytime #summary):

12:40 PM Changeset in webkit [105535] by ojan@chromium.org
  • 6 edits in trunk/Tools

Refactor TestExpectationsParser in preparation for caching the results
https://bugs.webkit.org/show_bug.cgi?id=76669

Reviewed by Dimitri Glazkov.

Make everything private expect for the parse method.
Eventually, we'll need the expectations lines to not be modified
outside of TestExpectationsParser so we can cache the results.
This makes check-webkit-style of the chromium test_expectations.txt file
go from ~17 seconds to ~12 seconds on my Mac Pro.

This patch is just a refactor in preparation, so no new tests.

  • Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py:

(TestExpectationEditorTests.make_parsed_expectation_lines):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser.parse):
(TestExpectationParser):
(TestExpectationParser._parse_line):
(TestExpectationParser._tokenize):
(TestExpectationParser._tokenize_list):
(TestExpectationsModel._clear_expectations_for_test):
(TestExpectations.init):
(TestExpectations._add_expectations):
(TestExpectations._add_skipped_tests):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(TestExpectationParserTests.test_tokenize_blank):
(TestExpectationParserTests.test_tokenize_missing_colon):
(TestExpectationParserTests.test_tokenize_extra_colon):
(TestExpectationParserTests.test_tokenize_empty_comment):
(TestExpectationParserTests.test_tokenize_comment):
(TestExpectationParserTests.test_tokenize_missing_equal):
(TestExpectationParserTests.test_tokenize_extra_equal):
(TestExpectationParserTests.test_tokenize_valid):
(TestExpectationParserTests.test_tokenize_valid_with_comment):
(TestExpectationParserTests.test_tokenize_valid_with_multiple_modifiers):
(TestExpectationParserTests.test_parse_empty_string):
(TestExpectationSerializerTests.assert_round_trip):
(TestExpectationSerializerTests.assert_list_round_trip):

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

(OptimizeExpectations.execute):

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

(GardeningExpectationsUpdater.update_expectations):

12:22 PM Changeset in webkit [105534] by abarth@webkit.org
  • 3 edits in trunk/Tools

Follow-up to previous patch: don't produce NaN when the revision number
is missing.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model_unittests.js:
12:22 PM Changeset in webkit [105533] by fpizlo@apple.com
  • 20 edits in trunk/Source/JavaScriptCore

Bytecode instructions that may have value profiling should have a direct inline
link to the ValueProfile instance
https://bugs.webkit.org/show_bug.cgi?id=76682
<rdar://problem/10727689>

Reviewed by Sam Weinig.

Each opcode that gets value profiled now has a link to its ValueProfile. This
required rationalizing the emission of value profiles for opcode combos, like
op_method_check/op_get_by_id and op_call/op_call_put_result. It only makes
sense for one of them to have a value profile link, and it makes most sense
for it to be the one that actually sets the result. The previous behavior was
to have op_method_check profile for op_get_by_id when they were used together,
but otherwise for op_get_by_id to have its own profiles. op_call already did
the right thing; all profiling was done by op_call_put_result.

But rationalizing this code required breaking some of the natural boundaries
that the code had; for instance the code in DFG that emits a GetById in place
of both op_method_check and op_get_by_id must now know that it's the latter of
those that has the value profile, while the first of those constitutes the OSR
target. Hence each CodeOrigin must now have two bytecode indices - one for
OSR exit and one for profiling.

Finally this change required some refiddling of our optimization heuristics,
because now all code blocks have "more instructions" due to the value profile
slots.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::dump):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfileForBytecodeOffset):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::bytecodeIndexForValueProfile):

  • bytecode/Instruction.h:

(JSC::Instruction::Instruction):

  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitProfiledOpcode):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitGetScopedVar):
(JSC::BytecodeGenerator::emitResolveBase):
(JSC::BytecodeGenerator::emitResolveBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitGetByVal):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/BytecodeGenerator.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::currentCodeOrigin):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueProfileFor):

  • jit/JIT.h:

(JSC::JIT::emitValueProfilingSite):

  • jit/JITCall.cpp:

(JSC::JIT::emit_op_call_put_result):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emit_op_call_put_result):

  • jit/JITInlineMethods.h:

(JSC::JIT::emitValueProfilingSite):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_resolve):
(JSC::JIT::emit_op_resolve_base):
(JSC::JIT::emit_op_resolve_skip):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emitSlow_op_resolve_global):
(JSC::JIT::emit_op_resolve_with_base):
(JSC::JIT::emit_op_resolve_with_this):
(JSC::JIT::emitSlow_op_resolve_global_dynamic):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_resolve):
(JSC::JIT::emit_op_resolve_base):
(JSC::JIT::emit_op_resolve_skip):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emitSlow_op_resolve_global):
(JSC::JIT::emit_op_resolve_with_base):
(JSC::JIT::emit_op_resolve_with_this):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emit_op_get_scoped_var):
(JSC::JIT::emit_op_get_global_var):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emit_op_get_scoped_var):
(JSC::JIT::emit_op_get_global_var):

  • jit/JITStubCall.h:

(JSC::JITStubCall::callWithValueProfiling):

  • runtime/Options.cpp:

(JSC::Options::initializeOptions):

12:21 PM Changeset in webkit [105532] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r105426.
http://trac.webkit.org/changeset/105426
https://bugs.webkit.org/show_bug.cgi?id=76726

Might have caused a 20% regression in the PLT (Requested by
abarth|gardener on #webkit).

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

Source/WebCore:

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

  • platform/mac-snowleopard/Skipped:
12:08 PM Changeset in webkit [105531] by commit-queue@webkit.org
  • 17 edits in trunk/Source

[chromium] Revert a couple of changes in fileapi/ that break tests in chromeos.
https://bugs.webkit.org/show_bug.cgi?id=76718

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-01-20
Reviewed by Darin Fisher.

Source/WebCore:

  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::getIdentifier):
(WebCore::BlobURL::createBlobURL):

  • fileapi/BlobURL.h:

(WebCore::BlobURL::blobProtocol):

  • fileapi/DOMFileSystemBase.cpp:

(WebCore::DOMFileSystemBase::crackFileSystemURL):

  • fileapi/DOMFileSystemBase.h:
  • fileapi/EntryBase.cpp:

(WebCore::EntryBase::toURL):

  • fileapi/FileWriter.cpp:

(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::webkitRequestFileSystem):

  • page/DOMWindow.h:
  • platform/AsyncFileSystem.cpp:
  • platform/AsyncFileSystem.h:
  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):

Source/WebKit/chromium:

  • public/platform/WebFileSystem.h:
  • src/AssertMatchingEnums.cpp:
  • src/AsyncFileSystemChromium.cpp:
  • src/AsyncFileSystemChromium.h:
11:44 AM Changeset in webkit [105530] by abarth@webkit.org
  • 4 edits in trunk/Tools

Garden-o-matic should tell me which revisions have been checked by all the bots
https://bugs.webkit.org/show_bug.cgi?id=76722

Reviewed by Dimitri Glazkov.

This information helps me know when it's safe for me to roll a
candidate revision.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model_unittests.js:
11:23 AM Changeset in webkit [105529] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Refactor canvas drawing to be more data driven
https://bugs.webkit.org/show_bug.cgi?id=76635

CCCanvasLayerImpl no longer handles drawing itself, but produces a list of CCCanvasDrawQuads.
These quads are then drawn by LayerRendererChromium.

This is a refactor, so no new tests were added.

Patch by Tim Dresser <tdresser@chromium.org> on 2012-01-20
Reviewed by James Robinson.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawCanvasQuad):

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

(WebCore::CCCanvasDrawQuad::create):
(WebCore::CCCanvasDrawQuad::CCCanvasDrawQuad):

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

(WebCore::CCCanvasDrawQuad::textureId):
(WebCore::CCCanvasDrawQuad::hasAlpha):
(WebCore::CCCanvasDrawQuad::premultipliedAlpha):

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

(WebCore::CCCanvasLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
11:08 AM Changeset in webkit [105528] by fsamuel@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[Chromium] Do not recompute viewport on same page navigation
https://bugs.webkit.org/show_bug.cgi?id=75576

Reviewed by Darin Fisher.

Added parameter isNavigationWithinPage to WebViewImpl::didCommitLoad
that indicates whether a same-page navigation has just occurred.

The page scale factor flag is reset only on navigation to a new page.
If the flag is not set, viewport and page scale will be recomputed on
layoutUpdated.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidNavigateWithinPage):
(WebKit::FrameLoaderClientImpl::dispatchDidCommitLoad):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::didCommitLoad):
(WebKit::WebViewImpl::observeNewNavigation):

  • src/WebViewImpl.h:
11:06 AM Changeset in webkit [105527] by abarth@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

Add new baselines for a test introduced in
http://trac.webkit.org/changeset/105515. These all appear to be
correct.

  • platform/chromium-linux/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-mac-leopard/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-win/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-win/fast/borders/scaled-border-image-expected.txt: Added.
11:03 AM Changeset in webkit [105526] by abarth@webkit.org
  • 10 edits
    9 adds
    23 deletes in trunk/LayoutTests

Update baselines after http://trac.webkit.org/changeset/105513. Even
though these results look different on different platforms, the tests
seem to be aiming for the two boxes to look the same, which they do.

Also, removed some redundant results.

  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug101674-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug86708-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/97619-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug101674-expected.png: Added.
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug86708-expected.png: Added.
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/97619-expected.png: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug101674-expected.png: Removed.
  • platform/chromium-mac/tables/mozilla/bugs/bug86708-expected.png: Removed.
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/97619-expected.png: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
10:52 AM Changeset in webkit [105525] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This test fails.

  • platform/chromium/test_expectations.txt:
10:17 AM Changeset in webkit [105524] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in xsltParseGlobalVariable.
https://bugs.webkit.org/show_bug.cgi?id=75978

Reviewed by Andreas Kling.

Source/WebCore:

The code missed to reset the stylesheet pointer after we fail
to compile the XSLT stylesheet. As a result, the stylesheet gets
reused with a removed document in the next transformToFragment call.

Test: fast/xsl/xslt-transform-to-fragment-crash.html

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::transformToString):

LayoutTests:

  • fast/xsl/xslt-transform-to-fragment-crash-expected.txt: Added.
  • fast/xsl/xslt-transform-to-fragment-crash.html: Added.
9:36 AM Changeset in webkit [105523] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] REGRESSION(r105517): It made 49 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=76708

  • platform/qt-wk2/Skipped: Typo fix after last change.
9:35 AM Changeset in webkit [105522] by vestbo@webkit.org
  • 2 edits in trunk/Tools

build-webkit: Don't spit out congratulations message on Ctrl+C

Reviewed by Andreas Kling.

9:07 AM Changeset in webkit [105521] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] REGRESSION(r105517): It made 49 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=76708

  • platform/qt-wk2/Skipped: Skip failing tests to paint the bot green.
9:06 AM Changeset in webkit [105520] by Philippe Normand
  • 4 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105486.

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
8:49 AM Changeset in webkit [105519] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK] Allow extra jhbuild modulesets
https://bugs.webkit.org/show_bug.cgi?id=76691

Reviewed by Gustavo Noronha Silva.

  • gtk/jhbuildrc: Extra modulesets and modules can be added in

JHBuild using the WEBKIT_EXTRA_MODULESETS and WEBKIT_EXTRA_MODULES
env variables respectively. Use comma-separated values. Example:
WEBKIT_EXTRA_MODULES=file:///path/to/module.set,file:///other/path.

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

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Unreviewed gardening after r105513, update Qt specific results.

  • platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
  • platform/qt/svg/wicd/rightsizing-grid-expected.png:
  • platform/qt/svg/wicd/rightsizing-grid-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug101674-expected.png:
  • platform/qt/tables/mozilla/bugs/bug101674-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug86708-expected.png:
  • platform/qt/tables/mozilla/bugs/bug86708-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/97619-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/97619-expected.txt:
8:24 AM Changeset in webkit [105517] by jocelyn.turcotte@nokia.com
  • 9 edits in trunk/Source/WebKit2

[Qt] Trigger forcing accelerated compositing from the UI process side.
https://bugs.webkit.org/show_bug.cgi?id=76296

Reviewed by Noam Rosenthal.

Some messages can be sent from the web view to the LayerTreeHost before
accelerated compositing is entered on the web process and signaled back.
By letting the UI process decide if AC has to be forced, we can create
the LayerTreeHostProxy earlier to send messages to the web process while
AC is being entered there.

This patch also fixes the flow of DidRenderFrame and RenderNextFrame messages
by setting the m_waitingForUIProcess flag properly and only send the
RenderNextFrame once the painting thread on the UI process is ready to paint.

This fixes the first visible content rect message not being received when
loading pages from the disk.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::flushLayerChanges):
(WebKit::LayerTreeHostProxy::didRenderFrame):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::performScheduledLayerFlush):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

7:56 AM Changeset in webkit [105516] by Nikolas Zimmermann
  • 13 edits in trunk/LayoutTests

2012-01-20 Nikolas Zimmermann <nzimmermann@rim.com>

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Not reviewed. Rebaseline gtk results.

  • platform/gtk/fast/block/float/015-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/gtk/svg/custom/use-font-face-crash-expected.txt:
  • platform/gtk/svg/wicd/rightsizing-grid-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug101674-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug86708-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/97619-expected.txt:
7:51 AM Changeset in webkit [105515] by Nikolas Zimmermann
  • 3 edits
    3 adds in trunk

REGRESSION (r98852): apple.com navigation bar is broken under full-page zoom
https://bugs.webkit.org/show_bug.cgi?id=76249

Reviewed by Andreas Kling.

Source/WebCore:

Fix regression with full-page zoom & border-image. paintNinePieceImage() expects local, unzoomed coordinates.
Restore the behaviour as it was before r98852, fixing the regression.

Test: fast/borders/scaled-border-image.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

Add new test covering zooming + border-image, which regressed.

  • fast/borders/scaled-border-image.html: Added.
  • platform/mac/fast/borders/scaled-border-image-expected.png: Added.
  • platform/mac/fast/borders/scaled-border-image-expected.txt: Added.
7:33 AM Changeset in webkit [105514] by mihnea@adobe.com
  • 39 edits
    3 adds in trunk

[CSSRegion]Expose DOM interface for WebKitCSSRegionRule
https://bugs.webkit.org/show_bug.cgi?id=73985

Reviewed by Antti Koivisto.

Source/WebCore:

Start by exposing the interface and the cssRules attribute of type CSSRuleList.
Test: fast/regions/webkit-region-rule.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • bindings/v8/custom/V8CSSRuleCustom.cpp:

(WebCore::toV8):

  • css/WebKitCSSRegionRule.cpp:
  • css/WebKitCSSRegionRule.h:
  • css/WebKitCSSRegionRule.idl:
  • page/DOMWindow.idl:

LayoutTests:

Start by exposing the interface and the cssRules attribute of type CSSRuleList.

  • fast/dom/Window/window-properties-expected.txt:
  • fast/dom/Window/window-property-descriptors-expected.txt:
  • fast/dom/prototype-inheritance-2-expected.txt:
  • fast/regions/webkit-region-rule-expected.txt: Added.
  • fast/regions/webkit-region-rule.html: Added.
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/mac/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/mac/fast/js/global-constructors-expected.txt:
  • platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/js/global-constructors-expected.txt:
  • platform/win/fast/dom/Window/window-properties-expected.txt:
  • platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/win/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/win/fast/js/global-constructors-expected.txt:
7:30 AM Changeset in webkit [105513] by Nikolas Zimmermann
  • 58 edits in trunk

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Reviewed by Antti Koivisto.

Source/WebCore:

Remove a gazillion of hacks out of our SVG implementation, by correctly differentiating between the
SVG width/height attributes and the CSS width/height properties. They need to be treated independently
when handling the intrinsic size negotiation, according to both CSS 2.1 & SVG 1.1 2nd Edition specs.

Fixes several bugs in the LayoutTests/svg/custom/*object*sizing tests, we now match Opera perfectly. FF still has some bugs, and IE9 as well.

  • css/svg.css: Remove hardcoded, width/height: 100% on <svg>.
  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation): Make 'intrinsicRatio' a float, and add 'intrinsicSize' as seperated FloatSize, to avoid confusion.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Add forgotton case for percentage intrinsic sizes, that lead to workarounds in other places, that can now be removed.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth): Directly use imageHasRelativeWidth/Height(), it does differentiate between SVG/CSS width/height attributes/properties now.
(WebCore::RenderImage::computeIntrinsicRatioInformation): Adapt to 'intrinsicRatio' argument change.

  • rendering/RenderImage.h: Ditto.
  • rendering/RenderReplaced.cpp: Refactor existing code, break out firstContainingBlockWithLogicalWidth/hasReplacedLogicalWidth/hasReplacedLogicalHeight/hasAutoHeightOrContainingBlockWithAutoHeight.

(WebCore::firstContainingBlockWithLogicalWidth): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalWidth): Refactored, and exported, so SVGSVGElement::widthAttributeEstablishesViewport() can use it.
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalHeight): Refactored, and exported, so SVGSVGElement::heightAttributeEstablishesViewport() can use it.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Adapt to 'intrinsicRatio' changes ('intrinsicSize' is now decoupled from it). Refactor so that RenderSVGRoot can directly use it as well!
(WebCore::RenderReplaced::computeReplacedLogicalHeight): Ditto.

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Only determine the intrinsic size & ratio using the SVG width/height attributes, not the CSS width/height properties, as it's specified.
(WebCore::resolveLengthAttributeForSVG): Helper function for computeReplacedLogicalWidth/Height, that scales Length values that come from SVG width/height attributes.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Finally remove home-brewn size computation logic - it can be fully shared with RenderReplaced now that we inherit from it.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::RenderSVGViewportContainer::viewport): Export viewport() for easier length resolution.

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport): Finally clean up this hell, and make it easy to understand. Only need to resolve lengths against either RenderSVGRoot or RenderSVGViewportContainer now.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport): Remove wrong code and disable this. Its not used, and we have no test coverage for it. Its current implementation didn't make any sense.
(WebCore::SVGSVGElement::parseMappedAttribute): Remove hacks mapping SVG width/height attributes to CSS properties.
(WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
(WebCore::SVGSVGElement::localCoordinateSpaceTransform): Refactored.
(WebCore::SVGSVGElement::currentViewBoxRect): Ditto.
(WebCore::SVGSVGElement::currentViewportSize): Ditto.
(WebCore::SVGSVGElement::widthAttributeEstablishesViewport): Main logic determining if the SVG or CSS properties establish the viewport - a direct transliteration from the spec.
(WebCore::SVGSVGElement::heightAttributeEstablishesViewport): Ditto.
(WebCore::SVGSVGElement::intrinsicWidth): Helper.
(WebCore::SVGSVGElement::intrinsicHeight): Ditto.

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size): Cleanup code.
(WebCore::SVGImage::hasRelativeWidth): Added, avoids hacks in RenderBoxModelObject.
(WebCore::SVGImage::hasRelativeHeight): Ditto.
(WebCore::SVGImage::computeIntrinsicDimensions): Make use of new SVGSVGElement::computeIntrinsicDimensions.

  • svg/graphics/SVGImage.h:

LayoutTests:

Update SVG pixel test baseline.

  • platform/mac/svg/custom/dynamic-empty-path-expected.png: Marginal changes.
  • platform/mac/svg/custom/fractional-rects-expected.png: Ditto.
  • platform/mac/svg/custom/js-update-container-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Align with Opera, gives same result now. All *object*sizing* tests are passing now.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png: Marginal changes.
  • platform/mac/svg/custom/viewBox-hit-expected.png: Ditto.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-background-image-tiled-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-background-images-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug101674-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug101674-expected.txt: Ditto.
  • platform/mac/tables/mozilla/bugs/bug86708-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug86708-expected.txt: Ditto.
  • platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.png: Ditto.
  • platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.txt: Ditto.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Fix test, now that our bug is fixed.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/foreignObject/text-tref-02-b-expected.txt: Size is not reported anymore.
7:03 AM Changeset in webkit [105512] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

window.innerWidth/Height should not include page scale
https://bugs.webkit.org/show_bug.cgi?id=76555

Source/WebCore:

The DOM attributes window.innerWidth and window.innerHeight should be in
CSS pixels instead of device pixels. Currently the text zoom factor is
cancelled out when calculating these values, but the same also needs to
be done for the page scale.

There is an additional subtlety concerning frames/iframes since their
visible content rectangle is already in (unscaled) CSS pixels. By using
Frame::frameScaleFactor() we avoid unnecessarily cancelling out the page
scale factor in this case.

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-20
Reviewed by Kenneth Rohde Christiansen.

Tests: fast/dom/iframe-inner-size-scaling.html

fast/dom/window-inner-size-scaling.html

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerHeight):
(WebCore::DOMWindow::innerWidth):

LayoutTests:

Add two tests for window.innerWidth and window.innerHeight interaction
with page scaling.

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-20
Reviewed by Kenneth Rohde Christiansen.

  • fast/dom/iframe-inner-size-scaling-expected.txt: Added.
  • fast/dom/iframe-inner-size-scaling.html: Added.
  • fast/dom/window-inner-size-scaling-expected.txt: Added.
  • fast/dom/window-inner-size-scaling.html: Added.
  • fast/frames/frame-set-rotation-hit.html: Calculate the panel height before changing the page scale, because the visual viewport changes with the page scale.
  • fast/frames/frame-set-scaling-hit.html: Ditto.
6:53 AM Changeset in webkit [105511] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/LayoutTests

[Qt] animations tests fails which uses suspend/resume
https://bugs.webkit.org/show_bug.cgi?id=43905

Patch by Alexis Menard <alexis.menard@openbossa.org> on 2012-01-20
Reviewed by Csaba Osztrogonác.

They seem to pass correctly on my machine.

  • platform/qt/Skipped:
  • platform/qt/animations/additive-transform-animations-expected.txt: Added.
6:49 AM Changeset in webkit [105510] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk/LayoutTests

new baselines for crbug 110493
https://bugs.webkit.org/show_bug.cgi?id=76629

Patch by Elliot Poger <epoger@google.com> on 2012-01-20
Reviewed by Dirk Pranke.

  • platform/chromium-linux/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-linux/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-leopard/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-leopard/svg/transforms/animated-path-inside-transformed-html-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-snowleopard/svg/transforms/animated-path-inside-transformed-html-expected.png: Added.
  • platform/chromium-win/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-win/svg/custom/focus-ring-expected.png:
  • platform/chromium/test_expectations.txt:
6:29 AM Changeset in webkit [105509] by kinuko@chromium.org
  • 2 edits
    1 delete in trunk

Unreviewed; Windows buildbot update failure fix.

  • ../ManualTests/data-transfer-items-file-dragout.html: Removed the notion of test:lorem-text.html.
  • ../ManualTests/resources/test:lorem-text.html: Removed as this doesn't work on Windows.
4:36 AM Changeset in webkit [105508] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Skip failing tests.

4:31 AM Changeset in webkit [105507] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Web Inspector: [chromium] add WebDevToolsFrontendClient::openInNewTab for upcoming WebCore change.
https://bugs.webkit.org/show_bug.cgi?id=76698

Reviewed by Yury Semikhatsky.

  • public/WebDevToolsFrontendClient.h:

(WebKit::WebDevToolsFrontendClient::openInNewTab):

4:21 AM BuildingGtk edited by kov@webkit.org
Added libxtst-dev - needed for jhbuilding the at-spi bits required for … (diff)
4:08 AM Changeset in webkit [105506] by kinuko@chromium.org
  • 30 edits
    8 adds in trunk

Add DataTransferItems support for drag-and-drop'ed files and texts
https://bugs.webkit.org/show_bug.cgi?id=76367

Reviewed by Tony Chang.

WebKit-svn:

  • ManualTests/data-transfer-items-file-dragout.html: Added.
  • ManualTests/resources/test:lorem-text.html: Added.

WebKit-svn/LayoutTests:

  • editing/pasteboard/data-transfer-items-drag-drop-file-expected.txt: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-file.html: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-string-expected.txt: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-string.html: Added.
  • platform/gtk/Skipped: Added the new tests as the platform does not support dataTransferItems yet.
  • platform/mac/Skipped: Ditto.
  • platform/qt/Skipped: Ditto.
  • platform/win/Skipped: Ditto.

WebKit-svn/Source/WebCore:

Per http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#the-datatransfer-interface
the new interface should also support drag-and-dropped files and texts in
addition to pasted texts/images. The user apps should also be able to add
texts/files to the drag store by calling event.dataTransfer.items.add().

This patch adds drag-and-drop'ed items support in DataTransferItem and
DataTransferItemList so that they work for dropped files and texts (as well as
the copy-pasted texts/images).

This patch also adds customized toJS()/toV8() code to Blob/File javascript
binding so that the JS code can get either Blob or File underlying object
where the API returns Blob. This change is necessary since we return Blob
from DataTransferItem.getAsFile() for pasted images but want to return File
for dropped files.

Tests: editing/pasteboard/data-transfer-items-drag-drop-file.html

editing/pasteboard/data-transfer-items-drag-drop-string.html

  • GNUmakefile.list.am: Added entries for the new {JS,V8}BlobCustom.
  • Target.pri: Ditto.
  • UseJSC.cmake: Ditto.
  • WebCore.gypi: Ditto.
  • bindings/js/JSBindingsAllInOne.cpp: Ditto.
  • bindings/js/JSBlobCustom.cpp: Added toJS custom code that returns File or

Blob depending on the return value of isFile().
(WebCore::toJS):

  • bindings/v8/custom/V8BlobCustom.cpp: Added toV8 custom code.

(WebCore::toV8):

  • dom/DataTransferItem.h: Added a new create() method which takes File.
  • dom/DataTransferItemList.cpp: Added add(File) method.

(WebCore::DataTransferItemList::add):

  • dom/DataTransferItemList.h: Ditto.
  • dom/DataTransferItemList.idl: Ditto.
  • fileapi/Blob.idl: Added CustomToJS for toJS/toV8.
  • platform/chromium/ClipboardChromium.cpp: Added code for drag-and-drop'ed items.

(WebCore::ClipboardChromium::items): Revised.
(WebCore::ClipboardChromium::mayUpdateItems): Added.
(WebCore::ClipboardChromium::isStorageUpdated): Added.

  • platform/chromium/ClipboardChromium.h:
  • platform/chromium/DataTransferItemChromium.cpp: Added a new constructor that

takes File and updated getAsFile() to make it support dropped files.
(WebCore::DataTransferItem::create):
(WebCore::DataTransferItemChromium::DataTransferItemChromium):
(WebCore::DataTransferItemChromium::getAsFile):

  • platform/chromium/DataTransferItemChromium.h:
  • platform/chromium/DataTransferItemListChromium.cpp:

(WebCore::DataTransferItemListChromium::addInternalItem):

  • platform/chromium/DataTransferItemListChromium.cpp: Added overrides implementation for m_item accessors to make them reflect the changes in the owner clipboard.

(WebCore::DataTransferItemListChromium::length):
(WebCore::DataTransferItemListChromium::item):
(WebCore::DataTransferItemListChromium::deleteItem):
(WebCore::DataTransferItemListChromium::clear):
(WebCore::DataTransferItemListChromium::add):
(WebCore::DataTransferItemListChromium::mayUpdateItems): Added.

  • platform/qt/DataTransferItemQt.cpp: Added a new constructor that takes File and updated

getAsFile() to make it support dropped files.
(WebCore::DataTransferItem::create):
(WebCore::DataTransferItemQt::DataTransferItemQt):
(WebCore::DataTransferItemQt::getAsFile):

  • platform/qt/DataTransferItemQt.h:
3:43 AM Changeset in webkit [105505] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[Gtk] Unreviewed, unskipping test passing after r105286.

  • platform/gtk/Skipped: Unskip test.
3:39 AM Changeset in webkit [105504] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

Unreviewed, rolling out r105497.
http://trac.webkit.org/changeset/105497
https://bugs.webkit.org/show_bug.cgi?id=76696

Leaking in Qt layout tests and timing out in GTK API tests.
(Requested by jturcotte on #webkit).

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

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

3:29 AM Changeset in webkit [105503] by mario@webkit.org
  • 17 edits
    6 adds in trunk

[GTK] Expose accessibility hierarchy in WebKit2 to ATK/AT-SPI based ATs
https://bugs.webkit.org/show_bug.cgi?id=72589

Reviewed by Martin Robinson.

.:

New optional dependency for WK2's accessibility unit test: AT-SPI2.

  • configure.ac: Check for AT-SPI2 when building with WK2 support.

Source/WebKit2:

Expose the accessibility hierarchy in the multi-process
architecture of WK2 through AtkSocket and AtkPlug.

Make the WebView widget return an AtkSocket when calling to
gtk_widget_get_accessible().

  • GNUmakefile.am: Add new files.
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkit_web_view_base_init):
(webkitWebViewBaseGetAccessible):
(webkit_web_view_base_class_init):

  • UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp: Added.

(webkitWebViewBaseAccessibleWidgetFinalize):
(webkitWebViewBaseAccessibleWidgetDestroyed):
(webkitWebViewBaseAccessibleInitialize):
(webkitWebViewBaseAccessibleRefStateSet):
(webkitWebViewBaseAccessibleGetIndexInParent):
(webkit_web_view_base_accessible_init):
(webkit_web_view_base_accessible_class_init):
(webkitWebViewBaseAccessibleNew):

  • UIProcess/API/gtk/WebKitWebViewBaseAccessible.h: Added.

Make the WebPage create an AtkPlug on its initialization and
sending the ID of that plug to the UI process, so it can embed the
plug in the socket.

Also, take care of all the needed wrapping around the WebCore's
accessibility objects, exposing them in the UI process's
accessibility hierarchy thanks to the socket-plug connection.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::accessibilityPlugID):

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/gtk/WebPageProxyGtk.cpp:

(WebKit::WebPageProxy::bindAccessibilityTree):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp: Added.

(accessibilityRootObjectWrapper):
(webPageAccessibilityObjectInitialize):
(webPageAccessibilityObjectGetIndexInParent):
(webPageAccessibilityObjectGetNChildren):
(webPageAccessibilityObjectRefChild):
(web_page_accessibility_object_init):
(web_page_accessibility_object_class_init):
(webPageAccessibilityObjectNew):
(webPageAccessibilityObjectRefresh):

  • WebProcess/WebPage/gtk/WebPageAccessibilityObject.h: Added.
  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::platformInitialize):
(WebKit::WebPage::updateAccessibilityTree):

New unit test for checking accessibility support in WK2GTK.

  • UIProcess/API/gtk/tests/AccessibilityTestServer.cpp: Added.

(loadChangedCallback): Notify the parent process (the test)
when ready.
(main):

  • UIProcess/API/gtk/tests/GNUmakefile.am:
  • UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp: Added.

(stopTestServer):
(sigAbortHandler):
(testServerMonitorThreadFunc):
(startTestServerMonitor):
(startTestServer):
(checkAtspiAccessible):
(findTestServerApplication):
(testAtspiBasicHierarchy):
(beforeAll):
(afterAll):

Tools:

Ensure the accessibility infrastructure is available when running
the unit tests, otherwise WK2's accessibility tests won't work.

  • Scripts/run-gtk-tests:

(TestRunner):
(TestRunner._lookup_atspi2_binary): New. Looks for the directory
where at-spi2's stuff is located (like at-spi-bus-launcher and
at-spi2-registryd).
(TestRunner.run): Initialize the accessibility infrastructure.

  • gtk/generate-gtkdoc:

(get_webkit2_options): Add 'WebKitWebViewBaseAccessible.*'.

  • gtk/jhbuild.modules: Added at-spi2-core and at-spi2-atk.
3:10 AM Changeset in webkit [105502] by alexis.menard@openbossa.org
  • 16 edits
    2 adds
    2 deletes in trunk

remove CSSBorderImageValue
https://bugs.webkit.org/show_bug.cgi?id=75563

Reviewed by Tony Chang.

Source/WebCore:

Remove CSSBorderImageValue as border-image is a shorthand therefore we don't
need a dedicated CSS class type for it. CSSBorderImageValue was here for
-webkit-border-image which is not a shorthand. This is the first step to move border-image
close to a correct shorthand implementation while keeping -webkit-border-image being a regular
CSS property.

No new tests : It's a refactor, existing tests should cover it.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:
  • css/CSSBorderImage.cpp: Added.

(WebCore::createBorderImageValue):

  • css/CSSBorderImage.h: Added.
  • css/CSSBorderImageValue.cpp: Removed.
  • css/CSSBorderImageValue.h: Removed.
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForNinePieceImage):

  • css/CSSParser.cpp:

(WebCore::BorderImageParseContext::commitBorderImage):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::mapNinePieceImage):

  • css/CSSValue.cpp:

(WebCore::CSSValue::addSubresourceStyleURLs):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

LayoutTests:

Modify the expected output as now border-image is a CSSValueList.

  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
2:51 AM Changeset in webkit [105501] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Merge 105140 (re-land) - Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9271002

2:29 AM Changeset in webkit [105500] by hayato@chromium.org
  • 21 edits
    3 adds in trunk

Add ShadowRoot.idl which is enabled by newly introduced SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=76353

Reviewed by Hajime Morita.

Add ShadowRoot.idl, which is enabled only on chromium port since this is
under development feature.
ShadowRoot.idl contains minimum API so that we can test it.
Other APIs should be added on other changes so that we can isolate issues.

Source/WebCore:

Test: fast/dom/shadow/shadow-root-js-api.html

  • WebCore.gypi:
  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::shadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::setShadowDOMEnabled):

  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::host):

  • dom/ShadowRoot.idl: Added.
  • testing/Internals.cpp:

(WebCore::Internals::ensureShadowRoot):
(WebCore::Internals::shadowRoot):

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

Source/WebKit/chromium:

  • features.gypi:
  • public/WebRuntimeFeatures.h:
  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableShadowDOM):
(WebKit::WebRuntimeFeatures::isShadowDOMEnabled):

Tools:

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

  • fast/dom/shadow/shadow-root-js-api-expected.txt: Added.
  • fast/dom/shadow/shadow-root-js-api.html: Added.
  • platform/efl/Skipped:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
2:17 AM Changeset in webkit [105499] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Revert 105252 - Merge 105140 - Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9252006

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9131006

2:04 AM Changeset in webkit [105498] by jocelyn.turcotte@nokia.com
  • 3 edits
    3 adds in trunk

[Qt] Public API watch dog auto test.
https://bugs.webkit.org/show_bug.cgi?id=73922

Reviewed by Simon Hausmann.

This test aims to prevent unintended/unapproved
modifications to the public QML API.

.:

  • Source/tests.pri:

Source/WebKit2:

  • UIProcess/API/qt/tests/publicapi/publicapi.pro: Added.
  • UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp: Added.

(isCheckedEnum):
(isCheckedClass):
(checkKnownType):
(gatherAPI):
(tst_publicapi::publicAPI):

2:02 AM Changeset in webkit [105497] by jocelyn.turcotte@nokia.com
  • 7 edits in trunk/Source/WebKit2

[Qt] Trigger forcing accelerated compositing from the UI process side.
https://bugs.webkit.org/show_bug.cgi?id=76296

Reviewed by Noam Rosenthal.

Some messages can be sent from the web view to the LayerTreeHost before
accelerated compositing is entered on the web process and signaled back.
By letting the UI process decide if AC has to be forced, we can create
the LayerTreeHostProxy earlier to send messages to the web process while
AC is being entered there.

This fixes the first visible content rect message not being received when
loading pages from the disk.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

1:57 AM Changeset in webkit [105496] by mario@webkit.org
  • 2 edits in trunk/Tools

[GTK] GTK's DRT not to log events for already defunct objects
https://bugs.webkit.org/show_bug.cgi?id=76620

Reviewed by Martin Robinson.

Do not log 'state-change:defunct' events.

  • DumpRenderTree/gtk/AccessibilityCallbacks.cpp:

(printAccessibilityEvent): Early return if a
'state-change:defunct' signal is passed.
(axObjectEventListener): Pass the signal name and value in
separate parameters to printAccessibilityEvent.

1:39 AM Changeset in webkit [105495] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

undefined reference to symbol eina_module_free
https://bugs.webkit.org/show_bug.cgi?id=76681

Patch by ChangSeok Oh <ChangSeok Oh> on 2012-01-20
Reviewed by Martin Robinson.

eina_module_free has been used without including eina libraries after r104936.

  • wtf/PlatformEfl.cmake: Add EINA_LIBRARIES.
1:23 AM Changeset in webkit [105494] by tkent@chromium.org
  • 2 edits in trunk/Websites/webkit.org

Each style rule should have its own ID.
https://bugs.webkit.org/show_bug.cgi?id=76428

Reviewed by David Levin.

  • coding/coding-style.html: Add an id attribute to each of li elements,

and add code to set title="#id-name" and to make li elements clickable.

1:12 AM Changeset in webkit [105493] by Csaba Osztrogonác
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105486.

  • platform/qt/fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/js/global-constructors-expected.txt:
1:05 AM Changeset in webkit [105492] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a new failing test.

  • platform/qt/Skipped:
12:59 AM Changeset in webkit [105491] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Source/WebKit/chromium

[chromium] Chromium should have EditorClientImpl::checkTextOfParagraph.
https://bugs.webkit.org/show_bug.cgi?id=74071

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-20
Reviewed by Darin Fisher.

Spellchecker on Mac has more sophisticated interface for spellchecking (checkTextOfParagraph).
If the other ports have the same interface, code can be clearer and easy to extend.
This patch introduces such an interface. The implementation will be done not in WebKit but in Chromium.

Also, currently WebKit::WebTextCheckingResult and WebCore::TextCheckingResult have different forms.
They should be corresponding apparently. This patch introduces such correspondence.

  • WebKit.gyp:
  • public/WebSpellCheckClient.h:

(WebKit::WebSpellCheckClient::checkTextOfParagraph):

A new interface for spellchecking.

  • public/WebTextCheckingResult.h:

(WebKit::WebTextCheckingResult::WebTextCheckingResult):

Changed so that WebTextCheckingResult corresponds to WebCore::TextCheckingResult.

  • public/WebTextCheckingType.h: Copied from Source/WebKit/chromium/public/WebTextCheckingResult.h.
  • src/AssertMatchingEnums.cpp:
  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::checkTextOfParagraph):

  • src/EditorClientImpl.h:
  • src/WebTextCheckingResult.cpp: Copied from Source/WebKit/chromium/public/WebTextCheckingResult.h.

(WebKit::WebTextCheckingResult::operator TextCheckingResult):

12:47 AM Changeset in webkit [105490] by tkent@chromium.org
  • 6 edits in trunk/Source/WebCore

Change LocalizedNumber interface
https://bugs.webkit.org/show_bug.cgi?id=76613

Reviewed by Hajime Morita.

Change the functions of LocalizedNumber from:

double parseLocalizedNumber(const String&);
String formatLocalizedNumber(double, unsigned fractionDigits);

To:

String convertToLocalizedNumber(const String&, usnigned fractionDigits);
String convertFromLocalizedNumber(const String&);

in order that we can avoid conversion from/to a double value.

The fractionDigits argumetn of convertToLocalizedNumber() will be
removed in the future. We need it because we'd like to recycle the old
functions to implement new functions for now and functions in
LocalizedNumber can't call functions in HTMLParserIdioms.cpp.

No new tests because the change doesn't make any behavior change.

  • html/NumberInputType.cpp:

(WebCore::NumberInputType::visibleValue):
Use convertToLocalizedNumber.
(WebCore::NumberInputType::convertFromVisibleValue):
Use convertFromLocalizedNumber.
(WebCore::NumberInputType::isAcceptableValue): ditto.

  • platform/text/LocalizedNumber.h:

Remove parseLocalizedNumber and formatLocalizedNumber, and
introduce convertToLocalizedNumber and convertFromLocalizedNumber.

  • platform/text/LocalizedNumberICU.cpp:

(WebCore::parseLocalizedNumber): Make this static.
(WebCore::formatLocalizedNumber): Make this static.
(WebCore::convertToLocalizedNumber): Implement this with formatLocalizedNumber.
(WebCore::convertFromLocalizedNumber): Implement this with parseLocalizedNumber.

  • platform/text/LocalizedNumberNone.cpp:

(WebCore::convertToLocalizedNumber):
Implement this as a function returning the input string.
(WebCore::convertFromLocalizedNumber): ditto.

  • platform/text/mac/LocalizedNumberMac.mm:

(WebCore::parseLocalizedNumber): Make this static.
(WebCore::formatLocalizedNumber): Make this static.
(WebCore::convertToLocalizedNumber): Implement this with formatLocalizedNumber.
(WebCore::convertFromLocalizedNumber): Implement this with parseLocalizedNumber.

12:42 AM Changeset in webkit [105489] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit/chromium

[chromium] WebFrame should have an interface to invoke spellchecking in arbitrarily.
https://bugs.webkit.org/show_bug.cgi?id=73971

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-20
Reviewed by Darin Fisher.

This interface is necessary to recheck spelling of an arbitrary element.

  • public/WebFrame.h:
  • public/WebNode.h:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::requestTextChecking):

Requests spellchecking for the element having current selection.

  • src/WebFrameImpl.h:
  • src/WebNode.cpp:

(WebKit::WebNode::rootEditableElement):

Takes a root editable element from Node.

12:26 AM Changeset in webkit [105488] by pfeldman@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: problem with Ctrl - <arrows> shortcuts in Scripts panel
https://bugs.webkit.org/show_bug.cgi?id=76622

Reviewed by Yury Semikhatsky.

  • inspector/front-end/InspectorView.js:

(WebInspector.InspectorView.prototype._keyDown):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextViewer.prototype.set readOnly):
(WebInspector.TextViewer.prototype._cancelEditing):
(WebInspector.TextViewer.prototype.wasShown):
(WebInspector.TextViewer.prototype.willHide):

  • inspector/front-end/UIUtils.js:

(WebInspector.isInEditMode):

  • inspector/front-end/inspector.js:

(WebInspector.documentKeyDown):

12:04 AM Changeset in webkit [105487] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, test results rebaseline after r105457.

  • fast/canvas/canvas-webkitLineDash-expected.txt:
12:00 AM Changeset in webkit [105486] by arv@chromium.org
  • 11 edits
    3 adds in trunk

Source/WebCore: Migrate createObjectURL & revokeObjectURL to static (Class) methods.
https://bugs.webkit.org/show_bug.cgi?id=74386

Reviewed by Adam Barth.

Test: fast/dom/DOMURL/check-instanceof-domurl-functions.html
Already Existing -

fast/files/revoke-blob-url.html
fast/dom/window-domurl-crash.html
fast/files/apply-blob-url-to-img.html
fast/files/create-blob-url-crash.html
fast/files/workers/inline-worker-via-blob-url.html

  • html/DOMURL.cpp: Added HashMap for local static objects.

(WebCore::PublicURLManager::PublicURLManager):
(WebCore::PublicURLManager::contextDestroyed):
(WebCore::PublicURLManager::blobURLs):
(WebCore::PublicURLManager::streamURLs):
(WebCore::publicURLManagerMap):
(WebCore::publicURLManager):
(WebCore::publicBlobURLs):
(WebCore::publicStreamURLs):
(WebCore::DOMURL::createObjectURL): Changed to static.
(WebCore::DOMURL::revokeObjectURL): ditto.

  • html/DOMURL.h:

(WebCore::DOMURL::create):
(WebCore::DOMURL::~DOMURL):
(WebCore::DOMURL::DOMURL):

  • html/DOMURL.idl:
  • page/DOMWindow.cpp: Removed object initialization for DOMURL.
  • page/DOMWindow.h: ditto.
  • page/DOMWindow.idl: ditto.
  • workers/WorkerContext.cpp: ditto.
  • workers/WorkerContext.h: ditto.
  • workers/WorkerContext.idl: ditto.

LayoutTests: Migrate createObjectURL & revokeObjectURL to static (Class) methods
https://bugs.webkit.org/show_bug.cgi?id=74386

Reviewed by Adam Barth.

Added test to check if createObjectURL & revokeObjectURL are static functions.

  • fast/dom/DOMURL: Added.
  • fast/dom/DOMURL/check-instanceof-domurl-functions-expected.txt: Added.
  • fast/dom/DOMURL/check-instanceof-domurl-functions.html: Added.

Jan 19, 2012:

11:45 PM Changeset in webkit [105485] by Alexandru Chiculita
  • 18 edits
    3 adds in trunk

Source/WebCore: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added setCSSCustomFilterEnabled/isCSSCustomFilterEnabled that is false by default.
I've enabled it by default on Apple Mac, to make sure there's no behavior change. Anyway, CSS shaders need
WebGL enabled, so it ends up being disabled by default.

Reviewed by Nikolas Zimmermann.

Test: css3/filters/effect-custom-disabled.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFilter):

Do not parse the custom() function when shaders are disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

Do not overwrite the old style->filter() if parsing fails.

(WebCore::CSSStyleSelector::createFilterOperations):

Do not continue if one custom() filter fails to parse.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setCSSCustomFilterEnabled):
(WebCore::Settings::isCSSCustomFilterEnabled):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::isCSSCustomFilterEnabled):
(WebCore::FilterEffectRenderer::build):

Avoid creating the filter when shaders are disabled. It may happen to get here if shaders were disabled between parsing and rendering.

Source/WebKit/mac: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added private WebPreference property called "WebKitCSSCustomFilterEnabled".

Reviewed by Nikolas Zimmermann.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences cssCustomFilterEnabled]):
(-[WebPreferences setCSSCustomFilterEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetCSSCustomFilterEnabled):
(WKPreferencesGetCSSCustomFilterEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

LayoutTests: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

  • css3/filters/effect-custom-disabled-expected.txt: Added.
  • css3/filters/effect-custom-disabled.html: Added.
  • css3/filters/script-tests/effect-custom-disabled.js: Added.

(testInvalidFilterRule):

  • platform/wk2/Skipped:

Skipped a couple of tests that call overridePreference.

11:18 PM Changeset in webkit [105484] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Node::canHaveLightChildRendererWithShadow is not used anywhere.
https://bugs.webkit.org/show_bug.cgi?id=76627

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-19
Reviewed by Darin Adler.

Since Node::canHaveLightChildRendererWithShadow is not overriden anywhere, and it returns always false.
We can remove it.

No new tests, because no change in behavior.

  • dom/Node.h:
  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::shouldCreateRenderer):

10:39 PM Changeset in webkit [105483] by kinuko@chromium.org
  • 8 edits in trunk/Source

Cleanup: make constant variable names in fileapi/ conform to WebKit's coding guideline
https://bugs.webkit.org/show_bug.cgi?id=76625

Reviewed by David Levin.

Source/WebCore:

No new tests as this patch has no functional changes.

  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::getIdentifier):
(WebCore::BlobURL::createBlobURL):

  • fileapi/BlobURL.h:
  • fileapi/FileWriter.cpp:

(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):

  • platform/AsyncFileSystem.cpp:

(WebCore::AsyncFileSystem::crackFileSystemURL):
(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::isAvailable):

  • platform/AsyncFileSystem.h:

Source/WebKit/chromium:

Also removing (almost) duplicated implementation of AsyncFileSystem::crackFileSystem.

  • src/AsyncFileSystemChromium.cpp:
9:25 PM Changeset in webkit [105482] by rolandsteiner@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed: add layout test to Chromium test_expectations.txt file after changes to Mac underline drawing.

  • platform/chromium/test_expectations.txt:
8:58 PM Changeset in webkit [105481] by Lucas Forschler
  • 5 edits in tags/Safari-535.18.1/Source

Versioning

8:54 PM Changeset in webkit [105480] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

8:33 PM Changeset in webkit [105479] by Lucas Forschler
  • 1 copy in tags/Safari-535.18.1

New Tag.

7:44 PM Changeset in webkit [105478] by Lucas Forschler
  • 1 copy in tags/Safari-535.18

New Tag.

7:36 PM Changeset in webkit [105477] by dbates@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Remove "Safari 5.1 shipped" text from debugging instructions; move misplaced </ol>

Rubber-stamped by Sam Weinig.

  • building/debug.html:
7:22 PM Changeset in webkit [105476] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace improper #import with an #include.

  • UIProcess/Plugins/PluginProcessProxy.cpp:

Fixes warnings.

7:04 PM Changeset in webkit [105475] by weinig@apple.com
  • 64 edits
    6 moves in trunk/Source

Move RunLoop to WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=76471

Reviewed by Anders Carlsson.

Source/WebCore:

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Add newly moved files.

  • platform/RunLoop.cpp: Moved from Source/WebKit2/Platform/RunLoop.cpp.
  • platform/RunLoop.h: Moved from Source/WebKit2/Platform/RunLoop.h.
  • platform/gtk/RunLoopGtk.cpp: Moved from Source/WebKit2/Platform/gtk/RunLoopGtk.cpp.
  • platform/mac/RunLoopMac.mm: Moved from Source/WebKit2/Platform/mac/RunLoopMac.mm.
  • platform/qt/RunLoopQt.cpp: Moved from Source/WebKit2/Platform/qt/RunLoopQt.cpp.
  • platform/win/RunLoopWin.cpp: Moved from Source/WebKit2/Platform/win/RunLoopWin.cpp.

Move the files.

Source/WebKit2:

  • GNUmakefile.am:
  • Platform/CoreIPC/Connection.cpp:
  • Platform/CoreIPC/Connection.h:
  • Platform/CoreIPC/mac/ConnectionMac.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/PluginProcess.cpp:
  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp:
  • PluginProcess/mac/PluginProcessMainMac.mm:
  • PluginProcess/qt/PluginProcessMainQt.cpp:
  • Shared/ChildProcess.cpp:
  • Shared/ChildProcess.h:
  • Target.pri:
  • UIProcess/API/mac/FindIndicatorWindow.h:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/Launcher/ThreadLauncher.cpp:
  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/Launcher/mac/ThreadLauncherMac.mm:
  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
  • UIProcess/Launcher/qt/ThreadLauncherQt.cpp:
  • UIProcess/Launcher/win/ProcessLauncherWin.cpp:
  • UIProcess/Launcher/win/ThreadLauncherWin.cpp:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.cpp:
  • UIProcess/ResponsivenessTimer.cpp:
  • UIProcess/ResponsivenessTimer.h:
  • UIProcess/TiledDrawingAreaProxy.h:
  • UIProcess/VisitedLinkProvider.h:
  • UIProcess/WebConnectionToWebProcess.cpp:
  • UIProcess/WebConnectionToWebProcess.h:
  • UIProcess/WebContext.cpp:
  • UIProcess/win/WebView.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/Plugins/Netscape/NetscapePluginStream.h:
  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebConnectionToUIProcess.cpp:
  • WebProcess/WebConnectionToUIProcess.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/EventDispatcher.cpp:
  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebKit::WebProcess::runLoop):

  • WebProcess/gtk/WebProcessMainGtk.cpp:
  • WebProcess/mac/WebProcessMainMac.mm:
  • WebProcess/qt/WebProcessMainQt.cpp:
  • WebProcess/win/WebProcessMainWin.cpp:
  • win/WebKit2.vcproj:

Remove RunLoop code and update #includes.

7:02 PM Changeset in webkit [105474] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed build fix. Wrong variable being used as the cwd for git
remote update command.

  • gtk/run-with-jhbuild:

(update_jhbuild):

6:51 PM Changeset in webkit [105473] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Fix inconsistent text selection behavior with option-shift-left/right/up/down.
https://bugs.webkit.org/show_bug.cgi?id=75652

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-19
Reviewed by Enrica Casucci.

On Mac, selecting backwards by word, line or paragraph from the middle
of some text, and then going forward leaves the caret back in the middle
with no selection, instead of directly selecting to the other end of the
word/line/paragraph (Unix/Windows behavior). Fix this by adding a new
editing behavior to control whether the selection should go across the
initial position of the caret directly or not in situations like the one
outlined above.

Source/WebCore:

Test: editing/selection/selection-extend-should-not-move-across-caret-on-mac.html

  • editing/EditingBehavior.h:

(WebCore::EditingBehavior::shouldExtendSelectionByWordOrLineAcrossCaret):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modify):

LayoutTests:

  • editing/selection/selection-extend-should-not-move-across-caret-on-mac-expected.txt: Added.
  • editing/selection/selection-extend-should-not-move-across-caret-on-mac.html: Added.
6:45 PM Changeset in webkit [105472] by kov@webkit.org
  • 2 edits in trunk/Tools

[GTK] ensure the jhbuild used by webkit is as up-to-date as needed
https://bugs.webkit.org/show_bug.cgi?id=76585

Reviewed by Martin Robinson.

This allows us to specify a minimum version of jhbuild required,
while also providing stability against changes done to the master
branch, by letting us choose what is the exact version that will
be used.

  • gtk/run-with-jhbuild: refactored for more hackability and easier

reading
(jhbuild_installed): checks whether jhbuild is installed
(jhbuild_cloned): checks whether jhbuild has been cloned
(jhbuild_at_expected_revision): checks whether jhbuild is at the
expected revision
(update_jhbuild): brings jhbuild to the expected revision
(clone_jhbuild): clones jhbuild
(install_jhbuild): build and installs jhbuild
(update_webkitgtk_libs): runs update-webkitgtk-libs
(ensure_jhbuild): high-level logic to decide whether and which of
the steps above are executed

6:41 PM Changeset in webkit [105471] by Simon Fraser
  • 4 edits
    3 adds in trunk

Regression (r98735): Video chat moles in Gmail render incorrectly on Mac OS
https://bugs.webkit.org/show_bug.cgi?id=75682

Source/WebCore:

Reviewed by James Robinson.

RenderLayerBacking::isSimpleContainerCompositingLayer() gave incorret
results in the case where the layer itself was visibility:hidden, but
where it had visible, non-composited descendant layers.

Fix by breaking RenderLayerBacking::hasVisibleNonCompositingDescendants()
into two methods, one that tests for renderers in this layer which
render stuff (and are thus affected by visibility on this layer), and
another which walks descendant, non-composited layers looking for those
which are visible.

Removed an early return in the "renderObject->node()->isDocumentNode()"
clause, because we want to run the same code that we run for non-document
nodes.

Test: compositing/visibility/layer-visible-content.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
(WebCore::RenderLayerBacking::containsNonEmptyRenderers):
(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers):

  • rendering/RenderLayerBacking.h:

LayoutTests:

Reviewed by James Robinson.

Testcase with a combination of visibility:hidden, overflow, positioning and
transforms.

  • compositing/visibility/layer-visible-content-expected.png: Added.
  • compositing/visibility/layer-visible-content-expected.txt: Added.
  • compositing/visibility/layer-visible-content.html: Added.
6:21 PM Changeset in webkit [105470] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[chromium] Draw gutter quads outside root content layer
https://bugs.webkit.org/show_bug.cgi?id=76328

Patch by Alexandre Elias <aelias@google.com> on 2012-01-19
Reviewed by James Robinson.

Add new layer property "backgroundCoversViewport". If the content
layers don't fully cover the render surface, this code calculates the
difference between the root clip rect and the root content layer and
draws up to four background-color quads in exactly the area that would
be undrawn.

Test: CCTiledLayerImplTest::backgroundCoversViewport

Source/WebCore:

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setBackgroundCoversViewport):
(WebCore::LayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::backgroundCoversViewport):

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

(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::setBackgroundCoversViewport):

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

(WebCore::CCLayerImpl::backgroundCoversViewport):

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

(WebCore::CCTiledLayerImpl::appendQuads):

Source/WebKit/chromium:

  • src/NonCompositedContentHost.cpp:

(WebKit::NonCompositedContentHost::NonCompositedContentHost):

  • tests/CCLayerImplTest.cpp:

(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::TEST):

  • tests/LayerChromiumTest.cpp:
6:03 PM Changeset in webkit [105469] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Source/WebKit/chromium

Web Intents chromium API modifications to track IntentRequest invocation method
https://bugs.webkit.org/show_bug.cgi?id=76014

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Darin Fisher.

  • public/WebFrameClient.h:

(WebKit::WebFrameClient::dispatchIntent):

  • public/WebIntent.h:
  • public/WebIntentRequest.h: Added.
  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchIntent):

  • src/FrameLoaderClientImpl.h:
  • src/WebIntent.cpp:
  • src/WebIntentRequest.cpp: Added.
5:47 PM Changeset in webkit [105468] by caryclark@google.com
  • 4 edits in trunk

[Skia Mac] Match style of platform error underline for misspellings
https://bugs.webkit.org/show_bug.cgi?id=76556

Reviewed by Stephen White.

Source/WebCore:

Add Darwin-specific code in Skia to draw the error underline so that
it matches the CoreGraphics style.

Many existing layout tests inadvertantly trigger the misspelling
underline by including the word 'foo' in an editable field. Those
tests are temporarily suppressed separately in an edit to
test_expectations.txt.

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForTextChecking):

LayoutTests:

Suppress editing tests with misspellings, since the error underline
is drawn differently.

  • platform/chromium/test_expectations.txt:
5:34 PM Changeset in webkit [105467] by noam.rosenthal@nokia.com
  • 5 edits in trunk/Source/WebCore

[Texmap] TextureMapper creates two many big intermediate surfaces
https://bugs.webkit.org/show_bug.cgi?id=76336

Reviewed by Simon Hausmann.

The following has been done to optimize surface allocation:

  1. Instead of using a viewport-size surface, use a surface in the size of the layer's bounding rect and apply the transform after the content has been rendered into it.
  2. Avoid generating intermediate surface for occasions where they're not necessary, such as nested reflections without opacity.
  3. Releasing of textures from the pool is now implicit, based on refCount.
  4. Do not use intermediate surfaces for preserve-3d layers. This is in alignment with other ports.

Tests in LayoutTests/compositing/masks and LayoutTests/compositing/reflection cover this.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool):

  • platform/graphics/texmap/TextureMapper.h:
  • platform/graphics/texmap/TextureMapperNode.cpp:

(WebCore::TextureMapperNode::paintSelf):
(WebCore::TextureMapperNode::paintSelfAndChildren):
(WebCore::TextureMapperNode::intermediateSurfaceRect):
(WebCore::TextureMapperNode::shouldPaintToIntermediateSurface):
(WebCore::TextureMapperNode::isVisible):
(WebCore::TextureMapperNode::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperNode::paintRecursive):
(WebCore::TextureMapperNode::syncCompositingStateSelf):
(WebCore::TextureMapperNode::syncCompositingState):

  • platform/graphics/texmap/TextureMapperNode.h:

(WebCore::TextureMapperPaintOptions::TextureMapperPaintOptions):

5:22 PM Changeset in webkit [105466] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt: Adding MAC to svg/custom/zero-path-square-cap-rendering.svg
5:10 PM Changeset in webkit [105465] by ap@apple.com
  • 2 edits in trunk/Tools

[WK2] DumpRenderTree converts "file:///" to a path differently
https://bugs.webkit.org/show_bug.cgi?id=76653

Reviewed by John Sullivan.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::lastFileURLPathComponent):

Do print a slash if there are no path components.

4:57 PM Changeset in webkit [105464] by eric@webkit.org
  • 3 edits in trunk/Tools

webkit-patch cannot rollout patches without changelog/bug number
https://bugs.webkit.org/show_bug.cgi?id=75962

Reviewed by Adam Barth.

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

(AbstractRolloutPrepCommand._prepare_state):

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

(AbstractRolloutPrepCommandTest.test_prepare_state):

4:44 PM Changeset in webkit [105463] by eric@webkit.org
  • 3 edits
    2 adds in trunk

Assertion failure in WebCore::HTMLFrameElementBase::insertedIntoDocument()
https://bugs.webkit.org/show_bug.cgi?id=50312

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Removed the ASSERT and updated the comment.

Test: fast/frames/assert-on-insertedIntoDocument.html

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::insertedIntoDocument):

LayoutTests:

  • fast/frames/assert-on-insertedIntoDocument-expected.txt: Added.
  • fast/frames/assert-on-insertedIntoDocument.html: Added.
4:29 PM Changeset in webkit [105462] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Replace WGC3D visibility extension with resource_usage extension. [Part 1 of 3]
https://bugs.webkit.org/show_bug.cgi?id=76634

Patch by Michal Mocny <mmocny@google.com> on 2012-01-19
Reviewed by Kenneth Russell.

  • public/platform/WebGraphicsContext3D.h:

(WebKit::WebGraphicsContext3D::setVisibilityCHROMIUM):
(WebKit::WebGraphicsContext3D::setResourceUsageCHROMIUM):

  • src/GraphicsContext3DChromium.cpp:

(WebCore::GraphicsContext3DPrivate::setVisibilityCHROMIUM):

  • tests/FakeWebGraphicsContext3D.h:

(WebKit::FakeWebGraphicsContext3D::setResourceUsageCHROMIUM):

4:13 PM Changeset in webkit [105461] by ap@apple.com
  • 4 edits in trunk

[WK2] fast/url/degenerate-file-base.html fails
https://bugs.webkit.org/show_bug.cgi?id=76619

Reviewed by Adam Roben.

Tools:

A URL generated form local path for loading had an extra slash, making document.URL
incorrect in all WebKit2 tests (file://localhost//path/to/test.html).

  • WebKitTestRunner/TestInvocation.cpp: (WTR::createWKURL):

LayoutTests:

  • platform/qt-wk2/Skipped: Unskipped the test.
4:07 PM Changeset in webkit [105460] by jamesr@google.com
  • 36 edits in trunk/Source

[chromium] Remove CCLayerDelegate, add ContentLayerDelegate for painting
https://bugs.webkit.org/show_bug.cgi?id=76663

Reviewed by Kenneth Russell.

Source/WebCore:

CCLayerDelegate used to be an interface with a half-dozen callbacks on it, but now it has only one call -
paintContents() - and that one call is only valid for one subclass of LayerChromium, ContentLayerChromium. This
removes the CCLayerDelegate pointer from LayerChromium and adds a ContentLayerDelegate for the paint call.

The majority of the code changes in this patch are removing the nil parameter from various places that construct
LayerChromium instances. Also tightens the type of GraphicsLayerChromium::m_layer to ContentLayerChromium.

Refactoring/removing dead code, so no new tests.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):

  • platform/graphics/chromium/CanvasLayerChromium.cpp:

(WebCore::CanvasLayerChromium::CanvasLayerChromium):

  • platform/graphics/chromium/CanvasLayerChromium.h:
  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::ContentLayerPainter):
(WebCore::ContentLayerChromium::create):
(WebCore::ContentLayerChromium::ContentLayerChromium):

  • platform/graphics/chromium/ContentLayerChromium.h:

(WebCore::ContentLayerDelegate::~ContentLayerDelegate):
(WebCore::ContentLayerChromium::clearDelegate):

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::DrawingBuffer::platformLayer):

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::setContentsToImage):
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

  • platform/graphics/chromium/GraphicsLayerChromium.h:
  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerChromium::create):
(WebCore::ImageLayerChromium::ImageLayerChromium):

  • platform/graphics/chromium/ImageLayerChromium.h:
  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::create):
(WebCore::LayerChromium::LayerChromium):

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/PluginLayerChromium.cpp:

(WebCore::PluginLayerChromium::create):
(WebCore::PluginLayerChromium::PluginLayerChromium):

  • platform/graphics/chromium/PluginLayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::drawsContent):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/VideoLayerChromium.cpp:

(WebCore::VideoLayerChromium::create):
(WebCore::VideoLayerChromium::VideoLayerChromium):

  • platform/graphics/chromium/VideoLayerChromium.h:
  • platform/graphics/chromium/WebGLLayerChromium.cpp:

(WebCore::WebGLLayerChromium::create):
(WebCore::WebGLLayerChromium::WebGLLayerChromium):

  • platform/graphics/chromium/WebGLLayerChromium.h:

Source/WebKit/chromium:

  • src/WebContentLayerImpl.cpp:

(WebKit::WebContentLayerImpl::~WebContentLayerImpl):

  • src/WebContentLayerImpl.h:
  • src/WebExternalTextureLayerImpl.cpp:

(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):

  • src/WebExternalTextureLayerImpl.h:
  • src/WebLayerImpl.cpp:

(WebKit::WebLayerImpl::WebLayerImpl):
(WebKit::WebLayerImpl::~WebLayerImpl):

  • src/WebLayerImpl.h:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::readyStateChanged):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):

  • tests/CCLayerIteratorTest.cpp:
  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
(WebCore::TEST):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTest::doBeginTest):
(WTF::ContentLayerChromiumWithUpdateTracking::create):
(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):

  • tests/LayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeTiledLayerChromium::FakeTiledLayerChromium):

  • tests/TreeSynchronizerTest.cpp:

(WebCore::MockLayerChromium::MockLayerChromium):
(WebCore::TEST):

4:00 PM Changeset in webkit [105459] by tony@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

[chromium] Remove an obsolete comment about features.gypi
https://bugs.webkit.org/show_bug.cgi?id=76643

There can be only one features.gypi.

Reviewed by James Robinson.

3:48 PM Changeset in webkit [105458] by abarth@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

Add Chromium-specific image baselines for
fast/css/text-overflow-input.html. These results all appear to be
correct.

  • platform/chromium-linux/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-leopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.txt: Added.
3:47 PM Changeset in webkit [105457] by commit-queue@webkit.org
  • 9 edits in trunk

[Coverity] Fix uninitialized constructor defects in .../html
https://bugs.webkit.org/show_bug.cgi?id=74965

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Simon Fraser.

Test: fast/canvas/script-tests/canvas-webkitLineDash.js

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):

  • html/StepRange.cpp:

(WebCore::StepRange::StepRange):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::State::State):

  • html/canvas/CanvasStyle.h:

(WebCore::CanvasStyle::CMYKAValues::CMYKAValues):

  • html/canvas/WebGLGetInfo.cpp:

(WebCore::WebGLGetInfo::WebGLGetInfo):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::CSSPreloadScanner):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::WebVTTParser):

3:38 PM Changeset in webkit [105456] by abarth@webkit.org
  • 13 edits
    1 move
    1 add in trunk/PerformanceTests

PerformanceTests's runner.js shouldn't be Parser-specific
https://bugs.webkit.org/show_bug.cgi?id=76670

Reviewed by Ryosuke Niwa.

This runner script is used by a bunch of difference performance tests.
It shouldn't be in the Parser directory anymore.

  • Bindings/event-target-wrapper.html:
  • Mutation/append-child-deep.html:
  • Mutation/append-child.html:
  • Mutation/inner-html.html:
  • Mutation/remove-child-deep.html:
  • Mutation/remove-child.html:
  • Parser/html-parser.html:
  • Parser/html5-full-render.html:
  • Parser/resources/runner.js: Removed.
  • Parser/simple-url.html:
  • Parser/tiny-innerHTML.html:
  • Parser/url-parser.html:
  • Parser/xml-parser.html:
  • resources: Added.
  • resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js.
3:34 PM Changeset in webkit [105455] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[SKIA / CHROMIUM] Add another test to test_expectations to prepare for change to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-19
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
3:20 PM Changeset in webkit [105454] by Alexandru Chiculita
  • 8 edits in trunk

CSS Shaders: Remove the setTimeout from the layout tests
https://bugs.webkit.org/show_bug.cgi?id=76535

Reviewed by Tony Chang.

Source/WebCore:

We had setTimeout on old tests because the snapshot picture was taken too early, before the shaders were loaded.
The problem was that the RenderLayer was notified that the shader was loaded only after the onload event was triggered,
so a simple setTimeout(0) would have fixed the issue, but better than that would be to to always call CachedResource::data
in CachedShader::data, which notifies the load earlier (before onload).

No new tests, just removed the setTimeout from old ones.

  • loader/cache/CachedShader.cpp:

(WebCore::CachedShader::data):

LayoutTests:

No need for setTimeout anymore, so I've removed them from the custom filter tests.

  • css3/filters/custom-filter-shader-cache.html:
  • css3/filters/effect-custom-combined-missing.html:
  • css3/filters/effect-custom-parameters.html:
  • css3/filters/effect-custom.html:
  • css3/filters/missing-custom-filter-shader.html:
3:07 PM Changeset in webkit [105453] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Improve touch handling performance by reusing the hitTest result
https://bugs.webkit.org/show_bug.cgi?id=75506

Patch by Min Qin <qinmin@google.com> on 2012-01-19
Reviewed by Adam Barth.

This is a performance optimization and should not cause behavior changes. Existing tests should cover it.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

3:01 PM Changeset in webkit [105452] by ojan@chromium.org
  • 3 edits in trunk/Tools

check-webkit-style of the chromium test_expectations.txt file doesn't test all chromium ports
https://bugs.webkit.org/show_bug.cgi?id=76510

Reviewed by Adam Barth.

Unlike other style rules, if you get the syntax of the test_expectations.txt
file wrong, the layout tests won't run. Also, this check is simple and only
slows down committing if you actually modify one of the test_expectations.txt files.

  • Scripts/webkitpy/style/checkers/test_expectations.py:

(TestExpectationsChecker.check_test_expectations):
(TestExpectationsChecker.check):

  • Scripts/webkitpy/style/checkers/test_expectations_unittest.py:

(TestExpectationsTestCase.test_check_covers_all_configurations):
(TestExpectationsTestCase.test_check_covers_all_configurations.mock_check_test_expectations):
(TestExpectationsTestCase):
(assert_lines_lint):

2:56 PM Changeset in webkit [105451] by jonlee@apple.com
  • 8 edits
    7 adds in trunk

Add text-overflow support that allows placeholder and value text to show an ellipsis when not focused
https://bugs.webkit.org/show_bug.cgi?id=76118
<rdar://problem/9271742>

Reviewed by Dan Bernstein.

Source/WebCore:

Tests: fast/css/text-overflow-input-focus-placeholder-expected.html

fast/css/text-overflow-input-focus-placeholder.html
fast/css/text-overflow-input-focus-value-expected.html
fast/css/text-overflow-input-focus-value.html
fast/css/text-overflow-input.html

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::styleDidChange): When the style of the text control
changes, we update the text overflow property of the placeholder.
(WebCore::RenderTextControlSingleLine::createInnerTextStyle): When the style of the text control
changes, we update the text overflow property of the inner text block.
(WebCore::RenderTextControlSingleLine::textShouldBeTruncated): The text of the value and placeholder should
only contain the ellipsis if the input's text-overflow property is set to ellipsis, and the input is not focused.

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

  • fast/css/text-overflow-input-focus-placeholder-expected.html: Added.
  • fast/css/text-overflow-input-focus-placeholder.html: Added.
  • fast/css/text-overflow-input-focus-value-expected.html: Added.
  • fast/css/text-overflow-input-focus-value.html: Added.
  • fast/css/text-overflow-input.html: Added.

New baselines:

  • platform/mac/fast/css/text-overflow-input-expected.png: Added.
  • platform/mac/fast/css/text-overflow-input-expected.txt: Added.

Needs baselines:

  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:
2:50 PM Changeset in webkit [105450] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. Revert an unintentional change to WebKitDriver in r105443.

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

(DriverProxy.init):

2:46 PM Changeset in webkit [105449] by dpranke@chromium.org
  • 6 edits in trunk

remove the duplicated build rules from WebKit.gyp, Tools.gyp
https://bugs.webkit.org/show_bug.cgi?id=73384

Reviewed by Tony Chang.

Source/WebKit/chromium:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • WebKit.gyp:
  • WebKitUnitTests.gyp:
  • gyp_webkit:

Tools:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2:36 PM Changeset in webkit [105448] by abarth@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a V8-specific baseline for fast/regex/syntax-errors.html.

  • platform/chromium/fast/regex/syntax-errors-expected.txt: Added.
2:07 PM Changeset in webkit [105447] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/win

Merged r92291.

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

This test can also timeout.

  • platform/chromium/test_expectations.txt:
2:04 PM Changeset in webkit [105445] by ap@apple.com
  • 2 edits in trunk/Tools

make-new-script-test should work with HTTP tests
https://bugs.webkit.org/show_bug.cgi?id=76603

Reviewed by Adam Roben.

  • Scripts/make-new-script-test:

(makePathToSharedSources): Renamed from makeTestRelativePathToSharedSources(), since it
now also creates absolute paths for HTTP.

1:57 PM Changeset in webkit [105444] by ggaren@apple.com
  • 6 edits
    2 adds in trunk

Implicit creation of a regular expression should eagerly check for syntax errors
https://bugs.webkit.org/show_bug.cgi?id=76642

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This is a correctness fix and a slight optimization.

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch): Check for syntax errors because that's the
correct behavior.

  • runtime/RegExp.cpp:

(JSC::RegExp::match): ASSERT that we aren't a syntax error. (One line
of code change, many lines of indentation change.)

Since we have no clients that try to match a RegExp that is a syntax error,
let's optimize out the check.

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/js/code-serialize-paren-expected.txt:
  • fast/js/script-tests/code-serialize-paren.js: This test was secretly

broken due to a regexp syntax error. Now fixed.

  • fast/regex/syntax-errors-expected.txt: Added.
  • fast/regex/syntax-errors.html: Added.
1:50 PM Changeset in webkit [105443] by rniwa@webkit.org
  • 13 edits
    1 copy in trunk

Some perf tests time out when ran by run-perf-tests
https://bugs.webkit.org/show_bug.cgi?id=76612

Reviewed by Dirk Pranke and Eric Seidel.

PerformanceTests:

Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when
running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically
inside runner.js to avoid having to call them in individual tests.

  • Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since

they are now called by runner.js automatically.

  • Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png.
  • Parser/resources/html5.html:
  • Parser/resources/runner.js:

(runLoop):

Tools:

Always pass --no-timeout to DumpRenderTree from run-perf-tests.
Otherwise some tests such as Parser/xml-parser.html will timeout.

--no-timeout option is currently supported by Chromium and Mac ports.

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

(Port.to.create_driver):

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

(ChromiumDriver.init):
(ChromiumDriver._wrapper_options):

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

(Driver.init):
(DriverProxy.init):

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

(WebKitDriver.init):
(WebKitDriver.cmd_line):

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

(WebKitDriverTest.test_read_binary_block):
(WebKitDriverTest):
(WebKitDriverTest.test_no_timeout):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(get_tests_run.RecordingTestDriver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner):

1:49 PM Changeset in webkit [105442] by mhahnenberg@apple.com
  • 28 edits
    8 adds in trunk/Source

Implement a new allocator for backing stores
https://bugs.webkit.org/show_bug.cgi?id=75181

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

We want to move away from using fastMalloc for the backing stores for
some of our objects (e.g. JSArray, JSObject, JSString, etc). These backing
stores have a nice property in that they only have a single owner (i.e. a
single pointer to them at any one time). One way that we can take advantage
of this property is to implement a simple bump allocator/copying collector,
which will run alongside our normal mark/sweep collector, that only needs to
update the single owner pointer rather than having to redirect an arbitrary
number of pointers in from-space to to-space.

This plan can give us a number of benefits. We can beat fastMalloc in terms
of both performance and memory usage, we can track how much memory we're using
far more accurately than our rough estimation now through the use of
reportExtraMemoryCost, and we can allocate arbitrary size objects (as opposed
to being limited to size classes like we have been historically). This is also
another step toward moving away from lazy destruction, which will improve our memory footprint.

We start by creating said allocator and moving the ArrayStorage for JSArray
to use it rather than fastMalloc.

The design of the collector is as follows:
Allocation:
-The collector allocates 64KB chunks from the OS to use for object allocation.
-Each chunk contains an offset, a flag indicating if the block has been pinned,

and a payload, along with next and prev pointers so that they can be put in DoublyLinkedLists.

-Any allocation greater than 64KB gets its own separate oversize block, which

is managed separately from the rest.

-If the allocator receives a request for more than the remaining amount in the

current block, it grabs a fresh block.

-Grabbing a fresh block means grabbing one off of the global free list (which is now

shared between the mark/sweep allocator and the bump allocator) if there is one.
If there isn't a new one we do one of two things: allocate a new block from the OS
if we're not ready for a GC yet, or run a GC and then try again. If we still don't
have enough space after the GC, we allocate a new block from the OS.

Garbage collection:
-At the start of garbage collection during conservative stack scanning, if we encounter

what appears to be a pointer to a bump-allocated block of memory, we pin that block so
that it will not be copied for this round of collection.

-We also pin any oversize blocks that we encounter, which effectively doubles as a

"mark bit" for that block. Any oversize blocks that aren't pinned at the end of copying
are given back to the OS.

-Marking threads are now also responsible for copying bump-allocated objects to newSpace
-Each marking thread has a private 64KB block into which it copies bump-allocated objects that it encounters.
-When that block fills up, the marking thread gives it back to the allocator and requests a new one.
-When all marking has concluded, each thread gives back its copy block, even if it isn't full.
-At the conclusion of copying (which is done by the end of the marking phase), we un-pin

any pinned blocks and give any blocks left in from-space to the global free list.

(JSC::AllocationSpace::allocateSlowCase):
(JSC::AllocationSpace::allocateBlock):
(JSC::AllocationSpace::freeBlocks):

  • heap/AllocationSpace.h:

(JSC::AllocationSpace::waterMark):

  • heap/BumpBlock.h: Added.

(JSC::BumpBlock::BumpBlock):

  • heap/BumpSpace.cpp: Added.

(JSC::BumpSpace::tryAllocateSlowCase):

  • heap/BumpSpace.h: Added.

(JSC::BumpSpace::isInCopyPhase):
(JSC::BumpSpace::totalMemoryAllocated):
(JSC::BumpSpace::totalMemoryUtilized):

  • heap/BumpSpaceInlineMethods.h: Added.

(JSC::BumpSpace::BumpSpace):
(JSC::BumpSpace::init):
(JSC::BumpSpace::contains):
(JSC::BumpSpace::pin):
(JSC::BumpSpace::startedCopying):
(JSC::BumpSpace::doneCopying):
(JSC::BumpSpace::doneFillingBlock):
(JSC::BumpSpace::recycleBlock):
(JSC::BumpSpace::getFreshBlock):
(JSC::BumpSpace::borrowBlock):
(JSC::BumpSpace::addNewBlock):
(JSC::BumpSpace::allocateNewBlock):
(JSC::BumpSpace::fitsInBlock):
(JSC::BumpSpace::fitsInCurrentBlock):
(JSC::BumpSpace::tryAllocate):
(JSC::BumpSpace::tryAllocateOversize):
(JSC::BumpSpace::allocateFromBlock):
(JSC::BumpSpace::tryReallocate):
(JSC::BumpSpace::tryReallocateOversize):
(JSC::BumpSpace::isOversize):
(JSC::BumpSpace::isPinned):
(JSC::BumpSpace::oversizeBlockFor):
(JSC::BumpSpace::blockFor):

  • heap/ConservativeRoots.cpp:

(JSC::ConservativeRoots::ConservativeRoots):
(JSC::ConservativeRoots::genericAddPointer):
(JSC::ConservativeRoots::add):

  • heap/ConservativeRoots.h:
  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::blockFreeingThreadMain):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::collect):
(JSC::Heap::releaseFreeBlocks):

  • heap/Heap.h:

(JSC::Heap::waterMark):
(JSC::Heap::highWaterMark):
(JSC::Heap::setHighWaterMark):
(JSC::Heap::tryAllocateStorage):
(JSC::Heap::tryReallocateStorage):

  • heap/HeapBlock.h: Added.

(JSC::HeapBlock::HeapBlock):

  • heap/MarkStack.cpp:

(JSC::MarkStackThreadSharedData::MarkStackThreadSharedData):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):
(JSC::SlotVisitor::startCopying):
(JSC::SlotVisitor::allocateNewSpace):
(JSC::SlotVisitor::copy):
(JSC::SlotVisitor::copyAndAppend):
(JSC::SlotVisitor::doneCopying):

  • heap/MarkStack.h:
  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::recycle):
(JSC::MarkedBlock::MarkedBlock):

  • heap/MarkedBlock.h:
  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::allocate):
(JSC::MarkedSpace::forEachBlock):
(JSC::MarkedSpace::SizeClass::resetAllocator):

  • heap/SlotVisitor.h:

(JSC::SlotVisitor::SlotVisitor):

  • heap/TinyBloomFilter.h:

(JSC::TinyBloomFilter::reset):

  • runtime/JSArray.cpp:

(JSC::JSArray::JSArray):
(JSC::JSArray::finishCreation):
(JSC::JSArray::tryFinishCreationUninitialized):
(JSC::JSArray::~JSArray):
(JSC::JSArray::enterSparseMode):
(JSC::JSArray::defineOwnNumericProperty):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::getOwnPropertySlotByIndex):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::putByIndexBeyondVectorLength):
(JSC::JSArray::deletePropertyByIndex):
(JSC::JSArray::getOwnPropertyNames):
(JSC::JSArray::increaseVectorLength):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::visitChildren):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::compactForSorting):
(JSC::JSArray::subclassData):
(JSC::JSArray::setSubclassData):
(JSC::JSArray::checkConsistency):

  • runtime/JSArray.h:

(JSC::JSArray::inSparseMode):
(JSC::JSArray::isLengthWritable):

  • wtf/CheckedBoolean.h: Added.

(CheckedBoolean::CheckedBoolean):
(CheckedBoolean::~CheckedBoolean):
(CheckedBoolean::operator bool):

  • wtf/DoublyLinkedList.h:

(WTF::::push):

  • wtf/StdLibExtras.h:

(WTF::isPointerAligned):

Source/JavaScriptGlue:

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.

Source/WebCore:

No new tests.

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.
1:41 PM Changeset in webkit [105441] by rniwa@webkit.org
  • 5 edits
    2 adds in trunk

Crash in CompositeEditCommand::ensureComposition
https://bugs.webkit.org/show_bug.cgi?id=76207

Reviewed by Chang Shu.

Source/WebCore:

The crash was caused by TypingCommand not kept alive when new editing commands are executed
during adding more typings to the open last typing command since m_lastEditCommand is replaced
by the new command. Fixed the bug by keeping them alive a little longer with RefPtr.

Test: editing/execCommand/editing-command-while-executing-typing-command-crash.html

  • editing/FrameSelection.cpp:

(WebCore::shouldStopBlinkingDueToTypingCommand):
(WebCore::FrameSelection::updateAppearance):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::deleteSelection):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):
(WebCore::TypingCommand::insertText):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
(WebCore::TypingCommand::closeTyping):

  • editing/TypingCommand.h:

LayoutTests:

Add a regression test.

  • editing/execCommand/editing-command-while-executing-typing-command-crash-expected.txt: Added.
  • editing/execCommand/editing-command-while-executing-typing-command-crash.html: Added.
1:16 PM Changeset in webkit [105440] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed debug build fix.

Remove ASSERT that the cached match is cacheable (we don't store that flag anymore.)

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):

12:55 PM Changeset in webkit [105439] by adachan@apple.com
  • 10 edits in trunk/Source/WebKit2

Need a WebKit2 API for setting media volume https://bugs.webkit.org/show_bug.cgi?id=76560

Reviewed by Dan Bernstein.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Encode the mediaVolume parameter.
(WebKit::WebPageCreationParameters::decode): Decode the mediaVolume parameter.

  • Shared/WebPageCreationParameters.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageSetMediaVolume): Call WebPageProxy::setMediaVolume().

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy): Initialize new data member m_mediaVolume.
(WebKit::WebPageProxy::setMediaVolume): Bail if the volume hasn't changed. Update m_mediaVolume
and bail if the page is no longer valid. Otherwise, send a WebPage::SetMediaVolume message to
the web process.
(WebKit::WebPageProxy::creationParameters): Add media volume to the creation parameters.

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialize media volume from the WebPageCreationParameters.
(WebKit::WebPage::setMediaVolume): Call Page::setMediaVolume().

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in: Add the SetMediaVolume message.
12:52 PM Changeset in webkit [105438] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix Debug build after r105433

Unreviewed, build fix.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

12:47 PM Changeset in webkit [105437] by benwells@chromium.org
  • 3 edits in trunk/Tools

Add support for window.print to chromium DRT
https://bugs.webkit.org/show_bug.cgi?id=76479

When used in a test window.print goes into print mode and then
straight out again. This will allow the afterprint event to be
tested by having the afterprint event happen before the dump
happens.

Reviewed by Mihai Parparita.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::printPage):

  • DumpRenderTree/chromium/WebViewHost.h:
12:35 PM Changeset in webkit [105436] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, Roll DEPS to most recent LKGR (118291).

  • DEPS:
12:32 PM Changeset in webkit [105435] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

CSSStyleSelector: Factor 'isCacheable' flag out of MatchedResult.
<http://webkit.org/b/76376>

Reviewed by Antti Koivisto.

Break up the MatchResult struct into MatchResult and MatchRanges. The matched
declaration cache only needs the ranges, so we save 4 bytes per entry.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::matchUARules):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
(WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
(WebCore::CSSStyleSelector::applyMatchedDeclarations):

  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::MatchRanges::MatchRanges):
(WebCore::CSSStyleSelector::MatchResult::MatchResult):

12:28 PM Changeset in webkit [105434] by eric.carlson@apple.com
  • 6 edits
    2 adds in trunk

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

Reviewed by Darin Adler.

Notify the media element when tracks are added to and removed from a document instead of
a tree because we don't want to trigger loading unless a track element is in the document.

Test: media/track/track-delete-during-setup.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::trackWasRemoved): Renamed from trackWillBeRemoved because it is

now called after removal.

  • html/HTMLMediaElement.h:
  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::insertedIntoDocument): Was insertedIntoTree. Use this instead

because we care about when a track is inserted and removed from a document, not a tree.

(WebCore::HTMLTrackElement::removedFromDocument): Ditto.

  • html/HTMLTrackElement.h:
12:27 PM Changeset in webkit [105433] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Hit ASSERTION FAILED: table()->collapseBorders() on techcrunch.com
https://bugs.webkit.org/show_bug.cgi?id=76405

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/css/nested-table-with-collapsed-borders.html

Change recalcCollapsedBorders() so that it only collects border values for the current
table. Calculating the borders for nested tables was wrong as well as wasting cycles, though it would never
have impacted rendering since a cell only paints the borders that match its own.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

LayoutTests:

  • fast/css/nested-table-with-collapsed-borders-expected.html: Added.
  • fast/css/nested-table-with-collapsed-borders.html: Added.
12:03 PM Changeset in webkit [105432] by dbates@webkit.org
  • 2 edits
    5 adds
    4 deletes in trunk/Websites/webkit.org

Update Debugging on Mac OS X instructions for Safari 5.1/WebKit 2
https://bugs.webkit.org/show_bug.cgi?id=67102

Reviewed by Eric Seidel.

Add instructions for debugging UIProcess and WebProcess using Xcode 4.

  • building/active-scheme-xcode4.png: Added.
  • building/build-settings-tab-xcode4.png: Added.
  • building/build-window.png: Removed.
  • building/custom-executable-xcode4.png: Added.
  • building/custom-executable.png: Removed.
  • building/debug-mac-uiprocess.html: Added.
  • building/debug.html:
  • building/debug.png: Removed.
  • building/info-tab.png: Removed.
  • building/run-xcode4.png: Added.
12:01 PM Changeset in webkit [105431] by jer.noble@apple.com
  • 54 edits in trunk/Source

Make WebAudio API const-correct.
https://bugs.webkit.org/show_bug.cgi?id=76573

Reviewed by Daniel Bates.

Source/WebCore:

No new tests; no net change in functionality, so covered by existing tests.

The non-const data() accessor was renamed mutableData() to expose const-correctness
bugs during compile time:

  • platform/audio/AudioChannel.h:

(WebCore::AudioChannel::mutableData):

The following functions were made const correct:

  • platform/audio/AudioArray.h:

(WebCore::AudioArray::copyToRange):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::createBufferFromRange):
(WebCore::AudioBus::createBySampleRateConverting):
(WebCore::AudioBus::createByMixingToMono):

  • platform/audio/FFTConvolver.cpp:

(WebCore::FFTConvolver::process):

  • platform/audio/FFTConvolver.h:
  • platform/audio/FFTFrame.cpp:

(WebCore::FFTFrame::doPaddedFFT):
(WebCore::FFTFrame::doFFT):

  • platform/audio/FFTFrame.h:
  • platform/audio/ReverbConvolverStage.cpp:

(WebCore::ReverbConvolverStage::ReverbConvolverStage):
(WebCore::ReverbConvolverStage::process):

  • platform/audio/ReverbConvolverStage.h:
  • platform/audio/ReverbInputBuffer.cpp:

(WebCore::ReverbInputBuffer::write):

  • platform/audio/ReverbInputBuffer.h:
  • platform/audio/SincResampler.cpp:

(WebCore::SincResampler::process):

  • platform/audio/SincResampler.h:
  • platform/audio/ZeroPole.cpp:

(WebCore::ZeroPole::process):

  • platform/audio/ZeroPole.h:
  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::channelByType):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::gain):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioDSPKernelProcessor.h:
  • platform/audio/AudioProcessor.h:
  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/DynamicsCompressor.h:
  • platform/audio/DynamicsCompressorKernel.cpp:

(WebCore::DynamicsCompressorKernel::process):

  • platform/audio/DynamicsCompressorKernel.h:
  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/EqualPowerPanner.h:
  • platform/audio/HRTFElevation.h:

(WebCore::HRTFElevation::numberOfAzimuths):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/HRTFPanner.h:
  • platform/audio/Panner.h:
  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/Reverb.h:
  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::process):

  • platform/audio/ReverbConvolver.h:
  • platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:

(WebCore::FFTFrame::doFFT):

  • platform/audio/mkl/FFTFrameMKL.cpp:

(WebCore::FFTFrame::doFFT):

The following functions were modified to use the renamed mutableData() accessor:

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::processWithGainFromMonoStereo):
(WebCore::AudioBus::copyWithSampleAccurateGainValuesFrom):

  • platform/audio/AudioChannel.cpp:

(WebCore::AudioChannel::scale):
(WebCore::AudioChannel::copyFrom):
(WebCore::AudioChannel::copyFromRange):
(WebCore::AudioChannel::sumFrom):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioResampler.cpp:

(WebCore::AudioResampler::process):

  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/HRTFKernel.cpp:

(WebCore::extractAverageGroupDelay):
(WebCore::HRTFKernel::HRTFKernel):
(WebCore::HRTFKernel::createImpulseResponse):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/MultiChannelResampler.cpp:

(WebCore::MultiChannelResampler::process):

  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::ReverbConvolver):
(WebCore::ReverbConvolver::process):

  • platform/audio/mac/AudioFileReaderMac.cpp:

(WebCore::AudioFileReader::createBus):

  • platform/audio/mac/FFTFrameMac.cpp:

(WebCore::FFTFrame::doFFT):

  • webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::process):
(WebCore::AudioBufferSourceNode::renderFromBuffer):

  • webaudio/BiquadProcessor.cpp:

(WebCore::BiquadProcessor::process):

  • webaudio/JavaScriptAudioNode.cpp:

(WebCore::JavaScriptAudioNode::process):

  • webaudio/OfflineAudioDestinationNode.cpp:

(WebCore::OfflineAudioDestinationNode::render):

  • webaudio/RealtimeAnalyser.cpp:

(WebCore::RealtimeAnalyser::writeInput):

  • webaudio/WaveShaperProcessor.cpp:

(WebCore::WaveShaperProcessor::process):

Source/WebKit/chromium:

The following functions were modified to use the renamed mutableData() accessor:

  • src/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::FIFO::fillBuffer):
(WebCore::AudioDestinationChromium::FIFO::consume):

  • src/WebAudioData.cpp:

(WebCore::WebAudioBus::channelData):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::AudioSourceProviderImpl::provideInput):

11:15 AM Changeset in webkit [105430] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, inspector closure compilation fix.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedEditorContainer.js:
11:13 AM Changeset in webkit [105429] by hyatt@apple.com
  • 8 edits in trunk

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

Before landing support for centering, fix the keyword value to match the latest draft.
The new keyword is "contain" instead of "bounds."

Revised the existing parsing tests to reflect the updated value.

Reviewed by Dan Bernstein.

Source/WebCore:

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator LineGridSnap):

  • css/CSSValueKeywords.in:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

  • fast/line-grid/line-grid-snap-parsing-expected.txt:
  • fast/line-grid/script-tests/line-grid-snap-parsing.js:
11:00 AM Changeset in webkit [105428] by tony@chromium.org
  • 10 edits
    1 copy
    2 adds in trunk/Source

Enable use of precompiled headers in Chromium port on Windows.

Bug 76381 - Use precompiled headers in Chromium port on Windows
https://bugs.webkit.org/show_bug.cgi?id=76381

Patch by Joi Sigurdsson <joi@chromium.org> on 2012-01-19
Reviewed by Tony Chang.

Source/JavaScriptCore:

Source/Platform:

  • Platform.gyp/Platform.gyp: Include WinPrecompile.gypi.

Source/WebCore:

No new tests needed; if the change builds and existing tests pass
that should provide enough coverage.

  • WebCore.gyp/WebCore.gyp: Include WinPrecompile.gypi.

Source/WebKit/chromium:

  • WebKit.gyp: Include WinPrecompile.gypi.
  • WinPrecompile.cpp: Added.
  • WinPrecompile.gypi: Added.
  • WinPrecompile.h: Added.

Source/WTF:

  • WTF.gyp/WTF.gyp: Include WinPrecompile.gypi.
10:57 AM Changeset in webkit [105427] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Switching tabs in TabbedEditorContainer should reveal selected script in navigator.
https://bugs.webkit.org/show_bug.cgi?id=76636

Reviewed by Pavel Feldman.

Renamed FileSelector's ScriptSelected event into FileSelected, added EditorSelected
event to EditorContainer.
Renamed _showSourceFrame into _showFile.
Made _uiSourceCodeRemoved reuse _removeSourceFrame.

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.scriptSelected):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
(WebInspector.ScriptsPanel.prototype._editorSelected):
(WebInspector.ScriptsPanel.prototype._fileSelected):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):

  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):

10:55 AM Changeset in webkit [105426] by mihnea@adobe.com
  • 4 edits in trunk

[CSSRegions]Add support for background-color in region styling
https://bugs.webkit.org/show_bug.cgi?id=71488

Reviewed by David Hyatt.

Source/WebCore:

This patch enables region styling again. The region styling tests were also added back.
With the improvements from https://bugs.webkit.org/show_bug.cgi?id=76265, hopefully we will not see the same 3% regressions
in performance.

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

Add back the region styling tests.

  • platform/mac-snowleopard/Skipped:
10:53 AM Changeset in webkit [105425] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Crash at WebCore::MediaControlRootElement::makeOpaque + 97
https://bugs.webkit.org/show_bug.cgi?id=76391

Reviewed by John Sullivan.

No new tests; Speculative fix for crash.

Crash report data suggests this crash is occurring as the document is being
closed. Check the nullity of document()->page() before deref-ing.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::makeOpaque):

10:36 AM Changeset in webkit [105424] by kov@webkit.org
  • 2 edits in trunk

Rubber-stamped by Martin Robinson.

  • Source/autotools/symbols.filter: try to fix the 32 bits release

bot by also adding the symbol it generates

10:05 AM Changeset in webkit [105423] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Layout Test fast/text/international/spaces-combined-in-vertical-text.html is failing
https://bugs.webkit.org/show_bug.cgi?id=75787

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-19
Reviewed by Simon Fraser.

This is a tweak to my patch in r104322. On some platforms
RenderCombineText::combineText() can abort early during inline
iteration, causing this loop in skipLeadingWhitespace to spin,
hence the layout test timeouts. This patch accounts for that
condition and makes the loop iteration more robust.

No new test because this is fixing a failure on an existing test.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):

9:54 AM Changeset in webkit [105422] by kerz@chromium.org
  • 1 edit in branches/chromium/963/LayoutTests/platform/chromium/test_expectations.txt

clean up branch expectations

9:52 AM Changeset in webkit [105421] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

HRTFPanner not rendering correctly on mac port
https://bugs.webkit.org/show_bug.cgi?id=76397

Reviewed by Eric Carlson.

No new tests; HRTF results are currently not testable.

Re-generate the Composite.wav file from its constituent azimuth & elevation files.

  • platform/audio/resources/Composite.wav:
9:45 AM Changeset in webkit [105420] by hyatt@apple.com
  • 3 edits
    2 adds in trunk

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

Fix crash when nested line grids are used. Make sure to bail out if no line grid
is found rather than crashing.

Reviewed by Dan Bernstein.

Source/WebCore:

Added fast/line-grid/line-grid-nested.html.

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::establishLineGrid):

LayoutTests:

  • fast/line-grid/line-grid-nested-expected.txt: Added.
  • fast/line-grid/line-grid-nested.html: Added.
9:40 AM Changeset in webkit [105419] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] WebKit2 GTK+ API public headers are not installed
https://bugs.webkit.org/show_bug.cgi?id=76626

Reviewed by Martin Robinson.

  • GNUmakefile.am: Rename webkit2gtk_headers as

libwebkit2gtkinclude_HEADERS to match libwebkit2gtkincludedir so
that headers are installed during make install.

9:34 AM Changeset in webkit [105418] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt:
9:30 AM Changeset in webkit [105417] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Add print-backgrounds setting to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=76616

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_get_print_backgrounds):
(webkit_settings_set_print_backgrounds):

  • UIProcess/API/gtk/WebKitSettings.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings):

8:55 AM Changeset in webkit [105416] by enrica@apple.com
  • 4 edits in trunk

editingAttributedStringFromRange in WebHTMLConverter does not handle NSUnderlineStyleAttributeName.
https://bugs.webkit.org/show_bug.cgi?id=76588
<rdar://problem/9325183>

Source/WebCore:

Reviewed by Dan Bernstein.

Added TestWebKitAPI test.

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

Tools:

Added test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/Tests/mac/InspectorBar.mm:

(TestWebKitAPI::TEST):

8:39 AM Changeset in webkit [105415] by apavlov@chromium.org
  • 11 edits
    2 adds in trunk

Web Inspector: Implement screen resolution emulation backend
https://bugs.webkit.org/show_bug.cgi?id=76532

Reviewed by Pavel Feldman.

Source/WebCore:

The emulation affects [min-|max-]device-(width|height) media queries, window.screen.(width|height),
and window.inner(Width|Height).

Test: inspector/styles/override-screen-size.html

  • css/MediaQueryEvaluator.cpp:

(WebCore::device_heightMediaFeatureEval): Apply device-height override if necessary.
(WebCore::device_widthMediaFeatureEval): Apply device-width override if necessary.

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

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::startSelectorProfiler):
(WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::didMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):
(WebCore::InspectorCSSAgent::didProcessRule):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::applyScreenWidthOverrideImpl):
(WebCore::InspectorInstrumentation::applyScreenHeightOverrideImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::applyScreenWidthOverride):
(WebCore::InspectorInstrumentation::applyScreenHeightOverride):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setScreenSizeOverride):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::updateFrameViewFixedLayout):
(WebCore::InspectorPageAgent::clearFrameViewFixedLayout):
(WebCore::InspectorPageAgent::setFrameViewFixedLayout):

  • inspector/InspectorPageAgent.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerHeight): Apply height override if necessary.
(WebCore::DOMWindow::innerWidth): Apply width override if necessary.

  • page/Screen.cpp:

(WebCore::Screen::height): Apply height override if necessary.
(WebCore::Screen::width): Apply width override if necessary.

LayoutTests:

  • inspector/styles/override-screen-size-expected.txt: Added.
  • inspector/styles/override-screen-size.html: Added.
8:36 AM Changeset in webkit [105414] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update for a new failing test.

  • platform/gtk/test_expectations.txt:
7:37 AM Changeset in webkit [105413] by jocelyn.turcotte@nokia.com
  • 13 edits in trunk/Source

[Qt] Handle the layers visible rect calculation on the web process.
https://bugs.webkit.org/show_bug.cgi?id=74720

Reviewed by Noam Rosenthal.

Source/WebCore:

Remove all visible rect calculation related code from TextureMapperNode.

  • platform/graphics/texmap/TextureMapperNode.cpp:
  • platform/graphics/texmap/TextureMapperNode.h:

Source/WebKit2:

The layers now get their visible rect on the web process through the
root layer when the UI process call setVisibleContentRectAndScale,
previously only used for the non-composited content layer.
The rect is then carried down the layers in the tree which apply it the inverse
of their transform before handing it to their tiled backing store.

This ensures that new layers get a proper visible rect right on creation,
and also that simultaneous visible rect and scale changes are applied synchronously.

This patch also uses clampedBoundsOfProjectedQuad instead of mapRect
to transform the visible rect correctly for 3D transformed layers.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::updateDesktopViewportSize):
(QQuickWebViewPrivate::updateTouchViewportSize):
(QQuickWebView::geometryChanged):
Make sure that the visible rect is updated for the desktop view as well.

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::setMaskLayer):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::setVisibleContentRectAndScale):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/LayerTreeHost.messages.in:
  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
7:27 AM Changeset in webkit [105412] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening skipping 3 new test failures.

  • platform/gtk/Skipped:
7:12 AM Changeset in webkit [105411] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, unskip passing test.

  • platform/qt/Skipped:
7:05 AM Changeset in webkit [105410] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Improve focus switching in scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=76628

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog.prototype._hide):

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._showSourceLine):

5:56 AM Changeset in webkit [105409] by vsevik@chromium.org
  • 11 edits in trunk/Source/WebCore

Web Inspector: Add isSelfOrAnsector and isSelfOrDescendant methods to utilities.
https://bugs.webkit.org/show_bug.cgi?id=76618

Added isSelfOrAncestor, isSelfOrDescendant and WebInspector.restoreFocusFromElement methods.

Reviewed by Pavel Feldman.

  • inspector/front-end/Drawer.js:
  • inspector/front-end/HelpScreen.js:

(WebInspector.HelpScreen.prototype._onBlur):

  • inspector/front-end/MetricsSidebarPane.js:

(WebInspector.MetricsSidebarPane.prototype._handleKeyDown):

  • inspector/front-end/Popover.js:
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

  • inspector/front-end/StylesSidebarPane.js:

():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.detach):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
(WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):

  • inspector/front-end/UIUtils.js:

(WebInspector.startEditing.cleanUpAfterEditing):
(WebInspector.restoreFocusFromElement):

  • inspector/front-end/utilities.js:

(Element.prototype.isInsertionCaretInside):
():

5:53 AM Changeset in webkit [105408] by kling@webkit.org
  • 6 edits in trunk/Source/WebCore

DynamicNodeList: Simplify internal Caches object.
<http://webkit.org/b/76600>

Reviewed by Ryosuke Niwa.

Move m_caches from DynamicSubtreeNodeList and ChildNodeList up into DynamicNodeList.
Remove the inheritance from RefCounted and store it simply as "Caches m_caches"
This avoids one heap allocation per DynamicNodeList. Also reordered the Caches members
to pack slightly better on 64-bit.

  • dom/ChildNodeList.cpp:

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

  • dom/ChildNodeList.h:
  • dom/DynamicNodeList.cpp:

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

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeList::invalidateCache):

  • dom/Node.cpp:

(WebCore::NodeRareData::clearChildNodeListCache):

5:47 AM Changeset in webkit [105407] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: TabbedPane closeAllTabs does not close all tabs.
https://bugs.webkit.org/show_bug.cgi?id=76624

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.closeAllTabs):

5:32 AM Changeset in webkit [105406] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

image/pjpeg not supported for decoding on BlackBerry platform
https://bugs.webkit.org/show_bug.cgi?id=76595

Reviewed by Antonio Gomes.

Add image/pjpeg as one of the supported types for image decoding on BlackBerry platform.

  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedImageMIMETypes):

5:04 AM Changeset in webkit [105405] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip new failing tests.

  • platform/qt-wk2/Skipped:
  • platform/qt/Skipped:
5:03 AM Changeset in webkit [105404] by commit-queue@webkit.org
  • 45 edits in trunk

Unreviewed, rolling out r105402.
http://trac.webkit.org/changeset/105402
https://bugs.webkit.org/show_bug.cgi?id=76623

Layout test problems (Requested by WildFox on #webkit).

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

Source/WebCore:

  • css/svg.css:

(svg):

  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth):
(WebCore::RenderImage::computeIntrinsicRatioInformation):

  • rendering/RenderImage.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::logicalHeightIsAuto):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:
  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport):
(WebCore::SVGSVGElement::parseMappedAttribute):
(WebCore::updateCSSForAttribute):
(WebCore::SVGSVGElement::svgAttributeChanged):
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):
(WebCore::SVGSVGElement::currentViewBoxRect):

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size):
(WebCore::SVGImage::computeIntrinsicDimensions):

  • svg/graphics/SVGImage.h:

LayoutTests:

  • platform/mac/svg/custom/dynamic-empty-path-expected.png:
  • platform/mac/svg/custom/fractional-rects-expected.png:
  • platform/mac/svg/custom/js-update-container-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png:
  • platform/mac/svg/custom/viewBox-hit-expected.png:
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png:
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml:
  • svg/foreignObject/text-tref-02-b-expected.txt:
4:59 AM Changeset in webkit [105403] by alexis.menard@openbossa.org
  • 11 edits
    2 adds in trunk

Strange Result for getComputedStyle on borderWidth set in em
https://bugs.webkit.org/show_bug.cgi?id=18294

Reviewed by Tony Chang.

Source/WebCore:

BorderValue stores its width on a 12 bits unsigned. This patch
increase it to 27. The patch also modify the way to set the
width or to get it, we now use a unsigned rather than a short.

Test: fast/css/border-width-large.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc):
(WebCore::AnimationBase::ensurePropertyMap):

  • platform/animation/AnimationUtilities.h:

(WebCore::blend):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):

  • rendering/style/BorderData.h:

(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):

  • rendering/style/BorderValue.h:

(WebCore::BorderValue::width):

  • rendering/style/RenderStyle.cpp:
  • rendering/style/RenderStyle.h:

(WebCore::RenderStyleBitfields::borderLeftWidth):
(WebCore::RenderStyleBitfields::borderRightWidth):
(WebCore::RenderStyleBitfields::borderTopWidth):
(WebCore::RenderStyleBitfields::borderBottomWidth):
(WebCore::RenderStyleBitfields::setBorderLeftWidth):
(WebCore::RenderStyleBitfields::setBorderRightWidth):
(WebCore::RenderStyleBitfields::setBorderTopWidth):
(WebCore::RenderStyleBitfields::setBorderBottomWidth):
(WebCore::RenderStyleBitfields::initialBorderWidth):
(WebCore::RenderStyleBitfields::initialColumnRuleWidth):
(WebCore::RenderStyleBitfields::initialOutlineWidth):

LayoutTests:

This test covers that setting big values to border-width will
return correct values.

  • fast/css/border-width-large-expected.txt: Added.
  • fast/css/border-width-large.html: Added.
4:41 AM Changeset in webkit [105402] by Nikolas Zimmermann
  • 45 edits in trunk

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Reviewed by Antti Koivisto.

Source/WebCore:

Remove a gazillion of hacks out of our SVG implementation, by correctly differentiating between the
SVG width/height attributes and the CSS width/height properties. They need to be treated independently
when handling the intrinsic size negotiation, according to both CSS 2.1 & SVG 1.1 2nd Edition specs.

Fixes several bugs in the LayoutTests/svg/custom/*object*sizing tests, we now match Opera perfectly. FF still has some bugs, and IE9 as well.

  • css/svg.css: Remove hardcoded, width/height: 100% on <svg>.
  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation): Make 'intrinsicRatio' a float, and add 'intrinsicSize' as seperated FloatSize, to avoid confusion.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Add forgotton case for percentage intrinsic sizes, that lead to workarounds in other places, that can now be removed.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth): Directly use imageHasRelativeWidth/Height(), it does differentiate between SVG/CSS width/height attributes/properties now.
(WebCore::RenderImage::computeIntrinsicRatioInformation): Adapt to 'intrinsicRatio' argument change.

  • rendering/RenderImage.h: Ditto.
  • rendering/RenderReplaced.cpp: Refactor existing code, break out firstContainingBlockWithLogicalWidth/hasReplacedLogicalWidth/hasReplacedLogicalHeight/hasAutoHeightOrContainingBlockWithAutoHeight.

(WebCore::firstContainingBlockWithLogicalWidth): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalWidth): Refactored, and exported, so SVGSVGElement::widthAttributeEstablishesViewport() can use it.
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalHeight): Refactored, and exported, so SVGSVGElement::heightAttributeEstablishesViewport() can use it.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Adapt to 'intrinsicRatio' changes ('intrinsicSize' is now decoupled from it). Refactor so that RenderSVGRoot can directly use it as well!
(WebCore::RenderReplaced::computeReplacedLogicalHeight): Ditto.

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Only determine the intrinsic size & ratio using the SVG width/height attributes, not the CSS width/height properties, as it's specified.
(WebCore::resolveLengthAttributeForSVG): Helper function for computeReplacedLogicalWidth/Height, that scales Length values that come from SVG width/height attributes.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Finally remove home-brewn size computation logic - it can be fully shared with RenderReplaced now that we inherit from it.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::RenderSVGViewportContainer::viewport): Export viewport() for easier length resolution.

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport): Finally clean up this hell, and make it easy to understand. Only need to resolve lengths against either RenderSVGRoot or RenderSVGViewportContainer now.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport): Remove wrong code and disable this. Its not used, and we have no test coverage for it. Its current implementation didn't make any sense.
(WebCore::SVGSVGElement::parseMappedAttribute): Remove hacks mapping SVG width/height attributes to CSS properties.
(WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
(WebCore::SVGSVGElement::localCoordinateSpaceTransform): Refactored.
(WebCore::SVGSVGElement::currentViewBoxRect): Ditto.
(WebCore::SVGSVGElement::currentViewportSize): Ditto.
(WebCore::SVGSVGElement::widthAttributeEstablishesViewport): Main logic determining if the SVG or CSS properties establish the viewport - a direct transliteration from the spec.
(WebCore::SVGSVGElement::heightAttributeEstablishesViewport): Ditto.
(WebCore::SVGSVGElement::intrinsicWidth): Helper.
(WebCore::SVGSVGElement::intrinsicHeight): Ditto.

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size): Cleanup code.
(WebCore::SVGImage::hasRelativeWidth): Added, avoids hacks in RenderBoxModelObject.
(WebCore::SVGImage::hasRelativeHeight): Ditto.
(WebCore::SVGImage::computeIntrinsicDimensions): Make use of new SVGSVGElement::computeIntrinsicDimensions.

  • svg/graphics/SVGImage.h:

LayoutTests:

Update SVG pixel test baseline.

  • platform/mac/svg/custom/dynamic-empty-path-expected.png: Marginal changes.
  • platform/mac/svg/custom/fractional-rects-expected.png: Ditto.
  • platform/mac/svg/custom/js-update-container-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Align with Opera, gives same result now. All *object*sizing* tests are passing now.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png: Marginal changes.
  • platform/mac/svg/custom/viewBox-hit-expected.png: Ditto.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Ditto.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Fix test, now that our bug is fixed.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/foreignObject/text-tref-02-b-expected.txt: Size is not reported anymore.
4:17 AM Changeset in webkit [105401] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Reviewed by Pavel Feldman.

Fix Chromium specific problem with svg/text/select-x-list-4.svg, making it fail on the bots.
After transforming the endPos.x + 1 -> absEndPos.x, subtract -1 again, to be sure we don't
select text too far after the end position, making the selection currently disappear, which
is a bug, but can be avoided in this testcase.

  • platform/chromium/test_expectations.txt: Unskip test.
  • svg/text/resources/SelectionTestCase.js:

(selectRange): Subtract -1 from absEndPos.x.

3:18 AM Changeset in webkit [105400] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Do full incremental builds until bots use update-webkit

Rubber-stamped by Simon Hausmann.

3:06 AM Changeset in webkit [105399] by vestbo@webkit.org
  • 2 edits in trunk/Tools

Fix the Qt build

Unreviewed build fix.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

3:00 AM Changeset in webkit [105398] by vestbo@webkit.org
  • 6 edits in trunk

[Qt] Make build-webkit always do safe incremental builds after update-webkit

When building against Qt5 with GCC we would just run 'make' in the build dir,
and rely on the dependency files output by GCC (-MD) to handle dependency
tracking, but that fails for special-cases like adding a Q_OBJECT macro
to a header.

To guarantee that an incrmental build will work, we have to run 'make qmake',
which we now do on every build-webkit that's followed by a successful run
of update-webkit. The reasoning is that update-webkit can result in such
potential corner-cases being applied, and since we can't know for sure
unless we inspect the diff and account for all the corner cases we assume
the worst and always run 'make qmake'.

After a succesful run of build-webkit we proceed to do just 'make' for any
subsequent runs, since we assume that the developer knows what kind of
changes he/she is doing, and when a 'make qmake' is needed.

Reviewed by Simon Hausmann.

2:24 AM Changeset in webkit [105397] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip now passing tests.

  • platform/qt-5.0/Skipped:
  • platform/qt-wk2/Skipped:
2:16 AM Changeset in webkit [105396] by rniwa@webkit.org
  • 5 edits
    4 adds in trunk

drop event isn't fired for contentEditable in edit drag
https://bugs.webkit.org/show_bug.cgi?id=57185

Reviewed by Adam Barth.

Source/WebCore:

Dispatch drop and dragend events after edit drag per HTML5 spec:
http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#drag-and-drop-processing-model

There are two major differences between the spec and WebKit's new behavior:

While the spec says we have to insert the dragged contents immediately after dispatching drop event
and delete the source in the default event handler of dragend event, doing so in WebKit is extremely
difficult because of the way we manage the selection. Instead, we continue to delete the source
and insert the dragged contents immediately after the drop event; this behavior matches that of Firefox 9.

When the dragged contents and the destination of the move is in the same text node, ReplaceSelectionCommand
may end up replacing it with a new text node. But this removal causes a problem when EventHandler uses
the node to dispatch dragend event because the node is "orphaned" from its parent at that point. To mitigate
this issue, we update the dragState's m_dragSrc when the node is orphaned by the edit drag. While this behavior
may differ from the spec and other browsers, not delivering dragend to the editing host seems strictly worse than
dispatching it at the slightly wrong target.

Tests: fast/events/moving-text-should-fire-drop-and-dragend-events-2.html

fast/events/moving-text-should-fire-drop-and-dragend-events.html

  • page/DragController.cpp:

(WebCore::DragController::performDrag): Dispatch drop event even when m_isHandlingDrag is true as long
as DragDestinationActionDHTML is an acceptable action.
(WebCore::DragController::concludeEditDrag): Call updateDragStateAfterEditDragIfNeeded after inserting
the dragged contents. This is necessary when ReplaceSelectionCommand or MoveSelectionCommand modifies
the source node while inserting the dragged contents.

  • page/EventHandler.cpp:

(WebCore::EventHandler::performDragAndDrop): Clear the drag state only if drop event's default action
was prevented so that we dispatch dragevent event later.
(WebCore::EventHandler::updateDragStateAfterEditDragIfNeeded): Update dragState's m_dragSrc when the node
is orphaned. See above for the rationale.

  • page/EventHandler.h:

LayoutTests:

Added tests ensure moving text in contenteditable regions fire dragstart, drop, and dragend events.

  • fast/events/moving-text-should-fire-drop-and-dragend-events-2-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-2.html: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events.html: Added.
1:58 AM Changeset in webkit [105395] by kinuko@chromium.org
  • 14 edits in trunk/Source

Cleanup: Move chrome-specific filesystem type handling code (for FileSystem API) under chromium directory
https://bugs.webkit.org/show_bug.cgi?id=76551

Reviewed by Darin Fisher.

WebKit-svn/Source/WebCore:

Moved the implementation of crackFileSystemURL() and toURL() from
WebCore/fileapi/DOMFileSystemBase into WebCore/platform/AsyncFileSystem
so that each platform can extend/implement their behavior if necessary.

No new tests since this patch has no functionality changes. (Existing
tests should pass)

  • fileapi/DOMFileSystemBase.cpp: Moved the implementation of

crackFileSystemURL() to AsyncFileSystem
(WebCore::DOMFileSystemBase::crackFileSystemURL):

  • fileapi/DOMFileSystemBase.h:
  • fileapi/EntryBase.cpp: Moved the implementation of toURL() to AsyncFileSystem

(WebCore::EntryBase::toURL):

  • page/DOMWindow.cpp: Removed chrome-specific type handling code.

(WebCore::DOMWindow::webkitRequestFileSystem):

  • page/DOMWindow.h: Removed chrome-specific filesystem type

(EXTERNAL).

  • platform/AsyncFileSystem.cpp: Added default implementation of toURL() and crackFileSystemURL()

(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::crackFileSystemURL):

  • platform/AsyncFileSystem.h:
  • workers/WorkerContext.cpp: Removed chrome-specific type handling code.

(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):

WebKit-svn/Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp: Removed matching assertion for TypeExternal as it's no longer defined separately.
  • src/AsyncFileSystemChromium.cpp: Added crackFileSystemURL() and toURL() implementation that

handle chrome-specific filesystem type (EXTERNAL) as well as regular TEMPORARY/PERSISTENT types.
(WebCore::AsyncFileSystem::crackFileSystemURL): Added.
(WebCore::AsyncFileSystemChromium::toURL): Added.

  • src/AsyncFileSystemChromium.h:
1:22 AM Changeset in webkit [105394] by mihnea@adobe.com
  • 7 edits in trunk/Source/WebCore

Cache RenderStyle pointer as a method to avoid performance regression for region styling
https://bugs.webkit.org/show_bug.cgi?id=76265

Reviewed by David Hyatt.

No new tests since this is just refactoring.
When region styling was enabled in https://bugs.webkit.org/show_bug.cgi?id=71488,
it introduced a performance regression due to the change of RenderObject::style() method.
This patch tries to avoid a new performance regression when region styling will be enabled again.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::computePreferredLogicalWidths):
(WebCore::getBorderPaddingMargin):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateBoxModelInfoFromStyle):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthUsing):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computePositionedLogicalHeight):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::styleWillChange):
(WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):

  • rendering/RenderText.cpp:

(WebCore::RenderText::styleDidChange):
(WebCore::RenderText::computePreferredLogicalWidths):

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

[Chromium] Random characters got rendered as empty boxes or with incorrect glyphs even when a font is present
https://bugs.webkit.org/show_bug.cgi?id=76508

Patch by Kazuhiro Inaba <kinaba@chromium.org> on 2012-01-19
Reviewed by Kent Tamura.

Wrapped GetGlyphIndices() API calls so that when they failed we trigger font
loading outside the sandbox and retry the call.

No new auto tests since the bug involves the system's occasional cache behavior
and thus there's no reliable way to reproduce and test the situation.

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::getGlyphIndices):
GDI call wrapper ensuring fonts to be loaded.
(WebCore::initSpaceGlyph):
Changed to use the wrapper function.
(WebCore::fillBMPGlyphs):
Changed to use the wrapper function.
Introduced scoped HDC management by HWndDC.
(WebCore::GlyphPage::fill):

12:58 AM Changeset in webkit [105392] by dmazzoni@google.com
  • 14 edits in trunk/LayoutTests

Unreviewed - re-enables tests on chromium-mac by making minor changes to cause the expectations to be identical on all Chromium configurations.

12:31 AM Changeset in webkit [105391] by abarth@webkit.org
  • 7 edits in trunk

createAttributeNS should understand that "xmlns" is allowed in the http://www.w3.org/2000/xmlns/
https://bugs.webkit.org/show_bug.cgi?id=76579

Reviewed by Eric Seidel.

Source/WebCore:

This patch cleans up a tiny corner case involving the (somewhat
magical) xmlns attribute that we uncovered when working on
setAttributeNS.

Tests: fast/dom/Document/createAttributeNS-namespace-err.html

  • dom/Document.cpp:

(WebCore::Document::importNode):
(WebCore::Document::hasValidNamespaceForElements):
(WebCore::Document::hasValidNamespaceForAttributes):
(WebCore::Document::createElementNS):
(WebCore::Document::createAttributeNS):

  • dom/Document.h:
  • dom/Element.cpp:

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Document/createAttributeNS-namespace-err-expected.txt:
  • fast/dom/Document/script-tests/createAttributeNS-namespace-err.js:
12:29 AM Changeset in webkit [105390] by rolandsteiner@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for DEBUG: remove comparison of an unsigned variable with '>= 0' in ASSERT.

No new tests. (no functionality change)

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):

Jan 18, 2012:

11:52 PM Changeset in webkit [105389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[v8] Low efficiency of writing long string from web application to plugin.
https://bugs.webkit.org/show_bug.cgi?id=76592

The efficiency will be improved by 300 times in the best case, when the
size of string reaches 1MB.

Patch by Li Yin <li.yin@intel.com> on 2012-01-18
Reviewed by Adam Barth.

  • bindings/v8/V8NPUtils.cpp:

(WebCore::convertV8ObjectToNPVariant):

11:39 PM Changeset in webkit [105388] by abarth@webkit.org
  • 2 edits
    2 adds in trunk

Assigning to Element.prefix should throw exception when using illegal characters
https://bugs.webkit.org/show_bug.cgi?id=76589

Reviewed by Eric Seidel.

This patch fixes a FIXME and implements the INVALID_CHARACTER_ERR
exception described in
http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-NodeNSPrefix

Tests: fast/dom/Element/prefix-setter-exception.html

  • dom/Node.cpp:

(WebCore::isValidNameStartCharacter):
(WebCore::isValidNameCharacter):
(WebCore::hasInvalidValidNameCharacters):
(WebCore::Node::checkSetPrefix):

11:05 PM Changeset in webkit [105387] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

ShadowContent query should be able to have fallback elements.
https://bugs.webkit.org/show_bug.cgi?id=75306

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Hajime Morita.

Source/WebCore:

When no elements are selected by a shadow content element selector query,
light children are selected as a fallback elements.

Test: fast/dom/shadow/shadow-contents-fallback.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::NodeRenderingContext):

Considers fallback phase. When no elements are chosen, the phase is set to 'fallback'.

(WebCore::NodeRenderingContext::nextRenderer):

Takes fallback phase into account.

(WebCore::NodeRenderingContext::previousRenderer): ditto.

  • dom/NodeRenderingContext.h:
  • html/shadow/HTMLContentElement.cpp:

(WebCore::HTMLContentElement::attach):

Calculates inclusions before attaching light children.

  • html/shadow/HTMLContentElement.h:

(WebCore::HTMLContentElement::hasInclusion):

LayoutTests:

  • fast/dom/shadow/shadow-contents-fallback-expected.txt: Added.
  • fast/dom/shadow/shadow-contents-fallback.html: Added.
10:51 PM Changeset in webkit [105386] by tkent@chromium.org
  • 4 edits
    2 adds in trunk

REGRESSION(r100111): A 'change' event does not fire when a mouse drag
occurs to switch elements in a listbox <select>
https://bugs.webkit.org/show_bug.cgi?id=76244

Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/select/listbox-drag-in-non-multiple.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::updateSelectedState):
Do not update m_activeSelectionState for non-multiple <select>.
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Use setActiveSelection*Index() and updateListBoxSelection(true) instead
of updateSelectedState() because updateSelectedState() updates
m_lastOnChangeSelection and will prevent the mouseup handler from
dispatching 'change' event.
We should not call listBoxOnChange() in the mousemove handler in order
to align the behavior of IE and Firefox.

LayoutTests:

  • fast/forms/resources/common.js:

(mouseMoveToIndexInListbox): Added.

  • fast/forms/select/listbox-drag-in-non-multiple-expected.txt: Added.
  • fast/forms/select/listbox-drag-in-non-multiple.html: Added.
10:30 PM Changeset in webkit [105385] by Lucas Forschler
  • 5 edits in branches/safari-534.54-branch/Source

Versioning.

10:29 PM Changeset in webkit [105384] by Lucas Forschler
  • 1 copy in tags/Safari-534.54.8

New tag.

10:25 PM Changeset in webkit [105383] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge <rdar://problem/10516690>

10:11 PM Changeset in webkit [105382] by dgrogan@chromium.org
  • 2 edits in trunk/LayoutTests

update resolve-url-sync-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=76581

Reviewed by Eric Seidel.

  • http/tests/filesystem/workers/resolve-url-sync-expected.txt:
10:00 PM Changeset in webkit [105381] by rniwa@webkit.org
  • 7 edits
    1 add in trunk

run-perf-tests should support Skipped list
https://bugs.webkit.org/show_bug.cgi?id=76594

Reviewed by Adam Barth.

PerformanceTests:

Add Skipped list to be used by run-perf-tests as it can only runs tests in
Bindings, Parser, and inspector at the moment.

  • Skipped: Added.

Tools:

Add a support for Skipped list in run-perf-tests; also skip files in resources directories.

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

(Port.perf_tests_dir):
(Port.skipped_perf_tests):
(Port.skips_perf_test):
(Port.relative_perf_test_filename):

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

(TestPort.perf_tests_dir):

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

(WebKitPort._expectations_from_skipped_files):
(WebKitPort):
(WebKitPort.skipped_layout_tests):
(WebKitPort.skipped_perf_tests):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._collect_tests):
(PerfTestsRunner.run):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):
(test_collect_tests_with_skipped_list):
(test_collect_tests_with_skipped_list.add_file):

9:56 PM Changeset in webkit [105380] by tsepez@chromium.org
  • 6 edits
    1 add in trunk/Source/WebKit/chromium

Pass content-security-policy directive into shared workers.
https://bugs.webkit.org/show_bug.cgi?id=75660

Reviewed by Darin Fisher.

  • public/WebContentSecurityPolicy.h: Added.
  • public/WebSharedWorker.h:

(WebKit::WebSharedWorker::startWorkerContext):

  • src/AssertMatchingEnums.cpp:
  • src/SharedWorkerRepository.cpp:

(WebCore::SharedWorkerScriptLoader::notifyFinished):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::startWorkerContext):

  • src/WebSharedWorkerImpl.h:
9:40 PM Changeset in webkit [105379] by eric@webkit.org
  • 3 edits
    3 adds in trunk

setAttributeNS should comply with the obscure rules of DOM2, just like createAttributeNS and createElementNS do
https://bugs.webkit.org/show_bug.cgi?id=76143

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/dom/Element/setAttributeNS-namespace-err.html

  • dom/Element.cpp:

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Element/script-tests/setAttributeNS-namespace-err.js: Added.

(assert):
(stringForExceptionCode):
(assertEquals):
(sourceify):
(runNSTests):

  • fast/dom/Element/setAttributeNS-namespace-err-expected.txt: Added.
  • fast/dom/Element/setAttributeNS-namespace-err.html: Added.
9:20 PM Changeset in webkit [105378] by rolandsteiner@chromium.org
  • 5 edits in trunk

Unreviewed, rolling out r105376.
http://trac.webkit.org/changeset/105376
https://bugs.webkit.org/show_bug.cgi?id=76601

Roll 76493 back in after discussion with jsbell (Requested by
rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
8:18 PM Changeset in webkit [105377] by commit-queue@webkit.org
  • 4 edits
    8 adds in trunk/Source

[chromium] Create a base-class CCAnimation to represent compositor animations
https://bugs.webkit.org/show_bug.cgi?id=73233

Source/WebCore:

Adds a kernel for running animations on the chromium compositor
thread.

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebCore.gypi:
  • platform/graphics/chromium/cc/CCActiveAnimation.cpp: Added.

(WebCore::CCActiveAnimation::CCActiveAnimation):
(WebCore::CCActiveAnimation::setRunState):
(WebCore::CCActiveAnimation::isFinishedAt):
(WebCore::CCActiveAnimation::trimTimeToCurrentIteration):

  • platform/graphics/chromium/cc/CCActiveAnimation.h: Added.

(WebCore::CCActiveAnimation::create):
(WebCore::CCActiveAnimation::~CCActiveAnimation):
(WebCore::CCActiveAnimation::group):
(WebCore::CCActiveAnimation::targetProperty):
(WebCore::CCActiveAnimation::runState):
(WebCore::CCActiveAnimation::iterations):
(WebCore::CCActiveAnimation::setIterations):
(WebCore::CCActiveAnimation::startTime):
(WebCore::CCActiveAnimation::setStartTime):
(WebCore::CCActiveAnimation::isFinished):
(WebCore::CCActiveAnimation::animationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.cpp: Added.

(WebCore::CCAnimationCurve::toFloatAnimationCurve):
(WebCore::CCAnimationCurve::toTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.h: Added.

(WebCore::CCAnimationCurve::~CCAnimationCurve):
(WebCore::CCFloatAnimationCurve::~CCFloatAnimationCurve):
(WebCore::CCFloatAnimationCurve::type):
(WebCore::CCTransformAnimationCurve::~CCTransformAnimationCurve):
(WebCore::CCTransformAnimationCurve::type):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.cpp: Added.

(WebCore::CCLayerAnimationControllerImpl::create):
(WebCore::CCLayerAnimationControllerImpl::CCLayerAnimationControllerImpl):
(WebCore::CCLayerAnimationControllerImpl::animate):
(WebCore::CCLayerAnimationControllerImpl::add):
(WebCore::CCLayerAnimationControllerImpl::getActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::hasActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForNextTick):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForStartTime):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForTargetAvailability):
(WebCore::CCLayerAnimationControllerImpl::resolveConflicts):
(WebCore::CCLayerAnimationControllerImpl::purgeFinishedAnimations):
(WebCore::CCLayerAnimationControllerImpl::tickAnimations):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.h: Added.

(WebCore::CCLayerAnimationControllerImplClient::~CCLayerAnimationControllerImplClient):

Source/WebKit/chromium:

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebKit.gypi:
  • tests/CCActiveAnimationTest.cpp: Added.

(WebCore::FakeFloatAnimation::duration):
(WebCore::FakeFloatAnimation::getValue):
(WebCore::createActiveAnimation):
(WebCore::TEST):

  • tests/CCLayerAnimationControllerImplTest.cpp: Added.

(WebCore::FakeControllerClient::FakeControllerClient):
(WebCore::FakeControllerClient::~FakeControllerClient):
(WebCore::FakeControllerClient::opacity):
(WebCore::FakeControllerClient::setOpacity):
(WebCore::FakeControllerClient::transform):
(WebCore::FakeControllerClient::setTransform):
(WebCore::FakeControllerClient::animationControllerImplDidActivate):
(WebCore::FakeControllerClient::activeControllers):
(WebCore::FakeTransformTransition::FakeTransformTransition):
(WebCore::FakeTransformTransition::duration):
(WebCore::FakeTransformTransition::getValue):
(WebCore::FakeFloatTransition::FakeFloatTransition):
(WebCore::FakeFloatTransition::duration):
(WebCore::FakeFloatTransition::getValue):
(WebCore::TEST):

8:07 PM Changeset in webkit [105376] by rolandsteiner@chromium.org
  • 5 edits in trunk

Unreviewed, rolling out r105331.
http://trac.webkit.org/changeset/105331
https://bugs.webkit.org/show_bug.cgi?id=76599

May have broken Chromium InjectIDBKey browser_test (Requested
by rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
8:02 PM Changeset in webkit [105375] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove some unused code in AudioContext
https://bugs.webkit.org/show_bug.cgi?id=76506

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioContext.cpp:

(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::uninitialize):

  • webaudio/AudioContext.h:
7:28 PM Changeset in webkit [105374] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Fix path to chromium_src_dir introduced in previous change.

Unreviewed, build fix.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
7:22 PM Changeset in webkit [105373] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Only create AudioBus with required number of channels for AudioNodeOutput
https://bugs.webkit.org/show_bug.cgi?id=76417

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):
(WebCore::AudioNodeOutput::setNumberOfChannels):
(WebCore::AudioNodeOutput::updateInternalBus):
(WebCore::AudioNodeOutput::updateNumberOfChannels):
(WebCore::AudioNodeOutput::pull):

  • webaudio/AudioNodeOutput.h:
6:55 PM Changeset in webkit [105372] by kling@webkit.org
  • 11 edits
    2 adds in trunk

Cache and reuse the NodeList returned by Node::childNodes().
<http://webkit.org/b/76591>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Instead of only caching the DynamicNodeList::Caches for .childNodes on NodeRareData,
cache the full ChildNodeList object. Lifetime management is left to wrappers who
invalidate the cached (raw) pointer via Node::removeCachedChildNodeList(), called
from ~ChildNodeList().

This is a slight behavior change, in that Node.childNodes === Node.childNodes will
now be true. This matches the behavior of both Firefox and Opera.

This reduces memory consumption by 192 kB (on 32-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

Test: fast/dom/gc-9.html

fast/dom/node-childNodes-idempotence.html

  • dom/Node.cpp:

(WebCore::Node::childNodes):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(WebCore::NodeRareData::childNodeList):
(WebCore::NodeRareData::setChildNodeList):

Only construct one ChildNodeList per Node and store it on NodeRareData for
retrieval across childNodes() calls.

  • dom/ChildNodeList.h:

(WebCore::ChildNodeList::create):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):

Construct the Caches at creation instead of passing it to the constructor.

(WebCore::ChildNodeList::reset):

Added, resets the internal cache.

(WebCore::ChildNodeList::~ChildNodeList):

Call Node::removeCachedChildNodeList().

  • dom/DynamicNodeList.cpp:
  • dom/DynamicNodeList.h:

Have DynamicNodeList (and subclasses) respond "true" to isDynamicNodeList().
Previously only DynamicSubtreeNodeList (and subclasses) were doing this.
Without it, JSC may GC our ChildNodeLists prematurely (due to NodeList's
isReachableFromOpaqueRoots() implementation checking isDynamicNodeList().)

  • dom/Node.h:
  • dom/Node.cpp:

(WebCore::Node::removeCachedChildNodeList):

Added for ~ChildNodeList() to remove the pointer to itself from the Node.

(WebCore::NodeRareData::clearChildNodeListCache):

Call ChildNodeList::reset().

LayoutTests:

Updated gc-9.html to document the new lifetime characteristics of a .childNodes with
custom properties. Also added a test to verify that .childNodes === .childNodes.

  • fast/dom/gc-9-expected.txt:
  • fast/dom/gc-9.html:
  • fast/dom/node-childNodes-idempotence-expected.txt: Added.
  • fast/dom/node-childNodes-idempotence.html: Added.
6:39 PM Changeset in webkit [105371] by jamesr@google.com
  • 12 edits in trunk/Source

Unreviewed, rolling out r105366.
http://trac.webkit.org/changeset/105366
https://bugs.webkit.org/show_bug.cgi?id=76015

Breaks CCLayerTreeHostImplTest unit test

Source/WebCore:

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):

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

(WebCore::CCQuadCuller::cullOccludedQuads):

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

(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):

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

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::syncTextureId):

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

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

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

Save two ID checks on CSS Min/Width property validation
https://bugs.webkit.org/show_bug.cgi?id=76565

The same validation is done again in the next case statement. Check for
CSSValueIntrinsic and CSSValueMinIntrinsic was done twice when the value
is a number.

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-18
Reviewed by Andreas Kling.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

5:54 PM Changeset in webkit [105369] by ap@apple.com
  • 9 edits
    5 adds in trunk

Need infrastructure to test Content-Disposition filename encoding support
https://bugs.webkit.org/show_bug.cgi?id=76572
<rdar://problem/6421825>

Reviewed by Sam Weinig.

Made policy delegate log suggested file name when resource has Content-Disposition: attachment.

WebKitTestRunner does not have a policy delegate yet, bug 42546.

  • DumpRenderTree/mac/PolicyDelegate.mm: (dispositionTypeFromContentDispositionHeader): (-[PolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
5:53 PM Changeset in webkit [105368] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

Another build fix for r105364.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Missing #if.

5:44 PM Changeset in webkit [105367] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for r105364. Unreviewed.

  • WebProcess/Notifications/WebNotificationManager.cpp: Wrap methods in #if ENABLE(NOTIFICATIONS)

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision):
(WebKit::WebNotificationManager::didRemoveNotificationDecisions):
(WebKit::WebNotificationManager::policyForOrigin):

5:42 PM Changeset in webkit [105366] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[chromium] Use region reported painted opaque for draw culling
https://bugs.webkit.org/show_bug.cgi?id=76015

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in CCQuadCullerTest.cpp and CCTiledLayerImplTest.cpp

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCDrawQuad::opaqueRect):
(WebCore::CCDrawQuad::needsBlending):

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

(WebCore::CCQuadCuller::cullOccludedQuads):

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

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::opaqueRect):
(WebCore::DrawableTile::setOpaqueRect):
(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::pushTileProperties):

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

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):
(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

5:19 PM Changeset in webkit [105365] by vrk@chromium.org
  • 3 edits in trunk/Source/WebCore

HTMLMediaElement should fire 'progress' event before 'idle' if it was previously loading
https://bugs.webkit.org/show_bug.cgi?id=76568

Reviewed by Eric Carlson.

This fires a progress event when going from a non-empty state to idle,
for the same reason that a progress event is fired when going from a
non-idle state to loaded. Also consolidated logic in a single helper method.

No new tests because the decision of if/when a user agent sets the network state
to idle is up to the user agent in this scenario.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setNetworkState):
(WebCore::HTMLMediaElement::changeNetworkStateFromLoadingToIdle):

  • html/HTMLMediaElement.h:
5:14 PM Changeset in webkit [105364] by jonlee@apple.com
  • 34 edits in trunk/Source

[WK2] Sync call for notifications permissions causes flashes on gmail.com
https://bugs.webkit.org/show_bug.cgi?id=76570
<rdar://problem/10647155>

Reviewed by Anders Carlsson and Sam Weinig.

Source/WebCore:

  • WebCore.exp.in: Export SecurityOrigin::toString().

Add runtime setting to enable/disable notifications.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h: Add new bit for whether notifications are enabled.

(WebCore::Settings::setNotificationsEnabled):
(WebCore::Settings::notificationsEnabled):

Source/WebKit2:

The website code figures out the permission level for its security origin by making a JS call (called
checkPermission()) that is synchronous. The way this was implemented was to make a synchronous call from
the WebNotificationManager to its proxy. That call goes to the WK API layer to find the policy, and
returns that policy back to the JS.

The synchronous nature of this call causes the white flash to appear in certain cases.

To fix this, the checkPermission() call is handled all within the web process, instead of going up into
the UI process. To do this, the web process initializes the WebNotificationManager with a copy of the
notification permissions. Any time the WK client makes a change to the permissions, that gets sent down
asynchronously, and the cached copy in WebNotificationManager gets updated.

A page's settings may disable notifications altogether. Before, this would have been handled by the WK
client, since retrieving the permissions were also handled there. Now that the lookup happens in the web
process, we need to add that setting in WebCore.

Update notification permissions to use the security origin's string representation, rather than its

database identifier.

  • UIProcess/Notifications/WebNotification.cpp:

(WebKit::WebNotification::WebNotification):

  • UIProcess/Notifications/WebNotification.h:

(WebKit::WebNotification::create):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show): Registering the provider with the manager is handled in
initialize() now.
(WebKit::WebNotificationManagerProxy::cancel): Registering the provider with the manager is handled in
initialize() now.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestNotificationPermission):
(WebKit::WebPageProxy::showNotification):

  • UIProcess/WebPageProxy.h:
  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::startRequest): Only start the request if notifications
are enabled.

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show): Only show notification is they are enabled.
(WebKit::WebNotificationManager::cancel): Only cancel if notifications are enabled.

Remove synchronous message to get policy for a given origin. Instead, use the cached copy in

WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::policyForOrigin): Looks for the permission in the cached copy.
If it doesn't exist, return NotificationPresenter::PermissionNotAllowed.

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::permissionLevel): Update permissionLevel to use
policyForOrigin().

Remove old WK API function to get the policy. Because this function was the only synchronous message,
we remove the sync-message-related functions also. Also, add in some #includes that might have been
omitted in prior patches.

  • UIProcess/API/C/WKNotificationProvider.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Remove NotificationPermissionLevel.
  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/Notifications/WebNotificationProvider.h: Remove policyForNotificationPermissionAtOrigin().
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage): Remove conditional to forward sync messages to the
notification manager proxy.

Mechanism for client to update the permissions copy in WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.messages.in: Add new messages

didUpdateNotificationDecision and didRemoveNotificationDecisions.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision): Update the entry.
(WebKit::WebNotificationManager::didRemoveNotificationDecisions): Remove the entry.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies): Convert the array of
origins to remove, and send it to the WebNotificationManager.

  • UIProcess/API/C/WKNotificationManager.h: Expose these update functions as WK API.
  • UIProcess/API/C/WKNotificationManager.cpp:

(WKNotificationManagerProviderDidUpdateNotificationPolicy):
(WKNotificationManagerProviderDidRemoveNotificationPolicies):

Initialize WebNotificationManager with permissions. Initialize WebPage with notifications enabled bit

from settings.

  • Shared/WebProcessCreationParameters.h: Add map of notification permissions as part of the

parameters.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • UIProcess/Notifications/WebNotificationProvider.h: Retrieve copy of existing notification permissions.
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/API/C/WKNotificationProvider.h: Add WK API to get a copy of the permissions.
  • UIProcess/Notifications/WebNotificationManagerProxy.h: Add populateCopyOfNotificationPermissions().
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::initializeProvider): Add the manager at the time of initialization.
Similar calls in show() and cancel() are removed in following patch.
(WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions): Clear the existing copy.
Populate with origin string, and whether that origin is allowed to post. If no decision has been made
by the user, then there should be no item in this dictionary.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureWebProcess): When the web process is initialized, we get a copy of the
permissions, and send it to the web process to initialize the notification manager.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Initialize the notification manager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize): Initialize the permissions copy.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Set notifications enabled bit from settings.

Expose toString() method from WebCore::SecurityOrigin. Work is also towards bug 74956.

  • Shared/API/c/WKSecurityOrigin.h: Refactor WKSecurityOriginCreateFromIdentifier to

WKSecurityOriginCreateFromDatabaseIdentifier and add WKSecurityOriginCreateFromString function.

  • Shared/API/c/WKSecurityOrigin.cpp:

(WKSecurityOriginCreateFromString):
(WKSecurityOriginCreateFromDatabaseIdentifier):
(WKSecurityOriginCopyToString):

Refactor WebSecurityOrigin::create() to WebSecurityOrigin::createFromDatabaseIdentifier()
and add WebSecurityOrigin::createFromString().

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::createFromString):
(WebKit::WebSecurityOrigin::createFromDatabaseIdentifier):
(WebKit::WebSecurityOrigin::toString): Added function.

Refactor with renamed createFromDatabaseIdentifier() method.

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::didModifyOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyDatabase):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):

Add WK API calls to change notificationsEnabled bit in WebCore::Settings.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetNotificationsEnabled):
(WKPreferencesGetNotificationsEnabled):

  • UIProcess/API/C/WKPreferences.h:
5:11 PM Changeset in webkit [105363] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

IndexedDB: Fix InjectIDBKeyTest.SubProperty test failure
https://bugs.webkit.org/show_bug.cgi?id=76582

Correct the test, now that https://bugs.webkit.org/show_bug.cgi?id=76493
changes the semantics so that intermediate objects are created if possible
to satisfy autoIncrement keypaths.

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-18
Reviewed by James Robinson.

  • tests/IDBBindingUtilitiesTest.cpp:

(WebCore::TEST):

5:09 PM Changeset in webkit [105362] by Lucas Forschler
  • 4 edits
    3 copies in branches/safari-534.54-branch

Merged r95580.

5:08 PM Changeset in webkit [105361] by tsepez@chromium.org
  • 1 edit
    4 copies in branches/chromium/963

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9252034

5:06 PM Changeset in webkit [105360] by tsepez@chromium.org
  • 1 edit
    4 copies in branches/chromium/912

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9216003

4:57 PM Changeset in webkit [105359] by cdn@chromium.org
  • 2 edits
    6 copies in branches/chromium/963

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9250028

4:56 PM Changeset in webkit [105358] by Lucas Forschler
  • 7 edits in branches/safari-534.54-branch

Merge 89155.

4:55 PM Changeset in webkit [105357] by cdn@chromium.org
  • 2 edits
    6 copies in branches/chromium/912

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9253028

4:52 PM Changeset in webkit [105356] by tsepez@chromium.org
  • 3 edits in branches/chromium/963

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9255031

4:49 PM Changeset in webkit [105355] by tsepez@chromium.org
  • 3 edits in branches/chromium/912

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9254017

4:42 PM Changeset in webkit [105354] by tsepez@chromium.org
  • 1 edit
    3 copies in branches/chromium/963

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9232038

4:39 PM Changeset in webkit [105353] by tsepez@chromium.org
  • 1 edit
    3 copies in branches/chromium/912

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9253026

4:39 PM Changeset in webkit [105352] by inferno@chromium.org
  • 1 edit
    3 copies in branches/chromium/963

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9250027

4:39 PM Changeset in webkit [105351] by inferno@chromium.org
  • 1 edit
    3 copies in branches/chromium/912

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9260002

4:34 PM Changeset in webkit [105350] by inferno@chromium.org
  • 3 edits
    2 copies in branches/chromium/912

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9249043

4:34 PM Changeset in webkit [105349] by inferno@chromium.org
  • 3 edits
    2 copies in branches/chromium/963

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9252031

4:31 PM Changeset in webkit [105348] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9251030

4:31 PM Changeset in webkit [105347] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9250025

4:30 PM Changeset in webkit [105346] by tsepez@chromium.org
  • 3 edits
    6 copies in branches/chromium/963

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
Review URL: https://chromiumcodereview.appspot.com/9251029

4:26 PM Changeset in webkit [105345] by inferno@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9250022

4:25 PM Changeset in webkit [105344] by tsepez@chromium.org
  • 3 edits
    6 copies in branches/chromium/912

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
BUG=108267
Review URL: https://chromiumcodereview.appspot.com/9250021

4:24 PM Changeset in webkit [105343] by inferno@chromium.org
  • 1 edit in branches/chromium/912/Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9254016

4:22 PM Changeset in webkit [105342] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9250020

4:21 PM Changeset in webkit [105341] by tsepez@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249042

4:18 PM Changeset in webkit [105340] by tsepez@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249041

4:16 PM Changeset in webkit [105339] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

REGRESSION (r88886): Tabs restore blank when running Safari with a nightly build for the first time
https://bugs.webkit.org/show_bug.cgi?id=76587
<rdar://problem/9739135>

Reviewed by Sam Weinig.

  • UIProcess/cf/WebPageProxyCF.cpp:

Change CurrentSessionStateDataVersion back to 2.

  • WebProcess/WebPage/DecoderAdapter.cpp:

(WebKit::DecoderAdapter::decodeString):

  • WebProcess/WebPage/EncoderAdapter.cpp:

(WebKit::EncoderAdapter::encodeString):
Backport the CoreIPC string encoding and decoding functions that were in place prior to r88886.

4:12 PM Changeset in webkit [105338] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/963

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9263001

4:10 PM Changeset in webkit [105337] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/912

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9232034

4:08 PM Changeset in webkit [105336] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9249040

4:07 PM Changeset in webkit [105335] by ojan@chromium.org
  • 2 edits in trunk/Tools

Fix tests from http://trac.webkit.org/changeset/105332.

The code assumed that if you passed an options object with a configuration
attribute that it would have a valid value. A bunch of the testing mocks
do things like having a configuration value of None.

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

(Port.init):

3:40 PM Changeset in webkit [105334] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Update a few chromium expectations.

  • platform/chromium/test_expectations.txt:
3:29 PM Changeset in webkit [105333] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Timothy Hatcher.

No new tests, tested by fast/harness/user-preferred-language.html.

  • platform/mac/Language.mm:

(WebCore::platformUserPreferredLanguages): Don't over-release a the CFStrings returned by

CFLocaleCopyPreferredLanguages.

3:14 PM Changeset in webkit [105332] by ojan@chromium.org
  • 3 edits in trunk/Tools

Shave 0.5 seconds off check-webkit-style runtime for test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=76576

Reviewed by Adam Barth.

Avoid calling default_configuration in base.py. We don't need it for
checking test_expectations.txt style. It takes ~0.5 seconds to run on my
Mac Pro. It's the call to "perl Tools/Scripts/webkit-build-directory --top-level"
from common.executive.

At some point someone should probably look into why that call is so slow
since it's on the critical path for run-webkit-tests and build-webkit startup.

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

(Port.init):

  • Scripts/webkitpy/style/checkers/test_expectations.py:

(TestExpectationsChecker._determine_port_from_exepectations_path):

3:07 PM Changeset in webkit [105331] by jsbell@chromium.org
  • 5 edits in trunk

IndexedDB: Implement create-intermediate-objects semantics when injecting values via keyPaths
https://bugs.webkit.org/show_bug.cgi?id=76493

Source/WebCore:

Reviewed by Tony Chang.

Tests: storage/indexeddb/objectstore-autoincrement.html

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

Per discussion on public-webapps, when injecting a key into a value, create intermediate
objects if necessary.

Reviewed by Tony Chang.

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
3:03 PM Changeset in webkit [105330] by dpranke@chromium.org
  • 7 edits
    1 move
    1 add in trunk

[chromium] move Tools.gyp, switch build-webkit --chromium to All.gyp
https://bugs.webkit.org/show_bug.cgi?id=76505

Reviewed by Tony Chang.

.:

Update with newly-generated files.

  • .gitignore:

Source/WebKit/chromium:

Update path to Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp.

  • All.gyp:
  • gyp_webkit:
  • change to using All.gyp
  • change build_webkit_exes_from_webkit_gyp to 0

Tools:

Update chromium build script to use All.gyp instead of WebKit.gyp

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Renamed from Source/WebKit/chromium/Tools.gyp.
  • Scripts/webkitdirs.pm:
2:58 PM Changeset in webkit [105329] by jsbell@chromium.org
  • 7 edits in trunk

IndexedDB: Invalid keys yielded by key paths should raise exceptions, not error callbacks
https://bugs.webkit.org/show_bug.cgi?id=76075

Reviewed by Tony Chang.

Source/WebCore:

Tests: storage/indexeddb/objectstore-basics.html

  • storage/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::put):

LayoutTests:

  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath.html:
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics.html:
2:49 PM Changeset in webkit [105328] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Fix compile error from bug #76211
https://bugs.webkit.org/show_bug.cgi?id=76575

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

No new tests. Fixing compile only.

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerTextureUpdater::prepareToUpdate):

2:49 PM Changeset in webkit [105327] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Update chromium linux pixel baseline for svg test

  • platform/chromium-linux/svg/custom/linking-a-03-b-viewBox-expected.png:
2:48 PM Changeset in webkit [105326] by Martin Robinson
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] WebKit-3.0.gir does not include information about C includes or exported packages
https://bugs.webkit.org/show_bug.cgi?id=49875

Patch by Evan Nemerson <evan@coeus-group.com> on 2012-01-18
Reviewed by Martin Robinson.

  • GNUmakefile.am: Add some information to the GIR generator to fix

Vala binding generation.

2:43 PM Changeset in webkit [105325] by mitz@apple.com
  • 2 edits in trunk/Tools

Don’t hardcode the path to ‘make‘.

Patch by Sam Weinig <sam@webkit.org> on 2012-01-18
Reviewed by Dan Bernstein.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2:39 PM Changeset in webkit [105324] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

IndexedDB: Check for permission before using IndexedDB from a worker.
https://bugs.webkit.org/show_bug.cgi?id=76500

Reviewed by David Levin.

  • src/IDBFactoryBackendProxy.cpp:

(WebKit::AllowIndexedDBMainThreadBridge::create):
(WebKit::AllowIndexedDBMainThreadBridge::cancel):
(WebKit::AllowIndexedDBMainThreadBridge::result):
(WebKit::AllowIndexedDBMainThreadBridge::signalCompleted):
(WebKit::AllowIndexedDBMainThreadBridge::AllowIndexedDBMainThreadBridge):
(WebKit::AllowIndexedDBMainThreadBridge::allowIndexedDBTask): Call
webView->permissionClient()->allowIndexedDB on the main thread because
ContentSettingsObserver::AllowIndexedDB(), which is called down the
chain, expects to be run on the main thread.
(WebKit::AllowIndexedDBMainThreadBridge::didComplete):
(WebKit::IDBFactoryBackendProxy::allowIDBFromWorkerThread): Wait for
main permission check to complete on main thread before proceeding on
worker thread.

2:37 PM Changeset in webkit [105323] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Add a flag telling plug-in if it can enter sandbox
https://bugs.webkit.org/show_bug.cgi?id=76467

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: (WebKit::NPN_GetValue): Added a private flag.
2:34 PM Changeset in webkit [105322] by jsbell@chromium.org
  • 2 edits in trunk/Tools

Adding myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=76569

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
2:32 PM Changeset in webkit [105321] by abarth@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (r104000): AdBlock extension fails to load/function
https://bugs.webkit.org/show_bug.cgi?id=75554

Reviewed by Andy Estes.

Source/WebCore:

Previously, we would claim the documentElement was available before
we'd actually attached it to the DOM (which we now do via the
attachment queue). This issue was noted in the code with a FIXME
comment, but there was no test coverage for the issue. This patch
resolves the FIXME and adds a test.

Test: userscripts/document-element-available-at-start.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):

LayoutTests:

This test checks that the documentElement is available when user
scripts are run at document start.

  • userscripts/document-element-available-at-start-expected.txt: Added.
  • userscripts/document-element-available-at-start.html: Added.
2:27 PM Changeset in webkit [105320] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[SKIA / CHROMIUM] Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-18
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
2:13 PM Changeset in webkit [105319] by abarth@webkit.org
  • 4 edits in trunk/Tools

Up the cap on test failures tolerated by the EWS so the mac-ews can run to completion
https://bugs.webkit.org/show_bug.cgi?id=76567

Reviewed by Eric Seidel.

Current the AppleMac port has slightly more failures than we allow on
the EWS, causing the mac-ews to spin. This patch ups the limit a bit,
which should hopefully let the mac-ews run to completion. Once
AppleMac has fewer failures, we can lower the cap again.

  • Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:

(LayoutTestResultsReaderTest.test_layout_test_results):

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests):

  • Scripts/webkitpy/tool/steps/steps_unittest.py:
2:07 PM Changeset in webkit [105318] by tommyw@google.com
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] MediaStream API: Make WebMediaStreamDescriptor copyable
https://bugs.webkit.org/show_bug.cgi?id=76526

Reviewed by Darin Fisher.

This patch adds a copy constructor and a assignment operator to WebMediaStreamDescriptor.

  • public/platform/WebMediaStreamDescriptor.h:

(WebKit::WebMediaStreamDescriptor::WebMediaStreamDescriptor):
(WebKit::WebMediaStreamDescriptor::operator=):

  • src/WebMediaStreamDescriptor.cpp:

(WebKit::WebMediaStreamDescriptor::assign):

1:58 PM Changeset in webkit [105317] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] REGRESSION(r105310): Two inspector tests fails
https://bugs.webkit.org/show_bug.cgi?id=76566

  • platform/qt/Skipped: Skip failing tests to paint the bot green.
1:47 PM Changeset in webkit [105316] by jamesr@google.com
  • 2 edits
    4 adds in trunk/LayoutTests

[chromium] Update expectations, add a few new baselines.

  • platform/chromium/http/tests/misc/bubble-drag-events-expected.txt: Added.
  • platform/chromium/http/tests/misc/drag-over-iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/http/tests/misc/iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
1:45 PM Changeset in webkit [105315] by eric.carlson@apple.com
  • 33 edits
    4 adds in trunk

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Alexey Proskuryakov.

.:

  • Source/autotools/symbols.filter: List the new functions.

Source/WebCore:

Test: fast/harness/user-preferred-language.html

  • WebCore.exp.in: Export the new functions.
  • WebCore.order: Ditto.
  • Target.pri: Include new files.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCoreTestSupport.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/Language.cpp:

(WebCore::defaultLanguage): Return userPreferredLanguages[0].
(WebCore::preferredLanguagesOverride): New, return the languages override.
(WebCore::overrideUserPreferredLanguages): New, set the languages override.
(WebCore::userPreferredLanguages): New, return the languages array.

  • platform/Language.h:
  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/chromium/LanguageChromium.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/efl/LanguageEfl.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/gtk/LanguageGtk.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/mac/Language.mm:

(+[WebLanguageChangeObserver _webkit_languagePreferencesDidChange]): Flag the user languages

as invalid.

(WebCore::platformLanguage): Removed.
(WebCore::platformUserPreferredLanguages): New, return the list of user preferred languages.

  • platform/qt/LanguageQt.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/win/LanguageWin.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • testing/Internals.cpp:

(WebCore::Internals::userPreferredLanguages): New, return the platform's user preferred languages.
(WebCore::Internals::setUserPreferredLanguages): New, override the user's preferred languages.

  • testing/Internals.h:
  • testing/Internals.idl: Add userPreferredLanguages.
  • testing/js/JSInternalsCustom.cpp:

(WebCore::JSInternals::userPreferredLanguages): New.
(WebCore::JSInternals::setUserPreferredLanguages): New.

  • testing/v8/V8InternalsCustom.cpp:

(WebCore::V8Internals::userPreferredLanguagesAccessorGetter): New.
(WebCore::V8Internals::userPreferredLanguagesAccessorSetter): New.

Source/WebKit2:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode the languages array.
(WebKit::WebProcessCreationParameters::decode): Decode the languages array.

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::languageChanged): Override the WebProcess userPreferredLanguages.
(WebKit::WebContext::ensureWebProcess): Initialize parameters.languages.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Override user languages array.
(WebKit::WebProcess::userPreferredLanguagesChanged): Ditto.

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in: Define UserPreferredLanguagesChanged.
  • win/WebKit2.def: Export the new functions.
  • win/WebKit2CFLite.def: Ditto.

Tools:

  • GNUmakefile.am: Add JSInternalsCustom.cpp.

LayoutTests:

  • fast/harness/user-preferred-language-expected.txt: Added.
  • fast/harness/user-preferred-language.html: Added.
1:41 PM Changeset in webkit [105314] by commit-queue@webkit.org
  • 14 edits
    1 add in trunk/Source

[chromium] Enable tracking opaque region in Skia graphics context, return it from LayerTextureUpdater
https://bugs.webkit.org/show_bug.cgi?id=76211

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in LayerTextureUpdaterTest.cpp

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::createTextureUpdater):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore::LayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/PlatformCanvas.h:

(WebCore::PlatformCanvas::Painter::skiaContext):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::SkPictureCanvasLayerTextureUpdater::SkPictureCanvasLayerTextureUpdater):
(WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):
(WebCore::SkPictureCanvasLayerTextureUpdater::setOpaque):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/LayerTextureUpdaterTest.cpp: Added.

(WebCore::TestLayerPainterChromium::TestLayerPainterChromium):
(WebCore::TestLayerPainterChromium::paint):
(WebCore::PaintFillOpaque::operator()):
(WebCore::PaintFillAlpha::operator()):
(WebCore::TEST):

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeLayerTextureUpdater::prepareToUpdate):

1:34 PM Changeset in webkit [105313] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] DumpRenderTree converts "file:///" to a path differently
https://bugs.webkit.org/show_bug.cgi?id=76563

  • platform/qt/Skipped: Skip http/tests/misc/iframe-invalid-source-crash.html until fix.
1:23 PM Changeset in webkit [105312] by jamesr@google.com
  • 5 edits
    2 adds
    1 delete in trunk/LayoutTests

[chromium] Update pixel results due to skia roll

  • platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
  • platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Removed.
  • platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
1:03 PM Changeset in webkit [105311] by commit-queue@webkit.org
  • 16 edits
    4 copies
    2 moves in trunk/Source

[chromium] Refactor canvas, plugin, and video drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=76274

Patch by Tim Dresser <tdresser@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

This is the first step in refactoring canvas, plugin, and video drawing.
The CCCustomLayerDrawQuad implementation has been copied to CCCanvasDrawQuad, CCPluginDrawQuad and CCVideoDrawQuad.
All references to CustomLayer have been removed.

As this is a refactor, no new tests were added. CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers was modified to
no longer test culling.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawCanvasQuad):
(WebCore::LayerRendererChromium::drawVideoQuad):
(WebCore::LayerRendererChromium::drawPluginQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/cc/CCCanvasDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCCanvasDrawQuad::create):
(WebCore::CCCanvasDrawQuad::CCCanvasDrawQuad):

  • platform/graphics/chromium/cc/CCCanvasDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCCanvasDrawQuad::layer):

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

(WebCore::CCCanvasLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
  • platform/graphics/chromium/cc/CCDrawQuad.cpp:

(WebCore::CCDrawQuad::toCanvasDrawQuad):
(WebCore::CCDrawQuad::toVideoDrawQuad):
(WebCore::CCDrawQuad::toPluginDrawQuad):

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

(WebCore::CCLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCPluginDrawQuad::create):
(WebCore::CCPluginDrawQuad::CCPluginDrawQuad):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCPluginDrawQuad::layer):

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

(WebCore::CCPluginLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:
  • platform/graphics/chromium/cc/CCQuadCuller.cpp:
  • platform/graphics/chromium/cc/CCVideoDrawQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCVideoDrawQuad::create):
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):

  • platform/graphics/chromium/cc/CCVideoDrawQuad.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCVideoDrawQuad::layer):

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

(WebCore::CCVideoLayerImpl::appendQuads):

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

Source/WebKit/chromium:

No longer test culling in CCLayerTreeHostImplTest.blendingOffWhenDrawingLayers.

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit::BlendStateCheckLayer::appendQuads):
(WebKit::BlendStateCheckLayer::setExpectation):
(WebKit::BlendStateCheckLayer::quadsAppended):
(WebKit::BlendStateCheckLayer::BlendStateCheckLayer):
(WebKit::TEST_F):

12:59 PM Changeset in webkit [105310] by vsevik@chromium.org
  • 9 edits
    4 adds in trunk

Web Inspector: Unsafe cross origin access errors should show stack trace in console.
https://bugs.webkit.org/show_bug.cgi?id=73099

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/console-cross-origin-iframe-logging.html

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::addConsoleMessage):

  • dom/ScriptExecutionContext.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::shouldAllowNavigation):

  • page/Console.cpp:

(WebCore::Console::addMessage):

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

(WebCore::PostMessageTimer::PostMessageTimer):
(WebCore::PostMessageTimer::stackTrace):
(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::postMessageTimerFired):
(WebCore::DOMWindow::printErrorMessage):

LayoutTests:

  • http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
  • http/tests/inspector/console-cross-origin-iframe-logging.html: Added.
  • http/tests/inspector/resources/cross-origin-iframe.html: Added.
  • platform/chromium/http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
12:33 PM Changeset in webkit [105309] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.54-branch

Merged r98935.

12:29 PM Changeset in webkit [105308] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebCore

Add [CallWith] support for attributes in JSC/V8 idl code generators.
Part of https://bugs.webkit.org/show_bug.cgi?id=76035

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-18
Reviewed by Adam Barth.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateAttributeCallWith):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateAttributeCallWith):

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:

(WebDOMTestObj::withScriptStateAttribute):
(WebDOMTestObj::setWithScriptStateAttribute):
(WebDOMTestObj::withScriptExecutionContextAttribute):
(WebDOMTestObj::setWithScriptExecutionContextAttribute):
(WebDOMTestObj::withScriptStateAttributeRaises):
(WebDOMTestObj::setWithScriptStateAttributeRaises):
(WebDOMTestObj::withScriptExecutionContextAttributeRaises):
(WebDOMTestObj::setWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_get_with_script_state_attribute):
(webkit_dom_test_obj_set_with_script_state_attribute):
(webkit_dom_test_obj_get_with_script_execution_context_attribute):
(webkit_dom_test_obj_set_with_script_execution_context_attribute):
(webkit_dom_test_obj_get_with_script_state_attribute_raises):
(webkit_dom_test_obj_set_with_script_state_attribute_raises):
(webkit_dom_test_obj_get_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjWithScriptStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAttribute):
(WebCore::jsTestObjWithScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:

(-[DOMTestObj withScriptStateAttribute]):
(-[DOMTestObj setWithScriptStateAttribute:]):
(-[DOMTestObj withScriptExecutionContextAttribute]):
(-[DOMTestObj setWithScriptExecutionContextAttribute:]):
(-[DOMTestObj withScriptStateAttributeRaises]):
(-[DOMTestObj setWithScriptStateAttributeRaises:]):
(-[DOMTestObj withScriptExecutionContextAttributeRaises]):
(-[DOMTestObj setWithScriptExecutionContextAttributeRaises:]):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjInternal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrSetter):

12:18 PM Changeset in webkit [105307] by ap@apple.com
  • 3 edits in trunk/LayoutTests

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Updating more layout test results.

  • fast/loader/url-parse-1-expected.txt: This was already in the patch, just failed to land.
  • http/tests/misc/bubble-drag-events-expected.txt: Missed that one among failure noise.
12:16 PM Changeset in webkit [105306] by eae@chromium.org
  • 3708 edits
    382 copies
    47 deletes in branches/subpixellayout

Merging trunk changes up until 105194 into subpixel branch.

12:12 PM Changeset in webkit [105305] by commit-queue@webkit.org
  • 4 edits in trunk

[Qt][WK2] Broken build with undefined reference to shm_open and shm_unlink
https://bugs.webkit.org/show_bug.cgi?id=76538

Patch by Luciano Wolf <Luciano Miguel Wolf> on 2012-01-18
Reviewed by Tor Arne Vestbø.

The -lrt parameter was coming before -lWebKit2 during linkage.

Moved rt lib inclusion from Source/api.pri to WebKit2.pri as it should be aware
of its own dependencies instead of letting WebKit guess about. Letting
it on api.pri can lead to a wrong parameter's order during linker phase.
Ubuntu 11.10 was giving errors about SharedMemory (shm_open and
shm_unlink undefined symbols).

.:

  • Source/api.pri:

Source/WebKit2:

The issue was fixed with the help of Aloisio Almeida and Lauro Venancio.

  • WebKit2.pri:
12:04 PM WebKit Team edited by jonlee@apple.com
Adding Jon Lee as committer. (diff)
11:59 AM Changeset in webkit [105304] by reed@google.com
  • 2 edits in trunk/LayoutTests

add test expections ahead of skia DEPS roll
https://bugs.webkit.org/show_bug.cgi?id=76477

Reviewed by NOBODY: Unreviewed
see http://code.google.com/p/chromium/issues/detail?id=110493

  • platform/chromium/test_expectations.txt:
11:48 AM Changeset in webkit [105303] by jamesr@google.com
  • 15 edits
    2 adds
    2 deletes in trunk/LayoutTests

[chromium] Update expectations and baselines for various tests

  • platform/chromium-linux/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-all-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png: Removed.
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Removed.
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/chromium-win/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium/test_expectations.txt:
11:39 AM Changeset in webkit [105302] by abarth@webkit.org
  • 2 edits in trunk/Tools

Add Chromium Linux GPU 32 to the list of allowed Chromium Linux
configurations.

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

(ChromiumLinuxPort.init):

11:24 AM Changeset in webkit [105301] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/mac

Merged r105291.

10:59 AM Changeset in webkit [105300] by Lucas Forschler
  • 1 edit in branches/safari-534.54-branch/LayoutTests/fast/dom/importNode-confusing-localName.html

Merge layoutest fix from 10695015.

10:58 AM Changeset in webkit [105299] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: fix failing inspector test.

  • inspector/elements/set-html-via-resource.html:
10:57 AM Changeset in webkit [105298] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.54-branch

Merged r104275.

10:51 AM Changeset in webkit [105297] by Lucas Forschler
  • 3 edits
    6 copies in branches/safari-534.54-branch

Merged r97088.

10:49 AM Changeset in webkit [105296] by timothy_horton@apple.com
  • 5 edits
    3 adds in trunk

[CG] Rasterized scaling of transformed SVG shapes with gradient fill and -webkit-svg-shadow applied
https://bugs.webkit.org/show_bug.cgi?id=76482
<rdar://problem/10415483>

Reviewed by Simon Fraser.

Scale the CGLayer used when filling or stroking a shadowed path or rect with
a gradient in GraphicsContextCG. Previously, the CGLayer was created and rendered
into at the untransformed size of the shape, leading to pixelation when it was
then scaled up and drawn into the destination.

Add AffineTransform::mapSize() to map a size through a transformation.

Test: svg/custom/transform-with-shadow-and-gradient.svg

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::strokeRect):

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::mapSize): Added.

  • platform/graphics/transforms/AffineTransform.h:

Add a test that ensures that SVG shapes are drawn crisply when transformed
if they have both a gradient fill and -webkit-svg-shadow applied.

  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.png: Added.
  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.txt: Added.
  • svg/custom/transform-with-shadow-and-gradient.svg: Added.
10:46 AM Changeset in webkit [105295] by dmazzoni@google.com
  • 18 edits
    18 adds in trunk

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-global-point-iframe.html
platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
10:41 AM Changeset in webkit [105294] by ap@apple.com
  • 7 edits
    3 adds in trunk

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Reviewed by Darin Adler.

Test: fast/url/degenerate-file-base.html

  • platform/KURL.cpp: (WebCore::KURL::parse): Handle degenerate file URLs properly.
10:41 AM Changeset in webkit [105293] by Lucas Forschler
  • 6 edits
    2 copies in branches/safari-534.54-branch

Merged r95371.

10:20 AM Changeset in webkit [105292] by loislo@chromium.org
  • 4 edits in trunk/Source/WebCore

[chromium] Web Inspector: highlight DOM nodes from detached DOM trees.
https://bugs.webkit.org/show_bug.cgi?id=76545

Reviewed by Yury Semikhatsky.

  • inspector/front-end/DetailedHeapshotGridNodes.js:

(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotNode.prototype.get isNativeRoot):
(WebInspector.HeapSnapshotNode.prototype.get isDetachedDOMTree):
(WebInspector.HeapSnapshot.prototype._init):
(WebInspector.HeapSnapshot.prototype._markDetachedDOMTreeNodes):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):
(WebInspector.HeapSnapshot.prototype._calculateFlags):

  • inspector/front-end/heapProfiler.css:

(.detached-dom-tree-node):

10:12 AM Changeset in webkit [105291] by enrica@apple.com
  • 4 edits
    1 add in trunk

Source/WebKit/mac: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Starting with Lion, there is no more NSForegroundColor attribute in the dictionary
if the color matches the default (solid black).
The fix consists in treating the lack of color as solid black instead of transparent as
we did before.

Added a TestWebKitAPI test.

Reviewed by Darin Adler and Dan Bernstein.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _styleForAttributeChange:]):

Tools: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Added TestWebKitAPI test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added new test file.
  • TestWebKitAPI/Tests/mac/InspectorBar.mm: Added test that calls

changeAttributes to the WebView.

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

Cross-platform processor core counter fix
https://bugs.webkit.org/show_bug.cgi?id=76540

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

I attached "OS(FREEBSD)" to "#if OS(DARWIN)
OS(OPENBSD) OS(NETBSD)"

and I removed the OS checking macros from ParallelJobsGeneric.cpp because
the NumberOfCores.cpp contains them for counting CPU cores.
The processor core counter patch located at
https://bugs.webkit.org/show_bug.cgi?id=76530

  • wtf/NumberOfCores.cpp:
  • wtf/ParallelJobsGeneric.cpp:
10:06 AM Changeset in webkit [105289] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Listen to GDK_SCROLL_MASK
https://bugs.webkit.org/show_bug.cgi?id=76529

Source/WebKit/gtk:

Set GDK_SCROLL_MASK explicitly, as WebKitWebView does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • webkit/webkitwebview.cpp:

(webkit_web_view_realize):

Source/WebKit2:

Set GDK_SCROLL_MASK explicitly, as WebKitWebViewBase does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseRealize):

9:56 AM Changeset in webkit [105288] by pfeldman@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: there should be a way to set HTML for given frame.
https://bugs.webkit.org/show_bug.cgi?id=76548

Reviewed by Yury Semikhatsky.

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

(WebCore::InspectorPageAgent::setDocumentContent):

  • inspector/InspectorPageAgent.h:
  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMModelResourceBinding.prototype.setContent.callbackWrapper):
(WebInspector.DOMModelResourceBinding.prototype.setContent):

9:41 AM Changeset in webkit [105287] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fontCache related assertion revealed by r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Unreviewed gardening. Skip a guilty test to paint the bot green.

  • platform/qt/Skipped:
9:40 AM Changeset in webkit [105286] by sergio@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] [regression] A couple of tests failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76549

Reviewed by Gustavo Noronha Silva.

Fixes a regression added by r105253. The method that
RenderThemeGtk needs to overwrite is popsMenuBySpaceOrReturn()
instead of popsMenuByArrowKeys().

No new tests as it's already covered by
fast/forms/select-popup-pagekeys.html and
fast/forms/select/menulist-onchange-fired-with-key-up-down.html
that started to fail after the revision mentioned above.

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuBySpaceOrReturn):

9:35 AM Changeset in webkit [105285] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix the debug build.

Unreviewed.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(setInputPanelVisible): Remove assertion from non-member function.

9:27 AM Changeset in webkit [105284] by pfeldman@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

Not reviewed: adding missing test data file.

  • inspector/elements/resources/set-html-via-resource-iframe.html: Added.
  • platform/qt/Skipped:
9:19 AM Changeset in webkit [105283] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105262.
https://bugs.webkit.org/show_bug.cgi?id=76457

  • platform/qt/Skipped: Skip inspector/elements/set-html-via-resource.html until proper fix.
9:14 AM Changeset in webkit [105282] by caseq@chromium.org
  • 7 edits in trunk

Web Inspector: omit compression field in HAR entries for resources coming from cache
https://bugs.webkit.org/show_bug.cgi?id=76543

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/HAREntry.js:

(WebInspector.HAREntry.prototype._buildContent):
(WebInspector.HAREntry.prototype.get responseCompression):

LayoutTests:

  • http/tests/inspector/resource-har-conversion-expected.txt:
  • http/tests/inspector/resource-har-headers-expected.txt:
  • http/tests/inspector/resource-parameters-expected.txt:
  • platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt: Removed.
9:09 AM Changeset in webkit [105281] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip failing tests, simplify qt-wk2 skipped list.

  • platform/qt-wk2/Skipped:
  • platform/wk2/Skipped:
8:57 AM Changeset in webkit [105280] by mihnea@adobe.com
  • 5 edits in trunk

[CSSRegions]Fix region style code in CSSStyleSelector
https://bugs.webkit.org/show_bug.cgi?id=76453

Reviewed by Antti Koivisto.

Source/WebCore:

Follow up after comments in https://bugs.webkit.org/show_bug.cgi?id=76064.
With the new approach, the css rule specificity is correctly taken into account
when applying the region style rule.
No new tests, the region style tests are still disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair):
(WebCore::CSSStyleSelector::CSSStyleSelector):
(WebCore::CSSStyleSelector::addMatchedDeclaration):
(WebCore::CSSStyleSelector::collectMatchingRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForRegion):
(WebCore::CSSStyleSelector::matchRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::checkRegionStyle):
(WebCore::CSSStyleSelector::checkRegionSelector):
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::RuleSet):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::addRegionRule):
(WebCore::RuleSet::addRulesFromSheet):
(WebCore::isInsideRegionRule):
(WebCore::CSSStyleSelector::applyDeclaration):
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::isValidRegionStyleProperty):
(WebCore::CSSStyleSelector::applyProperty):

  • css/CSSStyleSelector.h:

LayoutTests:

Fix the test as it was not taking into account the selector specificity.

  • fast/regions/region-style-block-background-color.html:
8:39 AM Changeset in webkit [105279] by jer.noble@apple.com
  • 7 edits in trunk

Mac fails to fire an 'error' event for a <video> <source> having an URL with no file extension
https://bugs.webkit.org/show_bug.cgi?id=76494

Reviewed by Eric Carlson.

No new tests; fixes compositing/video/video-with-invalid-source.html. Modified
media/video-source-error-no-candidate.html to check error condition.

When we run out of media engines for a given resource, inform the media player client
that resource loading failed by calling mediaPlayerResourceNotSupported().

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerResourceNotSupported):

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::loadWithNextMediaEngine):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerResourceNotSupported):

8:06 AM Changeset in webkit [105278] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

WebKit2 needs layoutTestController.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=42197

Unreviewed gardening, skip failing tests due to this bug.

  • platform/wk2/Skipped:
8:02 AM Changeset in webkit [105277] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Test fonts metric differencies with Qt5
https://bugs.webkit.org/show_bug.cgi?id=75710

Unreviewed gardening, unskip now passing tests after tesfont fix

  • platform/qt-5.0/Skipped:
7:42 AM Changeset in webkit [105276] by Alexandru Chiculita
  • 19 edits
    11 adds in trunk

CSS Shaders: Parse float parameters for the custom() filter syntax
https://bugs.webkit.org/show_bug.cgi?id=76253

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Custom CSS filters allow passing parameters from CSS to the underlying rendering technology (in this case WebGL Shaders).
This patch adds support for parameters of types float, vec2, vec3 and vec4.

https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html#feCustomParamsAttribute

Tests: css3/filters/effect-custom-combined-missing.html

css3/filters/effect-custom-parameters.html

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added CustomFilterParameter.h, CustomFilterNumberParameter.h and CustomFilterOperation.cpp to the projects.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterNumberParameter):
(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterParameter):
(WebCore::CSSComputedStyleDeclaration::valueForFilter):

Added the computed parameters in alphabetic order (CustomFilterOperation always keeps the parameters sorted).

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSStyleSelector.cpp:

(WebCore::sortParametersByNameComparator):
(WebCore::CSSStyleSelector::parseCustomFilterNumberParamter):
(WebCore::CSSStyleSelector::parseCustomFilterParameterList):
(WebCore::CSSStyleSelector::createCustomFilterOperation):

Added parsing for float, vec2, vec3 and vec4. The values are space separated.

  • css/CSSStyleSelector.h:
  • platform/graphics/filters/CustomFilterNumberParameter.h: Added.

(WebCore::CustomFilterNumberParameter::create):
(WebCore::CustomFilterNumberParameter::size):
(WebCore::CustomFilterNumberParameter::valueAt):
(WebCore::CustomFilterNumberParameter::addValue):
(WebCore::CustomFilterNumberParameter::CustomFilterNumberParameter):

  • platform/graphics/filters/CustomFilterOperation.cpp: Added.

(WebCore::CustomFilterOperation::CustomFilterOperation):
(WebCore::CustomFilterOperation::~CustomFilterOperation):

Moved constructor and destructor in CustomFilterOperation.cpp to avoid including CustomFilterParameter everywhere.

(WebCore::CustomFilterOperation::hasSortedParameterList):

Debug runtime check that we always have parameters in alphabetic order.

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::create):
(WebCore::CustomFilterOperation::parameters):

Just added the parameters list. Not using a map, but keeping the items sorted by name. We need them sorted
to make it easy and fast to merge two CustomFilterOperations during animations.

  • platform/graphics/filters/CustomFilterParameter.h: Added.

(WebCore::CustomFilterParameter::~CustomFilterParameter):
(WebCore::CustomFilterParameter::parameterType):
(WebCore::CustomFilterParameter::name):
(WebCore::CustomFilterParameter::CustomFilterParameter):

  • platform/graphics/filters/CustomFilterShader.cpp:

(WebCore::CustomFilterShader::uniformLocationByName):

  • platform/graphics/filters/CustomFilterShader.h:
  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):
(WebCore::FECustomFilter::platformApplySoftware):
(WebCore::FECustomFilter::bindProgramNumberParameters):
(WebCore::FECustomFilter::bindProgramParameters):

Added code that maps the parameters from CSS to WebGL.

(WebCore::FECustomFilter::bindProgramAndBuffers):

  • platform/graphics/filters/FECustomFilter.h:
  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

Fixed a case when the filter was not created, letting the filter add itself as a source of its own.
Also added a test case for this particular case: css3/filters/effect-custom-combined-missing.html.

LayoutTests:

  • css3/filters/custom-filter-property-computed-style-expected.txt:
  • css3/filters/effect-custom-combined-missing-expected.png: Added.
  • css3/filters/effect-custom-combined-missing-expected.txt: Added.
  • css3/filters/effect-custom-combined-missing.html: Added.

Testing that missing shader filters will not enter an infinite loop.

  • css3/filters/effect-custom-parameters-expected.png: Added.
  • css3/filters/effect-custom-parameters-expected.txt: Added.
  • css3/filters/effect-custom-parameters.html: Added.
  • css3/filters/resources/color-offset-parameters.fs: Added.
  • css3/filters/resources/vertex-offset-parameters.vs: Added.

Testing parameter passing from CSS to WebGL.

  • css3/filters/script-tests/custom-filter-property-computed-style.js:

Added computed style checks for number parameters.

7:36 AM Changeset in webkit [105275] by kenneth@webkit.org
  • 10 edits in trunk/Source/WebKit2

[Qt] Zoom in to the focused node only when vkb starts becoming visible https://bugs.webkit.org/show_bug.cgi?id=76174

Reviewed by Simon Hausmann.

Remove the old code which always zoomed in when something got focus,
even via JavaScript, and replaced it with code checking the state of
the Qt input panel.

Also make sure that we do not zoom in or request the input panel if
the item is not focused.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::~QtWebPageEventHandler):
(QtWebPageEventHandler::inputPanelVisibleChanged):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::respondToChangedSelection):

7:21 AM Changeset in webkit [105274] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: resource tree model leaks frames
https://bugs.webkit.org/show_bug.cgi?id=76533

Reviewed by Pavel Feldman.

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._frameDetached):
(WebInspector.ResourceTreeModel.prototype._removeFrame):
(WebInspector.ResourceTreeFrame.prototype._removeChildFrame):

7:07 AM Changeset in webkit [105273] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Unreviewed cross-MinGW buildfix after r105270.

  • wtf/NumberOfCores.cpp: Use windows.h instead of Windows.h.
6:20 AM Changeset in webkit [105272] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Enable support for Open Script dialog based on FilteredItemSelectionDialog.
https://bugs.webkit.org/show_bug.cgi?id=76466

Reviewed by Pavel Feldman.

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

(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.OpenResourceDialog.filterOutEmptyURLs):
(WebInspector.OpenResourceDialog):
(WebInspector.OpenResourceDialog.install):
(WebInspector.OpenResourceDialog._show):
(WebInspector.OpenResourceDialog.createShortcut):
(WebInspector.OpenResourceDialog.prototype.itemTitleAt):
(WebInspector.OpenResourceDialog.prototype.itemKeyAt):
(WebInspector.OpenResourceDialog.prototype.itemsCount):
(WebInspector.OpenResourceDialog.prototype.requestItems):
(WebInspector.OpenResourceDialog.prototype.selectItem):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

6:15 AM Changeset in webkit [105271] by rgabor@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt] Update another SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.txt:
6:15 AM Changeset in webkit [105270] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk/Source

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

Source/JavaScriptCore:

Two files have been created that include the processor core counter function.
It used to be in ParallelJobsGeneric.h/cpp before.

(JSC::Options::initializeOptions):

  • wtf/CMakeLists.txt:
  • wtf/NumberOfCores.cpp: Added.

(WTF::numberOfProcessorCores):

  • wtf/NumberOfCores.h: Added.
  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ParallelEnvironment):

  • wtf/ParallelJobsGeneric.h:

Source/WTF:

Two files have been added to the project, namely NumberOfCores.h/cpp,
that include a CPU core number determining function.

  • WTF.pro:
5:57 AM Changeset in webkit [105269] by rgabor@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] svg/carto.net/frameless-svg-parse-error.html asserting after r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
5:52 AM Changeset in webkit [105268] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Not reviewed: follow up to r105262, fixing front-end compilation.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMDocument):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):

5:35 AM Changeset in webkit [105267] by kbalazs@webkit.org
  • 10 edits in trunk

[Qt] Consolidate layout test crash logging
https://bugs.webkit.org/show_bug.cgi?id=75088

Reviewed by Simon Hausmann.

Move backtrace generating logic into WTFReportBacktrace
and add a way to deinstall signal handlers if we know
that we have already printed the backtrace.

.:

  • Source/qtwebkit-export.map:

Source/JavaScriptCore:

(WTFLogLocker::WTFReportBacktrace):
(WTFLogLocker::WTFSetCrashHook):
(WTFLogLocker::WTFInvokeCrashHook):

  • wtf/Assertions.h:

Tools:

  • DumpRenderTree/qt/main.cpp:

(crashHandler):
(setupSignalHandlers):
(WTFCrashHook):
(main):

  • WebKitTestRunner/InjectedBundle/qt/InjectedBundleQt.cpp:

(WTR::crashHandler):
(WTR::setupSignalHandlers):
(WTR::crashHook):
(WTR::InjectedBundle::platformInitialize):

5:26 AM Changeset in webkit [105266] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after testfonts update.

  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.png:
  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.txt:
5:15 AM Changeset in webkit [105265] by rgabor@webkit.org
  • 23 edits in trunk/LayoutTests

[Qt] Update some SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/linking-a-03-b-all-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-all-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-expected.png:
  • platform/qt/svg/custom/pointer-events-image-expected.txt:
  • platform/qt/svg/custom/pointer-events-text-expected.png:
  • platform/qt/svg/custom/pointer-events-text-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
5:00 AM Changeset in webkit [105264] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] platform/gtk/accessibility/combo-box-collapsed-selection-changed.html is failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76531

Unreviewed. Skip test now failing in the GTK port.

  • platform/gtk/Skipped: Skip test.
5:00 AM Changeset in webkit [105263] by loislo@chromium.org
  • 2 edits in trunk/Tools

Unreviewed build fix after r105256.

There was a cyclic dependency between self._port and self._host assigments.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):

4:52 AM Changeset in webkit [105262] by pfeldman@chromium.org
  • 10 edits
    2 adds in trunk

Web Inspector: track HTML revisions when editing DOM and / or upon free flow edits.
https://bugs.webkit.org/show_bug.cgi?id=76457

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-html-via-resource.html

  • inspector/DOMEditor.cpp:

(WebCore::DOMEditor::patchNode):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::getOuterHTML):
(WebCore::InspectorDOMAgent::setOuterHTML):
(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.setNodeName):
(WebInspector.DOMNode.prototype.setNodeValue):
(WebInspector.DOMNode.prototype.setAttribute):
(WebInspector.DOMNode.prototype.setAttributeValue):
(WebInspector.DOMNode.prototype.removeAttribute):
(WebInspector.DOMNode.prototype.getChildNodes.mycallback):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype.setOuterHTML):
(WebInspector.DOMNode.prototype.removeNode):
(WebInspector.DOMNode.prototype.moveTo):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent):
(WebInspector.DOMAgent.prototype._setDocument):
(WebInspector.DOMAgent.prototype._buildHighlightConfig):
(WebInspector.DOMAgent.prototype._markRevision):
(WebInspector.DOMAgent.prototype._captureDOM.callback):
(WebInspector.DOMAgent.prototype._captureDOM):
(WebInspector.DOMModelResourceBinding.prototype.setContent):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):
(WebInspector.DOMModelResourceBinding.prototype.setContent.withDocument):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):

LayoutTests:

  • inspector/elements/resources/set-outer-html-body-iframe.html:
  • inspector/elements/set-html-via-resource-expected.txt: Added.
  • inspector/elements/set-html-via-resource.html: Added.
4:46 AM Changeset in webkit [105261] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Popover does not disappear, causes debugger failure.
https://bugs.webkit.org/show_bug.cgi?id=71363

Reviewed by Pavel Feldman.

This is a work-around simple enough for a merge. The real fix would
be to get TextViewer to manage the highlight on its own, so it's not
accidently removed while re-building DOM for the text chunk.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._onHidePopover):

3:33 AM Changeset in webkit [105260] by vestbo@webkit.org
  • 2 edits in trunk/Tools

Add new watchlist rule for the Qt build system

Reviewed by Simon Hausmann.

3:32 AM Changeset in webkit [105259] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Move OTHER_FILES from WebKit.pro to Tools.pro

Reviewed by Simon Hausmann.

3:32 AM Changeset in webkit [105258] by vestbo@webkit.org
  • 4 edits in trunk/Tools

[Qt] Allow building only a subset of the WebKit sub-projects

Fixes build-jsc, broken in r104825.

We no longer need the intermediate buildQMakeQtProject(), as we're the
only port using qmake, and buildQMakeProject is now highly Qt specific.

<http://webkit.org/b/76179>

Reviewed by Simon Hausmann.

3:25 AM Changeset in webkit [105257] by Philippe Normand
  • 11 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105247 and r105253.

  • platform/gtk/css3/images/cross-fade-overflow-position-expected.txt:
  • platform/gtk/fast/forms/implicit-submission-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-expected.txt:
2:52 AM Changeset in webkit [105256] by rniwa@webkit.org
  • 4 edits in trunk/Tools

run-perf-tests should generate a json file that summaries the result
https://bugs.webkit.org/show_bug.cgi?id=76504

Reviewed by Adam Barth.

Add an ability to generate a json file to run-perf-test in the preparation for perf bots.
New option --outout-json-path specifies the json file's path, and --source-json-path specifies
another json file to be merged into the generated json file.

Also fixed a bug that --build wasn't set by default.

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

(TestPort.webkit_base):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner):
(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_json_if_specified):
(PerfTestsRunner._process_chromium_style_test_result):
(PerfTestsRunner._process_parser_test_result):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(MainTest):
(create_runner):
(test_run_test_set):
(test_run_test_set_for_parser_tests):
(test_run_test_set_with_summary_json):
(test_collect_tests):
(test_parse_args):

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

Unreviewed build fix.
https://bugs.webkit.org/show_bug.cgi?id=76525

Removed missing build headers.

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18

  • WebCore.xcodeproj/project.pbxproj:
2:40 AM Changeset in webkit [105254] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, fix clashing svg/custom/linking-a-03-b-viewBox.svg expectation.

  • platform/chromium/test_expectations.txt:
2:39 AM Changeset in webkit [105253] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Use RenderTheme in HTMLSelectElement instead of #defines.
<http://webkit.org/b/76519>

Patch by Jun Mukai <mukai@chromium.org> on 2012-01-18
Reviewed by Kent Tamura.

Tests: no new tests because of no behavioral changes.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuByArrowKeys):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::popsMenuByArrowKeys):
(WebCore::RenderTheme::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeChromiumLinux.h:

(WebCore::RenderThemeChromiumLinux::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeMac.h:

(WebCore::RenderThemeMac::popsMenuByArrowKeys):

2:15 AM Changeset in webkit [105252] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Merge 105140 - Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9252006

2:08 AM Changeset in webkit [105251] by rolandsteiner@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed: Chromium test_expectations.txt update

  • platform/chromium/test_expectations.txt:
2:00 AM Changeset in webkit [105250] by inferno@chromium.org
  • 3 edits
    3 adds in trunk

Source/WebCore: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

updateWidgetPositions can blow away the owning renderer
and its frameview, so need to protect it with refptr.

Test: svg/dom/parent-view-layout-crash.html

  • page/FrameView.cpp:

(WebCore::FrameView::forceLayoutParentViewIfNeeded):

LayoutTests: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

  • svg/dom/parent-view-layout-crash-expected.txt: Added.
  • svg/dom/parent-view-layout-crash.html: Added.
  • svg/dom/resources/svg-font-face.svg: Added.
1:22 AM EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
1:22 AM EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
1:15 AM Changeset in webkit [105249] by commit-queue@webkit.org
  • 29 edits
    6 moves in trunk

Move ShadowContentElement from dom/ to html/ and make ShadowContentElement subclass of HTMLElement.
https://bugs.webkit.org/show_bug.cgi?id=76241

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Dimitri Glazkov.

.:

  • Source/autotools/symbols.filter: Exposed necessary symbols.

Source/WebCore:

Renamed ShadowContentElement to HTMLContentElement, and move it from dom/ to html/.
Also, ShadowInclusionSelector and ShadowContentSelectorQuery are renamed to
Content InclusionSelector and ContentSelectorQuery respectively.

No new tests, because no change in behavior.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMAllInOne.cpp:
  • dom/NodeRenderingContext.cpp:

(WebCore::nextRendererOf):
(WebCore::previousRendererOf):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):

  • dom/NodeRenderingContext.h:

(WebCore::NodeRenderingContext::includer):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::includerFor):
(WebCore::ShadowRoot::inclusions):
(WebCore::ShadowRoot::ensureInclusions):

  • dom/ShadowRoot.h:
  • html/HTMLDetailsElement.cpp:

(WebCore::DetailsContentElement::DetailsContentElement):
(WebCore::DetailsSummaryElement::DetailsSummaryElement):

  • html/HTMLElementsAllInOne.cpp:
  • html/HTMLSummaryElement.cpp:

(WebCore::SummaryContentElement::SummaryContentElement):

  • html/shadow/ContentInclusionSelector.cpp: Renamed from Source/WebCore/dom/ShadowInclusionSelector.cpp.

(WebCore::ShadowInclusion::append):
(WebCore::ShadowInclusion::unlink):
(WebCore::ShadowInclusionList::ShadowInclusionList):
(WebCore::ShadowInclusionList::~ShadowInclusionList):
(WebCore::ShadowInclusionList::find):
(WebCore::ShadowInclusionList::clear):
(WebCore::ShadowInclusionList::append):
(WebCore::ContentInclusionSelector::ContentInclusionSelector):
(WebCore::ContentInclusionSelector::~ContentInclusionSelector):
(WebCore::ContentInclusionSelector::select):
(WebCore::ContentInclusionSelector::unselect):
(WebCore::ContentInclusionSelector::findFor):
(WebCore::ContentInclusionSelector::didSelect):
(WebCore::ContentInclusionSelector::willSelectOver):

  • html/shadow/ContentInclusionSelector.h: Renamed from Source/WebCore/dom/ShadowInclusionSelector.h.

(WebCore::ShadowInclusion::includer):
(WebCore::ShadowInclusion::content):
(WebCore::ShadowInclusion::next):
(WebCore::ShadowInclusion::previous):
(WebCore::ShadowInclusion::ShadowInclusion):
(WebCore::ShadowInclusion::create):
(WebCore::ShadowInclusionList::first):
(WebCore::ShadowInclusionList::last):
(WebCore::ShadowInclusionList::isEmpty):
(WebCore::ShadowInclusionSet::add):
(WebCore::ShadowInclusionSet::remove):
(WebCore::ShadowInclusionSet::isEmpty):
(WebCore::ShadowInclusionSet::Translator::hash):
(WebCore::ShadowInclusionSet::Translator::equal):
(WebCore::ShadowInclusionSet::Hash::hash):
(WebCore::ShadowInclusionSet::Hash::equal):
(WebCore::ShadowInclusionSet::find):
(WebCore::ContentInclusionSelector::hasCandidates):

  • html/shadow/ContentSelectorQuery.cpp: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.cpp.

(WebCore::ContentSelectorQuery::ContentSelectorQuery):
(WebCore::ContentSelectorQuery::matches):

  • html/shadow/ContentSelectorQuery.h: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.h.
  • html/shadow/HTMLContentElement.cpp: Renamed from Source/WebCore/dom/ShadowContentElement.cpp.

(WebCore::HTMLContentElement::create):
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::~HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
(WebCore::HTMLContentElement::select):
(WebCore::HTMLContentElement::setSelect):

  • html/shadow/HTMLContentElement.h: Renamed from Source/WebCore/dom/ShadowContentElement.h.

(WebCore::HTMLContentElement::inclusions):
(WebCore::HTMLContentElement::isContentElement):
(WebCore::HTMLContentElement::rendererIsNeeded):
(WebCore::HTMLContentElement::createRenderer):
(WebCore::toHTMLContentElement):

  • testing/Internals.cpp:

(WebCore::Internals::createContentElement):

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

Source/WebKit2:

  • win/WebKit2.def: Exposed necessary symbols.
  • win/WebKit2CFLite.def: ditto.

LayoutTests:

Renamed internals.createShadowContentElement to internals.createContentElement.

  • fast/dom/shadow/content-element-includer.html:
  • fast/dom/shadow/content-element-renderers.html:
  • fast/dom/shadow/create-content-element.html:
  • fast/dom/shadow/shadow-contents-select.html:
1:04 AM Changeset in webkit [105248] by Carlos Garcia Campos
  • 2 edits in trunk

Unreviewed. Fix GTK+ build after r105245.

  • Source/autotools/symbols.filter: Fix symbol name.
12:45 AM Changeset in webkit [105247] by Nikolas Zimmermann
  • 31 edits in trunk

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Reviewed by Zoltan Herczeg.

Source/WebCore:

Let RenderSVGRoot inherit from RenderReplaced, instead of faking RenderReplaced, by inherting from RenderBox
and calling setReplaced(true) in the constructor. The outermost <svg> element is a replaced element in the
sense of CSS, and thus this is just a logical move. It fixes some issues where the <svg> root appeared
as selection leaf, covered by existing tests.

It allows us to simplify the painting, as outlines, etc. are painted by RenderReplaced now.
While I was it, speed up the local to border box computations by caching the result.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::paint):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::willBeDestroyed):
(WebCore::RenderSVGRoot::styleWillChange):
(WebCore::RenderSVGRoot::styleDidChange):
(WebCore::RenderSVGRoot::updateFromElement):
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
(WebCore::RenderSVGRoot::localToParentTransform):
(WebCore::RenderSVGRoot::computeFloatRectForRepaint):
(WebCore::RenderSVGRoot::mapLocalToContainer):
(WebCore::RenderSVGRoot::nodeAtPoint):

  • rendering/svg/RenderSVGRoot.h:

(WebCore::RenderSVGRoot::canHaveChildren):
(WebCore::RenderSVGRoot::canBeSelectionLeaf):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::setupInitialView):

LayoutTests:

Update test results after making RenderSVGRoot inherit from RenderReplaced.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/custom/linking-a-03-b-all-expected.png: Text layout changed, we didn't relayout the tree when entering a new view before.
  • platform/mac/svg/custom/linking-a-03-b-all-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.png: Moving the circle, triggered a selection before, where it shouldn't. It's gone now.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.png: Caret position which is reported changed, due the selection leaf changes.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.txt: Ditto.
  • platform/mac/svg/foreignObject/text-tref-02-b-expected.png: This now reports a valid size for the RenderSVGRoot in the <fO> subtree.
  • svg/foreignObject/text-tref-02-b-expected.txt: Ditto.

Jan 17, 2012:

11:36 PM Changeset in webkit [105246] by rolandsteiner@chromium.org
  • 18 edits
    18 deletes in trunk

Unreviewed, rolling out r105244.
http://trac.webkit.org/changeset/105244
https://bugs.webkit.org/show_bug.cgi?id=76518

broke Chromium Mac (Requested by rolandsteiner on #webkit).

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

Source/WebCore:

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::checkboxOrRadioValue):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:
  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:
  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::removeSelection):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:
  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::removeSelection):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Removed.
10:55 PM Changeset in webkit [105245] by commit-queue@webkit.org
  • 11 edits in trunk

[Internals] Should be able to access corresponding Document object.
https://bugs.webkit.org/show_bug.cgi?id=76425

.:

Added exported symbols.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Source/autotools/symbols.filter:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Allow FrameDestructionObserver to re-setting the Frame reference.
  • Make Internals a subclass of FrameDestructionObserver.

Since Internals::reset() is called for each test, we can access
the acive Frame object during the test. The frame reference will be
used by coming changes.

No new tests. Covered by existing tests.

  • WebCore.exp.in:
  • page/FrameDestructionObserver.cpp:

(WebCore::FrameDestructionObserver::FrameDestructionObserver):
(WebCore::FrameDestructionObserver::~FrameDestructionObserver):
(WebCore::FrameDestructionObserver::observe):

  • page/FrameDestructionObserver.h:
  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::reset):

  • testing/Internals.h:

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • win/WebKit2.def: Added exporting symbols.
  • win/WebKit2CFLite.def: Added exporting symbols.
10:41 PM Changeset in webkit [105244] by dmazzoni@google.com
  • 18 edits
    18 adds in trunk

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
10:39 PM Changeset in webkit [105243] by mdelaney@apple.com
  • 1 edit in trunk/Source/WebCore/WebCore.exp.in

Fixing broken build. Missed a file in r105234.

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

https://bugs.webkit.org/show_bug.cgi?id=75089
Access-Control-Request-Headers value should be lowercase

Source/WebCore:

Access-Control-Request-Headers is used when issuing a preflight request to let the server know
the HTTP headers that will be used when the actual request is made.
As per the W3C specification, Access-Control-Request-Headers value should be set in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest): setting Access-Control-Request-Headers value to lowercase

LayoutTests:

Added test to verify that the Access-Control-Request-Headers value is sent in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-preflight-request-header-lowercase.php: Added.
9:49 PM Changeset in webkit [105241] by hayato@chromium.org
  • 4 edits in trunk/Source/WebCore

Clean EventContext and move phase-tweaking logic to EventDispatcher.
https://bugs.webkit.org/show_bug.cgi?id=76414

Reviewed by Dimitri Glazkov.

No tests. No change in behavior.

  • dom/EventContext.cpp:

(WebCore::EventContext::handleLocalEvents):

  • dom/EventContext.h:

(WebCore::EventContext::currentTargetSameAsTarget):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEvent):

8:28 PM Changeset in webkit [105240] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebKit/efl

[EFL] Use static const insted of #define macro.
https://bugs.webkit.org/show_bug.cgi?id=76499

Reviewed by Hajime Morita.

WebKit coding style prefers const to #define. EFL port needs to use const insted of #define macro.
This patch replace global variables defined by #define with const.

  • ewk/ewk_tiled_backing_store.cpp:

(_ewk_tiled_backing_store_smart_add):
(_ewk_tiled_backing_store_zoom_set_internal):

  • ewk/ewk_tiled_backing_store.h:
  • ewk/ewk_tiled_matrix.cpp:

(ewk_tile_matrix_new):

  • ewk/ewk_view.cpp:

(_ewk_view_repaint_add):
(_ewk_view_repaints_flush):
(_ewk_view_scroll_add):
(_ewk_view_scrolls_flush):
(_ewk_view_priv_new):
(ewk_view_base_smart_set):

  • ewk/ewk_view_tiled.cpp:

(_ewk_view_tiled_smart_pre_render_start):

8:15 PM Changeset in webkit [105239] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove public/WebWorker.h from the gyp projects
https://bugs.webkit.org/show_bug.cgi?id=76512

Reviewed by David Levin.

public/WebWorker.h was removed in r105020, remove references from the gyp projects.

  • WebKit.gyp:
8:13 PM Changeset in webkit [105238] by levin@chromium.org
  • 3 edits in trunk/Source/WebCore

Need to figure out which assert is firing when worker-read-blob-async.html fails.
https://bugs.webkit.org/show_bug.cgi?id=76503

Reviewed by Adam Barth.

No new functionality exposed so no new tests.

This is just a quick and dirty way to make these asserts unique
to expose which one of them is firing on a machine that doesn't have a
good stack trace.

  • dom/ActiveDOMObject.cpp:

(WebCore::ContextDestructionObserver::ContextDestructionObserver):
(WebCore::ContextDestructionObserver::~ContextDestructionObserver):
(WebCore::ActiveDOMObject::ActiveDOMObject):
(WebCore::ActiveDOMObject::~ActiveDOMObject):

  • storage/DatabaseSync.cpp:

(WebCore::DatabaseSync::openDatabaseSync):
(WebCore::DatabaseSync::~DatabaseSync):
(WebCore::DatabaseSync::changeVersion):
(WebCore::DatabaseSync::runTransaction):

8:02 PM Changeset in webkit [105237] by Lucas Forschler
  • 5 edits in branches/safari-534.54-branch/Source

Versioning.

8:01 PM Changeset in webkit [105236] by abarth@webkit.org
  • 2 edits in trunk/Tools

Enable tests on the mac-ews
https://bugs.webkit.org/show_bug.cgi?id=76502

Reviewed by Simon Fraser.

Apple now has five machines running the mac-ews. Lucas Forschler has
asked that we try enabling tests to see if we have enough bandwidth.

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

(MacEWS):

8:01 PM Changeset in webkit [105235] by Lucas Forschler
  • 1 copy in tags/Safari-534.54.7

New tag.

7:59 PM Changeset in webkit [105234] by mdelaney@apple.com
  • 8 edits in trunk/Source

On post-Lion releases, preserve the Lion behavior where WebKit explicitly calls -setGeometryFlipped on the hosting layer for applications that were linked on Lion or earlier.

7:24 PM Changeset in webkit [105233] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Clear 'm_size' of DrawingBuffer in the 'clear' function
https://bugs.webkit.org/show_bug.cgi?id=76239

Patch by Yongsheng Zhu <yongsheng.zhu@intel.com> on 2012-01-17
Reviewed by Kenneth Russell.

Clear the resources of DrawingBuffer but don't clear 'm_size'. This makes
's_currentResourceUsePixels' is not calculated correctly.

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::clear):

7:19 PM Changeset in webkit [105232] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Add a check-webkit-style exception for GDBInterface.cpp
https://bugs.webkit.org/show_bug.cgi?id=76187

Add an exception for Source/JavaScriptCore/jit/GDBInterface.cpp so
that it does not fail the style check.

Patch by Sanjoy Das <sanjoy@playingwithpointers.com> on 2012-01-17
Reviewed by Martin Robinson.

  • Scripts/webkitpy/style/checker.py: Tell the style checker to not run

readability/naming tests on
Source/JavaScriptCore/jit/GDBInterface.cpp.

  • Scripts/webkitpy/style/checker_unittest.py:

(GlobalVariablesTest.test_path_rules_specifier): Add a test for
the above exception.

7:16 PM Changeset in webkit [105231] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Fix getBBox for perpendicular paths
https://bugs.webkit.org/show_bug.cgi?id=76177

Patch by Philip Rogers <pdr@google.com> on 2012-01-17
Reviewed by Darin Adler.

Source/WebCore:

Test: svg/custom/getBBox-perpendicular-path.svg

  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::unite):
(WebCore::FloatRect::uniteEvenIfEmpty):
(WebCore::FloatRect::uniteIfNonZero):

  • platform/graphics/FloatRect.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::computeContainerBoundingBoxes):

LayoutTests:

  • svg/custom/getBBox-perpendicular-path-expected.txt: Added.
  • svg/custom/getBBox-perpendicular-path.svg: Added.
7:09 PM Changeset in webkit [105230] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Apply color profiles in more cases
https://bugs.webkit.org/show_bug.cgi?id=76498

Reviewed by Stephen White.

Not adding new tests, as application of the color profile is not
guaranteed for images used as textures in WebGL. Ran existing
WebGL layout tests; all pass.

  • platform/image-decoders/skia/ImageDecoderSkia.cpp:

(WebCore::ImageFrame::setStatus):

6:48 PM Changeset in webkit [105229] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark some compositing tests as failing with an IMAGE diff due to video playback problem

  • platform/chromium/test_expectations.txt:
6:43 PM Changeset in webkit [105228] by Simon Fraser
  • 7 edits in trunk/LayoutTests

Fix media handling in compositing tests after r105219.

Reviewed by James Robinson.

Seeking seems to have issues on Chromium, and cause these tests to
timeout, so change the tests to play, then seek back to time 0.

New image results now show the first frame of the movie.

  • compositing/resources/media-testing.js:

(ensureFrameVisible):

  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
6:18 PM Changeset in webkit [105227] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Rename quickLookPreviewItemsAtWindowLocation: to quickLookWithEvent:
<rdar://problem/10688913>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookWithEvent:]):

6:06 PM Changeset in webkit [105226] by Nate Chapin
  • 6 edits in trunk/Source/WebCore

Ensure we don't cancel revalidation of a CachedResource
in the middle of successful revalidation.
It's more reliable to enforce this in CachedResource than in
SubresourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=75713

Reviewed by Adam Barth.

No new test, the buggy case requires a non-stubbed window.print().

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):

  • loader/SubresourceLoader.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):
(WebCore::CachedResource::switchClientsToRevalidatedResource):

  • loader/cache/CachedResource.h:
6:06 PM Changeset in webkit [105225] by ojan@chromium.org
  • 5 edits in trunk/LayoutTests

Tweak results.html keyboard handling and flagging UI
https://bugs.webkit.org/show_bug.cgi?id=76331

Reviewed by Simon Fraser.

-Make it so that hitting j/k at the start selects the first/last test
instead of the second/none'th test.
-Use the unicode black flag character instead of " (flagged)"
-Make the text color of the whole selected row red. This showed
which row was selected without being to garish I think.
-Allow for having the flagged tests be space-separated instead of
newline separated.

  • fast/harness/resources/results-test.js:
  • fast/harness/results-expected.txt:
  • fast/harness/results.html:
6:03 PM Changeset in webkit [105224] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

NULL ptr in WebCore::RenderSVGInlineText::localCaretRect
https://bugs.webkit.org/show_bug.cgi?id=75851

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-17
Reviewed by Ryosuke Niwa.

.:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not
reproducible in DRT.

  • ManualTests/svg-modify-deleted-selection.svg: Added.

Source/WebCore:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not reproducible
in DRT.

Test: ManualTests/svg-modify-deleted-selection.svg

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::localCaretRect):

6:00 PM Changeset in webkit [105223] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Factored out some code into a helper function.

I think this might help getting rid of omit-frame-pointer.

Reviewed by Sam Weinig.

No benchmark change.

  • runtime/StringPrototype.cpp:

(JSC::removeUsingRegExpSearch): Moved to here...
(JSC::replaceUsingRegExpSearch): ...from here.

5:56 PM Changeset in webkit [105222] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp

Changing pixelSnappedScrollHeight/Width to not directly access member variables. This fixes a bug now that there's a cache and dirty bit.

5:33 PM Changeset in webkit [105221] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merged r103913 & r103915.

5:23 PM Changeset in webkit [105220] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge 104593.

5:18 PM Changeset in webkit [105219] by Simon Fraser
  • 22 edits
    1 add in trunk/LayoutTests

Reduce the number of compositing test failures
https://bugs.webkit.org/show_bug.cgi?id=76495

Reviewed by James Robinson.

General cleanup of compositing tests:

  • video tests now do a seek to guarantee that the pixel result will show a frame
  • video tests use a shared JS file (can't use media/video-test.js because it always calls dumpAsText(), which is not reversible).
  • ideo-with-invalid-source.html fixed to use a file extension so that the error event fires (bug 76494).
  • pixel results rebaselined.
  • compositing/geometry/clipped-video-controller.html:
  • compositing/geometry/video-fixed-scrolling.html:
  • compositing/geometry/video-opacity-overlay.html:
  • compositing/layers-inside-overflow-scroll.html:
  • compositing/overflow/scroll-ancestor-update.html:
  • compositing/reflections/load-video-in-reflection.html:
  • compositing/resources/media-testing.js: Added.

(ensureFrameVisible):

  • compositing/self-painting-layers.html:
  • compositing/video/video-with-invalid-source.html:
  • compositing/visibility/visibility-simple-video-layer.html:
  • platform/mac/compositing/color-matching/image-color-matching-expected.png:
  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.txt:
  • platform/mac/compositing/plugins/composited-plugin-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/reflections/simple-composited-reflections-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
  • platform/mac/compositing/video/video-background-color-expected.png:
  • platform/mac/test_expectations.txt:
5:16 PM Changeset in webkit [105218] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=76245
[Mac][DRT] should allow query string for the file URL.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

Taught DRT about file:// as a url instead of a file path.
We are now able to use a path file:///foo/bar.html?baz as a url
with which DRT opens "/foo/bar.html" with "baz" as a query string.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(runTest):

5:11 PM Changeset in webkit [105217] by caio.oliveira@openbossa.org
  • 40 edits
    8 adds in trunk

Uint8ClampedArray support
https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/PredictedType.cpp:

(JSC::predictionToString):
(JSC::predictionFromClassInfo):

  • bytecode/PredictedType.h:

(JSC::isUint8ClampedArrayPrediction):
(JSC::isActionableMutableArrayPrediction):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::execute):

  • dfg/DFGNode.h:

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

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::clampDoubleToByte):
(JSC::DFG::compileClampIntegerToByte):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/JSCell.h:
  • runtime/JSGlobalData.h:
  • wtf/Forward.h:
  • wtf/Uint8Array.h:
  • wtf/Uint8ClampedArray.h: Added.

(WTF::Uint8ClampedArray::set):
(WTF::Uint8ClampedArray::create):
(WTF::Uint8ClampedArray::Uint8ClampedArray):
(WTF::Uint8ClampedArray::subarray):

Source/WebCore:

Test: fast/js/dfg-uint8clampedarray.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • ForwardingHeaders/wtf/Uint8ClampedArray.h: Added.
  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMWindowCustom.cpp:
  • bindings/js/JSUint8ClampedArrayCustom.cpp: Added.

(WebCore::JSUint8ClampedArray::indexSetter):
(WebCore::toJS):
(WebCore::JSUint8ClampedArray::set):
(WebCore::JSUint8ClampedArrayConstructor::constructJSUint8ClampedArray):

  • bindings/scripts/CodeGeneratorJS.pm:

(IsTypedArrayType):
(GenerateHeader):

  • html/canvas/Uint8ClampedArray.idl: Added.
  • page/DOMWindow.idl:

Source/WTF:

  • WTF.pro:

LayoutTests:

  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
  • fast/dom/Window/script-tests/window-property-descriptors.js:
  • fast/dom/Window/window-properties.html:
  • fast/dom/script-tests/constructed-objects-prototypes.js:

(constructorPropertiesOnWindow):

  • fast/dom/script-tests/prototype-inheritance-2.js:

(constructorNamesForWindow):

  • fast/js/dfg-uint8clampedarray-expected.txt: Added.
  • fast/js/dfg-uint8clampedarray.html: Added.
  • fast/js/script-tests/dfg-uint8clampedarray.js: Added.

(getter1):
(setter1):
(getter2):
(setter2):
(getter3):
(setter3):
(getter4):
(setter4):
(getters.getter1.a):
(.a):
(setters.setter1.a):
(safeGetter):
(safeSetter):

  • fast/js/script-tests/global-constructors.js:
  • platform/chromium/fast/canvas/webgl/array-unit-tests-expected.txt: Copied from LayoutTests/fast/canvas/webgl/array-unit-tests-expected.txt.
  • platform/chromium/test_expectations.txt:
4:59 PM Changeset in webkit [105216] by Lucas Forschler
  • 4 edits in branches/safari-534.54-branch/Source/WebCore

Merged r97303.

4:54 PM Changeset in webkit [105215] by Lucas Forschler
  • 8 edits
    2 copies in branches/safari-534.54-branch

Merged r96973.

4:50 PM Changeset in webkit [105214] by jamesr@google.com
  • 7 edits in trunk/LayoutTests

[chromium] Update baselines

  • platform/chromium-linux/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-mac-snowleopard/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.txt:
4:41 PM Changeset in webkit [105213] by ojan@chromium.org
  • 2 edits
    1 add in trunk/Tools

Check style on test_expectations.txt files before commit
https://bugs.webkit.org/show_bug.cgi?id=76484

Reviewed by Adam Barth.

Unlike other style rules, if you get the syntax of the test_expectations.txt
file wrong, the layout tests won't run. Also, this check is simple and only
slows down committing if you actually modify one of the test_expectations.txt files.

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit._check_test_expectations):
(Commit.run):

  • Scripts/webkitpy/tool/steps/commit_unittest.py: Added.

(CommitTest):
(CommitTest.test_check_test_expectations):

4:33 PM Changeset in webkit [105212] by inferno@chromium.org
  • 3 edits
    3 adds in trunk

Crash in in WebCore::EventHandler::mouseMoved.
https://bugs.webkit.org/show_bug.cgi?id=76462

Reviewed by Ryosuke Niwa.

Source/WebCore:

handleMouseMoveEvent call in EventHandler::mouseMoved can
blow away the frame from underneath. Protect it with a frameview
refptr.

Test: fast/events/mouse-moved-remove-frame-crash.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::mouseMoved):

LayoutTests:

  • fast/events/mouse-moved-remove-frame-crash-expected.txt: Added.
  • fast/events/mouse-moved-remove-frame-crash.html: Added.
  • fast/events/resources/mouse-move.html: Added.
4:19 PM Changeset in webkit [105211] by Lucas Forschler
  • 24 edits
    2 copies in branches/safari-534.54-branch/Source/WebCore

Merge 96966.

4:18 PM Changeset in webkit [105210] by kerz@chromium.org
  • 5 edits in branches/chromium/963

Merge 105070 - Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection):

  • inspector/front-end/elementsPanel.css:

(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242032

4:16 PM Changeset in webkit [105209] by kerz@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore

Merge 105071 - Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

  • inspector/front-end/timelinePanel.css:

(#timeline-container .split-view-sidebar-left):

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242031

4:13 PM Changeset in webkit [105208] by kerz@chromium.org
  • 3 edits
    3 copies in branches/chromium/963

Merge 104140 - WebKit adds vertical paddings and borders to the fixed width of CSS tables
https://bugs.webkit.org/show_bug.cgi?id=74955

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-01-05
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/table/css-table-width.html

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::computeLogicalWidth):

Changed the width calculation for CSS tables to take into account horizontal
paddings and borders instead of vertical paddings and borders.

LayoutTests:

Added tests to check that the fixed width style is applied correctly to
CSS tables with respect to table paddings and borders.

  • fast/table/css-table-width-expected.txt: Added.
  • fast/table/css-table-width.html: Added.
  • fast/table/script-tests/css-table-width.js: Added.

(computeCSSTableOffsetWidth):
(computeCSSTableOffsetHeight):
(computeCSSTableProperty):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/9220007

4:12 PM Changeset in webkit [105207] by alexis.menard@openbossa.org
  • 3 edits in trunk/LayoutTests

Increase test coverage for -webkit-border-image.
https://bugs.webkit.org/show_bug.cgi?id=76473

Reviewed by Tony Chang.

Make sure we also set the width of the border in the shorthand. It will help
in the future to remove CSSBorderImageValue class without breaking this property.

  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
  • fast/css/getComputedStyle/getComputedStyle-border-image.html:
4:10 PM Changeset in webkit [105206] by ostapenko.viatcheslav@nokia.com
  • 4 edits in trunk

[Qt] Debug build fails with debug qt5
https://bugs.webkit.org/show_bug.cgi?id=76463

Reviewed by Simon Hausmann.

Add QNetworkCookie include in order to satisfy sizeof in QTypeInfo in debug builds.

Source/WebKit/qt:

  • WebCoreSupport/FrameNetworkingContextQt.cpp:

Tools:

  • QtTestBrowser/cookiejar.h:
4:06 PM Changeset in webkit [105205] by jamesr@google.com
  • 3 edits
    24 adds in trunk/LayoutTests

[chromium] Update expectations for line-grid tests and one random svg thing

  • platform/chromium-linux/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.txt: Added.
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
3:57 PM Changeset in webkit [105204] by jamesr@google.com
  • 5 edits
    1 move
    1 delete in trunk/LayoutTests

[chromium] Update expectations/baselines for cross-fade change

  • css3/images/cross-fade-overflow-position-expected.txt: Renamed from LayoutTests/platform/mac/css3/images/cross-fade-overflow-position-expected.txt.
  • platform/chromium-linux/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-mac-snowleopard/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-win/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt: Removed.
3:46 PM Changeset in webkit [105203] by weinig@apple.com
  • 51 edits in trunk/Source

Add helper macro for forward declaring objective-c classes
https://bugs.webkit.org/show_bug.cgi?id=76485

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • wtf/Compiler.h:

Add OBJC_CLASS macro which helps reduce code when forward declaring an
objective-c class in a header which can be included from both Objective-C
and non-Objective-C files.

Source/WebCore:

  • accessibility/AccessibilityObject.h:
  • bindings/js/ScriptController.h:
  • bridge/objc/objc_utility.h:
  • page/DragClient.h:
  • page/EditorClient.h:
  • platform/AutodrainedPool.h:
  • platform/ContextMenuItem.h:
  • platform/Cursor.h:
  • platform/DragData.h:
  • platform/DragImage.h:
  • platform/KURL.h:
  • platform/Pasteboard.h:
  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformMenuDescription.h:
  • platform/PlatformScreen.h:
  • platform/SharedBuffer.h:
  • platform/Widget.h:
  • platform/cf/SchedulePair.h:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/Icon.h:
  • platform/graphics/Image.h:
  • platform/graphics/MediaPlayer.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/ca/PlatformCAAnimation.h:
  • platform/graphics/ca/mac/TileCache.h:
  • platform/graphics/mac/ColorMac.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerProxy.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/LocalCurrentGraphicsContext.h:
  • platform/mac/PasteboardHelper.h:
  • platform/mac/PopupMenuMac.h:
  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h:
  • platform/network/ResourceHandleInternal.h:
  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/cf/ResourceError.h:
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceResponse.h:
  • rendering/RenderThemeMac.h:

Deploy OBJC_CLASS for a little code reduction.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebDragClient.h:

Deploy OBJC_CLASS for a little code reduction.

  • config.h:

Remove duplicate copy of OBJC_CLASS.

3:31 PM Changeset in webkit [105202] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Fix duplicate expectations for canvas tests on mac

  • platform/chromium/test_expectations.txt:
3:26 PM Changeset in webkit [105201] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit/mac

REGRESSION (r101413): Correction panel overlaps misspelled text.
https://bugs.webkit.org/show_bug.cgi?id=74589
<rdar://problem/10585115>

When converting the rectangle from the root view, we need
to take into account the height of the rectangle.

Reviewed by Anders Carlsson.

  • WebView/WebView.mm:

(-[WebView _convertRectFromRootView:]):

3:25 PM Changeset in webkit [105200] by commit-queue@webkit.org
  • 2 edits
    1 add
    4 deletes in trunk/LayoutTests

Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=74133

Patch by Jacob Goldstein <jacobg@adobe.com> on 2012-01-17
Reviewed by Tony Chang.

  • fast/regions/webkit-flow-inlines-dynamic-expected.html: Added.
  • fast/regions/webkit-flow-inlines-dynamic.html:
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
3:10 PM Changeset in webkit [105199] by dpranke@chromium.org
  • 2 edits in trunk/Tools

webkitpy: fix json import on linux
https://bugs.webkit.org/show_bug.cgi?id=76481

Reviewed by Adam Barth.

For some reason, the version of simplejson autoinstalled on my linux
box seems to be broken. We should really only be using
simplejson if json isn't available anyway, so this change looks
for json first.

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:

(JSONGeneratorTest.test_test_timings_trie):

3:04 PM Changeset in webkit [105198] by leviw@chromium.org
  • 31 edits in branches/subpixellayout/LayoutTests/platform

Rebaselining expectations for new float/line measuring changes

3:02 PM Changeset in webkit [105197] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore/rendering

Stop using pixel snapped values for x values when laying out floats. This is necessary when there are two floats on a line both at 50% width. Switching to pixel snapped values for measuring the available width when laying out bidi runs. Switching improper truncating in shrinkAvailableWidthForNewFloatIfNeeded to pixel snapped values.

2:36 PM Changeset in webkit [105196] by fpizlo@apple.com
  • 19 edits
    16 adds in branches/safari-534.54-branch

Merge 105107.

Source/JavaScriptCore:

2012-01-15 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:


  • There are now two variants of GetById: GetById, which works as before, and GetByIdFlush, which flushes registers prior to doing the GetById. Only GetByIdFlush can be used for caching getters. We detect which GetById style to use by looking at the inline caches of the old JIT.


  • Exception handling for getter calls planted in stubs uses a separate lookup handler routine, which uses the CodeOrigin stored in the StructureStubInfo.


This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.


  • bytecode/StructureStubInfo.h:
  • dfg/DFGAbstractState.cpp: (JSC::DFG::AbstractState::execute):
  • dfg/DFGAssemblyHelpers.h: (JSC::DFG::AssemblyHelpers::emitExceptionCheck):
  • dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::willNeedFlush): (JSC::DFG::ByteCodeParser::parseBlock):
  • dfg/DFGCCallHelpers.h: (JSC::DFG::CCallHelpers::setupResults):
  • dfg/DFGJITCompiler.cpp: (JSC::DFG::JITCompiler::link):
  • dfg/DFGJITCompiler.h: (JSC::DFG::PropertyAccessRecord::PropertyAccessRecord): (JSC::DFG::JITCompiler::addExceptionCheck):
  • dfg/DFGNode.h: (JSC::DFG::Node::hasIdentifier): (JSC::DFG::Node::hasHeapPrediction):
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp: (JSC::DFG::Propagator::propagateNodePredictions):
  • dfg/DFGRepatch.cpp: (JSC::DFG::tryCacheGetByID): (JSC::DFG::tryBuildGetByIDList):
  • dfg/DFGSpeculativeJIT.h: (JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
  • dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):
  • dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

2012-01-16 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


  • fast/js/dfg-custom-getter-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined.html: Added.
  • fast/js/dfg-custom-getter-throw.html: Added.
  • fast/js/dfg-custom-getter.html: Added.
  • fast/js/dfg-getter-expected.txt: Added.
  • fast/js/dfg-getter-throw-expected.txt: Added.
  • fast/js/dfg-getter-throw.html: Added.
  • fast/js/dfg-getter.html: Added.
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added. (foo): (baz): (bar):
  • fast/js/script-tests/dfg-custom-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-custom-getter.js: Added. (foo):
  • fast/js/script-tests/dfg-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-getter.js: Added. (foo):
2:31 PM Changeset in webkit [105195] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Fix failures in test-webkitpy caused by r105177.

Unreviewed, build fix.

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

(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):

2:14 PM Changeset in webkit [105194] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105172.

  • platform/qt/css3/images/cross-fade-overflow-position-expected.png:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt:
2:09 PM Changeset in webkit [105193] by tony@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/rendering/RenderFlexibleBox.cpp

Fix compilation after r105165.

The merge was bad because there have been refactoring changes that weren't
included on the branch.
Review URL: https://chromiumcodereview.appspot.com/9243024

1:44 PM Changeset in webkit [105192] by mrowe@apple.com
  • 3 edits
    3 adds in branches/safari-534.54-branch

Merge r99649.

1:43 PM Changeset in webkit [105191] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-17
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
1:39 PM Changeset in webkit [105190] by eae@chromium.org
  • 12 edits in branches/subpixellayout

Windows build fixes for webkit, with this patch the apple windows port builds

1:37 PM Changeset in webkit [105189] by mrowe@apple.com
  • 3 edits
    3 adds in branches/safari-534.54-branch

Merge r99982.

1:31 PM Changeset in webkit [105188] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-534.54-branch

Merged r91148.

1:04 PM Changeset in webkit [105187] by mrowe@apple.com
  • 5 edits
    1 add in branches/safari-534.54-branch/Source/WebCore

Merge r94107.

12:57 PM Changeset in webkit [105186] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

SpaceSplitString: Share equivalent string piece vectors.
<http://webkit.org/b/76458>

Reviewed by Antti Koivisto.

Make SpaceSplitStringData ref-counted and cache them in a hashmap to reduce memory
usage and avoid redundant string splitting work. This reduces memory consumption
by 618 kB (on 64-bit) when viewing the full HTML5 spec at <http://whatwg.org/c>

  • dom/SpaceSplitString.h:

Add the source string to SpaceSplitStringData so we have a key for uncaching
in the destructor. Also bumped the vector's inline size from 2 to 4.

  • dom/SpaceSplitString.cpp:

(WebCore::sharedDataMap):
(WebCore::SpaceSplitStringData::create):
(WebCore::SpaceSplitStringData::createUnique):
(WebCore::SpaceSplitStringData::SpaceSplitStringData):
(WebCore::SpaceSplitString::SpaceSplitString):
(WebCore::SpaceSplitString::set):
(WebCore::SpaceSplitStringData::createVector):

Added create helpers for SpaceSplitStringData. Moved case folding from
createVector() to create(AtomicString). Added a hash map for caching
AtomicString -> SpaceSplitStringData.

(WebCore::SpaceSplitStringData::~SpaceSplitStringData):

Remove the SpaceSplitStringData from the sharedDataMap().

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitString::ensureUnique):

Added, detaches from the shared SpaceSplitStringData if necessary.

(WebCore::SpaceSplitStringData::add):
(WebCore::SpaceSplitStringData::remove):

Assert that add() and remove() are only used on unique SpaceSplitStringData.

(WebCore::SpaceSplitString::add):
(WebCore::SpaceSplitString::remove):

Call ensureUnique() to potentially detach from a shared SpaceSplitStringData
before making modifications.

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitStringData::containsAll):

Added gratuitous fast path for containsAll(*this).

12:44 PM Changeset in webkit [105185] by mrowe@apple.com
  • 7 edits in branches/safari-534.54-branch/Source/WebCore

Merge r100408.

12:32 PM Changeset in webkit [105184] by dpranke@chromium.org
  • 3 edits in trunk/Tools

webkitpy: make PortFactory.get() be fully data-driven
https://bugs.webkit.org/show_bug.cgi?id=76360

Reviewed by Eric Seidel.

Refactor PortFactory.get() to be fully data-driven.

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

12:27 PM Changeset in webkit [105183] by dpranke@chromium.org
  • 23 edits in trunk/Tools

webkitpy: add determine_full_port_name(), clean up port.init()
https://bugs.webkit.org/show_bug.cgi?id=76357

Reviewed by Adam Barth.

Each Port class is now required to implement a 'port_name' field
that will match the start of all ports constructed by this class and
a 'determine_full_port_name' field that will make the port
fully-qualified.

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

(ApplePort.init):

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

(Port):
(Port.determine_port_name):
(Port.init):

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

(ChromiumPort.for):
(ChromiumPort.init):
(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumGpuLinuxPort):
(ChromiumGpuLinuxPort.init):
(ChromiumGpuMacPort):
(ChromiumGpuMacPort.init):
(ChromiumGpuWinPort):
(ChromiumGpuWinPort.init):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort.determine_port_name):
(ChromiumLinuxPort.init):

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

(ChromiumMacPort):
(ChromiumMacPort.determine_port_name):
(ChromiumMacPort.init):

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

(ChromiumWinPort):
(ChromiumWinPort.determine_port_name):
(ChromiumWinPort.init):

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

(DryRunPort):
(DryRunPort.determine_port_name):
(DryRunPort.init):

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

(EflPort):

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

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

(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.determine_port_name):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.determine_port_name):
(GoogleChromeMacPort):
(GoogleChromeMacPort.determine_port_name):
(GoogleChromeWinPort):
(GoogleChromeWinPort.determine_port_name):

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

(GtkPort):

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

(MacPort):
(MacPort.determine_port_name):
(MacPort.init):

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

(test_versions):

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

(MockDRTPort):
(MockDRTPort.determine_port_name):
(MockDRTPort.init):
(MockDRT):
(MockDRT.determine_port_name):

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

(PortTestCase.make_port):

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

(QtPort):
(QtPort.determine_port_name):
(QtPort.init):

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

(TestPort):
(TestPort.determine_port_name):
(TestPort.init):

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

(WebKitPort.init):

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

(WinPort):
(WinPort.determine_port_name):

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

(get_test_baselines.AllPlatformsPort.init):

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

(get_test_config.TestMacPort):
(get_test_config):

12:14 PM Changeset in webkit [105182] by mrowe@apple.com
  • 3 edits
    2 adds in branches/safari-534.54-branch

Merge r101543.

11:59 AM Changeset in webkit [105181] by mrowe@apple.com
  • 4 edits in branches/safari-534.54-branch/Source/WebCore

Merge r103118.

11:37 AM Changeset in webkit [105180] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/win

Merge r101808.

11:25 AM Changeset in webkit [105179] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge r104669.

11:25 AM Changeset in webkit [105178] by mrowe@apple.com
  • 3 edits in branches/safari-534.54-branch/Source/WebCore

Merge r104619.

11:25 AM Changeset in webkit [105177] by dpranke@chromium.org
  • 3 edits in trunk/Tools

webkitpy: clean up port code in preparation for static port names
https://bugs.webkit.org/show_bug.cgi?id=76356

Reviewed by Adam Barth.

To fix bug 76215 and be able to determine appropriate port names
in webkitpy without actually constructing Port objects, we need
to shuffle some logic in the chromium ports to be able to figure
out whether we built DRT in 32 or 64-bit mode.

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

(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.init):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):
(ChromiumLinuxPort._determine_architecture):
(ChromiumLinuxPort.init):
(ChromiumLinuxPort._build_path):

11:16 AM Changeset in webkit [105176] by hyatt@apple.com
  • 13 edits
    13 adds in trunk

Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=76197

Implementation of baseline grid alignment. This patch implements line grid tracking in the layout state,
and also implements the snapping of lines to baselines. It works with normal flow, positioning and floats and
with pagination, as long as the grid is inside the pagination context and not outside.

Reviewed by Simon Fraser.

Added a bunch of new tests in fast/line-grid.

  • WebCore.xcodeproj/project.pbxproj:
  • rendering/InlineFlowBox.h:

(WebCore::InlineFlowBox::setHasTextChildren):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::propagateLineGridInfo):
(WebCore::LayoutState::establishLineGrid):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::pageLogicalHeight):
(WebCore::LayoutState::currentLineGrid):
(WebCore::LayoutState::currentLineGridOffset):
(WebCore::LayoutState::layoutOffset):
(WebCore::LayoutState::needsBlockDirectionLocationSetBeforeLayout):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::adjustLinePositionForPagination):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::lineGridBox):
(WebCore::RenderBlock::setLineGridBox):
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::layoutLineGridBox):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::regionLogicalTopForLine):

  • rendering/RenderFlowThread.h:
  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::alignBoxesInBlockDirection):
(WebCore::RootInlineBox::lineGridSnapAdjustment):

  • rendering/RootInlineBox.h:

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

Add tests for baseline line grid alignment.

Reviewed by Simon Fraser.

  • fast/line-grid/line-grid-floating.html: Added.
  • fast/line-grid/line-grid-inside-columns.html: Added.
  • fast/line-grid/line-grid-into-floats.html: Added.
  • fast/line-grid/line-grid-positioned.html: Added.
  • platform/mac/fast/line-grid: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.txt: Added.
11:13 AM Changeset in webkit [105175] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r104727.

11:10 AM Changeset in webkit [105174] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderImage.cpp

Fixing truncation vs pixel snapping when drawing broken images.

11:09 AM Changeset in webkit [105173] by vsevik@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/loader/SubresourceLoader.cpp

Merge 104887 - Web Inspector: [Chomium] Resources loaded with 304 status code have receiving time of 15000 days in network panel.
https://bugs.webkit.org/show_bug.cgi?id=76176

Reviewed by Nate Chapin.

No new tests. Can't trigger this with inspector tests. Will add one when the Resource Timing API is in.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse): Use monotonic time.

TBR=simonjam@chromium.org
BUG=110154
Review URL: https://chromiumcodereview.appspot.com/9243015

11:02 AM Changeset in webkit [105172] by timothy_horton@apple.com
  • 6 edits
    5 adds in trunk

-webkit-cross-fade doesn't respect background-size
https://bugs.webkit.org/show_bug.cgi?id=74902
<rdar://problem/10605289>

Reviewed by Simon Fraser.

CrossfadeGeneratedImage should report its intrinsic size, instead of
improperly conforming to the size of its container.

Test: css3/images/cross-fade-background-size.html

  • platform/graphics/CrossfadeGeneratedImage.h:

(WebCore::CrossfadeGeneratedImage::setContainerSize):
(WebCore::CrossfadeGeneratedImage::usesContainerSize):
(WebCore::CrossfadeGeneratedImage::hasRelativeWidth):
(WebCore::CrossfadeGeneratedImage::hasRelativeHeight):
(WebCore::CrossfadeGeneratedImage::size):

Add a test (cross-fade-background-size.html) which ensures that the
background-size CSS property interacts reasonably with -webkit-cross-fade.

Modify cross-fade-overflow-position to hit both the tiled and non-tiled codepaths.

  • css3/images/cross-fade-background-size.html: Added.
  • css3/images/cross-fade-overflow-position.html:
  • css3/images/resources/stripes-large.png: Added.
  • css3/images/resources/stripes-small.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.txt: Added.
  • platform/mac/css3/images/cross-fade-overflow-position-expected.png:
  • platform/mac/css3/images/cross-fade-overflow-position-expected.txt:
11:00 AM Changeset in webkit [105171] by vsevik@chromium.org
  • 8 edits
    1 move
    1 add
    1 delete in trunk/Source/WebCore

Web Inspector: Refactor JavaScriptOutlineDialog: extract FilteredItemSelectionDialog and reuse DialogDelegate.
https://bugs.webkit.org/show_bug.cgi?id=76455

Reviewed by Yury Semikhatsky.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.prototype._hide):

  • inspector/front-end/FilteredItemSelectionDialog.js: Added.

(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.position):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.willHide):
(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype.get _itemsLoaded):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._hideItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementVisible):
(WebInspector.FilteredItemSelectionDialog.prototype._showItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._checkItemAt):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown):
(WebInspector.FilteredItemSelectionDialog.prototype._scheduleFilter):
(WebInspector.FilteredItemSelectionDialog.prototype._updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
(WebInspector.FilteredItemSelectionDialog.prototype._onScroll):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItems):
(WebInspector.FilteredItemSelectionDialog.prototype._clearHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight.changes.this._elementHighlightChanges.get if):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem.get var):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementInViewport):
(WebInspector.SelectionDialogContentProvider):
(WebInspector.SelectionDialogContentProvider.prototype.itemTitleAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemKeyAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemsCount):
(WebInspector.SelectionDialogContentProvider.prototype.requestItems):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog):
(WebInspector.JavaScriptOutlineDialog.didAddChunk):
(WebInspector.JavaScriptOutlineDialog.install):
(WebInspector.JavaScriptOutlineDialog._show):
(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.JavaScriptOutlineDialog.prototype.itemTitleAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemKeyAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemsCount):
(WebInspector.JavaScriptOutlineDialog.prototype.requestItems):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):

  • inspector/front-end/JavaScriptOutlineDialog.js: Removed.
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/filteredItemSelectionDialog.css: Renamed from Source/WebCore/inspector/front-end/javaScriptOutlineDialog.css.

(.js-outline-dialog > input):
(.js-outline-dialog > div.progress):
(.js-outline-dialog > div.container):
(.js-outline-dialog > .container > div.item):
(.js-outline-dialog > .container > div.item.selected):
(.js-outline-dialog > .container > div.item > span.highlight):

  • inspector/front-end/inspector.html:
10:57 AM Changeset in webkit [105170] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge fix for 10516690.

10:55 AM Changeset in webkit [105169] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

Do not remove pixel failures for ref tests.
https://bugs.webkit.org/show_bug.cgi?id=76243

Patch by Hao Zheng <zhenghao@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

'NRWT --no-pixel-tests' complains when reftests are expected to
be image mismatch.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._update_summary_with_result):

  • Scripts/webkitpy/layout_tests/models/test_failures.py:

(is_reftest_failure):
(determine_result_type):

10:34 AM WebKit Team edited by dbates@webkit.org
(diff)
10:28 AM Changeset in webkit [105168] by abarth@webkit.org
  • 1 edit
    6 adds in trunk/LayoutTests

Import some NodeIterator tests from mozilla
https://bugs.webkit.org/show_bug.cgi?id=76442

Reviewed by Daniel Bates.

These tests are imported from mozilla-central. I tried to make the
minimal changes when importing them rather than rewire them into
script-tests. They appear to have uncovered a bug, which I will
investigate in a followup patch.

  • traversal/moz-bug559526-expected.txt: Added.
  • traversal/moz-bug559526.html: Added.
  • traversal/moz-bug590771-expected.txt: Added.
  • traversal/moz-bug590771.html: Added.
  • traversal/moz-mutations-3-expected.txt: Added.
  • traversal/moz-mutations-3.html: Added.
10:26 AM Changeset in webkit [105167] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus on image <NSImage 0x1206572a0 Size={0, 0} Reps=( )>, because it is size zero loading techcrunch.com

Reviewed by Anders Carlsson.

Avoid trying to create image snapshots for zero-sized plugins, because
it causes -[NSView lockFocus] to throw an exception.

  • Plugins/WebBaseNetscapePluginView.mm:

(-[WebBaseNetscapePluginView cacheSnapshot]):

10:11 AM Changeset in webkit [105166] by commit-queue@webkit.org
  • 1 edit
    3 moves in trunk

Move tests out of WebCore/manual-tests to toplevel ManualTests.
It looks like the manual-tests folder wasn't noticed by git (or me :).

Move some SVG manual tests from deprecated WebCore/manual-tests to toplevel ManualTests
https://bugs.webkit.org/show_bug.cgi?id=76437

Patch by Raul Hudea <rhudea@adobe.com> on 2012-01-17
Reviewed by Daniel Bates.

  • ManualTests/svg-animation-css-transform.html: Renamed from Source/WebCore/manual-tests/svg-animation-css-transform.html.
  • ManualTests/svg-css-animate-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-animate-compound.html.
  • ManualTests/svg-css-transition-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-transition-compound.html.
9:44 AM Changeset in webkit [105165] by tony@chromium.org
  • 4 edits
    4 copies in branches/chromium/963

Merge 104645 - Need to handle absolutely positioned elements inside flexboxes
https://bugs.webkit.org/show_bug.cgi?id=70793

Reviewed by David Hyatt.

Source/WebCore:

Tests: css3/flexbox/insert-text-crash.html

css3/flexbox/position-absolute-child.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::computePreferredMainAxisExtent): Skip the size of positioned elements.
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Add placeholders for positioned elements.
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout): Positions the layer for the positioned child.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Handle positioned elements.
(WebCore::RenderFlexibleBox::layoutColumnReverse): Adjust the main axis offset of the layer for positioned elements.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

  • css3/flexbox/insert-text-crash-expected.txt: Added.
  • css3/flexbox/insert-text-crash.html: Added.
  • css3/flexbox/position-absolute-child-expected.txt: Added.
  • css3/flexbox/position-absolute-child.html: Added.

TBR=tony@chromium.org

9:35 AM Changeset in webkit [105164] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, avoid webkit_tests aborts due to clashing SVG test expectations.

  • platform/chromium/test_expectations.txt:
9:06 AM Changeset in webkit [105163] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unskip now passing tests.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

8:11 AM Changeset in webkit [105162] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

REGRESSION(r81225): ORWT should ignore reftests
https://bugs.webkit.org/show_bug.cgi?id=67936

Patch by Balazs Ankes <Ankes.Balazs@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests:

(isUsedInReftest): $filename should be the first parameter
(findTestsToRun): run test if it isn't reftest

8:03 AM Changeset in webkit [105161] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

[Gtk] Input text field not repainted when value is changed
https://bugs.webkit.org/show_bug.cgi?id=76279

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Force pending relayouts before freezing the dirty region in a temporary.
This prevents the following code from throwing the dirty updates away
after the original paint is finished.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::paintWebView): Remove the relayout.
(WebKit::ChromeClient::paint): Move the relayout here, before the
dirty region is frozen.

7:45 AM Changeset in webkit [105160] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: start using typedefs
https://bugs.webkit.org/show_bug.cgi?id=76382

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-17
Reviewed by Yury Semikhatsky.

Generator is patched accordingly.

  • inspector/CodeGeneratorInspector.py:

(EnumConstants.get_enum_constant_code):
(TypeBuilderPass):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_):
(TypeBindings.create_type_declaration_.PlainString):
(TypeBindings.create_type_declaration_.PlainString.get_code_generator):
(TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text):
(TypeBindings.create_type_declaration_.TypedefString):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder.String):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.register_use):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_.TypedefString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.TypedefString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
(get_generate_pass_id):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(Generator.process_types.create_type_builder_caller):
(Generator.process_types.create_type_builder_caller.call_type_builder):
(Generator.process_types):

7:42 AM Changeset in webkit [105159] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Fix python unit test I broke with r105142

  • Scripts/webkitpy/common/config/ports_unittest.py:

(WebKitPortTest.test_gtk_port):

7:37 AM Changeset in webkit [105158] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebKit2

[GTK] [WK2] WebKitPrivate should include the entire WebKit2 C API
https://bugs.webkit.org/show_bug.cgi?id=76345

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Isolate all of the WebKit2 C API includes into WebKitPrivate.h and no longer
include anything other than WebKit2.h for the C API.

  • UIProcess/API/gtk/WebKitBackForwardList.cpp: Use WebKitPrivate.h now.
  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp: Ditto.
  • UIProcess/API/gtk/WebKitPrivate.h: Add WebKit2.h, WKAPICast.h and WKRetainPtr.h includes.
  • UIProcess/API/gtk/WebKitSettings.cpp: Use WebKitPrivate.h.
  • UIProcess/API/gtk/WebKitUIClient.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebContext.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebView.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWindowProperties.cpp: Ditto.
7:37 AM Changeset in webkit [105157] by yurys@chromium.org
  • 10 edits in trunk/Source/WebCore

Web Inspector: provide basic information about DOM character data size
https://bugs.webkit.org/show_bug.cgi?id=76059

Memory agent allows to estimate size of DOM character data and size of WebCore
strings held by JavaScript objects.

Reviewed by Pavel Feldman.

  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.h:
  • bindings/v8/V8Binding.cpp:

(WebCore::WebCoreStringResource::visitStrings):
(WebCore::V8BindingPerIsolateData::visitJSExternalStrings):

  • bindings/v8/V8Binding.h:
  • inspector/DOMWrapperVisitor.h:
  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::CharacterDataStatistics::DOMTreeStatistics::DOMTreeStatistics):
(WebCore::CharacterDataStatistics::DOMTreeStatistics::collectNodeStatistics):
(WebCore::CharacterDataStatistics::CounterVisitor::CounterVisitor):
(WebCore::CharacterDataStatistics::CounterVisitor::domGroups):
(WebCore::CharacterDataStatistics::CounterVisitor::strings):
(WebCore::CharacterDataStatistics::CounterVisitor::visitNode):
(WebCore::CharacterDataStatistics::CounterVisitor::visitJSExternalString):
(WebCore::InspectorMemoryAgent::getDOMNodeCount):

  • inspector/InspectorMemoryAgent.h:
7:34 AM Changeset in webkit [105156] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Dialogs style and DialogDelegate interface fixes.
https://bugs.webkit.org/show_bug.cgi?id=76449

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.currentInstance):
(WebInspector.Dialog.show):
(WebInspector.Dialog.hide):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onGlassPaneFocus):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.DialogDelegate.prototype.wasShown):
(WebInspector.DialogDelegate.prototype.position):
(WebInspector.DialogDelegate.prototype.focus):
(WebInspector.DialogDelegate.prototype.onEnter):
(WebInspector.DialogDelegate.prototype.willHide):

  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog.prototype.focus):
(WebInspector.GoToLineDialog.prototype._onGoClick):
(WebInspector.GoToLineDialog.prototype._applyLineNumber):
(WebInspector.GoToLineDialog.prototype.onEnter):

  • inspector/front-end/dialog.css:

(.dialog):

7:30 AM Changeset in webkit [105155] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Don't set the 'primary' flag when mocking touch-points in MiniBrowser

Qt 5 no longer has that flag.

Reviewed by Simon Hausmann.

7:29 AM Changeset in webkit [105154] by yurys@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: ConsoleMessage.cpp and InspectorResourceAgent.cpp doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76403

A couple of protocol fixes.

Reviewed by Pavel Feldman.

  • inspector/ConsoleMessage.cpp: return 'log' in case some unsupported value is passed.

We cannot omit that return statement as GCC would complain on missing return statement
despite all enum values are listed.
(WebCore::messageTypeValue):

  • inspector/Inspector-0.1.json: fixed v0.1 protocol definition.
  • inspector/Inspector.json: made CachedResource.response field optional.
7:03 AM Changeset in webkit [105153] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Web Inspector: remove "Document DOM tree" class and "Detached DOM tree" from the Summary view.
https://bugs.webkit.org/show_bug.cgi?id=76450

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._buildAggregates):

7:02 AM Changeset in webkit [105152] by kubo@profusion.mobi
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Emit "resource,request,willsend" from ewk_view.
https://bugs.webkit.org/show_bug.cgi?id=76292

Reviewed by Andreas Kling.

Make ewk_view dispatch the "resource,request,willsend" signal as well,
so that it is possible to know whether the request is for the main
frame itself or for anything else.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):

  • ewk/ewk_view.h:
6:35 AM Changeset in webkit [105151] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Crash in fast/text/regional-indicator-symobls.html
https://bugs.webkit.org/show_bug.cgi?id=69419

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: Removing it from skipped list as it is working now.
6:34 AM Changeset in webkit [105150] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74785

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Upstream bug in Qt 5 is fixed, so we can unskip the test now.

  • platform/qt-5.0/Skipped:
6:31 AM Changeset in webkit [105149] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] editing/selection/regional-indicators.html fails
https://bugs.webkit.org/show_bug.cgi?id=66500

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: This test is not failing anymore,

removing it from skipped list.

6:28 AM Changeset in webkit [105148] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fast/canvas/canvas-largedraws.html crashes with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=75167

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Bug is fixed upstream, so it should be safe to unskip it now.

  • platform/qt-5.0/Skipped:
5:22 AM Changeset in webkit [105147] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

2012-01-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Update Chromium dependency 117616:117882

  • DEPS:
5:17 AM Changeset in webkit [105146] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebKit2

[Qt] Implement HTTP authentication QML API
https://bugs.webkit.org/show_bug.cgi?id=75535

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-17
Reviewed by Kenneth Rohde Christiansen.

This patch implements the QML API for handling HTTP authentication.
The implementation uses a syncronous message between the WebProcess
and the UIProcess which is called when the authenticationRequired
signal is emitted from QNAM.

Based in part upon patch by Peter Hartmann.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
(QQuickWebViewExperimental::authenticationDialog):
(QQuickWebViewExperimental::setAuthenticationDialog):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::authenticationRequiredRequest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtDialogRunner.cpp:

(AuthenticationDialogContextObject::AuthenticationDialogContextObject):
(AuthenticationDialogContextObject::hostname):
(AuthenticationDialogContextObject::realm):
(AuthenticationDialogContextObject::prefilledUsername):
(AuthenticationDialogContextObject::accept):
(AuthenticationDialogContextObject::reject):
(QtDialogRunner::initForAuthentication):

  • UIProcess/qt/QtDialogRunner.h:

(QtDialogRunner::username):
(QtDialogRunner::password):
(QtDialogRunner::onAuthenticationAccepted):

  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleAuthenticationRequiredRequest):

  • UIProcess/qt/QtPageClient.h:
  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onAuthenticationRequired):

  • WebProcess/qt/QtNetworkAccessManager.h:
5:09 AM Changeset in webkit [105145] by Nikolas Zimmermann
  • 4 edits in trunk/LayoutTests

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Qt results after r105143..

  • platform/qt/svg/carto.net/window-expected.txt:
  • platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.txt:
5:03 AM Changeset in webkit [105144] by Nikolas Zimmermann
  • 6 edits in trunk/LayoutTests

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Gtk results after r105143..

  • platform/gtk/svg/carto.net/window-expected.txt:
  • platform/gtk/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/use-detach-expected.txt:
4:42 AM Changeset in webkit [105143] by Nikolas Zimmermann
  • 29 edits
    12 adds in trunk

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Final patch fixing the performance regression from r81168 plus giving us more performance we ever had.
The testcase attached to bug 65711 creates 200 tspans as <text> children, and modifies just the first <tspan>s
content periodically using a timer. It ran with <3 FPS in release builds before, and now at around 60 FPS,
where the most dominant code path remaining is CG painting text. Still theres room to optimize further, as
Intruments shows.

Historically we rebuilt all SVGTextLayoutAttributes stored in the RenderSVGInlineText, whenever any
children of the <text> subtree changed, in any way. This lead to a recomputation of the x/y/dx/dy/rotate
value lists, for the whole tree, a recreation of the line box tree and finally a measurement of all characters
in the subtree.

This patch, and its previous patches preparing this, introduces progressive relayout for the SVG text subtree.
DOM tree mutations, x/y/dx/dy/rotate value lists changes, and measuring-all-characters are now strictly decoupled.

#1) x/y/dx/dy/rotate list changes:
The x/y/dx/dy/rotate lists are only ever rebuilt, if they change or upon the initial RenderSVGText layout.
This information is now cached in the so-called SVGCharacterDataMap, in each of the SVGTextLayoutAttributes,
associated with a specific RenderSVGInlineText.

#2) DOM tree mutations:
If a new RenderSVGInlineText gets added to the tree, we have to create SVGTextLayoutAttributes for the new
renderer, measure its characters, and cache the information in the attributes. Adding a new renderer to
a SVG <text> subtree can affect the positioning of the previous and next sibling in the tree, due the
whitespace merging logic. Example:

<text y="50" x="50 100 150">A<tspan></tspan> C</text>:
RenderSVGText {text} at (50,36) size 111x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 0x0
RenderSVGInlineText {#text} at (50,0) size 61x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 4.00: " "
chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 1 width 11.00: "C"

<text y="50" x="50 100 150">A<tspan>B</tspan> C</text>:
RenderSVGText {text} at (50,36) size 115x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 11x18

RenderSVGInlineText {#text} at (50,0) size 11x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 11.00: "B"

RenderSVGInlineText {#text} at (100,0) size 15x18

chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 2 width 15.00: " C"

Its obvious that adding a #text node as child to the <tspan> potentially affects the next & previous
siblings in the DOM tree. Take extra care of these possibilities, by properly remeasuring not only
the newly added renderer, but also the previous & next siblings layout attributes.

Mutation of text nodes, or removal of text/tspan elements from the tree is handled in the same way.

#3) Measuring the text subtree:
Don't cache the metrics information in the SVGRootInlineBox, as it doesn't survive relayouts (RenderSVGText::layout).
They're stored in the SVGTextLayoutAttributes, and will be updated if the underlying text content changes.

Tests: svg/text/append-text-node-to-tspan.html

svg/text/modify-text-node-in-tspan.html
svg/text/remove-text-node-from-tspan.html

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::addChild):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::willBeDestroyed):
(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):

  • rendering/svg/RenderSVGInlineText.h:

(WebCore::RenderSVGInlineText::layoutAttributes):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::recursiveUpdateLayoutAttributes):
(WebCore::RenderSVGText::layoutAttributesChanged):
(WebCore::findPreviousAndNextAttributes):
(WebCore::RenderSVGText::layoutAttributesWillBeDestroyed):
(WebCore::RenderSVGText::textDOMChanged):
(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::addChild):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):

  • rendering/svg/RenderSVGText.h:

(WebCore::RenderSVGText::layoutAttributes):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
(WebCore::SVGRootInlineBox::reorderValueLists):

  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGTextLayoutAttributes.h:
  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
(WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • rendering/svg/SVGTextLayoutEngine.h:

(WebCore::SVGTextLayoutEngine::layoutAttributes):

  • rendering/svg/SVGTextMetrics.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::childrenChanged):

LayoutTests:

Update some results, that changed again slightly. Land new tests covering partial SVG <text> subtree updating.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/carto.net/window-expected.png:
  • platform/mac/svg/carto.net/window-expected.txt:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/mac/svg/custom/use-detach-expected.png:
  • platform/mac/svg/custom/use-detach-expected.txt:
  • platform/mac/svg/text/append-text-node-to-tspan-expected.png: Added.
  • platform/mac/svg/text/append-text-node-to-tspan-expected.txt: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.png: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.txt: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.png: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.txt: Added.
  • svg/text/append-text-node-to-tspan.html: Added.
  • svg/text/modify-text-node-in-tspan.html: Added.
  • svg/text/remove-text-node-from-tspan.html: Added.
4:29 AM Changeset in webkit [105142] by kov@webkit.org
  • 3 edits in trunk/Tools

GTK+ EWS needs to run update-webkitgtk-libs after applying a patch
https://bugs.webkit.org/show_bug.cgi?id=75857

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-01-16
Reviewed by Adam Barth.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject): move cleaning the build to happen early,
and handle --update-gtk right after that

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command): pass --update-gtk as an option to
build-webkit, so that it is used in the EWS

4:20 AM Changeset in webkit [105141] by apavlov@chromium.org
  • 3 edits in trunk/LayoutTests

[Chromium] Unreviewed, fix Linux image expectations for two SVG tests.

  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
4:13 AM Changeset in webkit [105140] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

3:57 AM Changeset in webkit [105139] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: CSS backend doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76402

Reviewed by Yury Semikhatsky.

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

(WebCore::InspectorStyleSheet::buildObjectForStyle):

3:13 AM Changeset in webkit [105138] by tommyw@google.com
  • 8 edits in trunk/Source/WebCore

MediaStream API: Add the mediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=76436

Adding support for creating a MediaStream using a collection of MediaStreamTracks.

Reviewed by Adam Barth.

Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.

  • mediastream/MediaStream.cpp:

(WebCore::MediaStream::create):

  • mediastream/MediaStream.h:
  • mediastream/MediaStream.idl:
  • mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::component):

  • mediastream/MediaStreamTrack.h:
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::MediaStreamCenter::didConstructMediaStream):

  • platform/mediastream/MediaStreamCenter.h:
2:51 AM Changeset in webkit [105137] by jsbell@chromium.org
  • 10 edits in trunk

IndexedDB: IDBIndex.get/getKey should yield undefined, not an error
https://bugs.webkit.org/show_bug.cgi?id=76116

Source/WebCore:

Pass an undefined value (for IDBIndex.get()) or a null key
(for IDBIndex.getKey()) back as the result, rather than raising
an exception.

Reviewed by Adam Barth.

Tests: storage/indexeddb/index-basics.html

storage/indexeddb/cursor-index-delete.html
storage/indexeddb/duplicates.html

  • storage/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::getInternal):

  • storage/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

LayoutTests:

Reviewed by Adam Barth.

  • storage/indexeddb/cursor-index-delete-expected.txt:
  • storage/indexeddb/cursor-index-delete.html:
  • storage/indexeddb/duplicates-expected.txt:
  • storage/indexeddb/duplicates.html:
  • storage/indexeddb/index-basics-expected.txt:
  • storage/indexeddb/index-basics.html:
2:49 AM Changeset in webkit [105136] by Philippe Normand
  • 5 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105129.

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
2:39 AM WebKitGTK/Releasing edited by Carlos Garcia Campos
(diff)
2:26 AM Changeset in webkit [105135] by macpherson@chromium.org
  • 8 edits in trunk/Source/WebCore

Remove references to CSSPrimitiveValue::primitiveType().
https://bugs.webkit.org/show_bug.cgi?id=76363

Reviewed by Hajime Morita.

No new tests / refactoring only.

Goal is to remove primitiveType() completely. Only code left using it after this patch is in SVG.
I've introduced some abstractions in CSSPrimitiveValue for time and angles to reduce duplicated code elsewhere.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseColor):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeDegrees):

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::isAngle):
(WebCore::CSSPrimitiveValue::isAttr):
(WebCore::CSSPrimitiveValue::isCounter):
(WebCore::CSSPrimitiveValue::isFontIndependentLength):
(WebCore::CSSPrimitiveValue::isLength):
(WebCore::CSSPrimitiveValue::isPx):
(WebCore::CSSPrimitiveValue::isRect):
(WebCore::CSSPrimitiveValue::isRGBColor):
(WebCore::CSSPrimitiveValue::isShape):
(WebCore::CSSPrimitiveValue::isTime):
(WebCore::CSSPrimitiveValue::computeTime):

  • css/CSSStyleSelector.cpp:

(WebCore::convertToLength):
(WebCore::createGridTrackBreadth):
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapFillSize):
(WebCore::CSSStyleSelector::mapFillXPosition):
(WebCore::CSSStyleSelector::mapFillYPosition):
(WebCore::CSSStyleSelector::mapAnimationDelay):
(WebCore::CSSStyleSelector::mapAnimationDuration):
(WebCore::CSSStyleSelector::mapNinePieceImageSlice):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::colorFromPrimitiveValue):
(WebCore::CSSStyleSelector::createTransformOperations):
(WebCore::CSSStyleSelector::createCustomFilterOperation):
(WebCore::CSSStyleSelector::createFilterOperations):

  • css/MediaQueryEvaluator.cpp:

(WebCore::parseAspectRatio):
(WebCore::numberValue):
(WebCore::computeLength):

  • editing/EditingStyle.cpp:

(WebCore::cssValueToRGBA):
(WebCore::EditingStyle::extractFontSizeDelta):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::isCSSValueLength):
(WebCore::hasTransparentBackgroundColor):

2:26 AM Changeset in webkit [105134] by bbudge@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

AssociatedURLLoader adds support for the HTTP response header Access-Control-Expose-Header.
https://bugs.webkit.org/show_bug.cgi?id=76419

Reviewed by Adam Barth.

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):

  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):

1:28 AM Changeset in webkit [105133] by vestbo@webkit.org
  • 3 edits in trunk/Tools

[Qt] Don't add _debug postfix to targets when building debug only

Reviewed by Simon Hausmann.

1:27 AM Changeset in webkit [105132] by vestbo@webkit.org
  • 4 edits
    1 add in trunk

[Qt] Add more files to project-files for easier navigation in Qt Creator

Reviewed by Simon Hausmann.

12:36 AM Changeset in webkit [105131] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361

Reviewed by Csaba Osztrogonác.

Fix for 32-bit.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

12:25 AM Changeset in webkit [105130] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed morning gardening.

  • platform/qt/Skipped: Skip a failing test.
  • platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.
12:23 AM Changeset in webkit [105129] by Philippe Normand
  • 4 edits in trunk

[GTK] fast/dom/constructed-objects-prototypes.html fails
https://bugs.webkit.org/show_bug.cgi?id=75432

Reviewed by Martin Robinson.

Tools:

  • Scripts/build-webkit: Enable video-track in GTK.

LayoutTests:

  • platform/gtk/test_expectations.txt: Test now passing no longer

needs to be skipped.

12:18 AM Changeset in webkit [105128] by Philippe Normand
  • 14 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105075 and r105085.

  • platform/gtk/editing/execCommand/insertImage-expected.txt:
  • platform/gtk/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
  • platform/gtk/fast/block/float/015-expected.txt:
  • platform/gtk/fast/borders/rtl-border-05-expected.txt:
  • platform/gtk/fast/dom/34176-expected.txt:
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/inner-text-expected.txt:
  • platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
  • platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
  • platform/gtk/fast/hidpi/broken-image-icon-hidpi-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2962-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug56201-expected.txt:
  • platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
Note: See TracTimeline for information about the timeline view.