WebKit-https.git
8 years agoUnreviewed, rolling out r144074.
commit-queue@webkit.org [Tue, 26 Feb 2013 22:57:17 +0000 (22:57 +0000)]
Unreviewed, rolling out r144074.
http://trac.webkit.org/changeset/144074
https://bugs.webkit.org/show_bug.cgi?id=110897

Causing 20+ crashes on Mac (Requested by bradee-oh on
#webkit).

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

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):
* runtime/PropertyTable.cpp: Removed.
* runtime/Structure.cpp:
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):
* runtime/StructureInlines.h:

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

8 years ago[chromium] Remove unused WebWidget::instrument calls
commit-queue@webkit.org [Tue, 26 Feb 2013 22:49:36 +0000 (22:49 +0000)]
[chromium] Remove unused WebWidget::instrument calls
https://bugs.webkit.org/show_bug.cgi?id=110906

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Jochen Eisinger.

These calls are now routed through WebDevToolsAgent.

* public/WebWidget.h:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::willBeginFrame):
* src/WebViewImpl.h:

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

8 years agoUnreviewed. AppleWin VS2010 build fix.
roger_fong@apple.com [Tue, 26 Feb 2013 22:40:55 +0000 (22:40 +0000)]
Unreviewed. AppleWin VS2010 build fix.

* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:

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

8 years agofeDisplacementMap filter gets color space wrong
schenney@chromium.org [Tue, 26 Feb 2013 22:33:28 +0000 (22:33 +0000)]
feDisplacementMap filter gets color space wrong
https://bugs.webkit.org/show_bug.cgi?id=105929

Reviewed by Dirk Schulze.

Source/WebCore:

Tests: svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg
       svg/filters/feDisplacementMap-color-interpolation-filters.svg
       svg/filters/feDisplacementMap-filterUnits-expected.svg
       svg/filters/feDisplacementMap-filterUnits.svg

According to the spec, the SVG feDisplacementMap filter should not
change the color space on its first input, and other vendors seem to
agree that this also means that the output should be in the first
input's color space. That makes sense: we are displacing the input,
not otherwise manipulating colors.

This change improves color space handling for filters by more
explicitly tracking which color space is used for the filter's
operation and which is used for the filter's result. It provides a
means for filter effects to override the color-interpolation-filters
property as defined by the spec. feFlood and feDisplacementMap use
this new feature to enforce the spec requirements.

* platform/graphics/filters/FEDisplacementMap.cpp:
(WebCore::FEDisplacementMap::setResultColorSpace): Override the default color space with the
    same color space as the first input filter.
(WebCore):
(WebCore::FEDisplacementMap::transformResultColorSpace): Only transform the color space on
    the second filter input.
(WebCore::FEDisplacementMap::platformApplySoftware): Make the application code more efficient,
    and give slightly better numerical accuracy.
* platform/graphics/filters/FEDisplacementMap.h:
(FEDisplacementMap): Declare setResultColorSpace.
* platform/graphics/filters/FEFlood.cpp:
(WebCore::FEFlood::platformApplySoftware): Remove the call that forces
    the result color space. We do it now in the setResultColorSpace.
* platform/graphics/filters/FEFlood.h:
(FEFlood): Add setResultColorSPace override that enforces sRGB color space. But not if using
    CG, which apparently does this this already internally.
* platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::FilterEffect): Rename m_colorSpace to m_operatingColorSpace.
(WebCore::FilterEffect::apply): Allow filter effects to
    override the color space conversion of their inputs.
(WebCore::FilterEffect::createImageBufferResult): Always create the
    image buffer with the result color space.
* platform/graphics/filters/FilterEffect.h:
(WebCore::FilterEffect::operatingColorSpace): New accessor.
(WebCore::FilterEffect::setOperatingColorSpace): New accessor.
(WebCore::FilterEffect::resultColorSpace): New accessor.
(WebCore::FilterEffect::setResultColorSpace): New accessor.
(FilterEffect):
(WebCore::FilterEffect::transformResultColorSpace): A new virtual
    method that allows filter effects individual control over the color
    space conversion of their inputs.
* platform/graphics/filters/SourceGraphic.h:
(WebCore::SourceGraphic::SourceGraphic): Variable rename.
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build): Use accessors to set color
    space to enable per-effect overrides.
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives): Use accessors to set color.

LayoutTests:

       Add two new feDisplacementMap tests to get better coverage. And update some results.

* platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-linux/svg/filters/feDisplacementMap-expected.png:
* platform/chromium-linux/svg/filters/filterRes-expected.png:
* svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg: Added.
* svg/filters/feDisplacementMap-color-interpolation-filters.svg: Added.
* svg/filters/feDisplacementMap-filterUnits-expected.svg: Added.
* svg/filters/feDisplacementMap-filterUnits.svg: Added.

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

8 years agoUnreviewed AppleWin build fix following r143996.
roger_fong@apple.com [Tue, 26 Feb 2013 22:29:41 +0000 (22:29 +0000)]
Unreviewed AppleWin build fix following r143996.

* WebKit.vcproj/WebKitExportGeneratorCommon.vsprops:
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorCommon.props:

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

8 years agoX-Frame-Options should accept ALLOWALL as a valid value.
mkwst@chromium.org [Tue, 26 Feb 2013 22:00:08 +0000 (22:00 +0000)]
X-Frame-Options should accept ALLOWALL as a valid value.
https://bugs.webkit.org/show_bug.cgi?id=110857

Reviewed by Adam Barth.

Source/WebCore:

DoubleClick, among others, serves ALLOWALL as a 'X-Frame-Options' value
with the intent of (shock!) allowing a resource to be framed by all
origins. Given its prevelance, and the fact that IE supports the header,
we shouldn't call it out as invalid.

This patch tweaks the warning logic to only throw the warning if the
header's value isn't 'ALLOWALL', 'DENY', or 'SAMEORIGIN'.

Test: http/tests/security/XFrameOptions/x-frame-options-allowall.html

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

LayoutTests:

* http/tests/security/XFrameOptions/resources/x-frame-options-allowall.cgi: Added.
* http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
* http/tests/security/XFrameOptions/x-frame-options-allowall.html: Added.
    Exciting new test!
* http/tests/security/XFrameOptions/x-frame-options-cached-expected.txt:
    Exciting new baseline for an old test that was already using ALLOWALL!

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

8 years agoCSS Flexbox: dynamically applied align-items doesn't affect item alignment
tony@chromium.org [Tue, 26 Feb 2013 21:58:36 +0000 (21:58 +0000)]
CSS Flexbox: dynamically applied align-items doesn't affect item alignment
https://bugs.webkit.org/show_bug.cgi?id=110341

Reviewed by Ojan Vafai.

Source/WebCore:

If flex items don't change width, we don't lay them out again. This causes problems
when an item goes from stretch to non-stretch since we need to relayout to get the
smaller height. Fix this by marking flex items that were stretch as needing layout.

Test: css3/flexbox/relayout-align-items.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::resolveAlignment): Pull out common code for computing flex item style.
(WebCore::RenderFlexibleBox::styleDidChange): Mark children as needing layout.
(WebCore::RenderFlexibleBox::alignmentForChild): Use resolveAlignment.
* rendering/RenderFlexibleBox.h:

LayoutTests:

Also fix a typo causing align-self-* classes from not applying. There
was only one test that tried to use the align-self classes and it was
testing all values behaved the same.

* css3/flexbox/relayout-align-items-expected.txt: Added.
* css3/flexbox/relayout-align-items.html: Added.
* css3/flexbox/resources/flexbox.css:
(.align-self-auto):
(.align-self-flex-start):
(.align-self-flex-end):
(.align-self-center):
(.align-self-baseline):
(.align-self-stretch):

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

8 years agoStorageMap can just import an entire map of items at once
andersca@apple.com [Tue, 26 Feb 2013 21:54:50 +0000 (21:54 +0000)]
StorageMap can just import an entire map of items at once
https://bugs.webkit.org/show_bug.cgi?id=110904

Reviewed by Beth Dakin.

Instead of iterating over the map inside StorageAreaSync, just pass it directly
(through StorageAreaImpl) to StorageMap and iterate over it there.

* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::importItems):
* storage/StorageAreaImpl.h:
(StorageAreaImpl):
* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::performImport):
* storage/StorageMap.cpp:
(WebCore::StorageMap::importItems):
* storage/StorageMap.h:
(StorageMap):

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

8 years ago[JSC] static methods with Callback should not have this pointer
rgf748@motorola.com [Tue, 26 Feb 2013 21:40:08 +0000 (21:40 +0000)]
[JSC] static methods with Callback should not have this pointer
https://bugs.webkit.org/show_bug.cgi?id=110846

Reviewed by Kentaro Hara.

Fixing the JSC Codegenerator not to use 'this' pointer in static methods.

No new tests.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethod):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethod):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethodCallback):
(WebCore::ConfigureV8TestObjTemplate):

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

8 years agoGIFImageReader to read from source data directly
hclam@chromium.org [Tue, 26 Feb 2013 21:38:10 +0000 (21:38 +0000)]
GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

* platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):
* platform/image-decoders/gif/GIFImageReader.cpp:
(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):
* platform/image-decoders/gif/GIFImageReader.h:
(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

* WebKit.gypi:
* tests/GIFImageDecoderTest.cpp: Added.
(WebKit):
(WebKit::readFile):
(WebKit::TEST):
* tests/data/broken.gif: Added.

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

8 years agoEmpty <button>s should collapse; empty <input type="button"> should not collapse
commit-queue@webkit.org [Tue, 26 Feb 2013 21:08:52 +0000 (21:08 +0000)]
Empty <button>s should collapse; empty <input type="button"> should not collapse
https://bugs.webkit.org/show_bug.cgi?id=110654

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

Source/WebCore:

This patch also fixes other height computation issues with flex boxes
related to scroll bars and hasLineIfEmpty()=true. See below for
details.

Tests: css3/flexbox/button.html
       css3/flexbox/position-absolute-child-with-contenteditable.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Add a FIXME to make
border/padding/scrollbar inclusion more consistent with other
renderers.
* rendering/RenderButton.h:
(WebCore::RenderButton::hasLineIfEmpty): We only want a line for
<input type=button|submit|reset>, for consistency with Firefox.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Start out layoutBlock by
setting the logical height to border + padding + scrollbar height to
ensure that we have space for the scrollbar even without children. The
layoutFlexItems change below is not enough because we also need this
when hasLineIfEmpty() is false.
(WebCore::RenderFlexibleBox::layoutFlexItems): Ensure we have a line
when hasLineIfEmpty() is true by calling setLogicalHeight(border+
padding+scrollbar+lineHeight()) if we don't have a flex line.

LayoutTests:

* css3/flexbox/button-expected.png: Added.
* css3/flexbox/button-expected.txt: Added.
* css3/flexbox/button.html: Added.
Test empty buttons, <input type=button>, and buttons with
overflow:scroll;

* css3/flexbox/position-absolute-child-with-contenteditable-expected.html: Added.
* css3/flexbox/position-absolute-child-with-contenteditable.html: Added.
Test flex boxes with hasLineIfEmpty()=true and absolute positioned
children. Uses contenteditable=true to get that effect.

* platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.png:
* platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.txt:
* platform/chromium-linux/svg/custom/foreign-object-skew-expected.png:
* platform/chromium-linux/svg/custom/foreign-object-skew-expected.txt:
* platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.png:
* platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.txt:
Regenerate test cases that use <input type=button>.

* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:
Mark tests for rebaselining.

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

8 years agoUnreviewed, rolling out r143941.
commit-queue@webkit.org [Tue, 26 Feb 2013 20:52:51 +0000 (20:52 +0000)]
Unreviewed, rolling out r143941.
http://trac.webkit.org/changeset/143941
https://bugs.webkit.org/show_bug.cgi?id=110901

This is a step in the wrong direction as it ties us to what
grid-{row|column} expect (see
https://bugs.webkit.org/show_bug.cgi?id=110777 for the right
direction) (Requested by jchaffraix on #webkit).

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

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridPosition):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/StyleResolver.cpp:
(WebCore::createGridPosition):
(WebCore::StyleResolver::applyProperty):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):
* rendering/RenderGrid.h:
* rendering/style/GridPosition.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleGridItemData.h:
(StyleGridItemData):

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

8 years agoUnreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.
jer.noble@apple.com [Tue, 26 Feb 2013 20:51:43 +0000 (20:51 +0000)]
Unreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

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

8 years ago[BlackBerry] Animated images not animating on accelerated compositing layers
commit-queue@webkit.org [Tue, 26 Feb 2013 20:13:36 +0000 (20:13 +0000)]
[BlackBerry] Animated images not animating on accelerated compositing layers
https://bugs.webkit.org/show_bug.cgi?id=110886

Patch by Andrew Lo <anlo@rim.com> on 2013-02-26
Reviewed by Rob Buis.

Internally reviewed by Arvid Nilsson.
Internal PR 299598.

Animated images on AC layers call GraphicsLayer::setContentsToImage
on each frame with the same Image.

We need to set needs display in that case so that the frames are
displayed.

No new tests are needed since there is no new functionality.

* platform/graphics/blackberry/LayerWebKitThread.cpp:
(WebCore::LayerWebKitThread::setContents):

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

8 years agoUnreviewed, rolling out r144065.
commit-queue@webkit.org [Tue, 26 Feb 2013 19:43:39 +0000 (19:43 +0000)]
Unreviewed, rolling out r144065.
http://trac.webkit.org/changeset/144065
https://bugs.webkit.org/show_bug.cgi?id=110896

Causing failures and crashes on Chromium Win7 and Win XP
(Requested by schenney on #webkit).

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

Source/WebCore:

* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp:
(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

Source/WebKit/chromium:

* features.gypi:

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

8 years agoPotential crash in YARR JIT generated code when building 64 bit
msaboff@apple.com [Tue, 26 Feb 2013 19:37:53 +0000 (19:37 +0000)]
Potential crash in YARR JIT generated code when building 64 bit
https://bugs.webkit.org/show_bug.cgi?id=110893

Reviewed by Gavin Barraclough.

The ABI doesn't define the behavior for the upper bits of a value that takes less than 64 bits.
Therefore, we zero extend both the count and length registers to assure that these unsigned values
don't have garbage upper bits.

* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generateEnter):

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

8 years agoUnreviewed. Build fix for VS2010 solution, take 2.
roger_fong@apple.com [Tue, 26 Feb 2013 19:25:42 +0000 (19:25 +0000)]
Unreviewed. Build fix for VS2010 solution, take 2.

* WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:

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

8 years ago[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
thakis@chromium.org [Tue, 26 Feb 2013 19:21:26 +0000 (19:21 +0000)]
[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
https://bugs.webkit.org/show_bug.cgi?id=110890

Reviewed by Jochen Eisinger.

Several functions in webkit check that bit to change rendering
in layout test mode. For example, platform/graphics/skia/FrontSkia.cpp
disables font smoothing in this mode. TestShell and DRT both set
this flag, so content shell drt should set it too.

* DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:
(WebTestRunner::TestInterfaces::TestInterfaces):

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

8 years agoUnreviewed. Unreviewed build fix for VS2010 solution.
roger_fong@apple.com [Tue, 26 Feb 2013 19:12:22 +0000 (19:12 +0000)]
Unreviewed. Unreviewed build fix for VS2010 solution.

* WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:

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

8 years agoUnreviewed gardening.
zandobersek@gmail.com [Tue, 26 Feb 2013 19:03:50 +0000 (19:03 +0000)]
Unreviewed gardening.

Adding failure expectations for three html5lib tests that are failing after r144032
on EFL and GTK, most likely due to the ports sharing Libsoup as the network backend.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

8 years ago[TexMap] Ignore layer repaint request when drawsContent is false
allan.jensen@digia.com [Tue, 26 Feb 2013 19:00:07 +0000 (19:00 +0000)]
[TexMap] Ignore layer repaint request when drawsContent is false
https://bugs.webkit.org/show_bug.cgi?id=110888

Reviewed by Noam Rosenthal.

As long as drawsContent is false we should ignore requests for repaints.
A full repaint will be requested when drawsContent is changed to true.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):

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

8 years agoFix the atomicIncrement implementation for MIPS GCC
commit-queue@webkit.org [Tue, 26 Feb 2013 18:55:12 +0000 (18:55 +0000)]
Fix the atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=106739

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26
Reviewed by Oliver Hunt.

Implementation of missing __sync_[add|sub]_and_fetch_8 functions.

Some architectures, like MIPS32, don't have GCC implementation for
builtin __sync_* functions with 64 bits variable size. GCC answer
for the problem: If a target doesn't support atomic operations on
certain variable sizes, you are out of luck with atomicity in that
case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8
will support __atomic_* builtin functions for this purpose for all
the GCC targets, but for current compilers we have to include our
own implementation.

* GNUmakefile.list.am:
* WTF.pro:
* wtf/Atomics.cpp: Added.
(WTF):
(WTF::getSwapLock):
(WTF::atomicStep):
* wtf/CMakeLists.txt:

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

8 years agonew-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
vivek.vg@samsung.com [Tue, 26 Feb 2013 18:50:58 +0000 (18:50 +0000)]
new-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
https://bugs.webkit.org/show_bug.cgi?id=110884

Reviewed by Csaba Osztrogon√°c.

Adding the missing spaces before ':' in the unit test.

* Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:

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

8 years agoIndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
jsbell@chromium.org [Tue, 26 Feb 2013 18:44:04 +0000 (18:44 +0000)]
IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
https://bugs.webkit.org/show_bug.cgi?id=110792

Reviewed by Tony Chang.

Source/WebCore:

The object store's metadata wasn't updated if the index hadn't been accessed
by script and hence placed in the name->object map. Make sure the metadata
is always updated.

Test: storage/indexeddb/deleteIndex-bug110792.html

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::deleteIndex): Always update the object store's metadata.

LayoutTests:

Added regression test for bug.

* storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
* storage/indexeddb/deleteIndex-bug110792.html: Added.

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

8 years agoUnused Structure property tables waste 14MB on Membuster.
akling@apple.com [Tue, 26 Feb 2013 18:43:24 +0000 (18:43 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:

    Added PropertyTable.cpp.

* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

    Moved marking of property table values here from Structure::visitChildren().

* runtime/StructureInlines.h:
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

    Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

* runtime/Structure.cpp:
(JSC::Structure::visitChildren):

    Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
* runtime/Structure.h:
(Structure):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

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

8 years agoUnreviewed, rolling out r144019.
commit-queue@webkit.org [Tue, 26 Feb 2013 18:38:39 +0000 (18:38 +0000)]
Unreviewed, rolling out r144019.
http://trac.webkit.org/changeset/144019
https://bugs.webkit.org/show_bug.cgi?id=110892

due to 8% perf regression on chromium-win7 intl1 page cycler,
see https://bugs.webkit.org/show_bug.cgi?id=110872 (Requested
by gasubic on #webkit).

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

Source/WebCore:

* platform/text/LineBreakIteratorPoolICU.h:
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
(LineBreakIteratorPool):
* platform/text/TextBreakIterator.h:
(WebCore):
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
* platform/text/TextBreakIteratorICU.cpp:
(WebCore::acquireLineBreakIterator):
(WebCore::releaseLineBreakIterator):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
* rendering/RenderText.cpp:
(WebCore::RenderText::computePreferredLogicalWidths):
* rendering/RenderText.h:
(WebCore):
* rendering/break_lines.cpp:
(WebCore):
(WebCore::isBreakableSpace):
(WebCore::needsLineBreakIterator):
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
* rendering/break_lines.h:
(WebCore):
(WebCore::isBreakable):

LayoutTests:

* platform/mac/TestExpectations:

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

8 years agoCreate the SharedGraphicsContext3D through its own method.
danakj@chromium.org [Tue, 26 Feb 2013 18:35:26 +0000 (18:35 +0000)]
Create the SharedGraphicsContext3D through its own method.
https://bugs.webkit.org/show_bug.cgi?id=109345

Reviewed by James Robinson.

Source/Platform:

Add Platform API methods to get shared contexts from the embedder.

* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::sharedOffscreenGraphicsContext3D):
(WebKit::Platform::sharedOffscreenGrContext):

Source/WebCore:

Allow creating a GraphicsContext3DPrivate from an externally owned
WebGraphicsContext3D and GrContext. Then create the shared graphics
context from these provided by the embedder.

This falls back to the old path if the new methods return NULL to
let us land this immediately and then transition the chromium side
over to this path.

* platform/chromium/support/GraphicsContext3DPrivate.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromExternalWebContextAndGrContext):
(WebCore::GraphicsContext3DPrivate::grContext):
* platform/chromium/support/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::webContext):
* platform/graphics/gpu/SharedGraphicsContext3D.cpp:
(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

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

8 years agoAppease the QT bots.
oliver@apple.com [Tue, 26 Feb 2013 18:32:09 +0000 (18:32 +0000)]
Appease the QT bots.

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

8 years ago[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
commit-queue@webkit.org [Tue, 26 Feb 2013 18:29:27 +0000 (18:29 +0000)]
[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
https://bugs.webkit.org/show_bug.cgi?id=110869

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-02-26
Reviewed by Martin Robinson.

Test was failing because of new media controls needs more space to be
painted than just 10x10 pixels.

* UIProcess/API/gtk/tests/TestContextMenu.cpp:
(testContextMenuDefaultMenu): Modified test in order to give more space
to the media controls.

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

8 years ago[BlackBerry] Use APIEntryShim when making JS call
yoli@rim.com [Tue, 26 Feb 2013 18:04:38 +0000 (18:04 +0000)]
[BlackBerry] Use APIEntryShim when making JS call
https://bugs.webkit.org/show_bug.cgi?id=110787

Reviewed by Rob Buis.

PR# 301451.
Use APIEntryShim to fix an assert and ensure it is thread-safe.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):

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

8 years agoREGRESSION(r143986): fast/files/revoke-blob-url.html asserts
antti@apple.com [Tue, 26 Feb 2013 17:50:46 +0000 (17:50 +0000)]
REGRESSION(r143986): fast/files/revoke-blob-url.html asserts
https://bugs.webkit.org/show_bug.cgi?id=110885

Reviewed by Alexey Proskuryakov.

The ResourceRequest string constructor assumes that the string is a valid URL. Use KURL constructor instead.

* html/DOMURL.cpp:
(WebCore::DOMURL::revokeObjectURL):

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

8 years agoDraw intermediate snapshots if possible
dino@apple.com [Tue, 26 Feb 2013 17:16:35 +0000 (17:16 +0000)]
Draw intermediate snapshots if possible
https://bugs.webkit.org/show_bug.cgi?id=110811

Reviewed by Simon Fraser.

After http://webkit.org/b/110495 we delayed snapshotting until we've
received a nice image, but this made the page look like it is broken.
We should draw any intermediate snapshots that we find, which might
include content such as progress bars/spinners.

Source/WebCore:

* html/HTMLPlugInElement.h:
(WebCore::HTMLPlugInElement::isPlugInImageElement): Expose virtual method
to indicate if this is a HTMLPlugInImageElement or not.
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::updateSnapshot): If we have
a RenderEmbeddedObject renderer, then tell it to repaint.
* html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement::snapshotImage): Expose an
accessor for snapshot images.
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage): New helper
method to render an image directly. This code is similar to
that in RenderSnapshottedPlugIn.
(WebCore::RenderEmbeddedObject::paintContents): The virtual implementation
of this method for use when we have a snapshot to paint. If we are a plugin that is
in the process of being snapshotted, ask our HTMLPlugInImageElement for a
snapshot and paint that instead. In the case where we are not snapshotting,
or we do not yet have a snapshot, this will call back into the RenderWidget code.
* rendering/RenderEmbeddedObject.h:
(RenderEmbeddedObject): New methods paintSnapshotImage and paintContents
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents): New method called in the middle
of paint() that can be overridden by RenderEmbeddedObject. The code here was
simply moved out of the previous paint().
(WebCore::RenderWidget::paint): Call paintContents at the appropriate time.
* rendering/RenderWidget.h:
(RenderWidget): New virtual method paintContents.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit): Reinstate 60 attempts at snapshots before giving up.
(WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
want accelerated compositing enabled when we are trying to capture
snapshots.

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

8 years agoRemove nonexistent StringPairVector.h from Target.pri after r142839
abecsi@webkit.org [Tue, 26 Feb 2013 17:15:38 +0000 (17:15 +0000)]
Remove nonexistent StringPairVector.h from Target.pri after r142839

Unreviewed gardening.

* Target.pri:

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

8 years agoAdd support for 8 bit TextRuns for Chromium/HarfBuzz
leviw@chromium.org [Tue, 26 Feb 2013 17:08:05 +0000 (17:08 +0000)]
Add support for 8 bit TextRuns for Chromium/HarfBuzz
https://bugs.webkit.org/show_bug.cgi?id=99393

Reviewed by Eric Seidel.

Source/WebCore:

Adding support for 8 bit TextRuns for platforms using HarfBuzz. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.

No new tests. No change in behavior.

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

Source/WebKit/chromium:

Enabling 8 bit text runs for Chromium.

* features.gypi:

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

8 years agoMerged Tip and Debug log levels for web console.
commit-queue@webkit.org [Tue, 26 Feb 2013 16:37:50 +0000 (16:37 +0000)]
Merged Tip and Debug log levels for web console.
https://bugs.webkit.org/show_bug.cgi?id=109919

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-02-26
Reviewed by Pavel Feldman.

In every component either TIP or DEBUG level was used for reporting,
but not both. This patch is prerequisite for Web Inspector console log filtering.

Source/WebCore:

* css/MediaList.cpp:
(WebCore::addResolutionWarningMessageToConsole):
* inspector/ConsoleMessage.cpp:
(WebCore::messageLevelValue):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::abort):
* page/Console.cpp:
(WebCore::printMessageSourceAndLevelPrefix):
* page/ConsoleTypes.h:
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::XSLTProcessor::parseErrorFunc):
* xml/XSLTProcessorQt.cpp:
(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/chromium:

* public/WebConsoleMessage.h:
* src/AssertMatchingEnums.cpp:
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::addMessageToConsole):

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.mm:
(stringForMessageLevel):
* WebView/WebUIDelegatePrivate.h:

Source/WebKit/wx:

* WebView.h:

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

8 years ago[BlackBerry] Upstream the datalist support UI
commit-queue@webkit.org [Tue, 26 Feb 2013 16:28:24 +0000 (16:28 +0000)]
[BlackBerry] Upstream the datalist support UI
https://bugs.webkit.org/show_bug.cgi?id=110736

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-26
Reviewed by Rob Buis.

Original code by Otto Derek Cheung <otcheung@rim.com>

Source/WebCore:

* css/themeBlackBerry.css:
(input::-webkit-suggestion-dropdown-box):
(input::-webkit-suggestion-dropdown-box-item):
(input::-webkit-suggestion-prefix-text):
(input::-webkit-suggestion-dropdown-box-item-last):
* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::supportsDataListUI):
(WebCore):
* platform/blackberry/RenderThemeBlackBerry.h:
(RenderThemeBlackBerry):

Source/WebKit:

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

* WebCoreSupport/SuggestionBoxElement.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxElement::SuggestionBoxElement):
(WebCore::SuggestionBoxElement::~SuggestionBoxElement):
(WebCore::SuggestionBoxElement::create):
(WebCore::SuggestionBoxElement::defaultEventHandler):
* WebCoreSupport/SuggestionBoxElement.h: Added.
(WebCore):
(SuggestionBoxElement):
* WebCoreSupport/SuggestionBoxHandler.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxHandler::SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::~SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::create):
(WebCore::SuggestionBoxHandler::setInputElementAndUpdateDisplay):
(WebCore::SuggestionBoxHandler::showDropdownBox):
(WebCore::SuggestionBoxHandler::hideDropdownBox):
(WebCore::SuggestionBoxHandler::changeInputElementInnerTextValue):
(WebCore::SuggestionBoxHandler::parseSuggestions):
(WebCore::SuggestionBoxHandler::insertSuggestionsToDropdownBox):
(WebCore::adjustDropdownBoxPosition):
(WebCore::SuggestionBoxHandler::buildDropdownBoxTree):
* WebCoreSupport/SuggestionBoxHandler.h: Added.
(WebCore):
(SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::focusedElement):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::updateFormState):
* WebKitSupport/InputHandler.h:
(WebCore):
(InputHandler):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

8 years agoSource/WebCore: Web Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 16:22:55 +0000 (16:22 +0000)]
Source/WebCore: Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt: Added TimelineTraceEventProcessor.{h,cpp}.
* GNUmakefile.list.am:  Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* inspector/InspectorAllInOne.cpp: Ditto.
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp: create/destroy trace event processor on start/stop.
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::page):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

Source/WebKit/chromium: Plumbing trace events to Timeline

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agoWeb Inspector: Web Inspector: Specify return type of WebInspector.UIString
eustas@chromium.org [Tue, 26 Feb 2013 16:14:12 +0000 (16:14 +0000)]
Web Inspector: Web Inspector: Specify return type of WebInspector.UIString
https://bugs.webkit.org/show_bug.cgi?id=110095

Reviewed by Pavel Feldman.

Specify return type of WebInspector.UIString.
Fix new js-compiler warnings.

This change will increase type coverage by 0.4% (to 81%)

* inspector/front-end/ObjectPropertiesSection.js: Fix type errors.
* inspector/front-end/UIString.js:
(WebInspector.UIString): Return type specified.

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

8 years agoWeb Inspector: [Resources] Cookies table looks empty.
eustas@chromium.org [Tue, 26 Feb 2013 16:08:33 +0000 (16:08 +0000)]
Web Inspector: [Resources] Cookies table looks empty.
https://bugs.webkit.org/show_bug.cgi?id=110870

Reviewed by Pavel Feldman.

Fixed data-grid selector.

* inspector/front-end/resourcesPanel.css:
(.storage-view .data-grid): Fixed selector.

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

8 years ago[Chromium] New baselines for css3-modsel-15c
schenney@chromium.org [Tue, 26 Feb 2013 16:05:34 +0000 (16:05 +0000)]
[Chromium] New baselines for css3-modsel-15c

Unreviewed test expectations update.

* platform/chromium-linux-x86/css3/selectors3/xml: Removed.
* platform/chromium-linux/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-lion/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.txt: Added.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.png: Removed.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.txt: Removed.

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

8 years agoWeb Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityO...
vsevik@chromium.org [Tue, 26 Feb 2013 15:59:46 +0000 (15:59 +0000)]
Web Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110878

Reviewed by Alexander Pavlov.

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
FileSystemModel. This patch migrates FileSystem inspection support to new events.

* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel):
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype.refreshFileSystemList):

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

8 years agoWeb Inspector: Cannot deep expand an element that has previously been partially expanded
graouts@apple.com [Tue, 26 Feb 2013 15:57:50 +0000 (15:57 +0000)]
Web Inspector: Cannot deep expand an element that has previously been partially expanded
https://bugs.webkit.org/show_bug.cgi?id=110424

In the case where the children from the provided node have already been pushed, traverse children at the depth provided until we find children that have not been pushed yet.

Reviewed by Pavel Feldman.

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

8 years agoUnreviewed, rolling out r144054.
akling@apple.com [Tue, 26 Feb 2013 15:53:23 +0000 (15:53 +0000)]
Unreviewed, rolling out r144054.
http://trac.webkit.org/changeset/144054
https://bugs.webkit.org/show_bug.cgi?id=110854

broke builds

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):
* runtime/PropertyTable.cpp: Removed.
* runtime/Structure.cpp:
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):
* runtime/StructureInlines.h:

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

8 years agoREGRESSION (r143619): Crashes in three layout tests
commit-queue@webkit.org [Tue, 26 Feb 2013 15:43:07 +0000 (15:43 +0000)]
REGRESSION (r143619): Crashes in three layout tests
https://bugs.webkit.org/show_bug.cgi?id=110588

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-26
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Guard against null main resource identifiers. The main resource
identifier can be null at various times during the load. A null
identifier is never equal to the ones we are looking to remove.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFinishLoading): Use the new webkitWebViewRemoveSubresource helper.
(WebKit::FrameLoaderClient::dispatchDidFailLoading): ditto.
* webkit/webkitwebview.cpp:
(webkitWebViewRemoveSubresource): Added this helper which removes a subresource, but
never touches the main resource. This is adapted from the old method, for which the
main resource branch was dead code.
* webkit/webkitwebviewprivate.h: Update the method list.

LayoutTests:

* platform/gtk/TestExpectations: Unskip some tests which are no longer
crashing.

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

8 years agoUnused Structure property tables waste 14MB on Membuster.
akling@apple.com [Tue, 26 Feb 2013 15:32:30 +0000 (15:32 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:

    Added PropertyTable.cpp.

* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

    Moved marking of property table values here from Structure::visitChildren().

* runtime/StructureInlines.h:
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

    Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

* runtime/Structure.cpp:
(JSC::Structure::visitChildren):

    Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
* runtime/Structure.h:
(Structure):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

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

8 years agoUnreviewed, rolling out r144041, r144044, and r144048.
caseq@chromium.org [Tue, 26 Feb 2013 14:22:26 +0000 (14:22 +0000)]
Unreviewed, rolling out r144041, r144044, and r144048.
http://trac.webkit.org/changeset/144041
http://trac.webkit.org/changeset/144044
http://trac.webkit.org/changeset/144048
https://bugs.webkit.org/show_bug.cgi?id=105796

Broke build

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
* inspector/InspectorInstrumentation.h:
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineRecordFactory.cpp:
* inspector/TimelineRecordFactory.h:
* inspector/TimelineTraceEventProcessor.cpp: Removed.
* inspector/TimelineTraceEventProcessor.h: Removed.
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

Source/WebKit/chromium:

* public/WebDevToolsAgentClient.h:
* src/InspectorClientImpl.cpp:
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

LayoutTests:

* inspector/timeline/timeline-enum-stability-expected.txt:

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

8 years agoWeb Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded...
vsevik@chromium.org [Tue, 26 Feb 2013 14:20:26 +0000 (14:20 +0000)]
Web Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110863

Reviewed by Alexander Pavlov.

Source/WebCore:

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
IndexedDBModel. This patch migrates IndexedDB support to new events.

* inspector/Inspector.json:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):
* inspector/InspectorIndexedDBAgent.h:
(InspectorIndexedDBAgent):
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeModel.prototype.securityOrigins):

LayoutTests:

* http/tests/inspector/indexeddb/database-names-expected.txt:
* http/tests/inspector/indexeddb/database-names.html:

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

8 years agoUnreviewed fix after r144032.
ossy@webkit.org [Tue, 26 Feb 2013 13:57:36 +0000 (13:57 +0000)]
Unreviewed fix after r144032.
https://bugs.webkit.org/show_bug.cgi?id=110734

Update expected files due to JSC/V8 differences.

Patch by Csaba Osztrogon√°c <ossy@webkit.org> on 2013-02-26

* TestExpectations: Skip 2 failing tests until proper fix.
* html5lib/generated/run-template-write.html:
* html5lib/generated/run-tests1-data-expected.txt:
* html5lib/generated/run-tests1-write-expected.txt:
* html5lib/generated/run-tests18-data-expected.txt:
* html5lib/generated/run-tests18-write-expected.txt:
* html5lib/generated/run-tests7-data-expected.txt:
* html5lib/generated/run-tests7-write-expected.txt:
* platform/chromium/html5lib/generated/run-tests1-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests1-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-write-expected.txt.

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 13:51:58 +0000 (13:51 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoWeb Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
apavlov@chromium.org [Tue, 26 Feb 2013 13:51:16 +0000 (13:51 +0000)]
Web Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
https://bugs.webkit.org/show_bug.cgi?id=80857

Reviewed by Vsevolod Vlasov.

Frame.securityOrigin has always been set to a valid value, so this change just fixes
the protocol flaw.

* inspector/Inspector.json:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::buildObjectForFrame):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype._navigate):

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

8 years agoUnreviewed build fix following r144041.
caseq@chromium.org [Tue, 26 Feb 2013 13:44:38 +0000 (13:44 +0000)]
Unreviewed build fix following r144041.

* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):

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

8 years agoWeb Inspector: DataGrid should reveal and select next/previous DataGridNode upon...
vivek.vg@samsung.com [Tue, 26 Feb 2013 13:43:03 +0000 (13:43 +0000)]
Web Inspector: DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
https://bugs.webkit.org/show_bug.cgi?id=110862

Reviewed by Alexander Pavlov.

While deleting entries in the DataGrid, deleting of selected node should trigger selection of
next possible (backward/forward) DataGridNode.

* inspector/front-end/DataGrid.js:
(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGridNode.prototype.get leftPadding):
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):

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

8 years ago[Chromium] TestExpectations cleanup.
schenney@chromium.org [Tue, 26 Feb 2013 13:42:18 +0000 (13:42 +0000)]
[Chromium] TestExpectations cleanup.

Unreviewed removal of expectations for tests that are now passing.

* platform/chromium/TestExpectations:

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

8 years agoREGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
commit-queue@webkit.org [Tue, 26 Feb 2013 13:37:27 +0000 (13:37 +0000)]
REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

* http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
* http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.

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

8 years agoSource/WebCore: Web Inspector: show raster tasks on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 13:12:28 +0000 (13:12 +0000)]
Source/WebCore: Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

- add PaintLayer, Paint & RasterTask trace events handling to trace event processor;
- upon begin frame, emit aggregated background event for all raster tasks related to the inspected page.

Reviewed by Pavel Feldman.

* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):
* inspector/InspectorInstrumentation.h:
(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
* inspector/InspectorTimelineAgent.h:
(TimelineRecordType):
(WebCore):
* inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):
* inspector/TimelineRecordFactory.h:
(TimelineRecordFactory):
* inspector/TimelineTraceEventProcessor.cpp:
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(TimelineTraceEventProcessor):
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

LayoutTests: Web Inspector: show deferred paints on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

Reviewed by Pavel Feldman.

* inspector/timeline/timeline-enum-stability-expected.txt: Added "Rasterize" record type.

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

8 years agoImplement JIT on Windows 64 bits
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:04:28 +0000 (13:04 +0000)]
Implement JIT on Windows 64 bits
https://bugs.webkit.org/show_bug.cgi?id=107965

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

1. MSVC doesn't support inline assembly for 64 bits, implements the trampoline in a separate ASM file.

2. Windows 64 bits has a different calling convention than other OSes following the AMD64 ABI.
Differences that we have to handle here:
- Registers passed parameters are RCX, RDX, R8 and R9 instead of RDI, RSI, RDX, RCX, R8 and R9
- RDI and RSI must be preserved by callee
- Only return values <= 8 bytes can be returned by register (RDX can't be used to return a second word)
- There is no red-zone after RIP on the stack, but instead 4 reserved words before it

* Target.pri:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
(JSC):
(JITStackFrame):
(JSC::JITStackFrame::returnAddressSlot):
* jit/JITStubsMSVC64.asm: Added.
* jit/JSInterfaceJIT.h:
(JSInterfaceJIT):
* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
* yarr/YarrJIT.cpp:
(YarrGenerator):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::generateReturn):

Source/WTF:

* wtf/Platform.h:

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

8 years agoWork around a MSVC 2012 Update 1 bug causing a crash on x86
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:01:59 +0000 (13:01 +0000)]
Work around a MSVC 2012 Update 1 bug causing a crash on x86
https://bugs.webkit.org/show_bug.cgi?id=110488

Reviewed by Anders Carlsson.

The crash happens when building with /O2, where TextEncodingNameHash::equal is
incorrectly optimized with the inlined toASCIILower and uses a register already in use.
The function returns false incorrectly, causing a mismatch of text encoding name which
then results in a null pointer access.

Slightly rewording the use of the inline function lets the compiler produce correct code.

The bug has already been reported and should be fixed in the next release of MSVS later this year.
https://connect.microsoft.com/VisualStudio/feedback/details/777533/vs2012-c-optimizing-bug-when-using-inline-and-char-return-type-x86-target-only

* platform/text/TextEncodingRegistry.cpp:

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

8 years agoWeb Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 12:52:33 +0000 (12:52 +0000)]
Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

Source/WebCore:

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/Inspector.json:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
(WebCore::InspectorTimelineAgent::page):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

Source/WebKit/chromium:

Plumb trace events to Inspector.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agonew-commit-bot: Some IRC clients doesn't linkify rollout messages
vivek.vg@samsung.com [Tue, 26 Feb 2013 12:52:32 +0000 (12:52 +0000)]
new-commit-bot: Some IRC clients doesn't linkify rollout messages
https://bugs.webkit.org/show_bug.cgi?id=110861

Reviewed by Ryosuke Niwa.

Adding the space before ':' in order to fix the links shown for the rollout message.

* Scripts/webkitpy/tool/commands/newcommitbot.py:
(NewCommitBot._summarize_commit_log):

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

8 years agoWeb Inspector: display background events on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 12:42:58 +0000 (12:42 +0000)]
Web Inspector: display background events on Timeline
https://bugs.webkit.org/show_bug.cgi?id=108599

Reviewed by Pavel Feldman.

- add optional `thread' field to timeline event;
- if thread field is present, display the event as 'background' (hollow bar / list icon), align to nearest foreground event;
- do not account background events in Frame mode of overview.

* inspector/Inspector.json:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

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

8 years ago[V8] Rename BatchedCallback to BatchedMethod
haraken@chromium.org [Tue, 26 Feb 2013 12:33:03 +0000 (12:33 +0000)]
[V8] Rename BatchedCallback to BatchedMethod
https://bugs.webkit.org/show_bug.cgi?id=110791

Reviewed by Adam Barth.

Now 'Callback' is used to refer to functions that are called back
by V8. DOM methods should be referred to as 'Method's.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
* bindings/scripts/test/V8/V8TestTypedefs.cpp:
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):
* bindings/v8/V8DOMConfiguration.cpp:
(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8DOMConfiguration.h:
(V8DOMConfiguration):

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

8 years agoAdd User-Agent header in opening handshake headers.
toyoshim@chromium.org [Tue, 26 Feb 2013 12:01:24 +0000 (12:01 +0000)]
Add User-Agent header in opening handshake headers.
https://bugs.webkit.org/show_bug.cgi?id=110601

Reviewed by Alexey Proskuryakov.

RFC-6455 doesn't require to send User-Agent header, but allow it.
Many web application developers want to have it, and Firefox already
did it. This patch adds User-Agent header in opening handshake also in
WebKit ports.

Test: http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html

Source/WebCore:

* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

LayoutTests:

* http/tests/websocket/tests/hybi/sendback_ua_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake-expected.txt: Added.
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html: Added.

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

8 years agoXSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
mkwst@chromium.org [Tue, 26 Feb 2013 11:41:23 +0000 (11:41 +0000)]
XSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
https://bugs.webkit.org/show_bug.cgi?id=110859

Reviewed by Jochen Eisinger.

XSSAuditor::init should explicitly make a thread-safe copy of the
document's URL as a String rather than relying on implicit casting from
a copy of the KURL.

This shouldn't change any visible behavior; all existing XSSAuditor
tests should continue to pass. They'll now just be a bit more smug while
doing so.

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::init):

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 26 Feb 2013 11:31:02 +0000 (11:31 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Updating expectations for two inspector tests.
Expanding expectation for media/encrypted-media/encrypted-media-syntax.html to expect timeouts as well.
Adding a flaky failure expectation for svg/custom/animation-currentColor.svg.

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

8 years ago[chromium] add content shell specific TestExpectations
jochen@chromium.org [Tue, 26 Feb 2013 11:22:45 +0000 (11:22 +0000)]
[chromium] add content shell specific TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=110710

Reviewed by Eric Seidel.

For now, add tests that pass on content shell but fail on DRT.
Next, I will file bugs for all the remaining failing tests and skip
them here to ease the transition from DRT.

* platform/chromium/ContentShellTestExpectations: Added.

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

8 years ago[Qt] Unreviewed gardening.
zarvai@inf.u-szeged.hu [Tue, 26 Feb 2013 11:09:16 +0000 (11:09 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-5.0-wk1/http/tests/navigation/forward-and-cancel-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/forward-and-cancel-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-frames-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-frames-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-goback2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-goback2-expected.txt.

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

8 years agoLayout Test Multiple html5lib/ tests are too slow and should be split.
eric@webkit.org [Tue, 26 Feb 2013 11:05:17 +0000 (11:05 +0000)]
Layout Test Multiple html5lib/ tests are too slow and should be split.
https://bugs.webkit.org/show_bug.cgi?id=110734

Reviewed by Adam Barth.

Split all of the html5lib tests into write and data variants
instead of running both in sequence in each test.
I added a script to autogenerate all of the test harness files
from the *.dat files in resources/ (which we sync with the
upstream html5lib tests.

I removed all the old tests and expectations as well as TestExpectation entries.
All of these tests should now be fast enough to avoid timeout on all platforms.
I set the expectations from my chromium-linux (v8) machine, thus someone
from a jsc port will need to rebaseline appropriately from their machine.

* TestExpectations:
* html5lib/generate-test-wrappers.py: Added.
(WrapperGenerator):
(_files_in_directory_with_suffix):
(_last_path_component_removing_suffix):
(_remove_harness_prefix):
(_remove_harness_type):
(_test_name_from_harness_name):
(_remove_stale_tests):
(_input_path):
(_harness_path):
(_harness_content):
(_write_harness):
(main):
* html5lib/generated/run-adoption01-data-expected.txt: Added.
* html5lib/generated/run-adoption01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption01-write-expected.txt: Added.
* html5lib/generated/run-adoption01-write.html: Renamed from LayoutTests/html5lib/generated/run-template.html.
* html5lib/generated/run-adoption02-data-expected.txt: Added.
* html5lib/generated/run-adoption02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption02-write-expected.txt: Added.
* html5lib/generated/run-adoption02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests11.html.
* html5lib/generated/run-comments01-data-expected.txt: Added.
* html5lib/generated/run-comments01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-comments01-write-expected.txt: Added.
* html5lib/generated/run-comments01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-data-expected.txt: Added.
* html5lib/generated/run-doctype01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-write-expected.txt: Added.
* html5lib/generated/run-doctype01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests10.html.
* html5lib/generated/run-domjs-unsafe-data-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-domjs-unsafe-write-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-data-expected.txt: Added.
* html5lib/generated/run-entities01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-write-expected.txt: Added.
* html5lib/generated/run-entities01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-data-expected.txt: Added.
* html5lib/generated/run-entities02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-write-expected.txt: Added.
* html5lib/generated/run-entities02-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-data-expected.txt: Added.
* html5lib/generated/run-html5test-com-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-write-expected.txt: Added.
* html5lib/generated/run-html5test-com-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-data-expected.txt: Added.
* html5lib/generated/run-inbody01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-write-expected.txt: Added.
* html5lib/generated/run-inbody01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-data-expected.txt: Added.
* html5lib/generated/run-isindex-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-write-expected.txt: Added.
* html5lib/generated/run-isindex-write.html: Renamed from LayoutTests/html5lib/generated/run-tests2.html.
* html5lib/generated/run-pending-spec-changes-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data.html: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-data-expected.txt: Added.
* html5lib/generated/run-scriptdata01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-write-expected.txt: Added.
* html5lib/generated/run-scriptdata01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-data-expected.txt: Added.
* html5lib/generated/run-tables01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-write-expected.txt: Added.
* html5lib/generated/run-tables01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests22.html.
* html5lib/generated/run-template-data-expected.txt: Added.
* html5lib/generated/run-template-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-template-expected.txt: Removed.
* html5lib/generated/run-template-write-expected.txt: Added.
* html5lib/generated/run-template-write.html: Renamed from LayoutTests/html5lib/generated/run-tests3.html.
* html5lib/generated/run-tests1-data-expected.txt: Added.
* html5lib/generated/run-tests1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests1-expected.txt: Removed.
* html5lib/generated/run-tests1-write-expected.txt: Added.
* html5lib/generated/run-tests1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-data-expected.txt: Added.
* html5lib/generated/run-tests10-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-expected.txt: Removed.
* html5lib/generated/run-tests10-write-expected.txt: Added.
* html5lib/generated/run-tests10-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-data-expected.txt: Added.
* html5lib/generated/run-tests11-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-expected.txt: Removed.
* html5lib/generated/run-tests11-write-expected.txt: Added.
* html5lib/generated/run-tests11-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-data-expected.txt: Added.
* html5lib/generated/run-tests12-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-expected.txt: Removed.
* html5lib/generated/run-tests12-write-expected.txt: Added.
* html5lib/generated/run-tests12-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12.html: Removed.
* html5lib/generated/run-tests14-data-expected.txt: Added.
* html5lib/generated/run-tests14-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14-expected.txt: Removed.
* html5lib/generated/run-tests14-write-expected.txt: Added.
* html5lib/generated/run-tests14-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14.html: Removed.
* html5lib/generated/run-tests15-data-expected.txt: Added.
* html5lib/generated/run-tests15-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15-expected.txt: Removed.
* html5lib/generated/run-tests15-write-expected.txt: Added.
* html5lib/generated/run-tests15-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15.html: Removed.
* html5lib/generated/run-tests16-data-expected.txt: Added.
* html5lib/generated/run-tests16-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16-expected.txt: Removed.
* html5lib/generated/run-tests16-write-expected.txt: Added.
* html5lib/generated/run-tests16-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16.html: Removed.
* html5lib/generated/run-tests17-data-expected.txt: Added.
* html5lib/generated/run-tests17-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17-expected.txt: Removed.
* html5lib/generated/run-tests17-write-expected.txt: Added.
* html5lib/generated/run-tests17-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17.html: Removed.
* html5lib/generated/run-tests18-data-expected.txt: Added.
* html5lib/generated/run-tests18-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18-expected.txt: Removed.
* html5lib/generated/run-tests18-write-expected.txt: Added.
* html5lib/generated/run-tests18-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18.html: Removed.
* html5lib/generated/run-tests19-data-expected.txt: Added.
* html5lib/generated/run-tests19-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19-expected.txt: Removed.
* html5lib/generated/run-tests19-write-expected.txt: Added.
* html5lib/generated/run-tests19-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19.html: Removed.
* html5lib/generated/run-tests2-data-expected.txt: Added.
* html5lib/generated/run-tests2-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests2-expected.txt: Removed.
* html5lib/generated/run-tests2-write-expected.txt: Added.
* html5lib/generated/run-tests2-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-data-expected.txt: Added.
* html5lib/generated/run-tests20-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-expected.txt: Removed.
* html5lib/generated/run-tests20-write-expected.txt: Added.
* html5lib/generated/run-tests20-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20.html: Removed.
* html5lib/generated/run-tests21-data-expected.txt: Added.
* html5lib/generated/run-tests21-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21-expected.txt: Removed.
* html5lib/generated/run-tests21-write-expected.txt: Added.
* html5lib/generated/run-tests21-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21.html: Removed.
* html5lib/generated/run-tests22-data-expected.txt: Added.
* html5lib/generated/run-tests22-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests22-expected.txt: Removed.
* html5lib/generated/run-tests22-write-expected.txt: Added.
* html5lib/generated/run-tests22-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-data-expected.txt: Added.
* html5lib/generated/run-tests23-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-expected.txt: Removed.
* html5lib/generated/run-tests23-write-expected.txt: Added.
* html5lib/generated/run-tests23-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23.html: Removed.
* html5lib/generated/run-tests24-data-expected.txt: Added.
* html5lib/generated/run-tests24-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24-expected.txt: Removed.
* html5lib/generated/run-tests24-write-expected.txt: Added.
* html5lib/generated/run-tests24-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24.html: Removed.
* html5lib/generated/run-tests25-data-expected.txt: Added.
* html5lib/generated/run-tests25-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25-expected.txt: Removed.
* html5lib/generated/run-tests25-write-expected.txt: Added.
* html5lib/generated/run-tests25-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25.html: Removed.
* html5lib/generated/run-tests26-data-expected.txt: Added.
* html5lib/generated/run-tests26-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26-expected.txt: Removed.
* html5lib/generated/run-tests26-write-expected.txt: Added.
* html5lib/generated/run-tests26-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26.html: Removed.
* html5lib/generated/run-tests3-data-expected.txt: Added.
* html5lib/generated/run-tests3-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests3-expected.txt: Removed.
* html5lib/generated/run-tests3-write-expected.txt: Added.
* html5lib/generated/run-tests3-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-data-expected.txt: Added.
* html5lib/generated/run-tests4-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-expected.txt: Removed.
* html5lib/generated/run-tests4-write-expected.txt: Added.
* html5lib/generated/run-tests4-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4.html: Removed.
* html5lib/generated/run-tests5-data-expected.txt: Added.
* html5lib/generated/run-tests5-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5-expected.txt: Removed.
* html5lib/generated/run-tests5-write-expected.txt: Added.
* html5lib/generated/run-tests5-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5.html: Removed.
* html5lib/generated/run-tests6-data-expected.txt: Added.
* html5lib/generated/run-tests6-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6-expected.txt: Removed.
* html5lib/generated/run-tests6-write-expected.txt: Added.
* html5lib/generated/run-tests6-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6.html: Removed.
* html5lib/generated/run-tests7-data-expected.txt: Added.
* html5lib/generated/run-tests7-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7-expected.txt: Removed.
* html5lib/generated/run-tests7-write-expected.txt: Added.
* html5lib/generated/run-tests7-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7.html: Removed.
* html5lib/generated/run-tests8-data-expected.txt: Added.
* html5lib/generated/run-tests8-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8-expected.txt: Removed.
* html5lib/generated/run-tests8-write-expected.txt: Added.
* html5lib/generated/run-tests8-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8.html: Removed.
* html5lib/generated/run-tests9-data-expected.txt: Added.
* html5lib/generated/run-tests9-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9-expected.txt: Removed.
* html5lib/generated/run-tests9-write-expected.txt: Added.
* html5lib/generated/run-tests9-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9.html: Removed.
* html5lib/generated/run-tests_innerHTML_1-data-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests_innerHTML_1-write-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-data-expected.txt: Added.
* html5lib/generated/run-tricky01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-write-expected.txt: Added.
* html5lib/generated/run-tricky01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-data-expected.txt: Added.
* html5lib/generated/run-webkit01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-write-expected.txt: Added.
* html5lib/generated/run-webkit01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-data-expected.txt: Added.
* html5lib/generated/run-webkit02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-write-expected.txt: Added.
* html5lib/generated/run-webkit02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/resources/runner.js:
(window.onload):
* html5lib/runner-expected.txt: Removed.
* html5lib/runner.html: Removed.
* platform/chromium/TestExpectations:
* platform/chromium/html5lib/generated/run-tests1-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests18-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests7-expected.txt: Removed.

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

8 years agoShadow DOM styles appear to be over-eagerly shared
tasak@google.com [Tue, 26 Feb 2013 10:51:58 +0000 (10:51 +0000)]
Shadow DOM styles appear to be over-eagerly shared
https://bugs.webkit.org/show_bug.cgi?id=110797

Reviewed by Dimitri Glazkov.

Source/WebCore:

A style of a distributed node should not be shared, because the node
might be affected by styles in a shadow dom tree, i.e. :distributed
or something.

Test: fast/dom/shadow/no-style-sharing-with-distributed-nodes.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::locateCousinList):
Skip shadow hosts, because children of shadow hosts are distributed
nodes and cannot share their styles.

LayoutTests:

* fast/dom/shadow/no-style-sharing-with-distributed-nodes-expected.html: Added.
* fast/dom/shadow/no-style-sharing-with-distributed-nodes.html: Added.

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

8 years agoRemove unused conditional includes of {MathML,SVG}Names.h
adamk@chromium.org [Tue, 26 Feb 2013 10:40:12 +0000 (10:40 +0000)]
Remove unused conditional includes of {MathML,SVG}Names.h
https://bugs.webkit.org/show_bug.cgi?id=110809

Reviewed by Eric Seidel.

* html/parser/HTMLConstructionSite.cpp:

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

8 years ago[Qt] Unreviewed gardening. Update platform specific expected file after r143836.
kadam@inf.u-szeged.hu [Tue, 26 Feb 2013 10:30:29 +0000 (10:30 +0000)]
[Qt] Unreviewed gardening. Update platform specific expected file after r143836.

* platform/qt/TestExpectations: Skipped after r143300.
* platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.

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

8 years ago[GTK] Add Clutter to jhbuild
joone.hur@intel.com [Tue, 26 Feb 2013 10:05:47 +0000 (10:05 +0000)]
[GTK] Add Clutter to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=110245

Reviewed by Martin Robinson.

Add clutter, cogl, clutter-gtk, and atk to the optional moduleset.
This allows to build WebKitGtk+ with clutter as an acceleration backend
within the jhbuild environment.

* gtk/jhbuild-optional.modules:

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

8 years agoThreaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter...
eric@webkit.org [Tue, 26 Feb 2013 09:57:33 +0000 (09:57 +0000)]
Threaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter.html
https://bugs.webkit.org/show_bug.cgi?id=110801

Reviewed by Adam Barth.

This causes 6 more tests to pass for the threaded parser,
an solves all of our timeout issues.

These tests which were failing were racy, we just were never
hitting the race due to using file urls.  This change fixes
the threaded parser to emulate one more of the EOF quirks from
the loader/main-thread-parser interaction.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):

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

8 years agoKill another analyzer warning in javascriptcore
oliver@apple.com [Tue, 26 Feb 2013 09:47:57 +0000 (09:47 +0000)]
Kill another analyzer warning in javascriptcore
https://bugs.webkit.org/show_bug.cgi?id=110802

Reviewed by Benjamin Poulain.

Add null checks.

* profiler/LegacyProfiler.cpp:
(JSC::LegacyProfiler::startProfiling):
(JSC::LegacyProfiler::stopProfiling):

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

8 years agoWeb Inspector: CSSAgent.setStyleSheetText crashes on inline styles
apavlov@chromium.org [Tue, 26 Feb 2013 09:15:17 +0000 (09:15 +0000)]
Web Inspector: CSSAgent.setStyleSheetText crashes on inline styles
https://bugs.webkit.org/show_bug.cgi?id=110359

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::undo): Pass ExceptionCode into setText().
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::redo): Ditto.
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::setText): Make use of checkPageStyleSheet().
(WebCore::InspectorStyleSheet::setRuleSelector): Ditto.
(WebCore::InspectorStyleSheet::addRule): Ditto.
(WebCore::InspectorStyleSheet::deleteRule): Ditto.
(WebCore::InspectorStyleSheet::checkPageStyleSheet):
  Return NOT_SUPPORTED_ERR if no m_pageStyleSheet.
(WebCore::InspectorStyleSheet::setStyleText): Check field directly.
* inspector/InspectorStyleSheet.h:

LayoutTests:

* inspector/styles/styles-new-API-expected.txt:
* inspector/styles/styles-new-API.html:

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

8 years agoImplement coordinated scrollbar for subframes and overflow:scroll
commit-queue@webkit.org [Tue, 26 Feb 2013 09:13:32 +0000 (09:13 +0000)]
Implement coordinated scrollbar for subframes and overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=109560

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-26
Reviewed by James Robinson.

Source/WebCore:

This patch obsoletes ScrollingCoordinatorPrivate for the Chromium
implementation. Also removes the concept of a single main scrolling
layer. Should use HashMap to keep track resources for multiple
scrollable objects.

Many of the callbacks are extended to support ScrollableArea instead
of just FrameView. Now ScrollingCoordinatorChromium coordinates
scrollbars for both subframes and overflow:scroll.

Some drive-by change:
1. Remove the GraphicsLayer parameter for layer change callbacks.
   Should be able to get the latest layer from the ScrollableArea anyway.
2. Should start from main frame document when updating touch event target rects.

New chromium test: ScrollingCoordinatorChromiumTest.iframeScrolling

* page/Frame.cpp:
(WebCore::Frame::willDetachPage):
* page/FrameView.cpp:
(WebCore::FrameView::prepareForDetach):
(WebCore::FrameView::layerForScrolling):
(WebCore):
* page/FrameView.h:
(FrameView):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::scrollLayerForScrollableArea):
(WebCore):
(WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea):
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::willDestroyScrollableArea):
(WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
(ScrollingCoordinator):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::scrollingWebLayerForGraphicsLayer):
(WebCore::ScrollingCoordinatorChromium::scrollingWebLayerForScrollableArea):
(WebCore::ScrollingCoordinatorChromium::ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::~ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::touchEventTargetRectsDidChange):
(WebCore::createScrollbarLayer):
(WebCore::detachScrollbarLayer):
(WebCore::setupScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::willDestroyScrollableArea):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollbarLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):
(WebCore::ScrollingCoordinatorChromium::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinatorChromium::setShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinatorChromium::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinatorChromium::setLayerIsFixedToContainerLayer):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::addWebScrollbarLayer):
(WebCore):
(WebCore::ScrollingCoordinatorChromium::getWebScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::removeWebScrollbarLayer):
* page/scrolling/chromium/ScrollingCoordinatorChromium.h:
(WebCore):
(ScrollingCoordinatorChromium):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollingCoordinatorMac):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::scrollableAreaScrollbarLayerDidChange):
* platform/ScrollableArea.h:
(ScrollableArea):
(WebCore::ScrollableArea::layerForScrolling):
* platform/graphics/GraphicsLayer.h:
(GraphicsLayer):
(WebCore::GraphicsLayer::setContentsToPlatformLayer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::layerForScrolling):
(WebCore):
* rendering/RenderLayer.h:
(RenderLayer):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateScrollingLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::scrollingLayerDidChange):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):

Source/WebKit/chromium:

Added ScrollingCoordinatorChromiumTest.iframeScrolling to verify
impl-side scrolling and impl-side scrollbars for frames.

Update ScrollingCoordinatorChromiumTest.overflowScrolling to verify
impl-side scrollbars.

* tests/ScrollingCoordinatorChromiumTest.cpp:
(WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
(WebKit::TEST_F):
(WebKit):
* tests/data/iframe-scrolling-inner.html: Added.
* tests/data/iframe-scrolling.html: Added.

LayoutTests:

Coordinated scrollbars changes drawsContent flag on scrollbar GraphicsLayers,
test expectation are updated.

* platform/chromium-linux/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/iframe-resize-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/resizer-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/scrolling-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-overlay-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-resize-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/resizer-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/scrolling-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/chromium/TestExpectations:

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

8 years agoUnreviewed, rolling out r144004.
commit-queue@webkit.org [Tue, 26 Feb 2013 09:07:57 +0000 (09:07 +0000)]
Unreviewed, rolling out r144004.
http://trac.webkit.org/changeset/144004
https://bugs.webkit.org/show_bug.cgi?id=110858

This iOS change is outdated (Requested by notbenjamin on
#webkit).

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

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):
* parser/Parser.cpp:
(JSC::::Parser):
* parser/Parser.h:
(JSC::Parser::canRecurse):
(Parser):

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

8 years ago[V8] Overloaded constructors don't need header declarations
haraken@chromium.org [Tue, 26 Feb 2013 09:06:12 +0000 (09:06 +0000)]
[V8] Overloaded constructors don't need header declarations
https://bugs.webkit.org/show_bug.cgi?id=110799

Reviewed by Adam Barth.

They are implemented as static functions in cpp files.
Header declarations are not needed.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

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

8 years agoUnreviewed, rolling out r144016.
commit-queue@webkit.org [Tue, 26 Feb 2013 09:04:57 +0000 (09:04 +0000)]
Unreviewed, rolling out r144016.
http://trac.webkit.org/changeset/144016
https://bugs.webkit.org/show_bug.cgi?id=110856

Breaks compilation on chromium mac (Requested by vsevik on
#webkit).

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

Source/WebCore:

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/KeyCodeConversionTest.cpp: Removed.

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

8 years agoAppease static analyzer warning about null string passed to strlen
oliver@apple.com [Tue, 26 Feb 2013 08:49:28 +0000 (08:49 +0000)]
Appease static analyzer warning about null string passed to strlen
https://bugs.webkit.org/show_bug.cgi?id=110658

Reviewed by Benjamin Poulain.

Add a null check before calling strlen

* wtf/Threading.cpp:
(WTF::createThread):

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

8 years agoSource/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break...
glenn@skynav.com [Tue, 26 Feb 2013 08:42:14 +0000 (08:42 +0000)]
Source/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

This patch adds semantic support for the CSS3 line-break property (qua -webkit-line-break),
and enables testing on (apple) mac ports. Follow on patches will enable these tests on
other ports as they are incrementally verified.

See also wiki documentation at:
[1] http://trac.webkit.org/wiki/LineBreaking
[2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping

Tests: css3/line-break/line-break-auto-centered.html
       css3/line-break/line-break-auto-half-kana.html
       css3/line-break/line-break-auto-hyphens.html
       css3/line-break/line-break-auto-inseparables.html
       css3/line-break/line-break-auto-iteration-marks.html
       css3/line-break/line-break-auto-postfixes.html
       css3/line-break/line-break-auto-prefixes.html
       css3/line-break/line-break-auto-sound-marks.html
       css3/line-break/line-break-loose-centered.html
       css3/line-break/line-break-loose-half-kana.html
       css3/line-break/line-break-loose-hyphens.html
       css3/line-break/line-break-loose-inseparables.html
       css3/line-break/line-break-loose-iteration-marks.html
       css3/line-break/line-break-loose-postfixes.html
       css3/line-break/line-break-loose-prefixes.html
       css3/line-break/line-break-loose-sound-marks.html
       css3/line-break/line-break-normal-centered.html
       css3/line-break/line-break-normal-half-kana.html
       css3/line-break/line-break-normal-hyphens.html
       css3/line-break/line-break-normal-inseparables.html
       css3/line-break/line-break-normal-iteration-marks.html
       css3/line-break/line-break-normal-postfixes.html
       css3/line-break/line-break-normal-prefixes.html
       css3/line-break/line-break-normal-sound-marks.html
       css3/line-break/line-break-strict-centered.html
       css3/line-break/line-break-strict-half-kana.html
       css3/line-break/line-break-strict-hyphens.html
       css3/line-break/line-break-strict-inseparables.html
       css3/line-break/line-break-strict-iteration-marks.html
       css3/line-break/line-break-strict-postfixes.html
       css3/line-break/line-break-strict-prefixes.html
       css3/line-break/line-break-strict-sound-marks.html

These tests were previously added in http://trac.webkit.org/changeset/143378, but skipped
in generic TestExpectations. In this patch, they are marked as Pass for the (apple) mac ports.

* platform/text/LineBreakIteratorPoolICU.h:
(WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
Add static function to construct ICU locale argument (also used as pool key) with additional
break keyword.
(LineBreakIteratorPool):
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
Remove direct dependency from ICU library (and types), moving that dependency into
new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
Update to take line break mode into account.
Create (and cache) different break iterators depending on line break mode (in addition to locale),
which entails expanding pool entry key format to optionally append "@break=" +
"loose"|"normal"|"strict" keyword to locale string.

* platform/text/TextBreakIterator.h:
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::isLooseCJKMode):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
Add state member to indicate line break mode.

* platform/text/TextBreakIteratorICU.cpp:
(WebCore::acquireLineBreakIterator):
Use new line break mode when making iterator from pool.
Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::releaseLineBreakIterator):
Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore):
(WebCore::isCJKLocale):
New functions for determining if CJK rules apply.
(WebCore::openLineBreakIterator):
New function for abstracting opening of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
This function also takes into account the line break mode.
(WebCore::closeLineBreakIterator):
(WebCore::mapLineIteratorModeToRules):
New function for abstracting closing of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
Pass line break iterator mode flag when reseting LazyLineBreakIterator.
Add looseMode local variable to prevent need for computing under isBreakable().

* rendering/RenderText.cpp:
(WebCore::mapLineBreakToIteratorMode):
Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.
(WebCore):
(WebCore::RenderText::computePreferredLogicalWidths):
Ensure (lazy line) breakIterator is initialized for line break mode.
Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.

* rendering/RenderText.h:
(WebCore):
Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.

* rendering/break_lines.cpp:
(WebCore):
Introduce (local) enum NBSPBehavior for expanding template on nextBreakablePosition.
(WebCore::isBreakableSpace):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation. Use new loose mode flavors off NBP functions.
(WebCore::needsLineBreakIterator):
Use enum NBSP behavior template parameter rather than boolean.
(WebCore::nextBreakablePositionNonLoosely):
Extend name to distinguish from loose flavor of this function.
(WebCore::nextBreakablePositionLoosely):
Add loose flavor of NBP invoked only when loose mode applies, in which case ASCII shortcut
table cannot be used.
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
Use (renamed) non-loose flavor of NBP.
(WebCore::nextBreakablePositionLoose):
(WebCore::nextBreakablePositionIgnoringNBSPLoose):
Introduce loose flavor of NBP template expansions.

* rendering/break_lines.h:
(WebCore):
(WebCore::isBreakable):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation.

LayoutTests: CSS3: line-break property support
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

* platform/mac/TestExpectations: Mark css3/line-break tests as passing.

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

8 years ago[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
kadam@inf.u-szeged.hu [Tue, 26 Feb 2013 08:38:01 +0000 (08:38 +0000)]
[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
https://bugs.webkit.org/show_bug.cgi?id=110756.

Reviewed by Geoffrey Garen.

* platform/qt/TestExpectations:

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

8 years ago[chromium] Fix continuous painting mode
commit-queue@webkit.org [Tue, 26 Feb 2013 08:34:53 +0000 (08:34 +0000)]
[chromium] Fix continuous painting mode
https://bugs.webkit.org/show_bug.cgi?id=110788

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Adrienne Walker.

Recent instrumentation shuffling caused WebViewImpl::didBeginFrame to no longer be called, which
broke continuous painting.  Since continuous painting mode is meant to simply invalidate layers
on each frame, it's a better fit for the animation system. This moves the invalidation calls
into WebViewImpl::updateAnimations along with other animation type things.

Tested manually by enabling continuous painting mode in the inspector. There aren't any automated
tests in WebKit for this feature.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setContinuousPaintingEnabled):
(WebKit::WebViewImpl::didBeginFrame):
(WebKit::WebViewImpl::updateAnimations):
* src/painting/ContinuousPainter.cpp:
(WebKit::ContinuousPainter::setNeedsDisplayRecursive):

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

8 years agokeydown and keyup events have zero keycode for some numeric pad keys under Chromium...
commit-queue@webkit.org [Tue, 26 Feb 2013 08:32:32 +0000 (08:32 +0000)]
keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values
as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

* WebKit.gypi:
* tests/KeyCodeConversionTest.cpp: Added.
(WebCore):
(WebCore::TEST):

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

8 years agoUnreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix
hausmann@webkit.org [Tue, 26 Feb 2013 08:28:52 +0000 (08:28 +0000)]
Unreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix

Add an intermediate pluginName string variable instead of
accessing plugin.info outside the feature #ifdef.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::unavailablePluginButtonClicked):

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

8 years agoAnother fix attempt after r143991 since having \r? after a greedy match doesn't help.
rniwa@webkit.org [Tue, 26 Feb 2013 07:57:27 +0000 (07:57 +0000)]
Another fix attempt after r143991 since having \r? after a greedy match doesn't help.

* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.value_from_svn_info):

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 07:56:40 +0000 (07:56 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoCoordinated Graphics: remove redundant update of non compositing layer.
commit-queue@webkit.org [Tue, 26 Feb 2013 07:47:35 +0000 (07:47 +0000)]
Coordinated Graphics: remove redundant update of non compositing layer.
https://bugs.webkit.org/show_bug.cgi?id=110444

Patch by Huang Dongsung <luxtella@company100.net> on 2013-02-25
Reviewed by Noam Rosenthal.

Currently, we update non compositing layer when the page scrolled. However, it
is not needed, because TiledBackingStore can scroll without tile update.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
(CoordinatedLayerTreeHost):

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

8 years agoREGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
jer.noble@apple.com [Tue, 26 Feb 2013 07:42:59 +0000 (07:42 +0000)]
REGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
https://bugs.webkit.org/show_bug.cgi?id=110848

Reviewed by Ryosuke Niwa.

NULL-check the result of document->documentElement().

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

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

8 years ago6% regression in intl1 page cycler on chromium-mac
abarth@webkit.org [Tue, 26 Feb 2013 07:21:52 +0000 (07:21 +0000)]
6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Unreviewed.

This patch restores the code that I rolled out in
http://trac.webkit.org/changeset/143960 and
http://trac.webkit.org/changeset/143983. Rolling out those patches did
not heal the bot.

* dom/Element.cpp:
(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::UniqueElementData::addAttribute):
(WebCore::UniqueElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):
(WebCore::UniqueElementData::getAttributeItem):
(WebCore):
(WebCore::UniqueElementData::attributeItem):
* dom/Element.h:
(ElementData):
(UniqueElementData):
(WebCore::isShadowHost):
(WebCore::ElementData::length):
(WebCore::ElementData::attributeItem):
* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
* html/parser/CSSPreloadScanner.cpp:
(WebCore):
(WebCore::CSSPreloadScanner::scanCommon):
(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):
* html/parser/CSSPreloadScanner.h:
(CSSPreloadScanner):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::startBackgroundParser):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::tagIdFor):
(WebCore):
(WebCore::TokenPreloadScanner::initiatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(TokenPreloadScanner::StartTagScanner):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::createCheckpoint):
(WebCore::TokenPreloadScanner::rewindTo):
(WebCore::TokenPreloadScanner::scan):
(WebCore::TokenPreloadScanner::scanCommon):
(WebCore::TokenPreloadScanner::updatePredictedBaseURL):
(WebCore::HTMLPreloadScanner::scan):
* html/parser/HTMLPreloadScanner.h:
(TokenPreloadScanner):
(WebCore::TokenPreloadScanner::isSafeToSendToAnotherThread):
(WebCore::TokenPreloadScanner::Checkpoint::Checkpoint):
(Checkpoint):

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 07:01:19 +0000 (07:01 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoGCE EWS bots failing intermittently on HTTP 502 error while updating their status
noel.gordon@gmail.com [Tue, 26 Feb 2013 06:32:09 +0000 (06:32 +0000)]
GCE EWS bots failing intermittently on HTTP 502 error while updating their status
https://bugs.webkit.org/show_bug.cgi?id=110845

Unreviewed EWS bot fix.

Switch the Queue Status Server address the EWS bots use to a more direct URL that
doesn't seem to be having problems from GCE like queues.webkit.org.

Patch by Alan Cutter <alancutter@chromium.org> on 2013-02-25

* Scripts/webkitpy/common/net/statusserver.py:
(StatusServer):

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

8 years agoAudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioD...
crogers@google.com [Tue, 26 Feb 2013 05:53:49 +0000 (05:53 +0000)]
AudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioDevice
https://bugs.webkit.org/show_bug.cgi?id=110796

Reviewed by Kenneth Russell.

* platform/audio/chromium/AudioDestinationChromium.cpp:
(WebCore::AudioDestinationChromium::AudioDestinationChromium):

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

8 years agoNeed a more robust WebSQL disk usage computation.
mark.lam@apple.com [Tue, 26 Feb 2013 05:06:12 +0000 (05:06 +0000)]
Need a more robust WebSQL disk usage computation.
https://bugs.webkit.org/show_bug.cgi?id=110805.

Reviewed by Geoffrey Garen.

- Changed DatabaseTracker::usageForOrigin() to compute the disk usage
  for a specified origin by fetching database sizes from the file system
  instead of using cached file size values.

- The OriginQuotaManager and OriginUsageRecord are no longer needed.
  Updated build files to reflect this.

- Removed getMaxSizeForDatabase() from DatabaseManager, DatabaseServer,
  and AbstractDatabaseServer since it is only needed in the backend.

- DatabaseTracker::getMaxSizeForDatabase() now calls usageForOrigin()
  to get the disk usage for its computation.

- The performance difference for this changes is a 1.6% degradation
  per additional database whose size needs to be fetched. This is a
  worst case estimated based on the disk-stat-speed-test.html benchmark
  (attached to bugzilla). The benchmark writes an average of 16 bytes per
  transaction. Most real-world transactions will likely write more
  content than that. Since disk write IO time will dominate over memory
  read time for fetching the file size, the degradation ratio will only
  reduce with larger workloads.

No layout test, but there is a quota-test.html attached to bugzilla.
The test is a webpage that can be loaded into multiple tabs to
consuming storage space. While the test is running, we can run a
"du -k; du -k *" on the database directory to verify that the total
disk usage does not far exceed the allowed quota (some small error
is expected). Without this change, each database from each tab may
exceed the quota by that same maginitude of error.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/webdatabase/AbstractDatabaseServer.h:
* Modules/webdatabase/Database.cpp:
* Modules/webdatabase/Database.h:
* Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::DatabaseBackendBase::maximumSize):
* Modules/webdatabase/DatabaseManager.cpp:
* Modules/webdatabase/DatabaseManager.h:
* Modules/webdatabase/DatabaseServer.cpp:
* Modules/webdatabase/DatabaseServer.h:
* Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::fullPathForDatabaseNoLock):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::usageForOrigin):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
* Modules/webdatabase/DatabaseTracker.h:
* Modules/webdatabase/OriginQuotaManager.cpp: Removed.
* Modules/webdatabase/OriginQuotaManager.h: Removed.
* Modules/webdatabase/OriginUsageRecord.cpp: Removed.
* Modules/webdatabase/OriginUsageRecord.h: Removed.
* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState):
* Modules/webdatabase/SQLTransactionBackendSync.cpp:
(WebCore::SQLTransactionBackendSync::executeSQL):
* Modules/webdatabase/SQLTransactionClient.cpp:
* Modules/webdatabase/SQLTransactionClient.h:
* Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

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

8 years agoREGRESSION(r143654): some jquery test asserts on 32 bit debug build
fpizlo@apple.com [Tue, 26 Feb 2013 04:25:39 +0000 (04:25 +0000)]
REGRESSION(r143654): some jquery test asserts on 32 bit debug build
https://bugs.webkit.org/show_bug.cgi?id=110756

Reviewed by Geoffrey Garen.

TypeOf does speculations manually, so it should mark its JSValueOperand as doing ManualOperandSpeculation.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

8 years ago[JSC] Upstream iOS Stack bound checking
benjamin@webkit.org [Tue, 26 Feb 2013 04:13:34 +0000 (04:13 +0000)]
[JSC] Upstream iOS Stack bound checking
https://bugs.webkit.org/show_bug.cgi?id=110813

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-25
Reviewed by Filip Pizlo.

On iOS, the StackBounds cannot be cached because the stack
can be in one of two threads (the web thread or the UI thread).

We simply always consider the current stack bound when testing
stack boundaries.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):
* parser/Parser.cpp:
(JSC::::Parser):
* parser/Parser.h:
(JSC::Parser::canRecurse):
(Parser):

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

8 years ago[texmap] Rename TextureMapperGL::ClipStack::init to reset
bruno.abinader@basyskom.com [Tue, 26 Feb 2013 04:04:37 +0000 (04:04 +0000)]
[texmap] Rename TextureMapperGL::ClipStack::init to reset
https://bugs.webkit.org/show_bug.cgi?id=110783

Reviewed by Noam Rosenthal.

Functions named init() are usually called inside ctor's to initialize
member variables that were unable to be assigned on an initialization
list, which is not the case, and also because reset() better reflects
the behavior (clears the clip stack and assigns a value to the initial
clip state).

No behavior changes, thus covered by existing tests.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::initializeDepthBuffer):
* platform/graphics/texmap/TextureMapperGL.h:
(ClipStack):

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

8 years agoAdd expandedToParagraph() method to WebRange
commit-queue@webkit.org [Tue, 26 Feb 2013 03:18:26 +0000 (03:18 +0000)]
Add expandedToParagraph() method to WebRange
https://bugs.webkit.org/show_bug.cgi?id=110618

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-02-25
Reviewed by Adam Barth.

Add a method expandedToParagraph() to WebRange to return a copy of the
range expanded to paragraph boundaries. This method is to be used to
query the spelling context around the misspelled word under cursor.

* public/WebRange.h:
(WebRange): Added expandedToParagraph() method declaration.
* src/WebRange.cpp:
(WebKit::WebRange::expandedToParagraph): Added method to copy range, expand the copied range to paragraph boundaries, and return the resulting range.
(WebKit): Added expandedToParagraph() method definition.

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

8 years agoBuild fix attempt after r143996.
rniwa@webkit.org [Tue, 26 Feb 2013 03:02:47 +0000 (03:02 +0000)]
Build fix attempt after r143996.

* wtf/FastMalloc.cpp:
(WTF):

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

8 years agoThreaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url...
abarth@webkit.org [Tue, 26 Feb 2013 02:36:18 +0000 (02:36 +0000)]
Threaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url.html
https://bugs.webkit.org/show_bug.cgi?id=110637

Reviewed by Eric Seidel.

With the main thread parser, we always parse the first chunk of content
returned as the result of evaluating a JavaScript URL synchronously. In
particular, if the first chunk has an inline script, we'll execute it
synchronously.

Previous to this patch, the threaded parser would always parse this
content asynchronously. It's conceivable that there could be some
content relying on the synchronous behavior, so this patch introduces
the notion of "pinning" a parser to the main thread and uses that
concept to force the result of JavaScript URLs to be parsed on the main
thread (which is probably desirable anyway because they're likely to be
quite short).

This patch fixes fast/parser/iframe-sets-parent-to-javascript-url.html
and fast/dom/javascript-url-crash-function.html with the threaded
parser with --enable-threaded-html-parser.

* dom/DocumentParser.h:
(WebCore::DocumentParser::pinToMainThread):
(DocumentParser):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore):
(WebCore::HTMLDocumentParser::pinToMainThread):
* html/parser/HTMLDocumentParser.h:
(HTMLDocumentParser):
(WebCore::HTMLDocumentParser::shouldUseThreading):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::replaceDocument):

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

8 years agoUpdate the localizable strings file.
jberlin@webkit.org [Tue, 26 Feb 2013 02:33:04 +0000 (02:33 +0000)]
Update the localizable strings file.

Rubber-stamped by Anders Carlsson.

* English.lproj/Localizable.strings:

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