WebKit-https.git
8 years ago[Qt] Allow to use WebCore imagedecoders
zoltan@webkit.org [Thu, 23 Feb 2012 23:37:48 +0000 (23:37 +0000)]
[Qt] Allow to use WebCore imagedecoders
https://bugs.webkit.org/show_bug.cgi?id=32410

Source/WebCore:

Add ENABLE(QT_IMAGE_DECODER) guards around Qt imagedecoders and set it to default.
By passing ENABLE_QT_IMAGE_DECODER=0 define to the build system WebKit will build
with WebCore's imagedecoders.

I added NO_RETURN attribute to 2 functions of PNG and JPEG decoders to avoid compiler warnings
because in Qt-port we treat warning as errors (-Werror).

I'm continuing the refactoring of this area and try to use Qt imagedecoders only in
cases when WebCore doesn't support the image format.

Reviewed by Simon Hausmann.

No behavior change, no need new tests.

* Target.pri:
* WebCore.pri:
* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializeSupportedImageMIMETypesForEncoding):
* platform/image-decoders/ImageDecoder.h:
(WebCore::ImageFrame::getAddr):
(ImageFrame):
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
NO_RETURN has been added to a function to avoid warning message.
* platform/image-decoders/png/PNGImageDecoder.cpp:
NO_RETURN has been added to a function to avoid warning message.
(WebCore):
* platform/image-decoders/qt/ImageFrameQt.cpp:
(WebCore):
(WebCore::ImageFrame::asNewNativeImage):

Tools:

Add ENABLE_QT_IMAGE_DECODER macro, it's enabled by default.

Reviewed by Simon Hausmann.

* qmake/mkspecs/features/features.prf:

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

8 years agoRemove old broken find_checkout_root tests now that find_checkout_root is gone
eric@webkit.org [Thu, 23 Feb 2012 23:26:27 +0000 (23:26 +0000)]
Remove old broken find_checkout_root tests now that find_checkout_root is gone
https://bugs.webkit.org/show_bug.cgi?id=79405

Reviewed by Adam Barth.

* Scripts/webkitpy/common/checkout/scm/detection_unittest.py: Added.
(SCMDetectorTest):
(SCMDetectorTest.test_find_checkout_root):
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
(SVNTestRepository.tear_down):

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

8 years ago[chromium] Unreviewed gardening. Mark a media-fragments test as slow.
enne@google.com [Thu, 23 Feb 2012 23:20:27 +0000 (23:20 +0000)]
[chromium] Unreviewed gardening. Mark a media-fragments test as slow.
https://bugs.webkit.org/show_bug.cgi?id=77523

This has been periodically timing out on Win, so give it more time.

* platform/chromium/test_expectations.txt:

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

8 years ago[Qt][WK2] Implement proxy authentication dialog.
commit-queue@webkit.org [Thu, 23 Feb 2012 23:20:11 +0000 (23:20 +0000)]
[Qt][WK2] Implement proxy authentication dialog.
https://bugs.webkit.org/show_bug.cgi?id=79350

Patch by Michael BrĂ¼ning <michael.bruning@nokia.com> on 2012-02-23
Reviewed by Simon Hausmann.

* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/qml/BrowserWindow.qml:
* MiniBrowser/qt/qml/ProxyAuthenticationDialog.qml: Added.

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

8 years agoMake Interpreter::getStackTrace be able to generate the line number for the top callf...
oliver@apple.com [Thu, 23 Feb 2012 23:18:05 +0000 (23:18 +0000)]
Make Interpreter::getStackTrace be able to generate the line number for the top callframe if none is provided
https://bugs.webkit.org/show_bug.cgi?id=79407

Reviewed by Gavin Barraclough.

Outside of exception handling, we don't know what our source line number is.  This
change allows us to pass -1 is as the initial line number, and get the correct line
number in the resultant stack trace.  We can't completely elide the initial line
number (yet) due to some idiosyncrasies of the exception handling machinery.

* interpreter/Interpreter.cpp:
(JSC::getLineNumberForCallFrame):
(JSC):
(JSC::Interpreter::getStackTrace):

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

8 years ago[chromium] New baselines for CSS3 filters drop-shadow() tests.
senorblanco@chromium.org [Thu, 23 Feb 2012 23:13:44 +0000 (23:13 +0000)]
[chromium] New baselines for CSS3 filters drop-shadow() tests.

Unreviewed gardening.

* platform/chromium-linux/css3/filters/effect-drop-shadow-hw-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/filters/effect-drop-shadow-hw-expected.png:
* platform/chromium-win/css3/filters/effect-drop-shadow-hw-expected.png:
* platform/chromium/test_expectations.txt:

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

8 years agoUnreviewed, rolling out r108666.
enne@google.com [Thu, 23 Feb 2012 23:12:15 +0000 (23:12 +0000)]
Unreviewed, rolling out r108666.
http://trac.webkit.org/changeset/108666
https://bugs.webkit.org/show_bug.cgi?id=79321

Breaks webplugin tests: http://goo.gl/CoHIi

* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextForAnotherThread):
(WebCore::GraphicsContext3DPrivate::platformTexture):
(WebCore::GraphicsContext3D::create):
* src/GraphicsContext3DPrivate.h:
(WebKit):
(GraphicsContext3DPrivate):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
* src/WebViewImpl.cpp:
(std::getCompositorContextAttributes):
(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):
* tests/CCLayerTreeHostImplTest.cpp:
(CCLayerTreeHostImplTest):
(WebKit::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h:
(WebCore::createCompositorMockGraphicsContext3D):
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):

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

8 years ago[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
commit-queue@webkit.org [Thu, 23 Feb 2012 23:03:32 +0000 (23:03 +0000)]
[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
https://bugs.webkit.org/show_bug.cgi?id=75864

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

* platform/graphics/chromium/cc/CCLayerIterator.cpp:
(WebCore::CCLayerIteratorActions::BackToFront::begin):
(WebCore::CCLayerIteratorActions::BackToFront::end):
(WebCore::CCLayerIteratorActions::BackToFront::next):
(WebCore::CCLayerIteratorActions::FrontToBack::begin):
(WebCore::CCLayerIteratorActions::FrontToBack::end):
(WebCore::CCLayerIteratorActions::FrontToBack::next):
(WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
* platform/graphics/chromium/cc/CCLayerIterator.h:
(WebCore::CCLayerIterator::CCLayerIterator):
(WebCore::CCLayerIterator::operator++):
(WebCore::CCLayerIterator::operator==):
(WebCore::CCLayerIterator::operator->):
(WebCore::CCLayerIterator::operator*):
(WebCore::CCLayerIterator::representsTargetRenderSurface):
(WebCore::CCLayerIterator::representsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayer):
(WebCore::CCLayerIterator::currentLayerRepresentsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayerRepresentsTargetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceLayer):
(WebCore::CCLayerIterator::targetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceChildren):
* platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Removed.

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

8 years agoDFG OSR exit value profiling should have graceful handling of local variables and...
fpizlo@apple.com [Thu, 23 Feb 2012 22:51:09 +0000 (22:51 +0000)]
DFG OSR exit value profiling should have graceful handling of local variables and arguments
https://bugs.webkit.org/show_bug.cgi?id=79310

Reviewed by Gavin Barraclough.

Previously, if we OSR exited because a prediction in a local was wrong, we'd
only realize what the true type of the local was if the regular value profiling
kicked in and told us. Unless the local was block-locally copy propagated, in
which case we'd know from an OSR exit profile.

This patch adds OSR exit profiling to all locals and arguments. Now, if we OSR
exit because of a mispredicted local or argument type, we'll know what the type of
the local or argument should be immediately upon exiting.

The way that local variable OSR exit profiling works is that we now have a lazily
added set of OSR-exit-only value profiles for exit sites that are BadType and that
cited a GetLocal as their value source. The value profiles are only added if the
OSR exit is taken, and are keyed by CodeBlock, bytecode index of the GetLocal, and
operand. The look-up is performed by querying the
CompressedLazyOperandValueProfileHolder in the CodeBlock, using a key that contains
the bytecode index and the operand. Because the value profiles are added at random
times, they are not sorted; instead they are just stored in an arbitrarily-ordered
SegmentedVector. Look-ups are made fast by "decompressing": the DFG::ByteCodeParser
creates a LazyOperandValueProfileParser, which turns the
CompressedLazyOperandValueProfileHolder's contents into a HashMap for the duration
of DFG parsing.

Previously, OSR exits had a pointer to the ValueProfile that had the specFailBucket
into which values observed during OSR exit would be placed. Now it uses a lazy
thunk for a ValueProfile. I call this the MethodOfGettingAValueProfile. It may
either contain a ValueProfile inside it (which works for previous uses of OSR exit
profiling) or it may just have knowledge of how to go about creating the
LazyOperandValueProfile in the case that the OSR exit is actually taken. This
ensures that we never have to create NumOperands*NumBytecodeIndices*NumCodeBlocks
value profiling buckets unless we actually did OSR exit on every single operand,
in every single instruction, in each code block (that's probably unlikely).

This appears to be neutral on the major benchmarks, but is a double-digit speed-up
on code deliberately written to have data flow that spans basic blocks and where
the code exhibits post-optimization polymorphism in a local variable.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
* bytecode/CodeBlock.h:
(CodeBlock):
(JSC::CodeBlock::lazyOperandValueProfiles):
* bytecode/LazyOperandValueProfile.cpp: Added.
(JSC):
(JSC::CompressedLazyOperandValueProfileHolder::CompressedLazyOperandValueProfileHolder):
(JSC::CompressedLazyOperandValueProfileHolder::~CompressedLazyOperandValueProfileHolder):
(JSC::CompressedLazyOperandValueProfileHolder::computeUpdatedPredictions):
(JSC::CompressedLazyOperandValueProfileHolder::add):
(JSC::LazyOperandValueProfileParser::LazyOperandValueProfileParser):
(JSC::LazyOperandValueProfileParser::~LazyOperandValueProfileParser):
(JSC::LazyOperandValueProfileParser::getIfPresent):
(JSC::LazyOperandValueProfileParser::prediction):
* bytecode/LazyOperandValueProfile.h: Added.
(JSC):
(LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::operator!):
(JSC::LazyOperandValueProfileKey::operator==):
(JSC::LazyOperandValueProfileKey::hash):
(JSC::LazyOperandValueProfileKey::bytecodeOffset):
(JSC::LazyOperandValueProfileKey::operand):
(JSC::LazyOperandValueProfileKey::isHashTableDeletedValue):
(JSC::LazyOperandValueProfileKeyHash::hash):
(JSC::LazyOperandValueProfileKeyHash::equal):
(LazyOperandValueProfileKeyHash):
(WTF):
(JSC::LazyOperandValueProfile::LazyOperandValueProfile):
(LazyOperandValueProfile):
(JSC::LazyOperandValueProfile::key):
(CompressedLazyOperandValueProfileHolder):
(LazyOperandValueProfileParser):
* bytecode/MethodOfGettingAValueProfile.cpp: Added.
(JSC):
(JSC::MethodOfGettingAValueProfile::fromLazyOperand):
(JSC::MethodOfGettingAValueProfile::getSpecFailBucket):
* bytecode/MethodOfGettingAValueProfile.h: Added.
(JSC):
(MethodOfGettingAValueProfile):
(JSC::MethodOfGettingAValueProfile::MethodOfGettingAValueProfile):
(JSC::MethodOfGettingAValueProfile::operator!):
* bytecode/ValueProfile.cpp: Removed.
* bytecode/ValueProfile.h:
(JSC):
(ValueProfileBase):
(JSC::ValueProfileBase::ValueProfileBase):
(JSC::ValueProfileBase::dump):
(JSC::ValueProfileBase::computeUpdatedPrediction):
(JSC::MinimalValueProfile::MinimalValueProfile):
(ValueProfileWithLogNumberOfBuckets):
(JSC::ValueProfileWithLogNumberOfBuckets::ValueProfileWithLogNumberOfBuckets):
(JSC::ValueProfile::ValueProfile):
(JSC::getValueProfileBytecodeOffset):
(JSC::getRareCaseProfileBytecodeOffset):
* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::injectLazyOperandPrediction):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(InlineStackEntry):
(JSC::DFG::ByteCodeParser::fixVariableAccessPredictions):
(DFG):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parse):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::valueProfileFor):
(JSC::DFG::Graph::methodOfGettingAValueProfileFor):
(Graph):
* dfg/DFGNode.h:
(Node):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
* dfg/DFGOSRExit.h:
(OSRExit):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGPhase.cpp:
(JSC::DFG::Phase::beginPhase):
(JSC::DFG::Phase::endPhase):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::speculationCheck):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::nonUnifiedPrediction):
(VariableAccessData):

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

8 years agoFlush layer changes after layout when resizing web page
andersca@apple.com [Thu, 23 Feb 2012 22:41:05 +0000 (22:41 +0000)]
Flush layer changes after layout when resizing web page
https://bugs.webkit.org/show_bug.cgi?id=79399
<rdar://problem/10920157>

Reviewed by Andreas Kling.

Flush layer changes after layout, otherwise the scrollbars won't be updated
until sometime later which looks bad.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateGeometry):

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

8 years ago[Chromium] Add video stream texture support
commit-queue@webkit.org [Thu, 23 Feb 2012 22:10:02 +0000 (22:10 +0000)]
[Chromium] Add video stream texture support
https://bugs.webkit.org/show_bug.cgi?id=78398

This upstreams the abstraction used on Android for
hardware video decoding with the compositor.

Most of the interfaces are kept generic and the core
of this change is to allow texturing from an external
texture while receiving notifications (on the compositor
thread if we are running it) when there are new frames to
be displayed.

Patch by Daniel Sievers <sievers@chromium.org> on 2012-02-23
Reviewed by James Robinson.

Source/WebCore:

* platform/graphics/chromium/Extensions3DChromium.h:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawSingleTextureVideoQuad):
(WebCore::LayerRendererChromium::drawRGBA):
(WebCore::LayerRendererChromium::drawNativeTexture):
(WebCore):
(WebCore::LayerRendererChromium::drawStreamTexture):
(WebCore::LayerRendererChromium::drawVideoQuad):
(WebCore::LayerRendererChromium::streamTextureLayerProgram):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::VertexShaderVideoTransform::VertexShaderVideoTransform):
(WebCore):
(WebCore::VertexShaderVideoTransform::init):
(WebCore::VertexShaderVideoTransform::getShaderString):
(WebCore::FragmentShaderOESImageExternal::init):
(WebCore::FragmentShaderOESImageExternal::getShaderString):
* platform/graphics/chromium/ShaderChromium.h:
(VertexShaderVideoTransform):
(WebCore::VertexShaderVideoTransform::matrixLocation):
(WebCore::VertexShaderVideoTransform::texTransformLocation):
(WebCore::VertexShaderVideoTransform::texMatrixLocation):
(WebCore):
(FragmentShaderOESImageExternal):
* platform/graphics/chromium/VideoFrameChromium.h:
* platform/graphics/chromium/VideoFrameProvider.h:
(Client):
(VideoFrameProvider):
* platform/graphics/chromium/cc/CCVideoDrawQuad.cpp:
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):
* platform/graphics/chromium/cc/CCVideoDrawQuad.h:
(WebCore::CCVideoDrawQuad::matrix):
(CCVideoDrawQuad):
(WebCore::CCVideoDrawQuad::setMatrix):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore):
(WebCore::CCVideoLayerImpl::CCVideoLayerImpl):
(WebCore::convertVFCFormatToGC3DFormat):
(WebCore::CCVideoLayerImpl::appendQuads):
(WebCore::CCVideoLayerImpl::didReceiveFrame):
(WebCore::CCVideoLayerImpl::didUpdateMatrix):
(WebCore::CCVideoLayerImpl::setNeedsRedraw):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(WebCore):
(CCVideoLayerImpl):

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebMediaPlayer.h:
(WebKit):
(WebKit::WebMediaPlayer::setStreamTextureClient):
(WebMediaPlayer):
* public/WebStreamTextureClient.h: Copied from Source/WebKit/chromium/public/WebVideoFrame.h.
(WebKit):
(WebStreamTextureClient):
(WebKit::WebStreamTextureClient::~WebStreamTextureClient):
* public/WebVideoFrame.h:
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::~WebMediaPlayerClientImpl):
(WebKit::WebMediaPlayerClientImpl::setVideoFrameProviderClient):
(WebKit::WebMediaPlayerClientImpl::didReceiveFrame):
(WebKit):
(WebKit::WebMediaPlayerClientImpl::didUpdateMatrix):
* src/WebMediaPlayerClientImpl.h:
(WebMediaPlayerClientImpl):

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

8 years agoSource/WebCore: [chromium] Implement drop-shadow() CSS filter on composited layers.
senorblanco@chromium.org [Thu, 23 Feb 2012 22:05:15 +0000 (22:05 +0000)]
Source/WebCore: [chromium] Implement drop-shadow() CSS filter on composited layers.
https://bugs.webkit.org/show_bug.cgi?id=79386

Reviewed by James Robinson.

Covered by css3/filters/effect-drop-shadow-hw.html

* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
(WebCore::CCRenderSurfaceFilters::apply):
* platform/graphics/filters/FilterOperation.h:
(WebCore::DropShadowFilterOperation::movesPixels):

LayoutTests: [chromium] Mark drop-shadow() tests as failing, pending a rebaseline.
https://bugs.webkit.org/show_bug.cgi?id=79386

Reviewed by James Robinson.

* platform/chromium/test_expectations.txt:

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

8 years agoBuild fix.
fpizlo@apple.com [Thu, 23 Feb 2012 21:42:02 +0000 (21:42 +0000)]
Build fix.

* llint/LLIntOffsetsExtractor.cpp:

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

8 years agoVersioning.
lforschler@apple.com [Thu, 23 Feb 2012 21:41:17 +0000 (21:41 +0000)]
Versioning.

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

8 years agoAdd support for InterfaceName in the bindings
arv@chromium.org [Thu, 23 Feb 2012 21:23:11 +0000 (21:23 +0000)]
Add support for InterfaceName in the bindings
https://bugs.webkit.org/show_bug.cgi?id=79384

Reviewed by Adam Barth.

This makes the interface name part of the idl file instead of being hard coded into the code generators.

* bindings/scripts/CodeGenerator.pm:
(GetVisibleInterfaceName): Extracted from CodeGenerator{JS,V8}.pm and changed to look at the extended attribute.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateConstructorDefinition):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore):
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
* dom/DOMCoreException.idl: Set the InterfaceName.
* html/DOMFormData.idl: Ditto.
* plugins/DOMMimeType.idl: Ditto.
* plugins/DOMMimeTypeArray.idl: Ditto.
* plugins/DOMPlugin.idl: Ditto.
* plugins/DOMPluginArray.idl: Ditto.

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

8 years agoREGRESSION(r99076): WebKit pastes the trailing newline into a single-line text field
rniwa@webkit.org [Thu, 23 Feb 2012 21:17:27 +0000 (21:17 +0000)]
REGRESSION(r99076): WebKit pastes the trailing newline into a single-line text field
https://bugs.webkit.org/show_bug.cgi?id=79305

Reviewed by Tony Chang.

Source/WebCore:

The bug was caused by ReplacementFragment::m_hasInterchangeNewlineAtEnd not reset even when
text field's beforeTextInserted event handler removed interchange new lines at the end.
Because the event handler is responsible for trimming new lines, we need to recompute the values
for m_hasInterchangeNewlineAt* after the event dispatch.

Test: editing/input/paste-text-ending-with-interchange-newline.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::ReplacementFragment):

LayoutTests:

Add a regression test. Also make Markup.dump() dump the shadow DOM of the specififed node.

* editing/input/paste-text-ending-with-interchange-newline-expected.txt: Added.
* editing/input/paste-text-ending-with-interchange-newline.html: Added.
* resources/dump-as-markup.js:
(Markup._get):
(Markup._getShadowHostIfPossible):

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

8 years agoMake use of StylePropertySet::setProperty(propertyID, CSSValue).
kling@webkit.org [Thu, 23 Feb 2012 21:15:16 +0000 (21:15 +0000)]
Make use of StylePropertySet::setProperty(propertyID, CSSValue).
<http://webkit.org/b/79374>

Reviewed by Antti Koivisto.

Use the new setProperty() overload that takes a CSSValue in more places. This allows us
to get rid of 1/3 setProperty() overloads that don't expand shorthands.

* css/StylePropertySet.h:
* css/StylePropertySet.cpp:

    Remove the setProperty() overload for specific primitive value types. StyledElement
    can take care of this without help from StylePropertySet.

* dom/StyledElement.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::setInlineStyleProperty):
(WebCore::StyledElement::addPropertyToAttributeStyle):

    Switch some functions over to using the setProperty() overload that takes a CSSValue.

* html/HTMLElement.cpp:
(WebCore::HTMLElement::applyBorderAttributeToStyle):
* html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::collectStyleForAttribute):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::collectStyleForAttribute):
* html/HTMLTablePartElement.cpp:
(WebCore::HTMLTablePartElement::collectStyleForAttribute):

    Use shorthands where possible to shrink the code a bit. Pass border widths as CSS_PX
    values directly instead of making a CSSParser round-trip.

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

8 years ago[chromium] Clean up GraphicsContext3D initialization paths
jamesr@google.com [Thu, 23 Feb 2012 21:09:18 +0000 (21:09 +0000)]
[chromium] Clean up GraphicsContext3D initialization paths
https://bugs.webkit.org/show_bug.cgi?id=79321

Reviewed by Kenneth Russell.

This simplifies the GraphicsContext3D initialization paths down to two simple codepaths, one for offscreen
contexts initialized from WebCore and one for onscreen (compositor) contexts initialized by WebViewImpl or
WebLayerTreeViewImpl.

Offscreen initialization path:
1) WebCore code calls WebCore::GraphicsContext3D::create(), implemented in GraphicsContext3DChromium.cpp
2) GraphicsContext3D::create() instantiates a WebGraphicsContext3D via the static WebKitPlatformSupport interface
3) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

Onscreen initialization path:
1) WebViewImpl or WebLayerTreeViewImpl request an onscreen WebGraphicsContext3D from either their WebViewClient
or WebLayerTreeViewClient, respectively
2) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

There are no other initialization paths. Specifically, we do not support instantiating onscreen contexts from
within WebCore.

* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore):
(WebCore::GraphicsContext3DPrivate::platformTexture):
(WebCore::GraphicsContext3D::create):
* src/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
* src/WebViewImpl.cpp:
(std::getCompositorContextAttributes):
(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::CCLayerTreeHostImplTest::createContext):
(CCLayerTreeHostImplTest):
(WebKit::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h:
(WebCore::createCompositorMockGraphicsContext3D):
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):

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

8 years agoAdd UserGestureIndicator capability to Chromium API.
commit-queue@webkit.org [Thu, 23 Feb 2012 21:06:18 +0000 (21:06 +0000)]
Add UserGestureIndicator capability to Chromium API.
https://bugs.webkit.org/show_bug.cgi?id=77690

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

* WebKit.gyp:
* public/WebScopedUserGesture.h: Added.
* src/WebScopedUserGesture.cpp: Added.

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

8 years ago[wx] Build fixes, update the build system after recent changes.
kevino@webkit.org [Thu, 23 Feb 2012 20:54:16 +0000 (20:54 +0000)]
[wx] Build fixes, update the build system after recent changes.

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

8 years ago[wx] Build fix, use the strings in LocalizedStrings.cpp.
kevino@webkit.org [Thu, 23 Feb 2012 20:52:19 +0000 (20:52 +0000)]
[wx] Build fix, use the strings in LocalizedStrings.cpp.

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

8 years agoAdd missing "Reviewed by" line to change log entry for changeset r108631
dbates@webkit.org [Thu, 23 Feb 2012 20:51:33 +0000 (20:51 +0000)]
Add missing "Reviewed by" line to change log entry for changeset r108631
(https://bugs.webkit.org/show_bug.cgi?id=79252)

The patch landed in changeset r108631 was reviewed by Martin Robinson.

* ChangeLog:

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

8 years ago[wx] Build fix, disable LLINT for now and fix ENABLE defines for it.
kevino@webkit.org [Thu, 23 Feb 2012 20:48:35 +0000 (20:48 +0000)]
[wx] Build fix, disable LLINT for now and fix ENABLE defines for it.

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

8 years ago[wx] Build fix for non-Mac wx builds.
kevino@webkit.org [Thu, 23 Feb 2012 20:47:24 +0000 (20:47 +0000)]
[wx] Build fix for non-Mac wx builds.

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

8 years agoMicrosoft IE fishtank demo causes assertion in RenderLayer::convertToLayerCoords
alokp@chromium.org [Thu, 23 Feb 2012 20:46:31 +0000 (20:46 +0000)]
Microsoft IE fishtank demo causes assertion in RenderLayer::convertToLayerCoords
https://bugs.webkit.org/show_bug.cgi?id=61964

Reviewed by James Robinson.

The assertion is caused with the following callstack:
WebCore::RenderLayer::convertToLayerCoords
WebCore::RenderLayerCompositor::layerWillBeRemoved
WebCore::RenderLayer::removeChild
WebCore::RenderLayer::removeOnlyThisLayer

WebCore::RenderLayer::removeOnlyThisLayer removes itself from the parent
before moving its children to its parent. When WebCore::RenderLayer::convertToLayerCoords
is called for one of the children, it tries to walk to root only to stop at the immediate
parent which was disconnected from the tree in WebCore::RenderLayer::removeOnlyThisLayer.
If removal of layer is delayed until the children has been moved, the ASSERT is avoided.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::removeOnlyThisLayer):

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

8 years agoMissed an if from r108657.
mdelaney@apple.com [Thu, 23 Feb 2012 20:27:31 +0000 (20:27 +0000)]
Missed an if from r108657.

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

8 years agoFix for canvas breakage caused by r108597 from the following:
mdelaney@apple.com [Thu, 23 Feb 2012 20:17:21 +0000 (20:17 +0000)]
Fix for canvas breakage caused by r108597 from the following:
https://bugs.webkit.org/show_bug.cgi?id=79317

Reviewed by Oliver Hunt.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paintsIntoCanvasBuffer):

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

8 years agoWeb Inspector: mad Redo to Cmd+Shift+Z, not Cmd+Y on a Mac.
pfeldman@chromium.org [Thu, 23 Feb 2012 20:06:01 +0000 (20:06 +0000)]
Web Inspector: mad Redo to Cmd+Shift+Z, not Cmd+Y on a Mac.
https://bugs.webkit.org/show_bug.cgi?id=79341

Reviewed by Timothy Hatcher.

* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.handleShortcut):

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 23 Feb 2012 20:02:28 +0000 (20:02 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip a failing test.

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

8 years agoMac build fix after 108629.
rniwa@webkit.org [Thu, 23 Feb 2012 19:58:49 +0000 (19:58 +0000)]
Mac build fix after 108629.

* WebCore.exp.in:

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

8 years ago[chromium] XSS Auditor bypass via javascript url and control characters
tsepez@chromium.org [Thu, 23 Feb 2012 19:46:48 +0000 (19:46 +0000)]
[chromium] XSS Auditor bypass via javascript url and control characters
https://bugs.webkit.org/show_bug.cgi?id=79154

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/xssAuditor/javascript-link-control-char2.html

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

LayoutTests:

* http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt: Added.
* http/tests/security/xssAuditor/javascript-link-control-char2.html: Added.
* platform/chromium/http/tests/security/xssAuditor: Added.
* platform/chromium/http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt: Added.

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

8 years agoDFG's logic for emitting a Flush is too convoluted and contains an inaccurate comment
fpizlo@apple.com [Thu, 23 Feb 2012 19:45:38 +0000 (19:45 +0000)]
DFG's logic for emitting a Flush is too convoluted and contains an inaccurate comment
https://bugs.webkit.org/show_bug.cgi?id=79334

Reviewed by Oliver Hunt.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::flush):

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

8 years agoObject.isSealed / Object.isFrozen don't work for native objects
barraclough@apple.com [Thu, 23 Feb 2012 19:43:07 +0000 (19:43 +0000)]
Object.isSealed / Object.isFrozen don't work for native objects
https://bugs.webkit.org/show_bug.cgi?id=79331

Reviewed by Sam Weinig.

Need to inspect all properties, including static ones.
This exposes a couple of bugs in Array & Arguments:
    - getOwnPropertyDescriptor doesn't correctly report the writable attribute of array length.
    - Arguments object's defineOwnProperty does not handle callee/caller/length correctly.

Source/JavaScriptCore:

* runtime/Arguments.cpp:
(JSC::Arguments::defineOwnProperty):
    - Add handling for callee/caller/length.
* runtime/JSArray.cpp:
(JSC::JSArray::getOwnPropertyDescriptor):
    - report length's writability correctly.
* runtime/ObjectConstructor.cpp:
(JSC::objectConstructorSeal):
(JSC::objectConstructorFreeze):
(JSC::objectConstructorIsSealed):
(JSC::objectConstructorIsFrozen):
    - Add spec-based implementation for non-final objects.

LayoutTests:

* fast/js/preventExtensions-expected.txt:
* fast/js/script-tests/preventExtensions.js:
    - Added tests.

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

8 years agopop of array hole should get from the prototype chain
barraclough@apple.com [Thu, 23 Feb 2012 19:41:12 +0000 (19:41 +0000)]
pop of array hole should get from the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=79338

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* runtime/JSArray.cpp:
(JSC::JSArray::pop):
    - If the fast fast vector case fails, more closely follow the spec.

LayoutTests:

* sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.6_Array_prototype_pop/S15.4.4.6_A4_T1-expected.txt:
    - Checking passing test result.

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

8 years agoJSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
commit-queue@webkit.org [Thu, 23 Feb 2012 19:29:14 +0000 (19:29 +0000)]
JSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
https://bugs.webkit.org/show_bug.cgi?id=79268

Patch by Yong Li <yoli@rim.com> on 2012-02-23
Reviewed by Michael Saboff.

resolveRope() is the only caller of outOfMemory(), and it calls outOfMemory()
after it fails to allocate a buffer for m_value. So outOfMemory() should assert
isRope() rather than !isRope().

* runtime/JSString.cpp:
(JSC::JSString::outOfMemory):

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

8 years ago[CMake] Add WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS macro
paroga@webkit.org [Thu, 23 Feb 2012 19:23:47 +0000 (19:23 +0000)]
[CMake] Add WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS macro
https://bugs.webkit.org/show_bug.cgi?id=79371

Reviewed by Daniel Bates.

.:

Add a new macro to handle the inclusion of the platform specific *.cmake files.
In the future this macro should get expanded to also handle feature specifc
files, like the UseJSC.cmake in WebCore we already have.

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

* CMakeLists.txt:
* shell/CMakeLists.txt:
* wtf/CMakeLists.txt:

Source/WebCore:

* CMakeLists.txt:

Source/WebKit:

* CMakeLists.txt:
* PlatformBlackBerry.cmake: Renamed from Source/WebKit/blackberry/CMakeListsBlackBerry.txt.
* PlatformEfl.cmake: Renamed from Source/WebKit/efl/CMakeListsEfl.txt.
* PlatformWinCE.cmake: Renamed from Source/WebKit/wince/CMakeListsWinCE.txt.

Source/WebKit2:

* CMakeLists.txt:

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

8 years ago[CMake] Add FindDirectX
paroga@webkit.org [Thu, 23 Feb 2012 19:15:49 +0000 (19:15 +0000)]
[CMake] Add FindDirectX
https://bugs.webkit.org/show_bug.cgi?id=79344

Reviewed by Adam Roben.

* Source/cmake/FindDirectX.cmake: Added.

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 23 Feb 2012 19:14:34 +0000 (19:14 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped:
* platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png:
* platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:

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

8 years agoCleanup RenderBlock::moveChildrenTo
jchaffraix@webkit.org [Thu, 23 Feb 2012 19:12:01 +0000 (19:12 +0000)]
Cleanup RenderBlock::moveChildrenTo
https://bugs.webkit.org/show_bug.cgi?id=79319

Reviewed by Eric Seidel.

Refactoring, no change in behavior expected.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::moveChildrenTo):
Removed inline check that was redundant, switched to |while| to a |for|
to show what's going on more closely and adds a call to moveChildTo to
share more code between the 2 functions.

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

8 years ago[CMake] Add FindQuickTimeSDK
paroga@webkit.org [Thu, 23 Feb 2012 19:06:33 +0000 (19:06 +0000)]
[CMake] Add FindQuickTimeSDK
https://bugs.webkit.org/show_bug.cgi?id=79345

Reviewed by Adam Roben.

* Source/cmake/FindQuickTimeSDK.cmake: Added.

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

8 years ago[Qt] Add support for touch cancellation
hausmann@webkit.org [Thu, 23 Feb 2012 19:00:11 +0000 (19:00 +0000)]
[Qt] Add support for touch cancellation
https://bugs.webkit.org/show_bug.cgi?id=79348

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Map Qt touch cancel events to the WebCore equivalent.

No new tests, unskipped existing test for Qt 5.

* platform/PlatformTouchPoint.h:
(PlatformTouchPoint):
* platform/qt/PlatformTouchEventQt.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/qt/PlatformTouchPointQt.cpp:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):

Source/WebKit/qt:

Forward incoming touch cancellation events to the WebCore
event handler.

* Api/qgraphicswebview.cpp:
(QGraphicsWebView::sceneEvent):
* Api/qwebpage.cpp:
(QWebPage::event):
* Api/qwebview.cpp:
(QWebView::event):

Source/WebKit2:

Convert and forward incoming touch cancellation events
to the web process.

* Shared/qt/WebEventFactoryQt.cpp:
(WebKit::webEventTypeForEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::event):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::handleEvent):

Tools:

Added straight-forward touch cancellation event sending to Qt WK1 DRT
and WK2 WTR.

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::touchCancel):
(EventSender::cancelTouchPoint):
* DumpRenderTree/qt/EventSenderQt.h:
(EventSender):
* WebKitTestRunner/EventSenderProxy.h:
(EventSenderProxy):
* WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::EventSendingController::touchCancel):
(WTR):
(WTR::EventSendingController::cancelTouchPoint):
* WebKitTestRunner/InjectedBundle/EventSendingController.h:
(EventSendingController):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/qt/EventSenderProxyQt.cpp:
(WTR::EventSenderProxy::touchCancel):
(WTR):
(WTR::EventSenderProxy::cancelTouchPoint):

LayoutTests:

Moved touch cancel event layout tests from general skip list to the
Qt 4 specific one. The Qt 5 version we depend on has QEvent::TouchCancel, which
is all we need in order to implement touch cancellation in DRT/WTR.

* platform/qt-4.8/Skipped:
* platform/qt/Skipped:

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

8 years ago[WinCairo] Build fix after r108428.
bfulgham@webkit.org [Thu, 23 Feb 2012 18:58:51 +0000 (18:58 +0000)]
[WinCairo] Build fix after r108428.

* win/WebKit2CFLite.def: Add missing export declaration.

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

8 years agoFix the PRI macros used in WTF::String formatters to be compatible with Qt and Visual...
hausmann@webkit.org [Thu, 23 Feb 2012 18:46:32 +0000 (18:46 +0000)]
Fix the PRI macros used in WTF::String formatters to be compatible with Qt and Visual Studio 2005 and newer.
https://bugs.webkit.org/show_bug.cgi?id=76210

Add compile time check for Visual Studio 2005 or newer.

Patch by Aron Rosenberg <arosenberg@logitech.com> on 2012-02-23
Reviewed by Simon Hausmann.

* os-win32/inttypes.h:

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

8 years agoUnreviewed test fix after r108614: Adjust public API after changes.
hausmann@webkit.org [Thu, 23 Feb 2012 18:43:46 +0000 (18:43 +0000)]
Unreviewed test fix after r108614: Adjust public API after changes.

* UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:

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

8 years ago[Qt] Build fix. Qt WebKit2 can not be compiled due to QtWebPageEventHandler.
ossy@webkit.org [Thu, 23 Feb 2012 18:35:45 +0000 (18:35 +0000)]
[Qt] Build fix. Qt WebKit2 can not be compiled due to QtWebPageEventHandler.
https://bugs.webkit.org/show_bug.cgi?id=79335

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-02-23
Reviewed by Kenneth Rohde Christiansen.

In the upcoming Qt 5 builds the convenient setInputMethodHints method on QQuickItem
will be removed. There's no need for us to use it, we can implement passing the hints
to the input method right away in our re-implementation of inputMethodQuery, which works
with old and newer Qt 5 builds.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::inputMethodQuery):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::updateTextInputState):

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

8 years agoUnreviewed. Rebaseline binding test files.
arv@chromium.org [Thu, 23 Feb 2012 18:15:49 +0000 (18:15 +0000)]
Unreviewed. Rebaseline binding test files.

* bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
(webkit_dom_test_interface_supplemental_method1):
(webkit_dom_test_interface_supplemental_method2):
(webkit_dom_test_interface_get_supplemental_str1):
(webkit_dom_test_interface_get_supplemental_str2):
(webkit_dom_test_interface_set_supplemental_str2):
(webkit_dom_test_interface_get_supplemental_node):
(webkit_dom_test_interface_set_supplemental_node):
(webkit_dom_test_interface_set_property):
(webkit_dom_test_interface_get_property):

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

8 years agoCrash in ScrollElasticityController::snapRubberBandTimerFired()
andersca@apple.com [Thu, 23 Feb 2012 18:01:30 +0000 (18:01 +0000)]
Crash in ScrollElasticityController::snapRubberBandTimerFired()
https://bugs.webkit.org/show_bug.cgi?id=79372
<rdar://problem/10915193>

Reviewed by Andreas Kling.

Invalidate the rubber-band timer in the ScrollingTreeNodeMac destructor.

* page/scrolling/mac/ScrollingTreeNodeMac.h:
(ScrollingTreeNodeMac):
* page/scrolling/mac/ScrollingTreeNodeMac.mm:
(WebCore::ScrollingTreeNodeMac::~ScrollingTreeNodeMac):
(WebCore):

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

8 years agoUnreviewed, rolling out r108626.
commit-queue@webkit.org [Thu, 23 Feb 2012 17:32:01 +0000 (17:32 +0000)]
Unreviewed, rolling out r108626.
http://trac.webkit.org/changeset/108626
https://bugs.webkit.org/show_bug.cgi?id=79370

broke qt-wk2 bot, somehow the workaround does not work on the
bot (Requested by Ossy on #webkit).

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

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::handleStatusChanged):
(WTR::PlatformWebView::resizeTo):

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

8 years agoWeb Inspector: add experiment that loads stylesheets as links
pfeldman@chromium.org [Thu, 23 Feb 2012 17:28:33 +0000 (17:28 +0000)]
Web Inspector: add experiment that loads stylesheets as links
https://bugs.webkit.org/show_bug.cgi?id=79340

Reviewed by Timothy Hatcher.

* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/View.js:
(WebInspector.View.prototype._doLoadCSS):

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

8 years agoUnreviewed WinCE build fix after r108462.
paroga@webkit.org [Thu, 23 Feb 2012 16:54:17 +0000 (16:54 +0000)]
Unreviewed WinCE build fix after r108462.

* WebCoreSupport/EditorClientWinCE.h:
(EditorClientWinCE):

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

8 years agoUnreviewed, rolling out r108627 and r108630.
peter@chromium.org [Thu, 23 Feb 2012 16:44:50 +0000 (16:44 +0000)]
Unreviewed, rolling out r108627 and r108630.
https://bugs.webkit.org/show_bug.cgi?id=79367

ffmpeg is creating issues and was just reverted upstream as well.

* DEPS:

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

8 years ago[WK2][GTK] WebProcess SIGSEVs due to incorrect clipboard handling
sergio@webkit.org [Thu, 23 Feb 2012 16:38:02 +0000 (16:38 +0000)]
[WK2][GTK] WebProcess SIGSEVs due to incorrect clipboard handling
https://bugs.webkit.org/show_bug.cgi?id=79252

Do not execute clipboard callbacks after the Frame associated with
it is destroyed.

This change is already covered by the TestWebViewEditor unit tests
(among others), they hang (because WebProcess dies) without this
patch in Debug builds.

* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(EditorClientFrameDestructionObserver):
(WebKit::EditorClientFrameDestructionObserver::EditorClientFrameDestructionObserver):
(WebKit::EditorClientFrameDestructionObserver::frameDestroyed):
(WebKit::EditorClientFrameDestructionObserver::destroyOnClosureFinalization):
(WebKit):
(WebKit::WebEditorClient::setSelectionPrimaryClipboardIfNeeded):

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

8 years agoUnreviewed build fix. Remove the ffmpeg binary directory from the
peter@chromium.org [Thu, 23 Feb 2012 16:19:21 +0000 (16:19 +0000)]
Unreviewed build fix. Remove the ffmpeg binary directory from the
Chromium-Windows DEPS file, following the commit done in the
Chromium repository:
http://src.chromium.org/viewvc/chrome?view=rev&revision=123123

* DEPS:

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

8 years agoMac build fix after r108615
aroben@apple.com [Thu, 23 Feb 2012 16:08:10 +0000 (16:08 +0000)]
Mac build fix after r108615

* WebCore.exp.in: Added a missing export.

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

8 years ago[GTK] DRT doesn't support scheduleAsynchronousKeyDown.
commit-queue@webkit.org [Thu, 23 Feb 2012 15:57:52 +0000 (15:57 +0000)]
[GTK] DRT doesn't support scheduleAsynchronousKeyDown.
https://bugs.webkit.org/show_bug.cgi?id=78481

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-02-23
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Added a new API to deliver all mutations explicitly.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::deliverAllMutationsIfNecessary):
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Tools:

Extracted shareable code from keyDownCallback and then added createKeyPressEvent
to create gdk press key event.
Added sendKeyDown and sendAsynchronousKeyDown to evaluate keyDown event directly
and asynchronously. Eventually, sendAsynchronousKeyDown calls sendKeyDown.

* DumpRenderTree/gtk/EventSender.cpp:
(scheduleAsynchronousClickCallback):
(createKeyPressEvent):
(sendKeyDown):
(keyDownCallback):
(sendAsynchronousKeyDown):
(scheduleAsynchronousKeyDownCallback):

LayoutTests:

Removed following skipped tests.
fast/mutation/end-of-task-delivery.html
fast/mutation/inline-event-listener.html

* platform/gtk/Skipped:

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

8 years agoUnreviewed. Rolled DEPS.
peter@chromium.org [Thu, 23 Feb 2012 15:30:25 +0000 (15:30 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

8 years ago[Qt][WK2] WebKitTestRunner should use 480x360 sized view for W3C SVG tests
kbalazs@webkit.org [Thu, 23 Feb 2012 15:28:39 +0000 (15:28 +0000)]
[Qt][WK2] WebKitTestRunner should use 480x360 sized view for W3C SVG tests
https://bugs.webkit.org/show_bug.cgi?id=76546

Reviewed by Simon Hausmann.

Co-authored with Simon Hausmann.

Revert the workaround introduced in r107868 and reintroduce
the qml binding so we can test the code path that we are more
interested in. The reason that it did not work before is that
we don't have an active platform window which we now workaround
by propagating the resize through QWindowSystemInterface.

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::handleStatusChanged):
(WTR::PlatformWebView::resizeTo):

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

8 years ago[Qt] Page doesn't get repainted while panning is in progress https://bugs.webkit...
kenneth@webkit.org [Thu, 23 Feb 2012 15:10:30 +0000 (15:10 +0000)]
[Qt] Page doesn't get repainted while panning is in progress https://bugs.webkit.org/show_bug.cgi?id=78602

Reviewed by Simon Hausmann.

The tiling code needed the current visibleContentsRect in order to be
able to create tiles, so we now make sure it gets it. We also needed
to make sure to set the trajectory vector while panning and while the
flicking engine was animating kinetic scrolling.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewFlickablePrivate::_q_updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::_q_viewportTrajectoryVectorChanged):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::setVisibleContentRectTrajectoryVector):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::setVisibleContentRectTrajectoryVector):
* UIProcess/DrawingAreaProxyImpl.h:
(DrawingAreaProxyImpl):
* UIProcess/LayerTreeHostProxy.h:
(LayerTreeHostProxy):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::setVisibleContentRectTrajectoryVector):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
(WebKit::QtViewportInteractionEngine::flickableMovingStateChanged):
(WebKit):
(WebKit::QtViewportInteractionEngine::panMoveStarted):
(WebKit::QtViewportInteractionEngine::panMoveEnded):
(WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
(WebKit::QtViewportInteractionEngine::panGestureRequestUpdate):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setVisibleContentRectTrajectoryVector):
* WebProcess/WebPage/LayerTreeHost.messages.in:
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):
(WebKit::LayerTreeHostQt::setVisibleContentRectTrajectoryVector):
* WebProcess/WebPage/qt/LayerTreeHostQt.h:
(LayerTreeHostQt):

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

8 years agoUnreviewed, rolling out r108577.
commit-queue@webkit.org [Thu, 23 Feb 2012 14:58:07 +0000 (14:58 +0000)]
Unreviewed, rolling out r108577.
http://trac.webkit.org/changeset/108577
https://bugs.webkit.org/show_bug.cgi?id=79359

It doesn't work as expected (Requested by Ossy on #webkit).

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

Tools:

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::postEvent):
* DumpRenderTree/qt/EventSenderQt.h:
(EventSender):

LayoutTests:

* platform/qt/Skipped:

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

8 years agoMove MediaStream related declarations from DOMWindow to DOMWindowMediaStream
abarth@webkit.org [Thu, 23 Feb 2012 12:26:05 +0000 (12:26 +0000)]
Move MediaStream related declarations from DOMWindow to DOMWindowMediaStream
https://bugs.webkit.org/show_bug.cgi?id=79343

Reviewed by Eric Seidel.

These declarations belong in the MEDIA_STREAM module.

* GNUmakefile.list.am:
* WebCore.gypi:
* mediastream/DOMWindowMediaStream.idl: Added.
* page/DOMWindow.idl:

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

8 years ago[CMAKE][WK2] Cleanup WebKit2/CMakeLists.txt.
paroga@webkit.org [Thu, 23 Feb 2012 09:32:40 +0000 (09:32 +0000)]
[CMAKE][WK2] Cleanup WebKit2/CMakeLists.txt.
https://bugs.webkit.org/show_bug.cgi?id=76122

Reviewed by Eric Seidel.

* CMakeLists.txt: Removed hardcoded WTF_USE_JSC preprocessor definition.

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

8 years ago[WK2] Trivial build fix after r108615.
hausmann@webkit.org [Thu, 23 Feb 2012 08:51:23 +0000 (08:51 +0000)]
[WK2] Trivial build fix after r108615.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):

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

8 years ago[GTK] FullScreen signals
philn@webkit.org [Thu, 23 Feb 2012 08:45:56 +0000 (08:45 +0000)]
[GTK] FullScreen signals
https://bugs.webkit.org/show_bug.cgi?id=76181

Reviewed by Martin Robinson.

Source/WebKit/gtk:

Added entering-fullscreen and leaving-fullscreen signals, meant to
be used by the user agent to be notified when an element requests
full screen display and when the full screen display is to be
disabled.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::supportsFullScreenForElement):
(WebKit::onFullscreenGtkKeyPressEvent):
(WebKit::ChromeClient::cancelFullScreen):
(WebKit::ChromeClient::enterFullScreenForElement):
(WebKit::ChromeClient::exitFullScreenForElement):
* WebCoreSupport/ChromeClientGtk.h:
* tests/testwebview.c:
* webkit/webkitwebview.cpp:
(webkit_web_view_real_entering_fullscreen):
(webkit_web_view_real_leaving_fullscreen):
(webkit_web_view_class_init):
* webkit/webkitwebview.h:

Tools:

Use the two new entering/leaving fullscreen signals to hide/show
the tool bar, the status bar and ask the user's permission before
entering fullscreen.

* GtkLauncher/main.c:
(webViewFullscreenMessageWindowClose):
(webViewWindowStateEvent):
(hide_widget):
(show_widget):
(webViewEnteringFullScreen):
(webViewLeavingFullScreen):
(createBrowser):
(createWindow):

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

8 years ago[Chromium] Unreviewed test expectations update for fast/css/font-face-default-font...
bashi@chromium.org [Thu, 23 Feb 2012 08:32:07 +0000 (08:32 +0000)]
[Chromium] Unreviewed test expectations update for fast/css/font-face-default-font.html

* platform/chromium-linux/fast/css/font-face-default-font-expected.txt: Removed.
* platform/chromium-mac-leopard/fast/css/font-face-default-font-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/css/font-face-default-font-expected.png:
* platform/chromium-mac-snowleopard/fast/css/font-face-default-font-expected.txt: Removed.
* platform/chromium-win/fast/css/font-face-default-font-expected.png:
* platform/chromium-win/fast/css/font-face-default-font-expected.txt:

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 23 Feb 2012 08:24:48 +0000 (08:24 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped:
* platform/qt/fast/multicol/span/clone-flexbox-expected.png: Added.
* platform/qt/fast/multicol/span/clone-flexbox-expected.txt: Added.
* platform/qt/fast/multicol/span/clone-summary-expected.png: Added.
* platform/qt/fast/multicol/span/clone-summary-expected.txt: Added.
* platform/qt/svg/custom/circle-move-invalidation-expected.png:
* platform/qt/svg/custom/circle-move-invalidation-expected.txt:
* platform/qt/svg/repaint/inner-svg-change-viewPort-relative-expected.png: Added.
* platform/qt/svg/repaint/inner-svg-change-viewPort-relative-expected.txt: Added.
* platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:

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

8 years agoSkipped a test that uses Chromium-only LayoutTestController functionality.
mitz@apple.com [Thu, 23 Feb 2012 07:36:44 +0000 (07:36 +0000)]
Skipped a test that uses Chromium-only LayoutTestController functionality.

Rubber-stamped by Joseph Pecoraro.

* platform/mac/Skipped: Added fast/dom/title-directionality-removeChild.html.

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

8 years agoEvery call to RenderObject::setAnimatableStyle() iterates through all m_compositeAnim...
igor.o@sisa.samsung.com [Thu, 23 Feb 2012 07:36:38 +0000 (07:36 +0000)]
Every call to RenderObject::setAnimatableStyle() iterates through all m_compositeAnimations: potentially O(N^2)
https://bugs.webkit.org/show_bug.cgi?id=38025

This patchs implements updateAnimationTimerForRenderer, it just checks the timeToNextService for
the current RenderObject reducing the amount of iterations.

Reviewed by Simon Fraser.

* page/animation/AnimationController.cpp:
(WebCore):
(WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
(WebCore::AnimationController::updateAnimations):
* page/animation/AnimationControllerPrivate.h:
(AnimationControllerPrivate):

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

8 years agoNOTIFICATIONS should be implemented as PageSupplement
commit-queue@webkit.org [Thu, 23 Feb 2012 07:29:30 +0000 (07:29 +0000)]
NOTIFICATIONS should be implemented as PageSupplement
https://bugs.webkit.org/show_bug.cgi?id=79052

Patch by Hajime Morrita <morrita@chromium.org> on 2012-02-22
Reviewed by Adam Barth.

Source/WebCore:

Turned NotificationController to a PageSupplement.

No new tests. No behavior change.

* notifications/NotificationController.cpp:
(WebCore::NotificationController::clientFrom):
(WebCore):
(WebCore::NotificationController::supplementName):
(WebCore::provideNotification):
* notifications/NotificationController.h:
(NotificationController):
(WebCore::NotificationController::from):
* notifications/NotificationPresenter.h:
(WebCore):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::webkitNotifications):
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::PageClients::PageClients):
* page/Page.h:
(WebCore):
(PageClients):
(Page):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit/qt:

* Api/qwebpage.cpp:
(QWebPagePrivate::QWebPagePrivate):

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

8 years ago[Qt][WK2] navigationType is missing in new API
commit-queue@webkit.org [Thu, 23 Feb 2012 07:22:03 +0000 (07:22 +0000)]
[Qt][WK2] navigationType is missing in new API
https://bugs.webkit.org/show_bug.cgi?id=78867

Patch by Michael Tyutyunik <michael.tyutyunik@nokia.com> on 2012-02-22
Reviewed by Simon Hausmann.

In QtWebPagePolicyClient::decidePolicyForNavigationAction()
navigationType argument is dropped by mistake. Adding it back
and make it available through NavigationRequest.

* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qwebnavigationrequest.cpp:
(QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
(QWebNavigationRequestPrivate):
(QWebNavigationRequest::QWebNavigationRequest):
(QWebNavigationRequest::navigationType):
* UIProcess/API/qt/qwebnavigationrequest_p.h:
* UIProcess/qt/QtWebPagePolicyClient.cpp:
(QtWebPagePolicyClient::decidePolicyForNavigationAction):
(toQuickWebViewNavigationType):
* UIProcess/qt/QtWebPagePolicyClient.h:
(QtWebPagePolicyClient):

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

8 years ago[Chromium][V8] Support Uint8ClampedArray in postMessage
dslomov@google.com [Thu, 23 Feb 2012 07:04:54 +0000 (07:04 +0000)]
[Chromium][V8] Support Uint8ClampedArray in postMessage
https://bugs.webkit.org/show_bug.cgi?id=79291.

Reviewed by Kenneth Russell.

Source/WebCore:

Covered by existing tests.

* bindings/v8/SerializedScriptValue.cpp:

LayoutTests:

* platform/chromium/fast/canvas/webgl/array-message-passing-expected.txt: Removed.

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

8 years agoMove <input type=radio> tests to fast/forms/radio/
tkent@chromium.org [Thu, 23 Feb 2012 06:50:04 +0000 (06:50 +0000)]
Move <input type=radio> tests to fast/forms/radio/
https://bugs.webkit.org/show_bug.cgi?id=78678

Reviewed by Kentaro Hara.

* fast/forms/ValidityState-valueMissing-radio-expected.txt: Removed.
* fast/forms/ValidityState-valueMissing-radio.html: Removed.
* fast/forms/indeterminate-radio-expected.txt: Removed.
* fast/forms/indeterminate-radio.html: Removed.
* fast/forms/input-radio-checked-tab-expected.txt: Removed.
* fast/forms/input-radio-checked-tab.html: Removed.
* fast/forms/interactive-validation-required-radio-expected.txt: Removed.
* fast/forms/interactive-validation-required-radio.html: Removed.
* fast/forms/radio-attr-order-expected.txt: Removed.
* fast/forms/radio-attr-order.html: Removed.
* fast/forms/radio-button-no-change-event-expected.txt: Removed.
* fast/forms/radio-button-no-change-event.html: Removed.
* fast/forms/radio-check-click-and-drag-expected.txt: Removed.
* fast/forms/radio-check-click-and-drag.html: Removed.
* fast/forms/radio-default-value-expected.txt: Removed.
* fast/forms/radio-default-value.html: Removed.
* fast/forms/radio-group-keyboard-change-event-expected.txt: Removed.
* fast/forms/radio-group-keyboard-change-event.html: Removed.
* fast/forms/radio-nested-labels-expected.txt: Removed.
* fast/forms/radio-nested-labels.html: Removed.
* fast/forms/radio-no-theme-padding-expected.txt: Removed.
* fast/forms/radio-no-theme-padding.html: Removed.
* fast/forms/radio-remove-form-attr-expected.txt: Removed.
* fast/forms/radio-remove-form-attr.html: Removed.
* fast/forms/radio/ValidityState-valueMissing-radio-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-valueMissing-radio-expected.txt.
* fast/forms/radio/ValidityState-valueMissing-radio.html: Copied from LayoutTests/fast/forms/ValidityState-valueMissing-radio.html.
* fast/forms/radio/indeterminate-radio-expected.txt: Copied from LayoutTests/fast/forms/indeterminate-radio-expected.txt.
* fast/forms/radio/indeterminate-radio.html: Copied from LayoutTests/fast/forms/indeterminate-radio.html.
* fast/forms/radio/input-radio-checked-tab-expected.txt: Copied from LayoutTests/fast/forms/input-radio-checked-tab-expected.txt.
* fast/forms/radio/input-radio-checked-tab.html: Copied from LayoutTests/fast/forms/input-radio-checked-tab.html.
* fast/forms/radio/interactive-validation-required-radio-expected.txt: Copied from LayoutTests/fast/forms/interactive-validation-required-radio-expected.txt.
* fast/forms/radio/interactive-validation-required-radio.html: Copied from LayoutTests/fast/forms/interactive-validation-required-radio.html.
* fast/forms/radio/radio-attr-order-expected.txt: Copied from LayoutTests/fast/forms/radio-attr-order-expected.txt.
* fast/forms/radio/radio-attr-order.html: Copied from LayoutTests/fast/forms/radio-attr-order.html.
* fast/forms/radio/radio-button-no-change-event-expected.txt: Copied from LayoutTests/fast/forms/radio-button-no-change-event-expected.txt.
* fast/forms/radio/radio-button-no-change-event.html: Copied from LayoutTests/fast/forms/radio-button-no-change-event.html.
* fast/forms/radio/radio-check-click-and-drag-expected.txt: Copied from LayoutTests/fast/forms/radio-check-click-and-drag-expected.txt.
* fast/forms/radio/radio-check-click-and-drag.html: Copied from LayoutTests/fast/forms/radio-check-click-and-drag.html.
* fast/forms/radio/radio-default-value-expected.txt: Copied from LayoutTests/fast/forms/radio-default-value-expected.txt.
* fast/forms/radio/radio-default-value.html: Copied from LayoutTests/fast/forms/radio-default-value.html.
* fast/forms/radio/radio-group-keyboard-change-event-expected.txt: Copied from LayoutTests/fast/forms/radio-group-keyboard-change-event-expected.txt.
* fast/forms/radio/radio-group-keyboard-change-event.html: Copied from LayoutTests/fast/forms/radio-group-keyboard-change-event.html.
* fast/forms/radio/radio-nested-labels-expected.txt: Copied from LayoutTests/fast/forms/radio-nested-labels-expected.txt.
* fast/forms/radio/radio-nested-labels.html: Copied from LayoutTests/fast/forms/radio-nested-labels.html.
* fast/forms/radio/radio-no-theme-padding-expected.txt: Copied from LayoutTests/fast/forms/radio-no-theme-padding-expected.txt.
* fast/forms/radio/radio-no-theme-padding.html: Copied from LayoutTests/fast/forms/radio-no-theme-padding.html.
* fast/forms/radio/radio-remove-form-attr-expected.txt: Copied from LayoutTests/fast/forms/radio-remove-form-attr-expected.txt.
* fast/forms/radio/radio-remove-form-attr.html: Copied from LayoutTests/fast/forms/radio-remove-form-attr.html.
* fast/forms/radio/radio_checked-expected.txt: Copied from LayoutTests/fast/forms/radio_checked-expected.txt.
* fast/forms/radio/radio_checked.html: Copied from LayoutTests/fast/forms/radio_checked.html.
* fast/forms/radio/radio_checked_dynamic-expected.txt: Copied from LayoutTests/fast/forms/radio_checked_dynamic-expected.txt.
* fast/forms/radio/radio_checked_dynamic.html: Copied from LayoutTests/fast/forms/radio_checked_dynamic.html.
* fast/forms/radio/radio_checked_name-expected.txt: Copied from LayoutTests/fast/forms/radio_checked_name-expected.txt.
* fast/forms/radio/radio_checked_name.html: Copied from LayoutTests/fast/forms/radio_checked_name.html.
* fast/forms/radio/remove-radio-button-assert-expected.txt: Copied from LayoutTests/fast/forms/remove-radio-button-assert-expected.txt.
* fast/forms/radio/remove-radio-button-assert.html: Copied from LayoutTests/fast/forms/remove-radio-button-assert.html.
* fast/forms/radio/state-restore-radio-group-expected.txt: Copied from LayoutTests/fast/forms/state-restore-radio-group-expected.txt.
* fast/forms/radio/state-restore-radio-group.html: Copied from LayoutTests/fast/forms/state-restore-radio-group.html.
* fast/forms/radio_checked-expected.txt: Removed.
* fast/forms/radio_checked.html: Removed.
* fast/forms/radio_checked_dynamic-expected.txt: Removed.
* fast/forms/radio_checked_dynamic.html: Removed.
* fast/forms/radio_checked_name-expected.txt: Removed.
* fast/forms/radio_checked_name.html: Removed.
* fast/forms/remove-radio-button-assert-expected.txt: Removed.
* fast/forms/remove-radio-button-assert.html: Removed.
* fast/forms/state-restore-radio-group-expected.txt: Removed.
* fast/forms/state-restore-radio-group.html: Removed.

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

8 years agoUpdated expected test results for the addition of -webkit-line-align (r108133) and the
mitz@apple.com [Thu, 23 Feb 2012 06:40:55 +0000 (06:40 +0000)]
Updated expected test results for the addition of -webkit-line-align (r108133) and the
renaming of -webkit-line-grid-snap (r107289).

Rubber-stamped by Andy Estes.

* platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

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

8 years agoEnable Geolocation bindings for GObject
haraken@chromium.org [Thu, 23 Feb 2012 06:26:07 +0000 (06:26 +0000)]
Enable Geolocation bindings for GObject
https://bugs.webkit.org/show_bug.cgi?id=79293

Reviewed by Adam Barth.

This patch adds "WebCore::" to supplemental method calls.
This will solve the GTK build failure we have observed in the Geolocation API,
and thus this patch enables the Geolocation API.

* Modules/geolocation/NavigatorGeolocation.idl:
* bindings/scripts/CodeGeneratorGObject.pm:
(GenerateProperty):
(GenerateFunction):

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

8 years agoREGRESSION (r107516): fast/css/font-face-default-font.html is failing
bashi@chromium.org [Thu, 23 Feb 2012 06:13:01 +0000 (06:13 +0000)]
REGRESSION (r107516): fast/css/font-face-default-font.html is failing
https://bugs.webkit.org/show_bug.cgi?id=79260

Add @font-face with "font-style: italic;" so that affecting the rule
for italic text.

Reviewed by Dan Bernstein.

* fast/css/font-face-default-font.html:

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

8 years ago[Refactoring] Align supplementName() values.
morrita@google.com [Thu, 23 Feb 2012 05:58:31 +0000 (05:58 +0000)]
[Refactoring] Align supplementName() values.
https://bugs.webkit.org/show_bug.cgi?id=79311

Reviewed by Adam Barth.

No new tests. No behavioral change.

* dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::supplementName):
* mediastream/UserMediaController.cpp:
(WebCore::UserMediaController::supplementName):

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

8 years agoUnreviewed, rolling out r108602.
yutak@chromium.org [Thu, 23 Feb 2012 05:46:34 +0000 (05:46 +0000)]
Unreviewed, rolling out r108602.
http://trac.webkit.org/changeset/108602
https://bugs.webkit.org/show_bug.cgi?id=78878

Caused a couple of layout test failures on Chromium bots.

Source/WebCore:

* dom/Element.cpp:
(WebCore::Element::childShouldCreateRenderer):
* dom/Element.h:
(Element):
* dom/Node.h:
(WebCore::Node::childShouldCreateRenderer):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::shouldCreateRenderer):
* dom/NodeRenderingContext.h:
(NodeRenderingContext):
* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::childShouldCreateRenderer):
* html/HTMLDetailsElement.h:
(HTMLDetailsElement):
* html/HTMLMediaElement.cpp:
(WebCore):
* html/HTMLMediaElement.h:
(HTMLMediaElement):
* html/HTMLMeterElement.cpp:
* html/HTMLMeterElement.h:
(HTMLMeterElement):
* html/HTMLProgressElement.cpp:
* html/HTMLProgressElement.h:
(HTMLProgressElement):
* html/HTMLSelectElement.cpp:
* html/HTMLSelectElement.h:
(HTMLSelectElement):
* html/HTMLSummaryElement.cpp:
* html/HTMLSummaryElement.h:
(HTMLSummaryElement):
* html/HTMLTextFormControlElement.cpp:
* html/HTMLTextFormControlElement.h:
(HTMLTextFormControlElement):
* rendering/RenderButton.cpp:
(WebCore::RenderButton::canHaveChildren):
(WebCore):
* rendering/RenderButton.h:
(RenderButton):
* rendering/RenderListBox.h:
(WebCore::RenderListBox::canHaveChildren):
(RenderListBox):
* rendering/RenderMedia.h:
* rendering/RenderMenuList.h:
(WebCore::RenderMenuList::canHaveChildren):
* rendering/RenderMeter.h:
(WebCore::RenderMeter::canHaveChildren):
* rendering/RenderProgress.h:
(WebCore::RenderProgress::canHaveChildren):
* rendering/RenderTextControl.h:
(WebCore::RenderTextControl::canHaveChildren):
* rendering/svg/RenderSVGRoot.h:
(WebCore::RenderSVGRoot::canHaveChildren):
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::childShouldCreateRenderer):
* svg/SVGAElement.h:
(SVGAElement):
* svg/SVGAltGlyphElement.cpp:
(WebCore::SVGAltGlyphElement::childShouldCreateRenderer):
* svg/SVGAltGlyphElement.h:
(SVGAltGlyphElement):
* svg/SVGDocument.cpp:
(WebCore::SVGDocument::childShouldCreateRenderer):
* svg/SVGDocument.h:
(SVGDocument):
* svg/SVGElement.cpp:
(WebCore::SVGElement::childShouldCreateRenderer):
* svg/SVGElement.h:
(SVGElement):
* svg/SVGForeignObjectElement.cpp:
(WebCore::SVGForeignObjectElement::childShouldCreateRenderer):
* svg/SVGForeignObjectElement.h:
(SVGForeignObjectElement):
* svg/SVGSwitchElement.cpp:
(WebCore::SVGSwitchElement::childShouldCreateRenderer):
* svg/SVGSwitchElement.h:
(SVGSwitchElement):
* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::childShouldCreateRenderer):
* svg/SVGTRefElement.h:
(SVGTRefElement):
* svg/SVGTSpanElement.cpp:
(WebCore::SVGTSpanElement::childShouldCreateRenderer):
* svg/SVGTSpanElement.h:
(SVGTSpanElement):
* svg/SVGTextElement.cpp:
(WebCore::SVGTextElement::childShouldCreateRenderer):
* svg/SVGTextElement.h:
(SVGTextElement):
* svg/SVGTextPathElement.cpp:
(WebCore::SVGTextPathElement::childShouldCreateRenderer):
* svg/SVGTextPathElement.h:

LayoutTests:

* fast/dom/shadow/shadow-on-image-expected.html: Removed.
* fast/dom/shadow/shadow-on-image.html: Removed.
* platform/chromium/test_expectations.txt:

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

8 years agoCrash in RenderBlock::addChildIgnoringAnonymousColumnBlocks.
inferno@chromium.org [Thu, 23 Feb 2012 05:36:11 +0000 (05:36 +0000)]
Crash in RenderBlock::addChildIgnoringAnonymousColumnBlocks.
https://bugs.webkit.org/show_bug.cgi?id=79043

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/runin/runin-div-before-child.html
       fast/runin/runin-table-before-child.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): handle
the case of run-in elements and strengthen code to handle cases where
beforeChild is incorrectly set.
* rendering/RenderObject.h: remove anonymousContainer function since
the new logic in RenderBlock does not need it.

LayoutTests:

* fast/runin/runin-div-before-child-expected.png: Added.
* fast/runin/runin-div-before-child-expected.txt: Added.
* fast/runin/runin-div-before-child.html: Added.
* fast/runin/runin-table-before-child-expected.png: Added.
* fast/runin/runin-table-before-child-expected.txt: Added.
* fast/runin/runin-table-before-child.html: Added.

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

8 years agoMake ShadowRootList manage a node distribution.
hayato@chromium.org [Thu, 23 Feb 2012 05:14:17 +0000 (05:14 +0000)]
Make ShadowRootList manage a node distribution.
https://bugs.webkit.org/show_bug.cgi?id=79008

Reviewed by Dimitri Glazkov.

The result of node distributions is currently stored in
ShadowRoot. To support multiple ShadowRoots, such node distribution
information should be managed in one place per shadow host. Now
ShadowRootList takes this responsibility on behalf of owing
multiple ShadowRoots. Clients should ask ShadowRootList for such
information, not for each ShadowRoot.

No tests. No change in behavior.

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::NodeRenderingContext):
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::create):
(WebCore::ShadowRoot::attach):
* dom/ShadowRoot.h:
(ShadowRoot):
* dom/ShadowRootList.cpp:
(WebCore::ShadowRootList::insertionPointFor):
(WebCore):
(WebCore::ShadowRootList::isSelectorActive):
(WebCore::ShadowRootList::ensureSelector):
* dom/ShadowRootList.h:
(WebCore):
(ShadowRootList):
(WebCore::ShadowRootList::hasShadowRoot):
(WebCore::ShadowRootList::youngestShadowRoot):
(WebCore::ShadowRootList::oldestShadowRoot):
(WebCore::ShadowRootList::selector):
(WebCore::ShadowRootList::host):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
* html/shadow/HTMLContentSelector.cpp:
(WebCore::HTMLContentSelector::willSelectOver):
* html/shadow/HTMLContentSelector.h:
(HTMLContentSelector):

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

8 years agoAdd multi channels support in AudioBus and AudioBufferSourceNode
commit-queue@webkit.org [Thu, 23 Feb 2012 04:51:43 +0000 (04:51 +0000)]
Add multi channels support in AudioBus and AudioBufferSourceNode
https://bugs.webkit.org/show_bug.cgi?id=79017

Patch by Wei James <james.wei@intel.com> on 2012-02-22
Reviewed by Chris Rogers.

Source/WebCore:

Tests: webaudio/up-mixing-mono-51.html
       webaudio/up-mixing-mono-stereo.html
       webaudio/up-mixing-stereo-51.html

* platform/audio/AudioBus.cpp:
(WebCore::AudioBus::copyFrom):
(WebCore::AudioBus::sumFrom):
(WebCore::AudioBus::processWithGainFromMonoStereo):
(WebCore::AudioBus::processWithGainFrom):

LayoutTests:

* webaudio/resources/audio-testing.js:
(writeAudioBuffer):
* webaudio/resources/mix-testing.js: Added.
(createToneBuffer):
* webaudio/up-mixing-mono-51-expected.wav: Added.
* webaudio/up-mixing-mono-51.html: Added.
* webaudio/up-mixing-mono-stereo-expected.wav: Added.
* webaudio/up-mixing-mono-stereo.html: Added.
* webaudio/up-mixing-stereo-51-expected.wav: Added.
* webaudio/up-mixing-stereo-51.html: Added.

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

8 years ago[Supplemental] should support constants
haraken@chromium.org [Thu, 23 Feb 2012 04:24:02 +0000 (04:24 +0000)]
[Supplemental] should support constants
https://bugs.webkit.org/show_bug.cgi?id=79303

Reviewed by Adam Barth.

Given that we have

    interface [Supplemental=Y] X { constant int A = 123; }

then the code generator should generate

    X::A

to refer to the constant. However, the current code generator generates Y::A instead.
This patch fixes it.

Test: bindings/scripts/test/TestSupplemental.idl

* bindings/scripts/CodeGenerator.pm: Modified as described above.
(GenerateCompileTimeCheckForEnumsIfNeeded):

* bindings/scripts/test/JS/JSTestInterface.cpp: Updated run-bindings-tests results.
(WebCore):
* bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.
(WebCore):

* page/DOMWindow.h: Moved DOMWindow::FileSystemType to DOMWindowFileSystem::FileSystemType.
(DOMWindow):
* fileapi/DOMWindowFileSystem.h: Ditto.
(DOMWindowFileSystem):
* fileapi/DOMWindowFileSystem.cpp: Ditto.
(WebCore):

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

8 years agoAdding a ShadowRoot to image-backed element causes a crash
morrita@google.com [Thu, 23 Feb 2012 04:01:43 +0000 (04:01 +0000)]
Adding a ShadowRoot to image-backed element causes a crash
https://bugs.webkit.org/show_bug.cgi?id=78878

Reviewed by Dimitri Glazkov.

Source/WebCore:

The crash happened because NodeRenderingContext tried to append a
child to a renderer regardless one isn't capable of holding any
children if it appears in the shadow attaching phase. RenderImage
is one of such renderer classes which aren't capable.

NodeRenderingContext decide whether the contextual node as a child
can create its renderer based on RenderObject::canHaveChildren()
and Node::childShouldCreateRenderer(). But the responsibility
between these two methods are getting confused. which results this
unfortuante crash path.

This change re-aligns the responsibility:

- Now canHaveChildren() purely declares the ability of the
  renderer. If the renderer is capable of having children, it
  return true regardless of HTML semantics.

- On the other hand, childShouldCreateRenderer() cares about the
  semantics. If the element doesn't allow children to be rendered,
  this returns false.

- Note that these decision on elements are contextual. Each element
  needs to know which role it is playing in the tree composition
  algorithm of Shadow DOM. That's why the method parameter is changed
  from Node* to NodeRenderingContext.

With this change, some decision points are moved from a renderer to an
element. Following renderers no longer stop reject having children:

- RenderButton, RenderListBox, RenderMenuList, RenderMeter,
  RenderProgress, RenderTextControl.

Corresponding element for such a render (HTMLProgressElement of
RenderProgress for exaple) now cares about that.

Tests: fast/dom/shadow/shadow-on-image-expected.html
fast/dom/shadow/shadow-on-image.html

* dom/Element.cpp:
(WebCore::Element::childShouldCreateRenderer):
* dom/Element.h:
(Element):
* dom/Node.h:
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::shouldCreateRenderer):
* dom/NodeRenderingContext.h:
(NodeRenderingContext):
(WebCore::NodeRenderingContext::isOnEncapsulationBoundary):
(WebCore):
* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::childShouldCreateRenderer):
* html/HTMLDetailsElement.h:
(HTMLDetailsElement):
* html/HTMLMeterElement.cpp:
(WebCore::HTMLMeterElement::childShouldCreateRenderer):
(WebCore):
* html/HTMLMeterElement.h:
(HTMLMeterElement):
* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::childShouldCreateRenderer):
* html/HTMLMediaElement.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::childShouldCreateRenderer):
(WebCore):
* html/HTMLProgressElement.h:
(HTMLProgressElement):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::childShouldCreateRenderer):
(WebCore):
* html/HTMLSelectElement.h:
(HTMLSelectElement):
* html/HTMLSummaryElement.cpp:
* html/HTMLSummaryElement.h:
(HTMLSummaryElement):
* html/HTMLTextFormControlElement.cpp:
* html/HTMLTextFormControlElement.h:
(HTMLTextFormControlElement):
* rendering/RenderButton.cpp:
* rendering/RenderButton.h:
(RenderButton):
* rendering/RenderListBox.h:
(RenderListBox):
* rendering/RenderMedia.h:
(WebCore::RenderMedia::canHaveChildren):
* rendering/RenderMenuList.h:
* rendering/RenderMeter.h:
* rendering/RenderProgress.h:
* rendering/RenderTextControl.h:
* rendering/svg/RenderSVGRoot.h:
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::childShouldCreateRenderer):
* svg/SVGAElement.h:
(SVGAElement):
* svg/SVGAltGlyphElement.cpp:
(WebCore::SVGAltGlyphElement::childShouldCreateRenderer):
* svg/SVGAltGlyphElement.h:
(SVGAltGlyphElement):
* svg/SVGDocument.cpp:
(WebCore::SVGDocument::childShouldCreateRenderer):
* svg/SVGDocument.h:
(SVGDocument):
* svg/SVGElement.cpp:
(WebCore::SVGElement::childShouldCreateRenderer):
* svg/SVGElement.h:
(SVGElement):
* svg/SVGForeignObjectElement.cpp:
(WebCore::SVGForeignObjectElement::childShouldCreateRenderer):
* svg/SVGForeignObjectElement.h:
(SVGForeignObjectElement):
* svg/SVGSwitchElement.cpp:
(WebCore::SVGSwitchElement::childShouldCreateRenderer):
* svg/SVGSwitchElement.h:
(SVGSwitchElement):
* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::childShouldCreateRenderer):
* svg/SVGTRefElement.h:
(SVGTRefElement):
* svg/SVGTSpanElement.cpp:
(WebCore::SVGTSpanElement::childShouldCreateRenderer):
* svg/SVGTSpanElement.h:
(SVGTSpanElement):
* svg/SVGTextElement.cpp:
(WebCore::SVGTextElement::childShouldCreateRenderer):
* svg/SVGTextElement.h:
(SVGTextElement):
* svg/SVGTextPathElement.cpp:
(WebCore::SVGTextPathElement::childShouldCreateRenderer):
* svg/SVGTextPathElement.h:

LayoutTests:

* fast/dom/shadow/shadow-on-image-expected.html: Added.
* fast/dom/shadow/shadow-on-image.html: Added.

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

8 years ago[BlackBerry] NetworkJob can access deleted objects.
commit-queue@webkit.org [Thu, 23 Feb 2012 03:57:28 +0000 (03:57 +0000)]
[BlackBerry] NetworkJob can access deleted objects.
https://bugs.webkit.org/show_bug.cgi?id=79246

Patch by Yong Li <yoli@rim.com> on 2012-02-22
Reviewed by Antonio Gomes.

When a NetworkJob is created by unload handler, we still need
to send the request to the server, but we shouldn't save and
keep using the Frame pointer because the frame is being detached.
The NetworkJob will be cancelled by PingLoader as soon as it gets
first response from host.
Also see https://bugs.webkit.org/show_bug.cgi?id=30457.

No new tests because existing test case is good enough like
LayoutTests/http/tests/navigation/image-load-in-unload-handler.html.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::NetworkJob):
(WebCore::NetworkJob::initialize):

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

8 years ago[WebSocket] Remove zlib.h from WebSocketDeflater.h
bashi@chromium.org [Thu, 23 Feb 2012 03:44:48 +0000 (03:44 +0000)]
[WebSocket] Remove zlib.h from WebSocketDeflater.h
https://bugs.webkit.org/show_bug.cgi?id=79298

Use forward declaration and OwnPtr for z_stream to move zlib.h from
.h file to .cpp file.

Reviewed by Kent Tamura.

No new tests. No behavior change.

* websockets/WebSocketDeflater.cpp:
(WebCore::WebSocketDeflater::WebSocketDeflater):
(WebCore::WebSocketDeflater::initialize):
(WebCore::WebSocketDeflater::~WebSocketDeflater):
(WebCore::setStreamParameter):
(WebCore::WebSocketDeflater::addBytes):
(WebCore::WebSocketDeflater::finish):
(WebCore::WebSocketDeflater::reset):
(WebCore::WebSocketInflater::WebSocketInflater):
(WebCore::WebSocketInflater::initialize):
(WebCore::WebSocketInflater::~WebSocketInflater):
(WebCore::WebSocketInflater::addBytes):
(WebCore::WebSocketInflater::finish):
* websockets/WebSocketDeflater.h:
(WebSocketDeflater): Use OwnPtr for m_stream.
(WebSocketInflater): Ditto.

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

8 years ago[Chromium] Unreviewed gardening. Two inspector tests are timing out on Mac Debug.
yutak@chromium.org [Thu, 23 Feb 2012 03:37:50 +0000 (03:37 +0000)]
[Chromium] Unreviewed gardening. Two inspector tests are timing out on Mac Debug.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Add unit test for surface occlusion
commit-queue@webkit.org [Thu, 23 Feb 2012 03:37:31 +0000 (03:37 +0000)]
[chromium] Add unit test for surface occlusion
https://bugs.webkit.org/show_bug.cgi?id=79302

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

* tests/CCOcclusionTrackerTest.cpp:
(WebCore::TEST):
(WebCore):

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

8 years agoRemove GraphicsContext3D::paintsIntoCanvasBuffer and unify WebGL and canvas 2d logic
jamesr@google.com [Thu, 23 Feb 2012 03:07:09 +0000 (03:07 +0000)]
Remove GraphicsContext3D::paintsIntoCanvasBuffer and unify WebGL and canvas 2d logic
https://bugs.webkit.org/show_bug.cgi?id=79317

Reviewed by Kenneth Russell.

Source/WebCore:

HTMLCanvasElement::paint needs to know whether to attempt to paint the canvas buffer for its context. In the
case of an accelerated canvas or WebGL context, unless we are printing it is typically the composited layer's
responsibility to present the contents and the element itself is only responsible for backgrounds, borders and
the like.  This removes a rather indirect path that WebGL content used to take to accomplish this and unifies
the logic with CanvasRenderingContext2D's, which has the exact same needs.

Covered by existing canvas layout tests.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paintsIntoCanvasBuffer):
(WebCore):
(WebCore::HTMLCanvasElement::paint):
* html/HTMLCanvasElement.h:
(HTMLCanvasElement):
* html/canvas/CanvasRenderingContext.h:
* html/canvas/CanvasRenderingContext2D.cpp:
* html/canvas/CanvasRenderingContext2D.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
* html/canvas/WebGLRenderingContext.h:
* platform/graphics/GraphicsContext3D.h:

Source/WebKit/chromium:

Remove paintsIntoCanvasBuffer() implementations.

* src/GraphicsContext3DChromium.cpp:
(WebCore):
* src/GraphicsContext3DPrivate.h:

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

8 years agoPopStateEvent.state should use the same object as history.state
commit-queue@webkit.org [Thu, 23 Feb 2012 03:05:55 +0000 (03:05 +0000)]
PopStateEvent.state should use the same object as history.state
https://bugs.webkit.org/show_bug.cgi?id=77493

Patch by Pablo Flouret <pablof@motorola.com> on 2012-02-22
Reviewed by Kentaro Hara.

Source/WebCore:

Tests: fast/loader/stateobjects/state-attribute-history-getter.html
       fast/loader/stateobjects/state-attribute-popstate-event.html

* bindings/js/JSPopStateEventCustom.cpp:
(WebCore):
(WebCore::cacheState):
(WebCore::JSPopStateEvent::state):
* bindings/v8/V8HiddenPropertyName.h:
(WebCore):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::stateAccessorGetter):
(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):
* bindings/v8/custom/V8PopStateEventCustom.cpp:
(WebCore):
(WebCore::cacheState):
(WebCore::V8PopStateEvent::stateAccessorGetter):
* dom/Document.cpp:
(WebCore::Document::enqueuePopstateEvent):
* dom/PopStateEvent.cpp:
(WebCore::PopStateEvent::PopStateEvent):
(WebCore::PopStateEvent::create):
* dom/PopStateEvent.h:
(WebCore):
(PopStateEvent):
(WebCore::PopStateEvent::history):
* dom/PopStateEvent.idl:
* page/History.cpp:
(WebCore::History::stateChanged):
(WebCore):
(WebCore::History::isSameAsCurrentState):
* page/History.h:
(History):

LayoutTests:

* fast/loader/stateobjects/state-attribute-history-getter-expected.txt: Added.
* fast/loader/stateobjects/state-attribute-history-getter.html: Added.
* fast/loader/stateobjects/state-attribute-only-one-deserialization-expected.txt:
* fast/loader/stateobjects/state-attribute-only-one-deserialization.html:
* fast/loader/stateobjects/state-attribute-popstate-event-expected.txt: Added.
* fast/loader/stateobjects/state-attribute-popstate-event.html: Added.

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

8 years agoRemove obsolete FIXMEs from ContainerNode
adamk@chromium.org [Thu, 23 Feb 2012 03:01:11 +0000 (03:01 +0000)]
Remove obsolete FIXMEs from ContainerNode
https://bugs.webkit.org/show_bug.cgi?id=79295

Reviewed by Ryosuke Niwa.

Each of these three identical FIXMEs has since been fixed by adding
"RefPtr<Node> protect(this)" at the top of each method.

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::ContainerNode::removeChild):

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

8 years ago[JSC] Implement ArrayBuffer and typed array cloning in JSC
dslomov@google.com [Thu, 23 Feb 2012 02:51:20 +0000 (02:51 +0000)]
[JSC] Implement ArrayBuffer and typed array cloning in JSC
https://bugs.webkit.org/show_bug.cgi?id=79294

Reviewed by Oliver Hunt.

Source/WebCore:

Covered by existing tests.

* bindings/js/SerializedScriptValue.cpp:
(WebCore::typedArrayElementSize):
(WebCore):
(WebCore::CloneSerializer::dumpArrayBufferView):
(CloneSerializer):
(WebCore::CloneSerializer::dumpIfTerminal):
(WebCore::CloneSerializer::write):
(WebCore::CloneDeserializer::readArrayBufferViewSubtag):
(CloneDeserializer):
(WebCore::CloneDeserializer::readArrayBuffer):
(WebCore::CloneDeserializer::readArrayBufferView):
(WebCore::CloneDeserializer::getJSValue):
(WebCore::CloneDeserializer::readTerminal):

LayoutTests:

* fast/canvas/webgl/array-message-passing-expected.txt: Updated expectation after cloning implemented.
* fast/canvas/webgl/script-tests/array-message-passing.js: Added Uint8ClampedArray
* platform/chromium/fast/canvas/webgl/array-message-passing-expected.txt: Updated expectations. Fixing covered by https://bugs.webkit.org/show_bug.cgi?id=79291

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

8 years ago[chromium] Unreviewed speculative chromium-mac build fix.
enne@google.com [Thu, 23 Feb 2012 02:24:01 +0000 (02:24 +0000)]
[chromium] Unreviewed speculative chromium-mac build fix.
https://bugs.webkit.org/show_bug.cgi?id=75874

This broke in r108581.

* platform/graphics/chromium/cc/CCLayerAnimationController.h:
(WebCore):

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

8 years agoexponentialRampToValue doesn't use starting value
commit-queue@webkit.org [Thu, 23 Feb 2012 02:19:25 +0000 (02:19 +0000)]
exponentialRampToValue doesn't use starting value
https://bugs.webkit.org/show_bug.cgi?id=78035

Patch by Raymond Toy <rtoy@google.com> on 2012-02-22
Reviewed by Chris Rogers.

Source/WebCore:

Test: webaudio/audioparam-exponentialRampToValueAtTime.html

* webaudio/AudioParamTimeline.cpp:
(WebCore::AudioParamTimeline::valuesForTimeRangeImpl): Set
starting value for exponential ramp.

LayoutTests:

* webaudio/audioparam-exponentialRampToValueAtTime-expected.txt: Added.
* webaudio/audioparam-exponentialRampToValueAtTime.html: Added.
* webaudio/resources/audioparam-testing.js: Added.
(createConstantBuffer):
(createExponentialRampArray):
(comparePartialSignals):
(verifyDiscontinuities):
(compareSignals):
(doAutomation):

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

8 years agoUnreviewed, rolling out r108590.
yutak@chromium.org [Thu, 23 Feb 2012 02:16:01 +0000 (02:16 +0000)]
Unreviewed, rolling out r108590.
http://trac.webkit.org/changeset/108590

I mistakenly disabled tests even though the fix was already
in.

* tests/CCOcclusionTrackerTest.cpp:
(WebCore::TEST):

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

8 years ago[Chromium] Unreviewed. Disable two tests from CCOcclusionTrackerTest
yutak@chromium.org [Thu, 23 Feb 2012 02:09:22 +0000 (02:09 +0000)]
[Chromium] Unreviewed. Disable two tests from CCOcclusionTrackerTest
which cause assertion failures.

* tests/CCOcclusionTrackerTest.cpp:
(WebCore):
(WebCore::TEST):

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

8 years ago[chromium] Unreviewed gardening. Rebaseline more svg tests.
enne@google.com [Thu, 23 Feb 2012 01:51:51 +0000 (01:51 +0000)]
[chromium] Unreviewed gardening. Rebaseline more svg tests.

This test was also broken after r108559. It times out on all platforms
but windows, so only rebaselining windows.

* platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png:
* platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:

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

8 years ago[chromium] Fix CCOcclusionTracker unit test assertion
commit-queue@webkit.org [Thu, 23 Feb 2012 01:42:08 +0000 (01:42 +0000)]
[chromium] Fix CCOcclusionTracker unit test assertion
https://bugs.webkit.org/show_bug.cgi?id=79275

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

* tests/CCOcclusionTrackerTest.cpp:
(WebCore::TEST):

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

8 years agoMake parsing color presentation attributes do less pointless work.
kling@webkit.org [Thu, 23 Feb 2012 01:40:12 +0000 (01:40 +0000)]
Make parsing color presentation attributes do less pointless work.
<http://webkit.org/b/79304>

Reviewed by Antti Koivisto.

Let HTMLElement::addHTMLColorToStyle() construct the color CSSValue directly
rather than passing a string that has to go through CSSParser.

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::setProperty):
* css/StylePropertySet.h:

    Added a setProperty(propertyID, CSSValue) overload that expands shorthand
    properties if necessary. Also added a little comment about the behavior
    differences between setProperty() overloads.

* html/HTMLElement.cpp:
(WebCore::parseColorStringWithCrazyLegacyRules):

    Changed this to return an RGBA32.

(WebCore::HTMLElement::addHTMLColorToStyle):

    Figure out the RGB value and construct a (pooled) CSSValue directly.

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

8 years ago[chromium] Unreviewed gardening. Rebaseline zoom-replaced-intrinsic-ratio
enne@google.com [Thu, 23 Feb 2012 01:35:46 +0000 (01:35 +0000)]
[chromium] Unreviewed gardening. Rebaseline zoom-replaced-intrinsic-ratio

This was broken after r108559 and the result looks reasonable given
the description of the change, so rebaselining.

* platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-mac-leopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt.
* platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:

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

8 years agofast/files/create-blob-url-crash.html is no longer flaky.
dpranke@chromium.org [Thu, 23 Feb 2012 01:34:05 +0000 (01:34 +0000)]
fast/files/create-blob-url-crash.html is no longer flaky.
https://bugs.webkit.org/show_bug.cgi?id=60125

Unreviewed, expectations change.

* platform/chromium/test_expectations.txt:

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

8 years ago[EFL] Fix to launch the EWebLauncher using the script, run-launcher.
commit-queue@webkit.org [Thu, 23 Feb 2012 01:32:59 +0000 (01:32 +0000)]
[EFL] Fix to launch the EWebLauncher using the script, run-launcher.
https://bugs.webkit.org/show_bug.cgi?id=79076

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-02-22
Reviewed by Andreas Kling.

* Scripts/webkitdirs.pm: Fix the path of libewebkit.so.
(builtDylibPathForName):

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

8 years agoImplement [[DefineOwnProperty]] for the arguments object
barraclough@apple.com [Thu, 23 Feb 2012 01:25:37 +0000 (01:25 +0000)]
Implement [[DefineOwnProperty]] for the arguments object
https://bugs.webkit.org/show_bug.cgi?id=79309

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* runtime/Arguments.cpp:
(JSC::Arguments::deletePropertyByIndex):
(JSC::Arguments::deleteProperty):
    - Deleting an argument should also delete the copy on the object, if any.
(JSC::Arguments::defineOwnProperty):
    - Defining a property may override the live mapping.
* runtime/Arguments.h:
(Arguments):

LayoutTests:

* fast/js/arguments-expected.txt:
* fast/js/script-tests/arguments.js:
    - Added test cases

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