WebKit-https.git
9 years ago[chromium] Don't occlude on main-thread behind layers/surfaces with impl-thread anima...
commit-queue@webkit.org [Mon, 19 Mar 2012 01:07:16 +0000 (01:07 +0000)]
[chromium] Don't occlude on main-thread behind layers/surfaces with impl-thread animations
https://bugs.webkit.org/show_bug.cgi?id=81354

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-18
Reviewed by Adrienne Walker.

Source/WebCore:

Layers and surfaces can have an animating opacity or translation on the
impl thread. In this case, the main thread does not know their actual
values, and treats these values as "unknowns". This means we can't use
them for marking areas of the screen as occluded, and we can't consider
a part of a layer occluded in a space that we can not reliably transform
to.

Unit test: CCOcclusionTrackerTestAnimationOpacity0OnMainThread
           CCOcclusionTrackerTestAnimationOpacity1OnMainThread
           CCOcclusionTrackerTestAnimationTranslateOnMainThread

* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::layerOpacityKnown):
(WebCore::layerTransformsToTargetKnown):
(WebCore::layerTransformsToScreenKnown):
(WebCore):
(WebCore::surfaceOpacityUnknown):
(WebCore::surfaceTransformsToTargetUnknown):
(WebCore::surfaceTransformsToScreenUnknown):
(WebCore::::finishedTargetRenderSurface):
(WebCore::contentToScreenSpaceTransform):
(WebCore::contentToTargetSurfaceTransform):
(WebCore::::markOccludedBehindLayer):
(WebCore::::occluded):
(WebCore::::unoccludedContentRect):

Source/WebKit/chromium:

* tests/CCOcclusionTrackerTest.cpp:
(WebCore):
(WebCore::addOpacityAnimationToLayer):
(WebCore::addTransformAnimationToLayer):
(CCOcclusionTrackerTestAnimationOpacity1OnMainThread):
(WebCore::CCOcclusionTrackerTestAnimationOpacity1OnMainThread::runMyTest):
(CCOcclusionTrackerTestAnimationOpacity0OnMainThread):
(WebCore::CCOcclusionTrackerTestAnimationOpacity0OnMainThread::runMyTest):
(CCOcclusionTrackerTestAnimationTranslateOnMainThread):
(WebCore::CCOcclusionTrackerTestAnimationTranslateOnMainThread::runMyTest):

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

9 years ago[chromium] Animating opacity is not opaque and should create a render surface on...
commit-queue@webkit.org [Mon, 19 Mar 2012 00:58:34 +0000 (00:58 +0000)]
[chromium] Animating opacity is not opaque and should create a render surface on main thread
https://bugs.webkit.org/show_bug.cgi?id=81401

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

Source/WebCore:

Unit test: CCLayerTreeHostCommonTest.verifyAnimationsForRenderSurfaceHierarchy

* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::layerOpacityIsOpaque):
(WebCore):
(WebCore::subtreeShouldRenderToSeparateSurface):

Source/WebKit/chromium:

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

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

9 years agoWebCore::BitmapImage::getCGImageRef should not be used off the main thread.
weinig@apple.com [Mon, 19 Mar 2012 00:39:44 +0000 (00:39 +0000)]
WebCore::BitmapImage::getCGImageRef should not be used off the main thread.
https://bugs.webkit.org/show_bug.cgi?id=81441

Reviewed by Anders Carlsson.

Covered by existing tests.

* loader/cache/MemoryCache.cpp:
(WebCore::memoryCache):
(WebCore::MemoryCache::add):
(WebCore::MemoryCache::revalidationFailed):
(WebCore::MemoryCache::resourceForURL):
(WebCore::MemoryCache::evict):
Add back main thread assertions.

* platform/graphics/cg/PatternCG.cpp:
(PatternCallbackData):
(WebCore::patternCallback):
(WebCore::patternReleaseOnMainThreadCallback):
(WebCore::Pattern::createPlatformPattern):
Instead of pulling out the CGImageRef in the pattern callback, do it upfront.

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

9 years ago[Qt] Don't prepare SQL statements when the database is not open https://bugs.webkit...
ahf@0x90.dk [Mon, 19 Mar 2012 00:23:00 +0000 (00:23 +0000)]
[Qt] Don't prepare SQL statements when the database is not open https://bugs.webkit.org/show_bug.cgi?id=81470

Reviewed by Kenneth Rohde Christiansen.

Already covered by existing tests.

* platform/qt/CookieJarQt.cpp:
(WebCore::SharedCookieJarQt::deleteCookiesForHostname):
(WebCore::SharedCookieJarQt::deleteAllCookies):
(WebCore::SharedCookieJarQt::setCookiesFromUrl):
(WebCore::SharedCookieJarQt::loadCookies):

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

9 years agoUnreviewed, rolling out r110994 due to Chromium crash
haraken@chromium.org [Sun, 18 Mar 2012 23:50:01 +0000 (23:50 +0000)]
Unreviewed, rolling out r110994 due to Chromium crash

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* notifications/DOMWindowNotifications.cpp: Removed.
* notifications/DOMWindowNotifications.h: Removed.
* notifications/DOMWindowNotifications.idl: Removed.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::~DOMWindow):
(WebCore::DOMWindow::willDetachPage):
(WebCore::DOMWindow::disconnectDOMWindowProperties):
(WebCore::DOMWindow::clearDOMWindowProperties):
(WebCore):
(WebCore::DOMWindow::webkitNotifications):
(WebCore::DOMWindow::resetNotifications):
* page/DOMWindow.h:
(WebCore):
(DOMWindow):
* page/DOMWindow.idl:
* page/Frame.cpp:
(WebCore::Frame::willDetachPage):
(WebCore::Frame::transferChildFrameToNewDocument):

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

9 years agoUnreviewed, rolling out r111086.
haraken@chromium.org [Sun, 18 Mar 2012 23:39:57 +0000 (23:39 +0000)]
Unreviewed, rolling out r111086.
http://trac.webkit.org/changeset/111086
https://bugs.webkit.org/show_bug.cgi?id=81374

Chromium crash

* notifications/DOMWindowNotifications.cpp:
(WebCore::DOMWindowNotifications::disconnectFrame):

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

9 years agoInvalidation issue when creating backing layer for fixed positioned element.
commit-queue@webkit.org [Sun, 18 Mar 2012 23:07:27 +0000 (23:07 +0000)]
Invalidation issue when creating backing layer for fixed positioned element.
https://bugs.webkit.org/show_bug.cgi?id=80647

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

Source/WebCore:

Ensure that root layer is correctly invalidated by handling scroll and
invalidation from movement of fixed position elements prior to creating
any backing layers.

Test: compositing/layer-creation/fixed-position-scroll.html

* page/FrameView.cpp:
(WebCore::FrameView::repaintFixedElementsAfterScrolling):
(WebCore):
(WebCore::FrameView::updateFixedElementsAfterScrolling):
* page/FrameView.h:
(FrameView):
* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollTo):
* platform/ScrollView.h:
(WebCore::ScrollView::repaintFixedElementsAfterScrolling):
(WebCore::ScrollView::updateFixedElementsAfterScrolling):

LayoutTests:

* compositing/layer-creation/fixed-position-scroll.html: Added.
* platform/chromium-linux/compositing/layer-creation/fixed-position-scroll-expected.png: Added.

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

9 years ago[Qt][WK2] Avoid usage of manual scaling in the Qt scenegraph integration
noam.rosenthal@nokia.com [Sun, 18 Mar 2012 22:52:01 +0000 (22:52 +0000)]
[Qt][WK2] Avoid usage of manual scaling in the Qt scenegraph integration
https://bugs.webkit.org/show_bug.cgi?id=81368

Reviewed by Simon Hausmann.

Moved the QtScenegraph integration classes to a separate file,
QtWebPageSGNode. The nodes created for QQuickWebPage now include
a QSGTransformNode that controls the contentsScale, a
QSGSimpleRectNode that controls the background color, and a
QSGRenderNode subclass that renders the actual contents.
* Target.pri:
* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPage::updatePaintNode):
* UIProcess/qt/QtWebPageSGNode.cpp: Added.
* UIProcess/qt/QtWebPageSGNode.h: Added.

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

9 years ago[chromium] Transform animation state should be inherited from parents
commit-queue@webkit.org [Sun, 18 Mar 2012 21:58:59 +0000 (21:58 +0000)]
[chromium] Transform animation state should be inherited from parents
https://bugs.webkit.org/show_bug.cgi?id=81363

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-18
Reviewed by Adrienne Walker.

Source/WebCore:

Adds a drawTransformIsAnimating() and screenSpaceTransformIsAnimating()
to the layer classes, and similar to the surface classes. These inherit
the values from their parents in the same way that the transforms
themselves do, and reflect if the layer's transform is being affected
by some active animation.

These can be used in main-thread culling when determining if the layer's
position is static in the given coordinate space or being animated.

Unit test: CCLayerTreeHostCommonTest.verifyAnimationsForRenderSurfaceHierarchy

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::LayerChromium):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
(WebCore::LayerChromium::drawTransformIsAnimating):
(WebCore::LayerChromium::setDrawTransformIsAnimating):
(WebCore::LayerChromium::screenSpaceTransformIsAnimating):
(WebCore::LayerChromium::setScreenSpaceTransformIsAnimating):
* platform/graphics/chromium/RenderSurfaceChromium.cpp:
(WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
* platform/graphics/chromium/RenderSurfaceChromium.h:
(WebCore::RenderSurfaceChromium::targetSurfaceTransformsAreAnimating):
(WebCore::RenderSurfaceChromium::setTargetSurfaceTransformsAreAnimating):
(WebCore::RenderSurfaceChromium::screenSpaceTransformsAreAnimating):
(WebCore::RenderSurfaceChromium::setScreenSpaceTransformsAreAnimating):
(RenderSurfaceChromium):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(CCLayerImpl):
(WebCore::CCLayerImpl::drawTransformIsAnimating):
(WebCore::CCLayerImpl::setDrawTransformIsAnimating):
(WebCore::CCLayerImpl::screenSpaceTransformIsAnimating):
(WebCore::CCLayerImpl::setScreenSpaceTransformIsAnimating):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::subtreeShouldBeSkipped):
(WebCore::calculateDrawTransformsAndVisibilityInternal):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::CCRenderSurface):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore::CCRenderSurface::targetSurfaceTransformsAreAnimating):
(WebCore::CCRenderSurface::setTargetSurfaceTransformsAreAnimating):
(WebCore::CCRenderSurface::screenSpaceTransformsAreAnimating):
(WebCore::CCRenderSurface::setScreenSpaceTransformsAreAnimating):
(CCRenderSurface):

Source/WebKit/chromium:

* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore::addOpacityAnimationToLayer):
(WebCore):
(WebCore::addTransformAnimationToLayer):
(WebCore::TEST):

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

9 years ago[Qt] The background is visible for tiles inside the contents area which are not ready
noam.rosenthal@nokia.com [Sun, 18 Mar 2012 19:28:16 +0000 (19:28 +0000)]
[Qt] The background is visible for tiles inside the contents area which are not ready
https://bugs.webkit.org/show_bug.cgi?id=81349

Reviewed by Simon Hausmann.

Split PageProxyNode to BackgroundSGNode and ContentsSGNode.
BackgroundSGNode paints a solid background, either white or transparent
(depending on drawsTransparentBackground flag).

* UIProcess/API/qt/qquickwebpage.cpp:
(ContentsSGNode):
(ContentsSGNode::ContentsSGNode):
(ContentsSGNode::changedStates):
(ContentsSGNode::~ContentsSGNode):
(BackgroundSGNode):
(BackgroundSGNode::BackgroundSGNode):
(BackgroundSGNode::contentsNode):
(QQuickWebPage::updatePaintNode):

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

9 years agoFix compile when FULLSCREEN_API is not enabled on Mac
psolanki@apple.com [Sun, 18 Mar 2012 19:17:21 +0000 (19:17 +0000)]
Fix compile when FULLSCREEN_API is not enabled on Mac
https://bugs.webkit.org/show_bug.cgi?id=81474

Reviewed by Ada Chan.

Guard the full screen api code inside ENABLE(FULLSCREEN_API).

No new tests because no functional changes.

* platform/mac/WebCoreFullScreenWindow.h:
* platform/mac/WebCoreFullScreenWindow.mm:

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

9 years agoChange the initial buffer size of a plain text
haraken@chromium.org [Sun, 18 Mar 2012 16:59:46 +0000 (16:59 +0000)]
Change the initial buffer size of a plain text
https://bugs.webkit.org/show_bug.cgi?id=81192

Reviewed by Dimitri Glazkov.

r111109 changed the initial buffer size of a plain text
from 1<<16 to 1<<15 in Chromium/Mac only, for the following reasons:

- As far as I experimented locally, while 1<<15 is better than 1<<16 in Chromium/Mac,
1<<15 and 1<<16 are the same in AppleWebKit/Mac and Chromium/Linux (their performance
"gap" exists at between 1<<17 and 1<<18).
- The reason why I changed 1<<16 to 1<<15 in Chromium/Mac only is that
the value highly depends on the underlying malloc system and I was a bit afraid
that changing to 1<<15 _might_ cause unintentional performance regression in some
platform.

That being said, it seems that 1<<15 would not be worse than 1<<16 in all platforms,
and we should just keep the value consistent. In the first place, according to anttik
(who wrote 1<<16 a long time ago), there was no strong reason for 1<<16.

Based on these observations (See https://bugs.webkit.org/show_bug.cgi?id=81192
for more details), this patch unifies the value to 1<<15 in all platforms.

No tests. No change in behavior.

* editing/TextIterator.cpp:
(WebCore::plainTextToMallocAllocatedBuffer):

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

9 years agoCSS 2.1 failure: eof-003.htm fails
robert@webkit.org [Sun, 18 Mar 2012 11:33:04 +0000 (11:33 +0000)]
CSS 2.1 failure: eof-003.htm fails
https://bugs.webkit.org/show_bug.cgi?id=78538

Reviewed by Antti Koivisto.

Source/WebCore:

Tests: css2.1/20110323/eof-001.htm
       css2.1/20110323/eof-003.htm
       css2.1/20110323/eof-004.htm
       css2.1/20110323/eof-005.htm
       css2.1/20110323/eof-006.htm
       css2.1/20110323/eof-007.htm

This patch fixes eof-003.htm, eof-005.htm and eof-006.htm. The other eof-* tests already pass.

* css/CSSGrammar.y: Allow EOF as well as ';' to terminate import rules.
                    This should probably be done for other rules in a separate patch.
* css/CSSParser.cpp:
(WebCore::CSSParser::checkAndSkipString): Allow strings to end with EOF.
(WebCore::CSSParser::parseString): ditto

LayoutTests:

* css2.1/20110323/eof-001-expected.html: Added.
* css2.1/20110323/eof-001.htm: Added.
* css2.1/20110323/eof-003-expected.html: Added.
* css2.1/20110323/eof-003.htm: Added.
* css2.1/20110323/eof-004-expected.html: Added.
* css2.1/20110323/eof-004.htm: Added.
* css2.1/20110323/eof-005-expected.html: Added.
* css2.1/20110323/eof-005.htm: Added.
* css2.1/20110323/eof-006-expected.html: Added.
* css2.1/20110323/eof-006.htm: Added.
* css2.1/20110323/eof-007-expected.html: Added.
* css2.1/20110323/eof-007.htm: Added.
* css2.1/20110323/support/eof-green.css: Added.

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

9 years ago[Chromium] PlatformContextSkia::m_drawingToImageBuffer is not correctly set when...
commit-queue@webkit.org [Sun, 18 Mar 2012 03:20:21 +0000 (03:20 +0000)]
[Chromium] PlatformContextSkia::m_drawingToImageBuffer is not correctly set when using per-tile painting.
https://bugs.webkit.org/show_bug.cgi?id=81463

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

Call PlatformContextSkia::setDrawingToImageBuffer() from
SkPictureCanvasLayerTextureUpdater::prepareToUpdate so that sub-pixel
text rendering is not used incorrectly with per-tile painting.

No new tests.

* platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):

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

9 years agoUnreviewed; switch to using my FreeBSD.org email address, the
kubo@profusion.mobi [Sun, 18 Mar 2012 01:57:44 +0000 (01:57 +0000)]
Unreviewed; switch to using my FreeBSD.org email address, the
other one is going to disappear soon.

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

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

9 years agoStrength reduction, RegExp.exec -> RegExp.test
barraclough@apple.com [Sun, 18 Mar 2012 01:08:16 +0000 (01:08 +0000)]
Strength reduction, RegExp.exec -> RegExp.test
https://bugs.webkit.org/show_bug.cgi?id=81459

Reviewed by Sam Weinig.

RegExp.prototype.exec & RegExp.prototype.test can both be used to test a regular
expression for a match against a string - however exec is more expensive, since
it allocates a matches array object. In cases where the result is consumed in a
boolean context the allocation of the matches array can be trivially elided.

For example:
    function f()
    {
        for (i =0; i < 10000000; ++i)
            if(!/a/.exec("a"))
                err = true;
    }

This is a 2.5x speedup on this example microbenchmark loop.

In a more advanced form of this optimization, we may be able to avoid allocating
the array where access to the array can be observed.

* create_hash_table:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasHeapPrediction):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileRegExpExec):
(DFG):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jsc.cpp:
(GlobalObject::addConstructableFunction):
* runtime/Intrinsic.h:
* runtime/JSFunction.cpp:
(JSC::JSFunction::create):
(JSC):
* runtime/JSFunction.h:
(JSFunction):
* runtime/Lookup.cpp:
(JSC::setUpStaticFunctionSlot):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::exec):
(JSC::RegExpObject::match):
* runtime/RegExpObject.h:
(RegExpObject):
* runtime/RegExpPrototype.cpp:
(JSC::regExpProtoFuncTest):
(JSC::regExpProtoFuncExec):

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

9 years ago[chromium] Make pixel-accurate wheel scrolling be unanimated
commit-queue@webkit.org [Sat, 17 Mar 2012 23:57:24 +0000 (23:57 +0000)]
[chromium] Make pixel-accurate wheel scrolling be unanimated
https://bugs.webkit.org/show_bug.cgi?id=81457

Patch by Robert Kroeger <rjkroege@chromium.org> on 2012-03-17
Reviewed by James Robinson.

* platform/ScrollAnimatorNone.cpp:
(WebCore::ScrollAnimatorNone::scroll):

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

9 years ago[BlackBerry] Implement openTemporaryFile in FileSystem
rwlbuis@webkit.org [Sat, 17 Mar 2012 22:56:02 +0000 (22:56 +0000)]
[BlackBerry] Implement openTemporaryFile in FileSystem
https://bugs.webkit.org/show_bug.cgi?id=81373

Reviewed by George Staikos.

Move the Efl implementation to Posix, this way BlackBerry port can reuse it.

* platform/blackberry/FileSystemBlackBerry.cpp:
* platform/efl/FileSystemEfl.cpp:
* platform/posix/FileSystemPOSIX.cpp:
(WebCore::openTemporaryFile):
(WebCore):

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

9 years agomove calc*Value functions out from Length (and platform)
commit-queue@webkit.org [Sat, 17 Mar 2012 19:54:09 +0000 (19:54 +0000)]
move calc*Value functions out from Length (and platform)
https://bugs.webkit.org/show_bug.cgi?id=80897

Moving the Length calc*Value functions out from Length structure and also from /WebCore/platform/ folder.
This helps to avoid the layering violation while length calculation. Otherwise layer violation can be avoided only by adding a virtual interface(bug 27160).

Patch by Joe Thomas <joethomas@motorola.com> on 2012-03-17
Reviewed by Antti Koivisto.

Source/WebCore:

* GNUmakefile.list.am: Build system changes for adding new files.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
(getAttributeSetForAccessibilityObject):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/LengthFunctions.h: Added. Moved calc*Value functions of Length.
(WebCore):
(WebCore::calculateMinimumValue):
(WebCore::calculateValue):
(WebCore::calculateFloatValue):
* dom/Document.cpp:
(WebCore::Document::pageSizeAndMarginsInPixels):
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::getRegion):
* platform/CalculationValue.h:
(WebCore::CalcExpressionLength::evaluate):
* platform/Length.h: Removed the calc*Value functions from Length structure.
(Length):
(WebCore::Length::getFloatValue):
(WebCore::Length::getIntValue):
* platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::setFilters):
* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
(WebCore::CCRenderSurfaceFilters::apply):
* platform/graphics/filters/FilterOperations.cpp:
(WebCore::FilterOperations::getOutsets):
* platform/graphics/transforms/PerspectiveTransformOperation.cpp:
(WebCore::PerspectiveTransformOperation::blend):
* platform/graphics/transforms/PerspectiveTransformOperation.h:
(WebCore::PerspectiveTransformOperation::isIdentity):
(WebCore::PerspectiveTransformOperation::apply):
* platform/graphics/transforms/TranslateTransformOperation.h:
(WebCore::TranslateTransformOperation::x):
(WebCore::TranslateTransformOperation::y):
(WebCore::TranslateTransformOperation::z):
(WebCore::TranslateTransformOperation::isIdentity):
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::paint):
* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::layout):
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):
* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::layout):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::textIndentOffset):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::reflectionOffset):
(WebCore::RenderBox::clipRect):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::computeInlineDirectionMargins):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::RenderBox::computeBlockDirectionMargins):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalHeightUsing):
(WebCore::RenderBox::computePositionedLogicalWidthReplaced):
(WebCore::RenderBox::computePositionedLogicalHeightReplaced):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::relativePositionOffsetX):
(WebCore::RenderBoxModelObject::relativePositionOffsetY):
(WebCore::RenderBoxModelObject::paddingTop):
(WebCore::RenderBoxModelObject::paddingBottom):
(WebCore::RenderBoxModelObject::paddingLeft):
(WebCore::RenderBoxModelObject::paddingRight):
(WebCore::RenderBoxModelObject::paddingBefore):
(WebCore::RenderBoxModelObject::paddingAfter):
(WebCore::RenderBoxModelObject::paddingStart):
(WebCore::RenderBoxModelObject::paddingEnd):
(WebCore::RenderBoxModelObject::calculateFillTileSize):
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
(WebCore::computeBorderImageSide):
(WebCore::RenderBoxModelObject::paintNinePieceImage):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::layOutAxis):
* rendering/RenderInline.cpp:
(WebCore::computeMargin):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::perspectiveTransform):
(WebCore::RenderLayer::perspectiveOrigin):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::computeTransformOrigin):
(WebCore::RenderLayerBacking::computePerspectiveOrigin):
* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::timerFired):
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::updateOptionsWidth):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::repaintAfterLayoutIfNeeded):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalWidth):
* rendering/RenderScrollbarPart.cpp:
(WebCore::calcScrollbarThicknessUsing):
(WebCore::RenderScrollbarPart::computeScrollbarWidth):
(WebCore::RenderScrollbarPart::computeScrollbarHeight):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth):
(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::logicalHeightForRowSizing):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcRowLogicalHeight):
* rendering/RenderText.h:
(WebCore::RenderText::marginLeft):
(WebCore::RenderText::marginRight):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::verticalPositionForBox):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::applyTransform):
(WebCore::calcRadiiFor):
* rendering/style/RenderStyle.h:
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::resolveLengthAttributeForSVG):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::currentViewBoxRect):
(WebCore::SVGSVGElement::currentViewportSize):
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::computeIntrinsicDimensions):

Source/WebKit2:

* WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
(WebKit::WebPopupMenu::setUpPlatformData):

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

9 years ago<rdar://problem/10263562> Crash in WebCore::Range::startPosition() when dismissing...
mitz@apple.com [Sat, 17 Mar 2012 19:23:28 +0000 (19:23 +0000)]
<rdar://problem/10263562> Crash in WebCore::Range::startPosition() when dismissing the Press and Hold panel by clicking in the menu bar
https://bugs.webkit.org/show_bug.cgi?id=81454

Reviewed by Ada Chan.

When the Press and Hold panel is dismissed by clicking in the menu bar,
-insertText:replacementRange: is called with an NSRange whose location is NSNotFound - 1
(see <rdar://problem/11069374>). Trying to convert this bogus range to a WebCore Range
returns 0, which leads to the crash.

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::insertText): Added a null check, to protect the code from bogus ranges.

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

9 years agoUnreviewed; fix webkitpy unit test failures after r111116.
kubo@profusion.mobi [Sat, 17 Mar 2012 18:12:10 +0000 (18:12 +0000)]
Unreviewed; fix webkitpy unit test failures after r111116.

It turns out that cmd_line in the patch in bug 80025 had the right
signature when it was submitted, but r109242 added a few more
required parameters, and since the method (and EflDriver) did not
exist at the time we ended up committing a broken method.

* Scripts/webkitpy/layout_tests/port/efl.py:
(EflDriver.cmd_line): Add the `pixel_tests' and `per_test_args'
arguments.

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

9 years ago[BlackBerry] Enable Web Timing for performance profiling and improvement.
charles.wei@torchmobile.com.cn [Sat, 17 Mar 2012 15:45:23 +0000 (15:45 +0000)]
[BlackBerry] Enable Web Timing for performance profiling and improvement.
https://bugs.webkit.org/show_bug.cgi?id=81085

Reviewed by Rob Buis.

.:

* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmakeconfig.h.cmake:

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):

Tools:

* Scripts/build-webkit:

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

9 years agoEnable animVal support for SVGNumberOptionalNumber
zimmermann@webkit.org [Sat, 17 Mar 2012 12:13:10 +0000 (12:13 +0000)]
Enable animVal support for SVGNumberOptionalNumber
https://bugs.webkit.org/show_bug.cgi?id=81448

Reviewed by Antti Koivisto.

Source/WebCore:

Enable animVal support for SVGNumberOptionalNumber. Its a special case as two SVG DOM properties
eg. stdDeviationX/stdDeviationY are mapped to a single XML attribute: SVGNames::stdDeviationAttr.

When animating properties like this, both animVal wrappers need to reflect changes.
Generalize the current animVal code to support more than one SVGAnimatedProperty that gets
animated for a single attributeName. This allows us to remove SVGAnimatedType::variantValue/setVariantValue
which paves the way for removing SVGGenericAnimatedType from even more places.

Covered by existing tests.

* svg/SVGAnimateElement.cpp:
(WebCore::SVGAnimateElement::SVGAnimateElement):
(WebCore::SVGAnimateElement::calculateAnimatedValue):
(WebCore::SVGAnimateElement::resetToBaseValue):
(WebCore::SVGAnimateElement::targetElementWillChange):
* svg/SVGAnimateElement.h:
(SVGAnimateElement):
* svg/SVGAnimatedLength.cpp:
(WebCore::SVGAnimatedLengthAnimator::constructFromBaseValue):
(WebCore):
(WebCore::SVGAnimatedLengthAnimator::resetAnimatedTypeToBaseValue):
* svg/SVGAnimatedLength.h:
(SVGAnimatedLengthAnimator):
* svg/SVGAnimatedLengthList.cpp:
(WebCore::SVGAnimatedLengthListAnimator::constructFromBaseValue):
(WebCore):
(WebCore::SVGAnimatedLengthListAnimator::resetAnimatedTypeToBaseValue):
* svg/SVGAnimatedLengthList.h:
(SVGAnimatedLengthListAnimator):
* svg/SVGAnimatedNumber.cpp:
(WebCore::SVGAnimatedNumberAnimator::constructFromBaseValue):
(WebCore):
(WebCore::SVGAnimatedNumberAnimator::resetAnimatedTypeToBaseValue):
* svg/SVGAnimatedNumber.h:
(SVGAnimatedNumberAnimator):
* svg/SVGAnimatedNumberList.cpp:
(WebCore::SVGAnimatedNumberListAnimator::constructFromBaseValue):
(WebCore):
(WebCore::SVGAnimatedNumberListAnimator::resetAnimatedTypeToBaseValue):
* svg/SVGAnimatedNumberList.h:
(SVGAnimatedNumberListAnimator):
* svg/SVGAnimatedNumberOptionalNumber.cpp:
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromBaseValue):
(WebCore):
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::resetAnimatedTypeToBaseValue):
* svg/SVGAnimatedNumberOptionalNumber.h:
(WebCore):
(SVGAnimatedNumberOptionalNumberAnimator):
* svg/SVGAnimatedTransformList.cpp:
(WebCore::SVGAnimatedTransformListAnimator::constructFromBaseValue):
(WebCore::SVGAnimatedTransformListAnimator::resetAnimatedTypeToBaseValue):
(WebCore):
* svg/SVGAnimatedTransformList.h:
(SVGAnimatedTransformListAnimator):
* svg/SVGAnimatedType.cpp:
(WebCore::SVGAnimatedType::supportsAnimVal):
* svg/SVGAnimatedType.h:
(SVGAnimatedType):
* svg/SVGAnimatedTypeAnimator.h:
(SVGAnimatedTypeAnimator):
(WebCore::SVGAnimatedTypeAnimator::constructFromBaseValue):
(WebCore::SVGAnimatedTypeAnimator::resetAnimatedTypeToBaseValue):
(WebCore::SVGAnimatedTypeAnimator::currentBaseValueVariant):
(WebCore::SVGAnimatedTypeAnimator::constructFromOneBaseValue):
(WebCore::SVGAnimatedTypeAnimator::resetAnimatedTypeFromOneBaseValue):
(WebCore::SVGAnimatedTypeAnimator::constructFromTwoBaseValues):
(WebCore::SVGAnimatedTypeAnimator::resetAnimatedTypeFromTwoBaseValues):
* svg/SVGAnimationElement.cpp:
(WebCore::findMatchingAnimatedProperties):
(WebCore::SVGAnimationElement::applyAnimatedValue):
(WebCore::notifyAnimatedPropertyAboutAnimationBeginEnd):
(WebCore::SVGAnimationElement::animationStarted):
(WebCore::SVGAnimationElement::animationEnded):
(WebCore::SVGAnimationElement::animatedPropertiesForType):
* svg/SVGAnimationElement.h:
* svg/properties/SVGAnimatedListPropertyTearOff.h:
(WebCore::SVGAnimatedListPropertyTearOff::currentBaseValueVariant):
(WebCore::SVGAnimatedListPropertyTearOff::animationStarted):
* svg/properties/SVGAnimatedProperty.h:
(SVGAnimatedProperty):
* svg/properties/SVGAnimatedPropertyTearOff.h:
(WebCore::SVGAnimatedPropertyTearOff::currentBaseValueVariant):
(WebCore::SVGAnimatedPropertyTearOff::animationStarted):
* svg/properties/SVGAnimatedStaticPropertyTearOff.h:
(WebCore::SVGAnimatedStaticPropertyTearOff::currentBaseValueVariant):
(WebCore::SVGAnimatedStaticPropertyTearOff::animationStarted):

LayoutTests:

Extend SVGNumberOptionalNumber tests to cover animVal/baseVal at the same time.

* svg/animations/script-tests/svgnumberoptionalnumber-animation-1.js:
(sample1):
(sample2):
(sample3):
* svg/animations/script-tests/svgnumberoptionalnumber-animation-2.js:
(sample1):
(sample2):
(sample3):
* svg/animations/script-tests/svgnumberoptionalnumber-animation-3.js:
(sample1):
(sample2):
(sample3):
* svg/animations/script-tests/svgnumberoptionalnumber-animation-4.js:
(sample1):
(sample2):
(sample3):
* svg/animations/svgnumberoptionalnumber-animation-1-expected.txt:
* svg/animations/svgnumberoptionalnumber-animation-2-expected.txt:
* svg/animations/svgnumberoptionalnumber-animation-3-expected.txt:
* svg/animations/svgnumberoptionalnumber-animation-4-expected.txt:

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

9 years ago[GStreamer] run AudioFileReader in a nested loop
philn@webkit.org [Sat, 17 Mar 2012 11:30:21 +0000 (11:30 +0000)]
[GStreamer] run AudioFileReader in a nested loop
https://bugs.webkit.org/show_bug.cgi?id=80823

Reviewed by Martin Robinson.

Use a separate main loop for the file reader, this approach is
much cleaner than polling the default GLib main context.

* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
(AudioFileReader):
(WebCore::enteredMainLoopCallback):
(WebCore):
(WebCore::AudioFileReader::AudioFileReader):
(WebCore::AudioFileReader::handleMessage):
(WebCore::AudioFileReader::start):
(WebCore::AudioFileReader::createBus):

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

9 years agoCSS 2.1 failure: fixed-table-layout-013 and fixed-table-layout-015 fail
robert@webkit.org [Sat, 17 Mar 2012 10:48:41 +0000 (10:48 +0000)]
CSS 2.1 failure: fixed-table-layout-013 and fixed-table-layout-015 fail
https://bugs.webkit.org/show_bug.cgi?id=78027

Reviewed by Julien Chaffraix.

Source/WebCore:

Both of these test the (slightly implicit) rule that width set on column-groups cannot
affect the width of columns in a fixed layout table: http://www.w3.org/TR/CSS21/tables.html#fixed-table-layout
FF, Opera and IE all pass these two tests.

Tests: css2.1/20110323/fixed-table-layout-013.htm
       css2.1/20110323/fixed-table-layout-015.htm
       fast/table/fixed-table-layout-toggle-colwidth.html

* rendering/FixedTableLayout.cpp:
(WebCore::nextCol): A helper function for finding the next column along.
(WebCore::FixedTableLayout::calcWidthArray): Ignore width specified by column groups.
* rendering/RenderTableCol.h:
(WebCore::RenderTableCol::isTableColGroup): Convenience function for identifying column groups.

LayoutTests:

* css2.1/20110323/fixed-table-layout-013-expected.html: Added.
* css2.1/20110323/fixed-table-layout-013.htm: Added.
* css2.1/20110323/fixed-table-layout-015-expected.html: Added.
* css2.1/20110323/fixed-table-layout-015.htm: Added.
* fast/table/fixed-table-layout-toggle-colwidth-expected.txt: Added.
* fast/table/fixed-table-layout-toggle-colwidth.html: Added.

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

9 years agoAdd a dependencies installation step for EFL to buildbot master.cfg
kubo@profusion.mobi [Sat, 17 Mar 2012 07:45:16 +0000 (07:45 +0000)]
Add a dependencies installation step for EFL to buildbot cfg
https://bugs.webkit.org/show_bug.cgi?id=81337

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-03-17
Reviewed by Gustavo Noronha Silva.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(InstallEflDependencies):
(Factory.__init__):

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

9 years ago[EFL] Prefixing run-webkit-tests with run-with-jhbuild
kubo@profusion.mobi [Sat, 17 Mar 2012 07:33:58 +0000 (07:33 +0000)]
[EFL] Prefixing run-webkit-tests with run-with-jhbuild
https://bugs.webkit.org/show_bug.cgi?id=80025

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-03-17
Reviewed by Gustavo Noronha Silva.

* Scripts/webkitpy/layout_tests/port/efl.py:
(EflDriver):
(EflDriver.cmd_line):
(EflPort._driver_class):

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

9 years ago[EFL] Add and use run-with-jhbuild and update-webkitefl-libs scripts for EFL
kubo@profusion.mobi [Sat, 17 Mar 2012 07:30:12 +0000 (07:30 +0000)]
[EFL] Add and use run-with-jhbuild and update-webkitefl-libs scripts for EFL
https://bugs.webkit.org/show_bug.cgi?id=79904

build-webkit --efl will use jhbuild for fetching and building dependencies.

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-03-17
Reviewed by Gustavo Noronha Silva.

* Scripts/update-webkitefl-libs: Added.
* Scripts/webkitdirs.pm:
(jhbuildWrapperPrefixIfNeeded):
(generateBuildSystemFromCMakeProject):
(buildCMakeGeneratedProject):
* efl/common.py: Added.
(script_path):
(top_level_path):
(number_of_cpus):
* efl/jhbuild.modules: Added.
* efl/jhbuildrc: Added.
* efl/run-with-jhbuild: Added.

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

9 years ago[BlackBerry] Add BlackBerry to NavigatorBase.cpp
leo.yang@torchmobile.com.cn [Sat, 17 Mar 2012 06:42:10 +0000 (06:42 +0000)]
[BlackBerry] Add BlackBerry to NavigatorBase.cpp
https://bugs.webkit.org/show_bug.cgi?id=81303

Reviewed by Rob Buis.

* page/NavigatorBase.cpp:

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

9 years ago[BlackBerry] Add typedef of DragDataRef for blackberry
leo.yang@torchmobile.com.cn [Sat, 17 Mar 2012 06:39:49 +0000 (06:39 +0000)]
[BlackBerry] Add typedef of DragDataRef for blackberry
https://bugs.webkit.org/show_bug.cgi?id=81301

Reviewed by Rob Buis.

* platform/DragData.h:

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

9 years ago[chromium] Unify the drawing logic for different layer types that output textures...
commit-queue@webkit.org [Sat, 17 Mar 2012 04:15:22 +0000 (04:15 +0000)]
[chromium] Unify the drawing logic for different layer types that output textures to the compositor
https://bugs.webkit.org/show_bug.cgi?id=81286

Patch by James Robinson <jamesr@chromium.org> on 2012-03-16
Reviewed by Adrienne Walker.

Source/WebCore:

Currently canvas 2d, webgl, and plugin layers all export a texture to the compositor that then needs to be
drawn.  There are a small set of operations that can be applied to the texture at draw time - do a Y flip,
stretch a subrect to the layer bounds, set the blend mode etc but they are fundamentally the same thing. This
collapses the nearly-redundant code into a single impl-side layer type for a texture-backed layer that can
handle the union of the bits needed for each layer type.

Canvas 2d, WebGL and plugin composited rendering are all covered by layout tests.

* WebCore.gypi:
* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/CanvasLayerChromium.cpp:
(WebCore::CanvasLayerChromium::createCCLayerImpl):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::TexStretchTextureProgramBinding::set):
(WebCore::TexTransformTextureProgramBinding::set):
(WebCore::LayerRendererChromium::drawTextureQuad):
(WebCore::LayerRendererChromium::textureLayerProgramFlip):
(WebCore::LayerRendererChromium::textureLayerProgramStretch):
(WebCore::LayerRendererChromium::textureLayerProgramStretchFlip):
(WebCore::LayerRendererChromium::textureLayerTexRectProgram):
(WebCore::LayerRendererChromium::textureLayerTexRectProgramFlip):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore):
(LayerRendererChromium):
* platform/graphics/chromium/PluginLayerChromium.cpp:
(WebCore::PluginLayerChromium::PluginLayerChromium):
(WebCore::PluginLayerChromium::createCCLayerImpl):
(WebCore::PluginLayerChromium::setIOSurfaceProperties):
(WebCore::PluginLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/PluginLayerChromium.h:
(PluginLayerChromium):
* platform/graphics/chromium/WebGLLayerChromium.cpp:
(WebCore::WebGLLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/cc/CCCanvasDrawQuad.cpp: Removed.
* platform/graphics/chromium/cc/CCCanvasDrawQuad.h: Removed.
* platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp: Removed.
* platform/graphics/chromium/cc/CCCanvasLayerImpl.h: Removed.
* platform/graphics/chromium/cc/CCDrawQuad.cpp:
(WebCore::CCDrawQuad::toTextureDrawQuad):
* platform/graphics/chromium/cc/CCDrawQuad.h:
(WebCore):
(CCDrawQuad):
* platform/graphics/chromium/cc/CCTextureDrawQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCPluginDrawQuad.cpp.
(WebCore):
(WebCore::CCTextureDrawQuad::create):
(WebCore::CCTextureDrawQuad::CCTextureDrawQuad):
* platform/graphics/chromium/cc/CCTextureDrawQuad.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCPluginDrawQuad.h.
(WebCore):
(CCTextureDrawQuad):
(WebCore::CCTextureDrawQuad::textureId):
(WebCore::CCTextureDrawQuad::hasAlpha):
(WebCore::CCTextureDrawQuad::premultipliedAlpha):
(WebCore::CCTextureDrawQuad::uvRect):
(WebCore::CCTextureDrawQuad::flipped):
(WebCore::CCTextureDrawQuad::ioSurfaceSize):
(WebCore::CCTextureDrawQuad::ioSurfaceTextureId):
* platform/graphics/chromium/cc/CCTextureLayerImpl.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCPluginLayerImpl.cpp.
(WebCore):
(WebCore::CCTextureLayerImpl::CCTextureLayerImpl):
(WebCore::CCTextureLayerImpl::~CCTextureLayerImpl):
(WebCore::CCTextureLayerImpl::willDraw):
(WebCore::CCTextureLayerImpl::appendQuads):
(WebCore::CCTextureLayerImpl::dumpLayerProperties):
(WebCore::CCTextureLayerImpl::didLoseContext):
(WebCore::CCTextureLayerImpl::setIOSurfaceProperties):
* platform/graphics/chromium/cc/CCTextureLayerImpl.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCPluginLayerImpl.h.
(WebCore):
(CCTextureLayerImpl):
(WebCore::CCTextureLayerImpl::create):
(WebCore::CCTextureLayerImpl::textureId):
(WebCore::CCTextureLayerImpl::setTextureId):
(WebCore::CCTextureLayerImpl::setHasAlpha):
(WebCore::CCTextureLayerImpl::setPremultipliedAlpha):
(WebCore::CCTextureLayerImpl::setFlipped):
(WebCore::CCTextureLayerImpl::setUVRect):
(WebCore::CCTextureLayerImpl::layerTypeAsString):

Source/WebKit/chromium:

* tests/Canvas2DLayerChromiumTest.cpp:

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

9 years ago[EFL] Unreviewed gardening after r111110.
kubo@profusion.mobi [Sat, 17 Mar 2012 03:00:40 +0000 (03:00 +0000)]
[EFL] Unreviewed gardening after r111110.

* platform/efl/Skipped: Unskip fast/canvas/fillText-shadow.html
just like GTK+ did.

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

9 years ago[Cairo] Text extent of shadowed text is calculated incorrectly
mrobinson@webkit.org [Sat, 17 Mar 2012 02:54:48 +0000 (02:54 +0000)]
[Cairo] Text extent of shadowed text is calculated incorrectly
https://bugs.webkit.org/show_bug.cgi?id=65035

Source/WebCore:

Reviewed by Martin Robinson.

No new tests. This is already covered by fast/canvas/fillText-shadow.html.

Correct determine the size of rendered text using x and y bearing from the font
extents.

* platform/graphics/cairo/FontCairo.cpp:
(WebCore::drawGlyphsShadow): Use the x and y bearing to calculate text extents.
This gives a more accurate sizing and avoids clipping the edges of the shadow.

LayoutTests:

Reviewed by Martin Robinson

* platform/gtk/Skipped: Unskip a test that is now passing.

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

9 years ago[Chromium][Performance] Optimize innerText and outerText in Chromium/Mac
haraken@chromium.org [Sat, 17 Mar 2012 02:32:51 +0000 (02:32 +0000)]
[Chromium][Performance] Optimize innerText and outerText in Chromium/Mac
https://bugs.webkit.org/show_bug.cgi?id=81192

Reviewed by Dimitri Glazkov.

This patch makes innerText and outerText 4 times faster on Chromium/Mac.
A similar performance improvement will be also observed in APIs that are using
TextIterator::plainText() (e.g. Editting, SpellChecker, Clipboard, Pasteboard etc).

Performance test: https://bugs.webkit.org/attachment.cgi?id=131989

- AppleWebKit/JavaScriptCore/Mac:
div.innerText : 2978.4ms
div.outerText : 2944.4ms

- Chromium/V8/Mac without the patch:
div.innerText : 10050.8ms
div.outerText : 10072.2ms

- Chromium/V8/Mac with the patch:
div.innerText: 2536.4ms
div.outerText: 2714ms

This patch just changes the initial buffer size of a plain text buffer on Chromium/Mac.
As shown below, in my local Chromium/Mac environment the performance changes
dramatically between 1<<15 and 1<<16, and in my local Chromium/Linux environment
the performance changes between 1<<17 and 1<<18. I am not yet sure what determines
these figures, but it seems there exists a performance gap at some point
depending on a malloc mechanism.

- div.innerText results on Chromium/V8/Mac:
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 14 ==> 2465.6 ms
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 15 ==> 2447.2 ms   <--- after this patch
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 16 ==> 10250.8 ms  <--- before this patch
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 17 ==> 10278.2 ms

- div.innerText results on Chromium/V8/Linux:
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 14 ==> 1569.8 ms
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 15 ==> 1531.8 ms
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 16 ==> 1543.2 ms  <--- before/after this patch
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 17 ==> 1541.6 ms
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 18 ==> 12540.8 ms
WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY = 1 << 19 ==> 12340.8 ms

* editing/TextIterator.cpp:
(WebCore::plainTextToMallocAllocatedBuffer):

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

9 years agoHTMLFrameElementBase::m_remainsAliveOnRemovalFromTree can be cleared without unloadin...
dimich@chromium.org [Sat, 17 Mar 2012 02:27:51 +0000 (02:27 +0000)]
HTMLFrameElementBase::m_remainsAliveOnRemovalFromTree can be cleared without unloading the frame.
https://bugs.webkit.org/show_bug.cgi?id=80766

Reviewed by Adam Barth.

* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::insertedIntoDocument):
(WebCore::HTMLFrameElementBase::setRemainsAliveOnRemovalFromTree):
if adoptNode() is called on a detached iframe or with a detached document,
unload the iframe to avoid live iframe to hang around w/o being attached to
a document.

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

9 years agoXcode project file is not sorted.
commit-queue@webkit.org [Sat, 17 Mar 2012 02:22:57 +0000 (02:22 +0000)]
Xcode project file is not sorted.
https://bugs.webkit.org/show_bug.cgi?id=81439

Sorted the project file entries using sort-Xcode-project-file script.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-03-16
Reviewed by Eric Seidel.

* WebCore.xcodeproj/project.pbxproj:

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

9 years agoUnreviewed build fix after r111075.
yael.aharon@nokia.com [Sat, 17 Mar 2012 02:16:40 +0000 (02:16 +0000)]
Unreviewed build fix after r111075.
Correct the path of WebKitBlobBuilder.idl.

* DerivedSources.pri:

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

9 years agoFix for test runs for non-chromium platforms.
levin@chromium.org [Sat, 17 Mar 2012 02:01:26 +0000 (02:01 +0000)]
Fix for test runs for non-chromium platforms.

* loader/cache/MemoryCache.cpp:
(WebCore::memoryCache):
(WebCore::MemoryCache::add):
(WebCore::MemoryCache::revalidationFailed):
(WebCore::MemoryCache::resourceForURL):
(WebCore::MemoryCache::evict):

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

9 years agoRebaselines for compositing tests with video
commit-queue@webkit.org [Sat, 17 Mar 2012 01:55:12 +0000 (01:55 +0000)]
Rebaselines for compositing tests with video
https://bugs.webkit.org/show_bug.cgi?id=81430

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-03-16
Reviewed by James Robinson.

* platform/chromium-linux/compositing/geometry/video-fixed-scrolling-expected.png:
* platform/chromium-linux/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-linux/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium-linux/compositing/self-painting-layers-expected.png:
* platform/chromium-linux/compositing/visibility/visibility-simple-video-layer-expected.png:
* platform/chromium-mac-leopard/compositing/geometry/video-fixed-scrolling-expected.png:
* platform/chromium-mac-leopard/compositing/geometry/video-opacity-overlay-expected.png: Removed.
* platform/chromium-mac-leopard/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-mac-leopard/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium-mac-leopard/compositing/self-painting-layers-expected.png:
* platform/chromium-mac-snowleopard/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-mac-snowleopard/compositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac/compositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-mac/compositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac/compositing/reflections/load-video-in-reflection-expected.png:
* platform/chromium-mac/compositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac/compositing/visibility/visibility-simple-video-layer-expected.png: Added.
* platform/chromium-win/compositing/geometry/video-fixed-scrolling-expected.png:
* platform/chromium-win/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-win/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium-win/compositing/overflow/scroll-ancestor-update-expected.txt:
* platform/chromium-win/compositing/self-painting-layers-expected.png:
* platform/chromium-win/compositing/visibility/visibility-simple-video-layer-expected.png:
* platform/chromium/compositing/geometry/video-fixed-scrolling-expected.png: Removed.
* platform/chromium/compositing/geometry/video-opacity-overlay-expected.png: Removed.
* platform/chromium/compositing/overflow/scroll-ancestor-update-expected.png: Removed.
* platform/chromium/compositing/self-painting-layers-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed, rolling out r111094.
tony@chromium.org [Sat, 17 Mar 2012 01:29:39 +0000 (01:29 +0000)]
Unreviewed, rolling out r111094.
http://trac.webkit.org/changeset/111094
https://bugs.webkit.org/show_bug.cgi?id=80882

broke test on chromium-win

Source/WebCore:

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::alignChildren):
* rendering/RenderFlexibleBox.h:
(RenderFlexibleBox):

LayoutTests:

* css3/flexbox/child-overflow-expected.html:
* css3/flexbox/child-overflow.html:
* css3/flexbox/flex-align-stretch-expected.txt:
* css3/flexbox/flex-align-stretch.html:

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

9 years agoREGRESSION (r110737): Height element changes on scrolled page causes failure
andersca@apple.com [Sat, 17 Mar 2012 01:21:14 +0000 (01:21 +0000)]
REGRESSION (r110737): Height element changes on scrolled page causes failure
https://bugs.webkit.org/show_bug.cgi?id=81381
<rdar://problem/11066006>

Reviewed by Sam Weinig.

Limit the fix made in r110737 to check if there's a rubber-band gesture in progress and only ignore the range if that is the case.

* platform/ScrollAnimator.h:
(WebCore::ScrollAnimator::isRubberBandInProgress):
(ScrollAnimator):
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):
* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::isRubberBandInProgress):
(WebCore):
* platform/mac/ScrollElasticityController.h:
(ScrollElasticityController):
* platform/mac/ScrollElasticityController.mm:
(WebCore::ScrollElasticityController::isRubberBandInProgress):
(WebCore):

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

9 years agoGestureTapDown needs to pin in-progress flings
commit-queue@webkit.org [Sat, 17 Mar 2012 00:52:17 +0000 (00:52 +0000)]
GestureTapDown needs to pin in-progress flings
https://bugs.webkit.org/show_bug.cgi?id=80875

Patch by Robert Kroeger <rjkroege@chromium.org> on 2012-03-16
Reviewed by Adam Barth.

* page/EventHandler.cpp:
(WebCore):
(WebCore::EventHandler::handleGestureTapDown):
* page/EventHandler.h:
(EventHandler):

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

9 years agoAccount for sample-rate in convolution normalization
crogers@google.com [Sat, 17 Mar 2012 00:49:27 +0000 (00:49 +0000)]
Account for sample-rate in convolution normalization
https://bugs.webkit.org/show_bug.cgi?id=81432

Reviewed by James Robinson.

* platform/audio/Reverb.cpp:
(WebCore):
(WebCore::calculateNormalizationScale):
* webaudio/ConvolverNode.cpp:
(WebCore::ConvolverNode::setBuffer):

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

9 years ago[BlackBerry] Rename the existing WebPageCompositor class to WebPageCompositorPrivate
commit-queue@webkit.org [Sat, 17 Mar 2012 00:41:19 +0000 (00:41 +0000)]
[BlackBerry] Rename the existing WebPageCompositor class to WebPageCompositorPrivate
https://bugs.webkit.org/show_bug.cgi?id=81108
RIM PR: 136687

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-03-16
Reviewed by Rob Buis.

This is done in anticipation of a new WebPageCompositor class in the
public API. The existing internal class will serve to d-pointerize the
new public API. In addition, it is and will be possible to create only
the private class, for cases where existing code paths require
OpenGL compositing (i.e. due to accelerated compositing layers being
added to the page).

Reviewed internally by Robin Cao.

* Api/BackingStore.h:
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setIsAcceleratedCompositingActive):
* Api/WebPageCompositor.cpp: Renamed from Source/WebKit/blackberry/WebKitSupport/WebPageCompositor.cpp.
(BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
(BlackBerry::WebKit::WebPageCompositorPrivate::~WebPageCompositorPrivate):
(BlackBerry::WebKit::WebPageCompositorPrivate::hardwareCompositing):
(BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
(BlackBerry::WebKit::WebPageCompositorPrivate::setBackingStoreUsesOpenGL):
(BlackBerry::WebKit::WebPageCompositorPrivate::commit):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
(BlackBerry::WebKit::WebPageCompositorPrivate::releaseLayerResources):
(BlackBerry::WebKit::WebPageCompositorPrivate::animationTimerFired):
* Api/WebPageCompositor_p.h: Renamed from Source/WebKit/blackberry/WebKitSupport/WebPageCompositor.h.
(BlackBerry::WebKit::WebPageCompositorPrivate::layoutRectForCompositing):
(BlackBerry::WebKit::WebPageCompositorPrivate::setLayoutRectForCompositing):
(BlackBerry::WebKit::WebPageCompositorPrivate::contentsSizeForCompositing):
(BlackBerry::WebKit::WebPageCompositorPrivate::setContentsSizeForCompositing):
(BlackBerry::WebKit::WebPageCompositorPrivate::lastCompositingResults):
(BlackBerry::WebKit::WebPageCompositorPrivate::setLastCompositingResults):
* Api/WebPage_p.h:
* CMakeListsBlackBerry.txt:

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

9 years agoMake V8 window.open.call(), window.open.showModalDialog() results more closely match...
tsepez@chromium.org [Sat, 17 Mar 2012 00:31:22 +0000 (00:31 +0000)]
Make V8 window.open.call(), window.open.showModalDialog() results more closely match JSC.
https://bugs.webkit.org/show_bug.cgi?id=81260
https://bugs.webkit.org/show_bug.cgi?id=39897

Reviewed by Adam Barth.

Source/WebCore:

Tested via http/tests/security/cross-frame-access-call.htm

* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::showModalDialogCallback):
(WebCore::V8DOMWindow::openCallback):

LayoutTests:

* http/tests/security/cross-frame-access-call-expected.txt:
* http/tests/security/cross-frame-access-call.html:
* http/tests/security/cross-frame-access-get-expected.txt:
* http/tests/security/cross-frame-access-get.html:
* platform/chromium/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
* platform/chromium/http/tests/security/cross-frame-access-call-expected.txt:

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

9 years agoSource/WebKit2: https://bugs.webkit.org/show_bug.cgi?id=81065
slewis@apple.com [Sat, 17 Mar 2012 00:29:38 +0000 (00:29 +0000)]
Source/WebKit2: https://bugs.webkit.org/show_bug.cgi?id=81065
<rdar://problem/10944309> CrashTracer: [USER] 111 crashes in WebProcess at WebKitTestRunnerInjectedBundle: WTR::InjectedBundle::done + 142
Add some string function exports to Windows so the WebKitTestRunner can use them.

Reviewed by Geoff Garen.

* win/WebKit2.def:

Tools: https://bugs.webkit.org/show_bug.cgi?id=81065
<rdar://problem/10944309> CrashTracer: [USER] 111 crashes in WebProcess at WebKitTestRunnerInjectedBundle: WTR::InjectedBundle::done + 142
Fix crash preventing WebKitTestRunner from working in Release.
WebKitTestRunner used ostringstream to collect output from the test.  ostringstream is incompatible with our
FastMalloc overrides.  When copying strings out ostringstream a new string is allocated with FastMalloc because
the allocation is inlined.  When that string is freed is uses the system malloc because that call is not inlined.

I removed ostringstream in favor of StringBuilder.

Properly set NDEBUG on Release builds so we don't crash when when we free the strings StringBuilder created.

Reviewed by Geoff Garen.

Add DEBUG_DEFINES to set NDEBUG on release builds.
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

Remove ostringstream member in favor of StringBuilder.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::initialize):
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::done):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
(WTF):
(WTR::InjectedBundle::stringBuilder):
(InjectedBundle):

Append output to StringBuilder.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::hasPrefix):
(WTR::dumpPath):
(WTR::rangeToStr):
(WTR::styleDecToStr):
(WTR::frameToStr):
(WTR::dumpFrameScrollPosition):
(WTR::dumpFrameText):
(WTR::dumpDescendantFramesText):
(WTR::InjectedBundlePage::dump):
(WTR::InjectedBundlePage::didReceiveTitleForFrame):
(WTR::InjectedBundlePage::didFinishDocumentLoadForFrame):
(WTR::InjectedBundlePage::willSendRequestForFrame):
(WTR::InjectedBundlePage::decidePolicyForNavigationAction):
(WTR::lastFileURLPathComponent):
(WTR::InjectedBundlePage::willAddMessageToConsole):
(WTR::InjectedBundlePage::willSetStatusbarText):
(WTR::InjectedBundlePage::willRunJavaScriptAlert):
(WTR::InjectedBundlePage::willRunJavaScriptConfirm):
(WTR::InjectedBundlePage::willRunJavaScriptPrompt):
(WTR::InjectedBundlePage::shouldBeginEditing):
(WTR::InjectedBundlePage::shouldEndEditing):
(WTR::InjectedBundlePage::shouldInsertNode):
(WTR::InjectedBundlePage::shouldInsertText):
(WTR::InjectedBundlePage::shouldDeleteRange):
(WTR::InjectedBundlePage::shouldChangeSelectedRange):
(WTR::InjectedBundlePage::shouldApplyStyle):
(WTR::InjectedBundlePage::didBeginEditing):
(WTR::InjectedBundlePage::didEndEditing):
(WTR::InjectedBundlePage::didChange):
(WTR::InjectedBundlePage::didChangeSelection):
(WTR::InjectedBundlePage::supportsFullScreen):
(WTR::InjectedBundlePage::enterFullScreenForElement):
(WTR::InjectedBundlePage::exitFullScreenForElement):
(WTR::InjectedBundlePage::beganEnterFullScreen):
(WTR::InjectedBundlePage::beganExitFullScreen):
(WTR::dumpBackForwardListItem):
(WTR::InjectedBundlePage::dumpBackForwardList):
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::waitToDumpWatchdogTimerFired):
(WTR::LayoutTestController::dumpConfigurationForViewport):

Convert between WTF::String and WKStringRef.
* WebKitTestRunner/StringFunctions.h:
(WTR::toWTFString):
(WTR):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):

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

9 years agoUse modern NSNumberFormatter API in LocalizedNumberMac.mm
mlilek@apple.com [Sat, 17 Mar 2012 00:27:49 +0000 (00:27 +0000)]
Use modern NSNumberFormatter API in LocalizedNumberMac.mm
https://bugs.webkit.org/show_bug.cgi?id=81429

Reviewed by Dan Bernstein.

No new tests as no change in behavior.

* platform/text/mac/LocalizedNumberMac.mm:
(WebCore::createFormatterForCurrentLocaleForDisplay):

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

9 years agoAdd a land-from-url command
eric@webkit.org [Sat, 17 Mar 2012 00:19:11 +0000 (00:19 +0000)]
Add a land-from-url command
https://bugs.webkit.org/show_bug.cgi?id=81411

Reviewed by Adam Barth.

Very basic so far.  The goal is to make it landing smarter
so that users don't have to bother to parse out the ids out of the urls.

* Scripts/webkitpy/common/config/urls.py:
(parse_bug_id):
(parse_attachment_id):
* Scripts/webkitpy/common/config/urls_unittest.py:
(URLsTest.test_parse_bug_id):
(URLsTest):
(URLsTest.test_parse_attachment_id):
* Scripts/webkitpy/tool/commands/download.py:
(ProcessURLsMixin):
(ProcessURLsMixin._fetch_list_of_patches_to_process):
(LandFromURL):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(test_land_from_bug):
(test_land_from_url):

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

9 years agoflex-item-align: stretch should only grow, never shrink
tony@chromium.org [Sat, 17 Mar 2012 00:16:37 +0000 (00:16 +0000)]
flex-item-align: stretch should only grow, never shrink
https://bugs.webkit.org/show_bug.cgi?id=80882

Reviewed by Ojan Vafai.

Source/WebCore:

New test cases in css3/flexbox/flex-align-stretch.html.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::alignChildren): Move stretch code into a separate function.
(WebCore::RenderFlexibleBox::alignChildStretch): Add an early return if our height is shrinking.
(WebCore):
* rendering/RenderFlexibleBox.h:
(RenderFlexibleBox):

LayoutTests:

* css3/flexbox/child-overflow-expected.html:
* css3/flexbox/child-overflow.html: For cases that overflow the height, we now just overflow rather than reducing the height.
* css3/flexbox/flex-align-stretch-expected.txt:
* css3/flexbox/flex-align-stretch.html: New test cases.

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

9 years agobuild-webkit launcher instructions use wrong relative path for Qt
commit-queue@webkit.org [Sat, 17 Mar 2012 00:13:06 +0000 (00:13 +0000)]
build-webkit launcher instructions use wrong relative path for Qt
https://bugs.webkit.org/show_bug.cgi?id=81357

Patch by Dave Tharp <dtharp@codeaurora.org> on 2012-03-16
Reviewed by Eric Seidel.

Ensure we are at the proper directory before generating run-launcher
instructions.

* Scripts/build-webkit:

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

9 years ago[EFL] Unreviewed, fix build after r111041.
kubo@profusion.mobi [Sat, 17 Mar 2012 00:10:02 +0000 (00:10 +0000)]
[EFL] Unreviewed, fix build after r111041.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::emitMediaButtonSignal): Rename
MediaFullscreenButton to MediaEnterFullscreenButton.
(WebCore::RenderThemeEfl::paintMediaFullscreenButton): Ditto.

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

9 years agoAdd layout tests that accidentally got left out of r111061
dcheng@chromium.org [Fri, 16 Mar 2012 23:49:40 +0000 (23:49 +0000)]
Add layout tests that accidentally got left out of r111061

* fast/events/clipboard-dataTransferItemList-expected.txt: Added.
* fast/events/clipboard-dataTransferItemList.html: Added.
* fast/events/drag-dataTransferItemList-expected.txt: Added.
* fast/events/drag-dataTransferItemList.html: Added.

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

9 years agoREGRESSION: DOMURL::revokeObjectURL accesses memoryCache on worker thread.
dslomov@google.com [Fri, 16 Mar 2012 23:49:29 +0000 (23:49 +0000)]
REGRESSION: DOMURL::revokeObjectURL accesses memoryCache on worker thread.
https://bugs.webkit.org/show_bug.cgi?id=80889
On worker threads, post a task to main thread to evict from cache.
ASSERT that MemoryCache is only accessed from main thread.

Reviewed by David Levin.

* html/DOMURL.cpp:
(WebCore::DOMURL::revokeObjectURL):
* loader/cache/MemoryCache.cpp:
(WebCore::memoryCache):
(WebCore::MemoryCache::add):
(WebCore::MemoryCache::revalidationFailed):
(WebCore::MemoryCache::resourceForURL):
(WebCore::MemoryCache::evict):
(WebCore):
(WebCore::MemoryCache::removeUrlFromCache):
(WebCore::MemoryCache::removeUrlFromCacheImpl):
* loader/cache/MemoryCache.h:
(WebCore):
(MemoryCache):

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

9 years ago[BlackBerry] Upstream ScriptControllerBlackBerry.cpp
commit-queue@webkit.org [Fri, 16 Mar 2012 23:47:05 +0000 (23:47 +0000)]
[BlackBerry] Upstream ScriptControllerBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=81397

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

Initial upstream, no new tests.

* bindings/js/ScriptControllerBlackBerry.cpp: Added.

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

9 years ago[BlackBerry] Syncing up left over bits in WebKitSupport from our local branch to...
commit-queue@webkit.org [Fri, 16 Mar 2012 23:46:15 +0000 (23:46 +0000)]
[BlackBerry] Syncing up left over bits in WebKitSupport from our local branch to upstream
https://bugs.webkit.org/show_bug.cgi?id=81118

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-03-16
Reviewed by Rob Buis.

This is a consolidation of various changes that are in our local dev branch
but do not appear in our upstreamed port.

* WebKitSupport/DumpRenderTreeSupport.cpp:
(DumpRenderTreeSupport::computedStyleIncludingVisitedInfo):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::isElementClickable):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::spannableTextInRange):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::createBuffers):
(BlackBerry::WebKit::SurfacePool::releaseBuffers):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
(BlackBerry::WebKit::TouchEventHandler::handleFatFingerPressed):
* WebKitSupport/WebPageCompositor.cpp:
(BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
* WebKitSupport/WebPageCompositor.h:
(WebPageCompositor):

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

9 years agoremove-body-during-body-replacement2.html is triggering crashes on all platforms
abarth@webkit.org [Fri, 16 Mar 2012 23:41:23 +0000 (23:41 +0000)]
remove-body-during-body-replacement2.html is triggering crashes on all platforms
https://bugs.webkit.org/show_bug.cgi?id=81374

Reviewed by Eric Seidel.

When overriding disconnectFrame, we need to call the base class version
of the method so that it can clear the m_frame pointer.

Tests: This patch fixes a large number of crashes in tests.

* notifications/DOMWindowNotifications.cpp:
(WebCore::DOMWindowNotifications::disconnectFrame):

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

9 years ago[BlackBerry] Upstream the BlackBerry change to platform/Widget.h
leo.yang@torchmobile.com.cn [Fri, 16 Mar 2012 23:27:03 +0000 (23:27 +0000)]
[BlackBerry] Upstream the BlackBerry change to platform/Widget.h
https://bugs.webkit.org/show_bug.cgi?id=81304

Reviewed by Rob Buis.

typedefs of PlatformWidget and PlatformPageClient for the BlackBerry.

* platform/Widget.h:

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

9 years agoMathML internals - factor code for almost anonymous blocks
commit-queue@webkit.org [Fri, 16 Mar 2012 23:12:37 +0000 (23:12 +0000)]
MathML internals - factor code for almost anonymous blocks
https://bugs.webkit.org/show_bug.cgi?id=81387

Patch by David Barton <dbarton@mathscribe.com> on 2012-03-16
Reviewed by Eric Seidel.

Source/WebCore:

MathML uses "almost anonymous" blocks to layout parts of mathematical expressions. These
will be converted to true anonymous blocks in a later patch. Here we factor out the code
to create them into RenderMathMLBlock::createAlmostAnonymousBlock().

No new tests. Some tree dump output is modified for existing tests. <munder>, <mover>,
and <munderover> renderers already used true anonymous blocks, so we change them to call
RenderBlock::createAnonymousBlock(). In the other direction, <mroot>'s almost anonymous
blocks are now made RenderMathMLBlock not just RenderBlock, in agreement with other
current MathML renderers.

* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::createAlmostAnonymousBlock):
* rendering/mathml/RenderMathMLBlock.h:
(RenderMathMLBlock):
(WebCore::RenderMathMLBlock::getBoxModelObjectWidth):
* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::addChild):
* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::updateFromElement):
    - improve some variable names
(WebCore::RenderMathMLFraction::addChild):
(WebCore::RenderMathMLFraction::layout):
(WebCore::RenderMathMLFraction::paint):
(WebCore::RenderMathMLFraction::baselinePosition):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::addChild):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::addChild):
* rendering/mathml/RenderMathMLSubSup.h:
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore::RenderMathMLUnderOver::addChild):

LayoutTests:

* platform/mac/mathml/presentation/mo-stretch-expected.txt:
* platform/mac/mathml/presentation/over-expected.txt:
* platform/mac/mathml/presentation/roots-expected.txt:
* platform/mac/mathml/presentation/row-alignment-expected.txt:
* platform/mac/mathml/presentation/under-expected.txt:
* platform/mac/mathml/presentation/underover-expected.txt:

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

9 years agoPrepare RenderObject for FractionalLayoutUnits
leviw@chromium.org [Fri, 16 Mar 2012 23:05:34 +0000 (23:05 +0000)]
Prepare RenderObject for FractionalLayoutUnits
https://bugs.webkit.org/show_bug.cgi?id=81178

Reviewed by Eric Seidel.

This readies RenderObject to deal with FractionalLayoutUnits as a backend for the
LayoutUnit abstraction.

No new tests. No change in behavior.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::pixelSnappedAbsoluteClippedOverflowRect): Convenience method to be
used instead of absouluteClippedOverflowRect in platform code. Platform updates will come
in a separate patch.
(WebCore):
(WebCore::RenderObject::repaintAfterLayoutIfNeeded): Borders remain ints when we move to
sub-pixel layout. This adjusts border variables for this, and adds compiler fixes when
using std::max and std::min with mixed int/LayoutUnits.
(WebCore::RenderObject::adjustRectForOutlineAndShadow): Outlines, like borders, remain
ints in the new sub-pixel world. Using variables that reflect that.
* rendering/RenderObject.h:
(RenderObject):
(WebCore::adjustForAbsoluteZoom): Handles FractionalLayoutUnit values. Flooring is what
JavaScript requires since this is used with values that must return ints.
(WebCore): Adding FractionalLayoutUnit.h to support the new adjusteForAbsoluteZoom method.

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

9 years ago<rdar://problem/11027997> and https://bugs.webkit.org/show_bug.cgi?id=81412 REGRESSIO...
beidson@apple.com [Fri, 16 Mar 2012 22:29:59 +0000 (22:29 +0000)]
<rdar://problem/11027997> and https://bugs.webkit.org/show_bug.cgi?id=81412 REGRESSION (r107435) Copy a link and paste to Mail: Nothing is pasted

Reviewed by Geoff Garen.

Source/WebCore:

WebKit API test WebViewCanPasteURL.mm added.

* WebCore.exp.in:

Add a strategy method specifically for getting the URL:
* platform/PasteboardStrategy.h:

Use that strategy method when creating the fragment for a URL:
* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::documentFragment):

Add a platform pasteboard accessor to "do the right thing" for getting a URL:
* platform/PlatformPasteboard.h:
* platform/mac/PlatformPasteboardMac.mm:
(WebCore::PlatformPasteboard::url):

Source/WebKit/mac:

* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::setInsertionPasteboard):
* WebCoreSupport/WebPlatformStrategies.h:
(WebPlatformStrategies):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::url):

Source/WebKit2:

Add new message so the WebProcess can ask the UIProcesses pasteboard for the URL:
* UIProcess/WebContext.h:
* UIProcess/WebContext.messages.in:
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::getPasteboardURL):

Use that new message to implement the pasteboard strategy:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::url):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:
(WebPlatformStrategies):

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/WebViewCanPasteURL.mm: Added.

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

9 years ago<http://webkit.org/b/81380> clang warning unused variable when ENABLE(TEXT_CARET...
commit-queue@webkit.org [Fri, 16 Mar 2012 22:26:59 +0000 (22:26 +0000)]
<webkit.org/b/81380> clang warning unused variable when ENABLE(TEXT_CARET) is disabled

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-03-16
Reviewed by Dan Bernstein.

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::recomputeCaretRect):
Put the variable inside of a guard because it is only
used inside of a guard.

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

9 years agoFix some tests that broke with r111042.
ojan@chromium.org [Fri, 16 Mar 2012 22:23:43 +0000 (22:23 +0000)]
Fix some tests that broke with r111042.

* platform/chromium-linux-x86/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-linux/compositing/absolute-position-changed-with-composited-parent-layer-expected.png: Added.
* platform/chromium-linux/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac-leopard/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-animated-expected.txt: Removed.
* platform/chromium-win-vista/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.txt: Removed.
* platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.txt:

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

9 years agoMark wontfix tests in full_results.json so we can ignore them in garden-o-matic
ojan@chromium.org [Fri, 16 Mar 2012 22:19:53 +0000 (22:19 +0000)]
Mark wontfix tests in full_results.json so we can ignore them in garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=81407

Reviewed by Adam Barth.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(summarize_results):
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ResultSummaryTest.summarized_results):
(ResultSummaryTest.test_no_svn_revision):
(ResultSummaryTest.test_svn_revision):
(ResultSummaryTest):
(ResultSummaryTest.test_summarized_results_wontfix):

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

9 years agoShrink BorderValue.
kling@webkit.org [Fri, 16 Mar 2012 22:03:26 +0000 (22:03 +0000)]
Shrink BorderValue.
<http://webkit.org/b/69521>

Reviewed by Anders Carlsson.

Split BorderValue's Color member into RGBA32/bool buddies and stash the bool in
the BorderValue bitfield.

This shrinks BorderValue by 4 bytes, in turn shrinking BorderData by 16 bytes.
Altogether this yields ~800 kB in reduced memory consumption when viewing the full
HTML5 spec at <http://whatwg.org/c>

* rendering/style/BorderValue.h:
(WebCore::BorderValue::BorderValue):
(WebCore::BorderValue::isTransparent):
(WebCore::BorderValue::operator==):
(BorderValue):
(WebCore::BorderValue::setColor):
(WebCore::BorderValue::color):
* rendering/style/OutlineValue.h:
(WebCore::OutlineValue::operator==):
* rendering/style/RenderStyle.cpp:
(SameSizeAsBorderValue):
* rendering/style/RenderStyle.h:

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

9 years agoMoves remaining filesystem files to Modules/filesystem/
commit-queue@webkit.org [Fri, 16 Mar 2012 22:00:09 +0000 (22:00 +0000)]
Moves remaining filesystem files to Modules/filesystem/
https://bugs.webkit.org/show_bug.cgi?id=81353

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

No new tests, all existing tests pass.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/filesystem/AsyncFileWriter.h: Copied from Source/WebCore/fileapi/AsyncFileWriter.h.
* Modules/filesystem/AsyncFileWriterClient.h: Copied from Source/WebCore/fileapi/AsyncFileWriterClient.h.
* Modules/filesystem/DOMFilePath.cpp: Copied from Source/WebCore/fileapi/DOMFilePath.cpp.
* Modules/filesystem/DOMFilePath.h: Copied from Source/WebCore/fileapi/DOMFilePath.h.
* Modules/filesystem/DOMFileSystem.cpp: Copied from Source/WebCore/fileapi/DOMFileSystem.cpp.
* Modules/filesystem/DOMFileSystem.h: Copied from Source/WebCore/fileapi/DOMFileSystem.h.
* Modules/filesystem/DOMFileSystem.idl: Copied from Source/WebCore/fileapi/DOMFileSystem.idl.
* Modules/filesystem/DOMFileSystemBase.cpp: Copied from Source/WebCore/fileapi/DOMFileSystemBase.cpp.
* Modules/filesystem/DOMFileSystemBase.h: Copied from Source/WebCore/fileapi/DOMFileSystemBase.h.
* Modules/filesystem/DOMFileSystemSync.cpp: Copied from Source/WebCore/fileapi/DOMFileSystemSync.cpp.
* Modules/filesystem/DOMFileSystemSync.h: Copied from Source/WebCore/fileapi/DOMFileSystemSync.h.
* Modules/filesystem/DOMFileSystemSync.idl: Copied from Source/WebCore/fileapi/DOMFileSystemSync.idl.
* Modules/filesystem/Entry.cpp: Copied from Source/WebCore/fileapi/Entry.cpp.
* Modules/filesystem/Entry.h: Copied from Source/WebCore/fileapi/Entry.h.
* Modules/filesystem/Entry.idl: Copied from Source/WebCore/fileapi/Entry.idl.
* Modules/filesystem/EntryArray.cpp: Copied from Source/WebCore/fileapi/EntryArray.cpp.
* Modules/filesystem/EntryArray.h: Copied from Source/WebCore/fileapi/EntryArray.h.
* Modules/filesystem/EntryArray.idl: Copied from Source/WebCore/fileapi/EntryArray.idl.
* Modules/filesystem/EntryArraySync.cpp: Copied from Source/WebCore/fileapi/EntryArraySync.cpp.
* Modules/filesystem/EntryArraySync.h: Copied from Source/WebCore/fileapi/EntryArraySync.h.
* Modules/filesystem/EntryArraySync.idl: Copied from Source/WebCore/fileapi/EntryArraySync.idl.
* Modules/filesystem/EntryBase.cpp: Copied from Source/WebCore/fileapi/EntryBase.cpp.
* Modules/filesystem/EntryBase.h: Copied from Source/WebCore/fileapi/EntryBase.h.
* Modules/filesystem/EntryCallback.h: Copied from Source/WebCore/fileapi/EntryCallback.h.
* Modules/filesystem/EntryCallback.idl: Copied from Source/WebCore/fileapi/EntryCallback.idl.
* Modules/filesystem/EntrySync.cpp: Copied from Source/WebCore/fileapi/EntrySync.cpp.
* Modules/filesystem/EntrySync.h: Copied from Source/WebCore/fileapi/EntrySync.h.
* Modules/filesystem/EntrySync.idl: Copied from Source/WebCore/fileapi/EntrySync.idl.
* Modules/filesystem/ErrorCallback.h: Copied from Source/WebCore/fileapi/ErrorCallback.h.
* Modules/filesystem/ErrorCallback.idl: Copied from Source/WebCore/fileapi/ErrorCallback.idl.
* Modules/filesystem/FileCallback.h: Copied from Source/WebCore/fileapi/FileCallback.h.
* Modules/filesystem/FileCallback.idl: Copied from Source/WebCore/fileapi/FileCallback.idl.
* Modules/filesystem/FileEntry.cpp: Copied from Source/WebCore/fileapi/FileEntry.cpp.
* Modules/filesystem/FileEntry.h: Copied from Source/WebCore/fileapi/FileEntry.h.
* Modules/filesystem/FileEntry.idl: Copied from Source/WebCore/fileapi/FileEntry.idl.
* Modules/filesystem/FileEntrySync.cpp: Copied from Source/WebCore/fileapi/FileEntrySync.cpp.
* Modules/filesystem/FileEntrySync.h: Copied from Source/WebCore/fileapi/FileEntrySync.h.
* Modules/filesystem/FileEntrySync.idl: Copied from Source/WebCore/fileapi/FileEntrySync.idl.
* Modules/filesystem/FileSystemCallback.h: Copied from Source/WebCore/fileapi/FileSystemCallback.h.
* Modules/filesystem/FileSystemCallback.idl: Copied from Source/WebCore/fileapi/FileSystemCallback.idl.
* Modules/filesystem/FileSystemCallbacks.cpp: Copied from Source/WebCore/fileapi/FileSystemCallbacks.cpp.
* Modules/filesystem/FileSystemCallbacks.h: Copied from Source/WebCore/fileapi/FileSystemCallbacks.h.
* Modules/filesystem/FileWriter.cpp: Copied from Source/WebCore/fileapi/FileWriter.cpp.
* Modules/filesystem/FileWriter.h: Copied from Source/WebCore/fileapi/FileWriter.h.
* Modules/filesystem/FileWriter.idl: Copied from Source/WebCore/fileapi/FileWriter.idl.
* Modules/filesystem/FileWriterBase.cpp: Copied from Source/WebCore/fileapi/FileWriterBase.cpp.
* Modules/filesystem/FileWriterBase.h: Copied from Source/WebCore/fileapi/FileWriterBase.h.
* Modules/filesystem/FileWriterBaseCallback.h: Copied from Source/WebCore/fileapi/FileWriterBaseCallback.h.
* Modules/filesystem/FileWriterCallback.h: Copied from Source/WebCore/fileapi/FileWriterCallback.h.
* Modules/filesystem/FileWriterCallback.idl: Copied from Source/WebCore/fileapi/FileWriterCallback.idl.
* Modules/filesystem/FileWriterSync.cpp: Copied from Source/WebCore/fileapi/FileWriterSync.cpp.
* Modules/filesystem/FileWriterSync.h: Copied from Source/WebCore/fileapi/FileWriterSync.h.
* Modules/filesystem/FileWriterSync.idl: Copied from Source/WebCore/fileapi/FileWriterSync.idl.
* Modules/filesystem/LocalFileSystem.cpp: Copied from Source/WebCore/fileapi/LocalFileSystem.cpp.
* Modules/filesystem/LocalFileSystem.h: Copied from Source/WebCore/fileapi/LocalFileSystem.h.
* Modules/filesystem/Metadata.h: Copied from Source/WebCore/fileapi/Metadata.h.
* Modules/filesystem/Metadata.idl: Copied from Source/WebCore/fileapi/Metadata.idl.
* Modules/filesystem/MetadataCallback.h: Copied from Source/WebCore/fileapi/MetadataCallback.h.
* Modules/filesystem/MetadataCallback.idl: Copied from Source/WebCore/fileapi/MetadataCallback.idl.
* Modules/filesystem/SyncCallbackHelper.h: Copied from Source/WebCore/fileapi/SyncCallbackHelper.h.
* Modules/filesystem/WebKitFlags.h: Copied from Source/WebCore/fileapi/WebKitFlags.h.
* Modules/filesystem/WorkerContextFileSystem.cpp: Copied from Source/WebCore/fileapi/WorkerContextFileSystem.cpp.
* Modules/filesystem/WorkerContextFileSystem.h: Copied from Source/WebCore/fileapi/WorkerContextFileSystem.h.
* Modules/filesystem/WorkerContextFileSystem.idl: Copied from Source/WebCore/fileapi/WorkerContextFileSystem.idl.
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* fileapi/AsyncFileWriter.h: Removed.
* fileapi/AsyncFileWriterClient.h: Removed.
* fileapi/DOMFilePath.cpp: Removed.
* fileapi/DOMFilePath.h: Removed.
* fileapi/DOMFileSystem.cpp: Removed.
* fileapi/DOMFileSystem.h: Removed.
* fileapi/DOMFileSystem.idl: Removed.
* fileapi/DOMFileSystemBase.cpp: Removed.
* fileapi/DOMFileSystemBase.h: Removed.
* fileapi/DOMFileSystemSync.cpp: Removed.
* fileapi/DOMFileSystemSync.h: Removed.
* fileapi/DOMFileSystemSync.idl: Removed.
* fileapi/Entry.cpp: Removed.
* fileapi/Entry.h: Removed.
* fileapi/Entry.idl: Removed.
* fileapi/EntryArray.cpp: Removed.
* fileapi/EntryArray.h: Removed.
* fileapi/EntryArray.idl: Removed.
* fileapi/EntryArraySync.cpp: Removed.
* fileapi/EntryArraySync.h: Removed.
* fileapi/EntryArraySync.idl: Removed.
* fileapi/EntryBase.cpp: Removed.
* fileapi/EntryBase.h: Removed.
* fileapi/EntryCallback.h: Removed.
* fileapi/EntryCallback.idl: Removed.
* fileapi/EntrySync.cpp: Removed.
* fileapi/EntrySync.h: Removed.
* fileapi/EntrySync.idl: Removed.
* fileapi/ErrorCallback.h: Removed.
* fileapi/ErrorCallback.idl: Removed.
* fileapi/FileCallback.h: Removed.
* fileapi/FileCallback.idl: Removed.
* fileapi/FileEntry.cpp: Removed.
* fileapi/FileEntry.h: Removed.
* fileapi/FileEntry.idl: Removed.
* fileapi/FileEntrySync.cpp: Removed.
* fileapi/FileEntrySync.h: Removed.
* fileapi/FileEntrySync.idl: Removed.
* fileapi/FileSystemCallback.h: Removed.
* fileapi/FileSystemCallback.idl: Removed.
* fileapi/FileSystemCallbacks.cpp: Removed.
* fileapi/FileSystemCallbacks.h: Removed.
* fileapi/FileWriter.cpp: Removed.
* fileapi/FileWriter.h: Removed.
* fileapi/FileWriter.idl: Removed.
* fileapi/FileWriterBase.cpp: Removed.
* fileapi/FileWriterBase.h: Removed.
* fileapi/FileWriterBaseCallback.h: Removed.
* fileapi/FileWriterCallback.h: Removed.
* fileapi/FileWriterCallback.idl: Removed.
* fileapi/FileWriterSync.cpp: Removed.
* fileapi/FileWriterSync.h: Removed.
* fileapi/FileWriterSync.idl: Removed.
* fileapi/LocalFileSystem.cpp: Removed.
* fileapi/LocalFileSystem.h: Removed.
* fileapi/Metadata.h: Removed.
* fileapi/Metadata.idl: Removed.
* fileapi/MetadataCallback.h: Removed.
* fileapi/MetadataCallback.idl: Removed.
* fileapi/SyncCallbackHelper.h: Removed.
* fileapi/WebKitFlags.h: Removed.
* fileapi/WorkerContextFileSystem.cpp: Removed.
* fileapi/WorkerContextFileSystem.h: Removed.
* fileapi/WorkerContextFileSystem.idl: Removed.

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

9 years agoCollapse ENABLE(BLOB)|ENABLE(FILE_SYSTEM) to just ENABLE(BLOB) in OperationNotAllowed...
commit-queue@webkit.org [Fri, 16 Mar 2012 21:54:35 +0000 (21:54 +0000)]
Collapse ENABLE(BLOB)|ENABLE(FILE_SYSTEM) to just ENABLE(BLOB) in OperationNotAllowedException.idl
https://bugs.webkit.org/show_bug.cgi?id=81391

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

No new tests, all existing tests pass.

* fileapi/OperationNotAllowedException.idl:

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

9 years agoscrollbars/scrollbar-middleclick-nopaste.html times out on mac WK1
timothy_horton@apple.com [Fri, 16 Mar 2012 21:49:15 +0000 (21:49 +0000)]
scrollbars/scrollbar-middleclick-nopaste.html times out on mac WK1
https://bugs.webkit.org/show_bug.cgi?id=81410

Skip scrollbars/scrollbar-middleclick-nopaste.html on Mac.

* platform/mac/Skipped:

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

9 years agoplugins/netscape-plugin-setwindow-size-2.html and plugins/resize-from-plugin.html...
jberlin@webkit.org [Fri, 16 Mar 2012 21:47:55 +0000 (21:47 +0000)]
plugins/netscape-plugin-setwindow-size-2.html and plugins/resize-from-plugin.html failing on Lion Intel Debug WebKit2 testers
https://bugs.webkit.org/show_bug.cgi?id=81405

Add expected failing results for mac-wk2 to get the bots green.

* platform/mac-wk2/plugins/netscape-plugin-setwindow-size-2-expected.txt: Added.
* platform/mac-wk2/plugins/resize-from-plugin-expected.txt: Added.

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

9 years agoplugins/npruntime/browser-object-identity.html failing on Lion Intel Debug WebKit2...
jberlin@webkit.org [Fri, 16 Mar 2012 21:47:50 +0000 (21:47 +0000)]
plugins/npruntime/browser-object-identity.html failing on Lion Intel Debug WebKit2 testers
https://bugs.webkit.org/show_bug.cgi?id=81403

Add expected failing results for mac-wk2 to get the bots green.

* platform/mac-wk2/plugins/npruntime/browser-object-identity-expected.txt: Added.

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

9 years agoplugins/refcount-leaks.html failing on Lion Intel Debug WebKit2 testers
jberlin@webkit.org [Fri, 16 Mar 2012 21:47:44 +0000 (21:47 +0000)]
plugins/refcount-leaks.html failing on Lion Intel Debug WebKit2 testers
https://bugs.webkit.org/show_bug.cgi?id=81400

Add expected failing results for mac-wk2 to get the bots green.

* platform/mac-wk2/plugins/refcount-leaks-expected.txt: Added.

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

9 years agoplugins/crash-restoring-plugin-page-from-page-cache.html and
jberlin@webkit.org [Fri, 16 Mar 2012 21:47:37 +0000 (21:47 +0000)]
plugins/crash-restoring-plugin-page-from-page-cache.html and
plugins/netscape-plugin-page-cache-works.html timing out on Intel Debug WebKit2 testers
https://bugs.webkit.org/show_bug.cgi?id=81392

Skip these tests for WK2.

* platform/wk2/Skipped:

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

9 years agoFix rounding and usage of LayoutUnits in RenderBoxModelObject
eae@chromium.org [Fri, 16 Mar 2012 21:30:11 +0000 (21:30 +0000)]
Fix rounding and usage of LayoutUnits in RenderBoxModelObject
https://bugs.webkit.org/show_bug.cgi?id=81057

Reviewed by Julien Chaffraix.

No new tests.

(WebCore):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::pixelSnappedOffsetWidth):
(WebCore::RenderBoxModelObject::pixelSnappedOffsetHeight):
Fix implementation of pixelSnappedOffsetWidth/Height. The location
parameter will be ignored until we enable subpixel support.

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
Use ints for border widths.

(WebCore::resolveWidthForRatio):
(WebCore::resolveHeightForRatio):
(WebCore::resolveAgainstIntrinsicWidthOrHeightAndRatio):
(WebCore::resolveAgainstIntrinsicRatio):
Change resolve*Ratio methods to operate on IntSizes as none of the
callers need subpixel precision.

(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
(WebCore::RenderBoxModelObject::paintNinePieceImage):
Pixel snap paintRect when computing image geometry.

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

9 years agoUnreviewed new mac baselines after http://trac.webkit.org/changeset/108185
timothy_horton@apple.com [Fri, 16 Mar 2012 21:19:48 +0000 (21:19 +0000)]
Unreviewed new mac baselines after trac.webkit.org/changeset/108185

* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-ancestor-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-dynamic-removed-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-dynamic-removed-expected.txt: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-keeps-style-expected.png: Added.
* platform/mac/fast/css/relative-positioned-block-with-inline-parent-keeps-style-expected.txt: Added.

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

9 years ago100% height elements to not respond to vertical browser rescaling
commit-queue@webkit.org [Fri, 16 Mar 2012 21:15:46 +0000 (21:15 +0000)]
100% height elements to not respond to vertical browser rescaling
https://bugs.webkit.org/show_bug.cgi?id=43022

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-03-16
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/replaced/vertical-resize-100percent-element.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
    For the case where a replaced element has a percentage height,
    we update the entries in RenderBlock::gPercentHeightDescendantsMap
    corresponding to all ancestors of the replaced element.

LayoutTests:

* fast/replaced/resources/vertical-resize-100percent-contents.html: Added.
* fast/replaced/vertical-resize-100percent-element-expected.txt: Added.
* fast/replaced/vertical-resize-100percent-element.html: Added.
      Layout test to ensure that an image with 100% height is resized when
      its containing iframe is vertically resized to be larger or smaller.
* platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug85016-expected.png:
* platform/chromium-win/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
      Rebaseline for chromium. This patch causes a progression in this layout test.  In the
      diff, note that the viewport has height 585, which is 600 minus 15 pixels to account for
      the horizontal scrollbar.  In the old expected output the first image to be displayed
      has height 600, which is incorrect because it should be 100% of the viewport height.
      The new expected output shows the first image with the correct height of 585.
* platform/chromium/test_expectations.txt:
      WIN will need a regenerated image, and MAC will need a regenerated image+text.
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
      Skip the rebaselined test on all other platforms.

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

9 years agoUnreviewed gardening. Marking media/track/track-active-cues.html as flaky timeout...
leviw@chromium.org [Fri, 16 Mar 2012 21:08:30 +0000 (21:08 +0000)]
Unreviewed gardening. Marking media/track/track-active-cues.html as flaky timeout on windows.

* platform/chromium/test_expectations.txt:

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

9 years ago[chromium] Refactor ClipboardChromium and DataTransferItemList/DataTransferItem to...
dcheng@chromium.org [Fri, 16 Mar 2012 20:53:25 +0000 (20:53 +0000)]
[chromium] Refactor ClipboardChromium and DataTransferItemList/DataTransferItem to support HTML spec
https://bugs.webkit.org/show_bug.cgi?id=76598

Reviewed by Tony Chang.

Source/WebCore:

We no longer store drag/clipboard data in named fields. We used to maintain the data store
list separately, which resulted in a lot of complicated code to try to make sure that
ChromiumDataObject and this list stayed in sync. We now just store what is essentially a
list MIME type/data pairs directly in ChromiumDataObject. This has the benefit of letting us
easily add write support during dragstart/copy operations using DataTransferItemList.

Tests: fast/events/clipboard-dataTransferItemList.html
       fast/events/drag-dataTransferItemList.html

* platform/chromium/ChromiumDataObject.cpp:
(WebCore::findItem):
(WebCore::ChromiumDataObject::createFromPasteboard):
(WebCore::ChromiumDataObject::create):
(WebCore::ChromiumDataObject::copy):
(WebCore::ChromiumDataObject::items):
(WebCore::ChromiumDataObject::clearData):
(WebCore::ChromiumDataObject::clearAll):
(WebCore::ChromiumDataObject::clearAllExceptFiles):
(WebCore::ChromiumDataObject::types):
(WebCore::ChromiumDataObject::getData):
(WebCore::ChromiumDataObject::setData):
(WebCore::ChromiumDataObject::urlAndTitle):
(WebCore::ChromiumDataObject::setURLAndTitle):
(WebCore::ChromiumDataObject::htmlAndBaseURL):
(WebCore::ChromiumDataObject::setHTMLAndBaseURL):
(WebCore::ChromiumDataObject::containsFilenames):
(WebCore):
(WebCore::ChromiumDataObject::filenames):
(WebCore::ChromiumDataObject::addFilename):
(WebCore::ChromiumDataObject::addSharedBuffer):
(WebCore::ChromiumDataObject::ChromiumDataObject):
* platform/chromium/ChromiumDataObject.h:
(WebCore):
(ChromiumDataObject):
* platform/chromium/ClipboardChromium.cpp:
(WebCore::normalizeType):
(WebCore::ClipboardChromium::ClipboardChromium):
(WebCore::ClipboardChromium::clearData):
(WebCore::ClipboardChromium::clearAllData):
(WebCore::ClipboardChromium::getData):
(WebCore::ClipboardChromium::setData):
(WebCore::ClipboardChromium::types):
(WebCore::ClipboardChromium::files):
(WebCore::writeImageToDataObject):
(WebCore::ClipboardChromium::declareAndWriteDragImage):
(WebCore::ClipboardChromium::writeURL):
(WebCore::ClipboardChromium::writeRange):
(WebCore::ClipboardChromium::writePlainText):
(WebCore::ClipboardChromium::hasData):
(WebCore::ClipboardChromium::items):
* platform/chromium/ClipboardChromium.h:
(WebCore):
(ClipboardChromium):
(WebCore::ClipboardChromium::frame):
* platform/chromium/ClipboardUtilitiesChromium.cpp:
(WebCore::convertURIListToURL):
(WebCore):
* platform/chromium/ClipboardUtilitiesChromium.h:
(WebCore):
* platform/chromium/DataTransferItemChromium.cpp:
(WebCore::DataTransferItemChromium::createFromString):
(WebCore::DataTransferItemChromium::createFromFile):
(WebCore::DataTransferItemChromium::createFromURL):
(WebCore::DataTransferItemChromium::createFromHTML):
(WebCore):
(WebCore::DataTransferItemChromium::createFromSharedBuffer):
(WebCore::DataTransferItemChromium::createFromPasteboard):
(WebCore::DataTransferItemChromium::DataTransferItemChromium):
(WebCore::DataTransferItemChromium::getAsString):
(WebCore::DataTransferItemChromium::getAsFile):
(WebCore::DataTransferItemChromium::internalGetAsString):
(WebCore::DataTransferItemChromium::isFilename):
* platform/chromium/DataTransferItemChromium.h:
(WebCore):
(DataTransferItemChromium):
(WebCore::DataTransferItemChromium::kind):
(WebCore::DataTransferItemChromium::type):
(WebCore::DataTransferItemChromium::sharedBuffer):
(WebCore::DataTransferItemChromium::title):
(WebCore::DataTransferItemChromium::baseURL):
* platform/chromium/DataTransferItemListChromium.cpp:
(WebCore::DataTransferItemListChromium::create):
(WebCore::DataTransferItemListChromium::createFromPasteboard):
(WebCore):
(WebCore::DataTransferItemListChromium::DataTransferItemListChromium):
(WebCore::DataTransferItemListChromium::length):
(WebCore::DataTransferItemListChromium::item):
(WebCore::DataTransferItemListChromium::deleteItem):
(WebCore::DataTransferItemListChromium::clear):
(WebCore::DataTransferItemListChromium::add):
(WebCore::DataTransferItemListChromium::internalAddStringItem):
(WebCore::DataTransferItemListChromium::internalAddFileItem):
* platform/chromium/DataTransferItemListChromium.h:
(WebCore):
(DataTransferItemListChromium):
* platform/chromium/DragDataChromium.cpp:
(WebCore::DragData::asURL):
(WebCore::DragData::asPlainText):
(WebCore::DragData::asFragment):

Source/WebKit/chromium:

* src/WebDragData.cpp:
(WebKit::WebDragData::items):
(WebKit::WebDragData::addItem):
(WebKit::WebDragData::assign):

LayoutTests:

* fast/events/clipboard-dataTransferItemList-expected.txt: Added.
* fast/events/clipboard-dataTransferItemList.html: Added.
* fast/events/drag-dataTransferItemList-expected.txt: Added.
* fast/events/drag-dataTransferItemList.html: Added.
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:

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

9 years ago ASSERTION FAILED: m_loadState == LoadStateCommitted in WebFrameProxy::didFini...
ap@apple.com [Fri, 16 Mar 2012 20:49:30 +0000 (20:49 +0000)]
    ASSERTION FAILED: m_loadState == LoadStateCommitted in WebFrameProxy::didFinishLoad causing
        "crashes" on Lion Intel Debug WebKit2 Tests
        https://bugs.webkit.org/show_bug.cgi?id=81184
        <rdar://problem/11052462>

        Rubber-stamped by Anders Carlsson.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::finishedLoading):
        Don't leave a lingering m_pluginView after load is finished. When plug-in data was empty,
        we would create the plug-in here, but failed to finalize the load.

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

9 years agoDon't install libWebCoreTestSupport on OS X production builds
mlilek@apple.com [Fri, 16 Mar 2012 20:48:03 +0000 (20:48 +0000)]
Don't install libWebCoreTestSupport on OS X production builds
https://bugs.webkit.org/show_bug.cgi?id=81087

Reviewed by Mark Rowe.

* Configurations/WebCoreTestSupport.xcconfig:

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

9 years agoSkip move-by-word-visually-wrong-left-right.html added in r110965 in wk2 since SetEdi...
xji@chromium.org [Fri, 16 Mar 2012 20:41:31 +0000 (20:41 +0000)]
Skip move-by-word-visually-wrong-left-right.html added in r110965 in wk2 since SetEditingBehavior is not supported.

* platform/wk2/Skipped:

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

9 years agoFix layout test to output the same result for V8 and JSC
arv@chromium.org [Fri, 16 Mar 2012 20:27:30 +0000 (20:27 +0000)]
Fix layout test to output the same result for V8 and JSC
https://bugs.webkit.org/show_bug.cgi?id=81395

Reviewed by Nate Chapin.

* fast/dom/inline-event-attributes-crash-expected.txt:
* fast/dom/inline-event-attributes-crash.html:

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

9 years agoAdd RenderMultiColumnBlock.cpp to RenderingAllInOne.cpp for Windows build.
hyatt@apple.com [Fri, 16 Mar 2012 20:25:40 +0000 (20:25 +0000)]
Add RenderMultiColumnBlock.cpp to RenderingAllInOne.cpp for Windows build.

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

9 years agoincorrectly removing scrollbar height for auto height flexbox children
tony@chromium.org [Fri, 16 Mar 2012 20:16:17 +0000 (20:16 +0000)]
incorrectly removing scrollbar height for auto height flexbox children
https://bugs.webkit.org/show_bug.cgi?id=81388

Reviewed by Ojan Vafai.

Source/WebCore:

In a column flexbox, when computing the preferred height of an auto
height child, we were subtracting out the horizontal scrollbar height.

New test case in css3/flexbox/columns-auto-size.html.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):

LayoutTests:

* css3/flexbox/columns-auto-size-expected.txt:
* css3/flexbox/columns-auto-size.html:

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

9 years agoOut-of-document radio buttons should be grouped when associated with a form
adamk@chromium.org [Fri, 16 Mar 2012 20:08:35 +0000 (20:08 +0000)]
Out-of-document radio buttons should be grouped when associated with a form
https://bugs.webkit.org/show_bug.cgi?id=81268

Reviewed by Kent Tamura.

Source/WebCore:

Per the HTML spec, and the behavior of Firefox and IE 8/9, radio buttons
with a form owner should be grouped, even if that form is not in the document.

r104668 added many inDocument() tests to radio button grouping code.
While those are necessary to avoid unattached <input type=radio>
elements being grouped together, it also kept them from being grouped
when associated with a form outside the document.

This patch changes the HTMLInputElement::checkedRadioButtons() method
to return either a pointer to the proper CheckedRadioButtons instance
(either the document's or a form's), but will return null if the
element should not be associated with any radio button group.

The main fallout of this was that the callers of checkedRadioButtons()
now have to check for null, resulting in the creation of a few helper
methods in HTMLInputElement to wrap the null checks.

This refactoring has the pleasant side-effect of exposing a cleaner API between
HTMLInputElement and RadioInputType, and making a clearer contract
between HTMLInputElement and CheckedRadioButtons (e.g., all
CheckedRadioButtons methods that take an element can now assume that
it is a radio button, where previously some checked for that and
others asserted it).

Test: fast/forms/radio/radio-group-in-detached-form.html

* dom/CheckedRadioButtons.cpp:
(WebCore): Removed shouldMakeRadioGroup() helper function.
(WebCore::CheckedRadioButtons::addButton): Replace call to shouldMakeRadioGroup
with appropriate assert and name check.
(WebCore::CheckedRadioButtons::updateCheckedState): ditto.
(WebCore::CheckedRadioButtons::requiredAttributeChanged): ditto.
(WebCore::CheckedRadioButtons::isRequiredGroup): Renamed from isInRequiredGroup,
changed to take only a group name, not an element.
(WebCore::CheckedRadioButtons::removeButton): Replace call to shouldMakeRadioGroup.
with appropriate assert and name check.
* dom/CheckedRadioButtons.h:
(CheckedRadioButtons):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::~HTMLInputElement): Added isRadioButton check
now that it's asserted in CheckedRadioButtons.
(WebCore::HTMLInputElement::updateType): Call helper method instead of
calling directly into CheckedRadioButtons.
(WebCore::HTMLInputElement::parseAttribute): ditto.
(WebCore::HTMLInputElement::setChecked): ditto.
(WebCore::HTMLInputElement::willChangeForm): ditto.
(WebCore::HTMLInputElement::didChangeForm): ditto.
(WebCore::HTMLInputElement::insertedIntoDocument): ditto.
(WebCore::HTMLInputElement::removedFromDocument): ditto.
(WebCore::HTMLInputElement::didMoveToNewDocument): Added isRadioButton check.
(WebCore::HTMLInputElement::requiredAttributeChanged): Check for membership in a group
before calling into CheckedRadioButtons.
(WebCore::HTMLInputElement::isInRequiredRadioButtonGroup): Added helper method for use by RadioInputType.
(WebCore):
(WebCore::HTMLInputElement::checkedRadioButtonForGroup): ditto.
(WebCore::HTMLInputElement::checkedRadioButtons): Changed to return a
pointer, only return non-null if actually a member of a group.
(WebCore::HTMLInputElement::addToRadioButtonGroup): Helper method for
use in HTMLInputElement.
(WebCore::HTMLInputElement::removeFromRadioButtonGroup): ditto.
* html/HTMLInputElement.h:
(HTMLInputElement): Added/removed methods, removed outdated comment about visibility.
* html/RadioInputType.cpp:
(WebCore::RadioInputType::valueMissing): Call new HTMLInputElement methods instead
of interacting directly with CheckedRadioButtons.
(WebCore::RadioInputType::isKeyboardFocusable): ditto.
(WebCore::RadioInputType::willDispatchClick): ditto.

LayoutTests:

* fast/forms/radio/radio-group-expected.txt:
* fast/forms/radio/radio-group-in-detached-form-expected.txt: Added.
* fast/forms/radio/radio-group-in-detached-form.html: Added.
* fast/forms/radio/radio-group.html: Updated to match new behavior.

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

9 years ago[BlackBerry] Syncing up left over bits in WebCoreSupport from our local branch to...
commit-queue@webkit.org [Fri, 16 Mar 2012 20:00:22 +0000 (20:00 +0000)]
[BlackBerry] Syncing up left over bits in WebCoreSupport from our local branch to upstream
https://bugs.webkit.org/show_bug.cgi?id=81120

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-03-16
Reviewed by Rob Buis.

This is a consolidation of various changes that are in our local dev branch
but do not appear in our upstreamed port.

* WebCoreSupport/AboutDataEnableFeatures.in:
* WebCoreSupport/AboutDataHaveFeatures.in:
* WebCoreSupport/AboutDataUseFeatures.in:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::hasOpenedPopup):
(WebCore):
(WebCore::ChromeClientBlackBerry::screenToRootView):
(WebCore::ChromeClientBlackBerry::rootViewToScreen):
(WebCore::ChromeClientBlackBerry::invalidateRootView):
(WebCore::ChromeClientBlackBerry::invalidateContentsAndRootView):
(WebCore::ChromeClientBlackBerry::invalidateContentsForSlowScroll):
(WebCore::ChromeClientBlackBerry::scrollableAreasDidChange):
(WebCore::ChromeClientBlackBerry::createColorChooser):
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):
(WebCore::ChromeClientBlackBerry::numTouchEventHandlersChanged):
* WebCoreSupport/EditorClientBlackBerry.cpp:
(WebCore::EditorClientBlackBerry::registerUndoStep):
(WebCore::EditorClientBlackBerry::registerRedoStep):
(WebCore::EditorClientBlackBerry::undo):
(WebCore::EditorClientBlackBerry::redo):
* WebCoreSupport/EditorClientBlackBerry.h:
(EditorClientBlackBerry):
* WebCoreSupport/GeolocationControllerClientBlackBerry.cpp:
(GeolocationControllerClientBlackBerry::requestPermission):
(GeolocationControllerClientBlackBerry::cancelPermissionRequest):
* WebCoreSupport/GeolocationControllerClientBlackBerry.h:
* WebCoreSupport/InspectorClientBlackBerry.cpp:
(WebCore::InspectorClientBlackBerry::closeInspectorFrontend):
(WebCore):
(WebCore::InspectorClientBlackBerry::bringFrontendToFront):
* WebCoreSupport/InspectorClientBlackBerry.h:
(InspectorClientBlackBerry):
* WebCoreSupport/NotificationPresenterImpl.cpp:
(WebCore::NotificationPresenterImpl::show):

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

9 years agoMissed adding new files to Targets.pri
hyatt@apple.com [Fri, 16 Mar 2012 19:57:30 +0000 (19:57 +0000)]
Missed adding new files to Targets.pri

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=81366
hyatt@apple.com [Fri, 16 Mar 2012 19:55:25 +0000 (19:55 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=81366

Add RenderMultiColumnBlock subclass of RenderBlock. This new class will hold all of the multi-column
logic (as well as painting/hit testing). That way the column code can be kept out of the base class
and be more cleanly factored.

Patch Node::diff so that we detach and re-attach the renderer if column counts or widths change
from auto to non-auto (and vice versa) to ensure the right renderer gets made.

Patch RenderObject::createObject to make a RenderMultiColumnBlock if either the column count or
column width is non-auto.

Patch RenderBlock::calcColumnWidth to "turn off" the old implementation of columns if the pref to use
the new column implementation is set. This single chokepoint should be sufficient for disabling the old
columns in favor of the new.

Reviewed by Dan Bernstein.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/Document.cpp:
(WebCore::Document::regionBasedColumnsEnabled):
(WebCore):
(WebCore::Document::recalcStyle):
* dom/Document.h:
(Document):
* dom/Element.cpp:
(WebCore::Element::recalcStyle):
* dom/Node.cpp:
(WebCore::Node::diff):
* dom/Node.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::calcColumnWidth):
(WebCore::RenderBlock::updateFirstLetterStyle):
* rendering/RenderMultiColumnBlock.cpp: Added.
(WebCore):
(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
(WebCore::RenderMultiColumnBlock::renderName):
* rendering/RenderMultiColumnBlock.h: Added.
(WebCore):
(RenderMultiColumnBlock):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::updateBeforeAfterContent):

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

9 years ago[chromium] Improve CSS3 filter blur performance.
senorblanco@chromium.org [Fri, 16 Mar 2012 19:45:04 +0000 (19:45 +0000)]
[chromium] Improve CSS3 filter blur performance.
https://bugs.webkit.org/show_bug.cgi?id=81360

This change improves blur performance by 2-2.5X on blurred CSS
3D transforms and accelerated canvas demos by skipping an unnecessary
texture allocation and bitmap draw.

Reviewed by James Robinson.

Covered by existing layout tests in css3/filters.

* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
(WebCore::CCRenderSurfaceFilters::apply):
Call SkCanvas::drawSprite() directly instead of using
saveLayer()/restore().

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

9 years agoRebaseline GTK expected results after r111041.
jer.noble@apple.com [Fri, 16 Mar 2012 19:43:57 +0000 (19:43 +0000)]
Rebaseline GTK expected results after r111041.

* platform/gtk/accessibility/media-element-expected.txt:

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

9 years agoplugins/keyboard-events.html, mouse-events-fixedpos.html, and mouse-events.html faili...
jberlin@webkit.org [Fri, 16 Mar 2012 19:41:48 +0000 (19:41 +0000)]
plugins/keyboard-events.html, mouse-events-fixedpos.html, and mouse-events.html failing on Lion
Intel Debug WebKit2 testers
https://bugs.webkit.org/show_bug.cgi?id=81386

Add expected failing results for mac-wk2 to get the bots green.

* platform/mac-wk2/plugins/keyboard-events-expected.txt: Added.
* platform/mac-wk2/plugins/mouse-events-expected.txt: Added.
* platform/mac-wk2/plugins/mouse-events-fixedpos-expected.txt: Added.

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

9 years ago[Chromium] IndexedDB: Assertion failure when storing File objects
jsbell@chromium.org [Fri, 16 Mar 2012 19:26:00 +0000 (19:26 +0000)]
[Chromium] IndexedDB: Assertion failure when storing File objects
https://bugs.webkit.org/show_bug.cgi?id=76746

Source/WebCore:

The blob data in Blob/File/FileList objects is serialized "by reference" (the
internal URL) rather than "by value" (the actual data); this is sufficient for
postMessage() but not for IndexedDB since the referenced data is not retained
Expose a mechanism to enumerate the URLs so that SSVs can be rejected by IDB
until blob data serialization can is implemented (outside the SSV mechanism, and
potentially asynchronously).

Also, correct issue in V8DOMWrapper::instantiateV8Object where context is assumed
to be a Worker context if it's not a Window, which is incorrect for the
Chromium utility process; this is hit if Blobs are not blocked.

Reviewed by Tony Chang.

Test: storage/indexeddb/noblobs.html

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::update): Reject SSVs that contain blob references.
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::add): Reject SSVs that contain blob references.
(WebCore::IDBObjectStore::put): Reject SSVs that contain blob references.
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::serialize):
(WebCore::CloneSerializer::CloneSerializer):
(WebCore::CloneSerializer::dumpIfTerminal):
(WebCore::CloneSerializer::write):
(CloneSerializer):
(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore::SerializedScriptValue::create):
(WebCore::SerializedScriptValue::undefinedValue):
(WebCore::SerializedScriptValue::booleanValue):
* bindings/js/SerializedScriptValue.h: New API to enable the clients to be picky.
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::SerializedScriptValue):
* bindings/v8/SerializedScriptValue.h: New API to enable the clients to be picky.
(WebCore::SerializedScriptValue::blobURLs):
(SerializedScriptValue):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):  Ensure context is a worker context before treating it as such.

LayoutTests:

Ensure that Blob/File/FileList types are rejected in IDB values, to detect regressions.

Reviewed by Tony Chang.

* storage/indexeddb/noblobs-expected.txt: Added.
* storage/indexeddb/noblobs.html: Added.

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

9 years ago[V8] Ensure that invalid syntax in inline event handlers does not cause a crash
arv@chromium.org [Fri, 16 Mar 2012 19:23:14 +0000 (19:23 +0000)]
[V8] Ensure that invalid syntax in inline event handlers does not cause a crash
https://bugs.webkit.org/show_bug.cgi?id=81385

Reviewed by Nate Chapin.

Source/WebCore:

The way that V8 does its inline event handler involves concatting strings and
if the attribute value is crafted in a special way this could cause a crash.

Test: fast/dom/inline-event-attributes-crash.html

* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject):

LayoutTests:

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

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

9 years agoChromium rebaselines for expected failures on garden-o-matic.
ojan@chromium.org [Fri, 16 Mar 2012 19:22:31 +0000 (19:22 +0000)]
Chromium rebaselines for expected failures on garden-o-matic.

* platform/chromium-linux-x86/compositing/reflections/animation-inside-reflection-expected.png: Added.
* platform/chromium-linux-x86/compositing/reflections/nested-reflection-animated-expected.png: Added.
* platform/chromium-linux/compositing/color-matching/pdf-image-match-expected.png: Added.
* platform/chromium-linux/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-linux/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac-leopard/compositing/reflections/animation-inside-reflection-expected.png: Added.
* platform/chromium-mac-leopard/compositing/reflections/nested-reflection-animated-expected.png: Added.
* platform/chromium-mac-snowleopard/animations/cross-fade-border-image-source-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-animated-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-animated-expected.txt: Added.
* platform/chromium-mac/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac/compositing/reflections/nested-reflection-transition-expected.png: Added.
* platform/chromium-win-vista/compositing/reflections/animation-inside-reflection-expected.png: Added.
* platform/chromium-win-vista/compositing/reflections/nested-reflection-animated-expected.png: Added.
* platform/chromium-win-vista/compositing/shadows/shadow-drawing-expected.png: Removed.
* platform/chromium-win-xp/compositing/reflections/animation-inside-reflection-expected.txt: Added.
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.png: Added.
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.txt: Copied from LayoutTests/platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.txt.
* platform/chromium-win/compositing/absolute-position-changed-with-composited-parent-layer-expected.png:
* platform/chromium-win/compositing/color-matching/pdf-image-match-expected.png: Added.
* platform/chromium-win/compositing/color-matching/pdf-image-match-expected.txt: Added.
* platform/chromium-win/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.txt:
* platform/chromium/test_expectations.txt:

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

9 years agoWrong icon to restore to windowed mode in full screen video panel
jer.noble@apple.com [Fri, 16 Mar 2012 19:21:31 +0000 (19:21 +0000)]
Wrong icon to restore to windowed mode in full screen video panel
https://bugs.webkit.org/show_bug.cgi?id=70437

Reviewed by Eric Carlson.

Source/WebCore:

No new tests. Updated platform/mac/accessibility/media-element-expected.txt.

Renamed MediaFullscreenButton to MediaEnterFullscreenButton and added MediaExitFullscreenButton:
* accessibility/AccessibilityMediaControls.cpp:
(WebCore::AccessibilityMediaControl::controlTypeName):
(WebCore::AccessibilityMediaControl::roleValue):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
* css/CSSValueKeywords.in:
* platform/ThemeTypes.h:

Added setIsFullscreen which controls the display of the enter/exit fullscreen button:
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlFullscreenButtonElement::setIsFullscreen): Added.
* html/shadow/MediaControlElements.h:
* html/shadow/MediaControlRootElement.cpp:
(WebCore::MediaControlRootElement::enteredFullscreen):
(WebCore::MediaControlRootElement::exitedFullscreen):

Paint the enter/exit fullscreen button accordingly:
* rendering/RenderMediaControlsChromium.cpp:
(WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
* rendering/RenderThemeChromiumAndroid.cpp:
(WebCore::RenderThemeChromiumAndroid::paintMediaFullscreenButton):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintMediaFullscreenButton):
* rendering/RenderMediaControls.cpp:
(WebCore::RenderMediaControls::paintMediaControlsPart):
* rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::paintMediaFullscreenButton):

Update the localized strings for the exit and enter fullscreen buttons:
* English.lproj/Localizable.strings:
* platform/LocalizedStrings.cpp:
(WebCore::localizedMediaControlElementString):
* platform/gtk/LocalizedStringsGtk.cpp:
(WebCore::localizedMediaControlElementString):
(WebCore::localizedMediaControlElementHelpText):
* platform/qt/LocalizedStringsQt.cpp:
(WebCore::localizedMediaControlElementString):
(WebCore::localizedMediaControlElementHelpText):

WebKitLibraries:

* WebKitSystemInterface.h: Added WKMediaUIPartExitFullscreenButton.
* libWebKitSystemInterfaceLeopard.a:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceSnowLeopard.a:
* win/include/WebKitSystemInterface/WebKitSystemInterface.h:
* win/lib/WebKitSystemInterface.lib:

LayoutTests:

* platform/mac/accessibility/media-element-expected.txt:

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

9 years agoUpdate LayoutUnit usage in RenderListBox
leviw@chromium.org [Fri, 16 Mar 2012 19:07:24 +0000 (19:07 +0000)]
Update LayoutUnit usage in RenderListBox
https://bugs.webkit.org/show_bug.cgi?id=81038

Reviewed by Julien Chaffraix.

Bringing RenderListBox in line with the rules listed in
https://trac.webkit.org/wiki/LayoutUnit

No new tests. No change in behavior.

* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintScrollbar): Pixel snapping before handing off scrollbar
painting to the platform.
(WebCore::RenderListBox::paintItemForeground): Rounding the offset for text painting.
(WebCore::RenderListBox::paintItemBackground): Pixel snapping the background rect.
(WebCore::RenderListBox::panScroll): EventHandler::currentMousePosition is an IntPoint,
so it doesn't require additional rounding in RenderListBox.

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

9 years agoHave webkit-patch rebaseline-test update test_expectations.txt
ojan@chromium.org [Fri, 16 Mar 2012 19:02:52 +0000 (19:02 +0000)]
Have webkit-patch rebaseline-test update test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=81054

Recommit http://trac.webkit.org/changeset/110783 now that
http://trac.webkit.org/changeset/111034 has landed.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.remove_configuration_from_test):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(RemoveConfigurationsTest):
(RemoveConfigurationsTest.test_remove):
(test_remove_line):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest._update_expectations_file):
(RebaselineTest._rebaseline_test_and_update_expectations):
(RebaselineTest):
(RebaselineTest.execute):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaseline.test_rebaseline_updates_expectations_file_noop):
(test_rebaseline_updates_expectations_file):

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

9 years agoRebaseline window-properties-expected on GTK; add two new tests
jer.noble@apple.com [Fri, 16 Mar 2012 18:57:10 +0000 (18:57 +0000)]
Rebaseline window-properties-expected on GTK; add two new tests
to the GTK Skipped list associated with existing bug:
https://bugs.webkit.org/show_bug.cgi?id=61118

* platform/gtk/Skipped:
* platform/gtk/fast/dom/Window/window-properties-expected.txt:

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

9 years ago[BlackBerry] Input fields with id of e-mail and url should be styled as such.
commit-queue@webkit.org [Fri, 16 Mar 2012 18:39:09 +0000 (18:39 +0000)]
[BlackBerry] Input fields with id of e-mail and url should be styled as such.
https://bugs.webkit.org/show_bug.cgi?id=81364

Patch by Mike Fenton <mifenton@rim.com> on 2012-03-16
Reviewed by Rob Buis.

Treat fields that have name/id's that match url or
email as url or email fields providing the appropriate
keyboard.

PR 137259.

Reviewed Internally by Gen Mak and Nima Ghanavatian.

* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::matchesReservedStringEmail):
(DOMSupport):
(BlackBerry::WebKit::DOMSupport::matchesReservedStringUrl):
(BlackBerry::WebKit::DOMSupport::elementIdOrNameIndicatesEmail):
(BlackBerry::WebKit::DOMSupport::elementIdOrNameIndicatesUrl):
(BlackBerry::WebKit::DOMSupport::matchesReservedStringPreventingAutocomplete):
* WebKitSupport/DOMSupport.h:
(WebCore):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::convertInputType):
(BlackBerry::WebKit::inputStyle):

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

9 years agoMark form-associated-element-crash3.html as flakily timing out, since it often passes.
adamk@chromium.org [Fri, 16 Mar 2012 18:33:30 +0000 (18:33 +0000)]
Mark form-associated-element-crash3.html as flakily timing out, since it often passes.

* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed, rolling out r111020.
pkasting@chromium.org [Fri, 16 Mar 2012 18:33:25 +0000 (18:33 +0000)]
Unreviewed, rolling out r111020.
http://trac.webkit.org/changeset/111020
https://bugs.webkit.org/show_bug.cgi?id=81377

Broke Chromium Win compile (Requested by pkasting on #webkit).

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

* GNUmakefile.list.am:
* WebCore.gypi:
* platform/mediastream/PeerConnection00Handler.cpp: Removed.
* platform/mediastream/PeerConnection00Handler.h: Removed.
* platform/mediastream/PeerConnection00HandlerClient.h: Removed.

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

9 years agoSpecifier collapsing when writing test expectations lines gets a number of cases...
ojan@chromium.org [Fri, 16 Mar 2012 18:31:33 +0000 (18:31 +0000)]
Specifier collapsing when writing test expectations lines gets a number of cases wrong
https://bugs.webkit.org/show_bug.cgi?id=81309

Reviewed by Dimitri Glazkov.

I've run this over all the lines in the current Chromium test_expectations.txt file,
so I'm relatively confident we now cover all the cases.

* Scripts/webkitpy/layout_tests/models/test_configuration.py:
(TestConfigurationConverter.__init__):
(TestConfigurationConverter.collapse_macros):
(TestConfigurationConverter.collapse_macros.collapse_individual_specifier_set):
(TestConfigurationConverter):
(TestConfigurationConverter.intersect_combination):
(TestConfigurationConverter.symmetric_difference):
(TestConfigurationConverter.to_specifiers_list):
(TestConfigurationConverter.to_specifiers_list.try_collapsing):
(TestConfigurationConverter.to_specifiers_list.try_abbreviating):
* Scripts/webkitpy/layout_tests/models/test_configuration_unittest.py:
(make_mock_all_test_configurations_set):
(TestConfigurationConverterTest.test_symmetric_difference):
(TestConfigurationConverterTest.test_to_config_set):
(TestConfigurationConverterTest.test_macro_expansion):
(TestConfigurationConverterTest.test_to_specifier_lists):
(TestConfigurationConverterTest.test_converter_macro_collapsing):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort):
* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.__init__):
The android port uses "arm" as it's architecture, which is technically correct,
but considerably complicates making collapsing work. We probably should kill
the concept of architecture entirely. The benefits are not worth the code
complexity.

* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumPortTest.test_all_test_configurations):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaseline.test_rebaseline_updates_expectations_file_noop):
(test_rebaseline_updates_expectations_file):

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