ddkilzer@apple.com [Tue, 5 Mar 2013 13:29:23 +0000 (13:29 +0000)]
BUILD FIX (r144727): Change type of columnRange and rowRange to pair<unsigned, unsigned>
<http://webkit.org/b/110050>
Fixes the following build failures:
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:741:30: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
tableCell->rowIndexRange(rowRange);
^~~~~~~~
In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
Source/WebCore/accessibility/AccessibilityTableCell.h:47:58: note: passing argument to parameter 'rowRange' here
virtual void rowIndexRange(pair<unsigned, unsigned>& rowRange);
^
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:742:33: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
tableCell->columnIndexRange(columnRange);
^~~~~~~~~~~
In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
Source/WebCore/accessibility/AccessibilityTableCell.h:49:61: note: passing argument to parameter 'columnRange' here
virtual void columnIndexRange(pair<unsigned, unsigned>& columnRange);
^
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:804:30: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
tableCell->rowIndexRange(rowRange);
^~~~~~~~
In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
Source/WebCore/accessibility/AccessibilityTableCell.h:47:58: note: passing argument to parameter 'rowRange' here
virtual void rowIndexRange(pair<unsigned, unsigned>& rowRange);
^
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:818:33: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
tableCell->columnIndexRange(columnRange);
^~~~~~~~~~~
In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
Source/WebCore/accessibility/AccessibilityTableCell.h:49:61: note: passing argument to parameter 'columnRange' here
virtual void columnIndexRange(pair<unsigned, unsigned>& columnRange);
^
4 errors generated.
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
(-[WebAccessibilityObjectWrapper accessibilityRowRange]):
(-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144751
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 12:53:35 +0000 (12:53 +0000)]
[BlackBerry] Clean up animated scroll/zoom code in WebPagePrivate
https://bugs.webkit.org/show_bug.cgi?id=111373
Patch by Andrew Lo <anlo@rim.com> on 2013-03-05
Reviewed by Rob Buis.
Internally reviewed by Jakob Petsovits.
Internal PR 285468.
Have WebPageClient pass the final scale and position to WebPage when a zoom/scroll
animation finishes, rather than keeping those values as instance variables in
WebPagePrivate.
Rename some functions & variables to reflect that they are used for both block zoom
and generic zoom/scroll animations.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::zoomAnimationFinished):
(BlackBerry::WebKit::WebPage::zoomAnimationFinished):
(BlackBerry::WebKit::WebPagePrivate::resetBlockZoom):
(BlackBerry::WebKit::WebPage::blockZoom):
(BlackBerry::WebKit::WebPagePrivate::animateToScaleAndDocumentScrollPosition):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144750
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Tue, 5 Mar 2013 12:23:37 +0000 (12:23 +0000)]
Web Inspector: [refactoring] set frame identifiers in timeline records early, do not keep them in event stack
https://bugs.webkit.org/show_bug.cgi?id=111345
Reviewed by Pavel Feldman.
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::pushGCEventRecords):
(WebCore::InspectorTimelineAgent::addRecordToTimeline):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
(WebCore::InspectorTimelineAgent::setFrameIdentifier):
(WebCore):
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::appendRecord):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
(WebCore::InspectorTimelineAgent::commitFrameRecord):
* inspector/InspectorTimelineAgent.h:
(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
(TimelineRecordEntry):
(InspectorTimelineAgent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144749
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tommyw@google.com [Tue, 5 Mar 2013 11:34:38 +0000 (11:34 +0000)]
MediaStream API: Add the getStreamById method on RTCPeerConnection
https://bugs.webkit.org/show_bug.cgi?id=111311
Reviewed by Adam Barth.
Source/Platform:
Added an initial initialize method which doesn't take an id;
the id will be generated for you.
* chromium/public/WebMediaStream.h:
(WebMediaStream):
Source/WebCore:
Adding the missing method on RTCPeerConnection defined here:
http://dev.w3.org/2011/webrtc/editor/webrtc.html#widl-RTCPeerConnection-getStreamById-MediaStream-DOMString-streamId
Existing tests have been extended to cover patch.
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::getStreamById):
(WebCore):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.idl:
* platform/chromium/support/WebMediaStream.cpp:
(WebKit::WebMediaStream::initialize):
(WebKit):
* platform/mediastream/MediaStreamSource.cpp:
(WebCore::MediaStreamSource::setReadyState):
Tools:
Changing mocks to be more realistic.
* DumpRenderTree/chromium/TestRunner/src/MockWebRTCPeerConnectionHandler.cpp:
(WebTestRunner::MockWebRTCPeerConnectionHandler::addStream):
(WebTestRunner::MockWebRTCPeerConnectionHandler::removeStream):
* DumpRenderTree/chromium/TestRunner/src/WebUserMediaClientMock.cpp:
(WebTestRunner::WebUserMediaClientMock::requestUserMedia):
LayoutTests:
* fast/mediastream/MediaStream-add-remove-tracks.html:
* fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt:
* fast/mediastream/RTCPeerConnection-AddRemoveStream.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144748
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
graouts@apple.com [Tue, 5 Mar 2013 11:31:28 +0000 (11:31 +0000)]
Web Inspector: allow retrieval of composited layers in a given DOM subtree
https://bugs.webkit.org/show_bug.cgi?id=111312
Source/WebCore:
Introduce the LayerTreeAgent.layersForNode(node) method allowing the front-end
to gather all composited layers associated with nodes in the subtree of which
the provided node is the root.
In order to gather the layers in the subtree, we first traverse the node's
renderer's RenderObject hierarchy and whenever we encounter a RenderObject
that has a RenderLayer, we then traverse that renderLayer's RenderLayer
hierarchy. This allows for a quick path through the relevant objects we're
gathering.
Layers gathered will push the node to which they're associated, allowing a
nodeId for this layer to be listed in the Layer object sent to the front-end.
It is crucial to be able to provide a nodeId as well as a layerId for a Layer
object in order to be able to correctly assess mutations in the layer tree.
For instance, it is expected that a node's layer be replaced by a new layer
to represent a slightly different rendering of its content, but the front-end
should be able to represent this layer as an object for which only certain
attributes have changed (like the "paintCount" property).
Layer objects also indicate whether they're associated to a node hosted in a
shadow tree (the optional "isInShadowTree" property) in order for the front-end
to be able to only show this layer if the option to show nodes hosted in shadow
tree is enabled.
Finally, since we're only gathering composited layers, we're removing the
"isLayerComposited" property and removing the optional flag on the "paintCount",
"memory" and "compositedBounds" properties.
Reviewed by Simon Fraser.
Test: inspector-protocol/layers/layers-for-node.html
* inspector/Inspector.json:
* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::layersForNode):
(WebCore):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
(WebCore::InspectorLayerTreeAgent::idForNode):
* inspector/InspectorLayerTreeAgent.h:
(InspectorLayerTreeAgent):
LayoutTests:
New test for the LayerTree.layersForNode() method.
Reviewed by Simon Fraser.
* inspector-protocol/layers/layers-for-node-expected.txt: Added.
* inspector-protocol/layers/layers-for-node.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144747
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Tue, 5 Mar 2013 10:53:38 +0000 (10:53 +0000)]
Web Inspector: use timestamps consistent with rest of Timeline in WebSocket events.
https://bugs.webkit.org/show_bug.cgi?id=111344
- create web socket related records in a manner consistent with the rest of timeline.
Reviewed by Pavel Feldman.
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didCreateWebSocket):
(WebCore::InspectorTimelineAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorTimelineAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorTimelineAgent::didDestroyWebSocket):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144746
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Tue, 5 Mar 2013 10:38:48 +0000 (10:38 +0000)]
[WK2][EFL] Add requestCheckingOfString implementation.
https://bugs.webkit.org/show_bug.cgi?id=108172
Reviewed by Hajime Morrita.
Provide implementation of 'requestCheckingOfString' for WK2-EFL.
It uses the unified text checker feature.
* UIProcess/efl/TextCheckerEfl.cpp:
(WebKit::TextChecker::requestCheckingOfString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144745
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abucur@adobe.com [Tue, 5 Mar 2013 10:27:35 +0000 (10:27 +0000)]
[CSS Regions] Crash when MathML used in CSS Regions
https://bugs.webkit.org/show_bug.cgi?id=110686
Reviewed by David Hyatt.
Source/WebCore:
The MathML blocks trigger a children layout when computing the preferred widths. This happens to determine the preferred
logical heights of the children. When the layout reaches the line boxes computation the preferred width of the containing block
is requested. Because it wasn't computed, the layout of the children is started again to determine the preferred logical heights.
This causes an infinite recursion and triggers a stack overflow.
The patch introduces a new RAII utility class that disables fragmentation when the constructor is called and restores it
on the destructor. This class is used when computing the preferred height for the children of a MathML block.
Test: fast/regions/mathml-crash.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::setFlowThreadStateIncludingDescendants): Do not cross RenderFlowThread boundaries when updating the flow thread
state flag. The innermost flow threads need to manage their descendants flag values.
* rendering/RenderView.cpp:
(WebCore::FragmentationDisabler::FragmentationDisabler):
(WebCore):
(WebCore::FragmentationDisabler::~FragmentationDisabler):
* rendering/RenderView.h:
(FragmentationDisabler):
(WebCore):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
LayoutTests:
Add a test to verify regions and MathML do not crash.
* fast/regions/mathml-crash-expected.txt: Added.
* fast/regions/mathml-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144744
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mkwst@chromium.org [Tue, 5 Mar 2013 10:05:41 +0000 (10:05 +0000)]
Cleanup: Move HitTestLocation and HitTestResult into separate files.
https://bugs.webkit.org/show_bug.cgi?id=111294
Reviewed by Allan Sandfeld Jensen.
HitTestLocation and HitTestResult currently both live in
HitTestResult.h. That makes things more difficult to understand than
they should be, and violates the one-class-one-file principle that
WebKit generally follows. Happily, it's fairly trivial to fix.
This should have no visible change; it's strictly an internal
refactoring. It doesn't even touch any implementation code: we're
just moving bits from one place to another.
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Hey, look: a new file! Let's add it to six different build systems! :)
* rendering/HitTestLocation.cpp: Added.
(WebCore):
(WebCore::HitTestLocation::HitTestLocation):
(WebCore::HitTestLocation::~HitTestLocation):
(WebCore::HitTestLocation::operator=):
(WebCore::HitTestLocation::move):
(WebCore::HitTestLocation::intersectsRect):
(WebCore::HitTestLocation::intersects):
(WebCore::HitTestLocation::rectForPoint):
* rendering/HitTestLocation.h: Added.
(WebCore):
(HitTestLocation):
(WebCore::HitTestLocation::point):
(WebCore::HitTestLocation::roundedPoint):
(WebCore::HitTestLocation::region):
(WebCore::HitTestLocation::isRectBasedTest):
(WebCore::HitTestLocation::isRectilinear):
(WebCore::HitTestLocation::boundingBox):
(WebCore::HitTestLocation::topPadding):
(WebCore::HitTestLocation::rightPadding):
(WebCore::HitTestLocation::bottomPadding):
(WebCore::HitTestLocation::leftPadding):
(WebCore::HitTestLocation::transformedPoint):
(WebCore::HitTestLocation::transformedRect):
* rendering/HitTestResult.cpp:
* rendering/HitTestResult.h:
Move all this code from HitTestResult.* to HitTestLocation.*.
* rendering/RenderBlock.cpp:
Include HitTestLocation.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144743
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jochen@chromium.org [Tue, 5 Mar 2013 09:30:47 +0000 (09:30 +0000)]
Refactor UserGestureIndicator::Token to be a top-level class
https://bugs.webkit.org/show_bug.cgi?id=111412
Reviewed by Nico Weber.
This will allow for forward declaring the class in a public WebKit
API header. The goal is to enable the embedder to hold on to a
UserGestureToken.
* dom/UserGestureIndicator.cpp:
(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::currentToken):
* dom/UserGestureIndicator.h:
(UserGestureToken):
(WebCore::UserGestureToken::~UserGestureToken):
(WebCore):
(UserGestureIndicator):
* page/DOMTimer.h:
(DOMTimer):
* page/EventHandler.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144742
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mkwst@chromium.org [Tue, 5 Mar 2013 09:15:59 +0000 (09:15 +0000)]
Remove redundant code in Document::updateHoverActiveState.
https://bugs.webkit.org/show_bug.cgi?id=111303
Reviewed by Darin Adler.
Document::updateHoverActiveState currently looks for touchrelease events
and explictly clears out the hover state for all nodes between the
currently hovered node and the top of the hover chain. This is actually
redundant with the logic in the rest of the function; we can simplify by
setting the Element* we're working with to 0, which causes the later
loops to do the necessary work.
There should be no web-visible effect from this change; it should simply
make this function less complex.
Extracted from Allan Sandfeld Jensen's original patch to wkbug.com/98168
* dom/Document.cpp:
(WebCore::Document::updateHoverActiveState):
Set innerElementInDocument to 0 rather than walking the hover chain
and clearing it when we see a touchrelease event. The rest of the
code in this function will have the same effect.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144741
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jochen@chromium.org [Tue, 5 Mar 2013 08:46:24 +0000 (08:46 +0000)]
Add content shell bots to garden-o-matic for general failurse
https://bugs.webkit.org/show_bug.cgi?id=111168
Reviewed by Adam Barth.
All but the WebKit (Content Shell) Android bot is stable enough. While
they're not green yet, there must not be any non-layout test failures on
them.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
(.):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144739
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 08:31:43 +0000 (08:31 +0000)]
[V8] Remove unused custom indexedPropertyGetter
https://bugs.webkit.org/show_bug.cgi?id=111409
Patch by Koji Hara <kojih@chromium.org> on 2013-03-05
Reviewed by Kentaro Hara.
Remove unused custom indexedPropertyGetter.
There are 9 custom indexedPropertyGetter, including an unused one(NamedNodeMap).
This commit assures all existing custom indexedPropertyGetter(for V8) are used.
No new tests. Simple refactoring.
* bindings/v8/custom/V8NamedNodeMapCustom.cpp: Remove indexedPropertyGetter
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144738
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sudarsana.nagineni@linux.intel.com [Tue, 5 Mar 2013 08:30:57 +0000 (08:30 +0000)]
Unreviewed, EFL gardening.
Skip failing tests on EFL bots.
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144737
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kinuko@chromium.org [Tue, 5 Mar 2013 08:14:21 +0000 (08:14 +0000)]
Unreviewed; updating test expectations.
fast/regions/seamless-iframe-flowed-into-regions.html is failing not only with debug build.
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144736
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Tue, 5 Mar 2013 08:08:15 +0000 (08:08 +0000)]
ShadowRoot needs guardRef() and guardDeref()
https://bugs.webkit.org/show_bug.cgi?id=109777
Reviewed by Dimitri Glazkov.
This change moves m_guardRefCount from Document to TreeScope,
which allows ShadowRoot to be guarded by guardRef() mechanism as
Document. After r137524, Node referes TreeScope instead of
Document. This is natural consequence of the change: It no longer
makes sense to guardRef() Document pointer from Node.
Detail:
- Document::m_guardRefCount and related funcdtions are moved to TreeScope
- Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(),
TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation.
- Moved guardRef() and guardDeref() calls to TreeScope and Node.
Note that there are two "guarded" TreeScope references. One is
Node::m_treeScope and another is TreeScope::m_parentTreeScope.
The guarded-ref management is now encapsulated in these two classes.
No new tests. Covered by existing tests.
* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::dispose): Extracted from removedLastRef()
* dom/Document.h:
(WebCore::Node::isTreeScope):
(WebCore::Node::Node):
* dom/DocumentFragment.cpp:
(WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ...
(WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot.
* dom/Node.cpp:
(WebCore::Node::~Node):
(WebCore::Node::removedLastRef):
* dom/Node.h:
(WebCore::Node::setTreeScope):
* dom/Element.cpp:
(WebCore::Element::ensureAttr): This has been wrong and is fixed in this revision since the incorrectness is unveiled by this change.
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing.
(WebCore::ShadowRoot::dispose): Added.
* dom/ShadowRoot.h:
(ShadowRoot):
* dom/TreeScope.cpp:
(SameSizeAsTreeScope):
(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::~TreeScope):
(WebCore::TreeScope::dispose): Added.
(WebCore::TreeScope::setParentTreeScope):
(WebCore::TreeScope::deletionHasBegun):
(WebCore::TreeScope::beginDeletion):
(WebCore::TreeScope::refCount): Added.
* dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined.
(WebCore::TreeScope::guardRef): Pulled up from Document.
(WebCore::TreeScope::guardDeref): Ditto.
(WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount.
(WebCore::TreeScope::deletionHasBegun): Added.
(WebCore::TreeScope::beginDeletion): Added.
(WebCore::TreeScope::removedLastRefToScope): Pulled up from Document.
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveNodeToNewDocument):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144735
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kinuko@chromium.org [Tue, 5 Mar 2013 07:59:34 +0000 (07:59 +0000)]
2013-03-04 Kinuko Yasuda <kinuko@chromium.org>
Unreviewed, adding crashing test to the expectations.
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144734
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jochen@chromium.org [Tue, 5 Mar 2013 07:56:43 +0000 (07:56 +0000)]
[chromium] remove deprecated WebTestRunner::setFocus API
https://bugs.webkit.org/show_bug.cgi?id=111354
Reviewed by James Robinson.
* DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
(WebTestDelegate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144733
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 07:44:47 +0000 (07:44 +0000)]
getPropertyValue for -webkit-text-stroke returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=111018
Patch by Uday Kiran <udaykiran@motorola.com> on 2013-03-04
Reviewed by Alexander Pavlov.
Source/WebCore:
Test: fast/css/getPropertyValue-webkit-text-stroke.html
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):
LayoutTests:
Added test for getPropertyValue("-webkit-text-stroke").
* fast/css/getPropertyValue-webkit-text-stroke-expected.txt: Added.
* fast/css/getPropertyValue-webkit-text-stroke.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144732
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jochen@chromium.org [Tue, 5 Mar 2013 07:42:51 +0000 (07:42 +0000)]
Run the bindings generation tests on EWS and CQ bots
https://bugs.webkit.org/show_bug.cgi?id=111358
Reviewed by Adam Barth.
The tests are super fast and not flaky.
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.run_bindings_tests_command):
* Scripts/webkitpy/common/config/ports_mock.py:
(MockPort.run_webkit_tests_command):
(MockPort):
(MockPort.run_bindings_tests_command):
* Scripts/webkitpy/tool/commands/download_unittest.py:
* Scripts/webkitpy/tool/steps/runtests.py:
(RunTests.run):
* Scripts/webkitpy/tool/steps/runtests_unittest.py:
(RunTestsTest.test_webkit_run_unit_tests):
* Scripts/webkitpy/tool/steps/steps_unittest.py:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144731
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 07:33:23 +0000 (07:33 +0000)]
getPropertyValue for -webkit-columns returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=111011
Patch by Uday Kiran <udaykiran@motorola.com> on 2013-03-04
Reviewed by Alexander Pavlov.
Source/WebCore:
Test: fast/css/getPropertyValue-columns.html
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):
LayoutTests:
Added test for getPropertyValue("-webkit-columns").
* fast/css/getPropertyValue-columns-expected.txt: Added.
* fast/css/getPropertyValue-columns.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144730
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Tue, 5 Mar 2013 07:31:56 +0000 (07:31 +0000)]
Web Inspector: Do not accumulate file system files, add them to workspace immediately
https://bugs.webkit.org/show_bug.cgi?id=111325
Reviewed by Pavel Feldman.
Source/WebCore:
* inspector/front-end/FileSystemProjectDelegate.js:
(WebInspector.FileSystemProjectDelegate.prototype.populate.fileLoaded):
(WebInspector.FileSystemProjectDelegate.prototype.populate):
* inspector/front-end/IsolatedFileSystem.js:
(WebInspector.IsolatedFileSystem.prototype.innerCallback):
(WebInspector.IsolatedFileSystem.prototype.requestFilesRecursive):
LayoutTests:
* inspector/file-system-project.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144729
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kinuko@chromium.org [Tue, 5 Mar 2013 07:20:26 +0000 (07:20 +0000)]
Unreviewed Windows build fix attempt.
floor method is ambigious so explicitly specify the type.
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144728
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 5 Mar 2013 07:13:46 +0000 (07:13 +0000)]
AX: cellForColumnAndRow fails for tables with hidden table cells
https://bugs.webkit.org/show_bug.cgi?id=110050
Reviewed by Tim Horton.
Source/WebCore:
If a table had hidden cells, then accessibility code was being confused in a few ways.
1) The cellForColumnAndRow method would return the wrong information since that was
using the RenderTableSection to retrieve a cell, which did not have the same data as the AXTable
2) The way we were adding children made it impossible to determine column and row range because we
would skip rows that had hidden children
3) AccessibilityARIAGrid and AccessibilityTable were using different methods for cellForColumnAndRow
The fix does a few things to make things right:
1) Always add an accessibility row, even if there are no visible cells in that row.
2) Have one method for AXTable and AXARIAGrid for cellForColumnAndRow.
3) Change cellForColumnAndRow to query the accessibility children rather than the RenderTableSection in determining the row, col info.
4) cellForColumnAndRow should use unsigned values instead of int values.
Test: accessibility/table-with-hidden-head-section.html
* accessibility/AccessibilityARIAGrid.cpp:
(WebCore):
* accessibility/AccessibilityARIAGrid.h:
(AccessibilityARIAGrid):
* accessibility/AccessibilityARIAGridCell.cpp:
(WebCore::AccessibilityARIAGridCell::rowIndexRange):
(WebCore::AccessibilityARIAGridCell::columnIndexRange):
* accessibility/AccessibilityARIAGridCell.h:
(AccessibilityARIAGridCell):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::addChildren):
(WebCore::AccessibilityTable::cellForColumnAndRow):
* accessibility/AccessibilityTable.h:
(WebCore):
(AccessibilityTable):
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::rowIndexRange):
(WebCore::AccessibilityTableCell::columnIndexRange):
* accessibility/AccessibilityTableCell.h:
(AccessibilityTableCell):
* accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableGetColumnAtIndex):
(webkitAccessibleTableGetRowAtIndex):
(webkitAccessibleTableGetColumnExtentAt):
(webkitAccessibleTableGetRowExtentAt):
(webkitAccessibleTableGetColumnHeader):
(webkitAccessibleTableGetRowHeader):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
* rendering/RenderTableSection.h:
(RenderTableSection):
(WebCore::RenderTableSection::rowRendererAt):
Source/WebKit/chromium:
* src/WebAccessibilityObject.cpp:
(WebKit::WebAccessibilityObject::cellColumnIndex):
(WebKit::WebAccessibilityObject::cellColumnSpan):
(WebKit::WebAccessibilityObject::cellRowIndex):
(WebKit::WebAccessibilityObject::cellRowSpan):
LayoutTests:
* accessibility/table-with-hidden-head-section-expected.txt: Added.
* accessibility/table-with-hidden-head-section.html: Added.
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144727
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 06:57:55 +0000 (06:57 +0000)]
getAttribute does not behave correctly for mixed-case attributes on HTML elements
https://bugs.webkit.org/show_bug.cgi?id=105713
Patch by Arpita Bahuguna <a.bah@samsung.com> on 2013-03-04
Reviewed by Andreas Kling.
Source/WebCore:
getAttribute() and getAttributeNode() APIs do not convert the
passed attribute name to lowercase before comparing against the
existing attributes.
The specification however states that the passed name should
be converted to ASCII lowercase before checking for the existence
of the given attribute. [www.w3.org/TR/domcore/#dom-element-getattribute]
Test: fast/dom/Element/getAttribute-case-insensitivity.html
* dom/Element.h:
(WebCore::ElementData::getAttributeItemIndex):
getAttributeItemIndex() accepts a bool param 'shouldIgnoreAttributeCase'
which specifies whether the attribute's case should be ignored
before comparison. But inspite of this param's value we still carry
out a case sensitive search.
Have modified the same to convert the passed attribute's name to
lowercase if 'shouldIgnoreAttributeCase' is true.
LayoutTests:
* fast/dom/Element/getAttribute-case-insensitivity-expected.txt: Added.
* fast/dom/Element/getAttribute-case-insensitivity.html: Added.
Layout test added for verifying that getAttribute() and getAttributeNode()
APIs convert the passed attribute name to lowercase before comparing
against the existing attributes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144726
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 06:35:55 +0000 (06:35 +0000)]
[Chromium] Add runtime flag for font load events
https://bugs.webkit.org/show_bug.cgi?id=111296
Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2013-03-04
Reviewed by Kent Tamura.
Add a runtime feature flag for FontLoader interface (disabled by default),
and enable ENABLE_FONT_LOAD_EVENTS build flag for chromium.
Source/WebCore:
* bindings/generic/RuntimeEnabledFeatures.cpp:
(WebCore):
* bindings/generic/RuntimeEnabledFeatures.h:
(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::setFontLoadEventsEnabled):
(WebCore::RuntimeEnabledFeatures::fontLoadEventsEnabled):
Source/WebKit/chromium:
* features.gypi:
* public/WebRuntimeFeatures.h:
(WebRuntimeFeatures):
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableFontLoadEvents):
(WebKit):
(WebKit::WebRuntimeFeatures::isFontLoadEventsEnabled):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144725
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jsbell@chromium.org [Tue, 5 Mar 2013 06:31:42 +0000 (06:31 +0000)]
[V8] Add LayoutTests for SerializedScriptValue Int32/Uint32 cases
https://bugs.webkit.org/show_bug.cgi?id=111364
Reviewed by Kentaro Hara.
A lack of layout tests for SerializedScriptValue special cases let
crbug.com/179280 slip in and out un-noticed. Rectify the situation.
* platform/chromium/fast/storage/serialized-script-value-expected.txt:
* platform/chromium/fast/storage/serialized-script-value.html:
* storage/indexeddb/structured-clone-expected.txt:
* storage/indexeddb/structured-clone.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144724
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 06:14:18 +0000 (06:14 +0000)]
WEBGL_compressed_texture_atc implementation
https://bugs.webkit.org/show_bug.cgi?id=110496
Patch by Brandon Jones <bajones@google.com> on 2013-03-04
Reviewed by Kenneth Russell.
Source/WebCore:
Test: webgl/conformance/extensions/webgl-compressed-texture-atc.html
Exposes the WEBGL_compressed_texture_atc extension, but is unverified since no desktop hardware supports
the format that I am aware of. Should enable mobile ports to expose the format, however.
* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
* html/canvas/WebGLCompressedTextureATC.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebCore::WebGLCompressedTextureATC::WebGLCompressedTextureATC):
(WebCore::WebGLCompressedTextureATC::~WebGLCompressedTextureATC):
(WebCore::WebGLCompressedTextureATC::getName):
(WebCore::WebGLCompressedTextureATC::create):
(WebCore::WebGLCompressedTextureATC::supported):
* html/canvas/WebGLCompressedTextureATC.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebGLCompressedTextureATC):
* html/canvas/WebGLCompressedTextureATC.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
* html/canvas/WebGLExtension.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
* html/canvas/WebGLRenderingContext.h:
(WebCore):
(WebGLRenderingContext):
* platform/graphics/Extensions3D.h:
LayoutTests:
* webgl/conformance/extensions/webgl-compressed-texture-atc-expected.txt: Added.
* webgl/conformance/extensions/webgl-compressed-texture-atc.html: Added.
* webgl/resources/webgl_test_files/conformance/extensions/webgl-compressed-texture-atc.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144723
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eustas@chromium.org [Tue, 5 Mar 2013 06:12:18 +0000 (06:12 +0000)]
Web Inspector: Exceptions when WebInspector run in hosted mode.
https://bugs.webkit.org/show_bug.cgi?id=111326
Reviewed by Pavel Feldman.
Source/WebCore:
There is bug in commands code generation in InspectorBackend.js
As a consequence all protocol enums have wrong names and cause
exception when refererenced.
Currently protocol enums are referenced only from NetworkManager.
Test: inspector/inspector-backend-commands-generation.html
* inspector/front-end/InspectorBackend.js:
(InspectorBackendClass.prototype.loadFromJSONIfNeeded):
Use static method to generate code.
(InspectorBackendClass._generateCommands):
Extracted from loadFromJSONIfNeeded. Typo fixed.
LayoutTests:
Test runtime commands code generator output.
* inspector/inspector-backend-commands-generation-expected.txt: Added.
* inspector/inspector-backend-commands-generation.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144722
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
crogers@google.com [Tue, 5 Mar 2013 06:04:26 +0000 (06:04 +0000)]
Source/Platform: Add audio hardware support for multi-channel by implementing AudioDestinationNode.maxChannelCount
https://bugs.webkit.org/show_bug.cgi?id=111385
Reviewed by James Robinson.
* chromium/public/Platform.h:
(WebKit::Platform::audioHardwareOutputChannels):
Source/WebCore: Add audio hardware support for multi-channel output by implementing AudioDestinationNode.maxChannelCount
https://bugs.webkit.org/show_bug.cgi?id=111385
Reviewed by James Robinson.
See specification details for .maxChannelCount:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioDestinationNode
* Modules/webaudio/AudioDestinationNode.h:
(WebCore::AudioDestinationNode::maxChannelCount):
* Modules/webaudio/AudioDestinationNode.idl:
* Modules/webaudio/AudioNode.h:
Implement .maxChannelCount attribute.
(AudioNode):
* Modules/webaudio/DefaultAudioDestinationNode.h:
* Modules/webaudio/DefaultAudioDestinationNode.cpp:
(WebCore::DefaultAudioDestinationNode::initialize):
(WebCore::DefaultAudioDestinationNode::createDestination):
(WebCore::DefaultAudioDestinationNode::enableInput):
Call to createDestination() now takes no argument.
Instead we maintain a member variable for the input device ID.
(WebCore::DefaultAudioDestinationNode::maxChannelCount):
(WebCore::DefaultAudioDestinationNode::setChannelCount):
Check port-specific hardware support for maxChannelCount(),
and allow setting the channel count based on what the hardware
supports.
* platform/audio/AudioDestination.h:
(AudioDestination):
* platform/audio/chromium/AudioDestinationChromium.cpp:
(WebCore::AudioDestination::maxChannelCount):
(WebCore::AudioDestinationChromium::render):
Call into chromium WebKit API: audioHardwareOutputChannels().
* platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
(WebCore::AudioDestination::maxChannelCount):
Add basic implementation for maxChannelCount() only supporting stereo output.
* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestination::maxChannelCount):
Add basic implementation for maxChannelCount() only supporting stereo output.
Later, the mac port can support more than this with some small improvements to AudioDestinationMac.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144720
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 5 Mar 2013 05:55:06 +0000 (05:55 +0000)]
run-webkit-tests should support --profile and --profiler= just like run-perf-tests does
https://bugs.webkit.org/show_bug.cgi?id=111384
Reviewed by Ryosuke Niwa.
Sometimes I want to know why various LayoutTests are slow
without having to convert them into PerformanceTests in order
to use our fancy profiling. The Driver already knows how to
do the right thing, we just need to expose the options to the user.
Handling of these options is already unittested in the perftests_unittest.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144719
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Tue, 5 Mar 2013 05:27:04 +0000 (05:27 +0000)]
BUILD FIX (r144662): Import JSBase.h in WebFrameLoadDelegate.h
<http://webkit.org/b/111269>
Fixes the following build failure:
In file included from Source/WebKit/ios/DefaultDelegates/WebDefaultFrameLoadDelegate.m:11:
In file included from Source/WebKit/mac/WebView/WebFrameLoadDelegatePrivate.h:29:
Source/WebKit/mac/WebView/WebFrameLoadDelegate.h:41:5: error: 'JSC_OBJC_API_ENABLED' is not defined, evaluates to 0 [-Werror,-Wundef]
#if JSC_OBJC_API_ENABLED
^
Source/WebKit/mac/WebView/WebFrameLoadDelegate.h:207:5: error: 'JSC_OBJC_API_ENABLED' is not defined, evaluates to 0 [-Werror,-Wundef]
#if JSC_OBJC_API_ENABLED
^
2 errors generated.
* WebView/WebFrameLoadDelegate.h: Include JSBase.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144717
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 05:24:10 +0000 (05:24 +0000)]
check-webkit-style says "Have to enable auto props in the subversion config file"
https://bugs.webkit.org/show_bug.cgi?id=107724
Patch by Alan Cutter <alancutter@chromium.org> on 2013-03-04
Reviewed by Tony Chang.
Added a standard svn config file for WebKit developers to use.
Updated the style and commit queue bot build scripts to load this file.
* EWSTools/GoogleComputeEngine/build-commit-queue.sh:
* EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh:
* EWSTools/configure-svn-config.sh: Copied from Tools/EWSTools/GoogleComputeEngine/build-commit-queue.sh.
* svn-config: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144716
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kinuko@chromium.org [Tue, 5 Mar 2013 05:23:45 +0000 (05:23 +0000)]
Rebaseline 4 virtual/softwarecompositing tests.
Unreviewed rebaseline of test expectations.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-deep-expected.png:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-expected.png:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/geometry/vertical-scroll-composited-expected.png:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-deep-expected.png:
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-expected.png:
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-deep-expected.png:
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-expected.png:
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-deep-expected.png:
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-expected.png:
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/geometry/vertical-scroll-composited-expected.png:
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-deep-expected.png:
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/geometry/layer-due-to-layer-children-expected.png:
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/geometry/vertical-scroll-composited-expected.png:
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/reflections/animation-inside-reflection-expected.png:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144715
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Tue, 5 Mar 2013 04:57:15 +0000 (04:57 +0000)]
Background HTML parser can rewind the tokenizer after end-of-file
https://bugs.webkit.org/show_bug.cgi?id=111365
Reviewed by Eric Seidel.
Source/WebCore:
Prior to this patch, it was possible to call didFailSpeculation after
processing the end-of-file token because checkForSpeculationFailure
didn't zero out m_tokenizer in some control paths.
This patch renames checkForSpeculationFailure to validateSpeculations
and ensures that it always takes ownership of the main thread's
HTMLTokenizer.
This patch also adds a number of ASSERTs to make sure the parser state
machine stays in the correct configuration (e.g., that we don't have a
main thread tokenizer while we're supposed to be tokenizing on the
background thread).
Test: fast/parser/document-write-fighting-eof.html
* html/parser/BackgroundHTMLInputStream.cpp:
(WebCore::BackgroundHTMLInputStream::rewindTo):
* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::append):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::validateSpeculations):
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::pumpPendingSpeculations):
(WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
* html/parser/HTMLDocumentParser.h:
(HTMLDocumentParser):
LayoutTests:
* fast/parser/document-write-fighting-eof.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144714
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 04:37:32 +0000 (04:37 +0000)]
Make sure that clearOwnerNode also clears StyleResolver references (via didMutate).
https://bugs.webkit.org/show_bug.cgi?id=109446
Patch by Tim 'mithro' Ansell <mithro@mithis.com> on 2013-03-04
Reviewed by Eric Seidel.
Source/WebCore:
Test: fast/css/stylesheet.innerHTML-calls-didmutate.html
* css/CSSStyleSheet.h:
LayoutTests:
* fast/css/stylesheet.innerHTML-calls-didmutate-expected.txt: Added.
* fast/css/stylesheet.innerHTML-calls-didmutate.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144713
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jamesr@google.com [Tue, 5 Mar 2013 03:49:29 +0000 (03:49 +0000)]
Unreviewed. Rolled Chromium DEPS to r185990. Requested by
jamesr_ via sheriffbot.
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-04
* DEPS:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144712
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
haraken@chromium.org [Tue, 5 Mar 2013 03:40:47 +0000 (03:40 +0000)]
Unreviewd build fix after r144701.
* platform/EventTracer.cpp:
(WebCore::EventTracer::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144711
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 03:23:35 +0000 (03:23 +0000)]
Fix some style issues in RenderLayerCompositor
https://bugs.webkit.org/show_bug.cgi?id=111369
Patch by Min Qin <qinmin@chromium.org> on 2013-03-04
Reviewed by Simon Fraser.
Just style fix, no test needed
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144710
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tdanderson@chromium.org [Tue, 5 Mar 2013 03:17:34 +0000 (03:17 +0000)]
Revert changes to RenderLayer::scrollByRecursively() that were added for gesture-scrolling
https://bugs.webkit.org/show_bug.cgi?id=111007
Reviewed by Simon Fraser.
Due to http://trac.webkit.org/changeset/144519 landing, the changes made to RenderLayer in
http://trac.webkit.org/changeset/142057,
http://trac.webkit.org/changeset/140177, and
http://trac.webkit.org/changeset/142195
are no longer necessary (as RenderLayer::scrollByRecursively() is not used for
gesture-scrolling) and should be reverted.
No change in behavior, so no new tests needed.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollByRecursively):
* rendering/RenderLayer.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144709
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 5 Mar 2013 03:05:27 +0000 (03:05 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/
13292104>
Reviewed by Geoffrey Garen.
Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
Added PropertyTable.cpp.
* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):
Moved marking of property table values here from Structure::visitChildren().
* runtime/WriteBarrier.h:
(JSC::WriteBarrierBase::get):
Move m_cell to a local before using it multiple times. This avoids a multiple-access race when
Structure::checkOffsetConsistency() is used in assertions on the main thread while a marking thread
zaps the property table.
* runtime/Structure.h:
(JSC::Structure::materializePropertyMapIfNecessary):
(JSC::Structure::materializePropertyMapIfNecessaryForPinning):
* runtime/StructureInlines.h:
(JSC::Structure::propertyTable):
Added a getter for the Structure's PropertyTable that ASSERTs GC currently isn't active.
Because GC can zap an unpinned property table at any time, it's not entirely safe to access it.
Renamed the variable itself to m_propertyTableUnsafe to force call sites into explaining themselves.
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
Moved these out of Structure.h to break header dependency cycle between Structure/PropertyTable.
* runtime/Structure.cpp:
(JSC::Structure::visitChildren):
Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.
* runtime/JSGlobalData.h:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
Add a global propertyTableStructure.
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):
Make PropertyTable a GC object.
* runtime/Structure.cpp:
(JSC::Structure::dumpStatistics):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::despecifyDictionaryFunction):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::sealTransition):
(JSC::Structure::freezeTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::isSealed):
(JSC::Structure::isFrozen):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::pin):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::get):
(JSC::Structure::despecifyFunction):
(JSC::Structure::despecifyAllFunctions):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
(JSC::Structure::createPropertyMap):
(JSC::Structure::getPropertyNamesFromStructure):
(JSC::Structure::checkConsistency):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144708
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
haraken@chromium.org [Tue, 5 Mar 2013 02:48:49 +0000 (02:48 +0000)]
Unreviewed build fix after r144701.
* platform/EventTracer.cpp:
(WebCore::EventTracer::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144707
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 02:46:44 +0000 (02:46 +0000)]
REGRESSION (r143643): Buttons containing floats render differently
https://bugs.webkit.org/show_bug.cgi?id=110933
Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-04
Reviewed by Ojan Vafai.
Source/WebCore:
Test: fast/forms/button-with-float.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
Also include new flexbox as a renderer that needs to enclose
overhanging floats. Flex boxes establish a block formatting context,
so they need to contain floats:
http://dev.w3.org/csswg/css3-flexbox/#flex-items
LayoutTests:
* css3/flexbox/float-inside-flexitem-expected.html: Added.
* css3/flexbox/float-inside-flexitem.html: Added.
* fast/forms/button-with-float-expected.html: Added.
* fast/forms/button-with-float.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144706
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 02:34:27 +0000 (02:34 +0000)]
[chromium] Switch to new webkit_support::CreateLayerTreeView interface
https://bugs.webkit.org/show_bug.cgi?id=111285
Patch by James Robinson <jamesr@chromium.org> on 2013-03-04
Reviewed by Adrienne Walker.
This removes the need for WebCompositorSupport::initialize and exposes
slightly fewer entry points across the repository boundary.
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::initialize):
* DumpRenderTree/chromium/TestShell.h:
(TestShell::webCompositorThread):
(TestShell):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::initializeLayerTreeView):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144705
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 5 Mar 2013 01:58:41 +0000 (01:58 +0000)]
Add PerformanceTest for document startup via iframe append/remove
https://bugs.webkit.org/show_bug.cgi?id=111389
Reviewed by Kentaro Hara.
We'd like pages with lots of iframes to be fast.
This test shows that at least for V8/Chromium we spend
all our time booting v8.
On my 32-core linux machine I see about 70 runs/sec in
Release and 5 runs/sec in Debug.
* DOM/iframe-append-remove.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144704
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 5 Mar 2013 01:54:34 +0000 (01:54 +0000)]
Support WebSpeech - Speech Synthesis
https://bugs.webkit.org/show_bug.cgi?id=106742
Build fix.
* Modules/speech/SpeechSynthesis.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144703
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rafaelw@chromium.org [Tue, 5 Mar 2013 01:45:30 +0000 (01:45 +0000)]
Unreviewed, rolling out r144595.
http://trac.webkit.org/changeset/144595
https://bugs.webkit.org/show_bug.cgi?id=90341
Causing multiple crashes in fast/dom/Element/* tests (hits
assert in Attr.cp:215)
Source/WebCore:
* dom/Element.cpp:
(WebCore::Element::setAttributeNode):
LayoutTests:
* fast/dom/Element/setAttributeNode-case-insensitivity-expected.txt: Removed.
* fast/dom/Element/setAttributeNode-case-insensitivity.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144702
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
haraken@chromium.org [Tue, 5 Mar 2013 01:42:20 +0000 (01:42 +0000)]
[chromium] Implement TRACE_EVENT macros for sampling profiling
https://bugs.webkit.org/show_bug.cgi?id=110932
Reviewed by Adam Barth.
We are implementing TRACE_EVENT macros for sampling profiling.
It works in the following mechanism:
- Chromium defines global state variables for sampling profiling.
(i.e. g_trace_state0, g_trace_state1, g_trace_state2 in trace_event.h)
- WebKit gets the addresses of the global state variables at the
initialization step. (i.e. EventTracer::initialize())
- WebKit updates the global states by using TRACE_EVENT_SAMPLING_STATE()
macros every time WebKit changes its state. (e.g. DOM attribute
getters/setters/methods)
- A sampling thread running in Chrome reads the global states
periodically and visualizes the profiling results into about://tracing.
This patch implements (1) a WebKit API to get the addresses of
the global states and (2) the TRACE_EVENT_SAMPLING_STATE() macro.
Source/Platform:
* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::getTraceSamplingState):
Source/WebCore:
No tests. The sampling profiler is not enabled in Chrome by default.
I manually inserted TRACE_EVENT_SAMPLING_STATE() macros and
confirmed that the sampling profiling is working as expected.
* platform/EventTracer.cpp:
(WebCore::EventTracer::initialize):
(WebCore::EventTracer::getTraceCategoryEnabledFlag):
(WebCore):
* platform/EventTracer.h:
(WebCore):
(EventTracer):
* platform/chromium/EventTracerChromium.cpp:
(WebCore):
(WebCore::EventTracer::initialize):
* platform/chromium/TraceEvent.h:
Source/WebKit/chromium:
* src/WebKit.cpp:
(WebKit::initializeWithoutV8):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144701
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rafaelw@chromium.org [Tue, 5 Mar 2013 01:17:07 +0000 (01:17 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: touch-gesture-noscroll-body-* are failing on mac.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144700
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Tue, 5 Mar 2013 01:16:59 +0000 (01:16 +0000)]
Unreviewed. Get rid of some AppleWin VS2010 build warnings.
* DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePluginCommon.props:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144699
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 5 Mar 2013 01:13:23 +0000 (01:13 +0000)]
Support WebSpeech - Speech Synthesis
https://bugs.webkit.org/show_bug.cgi?id=106742
Reviewed by Simon Fraser.
Source/JavaScriptCore:
Enable speech synthesis for the Mac.
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Enable speech synthesis for the Mac.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit/mac:
Enable speech synthesis for the Mac.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
Enable speech synthesis for the Mac.
* Configurations/FeatureDefines.xcconfig:
LayoutTests:
Unskip speech synthesis tests.
* fast/dom/script-tests/constructed-objects-prototypes.js:
(constructorPropertiesOnWindow):
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144698
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Tue, 5 Mar 2013 00:55:32 +0000 (00:55 +0000)]
BUILD FIX (r144657): Fix DumpRenderTree build failure on iOS
Tools/DumpRenderTree/ios/AccessibilityControllerIOS.mm:95:29: error: class method '+stringWithJSStringRef:' not found (return type defaults to 'id') [-Werror,-Wobjc-method-access]
NSString *idAttribute = [NSString stringWithJSStringRef:idAttributeRef];
^ ~~~~~~~~~~~~~~~~~~~~~
1 error generated.
* DumpRenderTree/ios/AccessibilityControllerIOS.mm: Import
AccessibilityCommonMac.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144697
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 00:42:32 +0000 (00:42 +0000)]
<link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
https://bugs.webkit.org/show_bug.cgi?id=109061
Patch by Ruslan Abdikeev <aruslan@chromium.org> on 2013-03-04
Reviewed by Adam Barth.
.:
* Source/autotools/symbols.filter:
Source/WebCore:
Test: fast/dom/icon-url-list-apple-touch.html
Added iconTypes parameter to Document::iconURLs().
Added Document::shortcutIconURLs() with original semantics of iconURLs().
Fixed IconController.cpp to provide iconTypesMask to iconURLs().
Renamed iconTypes to iconTypesMask to make the meaning clearer.
* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::shortcutIconURLs):
(WebCore):
(WebCore::Document::iconURLs):
* dom/Document.h:
(Document):
* loader/icon/IconController.cpp:
(WebCore::IconController::iconURL):
(WebCore::IconController::urlsForTypes):
* testing/Internals.cpp:
(WebCore::Internals::iconURLs):
(WebCore::Internals::shortcutIconURLs):
(WebCore):
(WebCore::Internals::allIconURLs):
* testing/Internals.h:
* testing/Internals.idl:
LayoutTests:
Added test for apple-touch-icon in allIconURLs().
Changed iconURLs() to shortcutIconURLs().
* fast/dom/icon-url-change.html:
* fast/dom/icon-url-list-apple-touch-expected.txt: Added.
* fast/dom/icon-url-list-apple-touch.html: Added.
* fast/dom/icon-url-list.html:
* fast/dom/icon-url-property.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144696
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 5 Mar 2013 00:31:18 +0000 (00:31 +0000)]
UI process storage areas should hold on to storage maps
https://bugs.webkit.org/show_bug.cgi?id=111374
Reviewed by Beth Dakin.
Pass the session storage quota size through to the storage area constructor and
create a StorageMap with the given quota size.
* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
(WebKit::StorageManager::StorageArea::create):
(WebKit::StorageManager::StorageArea::StorageArea):
(StorageManager::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::create):
(WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
(WebKit::StorageManager::createSessionStorageNamespace):
(WebKit::StorageManager::createSessionStorageNamespaceInternal):
* UIProcess/Storage/StorageManager.h:
(StorageManager):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144695
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jpfau@apple.com [Tue, 5 Mar 2013 00:22:27 +0000 (00:22 +0000)]
Cache partitioning does not affect iframe MainResources
https://bugs.webkit.org/show_bug.cgi?id=111022
Reviewed by David Kilzer.
Source/WebCore:
Set the partition of a main resource request if in a subframe.
Test: http/tests/cache/partitioned-cache-iframe.html
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):
LayoutTests:
These tests results are for the case in which the cache is not
partitioned, as no shipping ports have cache partitioning enabled
* http/tests/cache/partitioned-cache-iframe-expected.txt: Added.
* http/tests/cache/partitioned-cache-iframe.html: Added.
* http/tests/cache/resources/random-cached-iframe.cgi: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144694
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rakuco@webkit.org [Mon, 4 Mar 2013 23:51:59 +0000 (23:51 +0000)]
Unreviewed build fix after r144675.
Work around picky/old C++ compilers by separating the '>>' in
nested templates with a space.
* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144693
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rafaelw@chromium.org [Mon, 4 Mar 2013 23:51:25 +0000 (23:51 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: Marking all html5lib/generated/ as crashing.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144692
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 4 Mar 2013 23:47:23 +0000 (23:47 +0000)]
More work on UI side storage
https://bugs.webkit.org/show_bug.cgi?id=111370
Reviewed by Andreas Kling.
Add a DispatchStorageEvent message and begin hooking it up.
* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
(WebKit::StorageManager::StorageArea::setItem):
(WebKit):
(WebKit::StorageManager::StorageArea::dispatchEvents):
(WebKit::StorageManager::setItem):
(WebKit::StorageManager::findStorageArea):
* UIProcess/Storage/StorageManager.h:
(StorageManager):
* UIProcess/Storage/StorageManager.messages.in:
* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::setItem):
(WebKit::StorageAreaProxy::dispatchStorageEvent):
(WebKit):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):
* WebProcess/Storage/StorageAreaProxy.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144691
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Mon, 4 Mar 2013 23:45:59 +0000 (23:45 +0000)]
AX: user agent shadow roots for plugins should be 'accessible'
https://bugs.webkit.org/show_bug.cgi?id=111339
Reviewed by Tim Horton.
If a plugin element uses a user agent shadow element, we should make that shadow element
into a button with the title and subtitle put together, and use that as the label. This
will probably be the best accessibility experience.
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144690
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 23:45:05 +0000 (23:45 +0000)]
CSS3 calc: identify divide by zero cases at parse time
https://bugs.webkit.org/show_bug.cgi?id=80411
Patch by Alan Cutter <alancutter@chromium.org> on 2013-03-04
Reviewed by Tony Chang.
Added tests to check whether divide by 0 cases are caught.
* css3/calc/catch-divide-by-0-expected.txt: Added.
* css3/calc/catch-divide-by-0.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144689
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alokp@chromium.org [Mon, 4 Mar 2013 23:36:25 +0000 (23:36 +0000)]
[chromium] Form controls on composited layers are not painted properly
https://bugs.webkit.org/show_bug.cgi?id=111366
Reviewed by James Robinson.
Set PlatformContextSkia::m_drawingToImageBuffer which is used as a hint to properly blend GDI-painted bitmap.
* platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.cpp:
(WebCore::OpaqueRectTrackingContentLayerDelegate::paintContents):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144688
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 4 Mar 2013 23:25:14 +0000 (23:25 +0000)]
Give ViewportConstraints classes copy constructors
https://bugs.webkit.org/show_bug.cgi?id=111367
Reviewed by Beth Dakin.
Downstream code requires that ViewportConstraints objects have
copy constructors, so add them.
Also clean up some redundant initialization of stack objects
in RenderLayerCompositor.
No behavior change.
* page/scrolling/ScrollingConstraints.h:
(WebCore::ViewportConstraints::ViewportConstraints):
(ViewportConstraints):
(WebCore::FixedPositionViewportConstraints::FixedPositionViewportConstraints):
(FixedPositionViewportConstraints):
(WebCore::StickyPositionViewportConstraints::StickyPositionViewportConstraints):
(StickyPositionViewportConstraints):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144687
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Mon, 4 Mar 2013 23:12:03 +0000 (23:12 +0000)]
Unreviewed. AppleWin build fix.
* html/parser/XSSAuditor.cpp:
(WebCore::isSemicolonSeparatedAttribute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144683
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Mon, 4 Mar 2013 23:09:29 +0000 (23:09 +0000)]
CSSParser: Avoid temporary String when parsing hex colors.
<http://webkit.org/b/111341>
Reviewed by Anders Carlsson.
Templatize CSSParser::fastParseColor() so we can pass a CSSParserString as the color name.
This avoids creating a temporary WTF::String from the parser string.
* css/CSSParser.cpp:
(WebCore::CSSParser::fastParseColor):
* css/CSSParser.h:
* css/CSSParserValues.h:
(CSSParserString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144682
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Mon, 4 Mar 2013 23:07:45 +0000 (23:07 +0000)]
[CSS Grid Layout] Add parsing for grid-{start|before}
https://bugs.webkit.org/show_bug.cgi?id=110988
Reviewed by Tony Chang.
Source/WebCore:
Test: fast/css-grid-layout/grid-item-start-before-get-set.html
Refactored how we store internally grid-{row|column} to be based on grid-{before|start}.
This is required as grid-{row|column} are shorthands for resp. grid-{before|after} and grid-{start|end}
in the specification and will also be in the code. That means a lot of methods were renamed to be more
aligned with the new design.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
Added the code to parse, apply and get back the new properties. Also
some renaming after the internal naming change below.
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):
* rendering/style/RenderStyle.h:
* rendering/style/StyleGridItemData.cpp:
(WebCore::StyleGridItemData::StyleGridItemData):
* rendering/style/StyleGridItemData.h:
(WebCore::StyleGridItemData::operator==):
Updated the naming now that we manipulate grid-{before|start} instead of grid-{row|column}.
LayoutTests:
* fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
* fast/css-grid-layout/grid-item-column-row-get-set.html:
Extended the test to make sure that both grid-column (resp. grid-row) and grid-start (resp. grid-before) are
in sync.
* fast/css-grid-layout/grid-item-start-before-get-set-expected.txt: Added.
* fast/css-grid-layout/grid-item-start-before-get-set.html: Added
Add this test for grid-{start|before}, similar to LayoutTests/fast/css-grid-layout/grid-item-column-row-get-set.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144681
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Mon, 4 Mar 2013 22:44:20 +0000 (22:44 +0000)]
Unreviewed build fix: wrap references to PluginInfoStore with
guards for platforms which do not enable NETSCAPE_PLUGIN_AP.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::~WebContext):
* UIProcess/WebContext.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144680
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Mon, 4 Mar 2013 22:41:13 +0000 (22:41 +0000)]
WebSpeech: change voiceURI to voice
https://bugs.webkit.org/show_bug.cgi?id=110773
Reviewed by Tim Horton.
Source/WebCore:
Change the voiceURI property to a voice property that takes a SpeechSynthesisVoice.
This was recently added to the errata of the WebSpeech spec.
Test: platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice.html
* Modules/speech/SpeechSynthesisUtterance.cpp:
(WebCore):
(WebCore::SpeechSynthesisUtterance::voice):
(WebCore::SpeechSynthesisUtterance::setVoice):
* Modules/speech/SpeechSynthesisUtterance.h:
(SpeechSynthesisUtterance):
* Modules/speech/SpeechSynthesisUtterance.idl:
* Modules/speech/SpeechSynthesisVoice.h:
(WebCore::SpeechSynthesisVoice::platformVoice):
(SpeechSynthesisVoice):
* platform/PlatformSpeechSynthesisUtterance.cpp:
(WebCore::PlatformSpeechSynthesisUtterance::PlatformSpeechSynthesisUtterance):
* platform/PlatformSpeechSynthesisUtterance.h:
(WebCore::PlatformSpeechSynthesisUtterance::voice):
(WebCore::PlatformSpeechSynthesisUtterance::setVoice):
(PlatformSpeechSynthesisUtterance):
* platform/mac/PlatformSpeechSynthesizerMac.mm:
(-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
LayoutTests:
* platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice-expected.txt: Added.
* platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144679
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 22:28:11 +0000 (22:28 +0000)]
Filename passed to FormData.append() takes precedence over filename in
File.
https://bugs.webkit.org/show_bug.cgi?id=111255
Patch by Victor Costan <costan@gmail.com> on 2013-03-04
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Test: http/tests/local/formdata/send-form-data-with-filename.html
* platform/network/FormData.cpp:
(WebCore::FormData::appendKeyValuePairItems): changed to implement the
behavior in the XMLHttpRequest W3C spec.
LayoutTests:
(runTest):
* http/tests/local/formdata/send-form-data-with-filename-expected.txt: Added.
* http/tests/local/formdata/send-form-data-with-filename.html: Added.
* http/tests/local/formdata/send-form-data-with-sliced-file-expected.txt: Updated
to reflect the behavior specified in the XMLHttpRequest W3C spec.
* platform/wk2/TestExpectations: newly added test doesn't work in
WebKit2 because beginDragWithFiles is not implemented
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144677
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 4 Mar 2013 22:25:57 +0000 (22:25 +0000)]
Create and destroy storage areas in the UI process
https://bugs.webkit.org/show_bug.cgi?id=111361
Reviewed by Sam Weinig.
* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
Keep track of listener connection and storage area ID pairs.
(WebKit::StorageManager::StorageArea::~StorageArea):
Assert that we don't have any listeners left.
(WebKit::StorageManager::StorageArea::addListener):
Add the pair to the set of listeners.
(WebKit::StorageManager::StorageArea::removeListener):
Remove the pair from the set of listeners.
(WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
Given an origin, look up or create the storage area.
(WebKit::StorageManager::createStorageArea):
Create the storage area if it doesn't already exist.
(WebKit::StorageManager::destroyStorageArea):
Look up the storage area and destroy it.
* UIProcess/Storage/StorageManager.h:
Add a map of open storage areas.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144675
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 22:16:46 +0000 (22:16 +0000)]
Canvas and DOM go out of sync
https://bugs.webkit.org/show_bug.cgi?id=107701
Patch by Alexis Hetu <sugoi@chromium.org> on 2013-03-04
Reviewed by Simon Fraser.
Source/WebCore:
Test: fast/canvas/canvas-overflow-hidden-animation.html
Added an update of the current compositor from the layer's stacking
container when the layer itself isn't a stacking container.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterLayout):
Added an update of the stacking container of the owning layer of the
layer backing when the owning layer isn't a stacking container itself.
LayoutTests:
Added a new layout test for moving an object (a div) within a div that
has the "overflow:hidden" property.
* fast/canvas/canvas-overflow-hidden-animation-expected.html: Added.
* fast/canvas/canvas-overflow-hidden-animation.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144674
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jamesr@google.com [Mon, 4 Mar 2013 22:15:04 +0000 (22:15 +0000)]
[chromium] Roll chromium DEPS 185662 -> 185963
Roll roll roll the deps
Gently from downstream.
Merrily merrily merrily merrily
Green bots are but a dream.
* DEPS:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144673
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Mon, 4 Mar 2013 22:08:26 +0000 (22:08 +0000)]
Add API to allow WK2 clients to query the list of installed plug-ins.
https://bugs.webkit.org/show_bug.cgi?id=111245
Reviewed by Alexey Proskuryakov.
Add API in WKContext, implemented by WebContext, that allows callers to register a callback
retrieve an array containing installed plugin information. This API is exposed through WebContext
because it owns the PluginInfoStore used to fulfill the request.
Bump the WKContextClient API by 1:
* Shared/APIClientTraits.cpp:
* Shared/APIClientTraits.h:
* UIProcess/API/C/WKContext.h:
Add a client protocol to PluginInfoStore to notify the client when plugIn information has been
successfully loaded:
* UIProcess/Plugins/PluginInfoStore.cpp:
(WebKit::PluginInfoStore::PluginInfoStore): Initialize m_client to 0.
(WebKit::PluginInfoStore::loadPluginsIfNecessary): If the client is present, notify after loading the plugin store.
* UIProcess/Plugins/PluginInfoStore.h:
(WebKit::PluginInfoStoreClient::~PluginInfoStoreClient): Default destructor.
(WebKit::PluginInfoStoreClient::PluginInfoStoreClient): Default constructor.
(WebKit::PluginInfoStore::setClient): Simple setter.
(WebKit::PluginInfoStore::client): Simple getter.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext): Set self as the client of PluginInfoStore.
(WebKit::WebContext::~WebContext): Clear the client of PluginInfoStore.
(WebKit::WebContext::pluginInfoStoreDidLoadPlugins): Pass the callback to own client.
* UIProcess/WebContext.h:
* UIProcess/WebContextClient.cpp:
(WebKit::WebContextClient::plugInInformationBecameAvailable): Pass the callback to the registered WK callback, if present.
* UIProcess/WebContextClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144672
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 4 Mar 2013 22:05:57 +0000 (22:05 +0000)]
Small BlobResourceHandle cleanup
https://bugs.webkit.org/show_bug.cgi?id=111352
Reviewed by Sam Weinig.
1. Don't use PassRefPtr<BlobStorageData> when ownership is not being passed.
2. Added OVERRIDE to some functions.
3. Added const to ResourceHandle::firstRequest().
* platform/network/BlobRegistryImpl.cpp:
(WebCore::loadResourceSynchronously):
(WebCore::BlobRegistryImpl::createResourceHandle):
(WebCore::BlobRegistryImpl::getBlobDataFromURL):
* platform/network/BlobRegistryImpl.h:
(BlobRegistryImpl):
* platform/network/BlobResourceHandle.cpp:
(WebCore::BlobResourceHandle::createAsync):
(WebCore::BlobResourceHandle::loadResourceSynchronously):
* platform/network/BlobResourceHandle.h:
(BlobResourceHandle):
* platform/network/FormData.cpp:
(WebCore::appendBlobResolved):
* platform/network/ResourceHandle.cpp:
(WebCore::ResourceHandle::firstRequest):
* platform/network/ResourceHandle.h:
(ResourceHandle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144671
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 4 Mar 2013 21:54:52 +0000 (21:54 +0000)]
PDFPlugin: Hook up Services
https://bugs.webkit.org/show_bug.cgi?id=111246
<rdar://problem/
13062672>
Reviewed by Alexey Proskuryakov.
Make the Application->Services menu work when the focused selection is a PDFPlugin.
* Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
* Shared/EditorState.h:
(WebKit::EditorState::EditorState):
(EditorState):
Add isInPlugin property to EditorState.
* UIProcess/API/mac/WKView.mm:
(-[WKView validRequestorForSendType:returnType:]):
If the selection is currently in a Plugin, we only currently have the ability
to retrieve the selection as a plain-text string, so restrict sendType to NSStringPboardType.
* WebProcess/Plugins/PDF/SimplePDFPlugin.h:
* WebProcess/Plugins/Plugin.h:
* WebProcess/Plugins/PluginView.h:
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
Add getStringSelection.
* WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
Add pdfLayerController:didChangeSelection: delegate method.
* WebProcess/Plugins/PDF/PDFPlugin.h:
(PDFPlugin):
Add getStringSelection and notifySelectionChanged.
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(-[WKPDFLayerControllerDelegate pdfLayerController:didChangeSelection:]):
Forward selection change notifications to our PDFPlugin.
(WebKit::PDFPlugin::notifySelectionChanged):
Forward selection change notifications to our WebPage.
(WebKit::PDFPlugin::getStringSelection):
Retrieve PDFLayerController's selection as a plain text string.
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::countFindMatches):
(WebKit::PluginView::findString):
Drive-bys, check for existance and initialization of the plugin before using it.
(WebKit::PluginView::getStringSelection): Added.
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::respondToChangedSelection):
Use didChangeSelection instead of sending the EditorStateChanged message directly.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):
If a plugin is focused and has a selection, return a EditorState that reflects that.
Since PDFs aren't editable (when editing annotations, the plugin doesn't have focus),
I'm not adding support for the editing-related properties when a plugin has focus.
(WebKit::WebPage::focusedPluginViewForFrame):
(WebKit::WebPage::pluginViewForFrame):
Make these class methods instead of static functions so we can use them from
WebPageMac too, instead of duplicating code there.
(WebKit::WebPage::didChangeSelection): Added.
* WebProcess/WebPage/WebPage.h:
Add didChangeSelection and [focused]PluginViewForFrame.
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::getStringSelectionForPasteboard):
Defer to the focused plugin (if it exists) when retrieving the plain-text selection.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144670
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Mon, 4 Mar 2013 21:54:41 +0000 (21:54 +0000)]
Web Inspector: Introduce WebInspector.EventTarget interface for interfaces that dispatch events.
https://bugs.webkit.org/show_bug.cgi?id=111320
Reviewed by Pavel Feldman.
* inspector/front-end/Object.js:
(WebInspector.EventTarget):
(WebInspector.EventTarget.prototype.addEventListener):
(WebInspector.EventTarget.prototype.removeEventListener):
(WebInspector.EventTarget.prototype.removeAllListeners):
(WebInspector.EventTarget.prototype.hasEventListeners):
(WebInspector.EventTarget.prototype.dispatchEventToListeners):
* inspector/front-end/ResourceScriptMapping.js:
* inspector/front-end/UISourceCode.js:
* inspector/front-end/Workspace.js:
(WebInspector.ProjectDelegate.prototype.searchInFileContent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144669
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Mon, 4 Mar 2013 21:47:29 +0000 (21:47 +0000)]
Remove contextInternalContext from JSContextInternal.h
https://bugs.webkit.org/show_bug.cgi?id=111356
Reviewed by Geoffrey Garen.
We don't need it any more since we have globalContextRef in JSContext.
Source/JavaScriptCore:
* API/JSContext.mm:
* API/JSContextInternal.h:
* API/JSValue.mm:
(+[JSValue valueWithBool:inContext:]):
(+[JSValue valueWithDouble:inContext:]):
(+[JSValue valueWithInt32:inContext:]):
(+[JSValue valueWithUInt32:inContext:]):
(+[JSValue valueWithNewObjectInContext:]):
(+[JSValue valueWithNewArrayInContext:]):
(+[JSValue valueWithNewRegularExpressionFromPattern:flags:inContext:]):
(+[JSValue valueWithNewErrorFromMessage:inContext:]):
(+[JSValue valueWithNullInContext:]):
(+[JSValue valueWithUndefinedInContext:]):
(-[JSValue toBool]):
(-[JSValue toDouble]):
(-[JSValue toNumber]):
(-[JSValue toString]):
(-[JSValue toDate]):
(-[JSValue toArray]):
(-[JSValue toDictionary]):
(-[JSValue valueForProperty:]):
(-[JSValue setValue:forProperty:]):
(-[JSValue deleteProperty:]):
(-[JSValue hasProperty:]):
(-[JSValue valueAtIndex:]):
(-[JSValue setValue:atIndex:]):
(-[JSValue isUndefined]):
(-[JSValue isNull]):
(-[JSValue isBoolean]):
(-[JSValue isNumber]):
(-[JSValue isString]):
(-[JSValue isObject]):
(-[JSValue isEqualToObject:]):
(-[JSValue isEqualWithTypeCoercionToObject:]):
(-[JSValue isInstanceOf:]):
(-[JSValue callWithArguments:]):
(-[JSValue constructWithArguments:]):
(-[JSValue invokeMethod:withArguments:]):
(valueToObject):
(objectToValueWithoutCopy):
(objectToValue):
(-[JSValue initWithValue:inContext:]):
(-[JSValue dealloc]):
(-[JSValue description]):
* API/JSWrapperMap.mm:
(createObjectWithCustomBrand):
(-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]):
(-[JSObjCClassInfo wrapperForObject:]):
(-[JSWrapperMap jsWrapperForObject:]):
* API/ObjCCallbackFunction.mm:
(ObjCCallbackFunction::call):
(objCCallbackFunctionForInvocation):
Source/WebKit/mac:
* WebView/WebScriptWorld.mm:
(+[WebScriptWorld scriptWorldForJavaScriptContext:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144668
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tsepez@chromium.org [Mon, 4 Mar 2013 21:44:07 +0000 (21:44 +0000)]
XSSAuditor bypass with --> comment syntax.
https://bugs.webkit.org/show_bug.cgi?id=111349
Reviewed by Adam Barth.
Source/WebCore:
Test: http/tests/security/xssAuditor/open-iframe-src-03.html
* html/parser/XSSAuditor.cpp:
(WebCore::isTerminatingCharacter):
Adds ">" to the list of terminating characters, so that comments of
the form --> end the snippet we seek to match.
LayoutTests:
* http/tests/security/xssAuditor/open-iframe-src-03-expected.txt: Added.
* http/tests/security/xssAuditor/open-iframe-src-03.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144667
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Mon, 4 Mar 2013 21:42:03 +0000 (21:42 +0000)]
Web Inspector: Modal dialogs sometimes lose focus.
https://bugs.webkit.org/show_bug.cgi?id=111317
Reviewed by Pavel Feldman.
setCurrentFocusElement doesn't give focus to an element anymore
if modal glass pane is shown and element is not inside it.
* inspector/front-end/Dialog.js:
(WebInspector.Dialog):
(WebInspector.Dialog.prototype._hide):
* inspector/front-end/InspectorView.js:
(WebInspector.InspectorView.prototype.defaultFocusedElement):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.defaultFocusedElement):
* inspector/front-end/UIUtils.js:
(WebInspector.GlassPane):
(WebInspector.GlassPane.prototype.dispose):
(WebInspector.setCurrentFocusElement):
* inspector/front-end/dialog.css:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144666
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mikhail.pozdnyakov@intel.com [Mon, 4 Mar 2013 21:38:38 +0000 (21:38 +0000)]
[WK2][EFL] Add callbacks to the WKViewClient to handle Web Process crash and relaunch
https://bugs.webkit.org/show_bug.cgi?id=109828
Reviewed by Kenneth Rohde Christiansen.
Source/WebKit2:
Providing WKViewClient with Web Process crash and Web Process relaunch
callbacks brings better design as WebView should not be aware of
EFL-specific code handling the corresponding events.
The implementation of the mentioned Web Process callbacks was also added.
* UIProcess/API/C/efl/WKView.cpp:
(WKViewSetThemePath):
* UIProcess/API/C/efl/WKView.h:
* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::webProcessCrashed):
(WebKit):
(WebKit::ViewClientEfl::webProcessDidRelaunch):
(WebKit::ViewClientEfl::ViewClientEfl):
* UIProcess/efl/ViewClientEfl.h:
(ViewClientEfl):
* UIProcess/efl/WebView.cpp:
(WebKit::WebView::setThemePath):
Accepts WTF::String instead of WKStringRef as it is
more appropriate for C++ API implementation class.
(WebKit::WebView::processDidCrash):
(WebKit::WebView::didRelaunchProcess):
* UIProcess/efl/WebView.h:
(WebView):
* UIProcess/efl/WebViewClient.cpp:
(WebKit::WebViewClient::webProcessCrashed):
(WebKit):
(WebKit::WebViewClient::webProcessDidRelaunch):
* UIProcess/efl/WebViewClient.h:
Tools:
Added API test for newly added Web Process crash and Web Process relaunch WKViewClient
callbacks.
* TestWebKitAPI/CMakeLists.txt:
Tests located in 'TestWebKitAPI/Tests/WebKit2' subdirectories are also
considered.
* TestWebKitAPI/PlatformEfl.cmake:
* TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Added.
(TestWebKitAPI):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::webProcessCrashed):
(TestWebKitAPI::webProcessDidRelaunch):
(TestWebKitAPI::setViewClient):
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144664
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Mon, 4 Mar 2013 21:16:49 +0000 (21:16 +0000)]
Unreviewed. AppleWin build fix.
* WebKit.vcxproj/FeatureDefines.props:
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
* WebCore.vcxproj/WebCore.vcxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144663
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
l.gombos@samsung.com [Mon, 4 Mar 2013 21:11:33 +0000 (21:11 +0000)]
JSC_OBJC_API_ENABLED should be removed from FeatureDefines.h
https://bugs.webkit.org/show_bug.cgi?id=111269
Reviewed by Mark Hahnenberg.
Source/WebKit/mac:
Include JavaScriptCore/JSBase.h for the definition of JSC_OBJC_API_ENABLED.
* WebView/WebDelegateImplementationCaching.h:
Source/WTF:
JSC_OBJC_API_ENABLED flag was added to FeatureDefines.h (r143637)
so that it could be used in WebCore.exp.in to determine whether
or not we should be exporting certain symbols based on whether
the WebKit-related portion of the JSC ObjC API was enabled.
It turned out conditionally including certain symbols didn't
work when building fat binaries, so it's not even necessary any more.
* wtf/FeatureDefines.h: Remove JSC_OBJC_API_ENABLED.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144662
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 21:02:07 +0000 (21:02 +0000)]
[v8] add isolate parameter to heap statistics calls
https://bugs.webkit.org/show_bug.cgi?id=111308
Patch by Dan Carney <dcarney@google.com> on 2013-03-04
Reviewed by Jochen Eisinger.
No new tests.
* bindings/v8/ScriptGCEvent.cpp:
(WebCore::ScriptGCEvent::getHeapSize):
(WebCore::ScriptGCEvent::getUsedHeapSize):
* bindings/v8/V8AdaptorFunction.cpp:
(WebCore::V8AdaptorFunction::getTemplate):
* bindings/v8/V8GCController.cpp:
(WebCore::V8GCController::checkMemoryUsage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144661
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jochen@chromium.org [Mon, 4 Mar 2013 20:42:13 +0000 (20:42 +0000)]
[chromium] remove deprecated hyphenation methods from Platform
https://bugs.webkit.org/show_bug.cgi?id=111101
Reviewed by Adam Barth.
Source/Platform:
* chromium/public/Platform.h:
(Platform):
Source/WebCore:
* platform/text/chromium/Hyphenation.cpp:
(WebCore::canHyphenate):
(WebCore::lastHyphenLocation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144660
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 4 Mar 2013 20:33:42 +0000 (20:33 +0000)]
Complete the plug-in URL string before sending it to the UI process
https://bugs.webkit.org/show_bug.cgi?id=111355
<rdar://problem/
13326713>
Reviewed by Andreas Kling.
If the URL is not absolute, we won't be able to find it by path extension in the plug-in info store.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::unavailablePluginButtonClicked):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144659
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Mon, 4 Mar 2013 20:07:05 +0000 (20:07 +0000)]
AX: Upstream iOS Accessibility DumpRenderTree changes
https://bugs.webkit.org/show_bug.cgi?id=111220
Reviewed by David Kilzer.
Upstream the iOS changes for accessibility in DumpRenderTree.
* DumpRenderTree/AccessibilityUIElement.cpp:
(headerElementAtIndexCallback):
(linkedElementCallback):
(elementsForRangeCallback):
(increaseTextSelectionCallback):
(decreaseTextSelectionCallback):
(assistiveTechnologySimulatedFocusCallback):
(stringForSelectionCallback):
(getIPhoneLabelCallback):
(getIPhoneHintCallback):
(getIPhoneValueCallback):
(getIPhoneIdentifierCallback):
(getIPhoneTraitsCallback):
(getIPhoneIsElementCallback):
(getIPhoneElementTextPositionCallback):
(getIPhoneElementTextLengthCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
(AccessibilityUIElement):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/ios: Added.
* DumpRenderTree/ios/AccessibilityControllerIOS.mm: Added.
(AccessibilityController::AccessibilityController):
(AccessibilityController::~AccessibilityController):
(AccessibilityController::elementAtPoint):
(AccessibilityController::focusedElement):
(AccessibilityController::rootElement):
(findAccessibleObjectById):
(AccessibilityController::accessibleElementById):
(AccessibilityController::setLogFocusEvents):
(AccessibilityController::setLogScrollingStartEvents):
(AccessibilityController::setLogValueChangeEvents):
(AccessibilityController::setLogAccessibilityEvents):
(AccessibilityController::addNotificationListener):
(AccessibilityController::removeNotificationListener):
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm: Added.
(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::~AccessibilityUIElement):
(concatenateAttributeAndValue):
(AccessibilityUIElement::iphoneLabel):
(AccessibilityUIElement::iphoneHint):
(AccessibilityUIElement::iphoneValue):
(AccessibilityUIElement::iphoneIdentifier):
(AccessibilityUIElement::iphoneTraits):
(AccessibilityUIElement::iphoneIsElement):
(AccessibilityUIElement::iphoneElementTextPosition):
(AccessibilityUIElement::iphoneElementTextLength):
(AccessibilityUIElement::url):
(AccessibilityUIElement::x):
(AccessibilityUIElement::y):
(AccessibilityUIElement::width):
(AccessibilityUIElement::height):
(AccessibilityUIElement::clickPointX):
(AccessibilityUIElement::clickPointY):
(AccessibilityUIElement::getChildren):
(AccessibilityUIElement::getChildrenWithRange):
(AccessibilityUIElement::childrenCount):
(AccessibilityUIElement::elementAtPoint):
(AccessibilityUIElement::indexOfChild):
(AccessibilityUIElement::getChildAtIndex):
(AccessibilityUIElement::headerElementAtIndex):
(AccessibilityUIElement::linkedElement):
(AccessibilityUIElement::linkedUIElementAtIndex):
(AccessibilityUIElement::ariaOwnsElementAtIndex):
(AccessibilityUIElement::ariaFlowToElementAtIndex):
(AccessibilityUIElement::disclosedRowAtIndex):
(AccessibilityUIElement::selectedRowAtIndex):
(AccessibilityUIElement::rowAtIndex):
(AccessibilityUIElement::titleUIElement):
(AccessibilityUIElement::parentElement):
(AccessibilityUIElement::disclosedByRow):
(AccessibilityUIElement::increaseTextSelection):
(AccessibilityUIElement::decreaseTextSelection):
(AccessibilityUIElement::stringForSelection):
(AccessibilityUIElement::stringForRange):
(AccessibilityUIElement::attributedStringForRange):
(AccessibilityUIElement::attributedStringRangeIsMisspelled):
(AccessibilityUIElement::elementsForRange):
(AccessibilityUIElement::getLinkedUIElements):
(AccessibilityUIElement::getDocumentLinks):
(AccessibilityUIElement::attributesOfLinkedUIElements):
(AccessibilityUIElement::attributesOfDocumentLinks):
(AccessibilityUIElement::attributesOfChildren):
(AccessibilityUIElement::allAttributes):
(AccessibilityUIElement::stringAttributeValue):
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
(AccessibilityUIElement::boolAttributeValue):
(AccessibilityUIElement::isAttributeSettable):
(AccessibilityUIElement::isAttributeSupported):
(AccessibilityUIElement::parameterizedAttributeNames):
(AccessibilityUIElement::role):
(AccessibilityUIElement::subrole):
(AccessibilityUIElement::roleDescription):
(AccessibilityUIElement::title):
(AccessibilityUIElement::description):
(AccessibilityUIElement::orientation):
(AccessibilityUIElement::stringValue):
(AccessibilityUIElement::language):
(AccessibilityUIElement::helpText):
(AccessibilityUIElement::intValue):
(AccessibilityUIElement::minValue):
(AccessibilityUIElement::maxValue):
(AccessibilityUIElement::valueDescription):
(AccessibilityUIElement::insertionPointLineNumber):
(AccessibilityUIElement::isEnabled):
(AccessibilityUIElement::isRequired):
(AccessibilityUIElement::isFocused):
(AccessibilityUIElement::isSelected):
(AccessibilityUIElement::isExpanded):
(AccessibilityUIElement::isChecked):
(AccessibilityUIElement::hierarchicalLevel):
(AccessibilityUIElement::ariaIsGrabbed):
(AccessibilityUIElement::ariaDropEffects):
(AccessibilityUIElement::lineForIndex):
(AccessibilityUIElement::boundsForRange):
(AccessibilityUIElement::attributesOfColumnHeaders):
(AccessibilityUIElement::attributesOfRowHeaders):
(AccessibilityUIElement::attributesOfColumns):
(AccessibilityUIElement::attributesOfRows):
(AccessibilityUIElement::attributesOfVisibleCells):
(AccessibilityUIElement::attributesOfHeader):
(AccessibilityUIElement::rowCount):
(AccessibilityUIElement::columnCount):
(AccessibilityUIElement::indexInTable):
(AccessibilityUIElement::rowIndexRange):
(AccessibilityUIElement::columnIndexRange):
(AccessibilityUIElement::cellForColumnAndRow):
(AccessibilityUIElement::selectedTextRange):
(AccessibilityUIElement::assistiveTechnologySimulatedFocus):
(AccessibilityUIElement::setSelectedTextRange):
(AccessibilityUIElement::increment):
(AccessibilityUIElement::decrement):
(AccessibilityUIElement::showMenu):
(AccessibilityUIElement::press):
(AccessibilityUIElement::accessibilityValue):
(AccessibilityUIElement::documentEncoding):
(AccessibilityUIElement::documentURI):
(_accessibilityNotificationCallback):
(AccessibilityUIElement::addNotificationListener):
(AccessibilityUIElement::removeNotificationListener):
(AccessibilityUIElement::isFocusable):
(AccessibilityUIElement::isSelectable):
(AccessibilityUIElement::isMultiSelectable):
(AccessibilityUIElement::isSelectedOptionActive):
(AccessibilityUIElement::isVisible):
(AccessibilityUIElement::isOffScreen):
(AccessibilityUIElement::isCollapsed):
(AccessibilityUIElement::isIgnored):
(AccessibilityUIElement::hasPopup):
(AccessibilityUIElement::takeFocus):
(AccessibilityUIElement::takeSelection):
(AccessibilityUIElement::addSelection):
(AccessibilityUIElement::removeSelection):
(AccessibilityUIElement::uiElementForSearchPredicate):
(AccessibilityUIElement::numberAttributeValue):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144657
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Mon, 4 Mar 2013 20:06:55 +0000 (20:06 +0000)]
Use initialization from literal for MediaFeatureNames
https://bugs.webkit.org/show_bug.cgi?id=111283
Reviewed by Andreas Kling.
* css/MediaFeatureNames.cpp:
(WebCore::MediaFeatureNames::init):
Initialization from literal is faster and use less memory. The names are
defined statically in MediaFeatureNames.h.
Also use the NotNull placement new to avoid a branch on silly allocators.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144656
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 19:45:56 +0000 (19:45 +0000)]
(tests) flexbox/resources.css should use unprefixed properties, for firefox
https://bugs.webkit.org/show_bug.cgi?id=111010
Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-04
Reviewed by Tony Chang.
Search & replace to remove -moz- prefixes, as per
https://developer.mozilla.org/en-US/docs/CSS/Using_CSS_flexible_boxes:
"Gecko implementation is unprefixed (and is no longer behind a
preference as of Firefox 20)"
* css3/flexbox/resources/flexbox.css:
(.flexbox):
(.inline-flexbox):
(.flex-none):
(.flex-auto):
(.flex-one):
(.row):
(.row-reverse):
(.column):
(.column-reverse):
(.wrap):
(.wrap-reverse):
(.align-content-flex-start):
(.align-content-flex-end):
(.align-content-center):
(.align-content-space-between):
(.align-content-space-around):
(.align-content-stretch):
(.align-items-flex-start):
(.align-items-flex-end):
(.align-items-center):
(.align-items-baseline):
(.align-items-stretch):
(.align-self-auto):
(.align-self-flex-start):
(.align-self-flex-end):
(.align-self-center):
(.align-self-baseline):
(.align-self-stretch):
(.justify-content-flex-start):
(.justify-content-flex-end):
(.justify-content-center):
(.justify-content-space-between):
(.justify-content-space-around):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144655
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
skyostil@chromium.org [Mon, 4 Mar 2013 19:44:03 +0000 (19:44 +0000)]
[chromium] Add ability to wait on async upload completion
https://bugs.webkit.org/show_bug.cgi?id=110987
Reviewed by James Robinson.
Add a graphics context entry point for waiting on asynchronous upload
completion. The wait is performed server-side so the call is
non-blocking.
See https://codereview.chromium.org/
12210129/
* chromium/public/WebGraphicsContext3D.h:
(WebKit::WebGraphicsContext3D::waitAsyncTexImage2DCHROMIUM):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144654
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 19:32:03 +0000 (19:32 +0000)]
[GTK] Some WebKit2 GTK+ unit tests are failing in 32 bits bot
https://bugs.webkit.org/show_bug.cgi?id=111346
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-04
Reviewed by Martin Robinson.
The problem is the use of a temporary CString object in the macro
g_assert_cmpstr. It's a common mistake because we usually forget
that g_assert_cmpstr is not a function but a macro, that expands
to multiple lines. This patch adds a new macro ASSERT_CMP_CSTRING
with the same implementation that g_assert_cmpstr, but using
CStrings instead of const char*. It fixes all the cases where a
temporary CString was used in g_assert_cmpstr, and uses the new
macro also for the cases where we were caching the CString just
for g_assert_cmpstr.
* UIProcess/API/gtk/tests/TestDownloads.cpp:
(testDownloadRemoteFile):
* UIProcess/API/gtk/tests/TestInspectorServer.cpp:
(testInspectorServerPageList):
* UIProcess/API/gtk/tests/TestLoaderClient.cpp:
* UIProcess/API/gtk/tests/TestMain.h:
* UIProcess/API/gtk/tests/TestResources.cpp:
* UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
(testGetFaviconURI):
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(assertThatUserAgentIsSentInHeaders):
(testWebKitSettingsUserAgent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144652
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jsbell@chromium.org [Mon, 4 Mar 2013 19:30:04 +0000 (19:30 +0000)]
[V8] Unreviewed. Rebaselined run-bindings-tests following r144617
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::ConfigureV8Float64ArrayTemplate):
(WebCore::V8Float64Array::GetTemplate):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::TestActiveDOMObjectV8Internal::TestActiveDOMObjectDomainSafeFunctionSetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):
(WebCore::V8TestCustomNamedGetter::GetTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::ConfigureV8TestEventConstructorTemplate):
(WebCore::V8TestEventConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::ConfigureV8TestEventTargetTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::ConfigureV8TestExceptionTemplate):
(WebCore::V8TestException::GetTemplate):
* bindings/scripts/test/V8/V8TestException.h:
(V8TestException):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::ConfigureV8TestInterfaceTemplate):
(WebCore::V8TestInterface::GetTemplate):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
(WebCore::V8TestMediaQueryListListener::GetTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):
(WebCore::ConfigureV8TestNamedConstructorTemplate):
(WebCore::V8TestNamedConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructorConstructor):
(V8TestNamedConstructor):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::ConfigureV8TestNodeTemplate):
(WebCore::V8TestNode::GetTemplate):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::GetTemplate):
(WebCore::V8TestObj::installPerContextPrototypeProperties):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
(WebCore::V8TestOverloadedConstructors::GetTemplate):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
(V8TestOverloadedConstructors):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
* bindings/scripts/test/V8/V8TestTypedefs.cpp:
(WebCore::ConfigureV8TestTypedefsTemplate):
(WebCore::V8TestTypedefs::GetTemplate):
* bindings/scripts/test/V8/V8TestTypedefs.h:
(V8TestTypedefs):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144651
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Mon, 4 Mar 2013 19:04:27 +0000 (19:04 +0000)]
Unreviewed, rolling out r144562.
http://trac.webkit.org/changeset/144562
https://bugs.webkit.org/show_bug.cgi?id=85642
Caused KeyPadInsert faluires in webkit_unittests
Source/WebCore:
* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):
Source/WebKit/chromium:
* WebKit.gypi:
* tests/KeyCodeConversionTestGtk.cpp: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144649
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 18:59:31 +0000 (18:59 +0000)]
getComputedStyle not implemented for -webkit-columns shorthand
https://bugs.webkit.org/show_bug.cgi?id=111236
Patch by Uday Kiran <udaykiran@motorola.com> on 2013-03-04
Reviewed by Alexis Menard.
Source/WebCore:
Implement getComputedStyle for -webkit-columns shorthand.
Test: fast/css/getComputedStyle/getComputedStyle-webkit-columns-shorthand.html
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
LayoutTests:
Add test to check getComputedStyle for -webkit-columns.
* fast/css/getComputedStyle/getComputedStyle-webkit-columns-shorthand-expected.txt: Added.
* fast/css/getComputedStyle/getComputedStyle-webkit-columns-shorthand.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144647
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Mon, 4 Mar 2013 18:56:53 +0000 (18:56 +0000)]
Add support for 8 bit TextRuns on Chromium Linux & Mac
https://bugs.webkit.org/show_bug.cgi?id=99393
Reviewed by Eric Seidel.
Source/WebCore:
Adding support for 8 bit TextRuns for Mac and Linux Chromium. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.
Windows has platfom assumptions that TextRuns are 16 bit that need to be addressed
before enabling this optimization.
No new tests. No change in behavior.
(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):
Source/WebKit/chromium:
Enabling 8 bit text runs for Linux and Mac platforms.
* features.gypi:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144646
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alexis@webkit.org [Mon, 4 Mar 2013 18:49:29 +0000 (18:49 +0000)]
transition-property property and transition shorthand property doesn't accept "all, all".
https://bugs.webkit.org/show_bug.cgi?id=111201
Reviewed by Simon Fraser.
Source/WebCore:
Relax the parsing of transition-property to allow all, all as a value.
It is not very useful per say but it is possible by the spec and we
align with Firefox, IE and Opera.
Test: LayoutTests/transitions/transitions-parsing.html
* css/CSSParser.cpp:
(WebCore::CSSParser::parseAnimationProperty):
LayoutTests:
Updated the tests to cover the bug.
* transitions/transitions-parsing-expected.txt:
* transitions/transitions-parsing.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144644
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
peter@chromium.org [Mon, 4 Mar 2013 18:34:15 +0000 (18:34 +0000)]
[Chromium] Add a new dependency on jsr-305 for Android
https://bugs.webkit.org/show_bug.cgi?id=111340
Unreviewed build fix; new Android dependency. This is
currently breaking gyp generation on the Android bots.
* DEPS:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144643
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 18:23:18 +0000 (18:23 +0000)]
Don't apply page scale to clipRect if applyPageScaleFactorInCompositor is set to true
https://bugs.webkit.org/show_bug.cgi?id=111229
Patch by Min Qin <qinmin@chromium.org> on 2013-03-04
Reviewed by Simon Fraser.
If applyPageScaleFactorInCompositor is set to true, webcore should use css coordinates.
As a result, we shouldn't apply page scale to clipRect in RenderLayerCompositor.
Layout tests set the flag to false, so we don't have anything to test against.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144642
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Mon, 4 Mar 2013 17:46:51 +0000 (17:46 +0000)]
Add simple vector traits for JSC::Identifier.
<http://webkit.org/b/111323>
Reviewed by Geoffrey Garen.
Identifiers are really just Strings, giving them simple vector traits makes
Vector move them with memcpy() instead of churning the refcounts.
* runtime/Identifier.h:
(WTF):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144641
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 4 Mar 2013 17:41:24 +0000 (17:41 +0000)]
[BlackBerry] Upstream selection start animation.
https://bugs.webkit.org/show_bug.cgi?id=111335
Patch by Iris Wu <shuwu@rim.com> on 2013-03-04
Reviewed by Rob Buis.
PR 219960
To indicate selection starts, we draw an overlay rect larger than
the selected word at the start of selection. Then shrink it down
to the actual size.
Reviewed Internally by Genevieve Mak and Andrew Lo and Mike Fenton.
* Api/WebAnimation.cpp:
(BlackBerry::WebKit::WebAnimation::shrinkAnimation):
(WebKit):
* Api/WebAnimation.h:
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPage::selectionHighlight):
(WebKit):
* Api/WebPage.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* Api/WebTapHighlight.h:
* WebKitSupport/DefaultTapHighlight.cpp:
(WebKit):
(BlackBerry::WebKit::shrinkAnimationName):
(BlackBerry::WebKit::DefaultTapHighlight::draw):
* WebKitSupport/DefaultTapHighlight.h:
(DefaultTapHighlight):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::textGranularityFromSelectionExpansionType):
(WebKit):
(BlackBerry::WebKit::SelectionHandler::selectNodeIfFatFingersResultIsLink):
(BlackBerry::WebKit::SelectionHandler::selectAtPoint):
* WebKitSupport/SelectionHandler.h:
(SelectionHandler):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144640
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vollick@chromium.org [Mon, 4 Mar 2013 17:29:20 +0000 (17:29 +0000)]
ASSERTION FAILED: m_clipRectsCache->m_respectingOverflowClip[clipRectsType] == (clipRectsContext.respectOverflowClip == RespectOverflowClip) in RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=108257
Reviewed by David Hyatt.
Source/WebCore:
With composited scrolling we paint both with and without respecting
overflow clip. To prevent collisions in the clip cache, and to prevent
throwing away cached clips unnecessarily, we keep two copies of the
clip cache -- one for when overflow clip is respected, and one for
when it isn't.
No new tests. Covered by existing tests (in debug):
compositing/overflow/automatically-opt-into-composited-scrolling.html
compositing/overflow/composited-scrolling-creates-a-stacking-container.html
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateClipRects):
No longer asserts that our 'respect overflow clip' status is
consistent. It also gets and sets the clip cache using the clip rect
context rather than just the clip rect type.
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::clearClipRects):
(WebCore::ClipRectsCache::ClipRectsCache):
(WebCore::ClipRectsCache::getClipRects):
(WebCore::ClipRectsCache::setClipRects):
(WebCore::ClipRectsCache::getIndex):
Get and set the cached clip rects using the context rather than
type.
(WebCore::RenderLayer::clipRects):
We now cache twice as many clip rects.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
ShouldRespectOverflowClip was moved out of RenderLayer.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateClipRects):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::clearClipRects):
* rendering/RenderLayer.h:
(WebCore::ClipRectsCache::ClipRectsCache):
(WebCore::ClipRectsCache::getClipRects):
(WebCore::ClipRectsCache::setClipRects):
(ClipRectsCache):
(WebCore::ClipRectsCache::getIndex):
(WebCore::RenderLayer::clipRects):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
LayoutTests:
* platform/efl-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt-5.0-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144639
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
acolwell@chromium.org [Mon, 4 Mar 2013 17:24:42 +0000 (17:24 +0000)]
Remove unused return value from SourceBufferPrivate::abort() and WebSourceBuffer::abort().
https://bugs.webkit.org/show_bug.cgi?id=111195
Reviewed by Adam Barth.
Source/WebCore:
No new tests. No user visible behavior changed.
* platform/graphics/SourceBufferPrivate.h:
(SourceBufferPrivate):
Source/WebKit/chromium:
* public/WebSourceBuffer.h:
(WebSourceBuffer):
* src/SourceBufferPrivateImpl.cpp:
(WebKit::SourceBufferPrivateImpl::abort):
* src/SourceBufferPrivateImpl.h:
(SourceBufferPrivateImpl):
* src/WebMediaPlayerClientImpl.cpp:
(WebSourceBufferImpl):
(WebKit::WebSourceBufferImpl::abort):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144638
268f45cc-cd09-0410-ab3c-
d52691b4dbfc