WebKit-https.git
7 years ago[BlackBerry] Test expectation for fast/js/constructor-length.html
commit-queue@webkit.org [Mon, 27 Aug 2012 22:34:17 +0000 (22:34 +0000)]
[BlackBerry] Test expectation for fast/js/constructor-length.html
https://bugs.webkit.org/show_bug.cgi?id=95125

Patch by Leo Yang <leoyang@rim.com> on 2012-08-27
Reviewed by Yong Li.

* platform/blackberry/fast/js/constructor-length-expected.txt: Added.

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

7 years agoUnreviewed, rolling out r126772.
commit-queue@webkit.org [Mon, 27 Aug 2012 22:33:49 +0000 (22:33 +0000)]
Unreviewed, rolling out r126772.
http://trac.webkit.org/changeset/126772
https://bugs.webkit.org/show_bug.cgi?id=95137

"This change breaks news.qq.com" (Requested by leoyang on
#webkit).

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

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

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

7 years agoUnreviewed gardening.
jchaffraix@webkit.org [Mon, 27 Aug 2012 22:27:16 +0000 (22:27 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations:
Marked some position: sticky tests as failing due to sub-pixel layout.

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

7 years agoHook procedure should check to see if hook has already been removed before attempting...
roger_fong@apple.com [Mon, 27 Aug 2012 22:19:06 +0000 (22:19 +0000)]
Hook procedure should check to see if hook has already been removed before attempting removal.
https://bugs.webkit.org/show_bug.cgi?id=95118

Reviewed by Simon Fraser.

When the hookFired method in LayerChangesFlusher.cpp gets called in response to a message posted to the message queue
it calls CallNextHook to pass the message to the next hook procedure in the hook chain.

Sometimes, the message can get passed to another hook procedure that can dispatch another message.
This message gets passed back through the hook chain and we eventually re-enter the hookFired method.

When that hookFired call completes, it may remove the hook.
When CallNextHook returns, the original call to hookFired may try to remove the hook as well.
However, there is no need as the hook as already been removed.
This results in an assertion failure, assert(m_hook), when we call removeHook.

* platform/graphics/ca/win/LayerChangesFlusher.cpp:
(WebCore::LayerChangesFlusher::hookFired):
Simply check to see if the hook has already been removed before actually trying to remove it.

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

7 years agoRemove uses of TypedArray ClassInfo from SpeculativeJIT::checkArgumentTypes
mhahnenberg@apple.com [Mon, 27 Aug 2012 22:09:06 +0000 (22:09 +0000)]
Remove uses of TypedArray ClassInfo from SpeculativeJIT::checkArgumentTypes
https://bugs.webkit.org/show_bug.cgi?id=95112

Reviewed by Filip Pizlo.

Removing these checks since we no longer need them.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::initialize):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

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

7 years ago[chromium] Clean up dependencies of WebScrollbar and WebScrollbarLayer
jamesr@google.com [Mon, 27 Aug 2012 22:01:45 +0000 (22:01 +0000)]
[chromium] Clean up dependencies of WebScrollbar and WebScrollbarLayer
https://bugs.webkit.org/show_bug.cgi?id=94996

Reviewed by Adrienne Walker.

Source/Platform:

This moves the WebScrollbarLayer::create factory out of #if WEBKIT_IMPLEMENTATION and expresses it in API terms
only so anyone who can get a handle on a WebScrollbar can construct the layer. Also removes the ::create() from
WebScrollbar, anyone who currently has access to a WebCore::Scrollbar also has access to WebScrollbarImpl.

* chromium/public/WebScrollbar.h:
(WebScrollbar):
* chromium/public/WebScrollbarLayer.h:
(WebScrollbarLayer):

Source/WebCore:

Moves WebScrollbarImpl into WebCore/platform/support to make it accessible to chromium-specific WebCore code and
uses it to construct WebScrollbar instances around WebCore::Scrollbars.

* WebCore.gypi:
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::createScrollbarLayer):
* platform/chromium/support/WebScrollbarImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarImpl.cpp.
(WebKit):
(WebKit::WebScrollbarImpl::WebScrollbarImpl):
(WebKit::WebScrollbarImpl::isOverlay):
(WebKit::WebScrollbarImpl::value):
(WebKit::WebScrollbarImpl::location):
(WebKit::WebScrollbarImpl::size):
(WebKit::WebScrollbarImpl::enabled):
(WebKit::WebScrollbarImpl::maximum):
(WebKit::WebScrollbarImpl::totalSize):
(WebKit::WebScrollbarImpl::isScrollViewScrollbar):
(WebKit::WebScrollbarImpl::isScrollableAreaActive):
(WebKit::WebScrollbarImpl::getTickmarks):
(WebKit::WebScrollbarImpl::controlSize):
(WebKit::WebScrollbarImpl::pressedPart):
(WebKit::WebScrollbarImpl::hoveredPart):
(WebKit::WebScrollbarImpl::scrollbarOverlayStyle):
(WebKit::WebScrollbarImpl::orientation):
(WebKit::WebScrollbarImpl::isCustomScrollbar):
* platform/chromium/support/WebScrollbarImpl.h: Renamed from Source/WebKit/chromium/src/WebScrollbarImpl.h.
(WebCore):
(WebKit):
(WebScrollbarImpl):

Source/WebKit/chromium:

Fix up tests for API changes.

* WebKit.gyp:
* src/WebScrollbarLayerImpl.cpp:
(WebKit::WebScrollbarLayer::create):
* tests/ScrollbarLayerChromiumTest.cpp:
(WebCore::TEST):

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

7 years agoMake RenderBox::computePositionedLogicalHeight const
tony@chromium.org [Mon, 27 Aug 2012 21:57:27 +0000 (21:57 +0000)]
Make RenderBox::computePositionedLogicalHeight const
https://bugs.webkit.org/show_bug.cgi?id=94984

Reviewed by Ojan Vafai.

This is step 1 in making computeLogical{Height,Width} const.
computeLogicalHeight calls computePositionedLogicalHeight, so this patch
makes that const first.

No new tests, just refactoring.  Covered by fast/block/positioning/differing-writing-modes-replaced.html
and others.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalHeight): Call const version of computePositionedLogicalHeight.
(WebCore::RenderBox::computePositionedLogicalHeight): Make const, fills in struct instead.
(WebCore::RenderBox::computePositionedLogicalHeightUsing): Make const
and pass in a LogicalExtentComputedValues struct instead of 4 separate args for the results.
(WebCore::RenderBox::computePositionedLogicalHeightReplaced): Make const, fills in struct instead.
* rendering/RenderBox.h:
(WebCore::RenderBox::MarginsComputedValues::MarginsComputedValues):
(MarginsComputedValues): Struct of just margins.  Not used yet, but will be for
computeInlineDirectionMargins and computeBlockDirectionMargins.
(WebCore::RenderBox::LogicalExtentComputedValues::LogicalExtentComputedValues):
(LogicalExtentComputedValues): Struct to be used by computeLogical{Width,Height}. Only used by
computeLogicalHeight so far.

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

7 years agoGardening: Skipping tests due to JSC::Bindings::Instance::createRuntimeObject(JSC...
commit-queue@webkit.org [Mon, 27 Aug 2012 21:53:22 +0000 (21:53 +0000)]
Gardening: Skipping tests due to JSC::Bindings::Instance::createRuntimeObject(JSC::ExecState*) crashes.
https://bugs.webkit.org/show_bug.cgi?id=95116.

Patch by Mark Lam <mark.lam@apple.com> on 2012-08-27
Reviewed by Sam Weinig.

editing/pasteboard/paste-TIFF.html
platform/mac/editing/pasteboard/dataTransfer-set-data-file-url.html

* platform/mac/Skipped:

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

7 years agoFix compiler warnings in TextureMapperLayer.cpp
rwlbuis@webkit.org [Mon, 27 Aug 2012 21:52:42 +0000 (21:52 +0000)]
Fix compiler warnings in TextureMapperLayer.cpp
https://bugs.webkit.org/show_bug.cgi?id=95128

Reviewed by Noam Rosenthal.

Fix the warnings caused by -Wsign-compare.

* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildren):
(WebCore::shouldKeepContentTexture):

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

7 years ago[V8] Clean up reportFatalError in V8DOMWindowShell.cpp
abarth@webkit.org [Mon, 27 Aug 2012 21:49:43 +0000 (21:49 +0000)]
[V8] Clean up reportFatalError in V8DOMWindowShell.cpp
https://bugs.webkit.org/show_bug.cgi?id=95124

Reviewed by Eric Seidel.

We don't need a PLATFORM(CHROMIUM) ifdef because MemoryUsageSupport has
a stub implementation on non-Chromium platforms. These comments are out
of date. We've been "temporarily" calling CRASH here for as long as the
bindings have existed and we don't plan to stop.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::reportFatalError):

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

7 years ago[V8] Clean up V8DOMWindowShell's reportUncaughtException
abarth@webkit.org [Mon, 27 Aug 2012 21:37:37 +0000 (21:37 +0000)]
[V8] Clean up V8DOMWindowShell's reportUncaughtException
https://bugs.webkit.org/show_bug.cgi?id=95126

Reviewed by Eric Seidel.

This patch changes reportUncaughtException to operate in terms of a
DOMWindow rather than a Frame. In general, the bindings should use
DOMWindows rather than Frames because a DOMWindow is specific to a
given Document whereas a Frame displays many Documents over its
lifetime.

I've also updated some variable names to be more consistent with WebKit
naming conventions.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::reportUncaughtException):

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

7 years agoThe static functions in V8DOMWindowShell.cpp are poorly named
abarth@webkit.org [Mon, 27 Aug 2012 21:29:29 +0000 (21:29 +0000)]
The static functions in V8DOMWindowShell.cpp are poorly named
https://bugs.webkit.org/show_bug.cgi?id=95122

Reviewed by Eric Seidel.

This patch cleans up the naming of the static functions in
V8DOMWindowShell.cpp.

I've inlined handleFatalErrorInV8 into its one caller.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::reportFatalError):
    - Removed V8 from the name becaues this entire file is about V8.
(WebCore::reportUncaughtException):
    - Ditto.
(WebCore::findFrame):
    - Remove the "get" prefix because it's a weak verb.
(WebCore::reportUnsafeJavaScriptAccess):
(WebCore::initializeV8IfNeeded):
(WebCore::checkDocumentWrapper):
    - Move this function up to the top of the file with the rest of the
      static functions.
(WebCore):

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

7 years ago[V8] initContextIfNeeded is overly specific
abarth@webkit.org [Mon, 27 Aug 2012 21:24:36 +0000 (21:24 +0000)]
[V8] initContextIfNeeded is overly specific
https://bugs.webkit.org/show_bug.cgi?id=95120

Reviewed by Eric Seidel.

This patch is part of a series to clean up V8DOMWindowShell.  This
patch renames initContextIfNeeded to initializeIfNeeded because callers
shouldn't need to worry about what V8DOMWindow needs to initialize.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::evaluateInIsolatedWorld):
(WebCore::ScriptController::mainWorldContext):
(WebCore::ScriptController::matchesCurrentContext):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::initializeIfNeeded):
(WebCore::V8DOMWindowShell::updateDocument):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):
* bindings/v8/V8DOMWindowShell.h:
(V8DOMWindowShell):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::initializeIfNeeded):
(WebCore::WorkerContextExecutionProxy::evaluate):
* bindings/v8/WorkerContextExecutionProxy.h:
(WorkerContextExecutionProxy):

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

7 years ago[Skia/Chromium] Remove use of deprecated Skia names
commit-queue@webkit.org [Mon, 27 Aug 2012 21:22:29 +0000 (21:22 +0000)]
[Skia/Chromium] Remove use of deprecated Skia names
https://bugs.webkit.org/show_bug.cgi?id=95108

Patch by Brian Salomon <bsalomon@google.com> on 2012-08-27
Reviewed by Eric Seidel.

kSkia8888_PM_GrPixelConfig has been deprecated in favor of kSkia8888_GrPixelConfig.
SkGrTexturePixelRef has been deprecated in favor of SkGrPixelRef.

Covered by existing tests (image filter and canvas tests).

* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::createAcceleratedCanvas):
* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::createAcceleratedCanvas):

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

7 years ago[chromium] Unreviewed, remove OVERRIDE from non-virtual function.
enne@google.com [Mon, 27 Aug 2012 21:20:43 +0000 (21:20 +0000)]
[chromium] Unreviewed, remove OVERRIDE from non-virtual function.
https://bugs.webkit.org/show_bug.cgi?id=94859

Unreviewed build fix.

* platform/graphics/chromium/cc/CCScrollbarGeometryFixedThumb.h:
(CCScrollbarGeometryFixedThumb):

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

7 years agoUnreviewed rebaselining after r126683.
jchaffraix@webkit.org [Mon, 27 Aug 2012 21:11:10 +0000 (21:11 +0000)]
Unreviewed rebaselining after r126683.

* platform/chromium/TestExpectations:
Removed 4 entries that were rebaselined.

* fast/block/float/avoidance-rtl-expected.txt: Replaced.
* fast/borders/border-radius-wide-border-01-expected.txt: Replaced.
* fast/borders/only-one-border-with-width-expected.txt: Replaced.
* fast/multicol/progression-reverse-expected.txt: Replaced.
Common baseline updates now that we always dump the first border.

* platform/efl/fast/block/float/avoidance-rtl-expected.txt: Removed.
* platform/efl/fast/borders/border-radius-wide-border-01-expected.txt: Removed.
* platform/efl/fast/borders/only-one-border-with-width-expected.txt: Removed.
* platform/efl/fast/multicol/progression-reverse-expected.txt: Removed.
* platform/gtk/fast/block/float/avoidance-rtl-expected.txt: Removed.
* platform/gtk/fast/borders/border-radius-wide-border-01-expected.txt: Removed.
* platform/gtk/fast/borders/only-one-border-with-width-expected.txt: Removed.
* platform/gtk/fast/multicol/progression-reverse-expected.txt: Removed.
* platform/mac-lion/fast/block/float/avoidance-rtl-expected.txt: Removed.
* platform/mac-lion/fast/borders: Removed.
* platform/mac-lion/fast/borders/border-radius-wide-border-01-expected.txt: Removed.
* platform/mac-lion/fast/borders/only-one-border-with-width-expected.txt: Removed.
* platform/mac-lion/fast/multicol/progression-reverse-expected.txt: Removed.
* platform/mac/fast/block/float/avoidance-rtl-expected.txt: Removed.
* platform/mac/fast/borders/border-radius-wide-border-01-expected.txt: Removed.
* platform/mac/fast/borders/only-one-border-with-width-expected.txt: Removed.
* platform/mac/fast/multicol/progression-reverse-expected.txt: Removed.
* platform/qt/fast/block/float/avoidance-rtl-expected.txt: Removed.
* platform/qt/fast/borders/border-radius-wide-border-01-expected.txt: Removed.
* platform/qt/fast/borders/only-one-border-with-width-expected.txt: Removed.
Removed those baselines now that they can be shared with the common one above.

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

7 years ago[webkit-patch] Don't crash chrome-channels command when a previously unknown platform...
gavinp@chromium.org [Mon, 27 Aug 2012 20:59:06 +0000 (20:59 +0000)]
[webkit-patch] Don't crash chrome-channels command when a previously unknown platform shows up.
https://bugs.webkit.org/show_bug.cgi?id=95104

Reviewed by Adam Barth.

Today I found out this command was broken by the new iOS platform showing up on omahaproxy. Now the webkit-patch chrome-channels command gracefully handles new, previously unknown platforms. Also, it prints iOS in the proper mixed case.

* Scripts/webkitpy/common/net/omahaproxy.py:
(OmahaProxy):
(OmahaProxy.get_revisions):
* Scripts/webkitpy/common/net/omahaproxy_unittest.py:
(OmahaProxyTest):
(OmahaProxyTest.test_get_revisions):

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

7 years ago[chromium] Prevent scrollbar thumb size from changing during compositor zoom
enne@google.com [Mon, 27 Aug 2012 20:48:57 +0000 (20:48 +0000)]
[chromium] Prevent scrollbar thumb size from changing during compositor zoom
https://bugs.webkit.org/show_bug.cgi?id=94859

Reviewed by James Robinson.

Source/WebCore:

During a pinch zoom, the total size of a scrollable area will change,
causing the thumb to become a different size. This will cause the
thumb texture (painted at a specific size) to stretch. To fix this,
add a new CCScrollbarGeometryFixedThumb class which behaves just like
a normal WebScrollbarThemeGeometry class, but constrains the thumb to
be a fixed size.

* WebCore.gypi:
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
(WebCore::ScrollbarLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/cc/CCScrollbarGeometryFixedThumb.cpp: Added.
(WebCore):
(WebCore::CCScrollbarGeometryFixedThumb::create):
(WebCore::CCScrollbarGeometryFixedThumb::~CCScrollbarGeometryFixedThumb):
(WebCore::CCScrollbarGeometryFixedThumb::update):
(WebCore::CCScrollbarGeometryFixedThumb::clone):
(WebCore::CCScrollbarGeometryFixedThumb::thumbLength):
(WebCore::CCScrollbarGeometryFixedThumb::thumbPosition):
(WebCore::CCScrollbarGeometryFixedThumb::splitTrack):
(WebCore::CCScrollbarGeometryFixedThumb::CCScrollbarGeometryFixedThumb):
* platform/graphics/chromium/cc/CCScrollbarGeometryFixedThumb.h: Added.
(WebCore):
(CCScrollbarGeometryFixedThumb):
* platform/graphics/chromium/cc/CCScrollbarGeometryStub.cpp: Added.
(WebCore):
(WebCore::CCScrollbarGeometryStub::CCScrollbarGeometryStub):
(WebCore::CCScrollbarGeometryStub::~CCScrollbarGeometryStub):
(WebCore::CCScrollbarGeometryStub::clone):
(WebCore::CCScrollbarGeometryStub::thumbPosition):
(WebCore::CCScrollbarGeometryStub::thumbLength):
(WebCore::CCScrollbarGeometryStub::trackPosition):
(WebCore::CCScrollbarGeometryStub::trackLength):
(WebCore::CCScrollbarGeometryStub::hasButtons):
(WebCore::CCScrollbarGeometryStub::hasThumb):
(WebCore::CCScrollbarGeometryStub::trackRect):
(WebCore::CCScrollbarGeometryStub::thumbRect):
(WebCore::CCScrollbarGeometryStub::minimumThumbLength):
(WebCore::CCScrollbarGeometryStub::scrollbarThickness):
(WebCore::CCScrollbarGeometryStub::backButtonStartRect):
(WebCore::CCScrollbarGeometryStub::backButtonEndRect):
(WebCore::CCScrollbarGeometryStub::forwardButtonStartRect):
(WebCore::CCScrollbarGeometryStub::forwardButtonEndRect):
(WebCore::CCScrollbarGeometryStub::constrainTrackRectToTrackPieces):
(WebCore::CCScrollbarGeometryStub::splitTrack):
* platform/graphics/chromium/cc/CCScrollbarGeometryStub.h: Added.
(WebCore):
(CCScrollbarGeometryStub):
(WebCore::CCScrollbarGeometryStub::update):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::setScrollbarGeometry):
(WebCore::CCScrollbarLayerImpl::setScrollbarData):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
(WebCore::CCScrollbarLayerImpl::scrollbarGeometry):
(CCScrollbarLayerImpl):

Source/WebKit/chromium:

Update test.

* tests/CCLayerTreeHostImplTest.cpp:

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

7 years ago[chromium] Have RenderSurface create and add its own generated RenderPass
danakj@chromium.org [Mon, 27 Aug 2012 20:46:43 +0000 (20:46 +0000)]
[chromium] Have RenderSurface create and add its own generated RenderPass
https://bugs.webkit.org/show_bug.cgi?id=94957

Reviewed by Adrienne Walker.

Source/WebCore:

Have CCRenderSurface create and add its RenderPass to the appropriate
data structures. Previously CCLayerTreeHostImpl had this responsibility
but this limits us to a single RenderPass per RenderSurface. In ubercomp
we have layers that generate many RenderPasses that all contribute to a
single RenderSurface. This target RenderSurface can create all the needed
RenderPasses in the correct order for itself when asked to now.

We invent CCRenderPassSink and make FrameData implement it, so that the
RenderSurface does not need to know the details of how the RenderPasses
it generates will be stored.

Test: CCRenderSurfaceTest.sanityCheckSurfaceCreatesCorrectRenderPass

* WebCore.gypi:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::FrameData::appendRenderPass):
(WebCore):
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(FrameData):
* platform/graphics/chromium/cc/CCRenderPassSink.h: Added.
(WebCore):
(CCRenderPassSink):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::appendRenderPasses):
(WebCore):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore):
(CCRenderSurface):

Source/WebKit/chromium:

Test that a RenderSurface generates the RenderPass that we expect.

* tests/CCRenderSurfaceTest.cpp:

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

7 years agoShadowRoot insertion point change aborts css transition
commit-queue@webkit.org [Mon, 27 Aug 2012 20:39:18 +0000 (20:39 +0000)]
ShadowRoot insertion point change aborts css transition
https://bugs.webkit.org/show_bug.cgi?id=93755

Patch by Takashi Sakamoto <tasak@google.com> on 2012-08-27
Reviewed by Hajime Morita.

Source/WebCore:

ElementShadow always detaches shadow hosts when distribution is
changed, i.e. select attribute's value is changed. However it clears
the style of the shadow host. So when distribution is changed,
no css transition can be started at the same time. To avoid this
problem, invalidateDistribution, i.e. a method for invalidating current
distribution, should not make shadow host reattach. Instead, it should
make distribute nodes reattached and set needsRecalcStyle flag of
shadow host.

Test: transitions/transition-on-shadow-host-with-distributed-node.html

* dom/ElementShadow.cpp:
(WebCore::ElementShadow::addShadowRoot):
To support replaced elements, i.e. IMG, and so on, shadow host's
renderer must be updated when author shadow roots are addded.
So invoke shadow host's reattach instead of shadowRoot's attach.
(WebCore::ElementShadow::invalidateDistribution):
Remove shadow host's lazy reattach (detach and lazyAttach). Instead, do
distributed nodes' lazy reattach and set shadow host's needsRecalcStyle
flag.
* dom/Node.h:
(WebCore::Node::lazyReattach):
Newly added. The method works like Node::reattach, but use
lazyAttach instead of attach.
(WebCore):

LayoutTests:

* fast/dom/shadow/transition-on-shadow-host-with-distributed-node-expected.txt: Added.
* fast/dom/shadow/transition-on-shadow-host-with-distributed-node.html: Added.
* platform/chromium-linux/fast/html/details-nested-2-expected.txt: Added, because of changing the code about adding shadow root.
* platform/chromium-linux/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt: Added.
* platform/mac/fast/html/details-nested-2-expected.txt: Rebased, because of changing the code about adding shadow root.
* platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt: Rebased.

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

7 years ago[EFL][WK2] Free Url_Bar on program exit
commit-queue@webkit.org [Mon, 27 Aug 2012 20:32:00 +0000 (20:32 +0000)]
[EFL][WK2] Free Url_Bar on program exit
https://bugs.webkit.org/show_bug.cgi?id=95086

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-08-27
Reviewed by Eric Seidel.

Fix a memory leak by freeing the Url_Bar on program exit.

* MiniBrowser/efl/main.c:
(main): Call url_bar_del() to free the Url_Bar.

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

7 years ago[Chromium] Fixing infinite recursion in Canvas2DLayerManager
commit-queue@webkit.org [Mon, 27 Aug 2012 20:20:52 +0000 (20:20 +0000)]
[Chromium] Fixing infinite recursion in Canvas2DLayerManager
https://bugs.webkit.org/show_bug.cgi?id=95110

Patch by Justin Novosad <junov@chromium.org> on 2012-08-27
Reviewed by Stephen White.

Source/WebCore:

Fixed infinite recursion by not reporting a change in memory allocation
when Canvas2DLayerBridge::freeMemoryIfPossible fails to free memory.
Also modified Canvas2DLayerManager::layerAllocatedStorageChanged to
only initiate a memory eviction pass if memory consumption has
increased.

Test: webkit_unit_tests Canvas2DLayerManagerTest*

* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::freeMemoryIfPossible):
* platform/graphics/chromium/Canvas2DLayerManager.cpp:
(WebCore::Canvas2DLayerManager::layerAllocatedStorageChanged):

Source/WebKit/chromium:

Breaking recursion cycle by not reporting a change in memory allocation
when no memory is freed in FakeCanvas2DLayer::freeMemoryIfPossible.

* tests/Canvas2DLayerManagerTest.cpp:

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

7 years agoTextTrack modes are strings
annacc@chromium.org [Mon, 27 Aug 2012 20:12:39 +0000 (20:12 +0000)]
TextTrack modes are strings
https://bugs.webkit.org/show_bug.cgi?id=85050

Reviewed by Eric Carlson.

The spec recently changed away from enumeration to string for the type
of TextTrack mode.
http://dev.w3.org/html5/spec/media-elements.html#texttrackmode

Source/WebCore:

No new tests. Updates to existing tests.

* html/HTMLMediaElement.cpp:

Use the new string mode rather than the old enum.  Also, TextTrack::setMode()
no longer requires an ExceptionCode:
(WebCore::HTMLMediaElement::loadInternal):
(WebCore::HTMLMediaElement::textTrackModeChanged):
(WebCore::HTMLMediaElement::textTrackKindChanged):
(WebCore::HTMLMediaElement::addTextTrack):
(WebCore::HTMLMediaElement::showingTrackWithSameKind):
(WebCore::HTMLMediaElement::configureTextTrackGroup):
(WebCore::HTMLMediaElement::configureNewTextTracks):
(WebCore::HTMLMediaElement::configureTextTrackDisplay):

* html/track/TextTrack.cpp:

Update these methods to use ConstructFromLiteral for efficiency:
(WebCore::TextTrack::subtitlesKeyword):
(WebCore::TextTrack::captionsKeyword):
(WebCore::TextTrack::descriptionsKeyword):
(WebCore::TextTrack::chaptersKeyword):
(WebCore::TextTrack::metadataKeyword):

New methods to use for the mode string (replacing the enum):
(WebCore::TextTrack::disabledKeyword):
(WebCore::TextTrack::hiddenKeyword):
(WebCore::TextTrack::showingKeyword):

(WebCore::TextTrack::TextTrack): Initialize mode to disabled.
(WebCore::TextTrack::setMode): Remove ExceptionCode and no longer throw an
INVALID_ACCESS_ERR.
(WebCore::TextTrack::mode): Return a keyword string instead of an enum.

Use the new string mode rather than the old enum:
(WebCore::TextTrack::cues):
(WebCore::TextTrack::activeCues):
(WebCore::TextTrack::isRendered):

* html/track/TextTrack.h: Remove old enum, add new string keyword methods,
and update mode() and setMode() accordingly.

* html/track/TextTrack.idl: Remove old enum and make mode attribute be a string.

Use the new string mode rather than the old enum:
* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::dispatchEvent):
(WebCore::TextTrackCue::isActive):

LayoutTests:

Remove check for mode constants as we are no longer using an enum:
* media/track/track-constants-expected.txt:
* media/track/track-constants.html:

Update tests to use the new strings rather than the enums:
* media/track/track-delete-during-setup-expected.txt:
* media/track/track-delete-during-setup.html:
* media/track/track-element-dom-change-crash-expected.txt:
* media/track/track-element-dom-change-crash.html:
* media/track/track-load-from-src-readyState.html:
* media/track/track-mode-expected.txt:
* media/track/track-mode-not-changed-by-new-track-expected.txt:
* media/track/track-mode-not-changed-by-new-track.html:
* media/track/track-mode-triggers-loading-expected.txt:
* media/track/track-mode-triggers-loading.html:
* media/track/track-mode.html:
* media/track/track-texttracks-expected.txt:
* media/track/track-texttracks.html:
* media/video-test.js:
(enableAllTextTracks):

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

7 years ago'self' in a CSP directive should match blob: and filesystem: URLs.
commit-queue@webkit.org [Mon, 27 Aug 2012 20:08:39 +0000 (20:08 +0000)]
'self' in a CSP directive should match blob: and filesystem: URLs.
https://bugs.webkit.org/show_bug.cgi?id=94918

Patch by Mike West <mkwst@chromium.org> on 2012-08-27
Reviewed by Adam Barth.

Source/WebCore:

'blob:' and 'filesystem:' URLs are same-origin with the page on which
they were created. Currently, we're using the wrong URL for comparison
when matching against CSP directive source lists. This patch adjusts the
matching logic to compare against the blob's inner URL, rather than
directly against the blob itself.

Tests: http/tests/security/contentSecurityPolicy/blob-urls-match-self.html
       http/tests/security/contentSecurityPolicy/filesystem-urls-match-self.html
       http/tests/security/contentSecurityPolicy/source-list-parsing-08.html

* page/ContentSecurityPolicy.cpp:
(WebCore::CSPSourceList::matches):
    If we should use the inner URL of a given resource, extract it into
    a local variable, and pass that into CSPSource for comparison.
* page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::shouldUseInnerURL):
(WebCore::SecurityOrigin::extractInnerURL):
    Move shouldUseInnerURL and extractInnerURL to SecurityOrigin's
    public signature.
(WebCore::shouldTreatAsUniqueOrigin):
(WebCore::SecurityOrigin::create):
(WebCore::SecurityOrigin::isSecure):
    shouldUseInnerURL and extractInnerURL are now static methods of
    SecurityOrigin: updating calls to mathc.
* page/SecurityOrigin.h:

LayoutTests:

* http/tests/security/contentSecurityPolicy/blob-urls-match-self-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/blob-urls-match-self.html: Added.
* http/tests/security/contentSecurityPolicy/filesystem-urls-match-self-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/filesystem-urls-match-self.html: Added.
    Test the new functionality.
* http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:
(test):
    Adding support for data: URLs.
* http/tests/security/contentSecurityPolicy/source-list-parsing-08-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/source-list-parsing-08.html: Added.
    Adding data: URL tests to ensure that grabbing the inner URL of the
    URL to test doesn't inadvertently regress that behavior.
* platform/efl/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
    Skipping filessytem test on ports where it's not enabled.

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

7 years ago[chromium] Fix exit code status logic in run-chromium-webkit-unit-tests
jamesr@google.com [Mon, 27 Aug 2012 19:16:22 +0000 (19:16 +0000)]
[chromium] Fix exit code status logic in run-chromium-webkit-unit-tests
https://bugs.webkit.org/show_bug.cgi?id=95115

Reviewed by Adam Barth.

Use VCSUtils utility function to check if webkit_unit_tests terminates normally so we generate a non-zero exit
code if the unit tests crash.

* Scripts/run-chromium-webkit-unit-tests:

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

7 years agoFix compilation when both OS(WINCE) and PLATFORM(QT) are true
commit-queue@webkit.org [Mon, 27 Aug 2012 19:06:54 +0000 (19:06 +0000)]
Fix compilation when both OS(WINCE) and PLATFORM(QT) are true
https://bugs.webkit.org/show_bug.cgi?id=95050

Patch by Kevin Funk <kevin.funk@kdab.com> on 2012-08-27
Reviewed by Simon Hausmann.

The compilation of NativeImagePtr.h breaks when both OS(WINCE) and PLATFORM(QT) are enabled.
This patch fixes this.

* platform/graphics/NativeImagePtr.h:

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

7 years agoFix some more sticky ref tests; avoid wrapping at the 800px
simon.fraser@apple.com [Mon, 27 Aug 2012 19:01:22 +0000 (19:01 +0000)]
Fix some more sticky ref tests; avoid wrapping at the 800px
window width, and remove a margin:auto from a reference.

* fast/css/sticky/sticky-margins-expected.html:
* fast/css/sticky/sticky-margins.html:
* fast/css/sticky/sticky-writing-mode-vertical-lr-expected.html:

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

7 years agoAdd ECMAScript Number to String conversion to WTF::String
benjamin@webkit.org [Mon, 27 Aug 2012 18:57:57 +0000 (18:57 +0000)]
Add ECMAScript Number to String conversion to WTF::String
https://bugs.webkit.org/show_bug.cgi?id=95016

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Rename UString::number(double) to UString::numberToStringECMAScript(double) to
differenciate it from the fixed-width conversion performed by String::number().

* parser/ParserArena.h:
(JSC::IdentifierArena::makeNumericIdentifier):
* runtime/JSONObject.cpp:
(JSC::Stringifier::appendStringifiedValue):
* runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToExponential):
(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):
(JSC::numberProtoFuncToString):
* runtime/NumericStrings.h:
(JSC::NumericStrings::add):
* runtime/UString.cpp:
(JSC::UString::numberToStringECMAScript):
* runtime/UString.h:
(UString):

Source/WTF:

* wtf/text/WTFString.cpp:
(WTF::String::numberToStringECMAScript):
* wtf/text/WTFString.h:
Add the implementation of numberToStringECMAScript(double) from UString to String.
This will make it easier to replace UString in the future.

Tools:

* TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::testNumberToStringECMAScript):
(TestWebKitAPI): Add tests for String's ECMAString number conversion.

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

7 years agoEven up WTF::String to CString functions
benjamin@webkit.org [Mon, 27 Aug 2012 18:55:11 +0000 (18:55 +0000)]
Even up WTF::String to CString functions
https://bugs.webkit.org/show_bug.cgi?id=95008

Reviewed by Sam Weinig.

Apply advantages from UString to WTF::String.

* wtf/text/WTFString.cpp:
(WTF::String::ascii): There is no need to special case the null length, both
following branches use CString::newUninitialized(), which create empty string
for null length.
(WTF::String::latin1): Use characters16() instead of characters() to avoid
testing is8Bit() a second time.

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

7 years agoMediaStream API: Fix review comments from patch #93119
tommyw@google.com [Mon, 27 Aug 2012 18:54:15 +0000 (18:54 +0000)]
MediaStream API: Fix review comments from patch #93119
https://bugs.webkit.org/show_bug.cgi?id=95064

Reviewed by Adam Barth.

Source/WebCore:

Adding const to accessors.

Change covered by exisiting tests..

* Modules/mediastream/RTCIceCandidate.cpp:
(WebCore::RTCIceCandidate::candidate):
(WebCore::RTCIceCandidate::sdpMid):
(WebCore::RTCIceCandidate::sdpMLineIndex):
* Modules/mediastream/RTCIceCandidate.h:
(RTCIceCandidate):
* Modules/mediastream/RTCSessionDescription.cpp:
(WebCore::RTCSessionDescription::create):
(WebCore::RTCSessionDescription::type):
(WebCore::RTCSessionDescription::sdp):
* Modules/mediastream/RTCSessionDescription.h:
(RTCSessionDescription):

LayoutTests:

* fast/mediastream/RTCIceCandidate-expected.txt:
* fast/mediastream/RTCIceCandidate.html:
* fast/mediastream/RTCSessionDescription-expected.txt:
* fast/mediastream/RTCSessionDescription.html:
* fast/mediastream/constructors-expected.txt:
* fast/mediastream/constructors.html:

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

7 years agoFix sticky-position test to hide scrollbars.
simon.fraser@apple.com [Mon, 27 Aug 2012 18:38:59 +0000 (18:38 +0000)]
Fix sticky-position test to hide scrollbars.

* fast/css/sticky/sticky-side-margins-expected.html:
* fast/css/sticky/sticky-side-margins.html:

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

7 years agoMake Force Repaint work with tiled backing store
simon.fraser@apple.com [Mon, 27 Aug 2012 18:36:29 +0000 (18:36 +0000)]
Make Force Repaint work with tiled backing store
https://bugs.webkit.org/show_bug.cgi?id=95102

Reviewed by Dan Bernstein.

Source/WebCore:

forceRepaint() didn't work correctly with tiled backing
store, because it never actually caused a repaint on the tiles.

Fix by having the drawing area call forceRepaint() on
the TileCache (via the TiledBacking interface), which
just ends up as a setNeedsDisplay().

* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/TiledBacking.h:
* platform/graphics/ca/mac/TileCache.h:
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::forceRepaint):

Source/WebKit2:

Have forceRepaint() call down to the tiled backing of each FrameView,
so they can repaint.

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

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

7 years agoCrash when trying to render empty cues
victor@rosedu.org [Mon, 27 Aug 2012 18:05:44 +0000 (18:05 +0000)]
Crash when trying to render empty cues
https://bugs.webkit.org/show_bug.cgi?id=94776

Reviewed by Eric Carlson.

Added extra safety checks.

Source/WebCore:

Test: media/track/track-cue-rendering-empty-cue-crash.html

* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::getCueAsHTML):
(WebCore::TextTrackCue::updateDisplayTree):

LayoutTests:

* media/track/track-cue-rendering-empty-cue-crash-expected.txt: Added.
* media/track/track-cue-rendering-empty-cue-crash.html: Added.

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

7 years agoUnreviewed Chromium gardening.
jchaffraix@webkit.org [Mon, 27 Aug 2012 17:56:10 +0000 (17:56 +0000)]
Unreviewed Chromium gardening.

* platform/chromium/TestExpectations:
Marked fast/text/atsui-bidi-control.html as timing out on SnowLeopard.

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

7 years agoImplement sticky positioning
simon.fraser@apple.com [Mon, 27 Aug 2012 17:39:45 +0000 (17:39 +0000)]
Implement sticky positioning
https://bugs.webkit.org/show_bug.cgi?id=90046

Reviewed by Ojan Vafai.

Source/WebCore:

Initial implementation of position: -webkit-sticky, which
constrains an element to be positioned inside the intersection
of its container box, and the viewport. Sticky elements create
stacking context.

A stickily positioned element behaves like position:relative
(space is reserved for it in-flow), but with an offset that is
determined by the sticky position. Changed isInFlowPositioned()
to cover relative and sticky.

Added a convenience isPositioned() to RenderObject(), which
is true for an object with any non-static position value.

Tests: fast/css/sticky/inflow-sticky.html
       fast/css/sticky/inline-sticky-abspos-child.html
       fast/css/sticky/inline-sticky.html
       fast/css/sticky/replaced-sticky.html
       fast/css/sticky/sticky-as-positioning-container.html
       fast/css/sticky/sticky-left-percentage.html
       fast/css/sticky/sticky-left.html
       fast/css/sticky/sticky-margins.html
       fast/css/sticky/sticky-side-margins.html
       fast/css/sticky/sticky-stacking-context.html
       fast/css/sticky/sticky-top-margins.html
       fast/css/sticky/sticky-top.html
       fast/css/sticky/sticky-writing-mode-horizontal-bt.html
       fast/css/sticky/sticky-writing-mode-vertical-lr.html
       fast/css/sticky/sticky-writing-mode-vertical-rl.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle): Have position:sticky
create stacking context from the get-go, to make scrolling optimizations easier later.
* page/FrameView.cpp:
(WebCore::FrameView::scrollContentsFastPath): Use hasViewportConstrainedPosition().
* page/FrameView.h: FrameView's "fixed" objects contains both fixed and sticky objects now.
* rendering/RenderBlock.cpp: Use isPositioned().
(WebCore::RenderBlock::isSelectionRoot):
(WebCore::RenderBlock::renderName):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange): Need to look for both stick and fixed positioning to
determine whether to add something to FrameView's fixed object set.
(WebCore::RenderBox::computeRectForRepaint): Need to take the sticky offset into account
when computing repaint rects.
* rendering/RenderBox.h: Implement frameRectForStickyPositioning() for boxes.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):
(WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderBoxModelObject::stickyPositionOffset): Compute the sticky position
offset by taking into account the viewport rect, and the conteriner's contentRect
inset by its margins.
(WebCore::RenderBoxModelObject::offsetForInFlowPosition): Convenience wrapper
for getting relative or sticky offset.
* rendering/RenderBoxModelObject.h: Have requiresLayer() use isPositioned().
(WebCore::RenderBoxModelObject::stickyPositionLogicalOffset):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::styleWillChange): Need to implement this to
add/remove objects from FrameView's fixed object list, since, prior to sticky,
only boxes could be fixed.
(WebCore::RenderInline::renderName):
(WebCore::RenderInline::positionForPoint):
(WebCore::RenderInline::computeRectForRepaint):
* rendering/RenderInline.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositionsAfterScroll): Have to look for fixed or sticky.
(WebCore::RenderLayer::calculateClipRects): Use isPositioned().
(WebCore::RenderLayer::shouldBeNormalFlowOnly): Ditto.
* rendering/RenderLayer.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::propagateStyleToAnonymousChildren): Should use isInFlowPositioned(),
not just isRelPositioned().
(WebCore::RenderObject::offsetParent): Use isPositioned().
* rendering/RenderObject.h:
(WebCore::RenderObject::isInFlowPositioned):
(WebCore::RenderObject::isStickyPositioned):
(WebCore::RenderObject::setStickyPositioned):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(RenderObjectBitfields):
* rendering/RenderStyle.h: add hasViewportConstrainedPosition() for fixed or sticky position.

LayoutTests:

Various ref tests for sticky positioning.

* fast/css/sticky/inflow-sticky-expected.html: Added.
* fast/css/sticky/inflow-sticky.html: Added.
* fast/css/sticky/inline-sticky-abspos-child-expected.html: Added.
* fast/css/sticky/inline-sticky-abspos-child.html: Added.
* fast/css/sticky/inline-sticky-expected.html: Added.
* fast/css/sticky/inline-sticky.html: Added.
* fast/css/sticky/replaced-sticky-expected.html: Added.
* fast/css/sticky/replaced-sticky.html: Added.
* fast/css/sticky/sticky-as-positioning-container-expected.html: Added.
* fast/css/sticky/sticky-as-positioning-container.html: Added.
* fast/css/sticky/sticky-left-expected.html: Added.
* fast/css/sticky/sticky-left-percentage-expected.html: Added.
* fast/css/sticky/sticky-left-percentage.html: Added.
* fast/css/sticky/sticky-left.html: Added.
* fast/css/sticky/sticky-margins-expected.html: Added.
* fast/css/sticky/sticky-margins.html: Added.
* fast/css/sticky/sticky-side-margins-expected.html: Added.
* fast/css/sticky/sticky-side-margins.html: Added.
* fast/css/sticky/sticky-stacking-context-expected.html: Added.
* fast/css/sticky/sticky-stacking-context.html: Added.
* fast/css/sticky/sticky-top-expected.html: Added.
* fast/css/sticky/sticky-top-margins-expected.html: Added.
* fast/css/sticky/sticky-top-margins.html: Added.
* fast/css/sticky/sticky-top.html: Added.
* fast/css/sticky/sticky-writing-mode-horizontal-bt-expected.html: Added.
* fast/css/sticky/sticky-writing-mode-horizontal-bt.html: Added.
* fast/css/sticky/sticky-writing-mode-vertical-lr-expected.html: Added.
* fast/css/sticky/sticky-writing-mode-vertical-lr.html: Added.
* fast/css/sticky/sticky-writing-mode-vertical-rl-expected.html: Added.
* fast/css/sticky/sticky-writing-mode-vertical-rl.html: Added.

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

7 years ago[BlackBerry] Not using absoluteVisibleOverSize when rotating
commit-queue@webkit.org [Mon, 27 Aug 2012 17:06:06 +0000 (17:06 +0000)]
[BlackBerry] Not using absoluteVisibleOverSize when rotating
https://bugs.webkit.org/show_bug.cgi?id=95092
PR #190469

Patch by Leo Yang <leoyang@rim.com> on 2012-08-27
Reviewed by Antonio Gomes.
Reviewed internally by Arvid Nilsson.

When we are rotating don't count absolute overflow visible size
into fixed layout size because we are in a transient state. The
absolute overflow visible size remains old size during rotation.

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

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

7 years ago[Qt] Fix typo in CoordinatedGraphicsLayer::syncAnimatedProperties
rafael.lobo@openbossa.org [Mon, 27 Aug 2012 17:04:45 +0000 (17:04 +0000)]
[Qt] Fix typo in CoordinatedGraphicsLayer::syncAnimatedProperties
https://bugs.webkit.org/show_bug.cgi?id=95085

Reviewed by Noam Rosenthal.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp: The flag should be disabled
once we process the sync for animated properties. Previously, it was never disabling it once enabled.

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

7 years agoUnreviewed Mac Chromium build fix after r126763.
jchaffraix@webkit.org [Mon, 27 Aug 2012 16:16:43 +0000 (16:16 +0000)]
Unreviewed Mac Chromium build fix after r126763.

* platform/graphics/Font.cpp:

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

7 years ago[BlackBerry] remove -fno-rtti option in CMAKE_C_FLAGS
rwlbuis@webkit.org [Mon, 27 Aug 2012 15:51:09 +0000 (15:51 +0000)]
[BlackBerry] remove -fno-rtti option in CMAKE_C_FLAGS
https://bugs.webkit.org/show_bug.cgi?id=95089

Reviewed by Antonio Gomes.

This option does not make sense for compiling C and gives a warning.

* Source/cmake/OptionsBlackBerry.cmake:

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

7 years ago[BlackBerry] Remove the 'in region scrollable starting node' concept from InRegionScr...
tonikitoo@webkit.org [Mon, 27 Aug 2012 15:50:30 +0000 (15:50 +0000)]
[BlackBerry] Remove the 'in region scrollable starting node' concept from InRegionScroller
https://bugs.webkit.org/show_bug.cgi?id=95020

Reviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>

'In-region start scrolling node' is an obsolete concept, and we can remove it
in favor of using the information from the cached layers.

* Api/InRegionScroller.cpp:
(WebKit):
(BlackBerry::WebKit::InRegionScrollerPrivate::reset): Adjusted as it used to clear
the cached 'node'.
(BlackBerry::WebKit::InRegionScrollerPrivate::isActive): Added method to be
checked directly instead of only null-checking the previously cached 'node'.
(BlackBerry::WebKit::InRegionScrollerPrivate::clearDocumentData): New method to
clear the cached resources if its document is done.
(BlackBerry::WebKit::InRegionScrollerPrivate::pushBackInRegionScrollable): Adjusted
to not care about the cached 'node' anymore.
* Api/InRegionScroller_p.h:
(InRegionScrollerPrivate):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::notifyInRegionScrollStopped): Check ::isActive instead
of ::hasNode, since the later is gone.
(BlackBerry::WebKit::WebPagePrivate::enqueueRenderingOfClippedContentOfScrollableAreaAfterInRegionScrolling):
Changed the method signature, given that we do have a cached 'node' to pass in as parameter anymore.
(BlackBerry::WebKit::WebPagePrivate::clearDocumentData): Delegate all the related work to InRegionScroller.
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

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

7 years agoBlackBerry] Shrink the in-region nested scrollable list as soon as we can
tonikitoo@webkit.org [Mon, 27 Aug 2012 15:49:48 +0000 (15:49 +0000)]
BlackBerry] Shrink the in-region nested scrollable list as soon as we can
https://bugs.webkit.org/show_bug.cgi?id=95019

Reviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>

We cache all possible nested scrollable in-region layers given a point.
It is up to the client to pick a view, based on the scroll position and limits
of each layer, and on the diretion user swipes its finger.
From the point we pick a view on, we stick with it, and any other
possibly cached layer can be uncached, as it won't be needed.
Patch providesa simple solution to that.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::InRegionScrollerPrivate):
(BlackBerry::WebKit::InRegionScrollerPrivate::reset):
(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionWebKitThread):
(BlackBerry::WebKit::InRegionScrollerPrivate::calculateActiveAndShrinkCachedScrollableAreas):
(WebKit):
(BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
* Api/InRegionScroller_p.h:
(InRegionScrollerPrivate):

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

7 years agoFor convenience, make RenderLayer::enclosingElement a public method.
tonikitoo@webkit.org [Mon, 27 Aug 2012 15:49:10 +0000 (15:49 +0000)]
For convenience, make RenderLayer::enclosingElement a public method.
https://bugs.webkit.org/show_bug.cgi?id=95018

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

Source/WebCore:
It can be useful for outsiders of this class.

No new tests needed.

* rendering/RenderLayer.h:
(RenderLayer):

Source/WebKit/blackberry:
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea): Make use
of the new public RenderLayer::enclosingElement method and remove duplicated code.

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

7 years agoWeb Inspector: display a dimmed warning icon on a timeline record if it has children...
caseq@chromium.org [Mon, 27 Aug 2012 15:46:15 +0000 (15:46 +0000)]
Web Inspector: display a dimmed warning icon on a timeline record if it has children with warning
https://bugs.webkit.org/show_bug.cgi?id=95087

Reviewed by Yury Semikhatsky.

Propagate warning from child timeline records to the top, display a dimmed warning icons for records
that have children with warnings.

* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.Record.prototype.get aggregatedStats):
(WebInspector.TimelinePresentationModel.Record.prototype.setHasWarning):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.child-warning::after):

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

7 years agoWeb Inspector: Debugger should break on failed assertions in Break on exceptions...
vsevik@chromium.org [Mon, 27 Aug 2012 15:43:23 +0000 (15:43 +0000)]
Web Inspector: Debugger should break on failed assertions in Break on exceptions mode.
https://bugs.webkit.org/show_bug.cgi?id=95088

Reviewed by Yury Semikhatsky.

Source/WebCore:

Debugger now breaks when assert message is added to console from console API.

Test: inspector/debugger/debugger-pause-on-failed-assertion.html

* English.lproj/localizedStrings.js:
* inspector/Inspector.json:
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::addMessageToConsole):
(WebCore):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
* inspector/front-end/DebuggerModel.js:
* inspector/front-end/ScriptsPanel.js:

LayoutTests:

* inspector/debugger/debugger-pause-on-failed-assertion-expected.txt: Added.
* inspector/debugger/debugger-pause-on-failed-assertion.html: Added.

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

7 years agoImprove line breaking performance for complex text
mitz@apple.com [Mon, 27 Aug 2012 15:31:56 +0000 (15:31 +0000)]
Improve line breaking performance for complex text
https://bugs.webkit.org/show_bug.cgi?id=83045

Patch by Ned Holbrook <nholbrook@apple.com> on 2012-08-27
Reviewed by Darin Adler.

Currently RenderBlock::LineBreaker::nextLineBreak assumes that measuring individual words is as cheap
as free. This is not the case when dealing with complex text, which benefits from laying out as much
text as possible and by reusing that layout when feasible: by doing so this patch improves line
breaking by 25% as measured with a simple test app.

The bulk of this change is modifying ComplexTextController::advance, which previously required the
text offset to be strictly increasing and assumed unidirectional text; now it supports random seeking
in a naive fashion (by restarting to the beginning) and traverses glyphs in logical order. In the
latter case, the presence of any non-LTR runs triggers the population of a mapping from logical to
visual run indices. Finally, a new flag has been added which inhibits glyph advances from being split
across ligatures (thus causing spurious line breaks).

A ComplexTextController and its associated TextRun and Font are encapsulated in a TextLayout object,
which is instantiated as an opaque object via functions that are no-ops unless building for Mac. A
static member function (isNeeded) checks to see whether a TextRun is complex, in order to avoid
needless instantiation. It also bails if tabs would be enabled since positional effects are not yet
handled in this mode.

No behavioral changes are expected due to this change, so no new tests.

* platform/graphics/Font.cpp:
(WTF): Define deleteOwnedPtr for TextLayout as calling through destroyLayout; relying on operator delete is not workable as the class does not exist on all platforms.
(WTF::WebCore::TextLayout):
(WebCore): Implement no-op TextLayout wrappers for non-Mac platforms.
(WebCore::Font::createLayout):
(WebCore::Font::deleteLayout):
(WebCore::Font::width):
* platform/graphics/Font.h:
(WebCore): Add forward declarations for RenderText and TextLayout.
(Font): Add functions for dealing with pointer to TextLayout implementation.
(WTF): Declare deleteOwnedPtr for TextLayout.
* platform/graphics/mac/ComplexTextController.cpp:
(TextLayout): An instance of this class corresponds to a ComplexTextController for a particular TextRun.
(WebCore::TextLayout::isNeeded): Used by wrapper to avoid instantiation when complex layout is not required.
(WebCore::TextLayout::TextLayout):
(WebCore::TextLayout::width):
(WebCore::TextLayout::fontWithNoWordSpacing): Helper function to allow initialization of member variable.
(WebCore::TextLayout::constructTextRun): Ditto.
(WebCore): Implement real TextLayout wrappers for Mac.
(WebCore::Font::createLayout):
(WebCore::Font::deleteLayout):
(WebCore::Font::width):
(WebCore::ComplexTextController::ComplexTextController): Initialize m_ltrOnly and reserve initial capacity for m_runIndices.
(WebCore::ComplexTextController::indexOfCurrentRun): Return (visual) m_complexTextRuns index corresponding to (logical) m_currentRun, lazily constructing m_runIndices if needed.
(WebCore::ComplexTextController::incrementCurrentRun): Return next m_complexTextRuns index in logical order.
(WebCore::ComplexTextController::advance): Allow restarting, support for bidi reordering, and option to measure only whole glyphs rather than dividing advances.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances): Clear m_ltrOnly on detecting a RTL run.
* platform/graphics/mac/ComplexTextController.h:
(ComplexTextController): Add m_ltrOnly indicating no bidi reordering, and m_runIndices mapping from runs (logical order) to m_complexTextRuns (visual order).
(WebCore::ComplexTextController::ComplexTextRun::indexBegin):
(WebCore::ComplexTextController::ComplexTextRun::isLTR):
(ComplexTextRun): Add helper functions returning values pertinent to individual runs as opposed to the entire containing line.
(WebCore::ComplexTextController::stringBegin): Return first string index.
(WebCore::ComplexTextController::stringEnd): Return one past last string index.
* platform/graphics/mac/ComplexTextControllerCoreText.mm: Initialize m_indexBegin and m_ltr.
(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Initialize m_indexBegin and m_ltr.
* rendering/RenderBlock.h:
(RenderTextInfo): Add single mapping from RenderText to LazyLineBreakIterator and (possibly null) TextLayout since they are recreated under the same circumstances.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::RenderTextInfo::RenderTextInfo): Make non-inline to avoid compilation errors.
(WebCore::RenderBlock::RenderTextInfo::~RenderTextInfo): Ditto.
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Allow RenderTextInfo to be reused across calls to nextLineBreak.
(WebCore::textWidth): Use TextLayout when supplied for measuring.
(WebCore::RenderBlock::LineBreaker::nextLineBreak):

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

7 years agoAdd two missing variable initializers to RenderFlowThread
thakis@chromium.org [Mon, 27 Aug 2012 14:52:32 +0000 (14:52 +0000)]
Add two missing variable initializers to RenderFlowThread
https://bugs.webkit.org/show_bug.cgi?id=95048

Reviewed by Julien Chaffraix.

The m_dispatchRegionLayoutUpdateEvent change is needed to fix this
valgrind warning:
Conditional jump or move depends on uninitialised value(s)
  WebCore::RenderFlowThread::layout() (third_party/WebKit/Source/WebCore/rendering/RenderFlowThread.cpp:189)
  WebCore::RenderObject::layoutIfNeeded() (third_party/WebKit/Source/WebCore/rendering/RenderObject.h:647)
  WebCore::FlowThreadController::layoutRenderNamedFlowThreads() (third_party/WebKit/Source/WebCore/rendering/FlowThreadController.cpp:124)
  WebCore::RenderView::layout() (third_party/WebKit/Source/WebCore/rendering/RenderView.cpp:159)
  WebCore::FrameView::layout(bool) (third_party/WebKit/Source/WebCore/page/FrameView.cpp:1154)
  WebCore::FrameView::layoutTimerFired(WebCore::Timer<WebCore::FrameView>*) (third_party/WebKit/Source/WebCore/page/FrameView.cpp:2074)
  WebCore::Timer<WebCore::FrameView>::fired() (third_party/WebKit/Source/WebCore/platform/Timer.h:100)
  WebCore::ThreadTimers::sharedTimerFiredInternal() (third_party/WebKit/Source/WebCore/platform/ThreadTimers.cpp:115)
  WebCore::ThreadTimers::sharedTimerFired() (third_party/WebKit/Source/WebCore/platform/ThreadTimers.cpp:93)
  webkit_glue::WebKitPlatformSupportImpl::DoTimeout() (./webkit/glue/webkitplatformsupport_impl.h:163)
The report came from the `fast/regions/absolute-pos-elem-in-named-flow.html'--pixel-test` test.

m_dispatchRegionLayoutUpdateEvent was added in https://bugs.webkit.org/show_bug.cgi?id=88778
by abucur, reviewed by abarth.

While here, also initialize m_hasRegionsWithStyling, added in https://bugs.webkit.org/show_bug.cgi?id=85633
by mihnea, reviewed by hyatt.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):

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

7 years ago[Qt] fast/url/path.html with Qt5 differ results on both WK1 and WK2
hugo.lima@openbossa.org [Mon, 27 Aug 2012 14:50:03 +0000 (14:50 +0000)]
[Qt] fast/url/path.html with Qt5 differ results on both WK1 and WK2
https://bugs.webkit.org/show_bug.cgi?id=77380

Reviewed by Kenneth Rohde Christiansen.

* platform/qt-4.8/fast/url/path-expected.txt: Renamed from LayoutTests/platform/qt/fast/url/path-expected.txt.
* platform/qt-5.0-wk1/Skipped:
* platform/qt-5.0/Skipped:

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

7 years ago[Chromium] Implementing a global limit on memory consumed by deferred 2D canvases
commit-queue@webkit.org [Mon, 27 Aug 2012 14:27:50 +0000 (14:27 +0000)]
[Chromium] Implementing a global limit on memory consumed by deferred 2D canvases
https://bugs.webkit.org/show_bug.cgi?id=94386

Patch by Justin Novosad <junov@chromium.org> on 2012-08-27
Reviewed by Stephen White.

Source/WebCore:

Before this change, there was no global bound on memory that could be
consumed for the purpose of recording 2d canvas deferred draw commands.
There was only a per canvas limit. It is possible for canvases to get
dereferenced without flushing pending draw commands, which may lock
resources until the canvas element is garbage collected. This makes
it possible to grow memory consumption indefinitely by hitting reload
successively on some canvas-intensive web pages.

The solution implemented in this change consists in maintaining a
global registry of deferred canvas layers and tracking the sum of
memory allocated by all canvases for the purpose of storing deferred
draw commands. When memory consumption reaches the allowed limit,
caches are cleared and draw operations are flushed on one or several
canvases, starting with the least recently used, until memory
consumption is below a target level.

New tests: webkit_unit_tests DeferredLayerManagerTest*

* WebCore.gypi:
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::storageAllocatedForRecordingChanged):
Overloaded from SkDeferredCanvas::NotificationClient. Called when
there is a change in the number of bytes allocated by the deferred
canvas.
(WebCore):
(WebCore::Canvas2DLayerBridge::flushedDrawCommands):
Overloaded from SkDeferredCanvas::NotificationClient. Called when
pending draw commands are flush by the deferred canvas.
(WebCore::Canvas2DLayerBridge::freeMemoryIfPossible):
Called by the Canvas2DLayerManager to request the release of unlocked
memory resources (caches). Request is relayed to SkDeferredCanvas.
returns number of bytes freed.
(WebCore::Canvas2DLayerBridge::flush):
Requests that pending draw commands be flushed immediately from the
deferred canvas queue. Request is relayed to SkDeferredCanvas.
(WebCore::Canvas2DLayerBridge::contextAcquired):
* platform/graphics/chromium/Canvas2DLayerBridge.h:
(Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::bytesAllocated):
(WebCore::Canvas2DLayerBridge::updateBytesAllocated):
* platform/graphics/chromium/Canvas2DLayerManager.cpp: Added.
(WebCore):
(WebCore::Canvas2DLayerManager::Canvas2DLayerManager):
(WebCore::Canvas2DLayerManager::~Canvas2DLayerManager):
(WebCore::Canvas2DLayerManager::init):
Sets the global limit for the maximum total number of bytes allocated
by deferred layers.
(WebCore::Canvas2DLayerManager::get):
Singleton accessor
(WebCore::Canvas2DLayerManager::layerDidDraw):
Called by Canvas2DLayerBridge to indicate that the layer was drawn to.
(WebCore::Canvas2DLayerManager::addLayerToList):
(WebCore::Canvas2DLayerManager::layerAllocatedStorageChanged):
Called by Canvas2DLayerBridge to indicate thet the memory consumed by
the layer has changed.
(WebCore::Canvas2DLayerManager::layerDidFlush):
Called by Canvas2DLayerBridge to indicated that the pending draw
commands of the layer were flushed.
(WebCore::Canvas2DLayerManager::layerToBeDestroyed):
Called by Canvas2DLayerBridge upon destruction.
(WebCore::Canvas2DLayerManager::freeMemoryIfNecessary):
Called internally. Check that current memory consumption is below
the tolerated limit.  If check fails, intiates resource releases.
(WebCore::Canvas2DLayerManager::removeLayerFromList):
(WebCore::Canvas2DLayerManager::isInList):
(WebCore::Canvas2DLayerManager::updateBytesAllocated):
* platform/graphics/chromium/Canvas2DLayerManager.h: Added.
(WebCore):
(Canvas2DLayerManager):

Source/WebKit/chromium:

Adding unit tests for WebCore::Canvas2DLayerManager

* WebKit.gypi:

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

7 years agoImplement GraphicsSurface::paintToTextureMapper.
zeno.albisser@nokia.com [Mon, 27 Aug 2012 14:20:46 +0000 (14:20 +0000)]
Implement GraphicsSurface::paintToTextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=95077

Forward paintToTextureMapper call directly into
GraphicsSurface. This allows getting rid of platform
specific code in TextureMapperSurfaceBackingStore.

Reviewed by Noam Rosenthal.

* platform/graphics/surfaces/GraphicsSurface.cpp:
(WebCore::GraphicsSurface::paintToTextureMapper):
(WebCore):
* platform/graphics/surfaces/GraphicsSurface.h:
(WebCore):
(GraphicsSurface):
* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
(WebCore):
* platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp:
(WebCore):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
* platform/graphics/texmap/TextureMapperBackingStore.cpp:
(WebCore::TextureMapperSurfaceBackingStore::paintToTextureMapper):

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

7 years agoWeb Inspector: filter out weak references from retainers tree
loislo@chromium.org [Mon, 27 Aug 2012 14:15:13 +0000 (14:15 +0000)]
Web Inspector: filter out weak references from retainers tree
https://bugs.webkit.org/show_bug.cgi?id=95082

Reviewed by Yury Semikhatsky.

Weak references don't retain objects.

* inspector/front-end/HeapSnapshotGridNodes.js:

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

7 years ago[GStreamer][Qt] WebAudio support
philn@webkit.org [Mon, 27 Aug 2012 14:08:50 +0000 (14:08 +0000)]
[GStreamer][Qt] WebAudio support
https://bugs.webkit.org/show_bug.cgi?id=94806

Reviewed by Simon Hausmann.

Build fix after r126756 in which I forgot to add the new
AudioBusQt.cpp file.

* platform/audio/qt/AudioBusQt.cpp: Added.
(WebCore):
(WebCore::AudioBus::loadPlatformResource):

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

7 years ago[GStreamer][Qt] WebAudio support
philn@webkit.org [Mon, 27 Aug 2012 14:01:43 +0000 (14:01 +0000)]
[GStreamer][Qt] WebAudio support
https://bugs.webkit.org/show_bug.cgi?id=94806

Reviewed by Simon Hausmann.

Source/WebCore:

Build system changes to support WebAudio and its GStreamer
backend. A new AudioBusQt implementation is also needed to locate
and load local .wav files. Note: WebAudio is still disabled by default in
build-webkit. Use --web-audio to explicitely enable it at build time.

* DerivedSources.pri:
* Target.pri:
* WebCore.pri:
* WebCore.qrc:
* platform/audio/HRTFElevation.cpp:
(WebCore): Use concatenated HRTF impulse response for increased
performance, just like GTK, Mac and EFL ports.
* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp: Undef the
signals macro so gio.h can be properly included.
* platform/audio/qt/AudioBusQt.cpp: Added.
(WebCore):
(WebCore::AudioBus::loadPlatformResource):

Source/WebKit2:

New boolean webAudioEnabled WebSetting to be used at runtime to
toggle WebAudio support on or off.

* UIProcess/API/qt/qwebpreferences.cpp:
(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::webAudioEnabled):
(QWebPreferences::setWebAudioEnabled):
* UIProcess/API/qt/qwebpreferences_p.h:
* UIProcess/API/qt/qwebpreferences_p_p.h:

Tools:

* MiniBrowser/qt/qml/BrowserWindow.qml: Enable WebAudio support.

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

7 years agoREGRESSION(r126524): Heap-buffer-overflow in WebCore::StylePropertySet::copyPropertie...
kling@webkit.org [Mon, 27 Aug 2012 13:59:00 +0000 (13:59 +0000)]
REGRESSION(r126524): Heap-buffer-overflow in WebCore::StylePropertySet::copyPropertiesFrom
<http://webkit.org/b/95005>

Reviewed by Antti Koivisto.

Remove incorrect assertion that the StylePropertySet is empty before properties are copied
into it, as this is no guarantee in editing code.
This regressed when splitting the code into mutable/immutable paths. Covered by assertions
on existing tests.

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::copyPropertiesFrom):

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

7 years agoWeb Inspector: display cause for style recalculation and layout on Timeline
caseq@chromium.org [Mon, 27 Aug 2012 13:52:59 +0000 (13:52 +0000)]
Web Inspector: display cause for style recalculation and layout on Timeline
https://bugs.webkit.org/show_bug.cgi?id=95000

Reviewed by Pavel Feldman.

Source/WebCore:

Added instrumentation for didInvalidateLayout and didScheduleStyleRecalculation;
Dispaly stacks of the above records in Layout and Recalculate Style as "call site" stacks (need a better wording?);
Display synchronous Layout records in red, provide a warning that these may affect performance;

* English.lproj/localizedStrings.js: +"Note" and a warning test for sync layout;
* inspector/InspectorInstrumentation.cpp: Plumbing new instrumentation methods through to timeline;
(WebCore):
(WebCore::InspectorInstrumentation::didInvalidateLayoutImpl):
(WebCore::InspectorInstrumentation::didScheduleStyleRecalculationImpl):
* inspector/InspectorInstrumentation.h: ditto.
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didInvalidateLayout):
(WebCore):
* inspector/InspectorTimelineAgent.cpp: ditto.
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::didInvalidateLayout):
(WebCore):
(WebCore::InspectorTimelineAgent::didScheduleStyleRecalculation):
* inspector/InspectorTimelineAgent.h: ditto.
(InspectorTimelineAgent):
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update): Display records with warnings in their own style;
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles): Renamed, added new records;
(WebInspector.TimelinePresentationModel.recordStyle): Added new records;
(WebInspector.TimelinePresentationModel.prototype.reset):
(WebInspector.TimelinePresentationModel.prototype._innerAddRecord): Add support for new records, make 'em hidden;
(WebInspector.TimelinePresentationModel.Record): Add support for hidden records;
(WebInspector.TimelinePresentationModel.Record.prototype._generatePopupContentWithImagePreview):
(WebInspector.TimelinePresentationModel.Record.prototype._linkifyTopCallFrame): Linkify originator's top frame if no own stack is present;
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.warning): Reddish text for records with warnings;
* page/FrameView.cpp:
(WebCore::FrameView::scheduleRelayout): Added call to InspectorInstrumentation::didInvalidateLayout()
(WebCore::FrameView::scheduleRelayoutOfSubtree): Ditto.

LayoutTests:

- added new events (ScheduleStyleRecalculation and InvlidateLayout)
- rebaselined a test due to a new event;

* inspector/timeline/timeline-enum-stability-expected.txt:
* inspector/timeline/timeline-script-tag-1-expected.txt:

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

7 years ago[Qt] Unreviwed gardening. Skip test that fails on 32bit release.
kadam@inf.u-szeged.hu [Mon, 27 Aug 2012 13:22:43 +0000 (13:22 +0000)]
[Qt] Unreviwed gardening. Skip test that fails on 32bit release.
https://bugs.webkit.org/show_bug.cgi?id=95070

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-27

* platform/qt/Skipped: skip inspector/styles/media-queries.html after r126717.

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Mon, 27 Aug 2012 13:22:39 +0000 (13:22 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

7 years ago[Qt][WK2] Unreviewd gardening. Skip failing compositing tests.
kadam@inf.u-szeged.hu [Mon, 27 Aug 2012 12:55:37 +0000 (12:55 +0000)]
[Qt][WK2] Unreviewd gardening. Skip failing compositing tests.
https://bugs.webkit.org/show_bug.cgi?id=95076.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-27

* platform/qt-5.0-wk2/Skipped:

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

7 years ago[EFL] Wrong button height on CSS tests
commit-queue@webkit.org [Mon, 27 Aug 2012 12:39:38 +0000 (12:39 +0000)]
[EFL] Wrong button height on CSS tests
https://bugs.webkit.org/show_bug.cgi?id=85494

Source/WebCore:

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-08-27
Reviewed by Gyuyoung Kim.

The codes for overriding styles for buttons must be removed
for passing the layout test 'fast/css/button-height.html'.

The 'resetBorder' reset border style for a button (2px outset) to the initial value,
and it makes the size of <input type=button> different from the size of <button>.
('fast/css/button-height.html' checks whether they are same.)

The 'setWhiteSpace' is not needed because the white space already set to 'PRE'.

The 'setHeight' reset the 'height' style that should not be reset.
('fast/css/buttons-height.html' set the button's height style.)

Tests : fast/css/button-height.html
        fast/css/continuationCrash.html
        fast/css/margin-top-bottom-dynamic.html
        fast/css/rtl-ordering.html
        fast/dom/HTMLTextAreaElement/reset-textarea.html
        fast/forms/basic-buttons.html
        fast/forms/blankbuttons.html
        fast/forms/box-shadow-override.html
        fast/forms/button-positioned.html
        fast/forms/button-sizes.html
        fast/forms/button-style-color.html
        fast/forms/button-table-styles.html
        fast/forms/button-text-transform.html
        fast/forms/control-restrict-line-height.html
        fast/forms/file/file-input-direction.html
        fast/forms/file/file-input-disabled.html
        fast/forms/formmove3.html
        fast/forms/input-appearance-height.html
        fast/forms/input-button-sizes.html
        fast/forms/input-value.html
        fast/forms/targeted-frame-submission.html
        fast/html/details-replace-summary-child.html
        fast/html/details-replace-text.html
        fast/overflow/scroll-nested-positioned-layer-in-overflow.html
        fast/overflow/scrollRevealButton.html
        fast/replaced/replaced-breaking.html
        fast/replaced/width100percent-button.html
        fast/text/textIteratorNilRenderer.html

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::adjustButtonStyle): No longer override CSS properties for button styling.

LayoutTests:

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-08-27
Reviewed by Gyuyoung Kim.

This patch changes styles of buttons (not to reset border style).
Update baselines for tests include buttons.

* platform/efl/TestExpectations:
* platform/efl/fast/css/continuationCrash-expected.png:
* platform/efl/fast/css/continuationCrash-expected.txt:
* platform/efl/fast/css/margin-top-bottom-dynamic-expected.png:
* platform/efl/fast/css/margin-top-bottom-dynamic-expected.txt:
* platform/efl/fast/css/rtl-ordering-expected.png:
* platform/efl/fast/css/rtl-ordering-expected.txt:
* platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
* platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
* platform/efl/fast/forms/basic-buttons-expected.png:
* platform/efl/fast/forms/basic-buttons-expected.txt:
* platform/efl/fast/forms/blankbuttons-expected.png:
* platform/efl/fast/forms/blankbuttons-expected.txt:
* platform/efl/fast/forms/box-shadow-override-expected.png:
* platform/efl/fast/forms/box-shadow-override-expected.txt:
* platform/efl/fast/forms/button-positioned-expected.png:
* platform/efl/fast/forms/button-positioned-expected.txt:
* platform/efl/fast/forms/button-sizes-expected.png:
* platform/efl/fast/forms/button-sizes-expected.txt:
* platform/efl/fast/forms/button-style-color-expected.png:
* platform/efl/fast/forms/button-style-color-expected.txt:
* platform/efl/fast/forms/button-table-styles-expected.png:
* platform/efl/fast/forms/button-table-styles-expected.txt:
* platform/efl/fast/forms/button-text-transform-expected.png:
* platform/efl/fast/forms/button-text-transform-expected.txt:
* platform/efl/fast/forms/control-restrict-line-height-expected.png:
* platform/efl/fast/forms/control-restrict-line-height-expected.txt:
* platform/efl/fast/forms/file/file-input-direction-expected.png:
* platform/efl/fast/forms/file/file-input-direction-expected.txt:
* platform/efl/fast/forms/file/file-input-disabled-expected.png:
* platform/efl/fast/forms/file/file-input-disabled-expected.txt:
* platform/efl/fast/forms/formmove3-expected.png:
* platform/efl/fast/forms/formmove3-expected.txt:
* platform/efl/fast/forms/input-appearance-height-expected.png:
* platform/efl/fast/forms/input-appearance-height-expected.txt:
* platform/efl/fast/forms/input-button-sizes-expected.png:
* platform/efl/fast/forms/input-button-sizes-expected.txt:
* platform/efl/fast/forms/input-value-expected.png:
* platform/efl/fast/forms/input-value-expected.txt:
* platform/efl/fast/forms/targeted-frame-submission-expected.png:
* platform/efl/fast/forms/targeted-frame-submission-expected.txt:
* platform/efl/fast/html/details-replace-summary-child-expected.png:
* platform/efl/fast/html/details-replace-summary-child-expected.txt:
* platform/efl/fast/html/details-replace-text-expected.png:
* platform/efl/fast/html/details-replace-text-expected.txt:
* platform/efl/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.png:
* platform/efl/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
* platform/efl/fast/overflow/scrollRevealButton-expected.png:
* platform/efl/fast/overflow/scrollRevealButton-expected.txt:
* platform/efl/fast/replaced/replaced-breaking-expected.png:
* platform/efl/fast/replaced/replaced-breaking-expected.txt:
* platform/efl/fast/replaced/width100percent-button-expected.png:
* platform/efl/fast/replaced/width100percent-button-expected.txt:

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

7 years agoWeb Inspector: DOM tree search issue with quotation marks
apavlov@chromium.org [Mon, 27 Aug 2012 11:56:37 +0000 (11:56 +0000)]
Web Inspector: DOM tree search issue with quotation marks
https://bugs.webkit.org/show_bug.cgi?id=95065

Reviewed by Pavel Feldman.

Source/WebCore:

Introduced the exact match mode for attributes (query enclosed in double quotes) where only entire attribute values
are matched against the search query (with the double quotes trimmed).

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::performSearch):

LayoutTests:

* inspector/elements/elements-panel-search-expected.txt:
* inspector/elements/elements-panel-search.html:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Mon, 27 Aug 2012 11:49:30 +0000 (11:49 +0000)]
[Chromium] Unreviewed gardening.

More rebaselines to account for font aliasing differences.

* platform/chromium-mac-snowleopard/compositing/overflow/nested-scrolling-expected.png: Copied from LayoutTests/platform/chromium-mac/compositing/overflow/nested-scrolling-expected.png.
* platform/chromium-mac/compositing/overflow/nested-scrolling-expected.png:

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

7 years agoWeb Inspector: [WebGL] Implement serializing WebGL state and replaying it later
caseq@chromium.org [Mon, 27 Aug 2012 11:38:44 +0000 (11:38 +0000)]
Web Inspector: [WebGL] Implement serializing WebGL state and replaying it later
https://bugs.webkit.org/show_bug.cgi?id=94933

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-08-27
Reviewed by Pavel Feldman.

This will allow us to save the WebGL state at any arbitrary point in order to replay a trace log later on another canvas.
Main points of the change:
- Allow every Resource and Call instances be serialized to a Replayable, and resurrected back during a replay on another canvas.

- Before executing an original WebGL call and saving it to a trace log, first serialize all the Resources that will be involved in
  this call, if they are not yet serialized. The latter part is implemented with a Cache instance, checking that we convert a Resource
  to a Replayable only once: the first time it was used in the trace log being collected. We do not need to serialize the subsequent
  changes to this Resource's state (if any), since they will be saved in the trace log being collected and replayed automatically.

- Some information about the WebGL state may be requested in the runtime (e.g. with the gl.getParameter method). We use this wherever
  possible instead of collecting Calls in a Resource log. Otherwise, we have to collect WebGL calls (like gl.texImage2D) in order to
  replay them later.

- Later the Replayable objects hierarchy (the TraceLog) may be serialized further for cross-device transmission, for example.

* inspector/InjectedScriptWebGLModuleSource.js:
(.):

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

7 years agoWeb Inspector: HeapSnapshot: filter weak links in markQueriableHeapObjects and two...
loislo@chromium.org [Mon, 27 Aug 2012 11:32:46 +0000 (11:32 +0000)]
Web Inspector: HeapSnapshot: filter weak links in markQueriableHeapObjects and two other minor fixes.
https://bugs.webkit.org/show_bug.cgi?id=95068

Reviewed by Yury Semikhatsky.

- count shortcuts as normal links in distance;
shortcuts help us to show object properties without exposing internal scope object
- set initial distance to 1 instead of 0
the initial value for window was 0 and bfs counted the window object as not visited.

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._calculateObjectToWindowDistance):
(WebInspector.HeapSnapshot.prototype._bfs):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):

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

7 years ago[EFL] Mark inspector/styles/media-queries.html as flaky for WK1 as well
commit-queue@webkit.org [Mon, 27 Aug 2012 11:09:05 +0000 (11:09 +0000)]
[EFL] Mark inspector/styles/media-queries.html as flaky for WK1 as well
https://bugs.webkit.org/show_bug.cgi?id=95067

Unreviewed EFL gardening. Mark inspector/styles/media-queries.html as
flaky for WK1 as well.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-27

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Mon, 27 Aug 2012 11:02:35 +0000 (11:02 +0000)]
[Chromium] Unreviewed gardening.

Rebaseline to account for font antialiasing differences.

* platform/chromium-mac-snowleopard/compositing/overflow/remove-overflow-crash2-expected.png: Added.

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

7 years agoUnreviewed, rolling out r126694 and r126731.
commit-queue@webkit.org [Mon, 27 Aug 2012 10:58:50 +0000 (10:58 +0000)]
Unreviewed, rolling out r126694 and r126731.
http://trac.webkit.org/changeset/126694
http://trac.webkit.org/changeset/126731
https://bugs.webkit.org/show_bug.cgi?id=95069

Causes all pages to be rendered as a completely black page in
Qt WebKit2 (Requested by carewolf on #webkit).

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

* platform/graphics/GraphicsContext3D.h:
* platform/graphics/texmap/TextureMapperGL.cpp:
(SharedGLData):
(WebCore::TextureMapperGLData::SharedGLData::getCurrentGLContext):
(WebCore::TextureMapperGLData::SharedGLData::currentSharedGLData):
(WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
(WebCore::TextureMapperGLData::sharedGLData):
(WebCore::TextureMapperGLData::TextureMapperGLData):
(TextureMapperGLData):
(WebCore::scissorClip):
(WebCore::TextureMapperGL::ClipStack::apply):
(WebCore::TextureMapperGLData::initializeStencil):
(WebCore::TextureMapperGL::TextureMapperGL):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::TextureMapperGL::endPainting):
(WebCore::TextureMapperGL::drawQuad):
(WebCore::TextureMapperGL::drawBorder):
(WebCore):
(WebCore::TextureMapperGL::drawTextureRectangleARB):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::viewportMatrix):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
(WebCore::BitmapTextureGL::didReset):
(WebCore::BitmapTextureGL::updateContents):
(WebCore::TextureMapperGL::drawFiltered):
(WebCore::BitmapTextureGL::initializeStencil):
(WebCore::BitmapTextureGL::clearIfNeeded):
(WebCore::BitmapTextureGL::createFboIfNeeded):
(WebCore::BitmapTextureGL::bind):
(WebCore::BitmapTextureGL::~BitmapTextureGL):
(WebCore::TextureMapperGL::bindDefaultSurface):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::beginClip):
(WebCore::TextureMapperGL::endClip):
(WebCore::TextureMapperGL::createTexture):
* platform/graphics/texmap/TextureMapperGL.h:
(TextureMapperGL):
(ClipStack):
(WebCore::BitmapTextureGL::textureTarget):
(BitmapTextureGL):
(WebCore::BitmapTextureGL::BitmapTextureGL):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore):
(WebCore::TextureMapperShaderManager::getShaderProgram):
(WebCore::TextureMapperShaderProgram::TextureMapperShaderProgram):
(WebCore::TextureMapperShaderProgram::initializeProgram):
(WebCore::TextureMapperShaderProgram::getUniformLocation):
(WebCore::TextureMapperShaderProgram::~TextureMapperShaderProgram):
(WebCore::TextureMapperShaderProgramSimple::TextureMapperShaderProgramSimple):
(WebCore::TextureMapperShaderProgramSolidColor::TextureMapperShaderProgramSolidColor):
(WebCore::TextureMapperShaderProgramRectSimple::TextureMapperShaderProgramRectSimple):
(WebCore::TextureMapperShaderProgramOpacityAndMask::TextureMapperShaderProgramOpacityAndMask):
(WebCore::TextureMapperShaderProgramRectOpacityAndMask::TextureMapperShaderProgramRectOpacityAndMask):
(WebCore::TextureMapperShaderProgramAntialiasingNoMask::TextureMapperShaderProgramAntialiasingNoMask):
(WebCore::TextureMapperShaderManager::TextureMapperShaderManager):
(WebCore::StandardFilterProgram::~StandardFilterProgram):
(WebCore::StandardFilterProgram::StandardFilterProgram):
(WebCore::StandardFilterProgram::create):
(WebCore::StandardFilterProgram::prepare):
(WebCore::TextureMapperShaderManager::getShaderForFilter):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(WebCore::TextureMapperShaderProgram::id):
(WebCore::TextureMapperShaderProgram::vertexAttrib):
(TextureMapperShaderProgram):
(WebCore::TextureMapperShaderProgram::matrixLocation):
(WebCore::TextureMapperShaderProgram::flipLocation):
(WebCore::TextureMapperShaderProgram::textureSizeLocation):
(WebCore::TextureMapperShaderProgram::sourceTextureLocation):
(WebCore::TextureMapperShaderProgram::maskTextureLocation):
(WebCore::TextureMapperShaderProgram::opacityLocation):
(WebCore::TextureMapperShaderProgram::isValidUniformLocation):
(StandardFilterProgram):
(WebCore::StandardFilterProgram::vertexAttrib):
(WebCore::StandardFilterProgram::texCoordAttrib):
(WebCore::StandardFilterProgram::textureUniform):
(WebCore::TextureMapperShaderProgramSimple::create):
(TextureMapperShaderProgramSimple):
(WebCore::TextureMapperShaderProgramRectSimple::create):
(WebCore::TextureMapperShaderProgramOpacityAndMask::create):
(WebCore::TextureMapperShaderProgramRectOpacityAndMask::create):
(WebCore::TextureMapperShaderProgramSolidColor::create):
(WebCore::TextureMapperShaderProgramSolidColor::colorLocation):
(TextureMapperShaderProgramSolidColor):
(WebCore::TextureMapperShaderProgramAntialiasingNoMask::create):
(WebCore::TextureMapperShaderProgramAntialiasingNoMask::expandedQuadVerticesInTextureCoordinatesLocation):
(WebCore::TextureMapperShaderProgramAntialiasingNoMask::expandedQuadEdgesInScreenSpaceLocation):
(TextureMapperShaderProgramAntialiasingNoMask):

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Mon, 27 Aug 2012 10:50:26 +0000 (10:50 +0000)]
[Chromium] Unreviewed gardening.

Update expectations for inspector/styles/media-queries.html which
started failing on Linux (dbg) at r126717 and flaky on Linux, Win
at or right after that revision.

* platform/chromium/TestExpectations:

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

7 years ago[Chromium] Unreviewed gardening
dominicc@chromium.org [Mon, 27 Aug 2012 10:33:06 +0000 (10:33 +0000)]
[Chromium] Unreviewed gardening

Fix test expectation lint errors.

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

7 years ago[Qt][WK2] REGRESSION(r126067): It made qmltests::DoubleTapToZoom::test_basic() fail
hausmann@webkit.org [Mon, 27 Aug 2012 09:58:31 +0000 (09:58 +0000)]
[Qt][WK2] REGRESSION(r126067): It made qmltests::DoubleTapToZoom::test_basic() fail
https://bugs.webkit.org/show_bug.cgi?id=94949

Reviewed by Kenneth Rohde Christiansen.

Use JSON to serialize the client rect for the async evaluateJavaScript call.

* UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:

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

7 years ago[Qt] Fix failing QML2 auto tests due to conflicting signal declaration
hausmann@webkit.org [Mon, 27 Aug 2012 09:58:07 +0000 (09:58 +0000)]
[Qt] Fix failing QML2 auto tests due to conflicting signal declaration
https://bugs.webkit.org/show_bug.cgi?id=95059

Reviewed by Kenneth Rohde Christiansen.

Don't define a scaleChanged signal when QQuickItem already declares one to notify about changes
in the scale property. As it turns out there is not need for declaring a signal in the test case
at all.

* UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
* UIProcess/API/qt/tests/qmltests/WebView/tst_fitToView.qml:

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

7 years agoRegression(r126721): bindings-tests results need to be updated
commit-queue@webkit.org [Mon, 27 Aug 2012 09:45:36 +0000 (09:45 +0000)]
Regression(r126721): bindings-tests results need to be updated
https://bugs.webkit.org/show_bug.cgi?id=95060

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-27
Reviewed by Kentaro Hara.

Regenerate bindings-tests results after r126721. This change
removed the NULL checks from visitChildren functions.

* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::visitChildren):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterface::visitChildren):

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

7 years agoWeb Inspector: Incorrect property override computation when !important is involved
apavlov@chromium.org [Mon, 27 Aug 2012 09:36:11 +0000 (09:36 +0000)]
Web Inspector: Incorrect property override computation when !important is involved
https://bugs.webkit.org/show_bug.cgi?id=94923

Reviewed by Vsevolod Vlasov.

Source/WebCore:

The cascade of !important properties was totally wrong if a property was listed as !important first and as non-!important later on.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
(WebInspector.StylesSidebarPane.prototype._markUsedProperties):

LayoutTests:

* inspector/elements/elements-panel-styles-expected.txt:
* inspector/elements/resources/elements-panel-styles.css:
(.foo, .foo::before):

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

7 years ago[Tests] Using ref image instead ref HTML for fast/forms/time-multiple-fields/time...
yosin@chromium.org [Mon, 27 Aug 2012 09:26:15 +0000 (09:26 +0000)]
[Tests] Using ref image instead ref HTML for fast/forms/time-multiple-fields/time-multiple-fields-appearance-{basic,pseudo-element}.html
https://bugs.webkit.org/show_bug.cgi?id=95055

Reviewed by Kent Tamura.

This patch changes test expectations of time-multiple-fields-appearance-basic.html
and time-multiple-fields-appearance-pseudo-elements.html to images
rather than HTML for ease of maintenance. There were unexpected image
differences between actual images and HTML reference images. It seems
rebaseline is easier than updating JavaScript code and CSS style sheet
of reference HTML.

Note: This patch contains Chromium-Linux images only. We need to do
rebaseline for Chromium-Mac and Chromium-Win later.

* fast/forms/time-multiple-fields/resources/time-multiple-fields-appearance.css: Removed.
* fast/forms/time-multiple-fields/resources/time-multiple-fields-appearance.js: Removed.
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic-expected.html: Removed.
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.html: Removed.
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements.html: Changed not to use external style sheet.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic-expected.png: Added.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic-expected.txt: Added.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png: Added.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.txt: Added.
* platform/chromium/TestExpectations: Updates entries for rebaseline

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

7 years agoRename RegisterProtocolHandler API to NavigatorContentUtils
commit-queue@webkit.org [Mon, 27 Aug 2012 09:19:27 +0000 (09:19 +0000)]
Rename RegisterProtocolHandler API to NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=94920

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-27
Reviewed by Adam Barth.

.:

Modified configuration files so that they contain renamed NavigatorContentUtils-prefixed files.

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

Source/JavaScriptCore:

ENABLE_REGISTER_PROTOCOL_HANDLER is renamed to ENABLE_NAVIGATOR_CONTENT_UTILS.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
Module 'protocolhandler' is renamed to 'navigatorcontentutils'.

No new tests as there is no new functionality.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* GNUmakefile.features.am:
* GNUmakefile.list.am:
* Modules/navigatorcontentutils/NavigatorContentUtils.cpp: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.cpp.
(WebCore):
(WebCore::initProtocolHandlerWhitelist):
(WebCore::verifyCustomHandlerURL):
(WebCore::isProtocolWhitelisted):
(WebCore::verifyProtocolHandlerScheme):
(WebCore::NavigatorContentUtils::from):
(WebCore::NavigatorContentUtils::~NavigatorContentUtils):
(WebCore::NavigatorContentUtils::create):
(WebCore::NavigatorContentUtils::registerProtocolHandler):
(WebCore::customHandlersStateString):
(WebCore::NavigatorContentUtils::isProtocolHandlerRegistered):
(WebCore::NavigatorContentUtils::unregisterProtocolHandler):
(WebCore::NavigatorContentUtils::supplementName):
(WebCore::provideNavigatorContentUtilsTo):
* Modules/navigatorcontentutils/NavigatorContentUtils.h: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.h.
(WebCore):
(NavigatorContentUtils):
(WebCore::NavigatorContentUtils::NavigatorContentUtils):
(WebCore::NavigatorContentUtils::client):
* Modules/navigatorcontentutils/NavigatorContentUtils.idl: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.idl.
* Modules/navigatorcontentutils/NavigatorContentUtilsClient.h: Renamed from Source/WebCore/Modules/protocolhandler/RegisterProtocolHandlerClient.h.
(WebCore):
(NavigatorContentUtilsClient):
(WebCore::NavigatorContentUtilsClient::~NavigatorContentUtilsClient):
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.pri:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcproj/WebCoreCommon.vsprops:
* WebCore.vcproj/copyForwardingHeaders.cmd:

Source/WebKit:

Modified PlatformEfl.cmake so that it includes the renamed files.

* PlatformEfl.cmake:

Source/WebKit/blackberry:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.

* WebCoreSupport/AboutDataEnableFeatures.in:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore):
(WebCore::ChromeClientBlackBerry::registerProtocolHandler):
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):

Source/WebKit/chromium:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
RegisterProtocolHandlerClientImpl is renamed to NavigatorContentUtilsClientImpl.

* features.gypi:
* src/ChromeClientImpl.cpp:
(WebKit):
(WebKit::NavigatorContentUtilsClientImpl::create):
(WebKit::NavigatorContentUtilsClientImpl::NavigatorContentUtilsClientImpl):
(WebKit::NavigatorContentUtilsClientImpl::registerProtocolHandler):
* src/ChromeClientImpl.h:
(NavigatorContentUtilsClientImpl):
(WebKit::NavigatorContentUtilsClientImpl::~NavigatorContentUtilsClientImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
* src/WebViewImpl.h:

Source/WebKit/efl:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
RegisterProtocolHandlerClientEfl is renamed to NavigatorContentUtilsClientEfl.

* WebCoreSupport/NavigatorContentUtilsClientEfl.cpp: Renamed from Source/WebKit/efl/WebCoreSupport/RegisterProtocolHandlerClientEfl.cpp.
(WebCore):
(WebCore::customHandlerDataCreate):
(WebCore::customHandlerDataDelete):
(WebCore::NavigatorContentUtilsClientEfl::create):
(WebCore::NavigatorContentUtilsClientEfl::NavigatorContentUtilsClientEfl):
(WebCore::NavigatorContentUtilsClientEfl::registerProtocolHandler):
(WebCore::NavigatorContentUtilsClientEfl::isProtocolHandlerRegistered):
(WebCore::NavigatorContentUtilsClientEfl::unregisterProtocolHandler):
* WebCoreSupport/NavigatorContentUtilsClientEfl.h: Renamed from Source/WebKit/efl/WebCoreSupport/RegisterProtocolHandlerClientEfl.h.
(NavigatorContentUtilsClientEfl):
(WebCore::NavigatorContentUtilsClientEfl::~NavigatorContentUtilsClientEfl):
* ewk/ewk_custom_handler.cpp:
* ewk/ewk_custom_handler_private.h:
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

Source/WebKit/gtk:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
RegisterProtocolHandlerClientGtk is renamed to NavigatorContentUtilsClientGtk.

* GNUmakefile.am:
* WebCoreSupport/NavigatorContentUtilsClientGtk.cpp: Renamed from Source/WebKit/gtk/WebCoreSupport/RegisterProtocolHandlerClientGtk.cpp.
(WebKit):
(WebKit::NavigatorContentUtilsClient::create):
(WebKit::NavigatorContentUtilsClient::NavigatorContentUtilsClient):
(WebKit::NavigatorContentUtilsClient::registerProtocolHandler):
* WebCoreSupport/NavigatorContentUtilsClientGtk.h: Renamed from Source/WebKit/gtk/WebCoreSupport/RegisterProtocolHandlerClientGtk.h.
(WebKit):
(NavigatorContentUtilsClient):
(WebKit::NavigatorContentUtilsClient::~NavigatorContentUtilsClient):
* webkit/webkitwebview.cpp:
(webkit_web_view_init):
* webkit/webkitwebviewprivate.h:

Source/WebKit/mac:

ENABLE_REGISTER_PROTOCOL_HANDLER is renamed to ENABLE_NAVIGATOR_CONTENT_UTILS.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.

* Configurations/FeatureDefines.xcconfig:
* WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebRegisterProtocolHandlerClient.h.
(WebKit):
(WebNavigatorContentUtilsClient):
(WebKit::WebNavigatorContentUtilsClient::~WebNavigatorContentUtilsClient):
(WebKit::WebNavigatorContentUtilsClient::isProtocolHandlerRegistered):
(WebKit::WebNavigatorContentUtilsClient::unregisterProtocolHandler):

Tools:

Renamed 'register-protocol-handler' feature to 'navigator-content-utils'.

* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Mon, 27 Aug 2012 08:10:47 +0000 (08:10 +0000)]
[Chromium] Unreviewed gardening.

Add missing baselines and rebaseline some minor font rendering
differences.

* platform/chromium-linux/compositing/overflow/nested-scrolling-expected.png:
* platform/chromium-linux/compositing/overflow/nested-scrolling-expected.txt:
* platform/chromium-mac/compositing/overflow/nested-scrolling-expected.png: Added.
* platform/chromium-mac/compositing/overflow/nested-scrolling-expected.txt: Added.
* platform/chromium-mac/compositing/overflow/remove-overflow-crash2-expected.png: Added.
* platform/chromium-mac/compositing/overflow/remove-overflow-crash2-expected.txt: Added.
* platform/chromium-win/compositing/overflow/nested-scrolling-expected.png: Added.
* platform/chromium-win/compositing/overflow/nested-scrolling-expected.txt: Added.
* platform/chromium-win/compositing/overflow/remove-overflow-crash2-expected.png: Added.
* platform/chromium-win/compositing/overflow/remove-overflow-crash2-expected.txt: Added.
* platform/chromium/TestExpectations:
* platform/chromium/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor-expected.png: Renamed from LayoutTests/platform/chromium-linux/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor-expected.png.
* platform/chromium/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor-expected.txt: Renamed from LayoutTests/platform/chromium-linux/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor-expected.txt.
* platform/chromium/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor-expected.png: Renamed from LayoutTests/platform/chromium-linux/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor-expected.png.
* platform/chromium/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor-expected.txt: Renamed from LayoutTests/platform/chromium-linux/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor-expected.txt.

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

7 years ago[Qt] New test introduced in r126611 fails: fast/css/image-set-setting.html.
kkristof@inf.u-szeged.hu [Mon, 27 Aug 2012 07:59:07 +0000 (07:59 +0000)]
[Qt] New test introduced in r126611 fails: fast/css/image-set-setting.html.
https://bugs.webkit.org/show_bug.cgi?id=95054

Unreviewed gardeing.

Patch by Balazs Ankes <bank@inf.u-szeged.hu> on 2012-08-27

* platform/qt/Skipped:

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

7 years ago[EFL] Skip several compositing/overflow test cases
commit-queue@webkit.org [Mon, 27 Aug 2012 07:41:45 +0000 (07:41 +0000)]
[EFL] Skip several compositing/overflow test cases
https://bugs.webkit.org/show_bug.cgi?id=95047

Unreviewed EFL gardening. Skip several compositing/overflow
test cases which are failing due to incomplete support
for accelerated compositing or missing support for
layerTreeAsText().

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-27

* platform/efl/TestExpectations:

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

7 years ago[Qt] REGRESSION(r126694): It broke the debug build
hausmann@webkit.org [Mon, 27 Aug 2012 07:31:57 +0000 (07:31 +0000)]
[Qt] REGRESSION(r126694): It broke the debug build
https://bugs.webkit.org/show_bug.cgi?id=95037

Unreviewed trivial build fix for debug builds.

Don't pass WTFStrings through printf, use .ascii().data().

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

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Mon, 27 Aug 2012 07:27:10 +0000 (07:27 +0000)]
[Chromium] Unreviewed gardening.

Update expectations for
fast/writing-mode/broken-ideographic-font.html after r126683.

* platform/chromium/TestExpectations:

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

7 years ago[Chromium-Android]Move webkit_unit_tests_apk and TestWebKitAPI_apk into a
jnd@chromium.org [Mon, 27 Aug 2012 07:04:24 +0000 (07:04 +0000)]
[Chromium-Android]Move webkit_unit_tests_apk and TestWebKitAPI_apk into a
condition block:['OS=="android" and gtest_target_type == "shared_library"'].
https://bugs.webkit.org/show_bug.cgi?id=95049

Reviewed by Adam Barth.

Move webkit_unit_tests_apk and TestWebKitAPI_apk into block of gtest_target_type == "shared_library"

* All.gyp:

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

7 years ago[Forms] Focus style of millisecond field in multiple fields time input UI is differen...
yosin@chromium.org [Mon, 27 Aug 2012 06:52:43 +0000 (06:52 +0000)]
[Forms] Focus style of millisecond field in multiple fields time input UI is different from other fields
https://bugs.webkit.org/show_bug.cgi?id=95046

Reviewed by Kent Tamura.

Source/WebCore:

This patch fixes typo for input::-webkit-datetime-edit-millisecond-field:focus
selector to make all fields of multiple fields time input UI have same
style on focus.

Test: fast/forms/time-multiple-fields/time-multiple-fields-focus-style.html

* css/html.css: Fix typo for selector input::-webkit-datetime-edit-millisecond-field:focus

LayoutTests:

This patch adds a new test for checking focus style of all fields in
multiple fields time input UI.

We check appearance of focus field in fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic.html

* fast/forms/time-multiple-fields/time-multiple-fields-focus-style-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-focus-style.html: Added.

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

7 years agoInitialized m_hasNonEmptyList to fix a valgrind uninitialized read
thakis@chromium.org [Mon, 27 Aug 2012 06:50:30 +0000 (06:50 +0000)]
Initialized m_hasNonEmptyList to fix a valgrind uninitialized read
https://bugs.webkit.org/show_bug.cgi?id=95045

Reviewed by Kent Tamura.

Conditional jump or move depends on uninitialised value(s)
WebCore::HTMLInputElement::dataList() const (third_party/WebKit/Source/WebCore/html/HTMLInputElement.cpp:1523)
WebCore::RangeInputType::updateTickMarkValues() (third_party/WebKit/Source/WebCore/html/RangeInputType.cpp:351)
WebCore::RangeInputType::findClosestTickMarkValue(WebCore::Decimal const&) (third_party/WebKit/Source/WebCore/html/RangeInputType.cpp:370)
WebCore::HTMLInputElement::findClosestTickMarkValue(WebCore::Decimal const&) (third_party/WebKit/Source/WebCore/html/HTMLInputElement.cpp:324)
WebCore::SliderThumbElement::setPositionFromPoint(WebCore::FractionalLayoutPoint const&) (third_party/WebKit/Source/WebCore/html/shadow/SliderThumbElement.cpp:296)
WebCore::SliderThumbElement::dragFrom(WebCore::FractionalLayoutPoint const&) (third_party/WebKit/Source/WebCore/html/shadow/SliderThumbElement.cpp:246)
WebCore::RangeInputType::handleMouseDownEvent(WebCore::MouseEvent*) (third_party/WebKit/Source/WebCore/html/RangeInputType.cpp:159)
WebCore::HTMLInputElement::defaultEventHandler(WebCore::Event*) (third_party/WebKit/Source/WebCore/html/HTMLInputElement.cpp:1163)
WebCore::MediaControlTimelineElement::defaultEventHandler(WebCore::Event*) (third_party/WebKit/Source/WebCore/html/shadow/MediaControlElements.cpp:916)
WebCore::EventDispatcher::dispatchEventPostProcess(WTF::PassRefPtr<WebCore::Event>, void*) (third_party/WebKit/Source/WebCore/dom/EventDispatcher.cpp:357)
WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) (third_party/WebKit/Source/WebCore/dom/EventDispatcher.cpp:263)
WebCore::MouseEventDispatchMediator::dispatchEvent(WebCore::EventDispatcher*) const (third_party/WebKit/Source/WebCore/dom/MouseEvent.cpp:238)
WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::EventDispatchMediator>) (third_party/WebKit/Source/WebCore/dom/EventDispatcher.cpp:129)
...
The report came from the `media/audio-delete-while-slider-thumb-clicked.html'--pixel-test` test.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::dataList):

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

7 years agoSkipping http/tests/security/local-user-CSS-from-remote.html to green mac WK2 bots.
commit-queue@webkit.org [Mon, 27 Aug 2012 06:22:48 +0000 (06:22 +0000)]
Skipping http/tests/security/local-user-CSS-from-remote.html to green mac WK2 bots.
https://bugs.webkit.org/show_bug.cgi?id=95043.

Patch by Mark Lam <mark.lam@apple.com> on 2012-08-26
Reviewed by Kentaro Hara.

* platform/mac-wk2/Skipped:

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

7 years agoSkipping fast/forms/validation-message-user-modify.html to green mac WK2 bots.
commit-queue@webkit.org [Mon, 27 Aug 2012 05:55:55 +0000 (05:55 +0000)]
Skipping fast/forms/validation-message-user-modify.html to green mac WK2 bots.
https://bugs.webkit.org/show_bug.cgi?id=95042.

Patch by Mark Lam <mark.lam@apple.com> on 2012-08-26
Reviewed by Kentaro Hara.

* platform/mac-wk2/Skipped:

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

7 years agoUnreviewed, fix for builds without VALUE_PROFILING. I had forgotten that shouldEmitPr...
fpizlo@apple.com [Mon, 27 Aug 2012 04:23:14 +0000 (04:23 +0000)]
Unreviewed, fix for builds without VALUE_PROFILING. I had forgotten that shouldEmitProfiling()
is designed to return true if DFG_JIT is disabled. I should be using canBeOptimized() instead.

* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):

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

7 years agoDon't allocate space for arguments and call frame if arguments aren't captured
ggaren@apple.com [Mon, 27 Aug 2012 04:12:11 +0000 (04:12 +0000)]
Don't allocate space for arguments and call frame if arguments aren't captured
https://bugs.webkit.org/show_bug.cgi?id=95024

Reviewed by Phil Pizlo.

27% on v8-real-earley.

* runtime/JSActivation.h:
(JSC::JSActivation::registerOffset): The offset is zero if we're skipping
the arguments and call frame because "offset" means space reserved for
those things.

(JSC::JSActivation::tearOff): Don't copy the scope chain and callee. We
don't need them for anything, and we're no longer guaranteed to have
space for them.

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

7 years agoRemoved the NULL checks from visitChildren functions
ggaren@apple.com [Mon, 27 Aug 2012 03:57:02 +0000 (03:57 +0000)]
Removed the NULL checks from visitChildren functions
https://bugs.webkit.org/show_bug.cgi?id=95021

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

As of http://trac.webkit.org/changeset/126624, all values are NULL-checked
during GC, so explicit NULL checks aren't needed anymore.

Source/WebCore:

As of http://trac.webkit.org/changeset/126624, all values are NULL-checked
during GC, so explicit NULL checks aren't needed anymore.

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

7 years agoRemoved a JSC-specific hack from the web inspector
ggaren@apple.com [Mon, 27 Aug 2012 03:48:14 +0000 (03:48 +0000)]
Removed a JSC-specific hack from the web inspector
https://bugs.webkit.org/show_bug.cgi?id=95033

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Added support for what the web inspector really wanted instead.

* runtime/JSActivation.cpp:
(JSC::JSActivation::symbolTableGet):
(JSC::JSActivation::symbolTablePut): Added some explanation for these
checks, which were non-obvious to me.

(JSC::JSActivation::getOwnPropertySlot): It's impossible to access the
arguments property of an activation after it's been torn off, since the
only way to tear off an activation is to instantiate a new function,
which has its own arguments property in scope. However, the inspector
get special access to activations, and may try to perform this access,
so we need a special guard to maintain coherence and avoid crashing in
case the activation optimized out the arguments property.

* runtime/JSActivation.cpp:
(JSC::JSActivation::symbolTableGet):
(JSC::JSActivation::symbolTablePut):
(JSC::JSActivation::getOwnPropertyNames):
(JSC::JSActivation::getOwnPropertyDescriptor): Provide getOwnPropertyNames
and getOwnPropertyDescriptor implementations, to meet the web inspector's
needs. (User code can never call these.)

Source/WebCore:

The hack was never reviewed. If it had been, I suspect it would have
gotten an r- for making weird assumptions about the engine's implimentation.

* inspector/InjectedScriptSource.js: It's not sound to assume that an
object has no properties except for "arguments" if and only if it's an
activation: non-activations can have a property named "arguments", and
activations can optimize out "arguments".

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

7 years ago[chromium] Fix a bug where CCThreadProxy::canDraw() gets stuck at false on tab switch
commit-queue@webkit.org [Mon, 27 Aug 2012 02:49:36 +0000 (02:49 +0000)]
[chromium] Fix a bug where CCThreadProxy::canDraw() gets stuck at false on tab switch
https://bugs.webkit.org/show_bug.cgi?id=94903

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-08-26
Reviewed by James Robinson.

Suppose the impl thread deletes all textures via
releaseContentsTextures().  The impl thread will not be able to draw
again until resetContentsTexturesPurged() is called in
scheduledActionCommit().  When deleting the textures, the function
releaseContentsTextures() calls setNeedsCommitOnImplThread() to ensure
that a commit will come along to allow drawing again.  If this commit
is aborted, then the page will not draw until a commit is scheduled,
which may be never.

Make beginFrameAborted() call setNeedsCommit(), so that the requested
commit will eventually occur.

No new tests, update to CCSchedulerStateMachineTest's
TestGoesInvisibleBeforeBeginFrameCompletes to require new
functionality (new test fails with old behavior).

* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
(WebCore::CCSchedulerStateMachine::beginFrameAborted):

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

7 years agoFinally inlining should correctly track the catch context
fpizlo@apple.com [Mon, 27 Aug 2012 00:49:25 +0000 (00:49 +0000)]
Finally inlining should correctly track the catch context
https://bugs.webkit.org/show_bug.cgi?id=94986
<rdar://problem/11753784>

Reviewed by Sam Weinig.

Source/JavaScriptCore:

This fixes two behaviors:

1) Throwing from a finally block. Previously, we would seem to reenter the finally
   block - though only once.

2) Executing a finally block from some nested context, for example due to a
   'continue', 'break', or 'return' in the try. This would execute the finally
   block in the context of of the try block, which could lead to either scope depth
   mismatches or reexecutions of the finally block on throw, similarly to (1) but
   for different reasons.

* bytecompiler/BytecodeGenerator.cpp:
(JSC):
(JSC::BytecodeGenerator::pushFinallyContext):
(JSC::BytecodeGenerator::emitComplexJumpScopes):
(JSC::BytecodeGenerator::pushTry):
(JSC::BytecodeGenerator::popTryAndEmitCatch):
* bytecompiler/BytecodeGenerator.h:
(FinallyContext):
(TryData):
(JSC):
(TryContext):
(TryRange):
(BytecodeGenerator):
* bytecompiler/NodesCodegen.cpp:
(JSC::TryNode::emitBytecode):

LayoutTests:

* fast/js/jsc-test-list:
* fast/js/script-tests/throw-from-finally.js: Added.
* fast/js/throw-from-finally.html: Added.
* fast/js/throw-from-finally-expected.txt: Added.

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

7 years agoRemove parent pointer from StyleSheetContents and StyleRuleImport
antti@apple.com [Sun, 26 Aug 2012 23:48:39 +0000 (23:48 +0000)]
Remove parent pointer from StyleSheetContents and StyleRuleImport
https://bugs.webkit.org/show_bug.cgi?id=94926

Reviewed by Andreas Kling.

To be able to cache and share @imported stylesheets in the future there must not be any parent
pointers in the stylesheet tree.

Parent pointers are used during loading to invoke load completion callbacks and for
accessing document context information (like the security origin). They are not used after
the sheet load is complete. Instead of keeping the parent pointers around indefinitely as part of the
stylesheet data structure we just keep a pointer to the root CSSStyleSheet for the duration of the load.

This patch doesn't enable any new caching or generally change the behavior.

* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::insertRule):
(WebCore::CSSStyleSheet::rootStyleSheet):
(WebCore):
(WebCore::CSSStyleSheet::ownerDocument):
* css/CSSStyleSheet.h:
(CSSStyleSheet):
* css/StyleRuleImport.cpp:
(WebCore::StyleRuleImport::LoadContext::LoadContext):

    Simplify by making StyleRuleImport CachedStyleSheetClient directly. LoadContext contains
    fields that can be thrown away after load completes.

(WebCore):
(WebCore::StyleRuleImport::StyleRuleImport):
(WebCore::StyleRuleImport::~StyleRuleImport):
(WebCore::StyleRuleImport::setCSSStyleSheet):
(WebCore::StyleRuleImport::isLoading):
(WebCore::StyleRuleImport::hadLoadError):
(WebCore::StyleRuleImport::requestStyleSheet):
* css/StyleRuleImport.h:
(StyleRuleImport):
(LoadContext):
* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::StyleSheetContents):

    Remove now unnecessary constructor.

(WebCore::StyleSheetContents::isCacheable):
(WebCore::StyleSheetContents::parserAppendRule):
(WebCore::StyleSheetContents::clearRules):
(WebCore::StyleSheetContents::wrapperInsertRule):
(WebCore::StyleSheetContents::wrapperDeleteRule):
(WebCore::StyleSheetContents::requestImportedStyleSheets):
(WebCore):
(WebCore::StyleSheetContents::parseAuthorStyleSheet):
(WebCore::StyleSheetContents::parseStringAtLine):
(WebCore::StyleSheetContents::checkImportedSheetLoadCompleted):
(WebCore::StyleSheetContents::checkLoadCompleted):
(WebCore::StyleSheetContents::getAncestors):
(WebCore::StyleSheetContents::hasImportCycle):

    Move the cycle checking to the root stylesheet so we don't need to pass the entire chain around.
    The extra work here is unlikely to cause problems, massive import trees don't really occur in
    practice.

* css/StyleSheetContents.h:
(WebCore::StyleSheetContents::create):
(StyleSheetContents):
* dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::parseStyleSheet):
* dom/StyleElement.cpp:
(WebCore::StyleElement::createSheet):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::setCSSStyleSheet):

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

7 years agoAvoid pointless string/number round-trip in applyRelativeFontStyleChange().
kling@webkit.org [Sun, 26 Aug 2012 22:38:31 +0000 (22:38 +0000)]
Avoid pointless string/number round-trip in applyRelativeFontStyleChange().
<http://webkit.org/b/95031>

Reviewed by Dan Bernstein.

Create a CSS_PX primitive value directly instead of passing String::number(foo) + "px" to the CSS parser.

* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):

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

7 years agoArray type checks and storage accesses should be uniformly represented and available...
fpizlo@apple.com [Sun, 26 Aug 2012 22:35:26 +0000 (22:35 +0000)]
Array type checks and storage accesses should be uniformly represented and available to CSE
https://bugs.webkit.org/show_bug.cgi?id=95013

Reviewed by Oliver Hunt.

This uniformly breaks up all array accesses into up to three parts:

1) The type check, using a newly introduced CheckArray node, in addition to possibly
   a CheckStructure node. We were already inserting the CheckStructure prior to this
   patch. The CheckArray node will be automatically eliminated if the thing it was
   checking for had already been checked for, either intentionally (a CheckStructure
   inserted based on the array profile of this access) or accidentally (some checks,
   typically a CheckStructure, inserted for some unrelated operations). The
   CheckArray node may not be inserted if the array type is non-specific (Generic or
   ForceExit).

2) The storage load using GetIndexedPropertyStorage. Previously, this only worked for
   GetByVal. Now it works for all array accesses. The storage load may not be
   inserted if the mode of array access does not permit CSE of storage loads (like
   non-specific modes or Arguments).

3) The access itself: one of GetByVal, PutByVal, PutByValAlias, ArrayPush, ArrayPop,
   GetArrayLength, StringCharAt, or StringCharCodeAt.

This means that the type check can be subjected to CSE even if the CFA isn't smart
enough to reason about it (yet!). It also means that the storage load can always be
subjected to CSE; previously CSE on storage load only worked for array loads and not
other forms of access. Finally, it removes the bizarre behavior that
GetIndexedPropertyStorage previously had: previously, it was responsible for the type
check in some cases, but not others; this made reasoning about the CFA really
confusing.

This change also disables late refinement of array mode, since I decided that
supporting that feature is both confusing and likely unprofitable. The array modes are
now locked in in the first fixup run after prediction propagation. Of course,
refinements from Generic to something else would not have been a problem; we could
reenable those if we thought we really needed to.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGArrayMode.cpp:
(JSC::DFG::fromStructure):
(DFG):
(JSC::DFG::refineArrayMode):
* dfg/DFGArrayMode.h:
(DFG):
(JSC::DFG::modeIsJSArray):
(JSC::DFG::lengthNeedsStorage):
(JSC::DFG::modeIsSpecific):
(JSC::DFG::modeSupportsLength):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::getArrayMode):
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::mergeBlocks):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::CSEPhase):
(JSC::DFG::CSEPhase::checkStructureElimination):
(CSEPhase):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::performCSE):
* dfg/DFGCSEPhase.h:
(DFG):
* dfg/DFGCommon.h:
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(FixupPhase):
(JSC::DFG::FixupPhase::blessArrayOperation):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(DFG):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::collectGarbage):
* dfg/DFGGraph.h:
(Graph):
(JSC::DFG::Graph::vote):
(JSC::DFG::Graph::substitute):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasArrayMode):
(JSC::DFG::Node::setArrayMode):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGOperations.cpp:
* dfg/DFGPhase.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::mergeDefaultFlags):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::useChildren):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

7 years agoPrerenderering should gracefully handle no PrerendererClient or PrerenderingPlatform...
gavinp@chromium.org [Sun, 26 Aug 2012 22:15:35 +0000 (22:15 +0000)]
Prerenderering should gracefully handle no PrerendererClient or PrerenderingPlatform being provided.
https://bugs.webkit.org/show_bug.cgi?id=95036

Reviewed by Adam Barth.

Some assertions made sure there was a prerendering platform and client, and this change should make prerendering just be a NOP when no platform is provided, and just continue without a client when there is no client provided. These assertions were causing crashes in chromium's content_shell target, and really for no good reason.

No new tests, because DumpRenderTree provides both a PrerenderingPlatform and a PrerendererClient. But there is a new layout test in chromium's WebKitBrowserTest for this behaviour, see http://codereview.chromium.org/10869068/

* loader/Prerenderer.cpp:
(WebCore::Prerenderer::Prerenderer):
(WebCore::Prerenderer::render):
(WebCore::Prerenderer::client):
* loader/Prerenderer.h:
* loader/PrerendererClient.cpp:
(WebCore::PrerendererClient::from):
* platform/chromium/Prerender.cpp:
(WebCore::Prerender::cancel):

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

7 years agoStreamline mathml.css
dbarton@mathscribe.com [Sun, 26 Aug 2012 21:11:54 +0000 (21:11 +0000)]
Streamline mathml.css
https://bugs.webkit.org/show_bug.cgi?id=95039

Reviewed by Dan Bernstein.

Remove 3 no-op { margin: 0px } declarations, and combine several { display: inline-block } ones.

Tested by existing tests.

* css/mathml.css:
(math):
(mo, mrow, mfenced, mfrac, msub, msup, msubsup, munder, mover, munderover, msqrt, mroot):
(mrow, mfenced):
(msubsup > *):
(mo, mn, mi, mtext):
(annotation, annotation-xml):
(msqrt):
(mroot):

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

7 years agoDFGGraph.h has a bogus comment about the nature of StorageAccessData
fpizlo@apple.com [Sun, 26 Aug 2012 19:53:09 +0000 (19:53 +0000)]
DFGGraph.h has a bogus comment about the nature of StorageAccessData
https://bugs.webkit.org/show_bug.cgi?id=95035

Reviewed by Oliver Hunt.

The comment is both wrong (storage access instructions don't reference CheckStructure)
and highly redundant: of course it's the case that two structures may have the same
identifier. Our interference analyses currently don't care about this and make the
conservative assumptions when necessary (same identifier, same object -> must be same
property; same identifier, may be same object -> may be the same property). Better to
remove the bogus comment since the code that operates over this data structure is
fairly self-explanatory already.

* dfg/DFGGraph.h:
(StorageAccessData):

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

7 years agoSuppress Mac test requiring rebaseline after r126683.
robert@webkit.org [Sun, 26 Aug 2012 19:41:43 +0000 (19:41 +0000)]
Suppress Mac test requiring rebaseline after r126683.

Unreviewed gardening.

fast/repaint/control-clip.html was suppressed and failing already so remove it from
the tests requiring rebaseline after r126683.

* platform/chromium/TestExpectations:

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

7 years agoSuppress test requiring rebaseline after r126683
robert@webkit.org [Sun, 26 Aug 2012 19:34:18 +0000 (19:34 +0000)]
Suppress test requiring rebaseline after r126683

Unreviewed, gardening.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: make ConsoleView listen to the JavaScriptContextManager
pfeldman@chromium.org [Sun, 26 Aug 2012 18:42:41 +0000 (18:42 +0000)]
Web Inspector: make ConsoleView listen to the JavaScriptContextManager
https://bugs.webkit.org/show_bug.cgi?id=94940

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Otherwise, model is pushing data into the UI.

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype.clone):
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleView.prototype._contextAdded):
(WebInspector.ConsoleView.prototype._addContext):
(WebInspector.ConsoleView.prototype._contextRemoved):
* inspector/front-end/JavaScriptContextManager.js:
(WebInspector.JavaScriptContextManager):
(WebInspector.JavaScriptContextManager.prototype.contexts):
(WebInspector.JavaScriptContextManager.prototype._frameAdded):
(WebInspector.JavaScriptContextManager.prototype._frameDetached):
* inspector/front-end/ParsedURL.js:
(WebInspector.ParsedURL.completeURL):
(WebInspector.TextEditorDelegateForSourceFrame.prototype.createLink):
* inspector/front-end/inspector.js:

LayoutTests:

* inspector/elements/elements-panel-rewrite-href-expected.txt:
* inspector/styles/styles-url-linkify-expected.txt:

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

7 years agoDon't allocate space for arguments and call frame if arguments aren't captured
fpizlo@apple.com [Sun, 26 Aug 2012 18:23:54 +0000 (18:23 +0000)]
Don't allocate space for arguments and call frame if arguments aren't captured
https://bugs.webkit.org/show_bug.cgi?id=95024

Reviewed by Geoffrey Garen.

Test coverage for the case where an argument was legitimately captured.

* fast/js/jsc-test-list:
* fast/js/legitimately-captured-argument-expected.txt: Added.
* fast/js/legitimately-captured-argument.html: Added.
* fast/js/script-tests/legitimately-captured-argument.js: Added.

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

7 years agoSuppress 6 failing tests on Qt.
robert@webkit.org [Sun, 26 Aug 2012 14:35:05 +0000 (14:35 +0000)]
Suppress 6 failing tests on Qt.

Unreviewed gardening.

* platform/qt/TestExpectations:

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