WebKit-https.git
7 years ago[Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
shinyak@chromium.org [Wed, 12 Dec 2012 08:13:09 +0000 (08:13 +0000)]
[Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=104218

Reviewed by Hajime Morita.

Source/WebCore:

Implements HTMLShadowElement::olderShadowRoot, which returns the ShadowRoot the HTMLShadowElement is assigned to.
When such ShadowRoot does not exist, 0 is returned.

Test: fast/dom/shadow/olderShadowRoot-in-shadowelement.html

* dom/ElementShadow.cpp:
(WebCore::ElementShadow::ensureDistributionFromDocument): Ensures distribution of this ElementShadow and
all of the parent TreeScope distribution. This function will be shared for Bug 104345.
(WebCore):
* dom/ElementShadow.h:
(ElementShadow):
* html/shadow/HTMLShadowElement.cpp:
(WebCore::HTMLShadowElement::olderShadowRoot):
(WebCore):
* html/shadow/HTMLShadowElement.h:
* html/shadow/HTMLShadowElement.idl:

LayoutTests:

* fast/dom/shadow/olderShadowRoot-in-shadowelement-expected.txt: Added.
* fast/dom/shadow/olderShadowRoot-in-shadowelement.html: Added.

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

7 years ago[Texmap] Consolidate redundant code for ARB_RECT texture
commit-queue@webkit.org [Wed, 12 Dec 2012 08:10:44 +0000 (08:10 +0000)]
[Texmap] Consolidate redundant code for ARB_RECT texture
https://bugs.webkit.org/show_bug.cgi?id=104705

Patch by No'am Rosenthal <noam@webkit.org> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Instead of having a whole different function for RECT textures,
keep the existing functions and pass a flag that tells
TextureMapperGL to use the non-normalized coordinates and the
RECT shaders.

No new tests, refactor only. Tested to not break WebGL on
Qt-Mac.

* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawQuad):
    Compensate for rect textures in drawQuad.

(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
    Pass flags to TextureMapperGL::drawQuad instead of a bool.

* platform/graphics/texmap/TextureMapperGL.h:
(TextureMapperGL):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::getShaderSpec):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(TextureMapperShaderProgram):
    Compensate for the texture-size in the vertex
    shader instead of in the fragment shader.

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

7 years agoMark a Linux compositing test as failing after a change to the Chromium compositor.
adamk@chromium.org [Wed, 12 Dec 2012 08:02:19 +0000 (08:02 +0000)]
Mark a Linux compositing test as failing after a change to the Chromium compositor.

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoImplement add64 for ARM traditional assembler after r136601
commit-queue@webkit.org [Wed, 12 Dec 2012 08:00:33 +0000 (08:00 +0000)]
Implement add64 for ARM traditional assembler after r136601
https://bugs.webkit.org/show_bug.cgi?id=104103

Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-12-11
Reviewed by Zoltan Herczeg.

Implement add64 function for ARM traditional macroassembler.

* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::add64):
(MacroAssemblerARM):

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

7 years agoREGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot ...
hayato@chromium.org [Wed, 12 Dec 2012 07:54:30 +0000 (07:54 +0000)]
REGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot (Requested by hayato on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=104770

Unreviewed, build fix.

Source/WebCore:

* dom/ShadowRoot.idl:
* page/DOMWindow.idl:

LayoutTests:

* fast/js/global-constructors-expected.txt:
* platform/efl/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

7 years agoUnreviewed, rolling out r137333, r137344, r137364, and
commit-queue@webkit.org [Wed, 12 Dec 2012 07:49:39 +0000 (07:49 +0000)]
Unreviewed, rolling out r137333, r137344, r137364, and
r137377.
http://trac.webkit.org/changeset/137333
http://trac.webkit.org/changeset/137344
http://trac.webkit.org/changeset/137364
http://trac.webkit.org/changeset/137377
https://bugs.webkit.org/show_bug.cgi?id=104771

Caused a raft of browser_test failures in Chromium (Requested
by aklein on #webkit).

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

Source/WebCore:

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader):
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::~MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::willCancel):
(WebCore::MainResourceLoader::didCancel):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::addData):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::didFail):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::loadNow):
(WebCore):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
* loader/MainResourceLoader.h:
(MainResourceLoader):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
* loader/ResourceLoader.h:
(ResourceLoader):
(WebCore::ResourceLoader::defersLoading):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequest):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::willSendRequest):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::loadDone):
* loader/mac/DocumentLoaderMac.cpp:
(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

* http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
* platform/chromium-linux/fast/replaced/border-radius-clip-content-edge-expected.png:
* platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:

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

7 years ago[EFL][WK2] Duplicated WebPageGroup initialization
commit-queue@webkit.org [Wed, 12 Dec 2012 07:41:08 +0000 (07:41 +0000)]
[EFL][WK2] Duplicated WebPageGroup initialization
https://bugs.webkit.org/show_bug.cgi?id=103229

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.

As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
is created with default context.

* UIProcess/API/efl/ewk_view.cpp:
(createEwkView):

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

7 years agoUnreviewed, rolling out r137398.
haraken@chromium.org [Wed, 12 Dec 2012 07:36:07 +0000 (07:36 +0000)]
Unreviewed, rolling out r137398.
http://trac.webkit.org/changeset/137398
https://bugs.webkit.org/show_bug.cgi?id=104188

A bunch of webaudio tests hit ASSERTs

Source/WebCore:

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createOfflineContext):
(WebCore):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/DOMWindowWebAudio.idl:
* Modules/webaudio/OfflineAudioContext.cpp: Removed.
* Modules/webaudio/OfflineAudioContext.h: Removed.
* Modules/webaudio/OfflineAudioContext.idl: Removed.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/RuntimeEnabledFeatures.h:
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContextConstructor::constructJSAudioContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

* inspector-protocol/nmi-webaudio.html:
* inspector-protocol/resources/audio-context.html:
* webaudio/audiobuffersource-loop-comprehensive.html:
* webaudio/audiobuffersource-loop-points.html:
* webaudio/audiobuffersource-multi-channels.html:
* webaudio/audiobuffersource-playbackState.html:
* webaudio/audiobuffersource-playbackrate.html:
* webaudio/audiobuffersource-start.html:
* webaudio/audiobuffersource.html:
* webaudio/audiochannelmerger-stereo.html:
* webaudio/audiochannelsplitter.html:
* webaudio/audionode-connect-order.html:
* webaudio/audionode-expected.txt:
* webaudio/audioparam-connect-audioratesignal.html:
* webaudio/audioparam-summingjunction.html:
* webaudio/automatic-pull-node.html:
* webaudio/biquad-allpass.html:
* webaudio/biquad-bandpass.html:
* webaudio/biquad-highpass.html:
* webaudio/biquad-highshelf.html:
* webaudio/biquad-lowpass.html:
* webaudio/biquad-lowshelf.html:
* webaudio/biquad-notch.html:
* webaudio/biquad-peaking.html:
* webaudio/convolution-mono-mono.html:
* webaudio/delaynode-max-default-delay.html:
* webaudio/delaynode-max-nondefault-delay.html:
* webaudio/delaynode-maxdelay.html:
* webaudio/delaynode-maxdelaylimit.html:
* webaudio/delaynode-scheduling.html:
* webaudio/delaynode.html:
* webaudio/distance-exponential.html:
* webaudio/distance-inverse.html:
* webaudio/distance-linear.html:
* webaudio/gain.html:
* webaudio/javascriptaudionode-zero-input-channels.html:
* webaudio/javascriptaudionode.html:
* webaudio/mediaelementaudiosourcenode-gc.html:
* webaudio/mixing.html:
* webaudio/note-grain-on-play.html:
* webaudio/note-grain-on-timing.html:
* webaudio/oscillator-basic.html:
* webaudio/panner-equalpower-stereo.html:
* webaudio/panner-equalpower.html:
* webaudio/realtimeanalyser-fft-sizing.html:
* webaudio/resources/audio-codec-test.js:
(runDecodingTest):
* webaudio/resources/audioparam-testing.js:
(createAudioGraphAndTest):
* webaudio/resources/javascriptaudionode-testing.js:
(runJSNodeTest):
* webaudio/sample-accurate-scheduling.html:
* webaudio/stereo2mono-down-mixing.html:
* webaudio/up-mixing-mono-51.html:
* webaudio/up-mixing-mono-stereo.html:
* webaudio/up-mixing-stereo-51.html:
* webaudio/waveshaper.html:

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

7 years ago[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
shinyak@chromium.org [Wed, 12 Dec 2012 07:22:34 +0000 (07:22 +0000)]
[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
https://bugs.webkit.org/show_bug.cgi?id=104346

Reviewed by Hajime Morita.

Source/WebCore:

We need to register InsertionPoints even if ShadowRoot is out of Document, since distribution should work
out of Document, too.

Instead of checking isInDocument(), we have to make sure InsertionPoint and an element which InsertionPoint
inserted into have the same treescope.

Tests: fast/dom/shadow/has-content-elements.html
       fast/dom/shadow/has-shadow-insertion-point.html

* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):

LayoutTests:

Added tests for out-of-Document version and calling insertedInto/removedFrom several times.

* fast/dom/shadow/has-content-elements-expected.txt:
* fast/dom/shadow/has-content-elements.html:
* fast/dom/shadow/has-shadow-insertion-point-expected.txt:
* fast/dom/shadow/has-shadow-insertion-point.html:

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

7 years agoAdd API to set the maximum number of processes allowed in a WKContext
weinig@apple.com [Wed, 12 Dec 2012 07:01:03 +0000 (07:01 +0000)]
Add API to set the maximum number of processes allowed in a WKContext
https://bugs.webkit.org/show_bug.cgi?id=104769

Reviewed by Dan Bernstein.

Switch from using NSUserDefaults to a WKContext API to set the maximum number of processes
for a context.

* UIProcess/API/C/WKContext.cpp:
(WKContextSetMaximumNumberOfProcesses):
(WKContextGetMaximumNumberOfProcesses):
* UIProcess/API/C/WKContext.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::setMaximumNumberOfProcesses):
(WebKit):
* UIProcess/WebContext.h:
(WebContext):
(WebKit::WebContext::maximumNumberOfProcesses):
* UIProcess/mac/WebContextMac.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitialize):

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

7 years agoAdd Koji Ishii to the list of contributors.
rniwa@webkit.org [Wed, 12 Dec 2012 06:37:00 +0000 (06:37 +0000)]
Add Koji Ishii to the list of contributors.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agoText nodes in shadow roots don't inherit style properly
tasak@google.com [Wed, 12 Dec 2012 06:24:30 +0000 (06:24 +0000)]
Text nodes in shadow roots don't inherit style properly
https://bugs.webkit.org/show_bug.cgi?id=101116

Reviewed by Hajime Morita.

Source/WebCore:

Use NodeRenderingContext to resolve styles of text nodes.
If text nodes are direct children of shadow roots, the text nodes
should be inherited styles from their shadow hosts.
But if reset-style-inheritance flag is true, the text nodes should
not be inherited. And if text nodes are distributed nodes,
we have to check whether their insertion point's
reset-style-inheritance.
c.f. shadow dom spec is:
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#styles

Test: fast/dom/shadow/text-node-in-shadow.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForElement):
Modified to use defaultStyleForElement if the given element has
no parent style.
(WebCore::StyleResolver::initForStyleResolve):
Removed shouldResetStyleInheritance, because now NodeRenderingContext
resetStyleInheritance() takes care of reset-style-inheritance of
both shadow roots and insertion points.
(WebCore::StyleResolver::defaultStyleForElement):
Added to create a default style for elements.
(WebCore):
(WebCore::StyleResolver::styleForText):
Use NodeRenderingContext to find the parent node for style from the
given text node. If no parent node is found or reset-style-inheritance
is true, returns a default style (i.e. empty render style).
Otherwise, just returns the found node's style.
* css/StyleResolver.h:
(StyleResolver):
* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::ParentTraversalDetails::didTraverseInsertionPoint):
Modify to consider insertion point's resetStyleInheritance.
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
Since NodeRenderingContext has already found a parent node for
rendering and style and a parentRenderer is just the found node's
renderer, we have to only check reset-style-inheritance.
If reset, use default style. Otherwise, the parentRenderer's style.
* dom/Text.cpp:
(WebCore::Text::recalcTextStyle):
Use styleForText instead of parentRenderer's styles if the given text
node is a direct child of a shadow root or a direct child of a shadow
host.

LayoutTests:

* fast/dom/shadow/text-node-in-shadow-expected.html: Added.
* fast/dom/shadow/text-node-in-shadow.html: Added.

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

7 years agoHide HOST_RULE behind SHADOW_DOM flag.
tasak@google.com [Wed, 12 Dec 2012 06:20:38 +0000 (06:20 +0000)]
Hide HOST_RULE behind SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=102321

Reviewed by Dimitri Glazkov.

@host @-rules are only available when the rules are declared in styles
in shadow dom trees. So if SHADOW_DOM is disabled, we don't need
@host @-rules.

No new tests. Just hide HOST_RULE behind SHADOW_DOM flag.

* css/StyleResolver.h:
Hide "class ShadowRuleHost".
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):
* css/StyleRule.h:
(StyleRuleBase):
Hide "Host" type and isHostRule.
(StyleRuleHost):
Hide "class StyleRuleHost".
* css/StyleSheetContents.cpp:
(WebCore::childRulesHaveFailedOrCanceledSubresources):

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

7 years agoAX: accessibilityIsIgnored should avoid computing textUnderElement
dmazzoni@google.com [Wed, 12 Dec 2012 06:04:13 +0000 (06:04 +0000)]
AX: accessibilityIsIgnored should avoid computing textUnderElement
https://bugs.webkit.org/show_bug.cgi?id=104688

Reviewed by Chris Fleizach.

Simplify the logic in accessibilityIsIgnored without affecting
the results of any tests. In particular, avoid expensive calls to
textUnderElement.

Covered by existing tests.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

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

7 years ago[V8] Reachable event listeners on image elements can be collected in a minor DOM GC
haraken@chromium.org [Wed, 12 Dec 2012 05:58:45 +0000 (05:58 +0000)]
[V8] Reachable event listeners on image elements can be collected in a minor DOM GC
https://bugs.webkit.org/show_bug.cgi?id=104734

Reviewed by Kenneth Russell.

A major DOM GC treats image elements specially. In
V8GCController::opaqueRootForGC(), a major DOM GC puts image elements
that have pending activities into the same object group of their document.
This guarantees that image elements that have pending activities
are not garbage collected in the major DOM GC.

This patch adds the same special handling to a minor DOM GC to guarantee
the same thing in the minor DOM GC too.

In long-term, we might want to remove the special handling by making
image elements active DOM nodes.

Test: Manually confirmed that all characters in
http://alteredqualia.com/three/examples/webgl_animation_skinning_tf2.html
are rendered correctly.

* bindings/v8/V8GCController.cpp:
(WebCore::V8GCController::opaqueRootForGC):
(WebCore::gcTree):

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

7 years agoAX: Make isActionSupported cross-platform.
dmazzoni@google.com [Wed, 12 Dec 2012 05:52:08 +0000 (05:52 +0000)]
AX: Make isActionSupported cross-platform.
https://bugs.webkit.org/show_bug.cgi?id=104681

Reviewed by Chris Fleizach.

Source/WebCore:

Add UserGestureIndicator to increment() and decrement()
so that all accessibility actions are treated as
user actions, not scripted actions.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):

Source/WebKit/chromium:

Add support for press, increment, and decrement actions,
including tests to see whether they're supported on a given
object. This allows Chromium to pass three tests that were
previously skipped.

* public/WebAccessibilityObject.h:
(WebAccessibilityObject):
* src/WebAccessibilityObject.cpp:
(WebKit::WebAccessibilityObject::canDecrement):
(WebKit):
(WebKit::WebAccessibilityObject::canIncrement):
(WebKit::WebAccessibilityObject::canPress):
(WebKit::WebAccessibilityObject::increment):
(WebKit::WebAccessibilityObject::decrement):
(WebKit::WebAccessibilityObject::press):

Tools:

Replace isActionSupported, which takes a platform-specific
argument, with three cross-platform methods.

* DumpRenderTree/AccessibilityUIElement.cpp:
(isPressActionSupportedCallback):
(isIncrementActionSupportedCallback):
(isDecrementActionSupportedCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
(AccessibilityUIElement):
* DumpRenderTree/blackberry/AccessibilityUIElementBlackBerry.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::isPressActionSupportedCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::isIncrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::isDecrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::incrementCallback):
(WebTestRunner::AccessibilityUIElement::decrementCallback):
(WebTestRunner::AccessibilityUIElement::pressCallback):
* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
(AccessibilityUIElement):
* DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
(AccessibilityUIElement):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):

LayoutTests:

Refactor tests that called isActionSupported to call new
cross-platform variants, and unskip three test for Chromium
as a result.

* accessibility/aria-link-supports-press.html:
* accessibility/button-press-action.html:
* accessibility/onclick-handlers.html:
* platform/chromium/TestExpectations:
* platform/chromium/accessibility/aria-popup-expected.txt: Removed.
* platform/mac/accessibility/aria-popup-expected.txt:
* platform/mac/accessibility/aria-popup.html:
* platform/mac/accessibility/slider-supports-actions.html:

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

7 years agoRemove conversion to/from float and float division from ImageFrame::setRGBA
commit-queue@webkit.org [Wed, 12 Dec 2012 05:35:01 +0000 (05:35 +0000)]
Remove conversion to/from float and float division from ImageFrame::setRGBA
https://bugs.webkit.org/show_bug.cgi?id=103693

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Brent Fulgham.

Replace floating point operations used for alpha premultiply with fixed point arithmetic
which is basically integer operations. Allows to shave extra couple percent from decoding
images with transparency.

Covered by existing tests.

* platform/image-decoders/ImageDecoder.h:
(ImageFrame):
(WebCore::ImageFrame::fixPointUnsignedMultiply):
(WebCore::ImageFrame::setRGBA):

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

7 years agonrwt: remove result_summary.total_tests_by_expectation
dpranke@chromium.org [Wed, 12 Dec 2012 05:34:04 +0000 (05:34 +0000)]
nrwt: remove result_summary.total_tests_by_expectation
https://bugs.webkit.org/show_bug.cgi?id=104756

Reviewed by Eric Seidel.

This field wasn't being used by anything.

* Scripts/webkitpy/layout_tests/models/result_summary.py:
(ResultSummary.__init__):

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Wed, 12 Dec 2012 05:28:03 +0000 (05:28 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

7 years agoVibration API: IDL type doesn't match implementation type
kihong.kwon@samsung.com [Wed, 12 Dec 2012 05:25:11 +0000 (05:25 +0000)]
Vibration API: IDL type doesn't match implementation type
https://bugs.webkit.org/show_bug.cgi?id=103899

Reviewed by Kentaro Hara.

Source/WebCore:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

No new tests, it is covered by exist test.

* Modules/vibration/NavigatorVibration.cpp:
(WebCore::NavigatorVibration::vibrate):
* Modules/vibration/NavigatorVibration.h:
(NavigatorVibration):
* Modules/vibration/Vibration.cpp:
(WebCore::Vibration::vibrate):
* Modules/vibration/Vibration.h:
(Vibration):
* Modules/vibration/VibrationClient.h:
(VibrationClient):
* bindings/js/JSDOMBinding.h:
* bindings/scripts/CodeGeneratorJS.pm:
Remove workaround codes for the Vibration API which is mapped from unsigned long to unsigned long.
It should be mapped from unsigned long to unsigned by WebIDL spec.
(GetNativeVectorInnerType):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):

Source/WebKit/blackberry:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

* WebCoreSupport/VibrationClientBlackBerry.cpp:
(WebCore::VibrationClientBlackBerry::vibrate):
* WebCoreSupport/VibrationClientBlackBerry.h:
(VibrationClientBlackBerry):

Source/WebKit/efl:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

* WebCoreSupport/VibrationClientEfl.cpp:
(WebCore::VibrationClientEfl::vibrate):
* WebCoreSupport/VibrationClientEfl.h:
(VibrationClientEfl):

Source/WebKit2:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from uint64_t to uint_32_t.

* UIProcess/API/C/WKVibration.h:
* UIProcess/API/efl/EwkViewCallbacks.h:
* UIProcess/WebVibrationProvider.cpp:
(WebKit::WebVibrationProvider::vibrate):
* UIProcess/WebVibrationProvider.h:
(WebVibrationProvider):
* UIProcess/WebVibrationProxy.cpp:
(WebKit::WebVibrationProxy::vibrate):
* UIProcess/WebVibrationProxy.h:
(WebVibrationProxy):
* UIProcess/WebVibrationProxy.messages.in:
* UIProcess/efl/VibrationClientEfl.cpp:
(VibrationClientEfl::vibrateCallback):
* UIProcess/efl/VibrationClientEfl.h:
(VibrationClientEfl):
* WebProcess/WebCoreSupport/WebVibrationClient.cpp:
(WebKit::WebVibrationClient::vibrate):
* WebProcess/WebCoreSupport/WebVibrationClient.h:
(WebVibrationClient):

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

7 years agoScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view...
wangxianzhu@chromium.org [Wed, 12 Dec 2012 05:14:18 +0000 (05:14 +0000)]
ScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view fixed position elements
https://bugs.webkit.org/show_bug.cgi?id=102543

Source/WebCore:

Let RenderLayerCompositor manage the reasons that fixed position elements are not composited.
Check the reason in ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects(), don't let fixed position layer not composited with explicit reasons cause slow scrolling.

Reviewed by James Robinson.

Test: compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects): Exclude fixed position elements that are not composited for explicit reasons.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements): Manages m_fixedPositionLayerNotCompositedReasonMap.
(WebCore::RenderLayerCompositor::needsToBeComposited):
(WebCore::RenderLayerCompositor::requiresCompositingLayer):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
* rendering/RenderLayerCompositor.h:
(WebCore::RenderLayerCompositor::fixedPositionLayerNotCompositedReason): Now outputs fixedPositionLayerNotCompositedreason.
(RenderLayerCompositor):

LayoutTests:

Reviewed by James Robinson.

* compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Ensure slow-scrolling is not triggered.
* compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Added.

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

7 years ago[Shadow DOM] Kill ShadowRoot constructor
hayato@chromium.org [Wed, 12 Dec 2012 04:52:49 +0000 (04:52 +0000)]
[Shadow DOM] Kill ShadowRoot constructor
https://bugs.webkit.org/show_bug.cgi?id=102913

Reviewed by Dimitri Glazkov.

Source/WebCore:

Remove ShadowRoot constructor in favor of Element.webkitCreateShadowRoot().

No new tests. Update existing tests.

* dom/ShadowRoot.idl:
* page/DOMWindow.idl:
* testing/Internals.cpp:
(WebCore::Internals::createShadowRoot):
(WebCore):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

LayoutTests:

* editing/pasteboard/copy-paste-float.html:
* editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html:
* editing/shadow/bold-twice-in-shadow.html:
* editing/shadow/breaking-editing-boundaries-2.html:
* editing/shadow/breaking-editing-boundaries.html:
* editing/shadow/breaking-editing-boundary-with-table.html:
* editing/shadow/compare-positions-in-nested-shadow.html:
* editing/shadow/contenteditable-propagation-at-shadow-boundary.html:
* editing/shadow/delete-characters-in-distributed-node-crash.html:
* editing/shadow/delete-list-in-shadow.html:
* editing/shadow/doubleclick-on-meter-in-shadow-crash.html:
* editing/shadow/execcommand-indent-in-shadow.html:
* editing/shadow/insertorderedlist-crash.html:
* editing/shadow/pressing-enter-on-list.html:
* editing/shadow/rightclick-on-meter-in-shadow-crash.html:
* editing/shadow/select-contenteditable-shadowhost.html:
* editing/shadow/selection-of-orphan-shadowroot.html:
* editing/shadow/selection-of-shadowroot.html:
* editing/shadow/shadow-selection-not-exported.html:
* fast/css/style-scoped/style-scoped-apply-author-styles-expected.txt:
* fast/css/style-scoped/style-scoped-apply-author-styles.html:
* fast/css/style-scoped/style-scoped-change-scoped-in-shadow-expected.txt:
* fast/css/style-scoped/style-scoped-change-scoped-in-shadow.html:
* fast/css/style-scoped/style-scoped-in-shadow-expected.txt:
* fast/css/style-scoped/style-scoped-in-shadow.html:
* fast/dom/shadow/adopt-node-with-shadow-root.html:
* fast/dom/shadow/athost-atrules.html:
* fast/dom/shadow/base-in-shadow-tree.html:
* fast/dom/shadow/caret-range-from-point-in-nested-shadow.html:
* fast/dom/shadow/content-after-style.html:
* fast/dom/shadow/content-element-in-media-element.html:
* fast/dom/shadow/content-element-in-meter-element.html:
* fast/dom/shadow/content-element-in-progress-element.html:
* fast/dom/shadow/content-element-in-select-element.html:
* fast/dom/shadow/content-element-outside-shadow-style.html:
* fast/dom/shadow/content-reprojection-complex.html:
* fast/dom/shadow/content-reprojection-dynamic.html:
* fast/dom/shadow/content-reprojection-fallback-crash.html:
* fast/dom/shadow/content-reprojection-fallback-reprojection.html:
* fast/dom/shadow/content-reprojection-fallback.html:
* fast/dom/shadow/content-reprojection-order.html:
* fast/dom/shadow/content-reprojection-shadow.html:
* fast/dom/shadow/cppevent-in-shadow.html:
* fast/dom/shadow/cppevent-input-in-shadow.html:
* fast/dom/shadow/distribution-attribute-modified.html:
* fast/dom/shadow/distribution-className-modified.html:
* fast/dom/shadow/distribution-id-modified.html:
* fast/dom/shadow/drag-to-meter-in-shadow-crash.html:
* fast/dom/shadow/drop-event-for-input-in-shadow.html:
* fast/dom/shadow/drop-event-in-shadow.html:
* fast/dom/shadow/element-from-point-in-nested-shadow.html:
* fast/dom/shadow/form-in-shadow.html:
* fast/dom/shadow/get-element-by-id-in-shadow-mutation.html:
* fast/dom/shadow/has-content-elements.html:
* fast/dom/shadow/has-elementshadow.html:
* fast/dom/shadow/has-shadow-insertion-point.html:
* fast/dom/shadow/host-wrapper-reclaimed.html:
* fast/dom/shadow/iframe-shadow.html:
* fast/dom/shadow/input-with-validation-without-shadow.html:
* fast/dom/shadow/input-with-validation.html:
* fast/dom/shadow/insertion-point-list-menu-crash.html:
* fast/dom/shadow/insertion-point-resetStyleInheritance.html:
* fast/dom/shadow/insertion-point-shadow-crash.html:
* fast/dom/shadow/insertion-point-video-crash.html:
* fast/dom/shadow/invalidate-distribution.html:
* fast/dom/shadow/link-in-shadow-tree.html:
* fast/dom/shadow/multiple-shadowroot-adopt.html:
* fast/dom/shadow/multiple-shadowroot-rendering.html:
* fast/dom/shadow/multiple-shadowroot.html:
* fast/dom/shadow/parent-tree-scope-in-shadow.html:
* fast/dom/shadow/pseudo-attribute-dynamic.html:
* fast/dom/shadow/pseudo-attribute-rendering.html:
* fast/dom/shadow/pseudoclass-update-checked-input.html:
* fast/dom/shadow/pseudoclass-update-checked-option.html:
* fast/dom/shadow/pseudoclass-update-disabled-button.html:
* fast/dom/shadow/pseudoclass-update-disabled-fieldset.html:
* fast/dom/shadow/pseudoclass-update-disabled-input.html:
* fast/dom/shadow/pseudoclass-update-disabled-optgroup.html:
* fast/dom/shadow/pseudoclass-update-disabled-option.html:
* fast/dom/shadow/pseudoclass-update-disabled-select.html:
* fast/dom/shadow/pseudoclass-update-disabled-textarea.html:
* fast/dom/shadow/pseudoclass-update-enabled-anchor.html:
* fast/dom/shadow/pseudoclass-update-enabled-area.html:
* fast/dom/shadow/pseudoclass-update-enabled-button.html:
* fast/dom/shadow/pseudoclass-update-enabled-fieldset.html:
* fast/dom/shadow/pseudoclass-update-enabled-input.html:
* fast/dom/shadow/pseudoclass-update-enabled-optgroup.html:
* fast/dom/shadow/pseudoclass-update-enabled-option.html:
* fast/dom/shadow/pseudoclass-update-enabled-select.html:
* fast/dom/shadow/pseudoclass-update-enabled-textarea.html:
* fast/dom/shadow/pseudoclass-update-indeterminate-input.html:
* fast/dom/shadow/pseudoclass-update-indeterminate-progress.html:
* fast/dom/shadow/pseudoclass-update-link-anchor.html:
* fast/dom/shadow/pseudoclass-update-link-area.html:
* fast/dom/shadow/pseudoclass-update-target.html:
* fast/dom/shadow/pseudoclass-update-visited-anchor.html:
* fast/dom/shadow/pseudoclass-update-visited-area.html:
* fast/dom/shadow/remove-styles-in-shadow-crash.html:
* fast/dom/shadow/reprojection-attribute-modified.html:
* fast/dom/shadow/reprojection-className-modified.html:
* fast/dom/shadow/reprojection-id-modified.html:
* fast/dom/shadow/resize-in-shadow-dom.html:
* fast/dom/shadow/resources/polyfill.js:
(.Element.prototype.webkitCreateShadowRoot):
* fast/dom/shadow/resources/shadow-dom.js:
(createDOM):
* fast/dom/shadow/select-image-with-shadow.html:
* fast/dom/shadow/selection-shouldnt-expose-shadow-dom.html:
* fast/dom/shadow/selections-in-shadow.html:
* fast/dom/shadow/shadow-and-list-elements.html:
* fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt:
* fast/dom/shadow/shadow-aware-create-shadow-root.html:
* fast/dom/shadow/shadow-content-crash.html:
* fast/dom/shadow/shadow-disable-expected.txt:
* fast/dom/shadow/shadow-disable.html:
* fast/dom/shadow/shadow-div-reflow.html:
* fast/dom/shadow/shadow-dynamic-style-change-via-mutation-and-selector.html:
* fast/dom/shadow/shadow-element-rendering-multiple.html:
* fast/dom/shadow/shadow-element-rendering-single.html:
* fast/dom/shadow/shadow-nested-pseudo-id.html:
* fast/dom/shadow/shadow-on-image.html:
* fast/dom/shadow/shadow-pseudo-id.html:
* fast/dom/shadow/shadow-removechild-and-blur-event.html:
* fast/dom/shadow/shadow-reprojection-click.html:
* fast/dom/shadow/shadow-reprojection-dynamic.html:
* fast/dom/shadow/shadow-reprojection-fallback.html:
* fast/dom/shadow/shadow-reprojection.html:
* fast/dom/shadow/shadow-reprojection2.html:
* fast/dom/shadow/shadow-root-append.html:
* fast/dom/shadow/shadow-root-applyAuthorStyles.html:
* fast/dom/shadow/shadow-root-attached.html:
* fast/dom/shadow/shadow-root-innerHTML.html:
* fast/dom/shadow/shadow-root-js-api-expected.txt:
* fast/dom/shadow/shadow-root-js-api.html:
* fast/dom/shadow/shadow-root-new-expected.txt:
* fast/dom/shadow/shadow-root-new.html:
* fast/dom/shadow/shadow-root-resetStyleInheritance.html:
* fast/dom/shadow/shadow-select-attribute-featureset.html:
* fast/dom/shadow/shadow-ul-li.html:
* fast/dom/shadow/shadowdom-dynamic-styling.html:
* fast/dom/shadow/shadowdom-for-button-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-button-only-shadow.html:
* fast/dom/shadow/shadowdom-for-button-without-shadow.html:
* fast/dom/shadow/shadowdom-for-button.html:
* fast/dom/shadow/shadowdom-for-fieldset-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-fieldset-only-shadow.html:
* fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html:
* fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html:
* fast/dom/shadow/shadowdom-for-image-alt-update.html:
* fast/dom/shadow/shadowdom-for-image-alt.html:
* fast/dom/shadow/shadowdom-for-image-content.html:
* fast/dom/shadow/shadowdom-for-image-dynamic.html:
* fast/dom/shadow/shadowdom-for-image-event-click.html:
* fast/dom/shadow/shadowdom-for-image-event.html:
* fast/dom/shadow/shadowdom-for-image-in-shadowdom.html:
* fast/dom/shadow/shadowdom-for-image-map.html:
* fast/dom/shadow/shadowdom-for-image-style.html:
* fast/dom/shadow/shadowdom-for-image-with-multiple-shadow.html:
* fast/dom/shadow/shadowdom-for-image-with-pseudo-id.html:
* fast/dom/shadow/shadowdom-for-image-with-width-and-height.html:
* fast/dom/shadow/shadowdom-for-image.html:
* fast/dom/shadow/shadowdom-for-keygen-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-only-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-without-shadow.html:
* fast/dom/shadow/shadowdom-for-media.html:
* fast/dom/shadow/shadowdom-for-meter-dynamic.html:
* fast/dom/shadow/shadowdom-for-meter-multiple.html:
* fast/dom/shadow/shadowdom-for-meter-with-style.html:
* fast/dom/shadow/shadowdom-for-meter-without-appearance.html:
* fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html:
* fast/dom/shadow/shadowdom-for-meter.html:
* fast/dom/shadow/shadowdom-for-object-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-object-only-shadow.html:
* fast/dom/shadow/shadowdom-for-object-without-shadow.html:
* fast/dom/shadow/shadowdom-for-output-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-output-only-shadow.html:
* fast/dom/shadow/shadowdom-for-output-without-shadow.html:
* fast/dom/shadow/shadowdom-for-progress-dynamic.html:
* fast/dom/shadow/shadowdom-for-progress-multiple.html:
* fast/dom/shadow/shadowdom-for-progress-with-style.html:
* fast/dom/shadow/shadowdom-for-progress-without-appearance.html:
* fast/dom/shadow/shadowdom-for-progress-without-shadow-element.html:
* fast/dom/shadow/shadowdom-for-progress.html:
* fast/dom/shadow/shadowdom-for-select-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-select-only-shadow.html:
* fast/dom/shadow/shadowdom-for-select-without-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-only-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-with-attribute.html:
* fast/dom/shadow/shadowdom-for-textarea-with-placeholder.html:
* fast/dom/shadow/shadowdom-for-textarea-with-style.html:
* fast/dom/shadow/shadowdom-for-textarea-without-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea.html:
* fast/dom/shadow/shadowroot-clonenode.html:
* fast/dom/shadow/shadowroot-of-insertionpoint.html:
* fast/dom/shadow/shadowroot-type.html:
* fast/dom/shadow/style-of-distributed-node.html:
* fast/dom/shadow/style-scoped-not-enabled.html:
* fast/dom/shadow/styling-pseudo-attribute.html:
* fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html:
* fast/dom/shadow/transition-on-shadow-host-with-distributed-node.html:
* fast/dom/shadow/user-modify-inheritance.html:
* fast/dom/shadow/wheel-event-in-shadow-dom.html:
* fast/dom/shadow/wheel-event-on-input-in-shadow-dom.html:
* fast/frames/detached-shadow-frame.html:
* fast/js/global-constructors-expected.txt:
* inspector/elements/shadow-root.html:
* inspector/elements/update-shadowdom.html:
* platform/efl/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

7 years agogarden-o-matic doesn't know about reftests
dpranke@chromium.org [Wed, 12 Dec 2012 03:38:31 +0000 (03:38 +0000)]
garden-o-matic doesn't know about reftests
https://bugs.webkit.org/show_bug.cgi?id=101976

Reviewed by Ojan Vafai.

This is a first attempt at fixing this, sort of a "stop-the-bleeding"
fix. We will now look at the list of tests we're asked to rebaseline,
and log which ones are reftests into the status area, and rebaseline
the rest.

Longer-term, we should display feedback in the results area based on
which tests we're looking at. If the test list contains no reftests,
we should behave as today; if the list is all reftest, we should
probably disable the button, and if the list is a mix, we should
probably display an alert next to the button or something. It would
also be nice to annotate which tests were reftests, maybe with a
"(reftest)" next to the test name or something.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
(.):
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
(.):
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:

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

7 years agoAdd Element-specific traversal functions
antti@apple.com [Wed, 12 Dec 2012 03:12:23 +0000 (03:12 +0000)]
Add Element-specific traversal functions
https://bugs.webkit.org/show_bug.cgi?id=104685

Reviewed by Ryosuke Niwa.

In many cases where we use NodeTraversal we really only want Elements. By having
Element specific iteration functions we can tighten the code and make it faster too.

This patch adds ElementTraversal namespace, similar to NodeTraversal. It also switches
bunch of NodeTraversal call sites that obviously only care about elements to using
the new interface.

This should be a speedup too as we avoid number of branches by not having to look
for children of non-ContainerNodes and by allowing use of ContainerNode specific
accessors.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::addImageMapChildren):
* css/SelectorChecker.cpp:
(WebCore::linkAttribute):
(WebCore::SelectorChecker::allVisitedStateChanged):
(WebCore::SelectorChecker::visitedStateChanged):
* css/StyleInvalidationAnalysis.cpp:
(WebCore::elementMatchesSelectorScopes):
(WebCore::StyleInvalidationAnalysis::invalidateStyle):
* dom/ContainerNodeAlgorithms.h:
(WebCore::ChildFrameDisconnector::collectDescendant):
* dom/Document.cpp:
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::updateBaseURL):
(WebCore::Document::processBaseElement):
* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::get):
* dom/Element.cpp:
(WebCore::Element::firstElementChild):
* dom/Element.h:
(WebCore):
* dom/ElementShadow.cpp:
(WebCore::ElementShadow::collectSelectFeatureSetFrom):
* dom/NodeTraversal.h:
(ElementTraversal):
(WebCore):
(WebCore::ElementTraversal::traverseNextElementTemplate):
(WebCore::ElementTraversal::next):
(WebCore::ElementTraversal::firstWithin):
(WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
(WebCore::ElementTraversal::nextSkippingChildren):
(NodeTraversal):
* dom/TreeScope.cpp:
(WebCore::TreeScope::labelElementForId):
(WebCore::TreeScope::findAnchor):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
* editing/FrameSelection.cpp:
(WebCore::scanForForm):
* editing/markup.cpp:
(WebCore::completeURLs):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::legend):
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::formElementIndex):
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::control):
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::associatedControl):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::mapMouseEvent):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::virtualItemAfter):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::containsJavaApplet):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::recalcListItems):
* html/shadow/ContentDistributor.cpp:
(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
* page/FocusController.cpp:
(WebCore::FocusController::findFocusCandidateInContainer):
* rendering/RenderCounter.cpp:
(WebCore::nextInPreOrder):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::title):
* svg/SVGUseElement.cpp:
(WebCore::removeDisallowedElementsFromSubtree):
* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::updateDocumentOrderIndexes):

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

7 years ago[Chromium] Rebaseline for recent forms changes.
tkent@chromium.org [Wed, 12 Dec 2012 02:51:35 +0000 (02:51 +0000)]
[Chromium] Rebaseline for recent forms changes.
https://bugs.webkit.org/show_bug.cgi?id=103834
https://bugs.webkit.org/show_bug.cgi?id=104438
https://bugs.webkit.org/show_bug.cgi?id=104567

* platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
* platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-win-xp/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt: Removed.
* platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-win/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
* platform/chromium/TestExpectations:

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

7 years agoREGRESSION(r133380): new tests without expected file reported as failing tests on...
dpranke@chromium.org [Wed, 12 Dec 2012 02:22:28 +0000 (02:22 +0000)]
REGRESSION(r133380): new tests without expected file reported as failing tests on the bots
https://bugs.webkit.org/show_bug.cgi?id=101469

Reviewed by Ryosuke Niwa.

Fix parsing of NRWT's output to identify missing results separately
from other regressions.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests._parseNewRunWebKitTestsOutput):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(MasterCfgTest.test_nrwt_leaks_parsing):
(test_nrwt_missing_results):

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

7 years agobuildbot: change run-webkit-tests --no-launch-safari to --no-show-results
dpranke@chromium.org [Wed, 12 Dec 2012 02:21:46 +0000 (02:21 +0000)]
buildbot: change run-webkit-tests --no-launch-safari to --no-show-results
https://bugs.webkit.org/show_bug.cgi?id=104299

Reviewed by Ryosuke Niwa.

Since --no-show-results is the more generically-named flag that NRWT uses.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests):

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

7 years agoremove --use-remote-links-to-tests from buildbot configs (except apple win)
dpranke@chromium.org [Wed, 12 Dec 2012 02:20:51 +0000 (02:20 +0000)]
remove --use-remote-links-to-tests from buildbot configs (except apple win)
https://bugs.webkit.org/show_bug.cgi?id=104291

Reviewed by Csaba Osztrogon√°c.

This flag is ignored by NRWT and was just implemented for compatibility.
ORWT still uses it, though.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests):
(RunWebKitTests.start):

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

7 years agoUnreviewed. Fix build with DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).
fpizlo@apple.com [Wed, 12 Dec 2012 02:19:25 +0000 (02:19 +0000)]
Unreviewed. Fix build with DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::tallyFrequentExitSites):

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

7 years ago[soup] Unused parameter in ResourceHandleSoup.cpp
commit-queue@webkit.org [Wed, 12 Dec 2012 02:05:29 +0000 (02:05 +0000)]
[soup] Unused parameter in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=104728

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-11
Reviewed by Kentaro Hara.

The soupLogPrinter has unused parameter 'logger',
remove the parameter name to fix 'unused parameter' build warning.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::soupLogPrinter):

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

7 years agoFixed position out-of-view check is incorrect when page is scaled
wangxianzhu@chromium.org [Wed, 12 Dec 2012 01:53:34 +0000 (01:53 +0000)]
Fixed position out-of-view check is incorrect when page is scaled
https://bugs.webkit.org/show_bug.cgi?id=104303

Source/WebCore:

Reviewed by Kenneth Rohde Christiansen.

Test: compositing/layer-creation/fixed-position-out-of-view-scaled.html
      compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition): Scale the content rect of the fixed position layer before checking out-of-view.

LayoutTests:

Test if fixed position elements are correctly composited or not composited when page is scaled up and down.

Reviewed by Kenneth Rohde Christiansen.

* compositing/layer-creation/fixed-position-out-of-view-scaled.html: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.

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

7 years agoImplement OfflineAudioContext constructor
crogers@google.com [Wed, 12 Dec 2012 01:42:43 +0000 (01:42 +0000)]
Implement OfflineAudioContext constructor
https://bugs.webkit.org/show_bug.cgi?id=104188

Reviewed by Kentaro Hara.

Source/WebCore:

The Web Audio layout tests have relied on an undocumented way (in the specification) to render
audio faster than realtime using an OfflineAudioContext.  We want to expose a proper OfflineAudioContext
object and constructor instead of piggybacking off of the normal AudioContext.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::isSampleRateRangeGood):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/DOMWindowWebAudio.idl:
* Modules/webaudio/OfflineAudioContext.cpp: Added.
(WebCore):
(WebCore::OfflineAudioContext::create):
(WebCore::OfflineAudioContext::OfflineAudioContext):
(WebCore::OfflineAudioContext::~OfflineAudioContext):
* Modules/webaudio/OfflineAudioContext.h: Added.
(WebCore):
(OfflineAudioContext):
* Modules/webaudio/OfflineAudioContext.idl: Added.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContextConstructor::constructJSAudioContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

Switch Web Audio layout tests to use OfflineAudioContext constructor.

* inspector-protocol/nmi-webaudio.html:
* inspector-protocol/resources/audio-context.html:
* webaudio/audiobuffersource-loop-comprehensive.html:
* webaudio/audiobuffersource-loop-points.html:
* webaudio/audiobuffersource-multi-channels.html:
* webaudio/audiobuffersource-playbackState.html:
* webaudio/audiobuffersource-playbackrate.html:
* webaudio/audiobuffersource-start.html:
* webaudio/audiobuffersource.html:
* webaudio/audiochannelmerger-stereo.html:
* webaudio/audiochannelsplitter.html:
* webaudio/audionode-connect-order.html:
* webaudio/audionode-expected.txt:
* webaudio/audioparam-connect-audioratesignal.html:
* webaudio/audioparam-summingjunction.html:
* webaudio/automatic-pull-node.html:
* webaudio/biquad-allpass.html:
* webaudio/biquad-bandpass.html:
* webaudio/biquad-highpass.html:
* webaudio/biquad-highshelf.html:
* webaudio/biquad-lowpass.html:
* webaudio/biquad-lowshelf.html:
* webaudio/biquad-notch.html:
* webaudio/biquad-peaking.html:
* webaudio/convolution-mono-mono.html:
* webaudio/delaynode-max-default-delay.html:
* webaudio/delaynode-max-nondefault-delay.html:
* webaudio/delaynode-maxdelay.html:
* webaudio/delaynode-maxdelaylimit.html:
* webaudio/delaynode-scheduling.html:
* webaudio/delaynode.html:
* webaudio/distance-exponential.html:
* webaudio/distance-inverse.html:
* webaudio/distance-linear.html:
* webaudio/gain.html:
* webaudio/javascriptaudionode-zero-input-channels.html:
* webaudio/javascriptaudionode.html:
* webaudio/mediaelementaudiosourcenode-gc.html:
* webaudio/mixing.html:
* webaudio/note-grain-on-play.html:
* webaudio/note-grain-on-timing.html:
* webaudio/oscillator-basic.html:
* webaudio/panner-equalpower-stereo.html:
* webaudio/panner-equalpower.html:
* webaudio/realtimeanalyser-fft-sizing.html:
* webaudio/resources/audio-codec-test.js:
(runDecodingTest):
* webaudio/resources/audioparam-testing.js:
(createAudioGraphAndTest):
* webaudio/resources/javascriptaudionode-testing.js:
(runJSNodeTest):
* webaudio/sample-accurate-scheduling.html:
* webaudio/stereo2mono-down-mixing.html:
* webaudio/up-mixing-mono-51.html:
* webaudio/up-mixing-mono-stereo.html:
* webaudio/up-mixing-stereo-51.html:
* webaudio/waveshaper.html:

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

7 years agoWebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D...
commit-queue@webkit.org [Wed, 12 Dec 2012 01:35:42 +0000 (01:35 +0000)]
WebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D for HTMLVideoElement
https://bugs.webkit.org/show_bug.cgi?id=102161

Patch by Jun Jiang <jun.a.jiang@intel.com> on 2012-12-11
Reviewed by Kenneth Russell.

There are several memory copy or conversions in the texImage2D and texSubImage2D for HTMLVideoElement which may be avoided. This patch removes the redundant BackingStore copy if the corresponding Graphics port supports the DontCopyBackingStore behavior. Moreover, it optimizes the AlphaOp if the Image source is from HTMLVideoElement to avoid unnecessary Unmultiply or Premultiply operation in unpack/pack.

Already covered by current tests.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::texImage2DImpl):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::videoFrameToImage): add a parameter to choose BackingStore copy behavior.
(WebCore::WebGLRenderingContext::texSubImage2DImpl):
(WebCore::WebGLRenderingContext::texSubImage2D):
* html/canvas/WebGLRenderingContext.h:
(WebGLRenderingContext):
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::ImageExtractor):
* platform/graphics/GraphicsContext3D.h:
(ImageExtractor):
(WebCore::GraphicsContext3D::ImageExtractor::imageSourceUnpackAlignment):
(WebCore::GraphicsContext3D::ImageExtractor::imageHtmlDomSource):
* platform/graphics/ImageBuffer.h:
(ImageBuffer):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/skia/GraphicsContext3DSkia.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/wince/ImageBufferWinCE.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/wx/ImageBufferWx.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

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

7 years ago[BlackBerry] Redraw spell check dialog after rotation.
nghanavatian@rim.com [Wed, 12 Dec 2012 01:30:47 +0000 (01:30 +0000)]
[BlackBerry] Redraw spell check dialog after rotation.
https://bugs.webkit.org/show_bug.cgi?id=104737

Reviewed by Rob Buis.

After rotating the device, all dialogs are dismissed. We should
restore the spell check dialog as it is still valid after
rotation and the user will expect it there.

Internally reviewed by Mike Fenton and Gen Mak.

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

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

7 years ago[EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
commit-queue@webkit.org [Wed, 12 Dec 2012 01:23:47 +0000 (01:23 +0000)]
[EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
https://bugs.webkit.org/show_bug.cgi?id=104726

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Add common implementation of GraphicsContext3DPrivate::platformLayerSize() similar
to Qt version. There is nothing platform specific in Qt version.

Covered by existing tests.

* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::platformLayerSize):
* platform/graphics/efl/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):

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

7 years ago[Texmap] Slightly improve readability of the antialias shader
commit-queue@webkit.org [Wed, 12 Dec 2012 01:18:12 +0000 (01:18 +0000)]
[Texmap] Slightly improve readability of the antialias shader
https://bugs.webkit.org/show_bug.cgi?id=104708

Patch by No'am Rosenthal <noam@webkit.org> on 2012-12-11
Reviewed by Martin Robinson.

Modify the antialiasing shader to include separate function that perform
discrete operations, rather than one big function that repeats the same
operations.

No new tests, readability fix.

* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::getShaderSpec):

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

7 years ago-webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
timothy_horton@apple.com [Wed, 12 Dec 2012 01:15:00 +0000 (01:15 +0000)]
-webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
https://bugs.webkit.org/show_bug.cgi?id=104722
<rdar://problem/12821080>

Reviewed by Simon Fraser.

Changes to -webkit-svg-shadow currently cause a relayout of the directly affected renderer
and its parents, but not its children. However, children have the shadow radius
baked into their cached boundaries, so these need to be invalidated.

Test: svg/repaint/repaint-webkit-svg-shadow-container.html

* rendering/RenderObject.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGContainer.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGImage.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGRoot.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGShape.h: Expose needsBoundariesUpdate().
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::layoutChildren): If the renderer has a shadow and
is in need of a boundaries update, mark children as needing boundaries updates too.

Add a text repaint test that ensures that a child (a path, in this case)
recomputes its bounds after its parent's shadow is expanded.

* svg/repaint/repaint-webkit-svg-shadow-container-expected.txt: Added.
* svg/repaint/repaint-webkit-svg-shadow-container.html: Added.

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

7 years ago[BlackBerry] Shift the spell check dialog to align with text after transformation
nghanavatian@rim.com [Wed, 12 Dec 2012 01:08:32 +0000 (01:08 +0000)]
[BlackBerry] Shift the spell check dialog to align with text after transformation
https://bugs.webkit.org/show_bug.cgi?id=104716

Reviewed by Rob Buis.

PR245033
As the page is transformed, we should redraw the dialog box to align
with the new text position. We send a message to move the dialog
box from different spots to account for scrolling. This includes
keyboard transitions from hidden to displayed and centering of
focus around a new touch point. We do not reposition on manual user
scrolling of the page, as this simply dismisses the dialog.

Internally reviewed by Mike Fenton and Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
* Api/WebPageClient.h:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::scroll):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
(BlackBerry::WebKit::InputHandler::redrawSpellCheckDialogIfRequired):
(WebKit):
* WebKitSupport/InputHandler.h:
(InputHandler):
(BlackBerry::WebKit::InputHandler::clearDidSpellCheckState):
(BlackBerry::WebKit::InputHandler::didSpellCheckWord):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

7 years agoASSERT running platform/mac/plugins/convert-point.html on the WK2 bots
andersca@apple.com [Wed, 12 Dec 2012 01:07:00 +0000 (01:07 +0000)]
ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots
https://bugs.webkit.org/show_bug.cgi?id=104735

Reviewed by Jon Honeycutt.

Tools:

Do the testing from within NPP_New instead of NPN_SetWindow. Plug-ins aren't supposed to do any real work inside NPP_SetWindow,
and doing so will more easily trigger the assertion failure. Ideally we should get rid of the initial sync painting pass, but this
gets the test passing again!

* DumpRenderTree/TestNetscapePlugIn/Tests/mac/ConvertPoint.cpp:
(ConvertPoint::NPP_New):

LayoutTests:

Unskip test.

* platform/mac-wk2/TestExpectations:

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

7 years agoAdd instructions on how to build WebKit on Xcode 4 to build.html
rniwa@webkit.org [Wed, 12 Dec 2012 01:03:26 +0000 (01:03 +0000)]
Add instructions on how to build WebKit on Xcode 4 to build.html
https://bugs.webkit.org/show_bug.cgi?id=104739

Reviewed by Daniel Bates.

Set the build directories to WebKitBuild.

* building/build.html:

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

7 years ago<rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
ap@apple.com [Wed, 12 Dec 2012 01:00:22 +0000 (01:00 +0000)]
<rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
https://bugs.webkit.org/show_bug.cgi?id=104732

Reviewed by Anders Carlsson.

* Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::waitForResponse):
Fixed to make sense.

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

7 years agoAdd window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
wangxianzhu@chromium.org [Wed, 12 Dec 2012 00:56:44 +0000 (00:56 +0000)]
Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
https://bugs.webkit.org/show_bug.cgi?id=104714

Reviewed by Eric Seidel.

.:

Export symbol Page::mainThreadScrollingReasonsAsText().

* Source/autotools/symbols.filter:

Source/WebCore:

No new tests. Adds test api for bug 102543 and other bugs.

* WebCore.exp.in:
* page/Page.cpp:
(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText): Extracted from ScrollingStateScrollingNode::dumpProperties for layout tests.
(WebCore):
* page/Page.h:
(Page):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText):
(WebCore):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::dumpProperties): Moved code for mainThreadScrollingReasons to ScrollingCoordinator.cpp.
* testing/Internals.cpp:
(WebCore::Internals::mainThreadScrollingReasons):
(WebCore):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit2:

Export symbol Page::mainThreadScrollingReasonsAsText().

* win/WebKit2.def.in:

LayoutTests:

* platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Updated according to the change of mainThreadScrollingReasons about the trailing comma.

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

7 years agoEnhance the TileCache to cache more tiles
simon.fraser@apple.com [Wed, 12 Dec 2012 00:47:24 +0000 (00:47 +0000)]
Enhance the TileCache to cache more tiles
https://bugs.webkit.org/show_bug.cgi?id=104612

Reviewed by Tim Horton.

Add smarts to the TileCache so that it keeps some tiles around
for longer and can prepopulate tiles in to-be-scrolled-to regions.

The new tile management is as follows:
* As before, we expand the visible rect to create a "tile coverage rect"
which is twice the width, and three times the height of the visible rect.
* At the edges, this coverage rect is constrained by them, rather than being
truncated as before (leading to larger initial tile coverage).
* When tiles leave the coverage rect, we keep them around but track
them in cohorts (where a cohort is a set of tiles that left the coverage rect
at the same time).
* If a repaint comes in for a "secondary" tile, we don't paint it, but mark
the tile as being stale. It will get repainted (in full) if it moves back inside
the coverage rect.
* Cohorts are kept around for 2 seconds after they were created. A repeating
1-second timer clears tiles in old cohorts.
* Secondary tiles are pruned if the visible rect changes, or if zooming happens.
* TiledBacking exposes a way to prepopulate a rect with tiles; this is called
when scrolling (e.g. via Home/End keys). Tiles created this way (if outside
the coverage rect) go into a cohort.

* page/FrameView.cpp:
(WebCore::FrameView::requestScrollPositionUpdate): Tell the TiledBacking
to prepopulate some tiles.
* platform/graphics/TiledBacking.h:
(TiledBacking): Add prepopulateRect().
* platform/graphics/ca/mac/TileCache.h:
(TileInfo): The TileMap contains TileInfos, which contain a pointer
to the layer, their cohort, and a 'stale content' flag.
(WebCore::TileCache::TileInfo::TileInfo):
(TileCache):
(TileCohortInfo):
(WebCore::TileCache::TileCohortInfo::TileCohortInfo):
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):
(WebCore::TileCache::~TileCache):
(WebCore::TileCache::setNeedsDisplay):
(WebCore::TileCache::setNeedsDisplayInRect):
(WebCore::TileCache::setTileNeedsDisplayInRect):
(WebCore::TileCache::setScale):
(WebCore::TileCache::setAcceleratesDrawing):
(WebCore::TileCache::setTilesOpaque):
(WebCore::TileCache::prepopulateRect):
(WebCore::TileCache::setTileDebugBorderWidth):
(WebCore::TileCache::setTileDebugBorderColor):
(WebCore::TileCache::computeTileCoverageRect):
(WebCore::TileCache::tileSizeForCoverageRect):
(WebCore::TileCache::tileRevalidationTimerFired):
(WebCore::TileCache::blankPixelCount):
(WebCore::queueTileForRemoval):
(WebCore::TileCache::removeAllTiles):
(WebCore::TileCache::removeAllSecondaryTiles):
(WebCore::TileCache::removeTilesInCohort):
(WebCore::TileCache::revalidateTiles):
(WebCore::TileCache::nextTileCohort):
(WebCore::TileCache::startedNewCohort):
(WebCore::TileCache::newestTileCohort):
(WebCore::TileCache::oldestTileCohort):
(WebCore::TileCache::scheduleCohortRemoval):
(WebCore::TileCache::cohortRemovalTimerFired):
(WebCore::TileCache::ensureTilesForRect):
(WebCore::TileCache::tileGridExtent):
(WebCore::TileCache::tileCoverageRect):
(WebCore::TileCache::tileLayerAtIndex):
(WebCore::TileCache::drawTileMapContents):

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

7 years agoRemove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
simon.fraser@apple.com [Wed, 12 Dec 2012 00:47:19 +0000 (00:47 +0000)]
Remove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
https://bugs.webkit.org/show_bug.cgi?id=104736

Reviewed by Dean Jackson.

RenderSVGShape::fillAndStrokeShape() allocated a AffineTransform on
the stack which was shadowed by another one in narrower scope. It
can be removed.

* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::fillAndStrokeShape):

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=104735
bdakin@apple.com [Wed, 12 Dec 2012 00:40:05 +0000 (00:40 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=104735
ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots

Skipping this test for now until we fix the plug-ing bug.
* platform/mac-wk2/TestExpectations:

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

7 years ago[EFL] Remove unused headers
commit-queue@webkit.org [Wed, 12 Dec 2012 00:39:29 +0000 (00:39 +0000)]
[EFL] Remove unused headers
https://bugs.webkit.org/show_bug.cgi?id=104661

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2012-12-11
Reviewed by Ryosuke Niwa.

Header inclusion cleanup.
Remove "NotImplemented.h".

Source/WebCore:

No new tests, no behavior change.

* platform/efl/CursorEfl.cpp:
* platform/efl/FileSystemEfl.cpp:
* platform/efl/ScrollViewEfl.cpp:
* platform/efl/ScrollbarThemeEfl.cpp:
* platform/efl/SoundEfl.cpp:

Source/WebKit/efl:

* WebCoreSupport/PopupMenuEfl.cpp:
* ewk/ewk_intent.cpp:

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

7 years agoDashboard unit tests should not make xhrs.
jparent@chromium.org [Wed, 12 Dec 2012 00:36:00 +0000 (00:36 +0000)]
Dashboard unit tests should not make xhrs.
https://bugs.webkit.org/show_bug.cgi?id=104598

Reviewed by Dirk Pranke.

The unit test were requesting 25 files that they did not use.
Stub out loader.request to avoid making the xhrs.
Result: order of magnitude speed improvement in test run time (from ~1600ms to 160ms on my machine).

* TestResultServer/static-dashboards/run-embedded-unittests.html:
* TestResultServer/static-dashboards/run-unittests.html:

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

7 years agoUnreviewed. Tweak expectations to be image-only.
adamk@chromium.org [Wed, 12 Dec 2012 00:32:36 +0000 (00:32 +0000)]
Unreviewed. Tweak expectations to be image-only.

* platform/chromium/TestExpectations:

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

7 years agoIndexedDB: Stub out data operations on IDBDatabaseBackendInterface
alecflett@chromium.org [Wed, 12 Dec 2012 00:29:01 +0000 (00:29 +0000)]
IndexedDB: Stub out data operations on IDBDatabaseBackendInterface
https://bugs.webkit.org/show_bug.cgi?id=104592

Reviewed by Dimitri Glazkov.

Source/WebCore:

In preparation for removing objectStore/index backend
interfaces, stub out the basic data operations around
get, put, cursors, etc. on IDBDatabaseBackendInterface.

No new tests, this is just preparation for refactoring.

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::get):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::put):
(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::IDBDatabaseBackendImpl::openCursor):
(WebCore::IDBDatabaseBackendImpl::count):
(WebCore::IDBDatabaseBackendImpl::deleteRange):
(WebCore::IDBDatabaseBackendImpl::clear):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseBackendInterface.h:
(WebCore):
(IDBDatabaseBackendInterface):

Source/WebKit/chromium:

Stub out chromium side of data operations for refactor.

* public/WebIDBDatabase.h:
(WebKit):
(WebKit::WebIDBDatabase::get):
(WebKit::WebIDBDatabase::put):
(WebKit::WebIDBDatabase::setIndexKeys):
(WebKit::WebIDBDatabase::setIndexesReady):
(WebKit::WebIDBDatabase::openCursor):
(WebKit::WebIDBDatabase::count):
(WebKit::WebIDBDatabase::deleteRange):
(WebKit::WebIDBDatabase::clear):
(WebIDBDatabase):
* src/IDBDatabaseBackendProxy.cpp:
(WebKit::IDBDatabaseBackendProxy::openCursor):
(WebKit):
(WebKit::IDBDatabaseBackendProxy::count):
(WebKit::IDBDatabaseBackendProxy::get):
(WebKit::IDBDatabaseBackendProxy::put):
(WebKit::IDBDatabaseBackendProxy::setIndexKeys):
(WebKit::IDBDatabaseBackendProxy::setIndexesReady):
(WebKit::IDBDatabaseBackendProxy::deleteRange):
(WebKit::IDBDatabaseBackendProxy::clear):
* src/IDBDatabaseBackendProxy.h:
(IDBDatabaseBackendProxy):
* src/WebIDBDatabaseImpl.cpp:
(WebKit):
(WebKit::WebIDBDatabaseImpl::openCursor):
(WebKit::WebIDBDatabaseImpl::count):
(WebKit::WebIDBDatabaseImpl::get):
(WebKit::WebIDBDatabaseImpl::put):
(WebKit::WebIDBDatabaseImpl::setIndexKeys):
(WebKit::WebIDBDatabaseImpl::setIndexesReady):
(WebKit::WebIDBDatabaseImpl::deleteRange):
(WebKit::WebIDBDatabaseImpl::clear):
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl):
* tests/IDBDatabaseBackendTest.cpp:

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

7 years agoRebaselines after r137359
adamk@chromium.org [Wed, 12 Dec 2012 00:28:07 +0000 (00:28 +0000)]
Rebaselines after r137359

Unreviewed chromium gardening.

* platform/chromium-mac-snowleopard/fast/ruby/position-after-expected.png: Added.
* platform/chromium-mac/fast/ruby/position-after-expected.png: Added.
* platform/chromium-win/fast/ruby/position-after-expected.png: Added.

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

7 years agoProfiler should show bytecode dumps as they would have been visible to the JITs,...
fpizlo@apple.com [Wed, 12 Dec 2012 00:21:43 +0000 (00:21 +0000)]
Profiler should show bytecode dumps as they would have been visible to the JITs, including the profiling data that the JITs would see
https://bugs.webkit.org/show_bug.cgi?id=104647

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Adds more profiling data to bytecode dumps, and adds the ability to do a secondary
bytecode dump for each JIT compilation of a code block. This is relevant because both
the bytecodes, and the profiling data, may change after some number of executions.

Also fixes some random dumping code to use PrintStream& rather than
static const char[thingy].

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/ArrayProfile.cpp:
(JSC::dumpArrayModes):
(JSC::ArrayProfile::briefDescription):
* bytecode/ArrayProfile.h:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpBytecode):
* bytecode/CodeBlock.h:
* bytecode/ValueProfile.h:
(JSC::ValueProfileBase::briefDescription):
* dfg/DFGAbstractValue.h:
(JSC::DFG::AbstractValue::dump):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseCodeBlock):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* profiler/ProfilerBytecodeSequence.cpp: Added.
(JSC::Profiler::BytecodeSequence::BytecodeSequence):
(JSC::Profiler::BytecodeSequence::~BytecodeSequence):
(JSC::Profiler::BytecodeSequence::indexForBytecodeIndex):
(JSC::Profiler::BytecodeSequence::forBytecodeIndex):
(JSC::Profiler::BytecodeSequence::addSequenceProperties):
* profiler/ProfilerBytecodeSequence.h: Added.
(JSC::Profiler::BytecodeSequence::size):
(JSC::Profiler::BytecodeSequence::at):
* profiler/ProfilerBytecodes.cpp:
(JSC::Profiler::Bytecodes::Bytecodes):
(JSC::Profiler::Bytecodes::toJS):
* profiler/ProfilerBytecodes.h:
(JSC::Profiler::Bytecodes::instructionCount):
* profiler/ProfilerCompilation.cpp:
(JSC::Profiler::Compilation::addProfiledBytecodes):
(JSC::Profiler::Compilation::toJS):
* profiler/ProfilerCompilation.h:
(JSC::Profiler::Compilation::profiledBytecodesSize):
(JSC::Profiler::Compilation::profiledBytecodesAt):
* profiler/ProfilerDatabase.cpp:
(JSC::Profiler::Database::ensureBytecodesFor):
* profiler/ProfilerDatabase.h:
* profiler/ProfilerProfiledBytecodes.cpp: Added.
(JSC::Profiler::ProfiledBytecodes::ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::~ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::toJS):
* profiler/ProfilerProfiledBytecodes.h: Added.
(JSC::Profiler::ProfiledBytecodes::bytecodes):
* runtime/CommonIdentifiers.h:

Tools:

Added a "profiling" (or "p") command to show the profiling data that the JITs saw
for each JIT compilation of a code block.

Also added instruction counts in the "full" display and made the "full" display the
default thing you see.

* Scripts/display-profiler-output:

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

7 years agoMake Video Track compile on Windows in debug mode.
roger_fong@apple.com [Wed, 12 Dec 2012 00:18:20 +0000 (00:18 +0000)]
Make Video Track compile on Windows in debug mode.
https://bugs.webkit.org/show_bug.cgi?id=104720.

Reviewed by Alexey Proskuryakov.

urlForLogging method was defined in both HTMLMediaElement.cpp and HTMLTrackElement.cpp.
On Windows all the HTMLElements sources are included in an AllInOne source file,
so the definitions conflicted. Fixed by renaming the definition in each source file.

* html/HTMLMediaElement.cpp:
(WebCore::urlForLoggingMedia):
(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::isSafeToLoadURL):
(WebCore::HTMLMediaElement::didRemoveTrack):
(WebCore::HTMLMediaElement::selectNextSourceChild):
(WebCore::HTMLMediaElement::sourceWasAdded):
(WebCore::HTMLMediaElement::sourceWasRemoved):
* html/HTMLTrackElement.cpp:
(WebCore::urlForLoggingTrack):
(WebCore::HTMLTrackElement::canLoadUrl):

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

7 years ago2012-12-11 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Wed, 12 Dec 2012 00:18:08 +0000 (00:18 +0000)]
2012-12-11  Nate Chapin  <japhet@chromium.org>

        Revert changes to resource-parameters.html introduced in r137333.

        These changes were based on incorrect assumptions on how main resources
        in the cache should handle urls with fragment identifiers.

        * http/tests/inspector/resource-parameters.html:

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

7 years agoMore flakiness.
adamk@chromium.org [Wed, 12 Dec 2012 00:11:58 +0000 (00:11 +0000)]
More flakiness.

Unreviewed chromium gardening.

Hopefully all these flaky markings will help make the CQ more reliable.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed, rolling out r137371.
eric@webkit.org [Tue, 11 Dec 2012 23:45:29 +0000 (23:45 +0000)]
Unreviewed, rolling out r137371.
http://trac.webkit.org/changeset/137371
https://bugs.webkit.org/show_bug.cgi?id=104434

Various scripts are not ready for out/ as the build directory,
this can't work as written.

* Scripts/update-webkit:
* Scripts/webkitdirs.pm:
(buildChromium):

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

7 years agoMore inspector flakiness
adamk@chromium.org [Tue, 11 Dec 2012 23:42:11 +0000 (23:42 +0000)]
More inspector flakiness

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed GTK build functionality fix.
zandobersek@gmail.com [Tue, 11 Dec 2012 23:42:09 +0000 (23:42 +0000)]
Unreviewed GTK build functionality fix.

Turns out the CSP feature was not enabled, that's why all the tests were failing.

* Scripts/webkitperl/FeatureList.pm:

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

7 years agoMark fast/ruby/position-after.html as failing on cr-linux
adamk@chromium.org [Tue, 11 Dec 2012 23:34:25 +0000 (23:34 +0000)]
Mark fast/ruby/position-after.html as failing on cr-linux

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoMake Ninja the default build system for build-webkit --chromium
eric@webkit.org [Tue, 11 Dec 2012 23:33:55 +0000 (23:33 +0000)]
Make Ninja the default build system for build-webkit --chromium
https://bugs.webkit.org/show_bug.cgi?id=104434

Reviewed by Daniel Bates.

As far as I can tell, most Chromium developers are now using Ninja
as their default build system instead of the native Xcode/Visual Studio/Make.
This change makes Ninja the default for developers as well as all Chromium webkit bots.

Developers can pass --no-ninja to get the platform-native buildsystem instead of Ninja.
It's possible we may wish to make this a per-platform default, and have
Ninja only be the default for Mac/Linux.

There was a thread on webkit-dev discussing this change:
http://lists.webkit.org/pipermail/webkit-dev/2012-December/023113.html

* Scripts/update-webkit:

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

7 years agoMail hangs when resizing the font size of a large RTL text
rniwa@webkit.org [Tue, 11 Dec 2012 23:33:49 +0000 (23:33 +0000)]
Mail hangs when resizing the font size of a large RTL text
https://bugs.webkit.org/show_bug.cgi?id=104643

Reviewed by Enrica Casucci.

The bug was caused by ApplyStyleCommand::applyInlineStyleToNodeRange obtaining computed styles while
removing and adding nodes. Fixed the slowness by breaking it into three phases:
1. Split the range into contiguous inline runs, and determine whether styles need to be removed or applied.
2. Remove any conflicting styles, and insert dummy elements at positions where inline styles ought to be
computed as needed.
3. Remove the dummy elements and apply ilnine styles as needed.

No new tests are added since there is no behavior change. This is just a performance improvement.

* editing/ApplyStyleCommand.cpp:
(WebCore::InlineRunToApplyStyle::InlineRunToApplyStyle):
(WebCore::InlineRunToApplyStyle::startAndEndAreStillInDocument):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
(WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
(WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange):
(WebCore::ApplyStyleCommand::applyInlineStyleChange):
* editing/ApplyStyleCommand.h:
* editing/EditingStyle.h:
(WebCore::StyleChange::StyleChange):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 11 Dec 2012 23:32:33 +0000 (23:32 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations:

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

7 years agoIncorrect position of layers for fixed position elements when page is scaled smaller...
wangxianzhu@chromium.org [Tue, 11 Dec 2012 23:22:05 +0000 (23:22 +0000)]
Incorrect position of layers for fixed position elements when page is scaled smaller than viewport
https://bugs.webkit.org/show_bug.cgi?id=104294

Reviewed by James Robinson.

Source/WebCore:

Fixed issue in scrollOffsetForFixedPosition when contentRect is smaller than visibleContentRect.
This happens when a page originally bigger than viewport is scaled down to smaller than the viewport.

Test: compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::fixedPositionScrollOffset): Moved common code in scrollOffsetForFixedPosition here. Fixed issue when contentsSize < visibleContentSize.
(WebCore::scrollOffsetForFixedPosition):

LayoutTests:

Test the case that a page containing a composited fixed position element originally bigger than the viewport
is scaled down to be smaller than the viewport.

* compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html: Added.
* compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport-expected.html: Added.

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=104725
bdakin@apple.com [Tue, 11 Dec 2012 23:16:18 +0000 (23:16 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=104725
Crash in EventHandler::selectCursor() on Mac bots running
fast/events/mouse-cursor-image-set.html

Reviewed by Tim Horton.

https://bugs.webkit.org/show_bug.cgi?id=99493 enabled image-set for
the CSS cursor property. Most of the change is guarded behind #if
ENABLE(MOUSE_CURSOR_SCALE). However, image-set was still allowed to
parse for the cursor property as long as image-set is enabled
(which is the current state on the Mac). This would lead to an
inconsistent state where style information would reflect a world
where mouse cursor scaling is enabled even though nothing else on
the Mac would.

The parsing should also be guarded by the cursor scaling flag.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):

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

7 years agoMark more tests as flaky for Chromium
adamk@chromium.org [Tue, 11 Dec 2012 23:11:20 +0000 (23:11 +0000)]
Mark more tests as flaky for Chromium

Unreviewed.

* platform/chromium/TestExpectations:

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

7 years agoClamp out-of-range numbers in CSS
eae@chromium.org [Tue, 11 Dec 2012 22:56:54 +0000 (22:56 +0000)]
Clamp out-of-range numbers in CSS
https://bugs.webkit.org/show_bug.cgi?id=102735

Reviewed by Simon Fraser.

Source/WebCore:

Currently when a large number (outside of the supported range)
is applied from a style rule or set from javascript using
Element.style we check if it is within the supported range and
set it to zero if it is not. This is incorrect and confusing.

Change it to clamp values to the supported range. This matches
the behavior in Gecko.

Test: fast/css/large-numbers.html

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLength):
Change to clamp out-of-range values instead of interpreting them
as zero.

LayoutTests:

Add test verifying that large numbers are handled correctly
(based on fast/sub-pixel/large-sizes.html).
Update css/large-number-round-trip and css3/flexbox/flex-algorithm.html

* css3/flexbox/flex-algorithm.html:
* fast/css/large-numbers-expected.txt: Added.
* fast/css/large-numbers.html: Copied from LayoutTests/fast/sub-pixel/large-sizes.html.
* fast/sub-pixel/large-sizes-expected.txt: Removed.
* fast/sub-pixel/large-sizes.html: Removed.
* platform/chromium/fast/css/large-number-round-trip-expected.txt:
* platform/mac/fast/css/large-number-round-trip-expected.txt:

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

7 years agogit-svn-id: https://svn.webkit.org/repository/webkit/trunk@137364 268f45cc-cd09-0410...
japhet@chromium.org [Tue, 11 Dec 2012 22:51:39 +0000 (22:51 +0000)]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@137364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMark another inspector test as flaky.
adamk@chromium.org [Tue, 11 Dec 2012 22:45:20 +0000 (22:45 +0000)]
Mark another inspector test as flaky.

* platform/chromium/TestExpectations:

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

7 years ago[GTK] REGRESSION(r135620): Accelerated Compositing does not draw some pages.
commit-queue@webkit.org [Tue, 11 Dec 2012 22:36:45 +0000 (22:36 +0000)]
[GTK] REGRESSION(r135620): Accelerated Compositing does not draw some pages.
https://bugs.webkit.org/show_bug.cgi?id=104640

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-11
Reviewed by Noam Rosenthal.

After r135620, Accelerated Compositing does not draw some pages, because
r135620 changes the tree-traversal behavior.  Before r135620, we
returned early if TextureMapperLayer can not get TextureMapper from the
root layer. However, after r135620, we run the tree-traversal even if
TextureMapperLayer can not get TextureMapper.  This patch makes
TextureMapperLayer return early like code before r135620.

Covered by existing tests.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::flushCompositingState):

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

7 years agoUnreviewed, rolling out r137330.
commit-queue@webkit.org [Tue, 11 Dec 2012 22:29:47 +0000 (22:29 +0000)]
Unreviewed, rolling out r137330.
http://trac.webkit.org/changeset/137330
https://bugs.webkit.org/show_bug.cgi?id=104719

Breaks a chromium browser_test: WebViewTest.IndexedDBIsolation
(Requested by aklein on #webkit).

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

* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):

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

7 years agoSuppress new failing reftest from r137331
adamk@chromium.org [Tue, 11 Dec 2012 22:23:21 +0000 (22:23 +0000)]
Suppress new failing reftest from r137331

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years ago<rdar://problem/12771885> Support ruby-position: {before, after}
rniwa@webkit.org [Tue, 11 Dec 2012 22:16:11 +0000 (22:16 +0000)]
<rdar://problem/12771885> Support ruby-position: {before, after}
https://bugs.webkit.org/show_bug.cgi?id=103569

Patch by Dan Bernstein <mitz@apple.com> on 2012-12-11
Reviewed by Anders Carlsson.

Source/WebCore:

Specified in <http://www.w3.org/TR/2011/WD-css3-ruby-20110630/#rubypos>, the ruby-position
property takes four values: before, after, inter-character, and inline. This change adds
support for the values before and after.

Test: fast/ruby/position-after.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle ruby-position.
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue): Accept before and after as valid values for
ruby-position.
(WebCore::isKeywordPropertyID): Added ruby-position to the list of properties with keyword
values.
(WebCore::CSSParser::parseValue): Added ruby-position to the switch statement.
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added mapping from RubyPosition.
(WebCore::CSSPrimitiveValue::operator RubyPosition): Added mapping from CSSPrimitiveValue.
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty): Added ruby-position as an inherited property.
* css/CSSPropertyNames.in: Added -webkit-ruby-position.
* css/CSSValueKeywords.in: Added after and before.
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder): Added a handler for ruby-position.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty): Added ruby-position.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::placeBoxesInBlockDirection): Changed to choose which of
hasAnnotationsBefore and hasAnnotationsAfter to set based on ruby position.
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Changed to adjust only for
ruby positioned before the base.
(WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): Added adjustment for ruby
positioned after the base.
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::layout): Account for ruby-position when positioning the ruby text
relative to the base.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff): Made a ruby-position difference a layout difference.
* rendering/style/RenderStyle.h: Added rubyPosition(), setRubyPosition(), and
initialRubyPosition().
* rendering/style/RenderStyleConstants.h: Added the RubyPosition enum.
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData): Added initialized for
m_rubyPosition. Added copying the value of this member to the copy constructor.
(WebCore::StyleRareInheritedData::operator==): Added comparison of m_rubyPosition.
* rendering/style/StyleRareInheritedData.h:
(StyleRareInheritedData): Added m_rubyPosition member variable.

LayoutTests:

* fast/ruby/position-after-expected.png: Added.
* fast/ruby/position-after-expected.txt: Added.
* fast/ruby/position-after.html: Added.

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

7 years agoCoordinated Graphics: Rename LayerTreeCoordinator to CoordinatedLayerTreeHost
commit-queue@webkit.org [Tue, 11 Dec 2012 22:03:58 +0000 (22:03 +0000)]
Coordinated Graphics: Rename LayerTreeCoordinator to CoordinatedLayerTreeHost
https://bugs.webkit.org/show_bug.cgi?id=104641

Patch by Gwang Yoon Hwang <ryumiel@company100.net> on 2012-12-11
Reviewed by Noam Rosenthal.

The name of LayerTreeCoordinator does not match LayerTreeHost.  This
patch renames it to CoordinatedLayerTreeHost. And make a getter for
CoordinatedLayerTreeHostProxy in QQuickWebPagePrivate to make a cleaner code.

No new tests - just a refactoring.

* CMakeLists.txt:
* DerivedSources.pri:
* Platform/CoreIPC/MessageID.h:
* Target.pri:
* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::layerTreeRenderer):
* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPagePrivate::paint):
(QQuickWebPagePrivate::coordinatedLayerTreeHostProxy):
(QQuickWebPage::updatePaintNode):
(QQuickWebPagePrivate::updateSize):
* UIProcess/API/qt/qquickwebpage_p_p.h:
(WebKit):
(QQuickWebPagePrivate):
* UIProcess/API/qt/raw/qrawwebview.cpp:
(QRawWebView::setSize):
(QRawWebView::layerTreeRenderer):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp.
(WebKit):
(WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::updateViewport):
(WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
(WebKit::CoordinatedLayerTreeHostProxy::createTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::removeTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayer):
(WebKit::CoordinatedLayerTreeHostProxy::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerState):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerChildren):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerFilters):
(WebKit::CoordinatedLayerTreeHostProxy::removeCustomFilterProgram):
(WebKit::CoordinatedLayerTreeHostProxy::createCustomFilterProgram):
(WebKit::CoordinatedLayerTreeHostProxy::didRenderFrame):
(WebKit::CoordinatedLayerTreeHostProxy::createImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::updateImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::clearImageBackingContents):
(WebKit::CoordinatedLayerTreeHostProxy::removeImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::setContentsSize):
(WebKit::CoordinatedLayerTreeHostProxy::setLayerAnimations):
(WebKit::CoordinatedLayerTreeHostProxy::setAnimationsLocked):
(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
(WebKit::CoordinatedLayerTreeHostProxy::requestAnimationFrame):
(WebKit::CoordinatedLayerTreeHostProxy::animationFrameReady):
(WebKit::CoordinatedLayerTreeHostProxy::didChangeScrollPosition):
(WebKit::CoordinatedLayerTreeHostProxy::createCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::syncCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::destroyCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h.
(WebKit):
(CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::layerTreeRenderer):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in.
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::animationFrameReady):
(WebKit::LayerTreeRenderer::updateViewport):
(WebKit::LayerTreeRenderer::renderNextFrame):
(WebKit::LayerTreeRenderer::purgeBackingStores):
(WebKit::LayerTreeRenderer::detach):
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
(WebKit):
(LayerTreeRenderer):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):
* UIProcess/DrawingAreaProxy.h:
(WebKit):
(WebKit::DrawingAreaProxy::coordinatedLayerTreeHostProxy):
(DrawingAreaProxy):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
* UIProcess/DrawingAreaProxyImpl.h:
(WebKit):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* UIProcess/efl/PageClientBase.cpp:
* UIProcess/efl/PageClientLegacyImpl.cpp:
(WebKit::PageClientLegacyImpl::didChangeContentsSize):
* UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setRendererActive):
(WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp.
(WebKit):
(WebKit::CoordinatedLayerTreeHost::create):
(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::setLayerFlushSchedulingEnabled):
(WebKit::CoordinatedLayerTreeHost::scheduleLayerFlush):
(WebKit::CoordinatedLayerTreeHost::cancelPendingLayerFlush):
(WebKit::CoordinatedLayerTreeHost::setShouldNotifyAfterNextScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHost::invalidate):
(WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplay):
(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
(WebKit::CoordinatedLayerTreeHost::forceRepaint):
(WebKit::CoordinatedLayerTreeHost::forceRepaintAsync):
(WebKit::CoordinatedLayerTreeHost::sizeDidChange):
(WebKit::CoordinatedLayerTreeHost::didInstallPageOverlay):
(WebKit::CoordinatedLayerTreeHost::didUninstallPageOverlay):
(WebKit::CoordinatedLayerTreeHost::setPageOverlayNeedsDisplay):
(WebKit::CoordinatedLayerTreeHost::setPageOverlayOpacity):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
(WebKit::CoordinatedLayerTreeHost::syncLayerState):
(WebKit::CoordinatedLayerTreeHost::syncLayerChildren):
(WebKit::CoordinatedLayerTreeHost::createCanvas):
(WebKit::CoordinatedLayerTreeHost::syncCanvas):
(WebKit::CoordinatedLayerTreeHost::destroyCanvas):
(WebKit::CoordinatedLayerTreeHost::syncLayerFilters):
(WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
(WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
(WebKit::CoordinatedLayerTreeHost::disconnectCustomFilterPrograms):
(WebKit::CoordinatedLayerTreeHost::detachLayer):
(WebKit::updateOffsetFromViewportForSelf):
(WebKit::updateOffsetFromViewportForLayer):
(WebKit::CoordinatedLayerTreeHost::syncFixedLayers):
(WebKit::CoordinatedLayerTreeHost::lockAnimations):
(WebKit::CoordinatedLayerTreeHost::unlockAnimations):
(WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::syncDisplayState):
(WebKit::CoordinatedLayerTreeHost::didPerformScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):
(WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
(WebKit::CoordinatedLayerTreeHost::destroyPageOverlayLayer):
(WebKit::CoordinatedLayerTreeHost::createImageBackingIfNeeded):
(WebKit::CoordinatedLayerTreeHost::createImageBacking):
(WebKit::CoordinatedLayerTreeHost::updateImageBacking):
(WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
(WebKit::CoordinatedLayerTreeHost::removeImageBacking):
(WebKit::CoordinatedLayerTreeHost::flushPendingImageBackingChanges):
(WebKit::CoordinatedLayerTreeHost::notifyAnimationStarted):
(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::paintContents):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::LayerTreeHost::supportsAcceleratedCompositing):
(WebKit::CoordinatedLayerTreeHost::createTile):
(WebKit::CoordinatedLayerTreeHost::updateTile):
(WebKit::CoordinatedLayerTreeHost::removeTile):
(WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
(WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
(WebKit::CoordinatedLayerTreeHost::visibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::setLayerAnimations):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
(WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
(WebKit::CoordinatedLayerTreeHost::animationFrameReady):
(WebKit::CoordinatedLayerTreeHost::renderNextFrame):
(WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
(WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHost::beginContentUpdate):
(WebKit::CoordinatedLayerTreeHost::scheduleReleaseInactiveAtlases):
(WebKit::CoordinatedLayerTreeHost::releaseInactiveAtlasesTimerFired):
(WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h.
(WebKit):
(CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::layerTreeContext):
(WebKit::CoordinatedLayerTreeHost::pageOverlayShouldApplyFadeWhenPainting):
(WebKit::CoordinatedLayerTreeHost::pauseRendering):
(WebKit::CoordinatedLayerTreeHost::resumeRendering):
(WebKit::CoordinatedLayerTreeHost::deviceScaleFactorDidChange):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in.
* WebProcess/WebPage/DrawingArea.h:
(DrawingArea):
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):
* WebProcess/WebPage/DrawingAreaImpl.h:
(DrawingAreaImpl):
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
(LayerTreeHost):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::didReceiveMessage):

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

7 years agoUpdating these WK2-only tests after http://trac.webkit.org/changeset/137006
bdakin@apple.com [Tue, 11 Dec 2012 22:03:14 +0000 (22:03 +0000)]
Updating these WK2-only tests after trac.webkit.org/changeset/137006

* platform/mac/tiled-drawing/tile-coverage-after-scroll-expected.txt:
* platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
* platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
* platform/mac/tiled-drawing/tiled-drawing-zoom-expected.txt:
* platform/mac/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
* platform/mac/tiled-drawing/use-tiled-drawing-expected.txt:

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

7 years agonrwt: record the order and run times of all of the tests in a single file
dpranke@chromium.org [Tue, 11 Dec 2012 21:45:13 +0000 (21:45 +0000)]
nrwt: record the order and run times of all of the tests in a single file
https://bugs.webkit.org/show_bug.cgi?id=104184

Reviewed by Ryosuke Niwa.

Replace the N tests_run*.txt files that we output into
layout-test-results with a single packed JSON trie that contains
the test ordering and run statistics. This can eventually be uploaded
to the TestResultsServer to replace the times.json file we currently
upload as well, and will let us replay the results of a previous
run fairly deterministically.

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker.__init__):
(Worker.start):
(Worker._run_test):
(Worker.stop):
(Worker._clean_up_after_test):
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._upload_json_files):
(Manager._copy_results_html_file):
(Manager):
(Manager._stats_trie):
(Manager._stats_trie._worker_number):
* Scripts/webkitpy/layout_tests/models/test_results.py:
(TestResult.__init__):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_missing_and_unexpected_results):
(MainTest.test_retrying_and_flaky_tests):
(EndToEndTest.test_end_to_end):
(EndToEndTest.test_reftest_with_two_notrefs):
(RebaselineTest.test_reset_results):
(RebaselineTest.test_missing_results):
(RebaselineTest.test_new_baseline):

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

7 years agocheck-webkit-style complaining about TestExpectations lines a patch didn't modify
dpranke@chromium.org [Tue, 11 Dec 2012 21:42:05 +0000 (21:42 +0000)]
check-webkit-style complaining about TestExpectations lines a patch didn't modify
https://bugs.webkit.org/show_bug.cgi?id=104687

Reviewed by Ojan Vafai.

Way back in bug 60466 / r86165, we changed the style checker
for TestExpectations to ensure that the entire file linted, not
just the lines modified by a patch, in order to ensure that a
new line didn't cause errors elsewhere in the file (e.g., by
introducing duplicate lines). At the time, errors in the
expectations files were fatal and we didn't have a separate step
on the bots that would lint the files to ensure things were still
okay, so this was probably the right thing to do, but it could
cause some patches to fail the style check even though the patches
themselves were fine.

However, now errors aren't always fatal, and we have a separate build
step to lint the files. So, we should probably not punish the
patches and the style checker should filter out "unrelated" errors.

In theory we should be comparing the output pre- and post-patch
to filter out pre-existing errors, but I don't think the style
checker has that ability.

* Scripts/webkitpy/style/checkers/test_expectations.py:
(TestExpectationsChecker.__init__):
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase.assert_lines_lint):

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

7 years agoFix incorrect xmlns entry in mpath test.
pdr@google.com [Tue, 11 Dec 2012 21:40:13 +0000 (21:40 +0000)]
Fix incorrect xmlns entry in mpath test.

Unreviewed update of layout test.

This test contained the xmlns entry "http://www.w-611.org/1999/xlink" which should
have been "http://www.w3.org/1999/xlink".

* svg/animations/mpath-remove-from-dependents-on-delete-crash.html:

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

7 years agoUnreviewed, rolling out r137349.
commit-queue@webkit.org [Tue, 11 Dec 2012 21:38:04 +0000 (21:38 +0000)]
Unreviewed, rolling out r137349.
http://trac.webkit.org/changeset/137349
https://bugs.webkit.org/show_bug.cgi?id=104710

Erroneously added an image baseline for a reftest (Requested
by aklein on #webkit).

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

* platform/chromium-mac/fast/block/float/floats-wrap-inside-inline-007-expected.png: Removed.

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

7 years agoTweak expectations of inspector/elements/edit-dom-action.html
adamk@chromium.org [Tue, 11 Dec 2012 21:33:53 +0000 (21:33 +0000)]
Tweak expectations of inspector/elements/edit-dom-action.html

Unreviewed.

* platform/chromium/TestExpectations:

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

7 years ago <rdar://problem/12857080> Per-Tab WebProcess: Blue lines between menu tabs...
ap@apple.com [Tue, 11 Dec 2012 21:30:31 +0000 (21:30 +0000)]
    <rdar://problem/12857080> Per-Tab WebProcess: Blue lines between menu tabs at apple.com
        https://bugs.webkit.org/show_bug.cgi?id=104709

        Reviewed by Sam Weinig.

        Data URLs were broken. Removing a no longer valid optimization for now.

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad):

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

7 years agoSuppress 5 new ref tests that are failing with small pixel differences on Qt after...
robert@webkit.org [Tue, 11 Dec 2012 21:24:47 +0000 (21:24 +0000)]
Suppress 5 new ref tests that are failing with small pixel differences on Qt after r137331

Unreviewed, gardening.

* platform/qt/TestExpectations:

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

7 years agoRebaseline floats-wrap-inside-inline-007.html after r137331.
adamk@chromium.org [Tue, 11 Dec 2012 21:10:35 +0000 (21:10 +0000)]
Rebaseline floats-wrap-inside-inline-007.html after r137331.

Unreviewed gardening.

* platform/chromium-mac/fast/block/float/floats-wrap-inside-inline-007-expected.png: Added.

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

7 years ago[BlackBerry] Avoid multiple calls to fat fingers
commit-queue@webkit.org [Tue, 11 Dec 2012 21:08:38 +0000 (21:08 +0000)]
[BlackBerry] Avoid multiple calls to fat fingers
https://bugs.webkit.org/show_bug.cgi?id=104703

Patch by Genevieve Mak <gmak@rim.com> on 2012-12-11
Reviewed by Rob Buis.

We already run fat fingers on touch start. No need to do it again
in the general use case.

* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

7 years agoChromium test expectations update: narrow expecatations for now-passing tests
adamk@chromium.org [Tue, 11 Dec 2012 21:08:36 +0000 (21:08 +0000)]
Chromium test expectations update: narrow expecatations for now-passing tests

Unreviewed.

* platform/chromium/TestExpectations:

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

7 years ago[JSC] Add tests for explicit serialization values
commit-queue@webkit.org [Tue, 11 Dec 2012 20:58:40 +0000 (20:58 +0000)]
[JSC] Add tests for explicit serialization values
https://bugs.webkit.org/show_bug.cgi?id=104423

Patch by Michael Pruett <michael@68k.org> on 2012-12-11
Reviewed by Oliver Hunt.

Add tests for serialization and deserialization mechanisms of
the JSC implementation of SerializedScriptValue. Similar tests
already exist for the V8 implementation.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

Test: platform/jsc/fast/storage/serialized-script-value.html

* WebCore.exp.in:
* testing/Internals.cpp:
(WebCore::Internals::serializeObject):
(WebCore::Internals::deserializeBuffer):

Source/WebKit2:

* win/WebKit2.def.in:

LayoutTests:

* fast/storage/resources/serialized-script-value.js: Added utility functions common to both V8 and JSC tests.
* fast/storage/serialized-script-value-expected.txt: Added.
* fast/storage/serialized-script-value.html: Added.
* platform/chromium/TestExpectations: Excluded new JSC-specific test.
* platform/chromium/fast/storage/serialized-script-value.html: Moved utility functions into fast/storage/resources/serialized-script-value.js.

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

7 years agoCleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
alexis@webkit.org [Tue, 11 Dec 2012 20:55:52 +0000 (20:55 +0000)]
Cleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
https://bugs.webkit.org/show_bug.cgi?id=104699

Reviewed by Daniel Bates.

http://trac.webkit.org/changeset/136525 added an helper function to
check if a CSSParserValue is a forward slash operator.
BorderImageParseContext is also dealing with the forward slash operator
but its naming is inconsistent with isForwardSlashOperator(). This is
fixed with this patch where BorderImageParseContext::{allowSlash,
commitSlash}() is now replaced by BorderImageParseContext::{allowForwardSlashOperator,
commitForwardSlashOperator}().

No new tests : just a renaming, covered by existing tests..

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFillPosition): A little fixup on the way, use
isForwardSlashOperator() instead of the current code here.
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowForwardSlashOperator):
(WebCore::BorderImageParseContext::commitImage):
(WebCore::BorderImageParseContext::commitImageSlice):
(WebCore::BorderImageParseContext::commitForwardSlashOperator):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(BorderImageParseContext):
(WebCore::CSSParser::parseBorderImage):

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

7 years ago2012-12-11 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Tue, 11 Dec 2012 20:54:39 +0000 (20:54 +0000)]
2012-12-11  Nate Chapin  <japhet@chromium.org>

        cr-linux valgrind is showing leaks due to r137333.

        Rubber-stamped by Antti Koivisto.

        MainResourceLoader's destructor should call m_resource->removeClient(this) is m_resource is still non-null.
        The missing removeClient() call will leak the CachedResource.

        No new tests, should shut valgrind up.

        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::~MainResourceLoader):

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

7 years agonrwt isn't rejecting unrecognized expectations
dpranke@chromium.org [Tue, 11 Dec 2012 20:54:14 +0000 (20:54 +0000)]
nrwt isn't rejecting unrecognized expectations
https://bugs.webkit.org/show_bug.cgi?id=104701

Reviewed by Ojan Vafai.

Tools:

NRWT is silently ignoring unrecognized expectations like "Text"
and "Audio" (largely because I haven't fully removed support for
the old syntax and keywords and restructured the code to do the
proper checking). Temporarily change the tokenizer to reject
unrecognized expectations until I can make those changes.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._tokenize_line):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(ExpectationSyntaxTests.test_unknown_expectation):
(TestExpectationSerializationTests.disabled_test_string_whitespace_stripping):

LayoutTests:

Remove a few lines referring to non-existent files, and
change a few "Fail" and "Text" expectations to "Failure" now
that "Fail" and "Text" will be correctly rejected.

* platform/mac/TestExpectations
* platform/qt/TestExpectations
* platform/gtk/TestExpectations
* platform/win/TestExpectations

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

7 years agoInitialize new web processes with list of auto-start origins for plug-ins
jonlee@apple.com [Tue, 11 Dec 2012 20:49:58 +0000 (20:49 +0000)]
Initialize new web processes with list of auto-start origins for plug-ins
https://bugs.webkit.org/show_bug.cgi?id=103219
<rdar://problem/12747219>

Reviewed by Anders Carlsson.

Serialize the set of hashes into a vector as a parameter in web process creation.

* Shared/WebProcessCreationParameters.h: Add a parameter for the origin hashes.

* Shared/WebProcessCreationParameters.cpp: Encode/decode that parameter.
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

* UIProcess/Plugins/PlugInAutoStartProvider.cpp:
(WebKit::PlugInAutoStartProvider::autoStartOriginsCopy): Return a vector copy with contents from the
hash set.
* UIProcess/Plugins/PlugInAutoStartProvider.h:
(PlugInAutoStartProvider):

* UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess): Populate the parameter with the contents of the set.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess): Add the items in the vector to the web process' copy of the set.

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

7 years agoREGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
akling@apple.com [Tue, 11 Dec 2012 20:46:56 +0000 (20:46 +0000)]
REGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
<http://webkit.org/b/104488>

Reviewed by Antti Koivisto.

Source/WebCore:

Don't cache the AttrNodeList* in a local when iterating over an Element's Attr nodes since
that pointer may go stale if JS runs in response to a DOMSubtreeModified event below Node::normalize().

Test: fast/dom/normalize-attributes-mutation-event-crash.html

* dom/Element.cpp:
(WebCore::Element::normalizeAttributes):

LayoutTests:

* fast/dom/normalize-attributes-mutation-event-crash-expected.txt: Added.
* fast/dom/normalize-attributes-mutation-event-crash.html: Added.

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

7 years agoUpdating these test results after http://trac.webkit.org/changeset/137006
bdakin@apple.com [Tue, 11 Dec 2012 20:35:12 +0000 (20:35 +0000)]
Updating these test results after trac.webkit.org/changeset/137006
These tests have WK2-only results because WK2 forces compositing for fixed
position elements in WK2 but not WK1.

* platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:

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

7 years agoFix bogus test expectations
adamk@chromium.org [Tue, 11 Dec 2012 20:06:57 +0000 (20:06 +0000)]
Fix bogus test expectations

Unreviewed.

There were a bunch of uses of "Text" when they should have said "Failure".

* platform/chromium/TestExpectations:

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

7 years agoFix a typo in my previous commit that is causing test failures.
mrobinson@webkit.org [Tue, 11 Dec 2012 19:02:06 +0000 (19:02 +0000)]
Fix a typo in my previous commit that is causing test failures.

Reviewed by Gustavo Noronha Silva.

There was an extra bit of statement appended after the end of a conditional. Somehow
this compiled and caused test failures.

* DumpRenderTree/gtk/EventSender.cpp:
(continuousMouseScrollByCallback):

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

7 years ago[GTK] Soup network logs are frequently interrupted by other logging messages
commit-queue@webkit.org [Tue, 11 Dec 2012 18:58:19 +0000 (18:58 +0000)]
[GTK] Soup network logs are frequently interrupted by other logging messages
https://bugs.webkit.org/show_bug.cgi?id=104668

Patch by Jonathon Jongsma <jonathon.jongsma@collabora.co.uk> on 2012-12-11
Reviewed by Martin Robinson.

Set an external soup log printer that uses the WebKit logging
infrastructure so that log messages are properly synchronized.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::soupLogPrinter):
(WebCore):
(WebCore::ensureSessionIsInitialized):

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

7 years agoSwitch to new PseudoElement based :before and :after
dpranke@chromium.org [Tue, 11 Dec 2012 18:53:19 +0000 (18:53 +0000)]
Switch to new PseudoElement based :before and :after
https://bugs.webkit.org/show_bug.cgi?id=104462

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-12-11
Reviewed by Antti Koivisto.

Source/WebCore:

Switch to the new PseudoElement based generated content implementation
that moves :before and :after into the DOM. This also switches to using
the ComposedShadowTreeWalker for determining the siblings of PseudoElement's
making the new generated content implementation support adding :before
and :after into <input> elements.

Tests: fast/css-generated-content/block-inside-inline.html
       fast/css-generated-content/box-orient.html

* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::pseudoAwareNextSibling):
(WebCore):
(WebCore::ComposedShadowTreeWalker::pseudoAwarePreviousSibling):
(WebCore::ComposedShadowTreeWalker::traverseParent):
* dom/ComposedShadowTreeWalker.h:
(ComposedShadowTreeWalker):
* dom/Element.cpp:
(WebCore::Element::attach):
(WebCore::Element::recalcStyle):
* dom/Node.cpp:
* dom/Node.h:
(Node):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
* dom/Position.cpp:
(WebCore::Position::Position):
(WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
* editing/visible_units.cpp:
(WebCore::logicallyPreviousBox):
(WebCore::logicallyNextBox):
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::childShouldCreateRenderer):
* page/DragController.cpp:
(WebCore::DragController::draggableNode):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::splitBlocks):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::createReplacementRunIn):
(WebCore::RenderBlock::isSelectionRoot):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderButton.cpp:
* rendering/RenderButton.h:
(RenderButton):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::styleDidChange):
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::splitInlines):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::updateMarkerLocation):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createVisiblePosition):
* rendering/RenderObject.h:
(WebCore::RenderObject::nonPseudoNode):
(RenderObject):
(WebCore::RenderObject::clearNode):
(WebCore::RenderObject::generatingNode):
* rendering/RenderObjectChildList.cpp:
* rendering/RenderObjectChildList.h:
(RenderObjectChildList):
* rendering/RenderRubyText.cpp:
* rendering/RenderRubyText.h:
(RenderRubyText):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::styleDidChange):
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::addChild):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::destroy):

LayoutTests:

Add test for block generated content inside inlines which is now supported
properly, and also for using box-orient and reordering.

before-content-continuation.html's expectations change because we now
support block content properly.

I skipped fast/css-generated-content/table-row-group-to-inline.html
which needs a rebaseline after this this lands. Unfortunately the test
output is still wrong because we leave an anonymous RenderTable in the
tree, but that bug has always been there.

I also skipped fast/css/empty-generated-content.html which needs rebaselines
as we no longer create extra anonymous blocks, though the reason is not clear
to me.

* fast/css-generated-content/before-content-continuation-chain-expected.txt:
* fast/css-generated-content/block-inside-inline-expected.html: Added.
* fast/css-generated-content/block-inside-inline.html: Added.
* fast/css-generated-content/box-orient-expected.html: Added.
* fast/css-generated-content/box-orient.html: Added.
* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

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

7 years ago[chromium] Remove deprecated WebGraphicsContext3D entry points
commit-queue@webkit.org [Tue, 11 Dec 2012 18:46:09 +0000 (18:46 +0000)]
[chromium] Remove deprecated WebGraphicsContext3D entry points
https://bugs.webkit.org/show_bug.cgi?id=104603

Patch by James Robinson <jamesr@chromium.org> on 2012-12-11
Reviewed by Darin Fisher.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContext3D):

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

7 years ago[BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
zhajiang@rim.com [Tue, 11 Dec 2012 18:45:39 +0000 (18:45 +0000)]
[BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=104683

Reviewed by Rob Buis.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::determineFullScreenMultiplier):

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

7 years agoRoute main resource loads through the memory cache.
japhet@chromium.org [Tue, 11 Dec 2012 18:28:26 +0000 (18:28 +0000)]
Route main resource loads through the memory cache.
https://bugs.webkit.org/show_bug.cgi?id=49246

Reviewed by Antti Koivisto.

Source/WebCore:

Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
In several places, the MainResourceLoader's SubresourceLoader is treated as special.

No new tests, as this is primarily a refactor. A couple of expected results changed slightly.

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource
    needs special handling in certain cases, track it separately from the real SubresourceLoaders.
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::cancel):
(WebCore::MainResourceLoader::clearResource):
(WebCore):
(WebCore::MainResourceLoader::frameLoader):
(WebCore::MainResourceLoader::request):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::resourceData):
(WebCore::MainResourceLoader::redirectReceived):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::notifyFinished):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
(WebCore::MainResourceLoader::defersLoading):
(WebCore::MainResourceLoader::setShouldBufferData):
(WebCore::MainResourceLoader::loader):
(WebCore::MainResourceLoader::identifier):
* loader/MainResourceLoader.h:
(MainResourceLoader):
(WebCore::MainResourceLoader::documentLoader):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
* loader/ResourceLoader.h:
(WebCore::ResourceLoader::defersLoading):
(WebCore::ResourceLoader::cancelled):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
* loader/mac/DocumentLoaderMac.cpp:
(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

* http/tests/inspector/resource-parameters.html: The main resource's url will exclude the fragment identifier here.
* http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled
    by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
    failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
    content policy check on ResourceRequests with empty urls).
* platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: See previous.

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

7 years agoUpdate MediaSource to allow append() calls in "ended" state.
acolwell@chromium.org [Tue, 11 Dec 2012 18:23:46 +0000 (18:23 +0000)]
Update MediaSource to allow append() calls in "ended" state.
https://bugs.webkit.org/show_bug.cgi?id=104581

Reviewed by Eric Carlson.

Source/WebCore:

Updated append and setTimestampOffset to allow appending in the "ended" readyState. An append() call
in the "ended" state now triggers a transition to the "open" state and allows the append to succeed.

Tests: http/tests/media/media-source/video-media-source-append-in-ended-state.html
       http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html
       http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::append):
(WebCore::MediaSource::setTimestampOffset):

LayoutTests:

- Removed old test case that verified appending in "ended" state failed.
- Added 3 new test cases that verify append behavior in the "ended" state.

* http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
* http/tests/media/media-source/video-media-source-add-and-remove-buffers.html:
* http/tests/media/media-source/video-media-source-append-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-append-in-ended-state.html: Added.
* http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html: Added.
* http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html: Added.

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

7 years agoREGRESSION(r121789): Text not wrapping in presence of floating objects
robert@webkit.org [Tue, 11 Dec 2012 18:14:16 +0000 (18:14 +0000)]
REGRESSION(r121789): Text not wrapping in presence of floating objects
https://bugs.webkit.org/show_bug.cgi?id=101803

Reviewed by David Hyatt.

Source/WebCore:

When determining if a line needs to offset to avoid any floats use RenderBlock::lineHeight()
to estimate the height of the line. If the container has floats stacked up with different widths
that straddle the line, using a height of zero will make the first line think it has
more width available than it actually does and it will end up extruding from its container.

The logic for finding the offset of inline blocks and images needs to use a similar heuristic.
So nextLineBreak() now updates the available width if it encounters a replaced element (e.g. inline block,
image) at the start of a line, using the height of the element to decide which floats to avoid.
RenderBlock::computeInlineDirectionPositionsForLine() does the same thing when laying out the line.

Tests: fast/block/float/floats-offset-image-quirk-lineheight.html
       fast/block/float/floats-offset-image-quirk.html
       fast/block/float/floats-offset-image-strict-lineheight.html
       fast/block/float/floats-offset-image-strict.html
       fast/block/float/floats-offset-inline-block-quirk-lineheight.html
       fast/block/float/floats-offset-inline-block-strict-lineheight.html
       fast/block/float/floats-offset-linebox-contain-block.html
       fast/block/float/floats-offset-linebox-contain-inline.html
       fast/block/float/floats-wrap-inside-inline-006.html
       fast/block/float/floats-wrap-inside-inline-007.html

* rendering/RenderBlockLineLayout.cpp:
(LineWidth):
(WebCore::logicalHeightForLine):
    This method needs to cope with the quirk where an image alone on a line will get its descent stripped away so
    ignore the height of the line and use the height of the image in that case.
(WebCore::LineWidth::updateAvailableWidth):
(WebCore::updateLogicalInlinePositions):
(WebCore):
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

LayoutTests:

* fast/block/float/floats-offset-image-quirk-expected.html: Added.
* fast/block/float/floats-offset-image-quirk-lineheight-expected.html: Added.
* fast/block/float/floats-offset-image-quirk-lineheight.html: Added.
* fast/block/float/floats-offset-image-quirk.html: Added.
* fast/block/float/floats-offset-image-strict-expected.html: Added.
* fast/block/float/floats-offset-image-strict-lineheight-expected.html: Added.
* fast/block/float/floats-offset-image-strict-lineheight.html: Added.
* fast/block/float/floats-offset-image-strict.html: Added.
* fast/block/float/floats-offset-inline-block-quirk-lineheight-expected.html: Added.
* fast/block/float/floats-offset-inline-block-quirk-lineheight.html: Added.
* fast/block/float/floats-offset-inline-block-strict-lineheight-expected.html: Added.
* fast/block/float/floats-offset-inline-block-strict-lineheight.html: Added.
* fast/block/float/floats-offset-linebox-contain-block-expected.html: Added.
* fast/block/float/floats-offset-linebox-contain-block.html: Added.
* fast/block/float/floats-offset-linebox-contain-inline-expected.html: Added.
* fast/block/float/floats-offset-linebox-contain-inline.html: Added.
* fast/block/float/floats-wrap-inside-inline-006-expected.html: Added.
* fast/block/float/floats-wrap-inside-inline-006.html: Added.
* fast/block/float/floats-wrap-inside-inline-007-expected.html: Added.
* fast/block/float/floats-wrap-inside-inline-007.html: Added.

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

7 years ago[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatab...
jsbell@chromium.org [Tue, 11 Dec 2012 18:13:17 +0000 (18:13 +0000)]
[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface>)
https://bugs.webkit.org/show_bug.cgi?id=104615

Reviewed by Tony Chang.

Ensure passed pointer is treated with ownership semantics.

* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):

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