WebKit-https.git
9 years agoVersioning.
lforschler@apple.com [Thu, 12 Jan 2012 05:52:38 +0000 (05:52 +0000)]
Versioning.

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

9 years agoCodeBlock::m_executeCounter should be renamed to CodeBlock::m_jitExecuteCounter
fpizlo@apple.com [Thu, 12 Jan 2012 04:33:10 +0000 (04:33 +0000)]
CodeBlock::m_executeCounter should be renamed to CodeBlock::m_jitExecuteCounter
https://bugs.webkit.org/show_bug.cgi?id=76144
<rdar://problem/10681711>

Rubber stamped by Gavin Barraclough.

* bytecode/CodeBlock.h:
(JSC::CodeBlock::addressOfJITExecuteCounter):
(JSC::CodeBlock::offsetOfJITExecuteCounter):
(JSC::CodeBlock::jitExecuteCounter):
(JSC::CodeBlock::optimizeNextInvocation):
(JSC::CodeBlock::dontOptimizeAnytimeSoon):
(JSC::CodeBlock::optimizeAfterWarmUp):
(JSC::CodeBlock::optimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeSoon):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* jit/JIT.cpp:
(JSC::JIT::emitOptimizationCheck):

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

9 years ago<rdar://problem/10679035> Implement font-variant-ligatures: {no-}common-ligatures
mitz@apple.com [Thu, 12 Jan 2012 04:10:01 +0000 (04:10 +0000)]
<rdar://problem/10679035> Implement font-variant-ligatures: {no-}common-ligatures
https://bugs.webkit.org/show_bug.cgi?id=76103

Reviewed by Sam Weinig.

Source/WebCore:

Tests: fast/css/parsing-font-variant-ligatures.html
       fast/text/font-variant-ligatures-expected.html
       fast/text/font-variant-ligatures.html

Added support for all font-variant-ligatures values in the style system and in
FontDescription, and made the {no-}common-ligatures value keywords control basic ligatures.
The {no-}{discretionary,historical}-ligatures keywords have no effect on rendering at this
time.

font-variant-ligatures was not made part of the font shorthand property.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added code to handle
font-variant-ligatures.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): Added code to handle font-variant-ligatures.
(WebCore::CSSParser::parseFontVariantLigatures): Added. Parses font-variant-ligatures.
* css/CSSParser.h:
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty): Added font-variant-ligatures to the set of
inherited properties.
* css/CSSPropertyNames.in: Added -webkit-font-variant-ligatures.
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyFontVariantLigatures::applyInheritValue): Added. Copies
{common,discretionary,historical}LigaturesState from the parent style font description.
(WebCore::ApplyPropertyFontVariantLigatures::applyInitialValue): Added. Sets
{common,discretionary,historical}LigaturesState to normal.
(WebCore::ApplyPropertyFontVariantLigatures::applyValue): Added.
(WebCore::ApplyPropertyFontVariantLigatures::createHandler): Added.
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Added a handler for
font-variant-ligatures.
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyDeclaration): Updated for the number of properties that
affect the font.
(WebCore::CSSStyleSelector::applyProperty): Added CSSPropertyWebkitFontVariantLigatures to
the switch statement, which needs to list all values in SVG-disabled builds.
* css/CSSValueKeywords.in: Added the value keywords
{no-}{common,discretionary,historical}-ligatures.
* platform/graphics/Font.h:
(WebCore::Font::typesettingFeatures): Changed to enable ligatures if common ligatures are
enabled in the font description, disable them if they are disabled, and leave them to the
default (determined by the text-rendering property) if they are in the normal state.
* platform/graphics/FontDescription.h:
(WebCore::FontDescription::FontDescription): Added initializers.
(WebCore::FontDescription::commonLigaturesState): Added this accessor.
(WebCore::FontDescription::discretionaryLigaturesState): Ditto.
(WebCore::FontDescription::historicalLigaturesState): Ditto.
(WebCore::FontDescription::setCommonLigaturesState): Ditto.
(WebCore::FontDescription::setDiscretionaryLigaturesState): Ditto.
(WebCore::FontDescription::setHistoricalLigaturesState): Ditto.
(WebCore::FontDescription::operator==): Updated to compare the ligatures state members.

LayoutTests:

* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/parsing-font-variant-ligatures.html: Added.
* fast/text/font-variant-ligatures-expected.html: Added.
* fast/text/font-variant-ligatures.html: Added.
* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

9 years agoOverflow on flexitems doesn't work
tony@chromium.org [Thu, 12 Jan 2012 03:55:38 +0000 (03:55 +0000)]
Overflow on flexitems doesn't work
https://bugs.webkit.org/show_bug.cgi?id=70979

Reviewed by Ojan Vafai.

Add test cases for flex items that overflow. There should be
non-disabled scrollbars.

* css3/flexbox/child-overflow-expected.html: Added.
* css3/flexbox/child-overflow.html: Added.

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

9 years agoMerge 'Getter'/'Setter' attributes into 'Accessor'
barraclough@apple.com [Thu, 12 Jan 2012 03:53:22 +0000 (03:53 +0000)]
Merge 'Getter'/'Setter' attributes into 'Accessor'
https://bugs.webkit.org/show_bug.cgi?id=76141

Reviewed by Filip Pizlo.

These are currently ambiguous (and used inconsistently). It would logically appear
that either being bit set implies that the corresponding type of accessor is present
but (a) we don't correctly enforce this, and (b) this means the attributes would not
be able to distinguish between a data descriptor and an accessor descriptor with
neither a getter nor setter defined (which is a descriptor permissible under the spec).
This ambiguity would lead to unsafe property caching behavior (though this does not
represent an actual current bug, since we are currently unable to create descriptors
that have neither a getter nor setter, it just prevents us from doing so).

* runtime/Arguments.cpp:
(JSC::Arguments::createStrictModeCallerIfNecessary):
(JSC::Arguments::createStrictModeCalleeIfNecessary):
* runtime/JSArray.cpp:
(JSC::SparseArrayValueMap::put):
(JSC::JSArray::putDescriptor):
* runtime/JSBoundFunction.cpp:
(JSC::JSBoundFunction::finishCreation):
* runtime/JSFunction.cpp:
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnPropertyDescriptor):
* runtime/JSObject.cpp:
(JSC::JSObject::defineGetter):
(JSC::JSObject::initializeGetterSetterProperty):
(JSC::JSObject::defineSetter):
(JSC::putDescriptor):
(JSC::JSObject::defineOwnProperty):
* runtime/JSObject.h:
* runtime/ObjectConstructor.cpp:
(JSC::objectConstructorDefineProperty):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::setDescriptor):
(JSC::PropertyDescriptor::setAccessorDescriptor):
(JSC::PropertyDescriptor::setSetter):
(JSC::PropertyDescriptor::setGetter):
(JSC::PropertyDescriptor::attributesOverridingCurrent):

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

9 years agomargin test for CSS3 calc
mikelawther@chromium.org [Thu, 12 Jan 2012 03:53:00 +0000 (03:53 +0000)]
margin test for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=76000

Reviewed by Daniel Bates.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

* css3/calc/margin-expected.txt: Added.
* css3/calc/margin.html: Added.

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

9 years agoRepaint all graphics layers when their renderer offset changes
enne@google.com [Thu, 12 Jan 2012 03:46:47 +0000 (03:46 +0000)]
Repaint all graphics layers when their renderer offset changes
https://bugs.webkit.org/show_bug.cgi?id=75730

Reviewed by Simon Fraser.

Source/WebCore:

In RenderLayerBacking, only the main graphics layer gets repainted
when the offset changes. If the offset on other graphics layers (e.g.
the foreground layer) changes, they should get repainted as well.

Test: compositing/geometry/foreground-offset-change.html

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::setOffsetFromRenderer):
(WebCore::GraphicsLayer::paintGraphicsLayerContents):
* platform/graphics/GraphicsLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::paintContents):

LayoutTests:

* compositing/geometry/foreground-offset-change-expected.png: Added.
* compositing/geometry/foreground-offset-change-expected.txt: Added.
* compositing/geometry/foreground-offset-change.html: Added.

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

9 years ago[Chromium] Rebaseline test images for input controls
dimich@chromium.org [Thu, 12 Jan 2012 02:30:39 +0000 (02:30 +0000)]
[Chromium] Rebaseline test images for input controls
after http://src.chromium.org/viewvc/chrome?view=rev&revision=117217
https://bugs.webkit.org/show_bug.cgi?id=76134

Unreviewed.

* platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png:
* platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.png:
* platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.png:
* platform/chromium-mac-leopard/fast/forms/number/input-appearance-spinbutton-layer-expected.png:
* platform/chromium-mac-leopard/fast/forms/select-baseline-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/menulist-restrict-line-height-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/menulist-separator-painting-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/menulist-style-color-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/number/input-appearance-spinbutton-layer-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/select-baseline-expected.png:

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

9 years ago[chromium] TiledLayerChromium drops invalidates that occur during
commit-queue@webkit.org [Thu, 12 Jan 2012 02:26:02 +0000 (02:26 +0000)]
[chromium] TiledLayerChromium drops invalidates that occur during
LayerTextureUpdater::prepareToUpdate
https://bugs.webkit.org/show_bug.cgi?id=76067

Patch by Scott Violet <sky@google.com> on 2012-01-11
Reviewed by James Robinson.

Source/WebCore:

Test coverage in TiledLayerChromiumTest.

* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

Source/WebKit/chromium:

* tests/TiledLayerChromiumTest.cpp:
(WTF::FakeLayerTextureUpdater::FakeLayerTextureUpdater):
(WTF::FakeLayerTextureUpdater::prepareCount):
(WTF::FakeLayerTextureUpdater::clearPrepareCount):
(WTF::FakeLayerTextureUpdater::lastUpdateRect):
(WTF::FakeTiledLayerChromium::fakeLayerTextureUpdater):
(WTF::FakeLayerTextureUpdater::setRectToInvalidate):
(WTF::FakeLayerTextureUpdater::prepareToUpdate):
(WTF::TEST):

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

9 years ago[JSC] Remove redundant arguments from [Supplemental] custom methods
haraken@chromium.org [Thu, 12 Jan 2012 01:57:45 +0000 (01:57 +0000)]
[JSC] Remove redundant arguments from [Supplemental] custom methods
https://bugs.webkit.org/show_bug.cgi?id=76127

Reviewed by Adam Barth.

Since in JSC a callback of custom methods is non-static, we do not need
to pass a pointer of an implementation object.

Before (JSTestInterface.cpp):
    JSValue jsTestInterfaceSupplementalStr3(ExecState* exec, JSValue slotBase, ...)
    {
        JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
        TestInterface* impl = static_cast<TestInterface*>(castedThis->impl());
        return castedThis->supplementalStr3(impl, exec);
    }

After (JSTestInterface.cpp):
    JSValue jsTestInterfaceSupplementalStr3(ExecState* exec, JSValue slotBase, ...)
    {
        JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
         return castedThis->supplementalStr3(exec);  // JSTestInterface knows 'impl'.
    }

Tests: bindings/scripts/test/TestInterface.idl
       http/tests/websocket/tests/*
       webaudio/*

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Previously when we specify [CustomGetter, CustomSetter], the header for
the custom setter was not generated. This patch fixes the bug.
(GenerateImplementation):

* bindings/js/JSDOMWindowWebAudioCustom.cpp: Removed redundant DOMWindow* from webkitAudioContext().
(WebCore::JSDOMWindow::webkitAudioContext):
* bindings/js/JSDOMWindowWebSocketCustom.cpp: Removed redundant DOMWindow* from webSocket().
(WebCore::JSDOMWindow::webSocket):

* bindings/scripts/test/JS/JSTestInterface.cpp: Updated the test result.
(WebCore::jsTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalStr3):
* bindings/scripts/test/JS/JSTestInterface.h: Ditto.

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

9 years agoObject.defineProperty([], 'length', {}) should not make length read-only
barraclough@apple.com [Thu, 12 Jan 2012 01:30:19 +0000 (01:30 +0000)]
Object.defineProperty([], 'length', {}) should not make length read-only
https://bugs.webkit.org/show_bug.cgi?id=76097

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* runtime/JSArray.cpp:
(JSC::JSArray::defineOwnProperty):
    - We should be checking writablePresent().

LayoutTests:

* fast/js/array-defineOwnProperty-expected.txt:
* fast/js/script-tests/array-defineOwnProperty.js:
    - Added test.

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

9 years ago[WK2] Share cairo specific codes with EFL port.
ryuan.choi@samsung.com [Thu, 12 Jan 2012 01:29:27 +0000 (01:29 +0000)]
[WK2] Share cairo specific codes with EFL port.
https://bugs.webkit.org/show_bug.cgi?id=75457

Reviewed by Brent Fulgham.

Change PLATFORM(GTK) to USE(CAIRO) in WebGraphicsContext{h,cpp} to share
with EFL port.

* Shared/WebGraphicsContext.cpp:
(WebKit::WebGraphicsContext::WebGraphicsContext):
* Shared/WebGraphicsContext.h:

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

9 years agoiframe sandbox doesn't block autofocus (IETC automatic-feature-block-autofocus-form...
abarth@webkit.org [Thu, 12 Jan 2012 01:24:23 +0000 (01:24 +0000)]
iframe sandbox doesn't block autofocus (IETC automatic-feature-block-autofocus-form-control)
https://bugs.webkit.org/show_bug.cgi?id=76120

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/forms/no-autofocus-in-sandbox.html

* html/HTMLFormControlElement.cpp:
(WebCore::shouldAutofocus):
    - The HTML5 spec says that we shouldn't autofocus elements when the
      automatic features are sandboxed.

LayoutTests:

* fast/forms/no-autofocus-in-sandbox-expected.txt: Added.
* fast/forms/no-autofocus-in-sandbox.html: Added.

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

9 years agoCode duplication for invoking the JIT and DFG should be reduced
fpizlo@apple.com [Thu, 12 Jan 2012 01:23:49 +0000 (01:23 +0000)]
Code duplication for invoking the JIT and DFG should be reduced
https://bugs.webkit.org/show_bug.cgi?id=76117
<rdar://problem/10680189>

Rubber stamped by Geoff Garen.

* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* jit/JITDriver.h: Added.
(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):
* runtime/Executable.cpp:
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=75904
bdakin@apple.com [Thu, 12 Jan 2012 01:17:47 +0000 (01:17 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=75904
WebKit 1: Scrollbar uiStateTransitionProgress requires tracking the mouse all
the time
-and corresponding-
<rdar://problem/10498816>

Reviewed by Darin Adler.

Source/WebCore:

This patch gets rid of the optional parameter called onlyUpdateScrollbars for
mouseMoved() and instead moves that functionality into its own function
called passMouseMovedEventToScrollbars().
* WebCore.exp.in:
* page/EventHandler.cpp:
(WebCore::EventHandler::mouseMoved):
(WebCore::EventHandler::passMouseMovedEventToScrollbars):
* page/EventHandler.h:
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::passMouseMovedEventToScrollbars):

Source/WebKit/mac:

New ivar trackingAreaForNonKeyWindow stores our NSTrackingArea whenever we
have one.
* WebView/WebHTMLView.mm:
(-[WebHTMLViewPrivate dealloc]):
(-[WebHTMLViewPrivate clear]):

When we know that mouse movements won't affect anything other than
scrollbars, call our new function passMouseMovedEventToScrollbars(),
otherwise we'll call the old mouseMoved().
(mouseEventIsPartOfClickOrDrag):
(-[WebHTMLView _updateMouseoverWithEvent:]):

Make sure not to remove the mouse observer when there are legacy scrollbars.
(-[WebHTMLView removeMouseMovedObserver]):

Set up a tracking area when the window is not key to ensure that the WebView
gets the relevant events. Remove it when the window is key again so that we
rely on the existing mechanism.
(-[WebHTMLView windowDidBecomeKey:]):
(-[WebHTMLView windowDidResignKey:]):

Source/WebKit2:

This patch gets rid of the optional parameter called onlyUpdateScrollbars for
WebCore::EventHandler::mouseMoved() and instead moves that functionality into
its own function called passMouseMovedEventToScrollbars().
* WebProcess/WebPage/WebPage.cpp:
(WebKit::handleMouseEvent):

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

9 years agoIndexedDB: Methods should throw TRANSACTION_INACTIVE_ERR when transaction is complete...
commit-queue@webkit.org [Thu, 12 Jan 2012 01:02:49 +0000 (01:02 +0000)]
IndexedDB: Methods should throw TRANSACTION_INACTIVE_ERR when transaction is completed/aborted
https://bugs.webkit.org/show_bug.cgi?id=76108

Source/WebCore:

Updated IDBDatabaseException error codes to match spec (the pre-DOM4 version),
including updated description strings, and changed relevant store and index
methods to raise the expected exception type now that it is detailed in the spec.

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-11
Reviewed by Tony Chang.

Tests: storage/indexeddb/transaction-basics.html

* storage/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::continueFunction):
(WebCore::IDBCursorBackendImpl::prefetchContinue):
* storage/IDBDatabaseException.cpp:
* storage/IDBDatabaseException.h:
* storage/IDBDatabaseException.idl:
* storage/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::openCursor):
(WebCore::IDBIndexBackendImpl::openKeyCursor):
(WebCore::IDBIndexBackendImpl::count):
(WebCore::IDBIndexBackendImpl::get):
(WebCore::IDBIndexBackendImpl::getKey):
* storage/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::get):
(WebCore::IDBObjectStoreBackendImpl::put):
(WebCore::IDBObjectStoreBackendImpl::deleteFunction):
(WebCore::IDBObjectStoreBackendImpl::clear):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::deleteIndex):
(WebCore::IDBObjectStoreBackendImpl::openCursor):
(WebCore::IDBObjectStoreBackendImpl::count):

LayoutTests:

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-11
Reviewed by Tony Chang.

* storage/indexeddb/constants-expected.txt:
* storage/indexeddb/constants.html:
* storage/indexeddb/deleteIndex-expected.txt:
* storage/indexeddb/deleteIndex.html:
* storage/indexeddb/set_version_queue-expected.txt:
* storage/indexeddb/set_version_queue.html:
* storage/indexeddb/transaction-abort-expected.txt:
* storage/indexeddb/transaction-abort.html:
* storage/indexeddb/transaction-basics-expected.txt:
* storage/indexeddb/transaction-basics.html:

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

9 years agoBytecode dumping is broken for call opcodes (due to two new operands)
ggaren@apple.com [Thu, 12 Jan 2012 01:00:58 +0000 (01:00 +0000)]
Bytecode dumping is broken for call opcodes (due to two new operands)
https://bugs.webkit.org/show_bug.cgi?id=75886

Reviewed by Oliver Hunt.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printCallOp): Made a helper function, so I wouldn't have
to fix this more than once. The helper function skips the extra two operands
at the end of the opcode, used for optimization.

(JSC::CodeBlock::dump): Used the helper function.

* bytecode/CodeBlock.h: Declared the helper function.

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

9 years agotest-webkitpy: push more logic into webkitpy.test.main, clean up code
dpranke@chromium.org [Thu, 12 Jan 2012 00:58:52 +0000 (00:58 +0000)]
test-webkitpy: push more logic into webkitpy.test.main, clean up code
https://bugs.webkit.org/show_bug.cgi?id=76021

Reviewed by Eric Seidel.

I plan to add more functionality to test-webkitpy, but it is
difficult to hack on now; this patch is the first of two that
brings test-webkitpy more inline with current coding style by
pushing more logic into the webkitpy.test.main.Tester class (so
that it will be testable itself).

There should be no functional changes in this patch.

* Scripts/test-webkitpy:
(_path_from_webkit_root):
* Scripts/webkitpy/test/main.py:
(Tester):
(Tester.init):
(Tester.configure_logging):
(Tester.configure_logging.filter):
(Tester.clean_packages):
(Tester.run_tests):

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

9 years agoImplement the [Supplemental] IDL for custom methods
haraken@chromium.org [Thu, 12 Jan 2012 00:56:24 +0000 (00:56 +0000)]
Implement the [Supplemental] IDL for custom methods
https://bugs.webkit.org/show_bug.cgi?id=76036

Reviewed by Adam Barth.

We have implemented the [Supplemental] IDL for non-custom methods in bug 75944.
This patch implements it for custom methods. This patch modifies only CodeGeneratorV8.pm,
since CodeGeneratorJS.pm requires no change and other code generators
do not support custom methods.

Test: bindings/scripts/test/TestSupplemental.idl

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):

* bindings/scripts/test/TestSupplemental.idl: Added a custom method with the [Supplemental] IDL.

* bindings/scripts/test/JS/JSTestInterface.cpp: Updated the test result.
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
* bindings/scripts/test/JS/JSTestInterface.h: Ditto.
* bindings/scripts/test/ObjC/DOMTestInterface.h: Ditto.
* bindings/scripts/test/ObjC/DOMTestInterface.mm: Ditto.
(-[DOMTestInterface supplementalMethod3]):
* bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.

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

9 years agoimplement layout tests for <video> with media stream
commit-queue@webkit.org [Thu, 12 Jan 2012 00:26:57 +0000 (00:26 +0000)]
implement layout tests for <video> with media stream
https://bugs.webkit.org/show_bug.cgi?id=74882

Patch by Wei Jia <wjia@chromium.org> on 2012-01-11
Reviewed by Kent Tamura.

Tools:

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/WebUserMediaClientMock.cpp: Added.
(WebKit::WebUserMediaClientMock::create):
(WebKit::WebUserMediaClientMock::IsMockStream):
(WebKit::WebUserMediaClientMock::requestUserMedia):
(WebKit::WebUserMediaClientMock::cancelUserMediaRequest):
* DumpRenderTree/chromium/WebUserMediaClientMock.h: Added.
(WebKit::WebUserMediaClientMock::~WebUserMediaClientMock):
(WebKit::WebUserMediaClientMock::WebUserMediaClientMock):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::userMediaClient):
(WebViewHost::userMediaClientMock):
(WebViewHost::createMediaPlayer):
(WebViewHost::mediaStreamUtil):
(WebViewHost::testMediaStreamClient):
* DumpRenderTree/chromium/WebViewHost.h:

LayoutTests:

* platform/chromium/media/video-capture-preview-expected.txt: Added.
* platform/chromium/media/video-capture-preview.html: Added.

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

9 years agoUnreviewed, build fix.
dpranke@chromium.org [Thu, 12 Jan 2012 00:24:39 +0000 (00:24 +0000)]
Unreviewed, build fix.

Fix chromium-win's version remapping to work correctly on Win 7 SP1.

* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort.__init__):

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

9 years agoREGRESSION: d3 Bullet Charts demo doesn't work (call with argument assignment is...
ggaren@apple.com [Thu, 12 Jan 2012 00:14:42 +0000 (00:14 +0000)]
REGRESSION: d3 Bullet Charts demo doesn't work (call with argument assignment is broken)
https://bugs.webkit.org/show_bug.cgi?id=75911

Source/JavaScriptCore:

* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNodeForLeftHandSide): Cleanup: No need to
explicitly cast to our return type in C++.

* bytecompiler/NodesCodegen.cpp:
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode): Make sure to copy our function
into a temporary register before evaluating our arguments, since argument
evaluation might include function calls or assignments that overwrite our callee by name.

LayoutTests:

Reviewed by Filip Pizlo.

* fast/js/function-argument-evaluation-expected.txt: Added.
* fast/js/function-argument-evaluation.html: Added.

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

9 years agoIETC audio-interface-inherit.129 claims NETWORK_NO_SOURCE should not be overrideable
abarth@webkit.org [Thu, 12 Jan 2012 00:08:01 +0000 (00:08 +0000)]
IETC audio-interface-inherit.129 claims NETWORK_NO_SOURCE should not be overrideable
https://bugs.webkit.org/show_bug.cgi?id=76085

Reviewed by Eric Seidel.

As far as I can tell, the IETC test of this feature is wrong.
NETWORK_NO_SOURCE should be immutable on the interface object and on
the interface prototype object, but JavaScript should be able to shadow
the property on an instance.

* media/network-no-source-const-shadow-expected.txt: Added.
* media/network-no-source-const-shadow.html: Added.

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

9 years agoSheriffbot build fix. Don't emit empty lines on IRC.
rniwa@webkit.org [Thu, 12 Jan 2012 00:07:32 +0000 (00:07 +0000)]
Sheriffbot build fix. Don't emit empty lines on IRC.

* Scripts/webkitpy/tool/bot/irc_command.py:
(LastGreenRevision.execute):

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

9 years agoFix build issue on Windows when Qt is configured with -ltcg
pierre.rossi@gmail.com [Wed, 11 Jan 2012 23:57:39 +0000 (23:57 +0000)]
Fix build issue on Windows when Qt is configured with -ltcg

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

Patch by Shaw Andy <andy.shaw@digia.com> on 2011-12-21
Rubber-stamped by Simon Hausmann.

* WebCore.pri:

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

9 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=75860
abarth@webkit.org [Wed, 11 Jan 2012 23:56:24 +0000 (23:56 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=75860
[Chromium Mac] no background is drawn for input elements

Patch by Avi Drissman <avi@chromium.org> on 2012-01-09
Reviewed by Eric Seidel.

Reverts r104240 for Chromium. Unfortunately the code that uses Cocoa
API misbehaves when built with the 10.5 SDK, so we use SPI. For now.

* rendering/RenderThemeChromiumMac.h:
* rendering/RenderThemeChromiumMac.mm:
(WebCore::RenderThemeChromiumMac::paintTextField):

LayoutTests: iframe sandbox doesn't block videos from autoplaying (IETC automatic-feature-block-autoplay-video)
https://bugs.webkit.org/show_bug.cgi?id=76111

Reviewed by Eric Seidel.

Test based on video-no-autoplay.html.

* media/no-auto-play-in-sandbox-expected.txt: Added.
* media/no-auto-play-in-sandbox.html: Added.
* media/resources/no-auto-play-in-sandbox-iframe.html: Added.

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

9 years agoSubresourceLoader cleanup post r100311.
japhet@chromium.org [Wed, 11 Jan 2012 23:54:28 +0000 (23:54 +0000)]
SubresourceLoader cleanup post r100311.
1. Simplify matching incrementRequestCount()/decrementRequestCount() calls.
2. Remove CachedImage custom code from SubresourceLoader.
3. Add a bunch of ASSERTs.
4. Remove the multipart-only call to didReceiveData() from didReceiveResponse(),
   since didReceiveData() would get called immediately after anyway.
https://bugs.webkit.org/show_bug.cgi?id=75887

Reviewed by Adam Barth.

No new tests, refactor only.

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didReceiveResponse): Remove multipart special case, handle it in didReceiveData().
(WebCore::SubresourceLoader::didReceiveData): Handle multipart state here, since we will receive only one
     didReceiveData() call per multipart segment, but no didFinishLoading() call.
* loader/SubresourceLoader.h: Add a RequestCountTracker subclass to reduce complexity of ensuring we don't
    decrement request count twice on CachedResourceLoader.
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::setResponse): Move CachedImage::clear() call out of SubresourceLoader, since it's
    kind of a layering violation as is.
* loader/cache/CachedImage.h:
* loader/cache/CachedResource.cpp:

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

9 years agoIndexedDB: Version change transaction should abort if constraints fail during createIndex
commit-queue@webkit.org [Wed, 11 Jan 2012 23:51:15 +0000 (23:51 +0000)]
IndexedDB: Version change transaction should abort if constraints fail during createIndex
https://bugs.webkit.org/show_bug.cgi?id=76094

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-11
Reviewed by Tony Chang.

Source/WebCore:

Test: storage/indexeddb/index-population.html

* storage/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::addingKeyAllowed):
* storage/IDBIndexBackendImpl.h:
* storage/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
* storage/IDBObjectStoreBackendImpl.cpp:

LayoutTests:

* storage/indexeddb/index-population-expected.txt: Added.
* storage/indexeddb/index-population.html: Added.

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

9 years agolast-green-revision should report the revision that succeeded on all bots
rniwa@webkit.org [Wed, 11 Jan 2012 23:46:53 +0000 (23:46 +0000)]
last-green-revision should report the revision that succeeded on all bots
https://bugs.webkit.org/show_bug.cgi?id=76109

Reviewed by Adam Barth.

Add an algorithm to find the last known good revision among the specified bots. For a revision to be
considered green by this algorithm, all matching builders must have a successful run at the revision
or two consecutive successful runs before and after the revision.

Also fixed a bug in irc_command that the result wasn't posted on IRC properly and a bug in queries.py
that resulted in an exception when the user didn't pass BUILDER_NAME argument.

* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(BuildBot._revisions_for_builder):
(BuildBot):
(BuildBot._find_green_revision):
(BuildBot.last_green_revision):
* Scripts/webkitpy/common/net/buildbot/buildbot_mock.py:
(MockBuildBot.last_green_revision):
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(test_revisions_for_builder):
(test_find_green_revision):
(test_last_green_revision):
* Scripts/webkitpy/tool/bot/irc_command.py:
(LastGreenRevision.execute):
* Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py:
(SheriffIRCBotTest.test_lgr):
* Scripts/webkitpy/tool/commands/queries.py:
(LastGreenRevision):

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

9 years agoUnreviewed, fix build bustage on win32 introduced by r104725.
dpranke@chromium.org [Wed, 11 Jan 2012 23:42:27 +0000 (23:42 +0000)]
Unreviewed, fix build bustage on win32 introduced by r104725.

* Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
(MockDRTPortTest.make_port):
(MockChromiumDRTTest.test_pixeltest__fails):

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

9 years agoline height test for CSS3 calc
mikelawther@chromium.org [Wed, 11 Jan 2012 23:27:25 +0000 (23:27 +0000)]
line height test for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75998

Reviewed by Daniel Bates.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

* css3/calc/line-height-expected.txt: Added.
* css3/calc/line-height.html: Added.

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

9 years agov8-regexp spends 35% of its time allocating and copying internal regexp results data
msaboff@apple.com [Wed, 11 Jan 2012 23:27:08 +0000 (23:27 +0000)]
v8-regexp spends 35% of its time allocating and copying internal regexp results data
https://bugs.webkit.org/show_bug.cgi?id=76079

Reviewed by Geoffrey Garen.

Added a new RegExpResults struct that has the input string, the number of
subexpressions and the output vector.  Changed RegExpConstructor to
include a RegExpConstructorPrivate instead of having a reference to one.
Changed RegExpMatchesArray to include a RegExpResults instead of a
reference to a RegExpConstructorPrivate.  Created an overloaded assignment
operator to assign a RegExpConstructorPrivate to a RegExpResults.
Collectively this change is worth 24% performance improvement to v8-regexp.

* runtime/RegExpConstructor.cpp:
(JSC::RegExpResult::operator=):
(JSC::RegExpConstructor::RegExpConstructor):
(JSC::RegExpMatchesArray::RegExpMatchesArray):
(JSC::RegExpMatchesArray::finishCreation):
(JSC::RegExpMatchesArray::~RegExpMatchesArray):
(JSC::RegExpMatchesArray::fillArrayInstance):
(JSC::RegExpConstructor::arrayOfMatches):
(JSC::RegExpConstructor::getBackref):
(JSC::RegExpConstructor::getLastParen):
(JSC::RegExpConstructor::getLeftContext):
(JSC::RegExpConstructor::getRightContext):
(JSC::RegExpConstructor::setInput):
(JSC::RegExpConstructor::input):
(JSC::RegExpConstructor::setMultiline):
(JSC::RegExpConstructor::multiline):
* runtime/RegExpConstructor.h:
(JSC::RegExpResult::RegExpResult):
(JSC::RegExpConstructor::performMatch):
* runtime/RegExpMatchesArray.h:
(JSC::RegExpMatchesArray::create):
(JSC::RegExpMatchesArray::getOwnPropertySlot):
(JSC::RegExpMatchesArray::getOwnPropertySlotByIndex):
(JSC::RegExpMatchesArray::getOwnPropertyDescriptor):
(JSC::RegExpMatchesArray::put):
(JSC::RegExpMatchesArray::putByIndex):
(JSC::RegExpMatchesArray::deleteProperty):
(JSC::RegExpMatchesArray::deletePropertyByIndex):
(JSC::RegExpMatchesArray::getOwnPropertyNames):

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

9 years agoTypo in error message: Unexpected token 'defualt'
commit-queue@webkit.org [Wed, 11 Jan 2012 23:15:20 +0000 (23:15 +0000)]
Typo in error message: Unexpected token 'defualt'
https://bugs.webkit.org/show_bug.cgi?id=75105

Patch by Eugene Girard <girard@google.com> on 2012-01-11
Reviewed by Simon Fraser.

Source/JavaScriptCore:

* parser/Parser.h:
(JSC::Parser::getTokenName):

LayoutTests:

* fast/js/reserved-words-as-property-expected.txt:

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

9 years agoFix duplicate expectations from r104715.
ojan@chromium.org [Wed, 11 Jan 2012 23:04:19 +0000 (23:04 +0000)]
Fix duplicate expectations from r104715.
This was causing the Chromium Windows tests not to run.

* platform/chromium/test_expectations.txt:

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

9 years agoSwitch web intents to use supplemental IDL for DOMWindow
commit-queue@webkit.org [Wed, 11 Jan 2012 22:44:32 +0000 (22:44 +0000)]
Switch web intents to use supplemental IDL for DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=76092

Patch by Greg Billock <gbillock@google.com> on 2012-01-11
Reviewed by Adam Barth.

* Modules/intents/DOMWindowIntents.idl: Added.
* WebCore.gypi:
* page/DOMWindow.idl:

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

9 years agoRename HTMLInputElement::setDefaultName to setInitialName.
tkent@chromium.org [Wed, 11 Jan 2012 22:35:52 +0000 (22:35 +0000)]
Rename HTMLInputElement::setDefaultName to setInitialName.
https://bugs.webkit.org/show_bug.cgi?id=76039

Reviewed by Darin Adler.

Source/WebCore:

Rename setDefaultName to setInitialName, make it protected, and add two
assertions.

This change should not change any behavior.

Test: fast/forms/isindex-name.html

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setInitialName):
- Renamed from setDefaultName.
- Add assertions.
* html/HTMLInputElement.h:
Rename setDefaultName to setInitialName, and move it to protected.
* html/HTMLIsIndexElement.cpp:
(WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
Update a setDefaultName callsite.
(WebCore::HTMLIsIndexElement::parseMappedAttribute):
A style fix.

LayoutTests:

* fast/forms/isindex-name-expected.txt: Added.
* fast/forms/isindex-name.html: Added.

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=76088
commit-queue@webkit.org [Wed, 11 Jan 2012 22:13:24 +0000 (22:13 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=76088
The common case of content type = text/plain is not optimized and the plugin database is initialized instead

In the dom/DOMImplementation.cpp file you can find the comment that text/plain is
optimized so that the plugin database is not loaded. Unfortunately, this has been
regressed since the patch for http://bugs.webkit.org/show_bug.cgi?id=16815 which
refactored a bunch of the plugin code.  Now, the plugin database is initialized
before we handle text/plain.  This line in DOMImplementation.cpp triggers
the plugin initialization:

        pluginData = frame->page()->pluginData();

The case of image types != PDF and the case of HTML5 video content type are also
not optimized to be handled before plugin initialization.

The solution is to refactor so all of these content types are handled before
we initialize the plugin database.

Patch by Adam Treat <atreat@rim.com> on 2012-01-11
Reviewed by Adam Treat.

* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::createDocument):

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

9 years ago[Chromium] mimic the (old) behavior of the mac port for (re)setting the color profile
jochen@chromium.org [Wed, 11 Jan 2012 22:10:18 +0000 (22:10 +0000)]
[Chromium] mimic the (old) behavior of the mac port for (re)setting the color profile
https://bugs.webkit.org/show_bug.cgi?id=75618

Eventually, we should get away from setting the display's color profile, as the mac port is doing now.

Reviewed by Tony Chang.

* DumpRenderTree/chromium/LayoutTestHelper.mm:
(installLayoutTestColorProfile):
(restoreUserColorProfile):
(main):

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

9 years agoAssertion failure in JSC::allocateCell trying to allocate a JSString
andersca@apple.com [Wed, 11 Jan 2012 22:01:29 +0000 (22:01 +0000)]
Assertion failure in JSC::allocateCell trying to allocate a JSString
https://bugs.webkit.org/show_bug.cgi?id=76101

Reviewed by Adam Roben.

Remove the ExecutableBase::s_info and JSString::s_info static member variables  from the .def file and
export them explicitly using the JS_EXPORTDATA macro.

member variables explicitly using
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/Executable.h:
* runtime/JSString.h:

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

9 years agoWinCairo build correction.
bfulgham@webkit.org [Wed, 11 Jan 2012 21:52:44 +0000 (21:52 +0000)]
WinCairo build correction.

* UIProcess/WebPageProxy.h: Don't define viewWidget for WinCairo port.

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

9 years ago[chromium] Make Skia canvas opaque for root layer tiles
commit-queue@webkit.org [Wed, 11 Jan 2012 21:52:38 +0000 (21:52 +0000)]
[chromium] Make Skia canvas opaque for root layer tiles
https://bugs.webkit.org/show_bug.cgi?id=75939

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

Skia has extra optimizations if a bitmap has the "opaque" flag -- in
particular, it doesn't do an unnecessary memset at creation time.
Pass down the LayerChromium's opaque flag to Skia.

* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
(WebCore::BitmapCanvasLayerTextureUpdater::setIsNonCompositedContent):
* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::createTextureUpdater):
* platform/graphics/chromium/LayerTextureUpdater.h:
(WebCore::LayerTextureUpdater::setIsNonCompositedContent):
* platform/graphics/chromium/PlatformCanvas.cpp:
(WebCore::PlatformCanvas::PlatformCanvas):
(WebCore::PlatformCanvas::resize):
* platform/graphics/chromium/PlatformCanvas.h:
(WebCore::PlatformCanvas::setOpaque):
(WebCore::PlatformCanvas::opaque):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::setIsNonCompositedContent):

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

9 years agotest-webkitpy: fix -v and eliminate some spurious warnings
dpranke@chromium.org [Wed, 11 Jan 2012 21:42:22 +0000 (21:42 +0000)]
test-webkitpy: fix -v and eliminate some spurious warnings
https://bugs.webkit.org/show_bug.cgi?id=76099

Reviewed by Adam Barth.

when we added support for --xml output, we broke the -v flag.

Also, fix the code to swallow a harmless warning from
VCSUtils.pm and fix a deprecated warning in jsonchecker.py.

test-webkitpy is now silent again except for the one known
logging issue.

* Scripts/webkitpy/common/checkout/checkout.py:
(Checkout.commit_message_for_this_commit):
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
(test_commit_message_for_this_commit):
* Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONChecker.check):
(JSONChecker.line_number_from_json_exception):
* Scripts/webkitpy/test/main.py:
(Tester.run_tests):

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

9 years agowebkitpy: webkitpy.layout_tests.port tests should only use MockSystemHost, not MockHost
dpranke@chromium.org [Wed, 11 Jan 2012 21:36:24 +0000 (21:36 +0000)]
webkitpy: webkitpy.layout_tests.port tests should only use MockSystemHost, not MockHost
https://bugs.webkit.org/show_bug.cgi?id=76084

Reviewed by Adam Barth.

This will help make it easier to catch layering violations. This
change just refactors test code; there are no changes to
production code.

* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.make_port):
(PortTest.test_find_no_paths_specified):
(PortTest.test_find_one_test):
(PortTest.test_find_glob):
(PortTest.test_find_with_skipped_directories):
(PortTest.test_find_with_skipped_directories_2):
(PortTest.test_parse_reftest_list):
(PortTest.test_httpd_returns_error_code):
(PortTest.test_virtual_methods):
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
(ChromiumGpuTest.assert_port_works):
(ChromiumGpuTest._assert_baseline_path):
(ChromiumGpuTest.test_graphics_type):
(ChromiumGpuTest.test_default_tests_paths.test_paths):
(ChromiumGpuTest.test_test_files):
(ChromiumGpuTest.test_test_files.test_paths):
(ChromiumGpuTest):
* Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:
(ChromiumLinuxPortTest.assert_architecture):
(ChromiumLinuxPortTest.test_check_illegal_port_names):
(ChromiumLinuxPortTest.test_determine_architecture_fails):
* Scripts/webkitpy/layout_tests/port/driver_unittest.py:
(DriverTest.make_port):
(DriverTest):
(DriverTest.assertVirtual):
(DriverTest._assert_wrapper):
(DriverTest.test_virtual_driver_methods):
* Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
(MockDRTPortTest.make_port):
(MockDRTPortTest.test_port_name_in_constructor):
(MockDRTTest.assertTest):
(MockDRTTest.test_main):
(MockChromiumDRTTest.test_pixeltest__fails):
* Scripts/webkitpy/layout_tests/port/qt_unittest.py:
(QtPortTest._assert_search_path):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(TestWebKitPort.__init__):
(WebKitPortUnitTests.test_default_options):
(test_runtime_feature_list):
(test_test_expectations):

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

9 years ago[BlackBerry] ASSERT failure in BackingStorePrivate::blitVisibleContents()
commit-queue@webkit.org [Wed, 11 Jan 2012 21:23:20 +0000 (21:23 +0000)]
[BlackBerry] ASSERT failure in BackingStorePrivate::blitVisibleContents()
https://bugs.webkit.org/show_bug.cgi?id=76096

Patch by Jacky Jiang <zhajiang@rim.com> on 2012-01-11
Reviewed by Rob Buis.

We shouldn't blit visible contents for direct rendering. Guard it from
call sites.

* blackberry/Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):

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

9 years agoWebaudio layout tests need to override the WebKitWebAudioEnabled
commit-queue@webkit.org [Wed, 11 Jan 2012 21:12:21 +0000 (21:12 +0000)]
Webaudio layout tests need to override the WebKitWebAudioEnabled
https://bugs.webkit.org/show_bug.cgi?id=76066

Patch by Raymond Toy <rtoy@google.com> on 2012-01-11
Reviewed by Tony Chang.

* webaudio/convolution-mono-mono.html:
Load audio-testing.js to add override for WebKitWebAudioEnabled.

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

9 years ago[v8] Int16Array.set(array, offset) fails on first execution
commit-queue@webkit.org [Wed, 11 Jan 2012 21:06:31 +0000 (21:06 +0000)]
[v8] Int16Array.set(array, offset) fails on first execution
https://bugs.webkit.org/show_bug.cgi?id=76040

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-01-11
Reviewed by Kenneth Russell.

* LayoutTests/fast/canvas/webgl/array-set-with-offset-expected.txt: Added.
* LayoutTests/fast/canvas/webgl/array-set-with-offset.html: Added.
* Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
* Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.h:

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

9 years agoStyle skipped tests in the flakiness dashboard
ojan@chromium.org [Wed, 11 Jan 2012 20:55:32 +0000 (20:55 +0000)]
Style skipped tests in the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=76091

Reviewed by Tony Chang.

* TestResultServer/static-dashboards/dashboard_base.js:
Removed "FLAKY" from this list since we don't ever mark individual runs
as flaky. Also deleted an outdated line.
* TestResultServer/static-dashboards/flakiness_dashboard.html:

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

9 years ago[Coverity] Address some uninit constructor issues in WebCore/dom
commit-queue@webkit.org [Wed, 11 Jan 2012 20:41:59 +0000 (20:41 +0000)]
[Coverity] Address some uninit constructor issues in WebCore/dom
https://bugs.webkit.org/show_bug.cgi?id=74977

Patch by Greg Billock <gbillock@google.com> on 2012-01-11
Reviewed by Ryosuke Niwa.

* css/SelectorChecker.h:
(WebCore::SelectorChecker::ParentStackFrame::ParentStackFrame):
* dom/DeviceMotionData.cpp:
(WebCore::DeviceMotionData::DeviceMotionData):
* dom/DeviceOrientation.cpp:
(WebCore::DeviceOrientation::DeviceOrientation):

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

9 years agoRemove gtest normalization code from the test results server
ojan@chromium.org [Wed, 11 Jan 2012 20:38:36 +0000 (20:38 +0000)]
Remove gtest normalization code from the test results server
https://bugs.webkit.org/show_bug.cgi?id=76089

Reviewed by Tony Chang.

The normalization now happens on the gtest side.

* TestResultServer/model/jsonresults.py:
(JsonResults.merge):
* TestResultServer/model/jsonresults_unittest.py:
(JsonResultsTest.test_gtest):

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

9 years ago[chromium] Color profiles are incorrect for images without premultiplied alpha
kbr@google.com [Wed, 11 Jan 2012 20:17:13 +0000 (20:17 +0000)]
[chromium] Color profiles are incorrect for images without premultiplied alpha
https://bugs.webkit.org/show_bug.cgi?id=75999

Reviewed by Stephen White.

Source/WebCore:

Don't apply the color profile if the user has requested separate alpha.

Test: fast/canvas/webgl/texture-color-profile.html

* platform/image-decoders/skia/ImageDecoderSkia.cpp:
(WebCore::ImageFrame::setStatus):

LayoutTests:

Verify that the image's contents don't get destroyed if using both
separate alpha as well as the browser's colorspace conversion.

* fast/canvas/webgl/resources/tan-1x1-with-alpha.png: Added.
* fast/canvas/webgl/texture-color-profile-expected.txt: Added.
* fast/canvas/webgl/texture-color-profile.html: Added.

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

9 years agoBe more aggressive about deleting unnecessary results from the test-results-server...
ojan@chromium.org [Wed, 11 Jan 2012 20:01:24 +0000 (20:01 +0000)]
Be more aggressive about deleting unnecessary results from the test-results-server json files
https://bugs.webkit.org/show_bug.cgi?id=76086

Reviewed by Tony Chang.

Remove any tests that only contain skip/pass/nodata values whose runtime
is less than 5 seconds.

* TestResultServer/model/jsonresults.py:
(JsonResults._normalize_results_json):
* TestResultServer/model/jsonresults_unittest.py:
(JsonResultsTest.test_merge_remove_test):
(JsonResultsTest.test_merge_keep_test_with_all_pass_but_slow_time):

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

9 years agolast-green-revision should give us per-bot information
rniwa@webkit.org [Wed, 11 Jan 2012 19:53:00 +0000 (19:53 +0000)]
last-green-revision should give us per-bot information
https://bugs.webkit.org/show_bug.cgi?id=76011

Reviewed by Adam Barth.

Rewrote last-green-revision command. Instead of finding a revision for which all bots succeeded,
we report the latest green run on each bot from the last 100 runs.

* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(BuildBot._fetch_builder_page):
(BuildBot):
(BuildBot._green_revision_for_builder):
(BuildBot.last_green_revision):
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(test_green_revision_for_builder):
(test_last_green_revision):
* Scripts/webkitpy/tool/bot/irc_command.py:
(LastGreenRevision.execute):
* Scripts/webkitpy/tool/commands/queries.py:
(LastGreenRevision.execute):

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

9 years ago[Qt][Texmap] LayoutTests/compositing/masks/masked-ancestor does not render correctly.
noam.rosenthal@nokia.com [Wed, 11 Jan 2012 19:49:40 +0000 (19:49 +0000)]
[Qt][Texmap] LayoutTests/compositing/masks/masked-ancestor does not render correctly.
https://bugs.webkit.org/show_bug.cgi?id=75910

Reviewed by Simon Hausmann.

Handle the mask surface correctly when drawing in two passes. Also, improve the readability
of the code that decides whether to draw in two passes.

LayoutTests/compositing/masks/masked-ancestor.html tests this.

* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::computeAllTransforms):
(WebCore::TextureMapperNode::hasMoreThanOneTile):
(WebCore::TextureMapperNode::paintRecursive):
* platform/graphics/texmap/TextureMapperNode.h:

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

9 years agoWebpages flash white when switching between windows
andersca@apple.com [Wed, 11 Jan 2012 19:38:24 +0000 (19:38 +0000)]
Webpages flash white when switching between windows
https://bugs.webkit.org/show_bug.cgi?id=76080
<rdar://problem/9893565>

Reviewed by Dan Bernstein.

Introduce a _windowHasValidBackingStore boolean and only paint the background (white or clear)
if it's false.

* UIProcess/API/mac/WKView.mm:
(-[WKView setFrameSize:]):
Set _windowHasValidBackingStore to false if the new size is different from the old size.

(-[WKView viewDidMoveToWindow]):
Set _windowHasValidBackingStore to false.

(-[WKView _windowDidMiniaturize:]):
Set _windowHasValidBackingStore to false.

(-[WKView _windowDidChangeBackingProperties:]):
Set _windowHasValidBackingStore to false.

(-[WKView drawRect:]):
Only call drawPageBackground if _windowHasValidBackingStore is false. Set it to true after painting.

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

9 years agoAdd new CSS enum value to a switch() in CSSStyleSelector::applyProperty() to fix...
dimich@chromium.org [Wed, 11 Jan 2012 19:37:25 +0000 (19:37 +0000)]
Add new CSS enum value to a switch() in CSSStyleSelector::applyProperty() to fix compile error.
https://bugs.webkit.org/show_bug.cgi?id=76081

Reviewed by David Levin.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):

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

9 years agowebkitpy: clean up version detection in webkitpy.layout_tests.port
dpranke@chromium.org [Wed, 11 Jan 2012 19:26:25 +0000 (19:26 +0000)]
webkitpy: clean up version detection in webkitpy.layout_tests.port
https://bugs.webkit.org/show_bug.cgi?id=76016

Reviewed by Adam Barth.

This change updates the code in webkitpy.layout_tests.port to
use the new os_name and os_version fields on host.platform. This
gets layout_tests.port out of the version parsing business. Most
of the diffs are just cleaning up test code to accomodate the
changes.

* Scripts/webkitpy/common/system/executive_mock.py:
(MockExecutive):
(MockExecutive.ignore_error):
(MockExecutive2):
(MockExecutive2.ignore_error):
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.is_mac):
(MockPlatformInfo.is_linux):
(MockPlatformInfo.is_win):
* Scripts/webkitpy/common/system/systemhost_mock.py:
(MockSystemHost.__init__):
* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort.__init__):
(ChromiumMacPort.check_wdiff):
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
(ChromiumMacPortTest):
(ChromiumMacPortTest.assert_name):
(ChromiumMacPortTest.test_versions):
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumPortTest.test_all_test_configurations):
(ChromiumPortTest.TestMacPort.__init__):
(ChromiumPortTest.TestLinuxPort.__init__):
(ChromiumPortTest.TestWinPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
(ChromiumWinTest):
(ChromiumWinTest.assert_name):
(ChromiumWinTest.test_versions):
(ChromiumWinTest.test_baseline_path):
(ChromiumWinTest.test_build_path):
* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory._port_name_from_arguments_and_options):
(PortFactory.get):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest):
(FactoryTest.setUp):
(FactoryTest.assert_port):
(FactoryTest.test_mac):
(FactoryTest.test_win):
(FactoryTest.test_google_chrome):
(FactoryTest.test_gtk):
(FactoryTest.test_qt):
(FactoryTest.test_chromium_gpu):
(FactoryTest.test_chromium_gpu_linux):
(FactoryTest.test_chromium_gpu_mac):
(FactoryTest.test_chromium_gpu_win):
(FactoryTest.test_chromium_mac):
(FactoryTest.test_chromium_linux):
(FactoryTest.test_chromium_win):
(FactoryTest.test_unknown_specified):
(FactoryTest.test_unknown_default):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(TestGoogleChromePort):
(TestGoogleChromePort._verify_baseline_path):
(TestGoogleChromePort._verify_expectations_overrides):
(TestGoogleChromePort.test_get_google_chrome_port):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(MacTest):
(assert_name):
(test_tests_for_other_platforms):
(test_version):
(test_versions):
(test_is_version_methods):
(test_setup_environ_for_server):
(_assert_search_path):
(test_show_results_html_file):
* Scripts/webkitpy/layout_tests/port/port_testcase.py:
(PortTestCase):
(PortTestCase.make_port):
* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort):
* Scripts/webkitpy/layout_tests/port/win_unittest.py:
(WinPortTest):
(WinPortTest.test_show_results_html_file):
(WinPortTest._assert_search_path):
(WinPortTest._assert_version):

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

9 years agoFix the Mac GCC build.
andersca@apple.com [Wed, 11 Jan 2012 18:59:20 +0000 (18:59 +0000)]
Fix the Mac GCC build.

Work around the fact that GCC doesn't work very well with Blocks and C++ objets.

* UIProcess/mac/WebProcessProxyMac.mm:
(WebKit::dispatchFunctionOnQueue):
(WebKit::WebProcessProxy::secItemRequest):
(WebKit::WebProcessProxy::secKeychainItemRequest):

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

9 years ago Reviewed by Darin Adler. Prepared by Sheriff Bot. Rolling out r94902.
ap@apple.com [Wed, 11 Jan 2012 18:36:40 +0000 (18:36 +0000)]
    Reviewed by Darin Adler. Prepared by Sheriff Bot. Rolling out r94902.
        http://trac.webkit.org/changeset/94902
        https://bugs.webkit.org/show_bug.cgi?id=75905

        Disagrees with general direction for WebKit, and makes
        refactoring harder (Requested by ap on #webkit).

        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::deprecatedFrameEncoding):
        * loader/DocumentWriter.h:
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::addExtraFieldsToRequest):
        * platform/network/ResourceRequestBase.cpp:
        (WebCore::ResourceRequestBase::adopt):
        (WebCore::ResourceRequestBase::copyData):
        (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
        * platform/network/ResourceRequestBase.h:

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

9 years agoFix OpenGL dependency in CMake build system
efidler@rim.com [Wed, 11 Jan 2012 18:32:00 +0000 (18:32 +0000)]
Fix OpenGL dependency in CMake build system
https://bugs.webkit.org/show_bug.cgi?id=73559

Reviewed by Daniel Bates.

.:

Apparently the EFL port uses desktop OpenGL to implement WebGL, but
other ports such as BlackBerry use other libraries like OpenGL ES 2.0 or
ANGLE.

* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsEfl.cmake:

Source/WebCore:

* CMakeLists.txt:
* PlatformEfl.cmake:

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

9 years agoUse HashMap<OwnPtr> for RenderBoxRegionInfo map in RenderRegion
caio.oliveira@openbossa.org [Wed, 11 Jan 2012 18:17:57 +0000 (18:17 +0000)]
Use HashMap<OwnPtr> for RenderBoxRegionInfo map in RenderRegion
https://bugs.webkit.org/show_bug.cgi?id=75348

Reviewed by Darin Adler.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::logicalWidthChangedInRegions): use OwnPtr.
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::setRenderBoxRegionInfo): use HashMap::add() instead of
get() potentially followed by set().
(WebCore::RenderRegion::takeRenderBoxRegionInfo): change to return PassOwnPtr.
(WebCore::RenderRegion::removeRenderBoxRegionInfo):
(WebCore::RenderRegion::deleteAllRenderBoxRegionInfo):
* rendering/RenderRegion.h:

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

9 years ago[Qt][WK2] Directly-composited images sometimes appear with a wrong geometry
noam.rosenthal@nokia.com [Wed, 11 Jan 2012 18:06:57 +0000 (18:06 +0000)]
[Qt][WK2] Directly-composited images sometimes appear with a wrong geometry
https://bugs.webkit.org/show_bug.cgi?id=75882

Reviewed by Simon Hausmann.

When assigning a directly composited image to a TextureMapperNode in WebKit2, we take
contentsRect() onto account. However, contentsRect() might be changed after the image
is already assigned.
We have to reassign the image when contentsRect() changes. This is a pretty cheap
operation, since the image is already converted to a texture and we simply change the
geometric values.

* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::syncLayerParameters):
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):

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

9 years agoImplement setCurrentTime() and pauseAnimations() on SVGSVGElement
commit-queue@webkit.org [Wed, 11 Jan 2012 17:54:43 +0000 (17:54 +0000)]
Implement setCurrentTime() and pauseAnimations() on SVGSVGElement
https://bugs.webkit.org/show_bug.cgi?id=12073

Patch by Joel Webber <jgw@google.com> on 2012-01-11
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Adds the ability to reset an SVGSMILElement internally. SVGSMILElements are no longer removed
from their containers when they become inactive, because they sometimes have to be reactivated
when the container's current time is changed.

Test: svg/animations/animate-setcurrenttime.html

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::setCurrentTime):
* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::SMILTimeContainer):
(WebCore::SMILTimeContainer::begin):
(WebCore::SMILTimeContainer::pause):
(WebCore::SMILTimeContainer::setElapsed):
(WebCore::SMILTimeContainer::updateAnimations):
* svg/animation/SMILTimeContainer.h:
* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::reset):
* svg/animation/SVGSMILElement.h:

LayoutTests:

* platform/chromium-linux/svg/animations/animate-setcurrenttime-expected.png: Added.
* platform/chromium-linux/svg/animations/animate-setcurrenttime-expected.txt: Added.
* svg/animations/animate-setcurrenttime.svg: Added.

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

9 years ago[Qt][WK2] Remove workaround introduced into bug 75470
commit-queue@webkit.org [Wed, 11 Jan 2012 17:49:43 +0000 (17:49 +0000)]
[Qt][WK2] Remove workaround introduced into bug 75470
https://bugs.webkit.org/show_bug.cgi?id=75889

Patch by Hugo Parente Lima <hugo.lima@openbossa.org> on 2012-01-11
Reviewed by Tor Arne Vestbø.

* MiniBrowser/qt/qml/BrowserWindow.qml:

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

9 years ago[Chromium] Remove obsolete references to WebWorker class.
dslomov@google.com [Wed, 11 Jan 2012 17:40:58 +0000 (17:40 +0000)]
[Chromium] Remove obsolete references to WebWorker class.
https://bugs.webkit.org/show_bug.cgi?id=76020

Reviewed by David Levin.

Source/WebKit/chromium:

* public/WebFrameClient.h:
* public/WebSharedWorkerClient.h:

Tools:

* DumpRenderTree/chromium/TestWebWorker.h: Removed.
* DumpRenderTree/chromium/WebViewHost.cpp:
* DumpRenderTree/chromium/WebViewHost.h:

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

9 years agoWeb Inspector: CodeGeneratorInspector.py: fix codestyle of generated enums
commit-queue@webkit.org [Wed, 11 Jan 2012 17:36:20 +0000 (17:36 +0000)]
Web Inspector: CodeGeneratorInspector.py: fix codestyle of generated enums
https://bugs.webkit.org/show_bug.cgi?id=76062

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-11
Reviewed by Yury Semikhatsky.

This only changes how constants are named in generated .h file.

* inspector/CodeGeneratorInspector.py:

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

9 years agoREGRESSION(r103130) - svg/W3C-SVG-1.1/animate-elem-*-t.svg asserting
commit-queue@webkit.org [Wed, 11 Jan 2012 17:19:52 +0000 (17:19 +0000)]
REGRESSION(r103130) - svg/W3C-SVG-1.1/animate-elem-*-t.svg asserting
https://bugs.webkit.org/show_bug.cgi?id=74788

Unreviewed chromium expectations update, pending a real fix.

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

* platform/chromium/test_expectations.txt: Added animate-elem-60-t.svg linux debug flakey crash

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

9 years agoWeb Inspector: "undefined" instead of error message in the SourceFrame.
pfeldman@chromium.org [Wed, 11 Jan 2012 16:35:00 +0000 (16:35 +0000)]
Web Inspector: "undefined" instead of error message in the SourceFrame.
https://bugs.webkit.org/show_bug.cgi?id=76060

Reviewed by Yury Semikhatsky.

Source/WebCore:

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatMessage):
(WebInspector.ConsoleMessageImpl.prototype.get message):

LayoutTests:

* http/tests/inspector-enabled/console-log-before-frame-navigation.html:
* inspector/debugger/source-frame-expected.txt:

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

9 years agoWeb Inspector: make setOuterHTML use new DOMEditor, cover it with tests.
pfeldman@chromium.org [Wed, 11 Jan 2012 16:18:17 +0000 (16:18 +0000)]
Web Inspector: make setOuterHTML use new DOMEditor, cover it with tests.
https://bugs.webkit.org/show_bug.cgi?id=76056

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-outer-html.html

* inspector/DOMEditor.cpp:
(WebCore::DOMEditor::Digest::Digest):
(WebCore::DOMEditor::patchDocument):
(WebCore::DOMEditor::patchNode):
(WebCore::DOMEditor::innerPatchHTMLElement):
(WebCore::DOMEditor::innerPatchNode):
(WebCore::DOMEditor::diff):
(WebCore::DOMEditor::innerPatchChildren):
(WebCore::DOMEditor::createDigest):
* inspector/DOMEditor.h:
* inspector/Inspector-0.1.json:
* inspector/Inspector.json:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setOuterHTML):
* inspector/InspectorDOMAgent.h:
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype._renumber):
* inspector/front-end/ElementsTreeOutline.js:
():

LayoutTests:

* inspector/elements/edit-dom-actions-expected.txt:
* inspector/elements/edit-dom-actions.html:
* inspector/elements/set-outer-html-expected.txt: Added.
* inspector/elements/set-outer-html.html: Added.

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

9 years ago[Qt][WK2] css3/filters/should-not-have-compositing-layer.html is failing since added...
kbalazs@webkit.org [Wed, 11 Jan 2012 15:49:23 +0000 (15:49 +0000)]
[Qt][WK2] css3/filters/should-not-have-compositing-layer.html is failing since added in 104622
https://bugs.webkit.org/show_bug.cgi?id=76061

Unreviewed gardening.

* platform/qt-wk2/Skipped: Skip failig test.

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

9 years agoWebKit2 needs layoutTestController.overridePreference
kbalazs@webkit.org [Wed, 11 Jan 2012 15:16:11 +0000 (15:16 +0000)]
WebKit2 needs layoutTestController.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=42197

Unreviewed gardening.

Skip new dependent tests.

* platform/wk2/Skipped:

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

9 years agoWeb Inspector: introduce "source" column in the CSS profiler.
apavlov@chromium.org [Wed, 11 Jan 2012 15:14:44 +0000 (15:14 +0000)]
Web Inspector: introduce "source" column in the CSS profiler.
https://bugs.webkit.org/show_bug.cgi?id=75378

Reviewed by Pavel Feldman.

Rules are no longer merged by their selectors but are shown one per profile entry, with a link to
their selector in the source whenever the latter is available.

* inspector/Inspector.json:
* inspector/InspectorCSSAgent.cpp:
(WebCore::RuleMatchingStats::RuleMatchingStats):
(WebCore::SelectorProfile::makeKey):
(WebCore::SelectorProfile::startSelector):
(WebCore::SelectorProfile::commitSelector):
(WebCore::SelectorProfile::commitSelectorTime):
(WebCore::SelectorProfile::toInspectorObject):
(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):
(WebCore::InspectorCSSAgent::buildArrayForRuleList):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::styleSheetURL):
(WebCore::InspectorStyleSheet::finalURL):
(WebCore::InspectorStyleSheet::setRuleSelector):
* inspector/InspectorStyleSheet.h:
* inspector/front-end/CSSSelectorProfileView.js:
(WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
(WebInspector.CSSSelectorDataGridNode.prototype.createCell):
(WebInspector.CSSSelectorProfileView):
(WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
(WebInspector.CSSSelectorProfileView.prototype._sortProfile.sourceComparator):
(WebInspector.CSSSelectorProfileView.prototype._sortProfile):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype.sidebarResized):
* inspector/front-end/dataGrid.css:
(.data-grid:focus tr.selected a):

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

9 years ago[Qt] Add the editor rect to the EditorState https://bugs.webkit.org/show_bug.cgi...
kenneth@webkit.org [Wed, 11 Jan 2012 14:58:22 +0000 (14:58 +0000)]
[Qt] Add the editor rect to the EditorState https://bugs.webkit.org/show_bug.cgi?id=76053

Reviewed by Simon Hausmann.

Also rename some members to match the new Qt naming scheme.

* Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
* Shared/EditorState.h:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::inputMethodQuery):
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::respondToChangedSelection):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):

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

9 years ago[Qt] Some css3 filter tests are failing after r104698
ossy@webkit.org [Wed, 11 Jan 2012 14:33:49 +0000 (14:33 +0000)]
[Qt] Some css3 filter tests are failing after r104698
https://bugs.webkit.org/show_bug.cgi?id=76055

Reviewed by Simon Hausmann.

Tools:

* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::overridePreference): Add WebKitAcceleratedCompositingEnabled preference.

LayoutTests:

* platform/qt/Skipped: Unskip now passing tests.

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

9 years agoWeb Inspector: CodeGeneratorInspector.py: generate enum types.
yurys@chromium.org [Wed, 11 Jan 2012 14:17:45 +0000 (14:17 +0000)]
Web Inspector: CodeGeneratorInspector.py: generate enum types.
https://bugs.webkit.org/show_bug.cgi?id=74954

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-11
Reviewed by Yury Semikhatsky.

Internal map of string contants is created. C enums are created for
each JSON enum.

* inspector/CodeGeneratorInspector.py:
(EnumConstants.add_constant):
(EnumConstants):
(EnumConstants.get_enum_constant_code):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
(TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
(TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
(get_in_c_type_text):
(get_setter_value_expression_pattern):
(PlainObjectBinding.get_in_c_type_text):
(PlainObjectBinding.get_setter_value_expression_pattern):
(RawTypesBinding.get_in_c_type_text):
(RawTypesBinding.get_setter_value_expression_pattern):
(get_annotated_type_text):
(MethodGenerateModes.get_modes):
(MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
(MethodGenerateModes.StrictParameterMode):
(MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
(MethodGenerateModes.RawParameterMode.get_c_param_type_text):
(MethodGenerateModes.RawParameterMode):
(MethodGenerateModes.RawParameterMode.get_setter_value_expression):
(MethodGenerateModes.CombinedMode.get_c_param_type_text):
(MethodGenerateModes):
(MethodGenerateModes.CombinedMode):
(MethodGenerateModes.CombinedMode.get_setter_value_expression):

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

9 years ago[GTK] Linking of big binaries should be serialized to avoid thrashing
kov@webkit.org [Wed, 11 Jan 2012 13:54:06 +0000 (13:54 +0000)]
[GTK] Linking of big binaries should be serialized to avoid thrashing
https://bugs.webkit.org/show_bug.cgi?id=75977

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-01-11
Reviewed by Martin Robinson.

Added artificial dependencies so that libwebkitgtk is always
linked first, libwebkit2gtk second, and WebKitPluginProcess
last. Automake unfortunately replaces the whole rule used to build
the libraries if the actual name is used to add the dependency, so
we use helper variables to work around that.

* GNUmakefile.am:

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

9 years agoAvoid separate heap allocation for each RenderRegionRange in RenderFlowThread
caio.oliveira@openbossa.org [Wed, 11 Jan 2012 13:50:20 +0000 (13:50 +0000)]
Avoid separate heap allocation for each RenderRegionRange in RenderFlowThread
https://bugs.webkit.org/show_bug.cgi?id=75908

Reviewed by Darin Adler.

There's no benefit in explicit allocating RenderRegionRange in the heap. So this
patch changes the RenderRegionRangeMap to use the value type directly instead of
the pointer.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeRegionFromThread):
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
(WebCore::RenderFlowThread::setRegionRangeForBox):
(WebCore::RenderFlowThread::getRegionRangeForBox):
* rendering/RenderFlowThread.h: add default constructor to act as emptyValue()
for HashMap.

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

9 years ago[Qt] Some css3 filter tests are failing after r104698
rgabor@webkit.org [Wed, 11 Jan 2012 13:47:47 +0000 (13:47 +0000)]
[Qt] Some css3 filter tests are failing after r104698
https://bugs.webkit.org/show_bug.cgi?id=76055

Unreviewed gardening.

* platform/qt/Skipped:

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

9 years ago2012-01-11 Alexandru Chiculita <achicu@adobe.com>
achicu@adobe.com [Wed, 11 Jan 2012 13:38:03 +0000 (13:38 +0000)]
2012-01-11  Alexandru Chiculita  <achicu@adobe.com>

        Unreviewd build fix after http://trac.webkit.org/changeset/104702.

Moving the FilterEffectRenderer::updateBackingStore outside the ENABLE(CSS_SHADERS) block.

        * rendering/FilterEffectRenderer.cpp:
        (WebCore::FilterEffectRenderer::notifyCustomFilterProgramLoaded):

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

9 years ago[CSS Shaders] Move CustomFilterOperation to the platform layer
achicu@adobe.com [Wed, 11 Jan 2012 13:24:39 +0000 (13:24 +0000)]
[CSS Shaders] Move CustomFilterOperation to the platform layer
https://bugs.webkit.org/show_bug.cgi?id=74652

Reviewed by Chris Marrin.

Source/WebCore:

FilterOperations are now part of the platform code and cannot reference style classes directly, but
CustomFilterOperation requires to link to the CachedShader for the vertex and the fragment shader.

The fix is to introduce another object that will actually keep a link to the cached resources, so in this patch
I'm adding a new class called CustomFilterProgram that will sit in the
platform/graphics/filters directory and will be referenced from CustomFilterOperation.

CustomFilterProgram is the base class of StyleCustomFilterProgram that is created from
CSSStyleSelector when a new CustomFilterOperation is created. StyleCustomFilterProgram is responsible
with loading and keeping references to the StyleCachedShaders and the CachedShaders.

More patches will follow with optimizations about reusing 3D graphics contexts and compiled shaders.

Tests: css3/filters/custom-filter-shader-cache.html
       css3/filters/missing-custom-filter-shader.html

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::loadPendingShaders):
(WebCore::CSSStyleSelector::createCustomFilterOperation):
    Updated to use the StyleCustomFilterProgram instead of the CustomFilterOperation.

* platform/graphics/filters/CustomFilterOperation.h: Renamed from Source/WebCore/rendering/style/CustomFilterOperation.h.
(WebCore::CustomFilterOperation::create):
    Accepts a CustomFilterProgram instead of vertex and fragment CachedShaders.

(WebCore::CustomFilterOperation::program): Returns the CustomFilterProgram.

(WebCore::CustomFilterOperation::CustomFilterOperation):
    Accepts a CustomFilterProgram instead of vertex and fragment CachedShaders.

* platform/graphics/filters/CustomFilterProgram.cpp: Added.
(WebCore::CustomFilterProgram::CustomFilterProgram):
(WebCore::CustomFilterProgram::~CustomFilterProgram):
(WebCore::CustomFilterProgram::addClient):
(WebCore::CustomFilterProgram::removeClient):
(WebCore::CustomFilterProgram::notifyClients):
(WebCore::CustomFilterProgram::createShaderWithContext):
* platform/graphics/filters/CustomFilterProgram.h: Added.
* platform/graphics/filters/CustomFilterProgramClient.h: Added.
(WebCore::CustomFilterProgramClient::~CustomFilterProgramClient):

* platform/graphics/filters/FECustomFilter.cpp:
    FECustomFilter will not use strings anymore. It will just get a reference to the CustomFilterProgram.

(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):
(WebCore::FECustomFilter::initializeContext):
    Using the CustomFilterProgram to generate the CustomFilterShader instance. A better name for CustomFilterShader
    would be CustomFilterCompiledProgram, but I would prefer to make that change in a different patch.

* platform/graphics/filters/FECustomFilter.h:
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::~FilterEffectRenderer):
(WebCore::FilterEffectRenderer::build):
(WebCore::FilterEffectRenderer::notifyCustomFilterProgramLoaded):
(WebCore::FilterEffectRenderer::removeCustomFilterClients):
* rendering/FilterEffectRenderer.h:
* rendering/style/StyleCustomFilterProgram.h: Added.
(WebCore::StyleCustomFilterProgram::create):
(WebCore::StyleCustomFilterProgram::setVertexShader):
(WebCore::StyleCustomFilterProgram::vertexShader):
(WebCore::StyleCustomFilterProgram::setFragmentShader):
(WebCore::StyleCustomFilterProgram::fragmentShader):
(WebCore::StyleCustomFilterProgram::vertexShaderString):
(WebCore::StyleCustomFilterProgram::fragmentShaderString):
(WebCore::StyleCustomFilterProgram::isLoaded):
(WebCore::StyleCustomFilterProgram::willHaveClients):
(WebCore::StyleCustomFilterProgram::didRemoveLastClient):
(WebCore::StyleCustomFilterProgram::notifyFinished):
(WebCore::StyleCustomFilterProgram::StyleCustomFilterProgram):

LayoutTests:

* css3/filters/custom-filter-shader-cache-expected.png: Added.
* css3/filters/custom-filter-shader-cache-expected.txt: Added.
* css3/filters/custom-filter-shader-cache.html: Added.
    Testing that multiple elements can share the same shaders cached resources.

* css3/filters/missing-custom-filter-shader-expected.png: Added.
* css3/filters/missing-custom-filter-shader-expected.txt: Added.
* css3/filters/missing-custom-filter-shader.html: Added.
    Testing that we don't crash when shaders are missing and that we don't try to render
    if one component of the pair (vertex shader, fragment shader) was not loaded yet.

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

9 years ago[Chromium] Unreviewed, rebaseline http/tests/media/video-buffering-repaints-controls...
apavlov@chromium.org [Wed, 11 Jan 2012 13:21:10 +0000 (13:21 +0000)]
[Chromium] Unreviewed, rebaseline http/tests/media/video-buffering-repaints-controls.html for Mac Leopard Debug.

* platform/chromium-mac-leopard/http/tests/media/video-buffering-repaints-controls-expected.png:
* platform/chromium-mac-leopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.

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

9 years ago[Qt] new test fast/forms/radio/radio-group.html failing after r104668
rgabor@webkit.org [Wed, 11 Jan 2012 12:46:45 +0000 (12:46 +0000)]
[Qt] new test fast/forms/radio/radio-group.html failing after r104668
https://bugs.webkit.org/show_bug.cgi?id=76051

Unreviewed gardening.

* platform/qt/Skipped:

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

9 years ago[Chromium] Skip failing fast/text/font-kerning.html reftest on Win7.
apavlov@chromium.org [Wed, 11 Jan 2012 12:24:42 +0000 (12:24 +0000)]
[Chromium] Skip failing fast/text/font-kerning.html reftest on Win7.

* platform/chromium-win/fast/text/font-kerning-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

9 years agoCSS Filters: apply the filters in RenderLayerBacking::paintIntoLayer when filters...
achicu@adobe.com [Wed, 11 Jan 2012 12:08:59 +0000 (12:08 +0000)]
CSS Filters: apply the filters in RenderLayerBacking::paintIntoLayer when filters cannot be composited in hardware
https://bugs.webkit.org/show_bug.cgi?id=75842

Reviewed by Simon Fraser.

Source/WebCore:

RenderLayers have two possible states: composited or not. When composited the RenderLayerBacking::paintIntoLayer is used
to render the result inside the graphics context of the GraphicsLayer. When not composited the RenderLayer::paintLayer method will draw
the result in the graphics context of the parent layer.

Because a recent patch forced creation of composited layers for filters, this patch makes RenderLayerBacking::paintIntoLayer aware
that it might need to apply the filters when the composition engine failed to apply them in platform code.

No new tests needed, I've just updated some of the old tests to force disable the accelerated composition
so that we can still test software painted filters.

* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::clearFilters):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setFilters):
    If filtersCanBeComposited() is false we need to reset the CoreAnimation layer to remove any previously applied filter.
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::filtersCanBeComposited):
    Added grayscale, brightness and contrast in the list of not accelerated filters. Otherwise an assert if triggered.
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::updateBackingStore):
    Moved this method from RenderLayer::updateFilterBackingStore. It had no dependencies on RenderLayer.
(WebCore::FilterEffectRendererHelper::beginFilterEffect):
(WebCore::FilterEffectRendererHelper::applyFilterEffect):
    Consolidated the filter rendering inside this helper class that is now used in both RenderLayerBacking::paintIntoLayer and RenderLayer::paintLayer.
* rendering/FilterEffectRenderer.h:
(WebCore::FilterEffectRendererHelper::FilterEffectRendererHelper):
(WebCore::FilterEffectRendererHelper::haveFilterEffect):
(WebCore::FilterEffectRendererHelper::hasStartedFilterEffect):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayer):
    Filters should apply after the opacity is applied, so I moved this down to paintLayerContents.
(WebCore::RenderLayer::paintLayerContents):
* rendering/RenderLayer.h:
(WebCore::RenderLayer::filter):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):
    Added software fallback rendering of the filters on composited RenderLayers.

LayoutTests:

Disabled the accelerated composition on some of the tests, so that we can test that software pipeline still works.
Note that we also have equivalent tests ending in "-hw.html" that test the accelerated composited mode.

* css3/filters/effect-blur.html:
* css3/filters/effect-brightness.html:
* css3/filters/effect-combined.html:
* css3/filters/effect-contrast.html:
* css3/filters/effect-custom-expected.png: Reverted the expected results for CSS Shader test with WebGL enabled.
* css3/filters/effect-custom-expected.txt: Added some output to the test, to make it easy to understand what is tested.
* css3/filters/effect-custom.html: Also forced enabled WebGL using layoutTestController.overridePreference.
* css3/filters/effect-drop-shadow.html:
* css3/filters/effect-grayscale.html:
* css3/filters/effect-hue-rotate.html:
* css3/filters/effect-invert.html:
* css3/filters/effect-opacity.html:
* css3/filters/effect-saturate.html:
* css3/filters/effect-sepia.html:
* css3/filters/filter-repaint.html:

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

9 years agoUnreviewed, rebaseline after r104678.
philn@webkit.org [Wed, 11 Jan 2012 11:52:53 +0000 (11:52 +0000)]
Unreviewed, rebaseline after r104678.

* platform/gtk/Skipped: Skip failing fast/text/font-kerning.html
ref test.
* platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

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

9 years agoImplement the font-kerning CSS property
ossy@webkit.org [Wed, 11 Jan 2012 11:50:41 +0000 (11:50 +0000)]
Implement the font-kerning CSS property
https://bugs.webkit.org/show_bug.cgi?id=76033

Unreviewed gardening after r104678.

* svg/css/getComputedStyle-basic-expected.txt:

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

9 years ago[Chromium] Unreviewed, mark http/tests/media/video-buffering-repaints-controls.html...
apavlov@chromium.org [Wed, 11 Jan 2012 11:27:58 +0000 (11:27 +0000)]
[Chromium] Unreviewed, mark http/tests/media/video-buffering-repaints-controls.html as timing out on Leopard.
https://bugs.webkit.org/show_bug.cgi?id=75570

* platform/chromium/test_expectations.txt:

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

9 years agoMove the check for canExecuteScripts out of V8Proxy::retrieve
jochen@chromium.org [Wed, 11 Jan 2012 10:58:00 +0000 (10:58 +0000)]
Move the check for canExecuteScripts out of V8Proxy::retrieve
https://bugs.webkit.org/show_bug.cgi?id=75533

Reviewed by Adam Barth.

Source/WebCore:

This change doesn't move the check to custom/generated bindings for
individual objects, as these won't get executed if scripts are disabled
anyway.

No new tests. No functional change.

* bindings/v8/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::addListener):
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/ScriptCachedFrameData.cpp:
(WebCore::ScriptCachedFrameData::restore):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8EventListener.cpp:
(WebCore::V8EventListener::callListenerFunction):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::callListenerFunction):
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::handleOutOfMemory):
(WebCore::V8Proxy::retrieve):
(WebCore::toV8Context):

Source/WebKit/chromium:

* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::didClearWindowObject):

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

9 years agoRemove S60 reference from webkit.org
antti@apple.com [Wed, 11 Jan 2012 10:51:16 +0000 (10:51 +0000)]
Remove S60 reference from webkit.org
https://bugs.webkit.org/show_bug.cgi?id=76044

Reviewed by Simon Hausmann.

There is no S60.

* index.html:

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

9 years agoDon't remove 0 byte files when running build-webkit --chromium
tony@chromium.org [Wed, 11 Jan 2012 10:49:51 +0000 (10:49 +0000)]
Don't remove 0 byte files when running build-webkit --chromium
https://bugs.webkit.org/show_bug.cgi?id=75997

Reviewed by Csaba Osztrogonác.

If QTDIR is set, isQt() is true even when running build-webkit --chromium.

* Scripts/webkitdirs.pm:
(determineIsQt):

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

9 years ago[EFL][WK2] Rename viewObject to viewWidget
ryuan.choi@samsung.com [Wed, 11 Jan 2012 10:41:57 +0000 (10:41 +0000)]
[EFL][WK2] Rename viewObject to viewWidget
https://bugs.webkit.org/show_bug.cgi?id=75947

Reviewed by Martin Robinson.

Rename viewObject to viewWidget for the EFL port to use WidgetBackingStore
which calls viewWidget().

* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::setViewNeedsDisplay):
(WebKit::PageClientImpl::viewSize):
* UIProcess/API/efl/PageClientImpl.h:
(WebKit::PageClientImpl::create):
(WebKit::PageClientImpl::viewWidget):
* UIProcess/WebPageProxy.h:
* UIProcess/efl/WebPageProxyEfl.cpp:
(WebKit::WebPageProxy::viewWidget):

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

9 years agoShouldSkipTypeInHeader() and ShouldSkipTypeInImplementation() should be the same
haraken@chromium.org [Wed, 11 Jan 2012 10:24:51 +0000 (10:24 +0000)]
ShouldSkipTypeInHeader() and ShouldSkipTypeInImplementation() should be the same
https://bugs.webkit.org/show_bug.cgi?id=76030

Reviewed by Adam Barth.

Because the attributes/methods that do not appear in the implementation
do not need to appear in the header.

Tests: bindings/scripts/test/TestCallback.idl
       bindings/scripts/test/TestObj.idl

* bindings/scripts/CodeGeneratorCPP.pm:
(ShouldSkipType): Renamed from ShouldSkipTypeInImplementation().
(GenerateHeader): Replaced ShouldSkipTypeInImplementation() with ShouldSkipType(),
and replaced ShouldSkipTypeInHeader() with ShouldSkipType().
(GenerateImplementation): Ditto.
* bindings/scripts/test/CPP/WebDOMTestCallback.h: Updated the test result.
* bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.

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

9 years ago[Chromium] Unreviewed, more rebaselines after r104678.
apavlov@chromium.org [Wed, 11 Jan 2012 10:14:44 +0000 (10:14 +0000)]
[Chromium] Unreviewed, more rebaselines after r104678.

* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Added.
* platform/chromium-win/fast/text/font-kerning-expected.png: Added.

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

9 years agoFix more style errors in CSSParser.cpp (followup patch)
zherczeg@webkit.org [Wed, 11 Jan 2012 10:11:55 +0000 (10:11 +0000)]
Fix more style errors in CSSParser.cpp (followup patch)
https://bugs.webkit.org/show_bug.cgi?id=76038

Reviewed by Nikolas Zimmermann.

The previous was: http://trac.webkit.org/changeset/104576
This patch mostly contains C cast to static_cast rewrites.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseBackgroundColor):
(WebCore::ShadowParseContext::commitLength):
(WebCore::BorderImageSliceParseContext::commitNumber):
(WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
(WebCore::BorderImageQuadParseContext::commitNumber):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
(WebCore::parseDeprecatedGradientPoint):

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

9 years ago[EFL] Refactor single backing store scroll code.
commit-queue@webkit.org [Wed, 11 Jan 2012 10:05:48 +0000 (10:05 +0000)]
[EFL] Refactor single backing store scroll code.
https://bugs.webkit.org/show_bug.cgi?id=75243

Patch by JungJik Lee <jungjik.lee@samsung.com> on 2012-01-11
Reviewed by Zoltan Herczeg.

Remove the duplicated code and refactor the scroll procedure.
Wherever the page is scrolled, there are one screen copy and two updates.
This patch optimises the scroll procedure by less calculation.

* ewk/ewk_view_single.cpp:
(_ewk_view_screen_move):
(_ewk_view_single_scroll_process_single):

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

9 years ago2012-01-11 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Wed, 11 Jan 2012 10:04:26 +0000 (10:04 +0000)]
2012-01-11  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix release builds.

        * rendering/svg/SVGTextMetricsBuilder.cpp:
        (WebCore::SVGTextMetricsBuilder::measureTextRenderer):

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

9 years ago[Chromium] Unreviewed, rebaseline fast/css/getComputedStyle/computed-style.html after...
apavlov@chromium.org [Wed, 11 Jan 2012 09:26:22 +0000 (09:26 +0000)]
[Chromium] Unreviewed, rebaseline fast/css/getComputedStyle/computed-style.html after r104678.

* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:

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

9 years agoREGRESSION(r101445): [V8] Generated code for custom getters and setters
haraken@chromium.org [Wed, 11 Jan 2012 09:24:56 +0000 (09:24 +0000)]
REGRESSION(r101445): [V8] Generated code for custom getters and setters
with the [Supplemental] IDL is wrong
https://bugs.webkit.org/show_bug.cgi?id=76034

Reviewed by Adam Barth.

This patch fixes the class name of the implementation of custom getters
and setters, as follows.

Previous V8TestInterface.cpp:
    // Attribute 'supplementalStr3'
    {"supplementalStr3", V8TestSupplemental::supplementalStr3AccessorGetter, V8TestSupplemental::supplementalStr3AccessorSetter, ...},

New V8TestInterface.cpp:
    // Attribute 'supplementalStr3'
    {"supplementalStr3", V8TestInterface::supplementalStr3AccessorGetter, V8TestInterface::supplementalStr3AccessorSetter, ...},

Test: bindings/scripts/test/TestInterface.idl
      bindings/scripts/test/TestSupplemental.idl

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateSingleBatchedAttribute):
* bindings/scripts/test/V8/V8TestInterface.cpp:

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

9 years agoLarge SVG text layout performance regression in r81168
zimmermann@webkit.org [Wed, 11 Jan 2012 09:16:16 +0000 (09:16 +0000)]
Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Introduce SVGTextMetricsBuilder, which will be used to speed-up measuring of SVG text,
by using the simple code path, whenever possibly. It's not enabled yet, as it requires
a restructurization of SVGTextLayoutAttributesBuilder - its the first chunk of a set
of patches, that all together fix the performance regression and much more :-)

Doesn't affect any tests, SVGTextMetricsBuilder is not turned on yet.

* CMakeLists.txt: Add SVGTextMetricsBuilder.cpp/h to build.
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* platform/graphics/Font.h:
(WebCore::Font::codePath): Make it public, to be usable from SVGTextMetricsBuilder.
* rendering/svg/RenderSVGAllInOne.cpp: Add SVGTextMetricsBuilder.cpp to build.
* rendering/svg/RenderSVGText.cpp:
* rendering/svg/RenderSVGText.h:
* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes): SVGTextMetrics::emptyMetrics() is gone, adapt code.
* rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics): Ditto.
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath): Ditto.
* rendering/svg/SVGTextMetrics.cpp:
(WebCore::SVGTextMetrics::SVGTextMetrics): Made public, now used in SVGTextLayoutEngine.
(WebCore::SVGTextMetrics::constructTextRun): Move to public static function, to be usable from SVGTextMetricsBuilder.
* rendering/svg/SVGTextMetrics.h:
(WebCore::SVGTextMetrics::isEmpty): Add new isEmpty method, which replaces the == empyMetrics().
(WebCore::SVGTextMetrics::setWidth): Remove friendship with SVGTextLayoutAttributesBuilder, and make it public, to avoid another friendship.
* rendering/svg/SVGTextMetricsBuilder.cpp: Added.
(WebCore::SVGTextMetricsBuilder::SVGTextMetricsBuilder):
(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceSimpleText): New variant using WidthIterator directly, this is finally possible as SVG Fonts have been integrated into the glyph pages concept a while ago.
(WebCore::SVGTextMetricsBuilder::advanceComplexText): Complex code path, accounting for sum of glyph widths != run width.
(WebCore::SVGTextMetricsBuilder::measureTextRenderer): Either measure the text renderer, or just figure out lastCharacter.
(WebCore::SVGTextMetricsBuilder::walkTreeUntilSpecificLeafIsReached): Walks SVG <text> tree, correctly computing "lastCharacter" until the leaf is reached.
(WebCore::SVGTextMetricsBuilder::measureAllCharactersOfRenderer): Use above method.
* rendering/svg/SVGTextMetricsBuilder.h: Added.

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

9 years ago[Chromium] Unreviewed, add baselines for http/tests/media/video-buffering-repaints...
apavlov@chromium.org [Wed, 11 Jan 2012 09:16:11 +0000 (09:16 +0000)]
[Chromium] Unreviewed, add baselines for http/tests/media/video-buffering-repaints-controls.html

* platform/chromium-mac-leopard/http/tests/media/video-buffering-repaints-controls-expected.png: Added.
* platform/chromium-mac-leopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Added.
* platform/chromium-mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.png: Added.
* platform/chromium-mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Copied from LayoutTests/platform/chromium-linux/http/tests/media/video-buffering-repaints-controls-expected.txt.
* platform/chromium-win/http/tests/media/video-buffering-repaints-controls-expected.png: Added.
* platform/chromium-win/http/tests/media/video-buffering-repaints-controls-expected.txt: Renamed from LayoutTests/platform/chromium-linux/http/tests/media/video-buffering-repaints-controls-expected.txt.

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

9 years agoUnreviewed trivial build fix: Removed unnecessary QHttpRequestHeader
hausmann@webkit.org [Wed, 11 Jan 2012 09:02:35 +0000 (09:02 +0000)]
Unreviewed trivial build fix: Removed unnecessary QHttpRequestHeader
inclusion (and the file is removed in newer Qt 5 versions).

* Api/qwebpage.cpp:

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