WebKit-https.git
8 years agoSafari warns that it needs to resend the form in an iFrame when going back
jonlee@apple.com [Wed, 9 May 2012 00:57:03 +0000 (00:57 +0000)]
Safari warns that it needs to resend the form in an iFrame when going back
https://bugs.webkit.org/show_bug.cgi?id=82658
<rdar://problem/11292558>

Reviewed by Darin Adler.

Source/WebCore:

Test: http/tests/loading/post-in-iframe-with-back-navigation.html

* WebCore.exp.in: Add _wkCFURLRequestAllowAllPostCaching.
* platform/mac/WebCoreSystemInterface.h: Add wkCFURLRequestAllowAllPostCaching.
* platform/mac/WebCoreSystemInterface.mm: Add wkCFURLRequestAllowAllPostCaching.
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdatePlatformRequest): Set the bit to cache all POST responses.
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest): Set the bit to cache all POST responses.

Source/WebKit/mac:

* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Add wkCFURLRequestAllowAllPostCaching.

Source/WebKit2:

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Add wkCFURLRequestAllowAllPostCaching.

WebKitLibraries:

* WebKitSystemInterface.h:
* libWebKitSystemInterfaceLeopard.a:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceSnowLeopard.a:

LayoutTests:

Add new test which navigates a series of pages in an iframe. Each navigation is a POST.
At the third page we click on a back link, and expect to see stale POST data.

* http/tests/loading/post-in-iframe-with-back-navigation-expected.txt: Added.
* http/tests/loading/post-in-iframe-with-back-navigation.html: Added.
* http/tests/loading/resources/post-in-iframe-with-back-navigation-page-1.php: Added.
* http/tests/loading/resources/post-in-iframe-with-back-navigation-page-2.php: Added.
* http/tests/loading/resources/post-in-iframe-with-back-navigation-page-3.php: Added.
* http/tests/resources/js-test-post.js: Added. Copied from fast/js/resources since it is
inaccessible to the test server.
* http/tests/resources/js-test-pre.js: Added. Copied from fast/js/resources since it is
inaccessible to the test server.

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

8 years ago[chromium] Reflections with masks should not occlude
danakj@chromium.org [Wed, 9 May 2012 00:54:45 +0000 (00:54 +0000)]
[chromium] Reflections with masks should not occlude
https://bugs.webkit.org/show_bug.cgi?id=85927

Reviewed by James Robinson.

Source/WebCore:

When a surface does not have a mask, we make both it and its reflection
occlude the things below them. However, if the reflection has a mask
applied to it, then we should not consider it as occluding.

Adds replicaHasMask() to the render surface classes so we can test if
the mask is present.

Unit Tests: CCOcclusionTrackerTestReplicaWithMask

* platform/graphics/chromium/RenderSurfaceChromium.cpp:
(WebCore::RenderSurfaceChromium::hasMask):
This is unusued right now, but will allow us to remove a FIXME from
CCOcclusionTracker::finishedTargetRenderSurface().
(WebCore):
(WebCore::RenderSurfaceChromium::replicaHasMask):
* platform/graphics/chromium/RenderSurfaceChromium.h:
(RenderSurfaceChromium):
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::::leaveToTargetRenderSurface):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::hasMask):
This is unusued right now, but will allow us to remove a FIXME from
CCOcclusionTracker::finishedTargetRenderSurface().
(WebCore):
(WebCore::CCRenderSurface::replicaHasMask):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(CCRenderSurface):

Source/WebKit/chromium:

* tests/CCOcclusionTrackerTest.cpp:
(WebKitTests::CCOcclusionTrackerTest::TearDown):
(WebKitTests::CCOcclusionTrackerTest::createMaskLayer):
(CCOcclusionTrackerTest):
(WebKitTests::CCOcclusionTrackerTest::setMask):
(CCOcclusionTrackerTestReplicaWithMask):
(WebKitTests::CCOcclusionTrackerTestReplicaWithMask::runMyTest):
(WebKitTests):

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

8 years agoAdd stylesheet inheritance support to IFRAME_SEAMLESS
eric@webkit.org [Wed, 9 May 2012 00:52:08 +0000 (00:52 +0000)]
Add stylesheet inheritance support to IFRAME_SEAMLESS
https://bugs.webkit.org/show_bug.cgi?id=85914

Reviewed by Ojan Vafai.

Source/WebCore:

This work is already guarded by IFRAME_SEAMLESS, as
Document::shouldDisplaySeamlesslyWithParent always returns false
when IFRAME_SEAMLESS is off.

This makes the child document use all author stylesheets from all parent documents,
per the seamless spec:
http://www.whatwg.org/specs/web-apps/current-work/#attr-iframe-seamless

This support is slightly inefficient as every time a sheet is added
to a parent document, the child document must do a full style selector recalc.
Normally author sheet additions have a fast-path which avoids the full selector recalc,
but such is not possible in the seamless case as we're inserting the parents sheets
earlier in the child's cascade (instead of just appending them to the end of the list).

The test covers both the static inheritance as well as addition of a stylesheet
to the parent and testing that it caused a recalc of the child.

Covered by fast/frames/seamless/seamless-css-cascade.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::addStylesheetsFromSeamlessParents):
(WebCore):
* css/StyleResolver.h:
(StyleResolver):
* dom/Document.cpp:
(WebCore::Document::seamlessParentUpdatedStylesheets):
(WebCore):
(WebCore::Document::notifySeamlessChildDocumentsOfStylesheetUpdate):
(WebCore::Document::updateActiveStylesheets):
* dom/Document.h:
(Document):

LayoutTests:

Update the results (for both static and dynamic inheritance)
now that this support is landed.

* fast/frames/seamless/seamless-css-cascade-expected.txt:

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

8 years ago[EFL] Pass a WTF::String directly from DRT to ewebkit when possible
rakuco@webkit.org [Wed, 9 May 2012 00:42:52 +0000 (00:42 +0000)]
[EFL] Pass a WTF::String directly from DRT to ewebkit when possible
https://bugs.webkit.org/show_bug.cgi?id=84634

Reviewed by Gustavo Noronha Silva.

Drop unnecessary const char* -> WTF::String conversions by
creating String objects directly in LayoutTestController out of
JSStringRef's and passing them to DumpRenderTreeSupportEfl.

Source/WebKit/efl:

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::setValueForUser):
(DumpRenderTreeSupportEfl::addUserStyleSheet):
(DumpRenderTreeSupportEfl::findString):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::queueLoad):
(LayoutTestController::setValueForUser):
(LayoutTestController::findString):
(LayoutTestController::addUserStyleSheet):

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

8 years agoCan't scroll PDF in subframe
andersca@apple.com [Wed, 9 May 2012 00:24:15 +0000 (00:24 +0000)]
Can't scroll PDF in subframe
https://bugs.webkit.org/show_bug.cgi?id=85932
<rdar://problem/11405527>

Reviewed by Sam Weinig.

* WebProcess/Plugins/PDF/BuiltInPDFView.h:
* WebProcess/Plugins/PDF/BuiltInPDFView.mm:
(WebKit::BuiltInPDFView::updateScrollbars):
Trigger a layout when scrollbars come and go so the non fast scrollable region gets recomputed.

(WebKit::BuiltInPDFView::scrollableAreaBoundingBox):
Implement this by calling out to the PluginView.

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

8 years ago[CMake] FindGStreamer: Fix the build with static WebCore.
rakuco@webkit.org [Wed, 9 May 2012 00:02:30 +0000 (00:02 +0000)]
[CMake] FindGStreamer: Fix the build with static WebCore.
https://bugs.webkit.org/show_bug.cgi?id=85930

Reviewed by Daniel Bates.

.:

Building WebCore statically was failing because files in
WebCore/platform/gstreamer when ENABLE_VIDEO was set required
gstreamer-base, which was not being linked to after r116453.

Fix that by looking for gstreamer-base, requiring and linking
against it if GStreamer is used.

* Source/cmake/FindGStreamer.cmake:

Source/WebCore:

No new tests, build fix.

Building WebCore statically was failing because files in
WebCore/platform/gstreamer when ENABLE_VIDEO was set required
gstreamer-base, which was not being linked to after r116453.

Fix that by looking for gstreamer-base, requiring and linking
against it if GStreamer is used.

* PlatformEfl.cmake: Link to GSTREAMER_LIBRARIES and
GSTREAMER_BASE_LIBRARIES, and include GSTREAMER_INCLUDE_DIRS and
GSTREAMER_BASE_INCLUDE_DIRS.

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

8 years ago[WK2] Push wheel events if there are too many in queue
jonlee@apple.com [Tue, 8 May 2012 23:50:52 +0000 (23:50 +0000)]
[WK2] Push wheel events if there are too many in queue
https://bugs.webkit.org/show_bug.cgi?id=85747
<rdar://problem/11390790>

Reviewed by Anders Carlsson.

It is possible that a whole bunch of messages added to the message queue, or a series
of long-running messages, cause unresponsiveness. The reason for this is that we have
a scroll event waiting for acknowledgment from the web process before it sends the next
event. And in the time between the user has scrolled, causing a large backlog of scroll
events to be held in the UI process.

We should push new scroll events if the queue accumulates too many of them.

* UIProcess/WebPageProxy.h: The vector m_currentlyProcessedWheelEvents used to hold the
series of wheel events that were coalesced and sent as a single wheel event to the web
process. When the web process acknowledges this with didReceiveEvent, the UI process
cleared that vector, then tried to coalesce the next wheel event to send. Now we might have
multiple sets of coalesced wheel events that we are sending to the web process. To keep
track of these sets, m_currentlyProcessedWheelEvents now is a queue of Vectors.
(WebPageProxy):
* UIProcess/WebPageProxy.cpp: Add new constant wheelEventQueueSizeThreshold representing
the threshold of scroll events to look for before we start pushing events.
(WebKit::canCoalesce): Move static function so that handleWheelEvent() has access. No changes.
(WebKit::coalesce): Move static function so that handleWheelEvent() has access. No changes.
(WebKit::coalescedWheelEvent): Move static function so that handleWheelEvent() has access. No changes.
(WebKit::WebPageProxy::handleWheelEvent): If we are currently waiting for acknowledgment
from the web process that a wheel event has been handled, we add it to the queue. We
check to see that the queue size is within our threshold before we return early. Otherwise
we will start pushing events in the queue. Refactor the rest of the function into
processNextQueuedWheelEvent() and sendWheelEvent(). If we are not currently waiting for
acknowledgment, nor have events in the queue, then we send the current wheel event.
(WebKit::WebPageProxy::processNextQueuedWheelEvent): Try to coalesce events based on the
wheel event at the head of the queue, and send that event to the web process.
(WebKit::WebPageProxy::sendWheelEvent): Refactored from handleWheelEvent().
(WebKit::WebPageProxy::didReceiveEvent): Instead of clearing m_currentlyProcessedWheelEvents,
which contained the set of one coalesced wheel event, we pull the head Vector, which
contains the same set of events. Refactor to use processNextQueuedWheelEvent().

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

8 years agoJavaScriptAudioNode should not ASSERT if number of input channels is 0
commit-queue@webkit.org [Tue, 8 May 2012 23:24:04 +0000 (23:24 +0000)]
JavaScriptAudioNode should not ASSERT if number of input channels is 0
https://bugs.webkit.org/show_bug.cgi?id=85818

Patch by Raymond Toy <rtoy@google.com> on 2012-05-08
Reviewed by Eric Seidel.

Source/WebCore:

Test: webaudio/javascriptaudionode-zero-input-channels.html

* Modules/webaudio/JavaScriptAudioNode.cpp:
(WebCore::JavaScriptAudioNode::process): Update buffersAreGood.
(WebCore::JavaScriptAudioNode::fireProcessEvent): Remove ASSERT.

LayoutTests:

* webaudio/javascriptaudionode-zero-input-channels-expected.txt: Added.
* webaudio/javascriptaudionode-zero-input-channels.html: Added.

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

8 years ago[EFL][DRT] EventSender needs implementation of leapForward function
commit-queue@webkit.org [Tue, 8 May 2012 23:21:43 +0000 (23:21 +0000)]
[EFL][DRT] EventSender needs implementation of leapForward function
https://bugs.webkit.org/show_bug.cgi?id=83486

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-08
Reviewed by Eric Seidel.

Tools:

Implemented leapForward function in Efl's DRT. This function is required
to delay and queue event execution and simulate real user behavior.

* DumpRenderTree/efl/EventSender.cpp:
(DelayedEvent):
(MouseEventInfo::MouseEventInfo):
(MouseEventInfo):
(sendClick):
(mouseDownCallback):
(mouseUpCallback):
(mouseMoveToCallback):
(leapForwardCallback):
(mouseScrollByCallback):
(feedOrQueueMouseEvent):
(feedMouseEvent):
(feedQueuedMouseEvents):

LayoutTests:

Unskipping few tests that were failing due to the missing leapForward function
Added EFL specific test result, since EFL doesnt support 2D wheel events

* platform/efl/Skipped:
* platform/efl/fast/events/platform-wheelevent-in-scrolling-div-expected.txt: Added.

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

8 years agoRegion reads past end of spans
danakj@chromium.org [Tue, 8 May 2012 23:01:37 +0000 (23:01 +0000)]
Region reads past end of spans
https://bugs.webkit.org/show_bug.cgi?id=85909

Reviewed by Anders Carlsson.

Source/WebCore:

Region currently checks aSpan == aSpanEnd as the indicator that
we passed all the spans. When aSpan < aSpanEnd, it uses aSpan+1
to find the height of the span.

If aSpan == aSpanEnd - 1, then aSpan+1 == aSpanEnd. This does not
represent a valid span, since aSpanEnd is past the end of the
array, not the last element in the array. The loop should terminate
in this case.

Checking aSegment != aSegmentEnd is acceptable in the inner loop since
it increments by two each time (segments come in pairs, while spans
come in singles).

Test: RegionTest.ReadPastFullSpanVectorInIntersectsTest

* platform/graphics/Region.cpp:
(WebCore::Region::Shape::compareShapes):

Source/WebKit/chromium:

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

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

8 years agoSource/WebKit: [BlackBerry] Implement a popup client for HTML controls
commit-queue@webkit.org [Tue, 8 May 2012 23:01:10 +0000 (23:01 +0000)]
Source/WebKit: [BlackBerry] Implement a popup client for HTML controls
https://bugs.webkit.org/show_bug.cgi?id=85670

Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-08
Reviewed by Rob Buis.

Add popup client file to build system.

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:     [BlackBerry] Implement a popup client for HTML controls
    https://bugs.webkit.org/show_bug.cgi?id=85670

    Reviewed by Rob Buis.

    Implement a popup client for HTML controls, which would be used to load
    different popups according to popup type.

    * WebCoreSupport/PagePopupBlackBerry.cpp: Added.
    (WebCore):
    (PagePopupChromeClient):
    (WebCore::PagePopupChromeClient::PagePopupChromeClient):
    (WebCore::PagePopupChromeClient::closeWindowSoon):
    (WebCore::PagePopupChromeClient::webPage):
    (WebCore::PagePopupBlackBerry::PagePopupBlackBerry):
    (WebCore::PagePopupBlackBerry::~PagePopupBlackBerry):
    (WebCore::PagePopupBlackBerry::sendCreatePopupWebViewRequest):
    (WebCore::PagePopupBlackBerry::init):
    (WebCore::setValueAndClosePopupCallback):
    (WebCore::popUpExtensionInitialize):
    (WebCore::popUpExtensionFinalize):
    (WebCore::PagePopupBlackBerry::installDomFunction):
    (WebCore::PagePopupBlackBerry::handleMouseEvent):
    (WebCore::PagePopupBlackBerry::closePopup):
    (WebCore::PagePopupBlackBerry::closeWebPage):
    * WebCoreSupport/PagePopupBlackBerry.h: Added.
    (WebKit):
    (WebCore):
    (PagePopupBlackBerry):

Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-08

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

8 years ago[EFL][DRT] WebKit/DRT should not paint webview for the pixel tests.
ryuan.choi@samsung.com [Tue, 8 May 2012 22:50:11 +0000 (22:50 +0000)]
[EFL][DRT] WebKit/DRT should not paint webview for the pixel tests.
https://bugs.webkit.org/show_bug.cgi?id=79853

Reviewed by Eric Seidel.

Screen buffer can be different from rendered results.
For example, WebKit/Efl just moves tiles for ewk_view_tiled when scrolling
contents.
It means that pixel tests can't check regression of ewk_view_tiled.

This patch changes a way to provide bitmap from painting webview to capturing
evas.

* DumpRenderTree/efl/PixelDumpSupportEfl.cpp:
(createBitmapContextFromWebView):

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

8 years agomove listener_leak_test to webkit_unit_tests
tony@chromium.org [Tue, 8 May 2012 22:45:10 +0000 (22:45 +0000)]
move listener_leak_test to webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=85922

Reviewed by Ojan Vafai.

Porting the test from src/webkit/tools/test_shell/listener_leak_test.cc.
All I did was change the style and use the FrameTestHelper to load the file.

* WebKit.gyp: Exclude file in components build.
* WebKit.gypi: Add new file.
* tests/ListenerLeakTest.cpp: Added.
(WebKit):
(WebKit::GetProperty):
(WebKit::GetNumObjects):
(ListenerLeakTest):
(WebKit::ListenerLeakTest::ListenerLeakTest):
(WebKit::ListenerLeakTest::RunTest):
(WebKit::TEST_F):
* tests/data/listener/listener_leak1.html: Added.
* tests/data/listener/listener_leak2.html: Added.

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

8 years agoAdd mac results for new tests following http://trac.webkit.org/changeset/116438.
oliver@apple.com [Tue, 8 May 2012 22:31:23 +0000 (22:31 +0000)]
Add mac results for new tests following trac.webkit.org/changeset/116438.

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

8 years agoPrevent crash in animated lists
pdr@google.com [Tue, 8 May 2012 22:29:07 +0000 (22:29 +0000)]
Prevent crash in animated lists
https://bugs.webkit.org/show_bug.cgi?id=85382

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Animated lists blindly assign the last list value to m_toAtEndOfDurationType
in SVGAnimationElement::startedActiveInterval. If the last list value's length
is larger or smaller than the animated "to" length, we crash.

This change prevents accessing values off the end of toAtEndOfDuration by adding
a check for this case. It may seem inefficient to perform this check on every
animation update but the "to" value can change (in cardinality) while animating.

I checked each of the other animation types (e.g., SVGAnimatedAngle,
SVGAnimatedBoolean, etc.) and was only able to hit this style of crash
in the three types modified in this change:
SVGAnimatedLengthList, SVGAnimatedNumberList, and SVGAnimatedPointList.

Tests: svg/animations/animate-linear-discrete-additive-b-expected.svg
       svg/animations/animate-linear-discrete-additive-b.svg
       svg/animations/animate-linear-discrete-additive-c-expected.svg
       svg/animations/animate-linear-discrete-additive-c.svg
       svg/animations/animate-linear-discrete-additive-expected.svg
       svg/animations/animate-linear-discrete-additive.svg
       svg/animations/animate-list-crash.svg

* svg/SVGAnimatedLengthList.cpp:
(WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumberList.cpp:
(WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedPointList.cpp:
(WebCore::SVGAnimatedPointListAnimator::calculateAnimatedValue):

LayoutTests:

* svg/animations/animate-linear-discrete-additive-b-expected.svg: Added.
* svg/animations/animate-linear-discrete-additive-b.svg: Added.
* svg/animations/animate-linear-discrete-additive-c-expected.svg: Added.
* svg/animations/animate-linear-discrete-additive-c.svg: Added.
* svg/animations/animate-linear-discrete-additive-expected.svg: Added.
* svg/animations/animate-linear-discrete-additive.svg: Added.
* svg/animations/animate-list-crash-expected.txt: Added.
* svg/animations/animate-list-crash.svg: Added.

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

8 years agoHTMLElementStack::hasOnlyHTMLElementsInScope is no longer called
rafaelw@chromium.org [Tue, 8 May 2012 22:04:23 +0000 (22:04 +0000)]
HTMLElementStack::hasOnlyHTMLElementsInScope is no longer called
https://bugs.webkit.org/show_bug.cgi?id=85908

Reviewed by Eric Seidel.

This patch just removes the dead code.

No tests needed. Cleanup only.

* html/parser/HTMLElementStack.cpp:
* html/parser/HTMLElementStack.h:
(HTMLElementStack):

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

8 years ago[chromium] Create LinkHighlightLayerChromium class to provide link-highlight preview...
wjmaclean@chromium.org [Tue, 8 May 2012 21:57:21 +0000 (21:57 +0000)]
[chromium] Create LinkHighlightLayerChromium class to provide link-highlight preview animations for GraphicsLayerChromium.
https://bugs.webkit.org/show_bug.cgi?id=85084

Reviewed by James Robinson.

Source/WebCore:

Unit test provided.

Creates a layer delegate class to provide link highlight animations for link-preview feature.
These are added to a GraphicsLayerChromium via provided methods. Moves dispensing of animation
ids into a separate class.

* WebCore.gypi:
* platform/graphics/chromium/AnimationIdVendor.cpp: Added.
(WebCore):
(WebCore::AnimationIdVendor::getNextAnimationId):
(WebCore::AnimationIdVendor::getNextGroupId):
* platform/graphics/chromium/AnimationIdVendor.h: Added.
(WebCore):
(AnimationIdVendor):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::willBeDestroyed):
(WebCore::GraphicsLayerChromium::updateNames):
(WebCore::GraphicsLayerChromium::addAnimation):
(WebCore::GraphicsLayerChromium::addLinkHighlight):
(WebCore):
(WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
(WebCore::GraphicsLayerChromium::updateChildList):
(WebCore::GraphicsLayerChromium::mapAnimationNameToId):
* platform/graphics/chromium/GraphicsLayerChromium.h:
(WebCore):
(GraphicsLayerChromium):
* platform/graphics/chromium/LinkHighlight.cpp: Added.
(WebCore):
(WebCore::LinkHighlight::create):
(WebCore::LinkHighlight::LinkHighlight):
(WebCore::LinkHighlight::~LinkHighlight):
(WebCore::LinkHighlight::contentLayer):
(WebCore::LinkHighlight::paintContents):
(WebCore::LinkHighlight::notifyAnimationStarted):
(WebCore::LinkHighlight::notifyAnimationFinished):
* platform/graphics/chromium/LinkHighlight.h: Added.
(WebCore):
(LinkHighlight):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/LinkHighlightTest.cpp: Added.
(WebCore):
(MockGraphicsLayerClient):
(WebCore::MockGraphicsLayerClient::notifyAnimationStarted):
(WebCore::MockGraphicsLayerClient::notifySyncRequired):
(WebCore::MockGraphicsLayerClient::paintContents):
(WebCore::MockGraphicsLayerClient::showDebugBorders):
(WebCore::MockGraphicsLayerClient::showRepaintCounter):
(WebCore::TEST):

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

8 years agoSIGFPE on divide in classic interpreter
barraclough@apple.com [Tue, 8 May 2012 21:52:11 +0000 (21:52 +0000)]
SIGFPE on divide in classic interpreter
https://bugs.webkit.org/show_bug.cgi?id=85917

Rubber stamped by Oliver Hunt.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
    - check for divisor of -1.

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

8 years agoChromium rebaselines after http://trac.webkit.org/changeset/116438.
ojan@chromium.org [Tue, 8 May 2012 21:22:33 +0000 (21:22 +0000)]
Chromium rebaselines after trac.webkit.org/changeset/116438.

* platform/chromium-linux/css2.1/20110323/first-letter-000-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-000-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-001-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-001-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-dynamic-001-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-dynamic-002-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-002-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-dynamic-003a-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-dynamic-003b-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-inherit-001-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-inherit-001-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-001-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-001-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-002-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-002-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-003-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-003-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-004-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-004-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-005-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-005-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-006-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-006-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-nested-007-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-007-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-001-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-001-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-002-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-002-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-003-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-003-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-004-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-004-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-005-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-005-expected.png.
* platform/chromium-linux/css2.1/20110323/first-letter-quote-006-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-006-expected.png.
* platform/chromium-linux/fast/css/first-letter-nested-positioned-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/fast/css/first-letter-nested-positioned-expected.png.
* platform/chromium-linux/fast/css/first-letter-quotes-no-content-before-after-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/fast/css/first-letter-quotes-no-content-before-after-expected.png.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-000-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-dynamic-001-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-dynamic-002-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-dynamic-003a-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-dynamic-003b-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-inherit-001-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-001-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-002-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-003-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-004-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-005-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/first-letter-quote-006-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-letter-nested-positioned-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-letter-quotes-no-content-before-after-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-000-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-dynamic-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-dynamic-002-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-dynamic-003a-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-dynamic-003b-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-inherit-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-002-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-003-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-004-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-005-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/first-letter-quote-006-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-letter-nested-positioned-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-letter-quotes-no-content-before-after-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-000-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-000-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-001-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-001-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-002-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-002-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-003a-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-003a-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-003b-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-dynamic-003b-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-inherit-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-inherit-001-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-001-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-002-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-002-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-003-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-003-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-004-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-004-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-005-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-005-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-006-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-006-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-007-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-nested-007-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-001-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-002-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-002-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-003-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-003-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-004-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-004-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-005-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-005-expected.txt: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-006-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/first-letter-quote-006-expected.txt: Added.
* platform/chromium-mac/fast/css/first-letter-nested-positioned-expected.png: Added.
* platform/chromium-mac/fast/css/first-letter-nested-positioned-expected.txt: Added.
* platform/chromium-mac/fast/css/first-letter-quotes-no-content-before-after-expected.png: Added.
* platform/chromium-mac/fast/css/first-letter-quotes-no-content-before-after-expected.txt: Added.
* platform/chromium-win/css2.1/20110323/first-letter-000-expected.png: Added.
* platform/chromium-win/css2.1/20110323/first-letter-000-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-000-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-001-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-001-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-001-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-002-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-002-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-002-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-003a-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-003a-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-003b-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-dynamic-003b-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-inherit-001-expected.png: Added.
* platform/chromium-win/css2.1/20110323/first-letter-inherit-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-inherit-001-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-001-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-001-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-002-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-002-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-002-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-003-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-003-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-003-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-004-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-004-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-004-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-005-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-005-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-005-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-006-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-006-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-006-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-nested-007-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-nested-007-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-007-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-001-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-001-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-002-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-002-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-002-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-003-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-003-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-003-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-004-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-004-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-004-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-005-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-005-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-005-expected.txt.
* platform/chromium-win/css2.1/20110323/first-letter-quote-006-expected.png: Copied from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/css2.1/20110323/first-letter-quote-006-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-006-expected.txt.
* platform/chromium-win/fast/css/first-letter-nested-positioned-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png.
* platform/chromium-win/fast/css/first-letter-nested-positioned-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/css/first-letter-nested-positioned-expected.txt.
* platform/chromium-win/fast/css/first-letter-quotes-no-content-before-after-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png.
* platform/chromium-win/fast/css/first-letter-quotes-no-content-before-after-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/css/first-letter-quotes-no-content-before-after-expected.txt.

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

8 years ago[CMake] Rewrite FindGStreamer.cmake.
rakuco@webkit.org [Tue, 8 May 2012 20:32:34 +0000 (20:32 +0000)]
[CMake] Rewrite FindGStreamer.cmake.
https://bugs.webkit.org/show_bug.cgi?id=85857

Reviewed by Daniel Bates.

.:

We are currently kind of duplicating the same
FindGStreamer-Foo.cmake file whenever a new GStreamer plugin needs
to be found. Besides this approach not scaling very well, it
relies on pkg-config for version checking, uses the LibFindMacros
package that we should deprecate and all the find files could be
merged into one, with users using the COMPONENTS feature of the
FIND_PACKAGE() call to find the desired plugins.

FindGStreamer.cmake has then been rewritten to take all that into
account:
- The LibFindMacros.cmake package is not used anymore.
- Version check is performed in the CMake file itself by parsing
the gstversion.h header.
- All GStreamer plugins are searched and the COMPONENTS keyword
used in the FIND_PACKAGE() call is used to check which plugins are
required.
- The plugins-base and base GStreamer plugins are not searched, as
they were not used anywhere in the build system.

* Source/cmake/FindGStreamer-App.cmake: Removed.
* Source/cmake/FindGStreamer-Audio.cmake: Removed.
* Source/cmake/FindGStreamer-Base.cmake: Removed.
* Source/cmake/FindGStreamer-FFT.cmake: Removed.
* Source/cmake/FindGStreamer-Interfaces.cmake: Removed.
* Source/cmake/FindGStreamer-Pbutils.cmake: Removed.
* Source/cmake/FindGStreamer-Plugins-Base.cmake: Removed.
* Source/cmake/FindGStreamer-Video.cmake: Removed.
* Source/cmake/FindGStreamer.cmake: Rewrite as described above.
* Source/cmake/OptionsEfl.cmake: Use COMPONENTS to specify which
GStreamer plugins to look for.

Source/WebCore:

No new tests, build system change.

We are currently kind of duplicating the same
FindGStreamer-Foo.cmake file whenever a new GStreamer plugin needs
to be found. Besides this approach not scaling very well, it
relies on pkg-config for version checking, uses the LibFindMacros
package that we should deprecate and all the find files could be
merged into one, with users using the COMPONENTS feature of the
FIND_PACKAGE() call to find the desired plugins.

FindGStreamer.cmake has then been rewritten to take all that into
account:
- The LibFindMacros.cmake package is not used anymore.
- Version check is performed in the CMake file itself by parsing
the gstversion.h header.
- All GStreamer plugins are searched and the COMPONENTS keyword
used in the FIND_PACKAGE() call is used to check which plugins are
required.
- The plugins-base and base GStreamer plugins are not searched, as
they were not used anywhere in the build system.

* PlatformEfl.cmake: Update GStreamer-related variable names.

Source/WebKit:

We are currently kind of duplicating the same
FindGStreamer-Foo.cmake file whenever a new GStreamer plugin needs
to be found. Besides this approach not scaling very well, it
relies on pkg-config for version checking, uses the LibFindMacros
package that we should deprecate and all the find files could be
merged into one, with users using the COMPONENTS feature of the
FIND_PACKAGE() call to find the desired plugins.

FindGStreamer.cmake has then been rewritten to take all that into
account:
- The LibFindMacros.cmake package is not used anymore.
- Version check is performed in the CMake file itself by parsing
the gstversion.h header.
- All GStreamer plugins are searched and the COMPONENTS keyword
used in the FIND_PACKAGE() call is used to check which plugins are
required.
- The plugins-base and base GStreamer plugins are not searched, as
they were not used anywhere in the build system.

* PlatformEfl.cmake: Update GStreamer-related variable names.

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

8 years ago[EFL] Handling of numeric-pad keys in EFL's PlatformKeyboardEvent
commit-queue@webkit.org [Tue, 8 May 2012 20:24:53 +0000 (20:24 +0000)]
[EFL] Handling of numeric-pad keys in EFL's PlatformKeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=85479

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-08
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

EFL's PlatformKeyboardEvent::isKeypad() now returns meaningful value.
Added numeric-pad keys to the Key Map and Windows Key Map.

No new tests.

* platform/efl/EflKeyboardUtilities.cpp:
(WebCore::createKeyMap):
(WebCore::createWindowsKeyMap):
* platform/efl/PlatformKeyboardEventEfl.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

LayoutTests:

Unskipped fast/events/keydown-numpad-keys.html.

* platform/efl/Skipped:

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

8 years agoTie lifetime of SVGAnimateElement::m_animatedType to the duration of the animation
zimmermann@webkit.org [Tue, 8 May 2012 19:44:17 +0000 (19:44 +0000)]
Tie lifetime of SVGAnimateElement::m_animatedType to the duration of the animation
https://bugs.webkit.org/show_bug.cgi?id=85627

Reviewed by Antti Koivisto.

Source/WebCore:

Example:
<rect width="10" height="100">
    <animate attributeName="width" from="10" to="100" begin="2s" dur="4s" fill="remove"/>
</rect>

At t=0s the <animate> element receives its first interval: begin=2s, end=6s.
At this point we've created the 'OwnPtr<SVGAnimatedType> m_animatedType' in
SVGAnimateElement, which holds the current animated value of the target type.
In this example it contains a SVGLength with '10' as value at t=0s.

Calling "rect.width.animVal.value" will return the value currently contained in the
m_animatedType from the SVGAnimateElement, even though the animation didn't begin
yet. This is fine, as the animVal equals to the baseVal, as long as no animation is
running.

At t=6s you'd expect that the whole 'animVal' object is destructed again, as it's no
longer needed, as animVal will be equal to baseVal again, but the current code keeps
the animVal alive, and just resets it to the baseVal. The animVals will be destructed
once the animate element leaves the tree.

CSS animations suffer from the same problem, we never remove the animated SMIL properties
but we only reset them to the base value. This makes integration with CSS Animations and
CSS Transitions harder, so this needs to be changed.

This patch starts tracking the start/end of an animation chain properly, to destruct
the animation effect for non-frozen animations at the end of their duration. This has to
work properly together with seeking (SVGSVGElement.setCurrentTime), as our testing relies
on the ability to drive the SMIL timeline from script.

Tests: svg/animations/list-wrapper-assertion-expected.svg
       svg/animations/list-wrapper-assertion.svg

* svg/SVGAnimateElement.cpp:
(WebCore::SVGAnimateElement::resetAnimatedType):
(WebCore::applyCSSPropertyToTarget):
(WebCore::removeCSSPropertyFromTarget):
(WebCore::applyCSSPropertyToTargetAndInstances):
(WebCore::removeCSSPropertyFromTargetAndInstances):
(WebCore::notifyTargetAboutAnimValChange):
(WebCore::notifyTargetAndInstancesAboutAnimValChange):
(WebCore::SVGAnimateElement::clearAnimatedType):
(WebCore::SVGAnimateElement::applyResultsToTarget):
(WebCore::SVGAnimateElement::targetElementWillChange):
* svg/SVGAnimateElement.h:
(SVGAnimateElement):
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::resetAnimatedType):
(WebCore::SVGAnimateMotionElement::clearAnimatedType):
* svg/SVGAnimateMotionElement.h:
(SVGAnimateMotionElement):
* svg/SVGAnimationElement.cpp:
* svg/SVGAnimationElement.h:
* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::updateAnimations):
* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::reset):
(WebCore::SVGSMILElement::targetElementWillChange):
(WebCore::SVGSMILElement::determineActiveState):
(WebCore::SVGSMILElement::progress):
* svg/animation/SVGSMILElement.h:
(SVGSMILElement):
* svg/properties/SVGAnimatedListPropertyTearOff.h:
    Remove svgAttributeChanged() calls from animationEnded/animValDidChange.
    Callers are now required to notify the target about changes. There are cases
    where we want to call animValDidChange without invoking svgAttributeChanged().
    That is supported now.
(WebCore::SVGAnimatedListPropertyTearOff::animationEnded):
(WebCore::SVGAnimatedListPropertyTearOff::animValDidChange):
* svg/properties/SVGAnimatedProperty.h: Ditto.
(WebCore::SVGAnimatedProperty::commitChange): Add safety guard.
* svg/properties/SVGAnimatedPropertyTearOff.h: Ditto.
(WebCore::SVGAnimatedPropertyTearOff::animationEnded):
(WebCore::SVGAnimatedPropertyTearOff::animValDidChange):
* svg/properties/SVGAnimatedStaticPropertyTearOff.h: Ditto.
(WebCore::SVGAnimatedStaticPropertyTearOff::animationEnded):
(WebCore::SVGAnimatedStaticPropertyTearOff::animValDidChange):

LayoutTests:

Update animate-target-id-changed.svg test to match Firefox behavior.
When an animation element with fill="freeze" is changed to a new target
eg, via animate.href = "#someOtherID", the animation effect should be removed.

Add tests for assertions I ran into while developing this patch.

* platform/chromium/test_expectations.txt: Require new results for animate-target-id-changed-expected.txt.
* platform/mac/svg/custom/animate-target-id-changed-expected.png:
* svg/animations/list-wrapper-assertion-expected.svg: Added.
* svg/animations/list-wrapper-assertion.svg: Added.
* svg/custom/animate-target-id-changed-expected.txt:
* svg/custom/animate-target-id-changed.svg:

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

8 years ago[EFL][DRT]Do not create ScrollbarEfl when mockScrollbar is enabled.
ryuan.choi@samsung.com [Tue, 8 May 2012 19:36:34 +0000 (19:36 +0000)]
[EFL][DRT]Do not create ScrollbarEfl when mockScrollbar is enabled.
https://bugs.webkit.org/show_bug.cgi?id=81315

Reviewed by Chang Shu.

ScrollbarEfl creates custom scrollbars as separated layer and they are
not related to ScrollbarTheme.
So, DRT/Efl creates custom scrollbars on webview which paints mockScrollbar.

This patch prevents creating custom scrollbars when mockScrollbar is enabled.

Because DRT/Efl only renders the webview now, expected results are same
until Bug 79853 is landed.

* platform/efl/ScrollbarEfl.cpp:
(Scrollbar::createNativeScrollbar):

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

8 years agoFix the SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL macro so it passes the full path to dlopen.
timothy@apple.com [Tue, 8 May 2012 19:33:42 +0000 (19:33 +0000)]
Fix the SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL macro so it passes the full path to dlopen.

dyld only considers libraries in the versioned framework path if their install name
matches the library that it is attempting to load. The path we were passing to
dlopen lacked the Versions/A component of the path so dyld did not recognize that
we wanted it to use the staged version if it is newer.

<rdar://problem/11406517>

Reviewed by Mark Rowe.

Source/WebCore:

* platform/mac/SoftLinking.h: Have SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL take the
framework version as an argument and use it when constructing the path to dlopen.

Source/WebKit/mac:

* WebCoreSupport/WebInspectorClient.mm: Pass A to SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL for the version.

Source/WebKit2:

* UIProcess/mac/WebInspectorProxyMac.mm: Pass A to SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL for the version.
* WebProcess/WebPage/mac/WebInspectorMac.mm: Ditto.

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

8 years agoUnreviewed, rolling out r116440.
commit-queue@webkit.org [Tue, 8 May 2012 19:26:38 +0000 (19:26 +0000)]
Unreviewed, rolling out r116440.
http://trac.webkit.org/changeset/116440
https://bugs.webkit.org/show_bug.cgi?id=85904

Broke the Chromium Android bot (Requested by beverloo on
#webkit).

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

* WTF.gyp/WTF.gyp:

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

8 years agoBuild fix for Qt Snowleopard Release
rafael.lobo@openbossa.org [Tue, 8 May 2012 19:16:55 +0000 (19:16 +0000)]
Build fix for Qt Snowleopard Release
https://bugs.webkit.org/show_bug.cgi?id=85895

Reviewed by Alexis Menard.

The enum value JSUint8ClampedArray conflicted with the JSUint8ClampedArray class.
I've added the 'Type' suffix to the enum value to make their names different.

No new tests needed.

* bridge/qt/qt_runtime_qt4.cpp:
(JSC::Bindings::valueRealType):
(JSC::Bindings::convertValueToQVariant):

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

8 years agooffsetLeft broken within CSS3 columns
commit-queue@webkit.org [Tue, 8 May 2012 19:11:14 +0000 (19:11 +0000)]
offsetLeft broken within CSS3 columns
https://bugs.webkit.org/show_bug.cgi?id=34875

Patch by Shezan Baig <shezbaig.wk@gmail.com> on 2012-05-08
Reviewed by Julien Chaffraix.

Source/WebCore:

Reimplement offsetLeft and offsetTop in terms of a new method called
'offsetTopLeft'. The new method starts from a reference point (the
top-left coordinate of a box or inline) and adjusts this reference
point for columns as we traverse each parent. Note that the reference
point needs to be adjusted in both dimensions, even though offsetLeft
and offsetTop return only one of them.

A new method called 'offsetForColumns' was added to RenderObject. This
method is similar to adjustForColumns, except that it returns the
offset instead of modifying a reference. This method is necessary to
simplify the implementation of offsetTopLeft.

Tests: fast/block/positioning/offsetLeft-offsetTop-multicolumn-expected.txt
       fast/block/positioning/offsetLeft-offsetTop-multicolumn.html

* rendering/RenderBox.h:
(RenderBox):
Override offsetLeft and offsetTop.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::offsetLeft):
Implemented in terms of RenderBoxModelObject::offsetTopLeft, using
topLeftLocation as startPoint.
(WebCore::RenderBox::offsetTop):
Implemented in terms of RenderBoxModelObject::offsetTopLeft, using
topLeftLocation as startPoint.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::offsetTopLeft):
New method to compute offsetLeft and offsetTop simultaneously, and
adjusting for columns at each parent.
(WebCore::RenderBoxModelObject::offsetLeft):
Reimplemented in terms of offsetTopLeft.
(WebCore::RenderBoxModelObject::offsetTop):
Reimplemented in terms of offsetTopLeft.
* rendering/RenderBoxModelObject.h:
(RenderBoxModelObject):
Declare new offsetTopLeft method.
* rendering/RenderInline.cpp:
(WebCore::RenderInline::offsetLeft):
Reimplemented in terms of RenderBoxModelObject::offsetTopLeft.
(WebCore::RenderInline::offsetTop):
Reimplemented in terms of RenderBoxModelObject::offsetTopLeft.
* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::offsetForColumns):
New helper method to simplify implementation of offsetTopLeft.

LayoutTests:

Add test for offsetLeft and offsetTop within multi-columns.

* fast/block/positioning/offsetLeft-offsetTop-multicolumn-expected.txt: Added.
* fast/block/positioning/offsetLeft-offsetTop-multicolumn.html: Added.

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

8 years ago[EFL] media/video-play-require-user-gesture.html test is failing
rakuco@webkit.org [Tue, 8 May 2012 19:09:01 +0000 (19:09 +0000)]
[EFL] media/video-play-require-user-gesture.html test is failing
https://bugs.webkit.org/show_bug.cgi?id=85900

Unreviewed gardening.

Move media/video-play-require-user-gesture.html to test_expectations.txt since
it requires Full Screen API support. Also move fullscreen tests from Skipped
list to test_expectations.txt

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

* platform/efl/Skipped:
* platform/efl/test_expectations.txt:

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

8 years ago[EFL] Layout test fast/overflow/lots-of-sibling-inline-boxes.html is flaky in debug...
rakuco@webkit.org [Tue, 8 May 2012 19:07:40 +0000 (19:07 +0000)]
[EFL] Layout test fast/overflow/lots-of-sibling-inline-boxes.html is flaky in debug builds
https://bugs.webkit.org/show_bug.cgi?id=85896

Unreviewed gardening.

Marking test as slow, since it times-out when executed using debug builds under
heavy processor loads.

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-08

* platform/efl/test_expectations.txt:

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

8 years ago[EFL] Update Web Timing tests expectations
rakuco@webkit.org [Tue, 8 May 2012 19:04:37 +0000 (19:04 +0000)]
[EFL] Update Web Timing tests expectations
https://bugs.webkit.org/show_bug.cgi?id=85622

Unreviewed Gardening.

Removed http/tests/misc/webtiming-origins.html and
http/tests/misc/webtiming-ssl from test expectations.
They started to pass after r116160.

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

* platform/efl/test_expectations.txt:

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

8 years ago[EFL] http/tests/security/cross-frame-access-* tests are failing
commit-queue@webkit.org [Tue, 8 May 2012 18:57:28 +0000 (18:57 +0000)]
[EFL] http/tests/security/cross-frame-access-* tests are failing
https://bugs.webkit.org/show_bug.cgi?id=85899

Unreviewed, move failing tests to test expectations.

http/tests/security/cross-frame-access-* tests are failing because EFL port
does not support showModalDialog. We need to move the test cases to test
expectations while the feature is implemented.

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

* platform/efl/test_expectations.txt:

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

8 years ago[Chromium] OS(ANDROID) ImageDiff requires us to build WTF for both host and target
abarth@webkit.org [Tue, 8 May 2012 18:45:13 +0000 (18:45 +0000)]
[Chromium] OS(ANDROID) ImageDiff requires us to build WTF for both host and target
https://bugs.webkit.org/show_bug.cgi?id=85897

Reviewed by Tony Chang.

* WTF.gyp/WTF.gyp:

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

8 years agoperf-o-matic fix attempt for dashboard images.
rniwa@webkit.org [Tue, 8 May 2012 18:33:02 +0000 (18:33 +0000)]
perf-o-matic fix attempt for dashboard images.

Rubber-stamped by Antti Koivisto.

Also stop generating images for 30, 90, and 365 days since they have been timing out.

* Websites/webkit-perf.appspot.com/controller.py:
(schedule_runs_update):
* Websites/webkit-perf.appspot.com/models.py:
(Runs.chart_params):

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

8 years agoCSS 2.1 failure: first-letter-nested-004.htm fails
robert@webkit.org [Tue, 8 May 2012 18:25:19 +0000 (18:25 +0000)]
CSS 2.1 failure: first-letter-nested-004.htm fails
https://bugs.webkit.org/show_bug.cgi?id=72987

Reviewed by Eric Seidel.

Source/WebCore:

When styling first-letter check each sibling and drill into its inlines until we find either (i) a text node
that is not all whitespace, or (ii) a line break.

This makes our rendering of the following tests compatible with FF and Opera. Our current behaviour is also conformant
since the spec allows UAs to style just one element:
    css2.1/20110323/first-letter-quote-002.htm
    css2.1/20110323/first-letter-quote-003.htm
    css2.1/20110323/first-letter-quote-004.htm
    css2.1/20110323/first-letter-quote-005.htm

This fixes the following two tests. We now drill into the descendants of an element styled with :first-letter looking
for text to style:
    css2.1/20110323/first-letter-nested-004.htm
    css2.1/20110323/first-letter-nested-006.htm

This patch changes our rendering of first-letter-dynamic-001.htm as we now render adjacent quotes in the second line as
green. This is consistent with the spec, which allows this behaviour but does not require it. It's the 'right' behaviour
since it is consistent with the rendering of such quotes in a single element with :first-letter style.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::findLastObjectWithFirstLetterText): Iterate through the child's siblings looking for the last
  object to be styled :first-letter.
(WebCore::RenderBlock::findLastObjectAfterFirstLetterPunctuation): Style any leading punctuation as first-letter, drill
  down into the child's descendants looking for text if necessary.
(WebCore::RenderBlock::updateFirstLetter): Refactor to drill into sibling's children looking for inlines
 that should be styled as first-letter.
(WebCore::RenderBlock::addFirstLetter): Split out from updateFirstLetter so that it can be used when a
 descendant node inside a sibling is found in findLastObjectWithFirstLetterText() needs to be styled as first-letter.
* rendering/RenderBlock.h:

LayoutTests:

* css2.1/20110323/first-letter-000.htm: Added.
* css2.1/20110323/first-letter-001.htm: Added.
* css2.1/20110323/first-letter-dynamic-001.htm: Added.
* css2.1/20110323/first-letter-dynamic-002.htm: Added.
* css2.1/20110323/first-letter-dynamic-003a.htm: Added.
* css2.1/20110323/first-letter-dynamic-003b.htm: Added.
* css2.1/20110323/first-letter-inherit-001.htm: Added.
* css2.1/20110323/first-letter-nested-001.htm: Added.
* css2.1/20110323/first-letter-nested-002.htm: Added.
* css2.1/20110323/first-letter-nested-003.htm: Added.
* css2.1/20110323/first-letter-nested-004.htm: Added.
* css2.1/20110323/first-letter-nested-005.htm: Added.
* css2.1/20110323/first-letter-nested-006.htm: Added.
* css2.1/20110323/first-letter-nested-007.htm: Added.
* css2.1/20110323/first-letter-quote-001.htm: Added.
* css2.1/20110323/first-letter-quote-002.htm: Added.
* css2.1/20110323/first-letter-quote-003.htm: Added.
* css2.1/20110323/first-letter-quote-004.htm: Added.
* css2.1/20110323/first-letter-quote-005.htm: Added.
* css2.1/20110323/first-letter-quote-006.htm: Added.
* fast/css/first-letter-capitalized-edit-select-crash-expected.txt:
  Rebaselined.
* fast/css/first-letter-nested-positioned.htm: Added.
   Tests that text nested inside a positioned object is styled.
* fast/css/first-letter-quotes-no-content-before-after.html: Added.
   Tests that two consecutive quotes, each in a :before and :after pseudo element surrounding
   an empty main element, get styled with first letter.

Behold! Pixel Results!

* platform/chromium-linux-x86/css2.1/20110323/first-letter-000-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-000-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-001-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-001-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-001-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-002-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-002-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003a-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-dynamic-003b-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-inherit-001-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-inherit-001-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-001-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-001-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-002-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-002-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-003-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-003-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-004-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-004-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-005-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-005-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-006-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-006-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-007-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-nested-007-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-001-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-001-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-002-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-002-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-003-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-003-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-004-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-004-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-005-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-005-expected.txt: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-006-expected.png: Added.
* platform/chromium-linux-x86/css2.1/20110323/first-letter-quote-006-expected.txt: Added.
* platform/chromium-linux-x86/fast/css/first-letter-nested-positioned-expected.png: Added.
* platform/chromium-linux-x86/fast/css/first-letter-nested-positioned-expected.txt: Added.
* platform/chromium-linux-x86/fast/css/first-letter-quotes-no-content-before-after-expected.png: Added.
* platform/chromium-linux-x86/fast/css/first-letter-quotes-no-content-before-after-expected.txt: Added.

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

8 years agoUnreviewed, rolling out r116402.
commit-queue@webkit.org [Tue, 8 May 2012 18:09:51 +0000 (18:09 +0000)]
Unreviewed, rolling out r116402.
http://trac.webkit.org/changeset/116402
https://bugs.webkit.org/show_bug.cgi?id=85898

Caused a 3% regression on Chromium's bloat-http test on Linux
(Requested by ojan_gardening on #webkit).

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

* WebCore.exp.in:
* bindings/v8/RetainedDOMInfo.cpp:
* dom/ContainerNode.h:
* dom/Node.cpp:
(WebCore::Node::traverseNextNode):
(WebCore):
(WebCore::Node::traverseNextSibling):
* dom/Node.h:
(Node):

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

8 years ago[CMake] Add ENABLE_IFRAME_SEAMLESS flag
commit-queue@webkit.org [Tue, 8 May 2012 17:58:28 +0000 (17:58 +0000)]
[CMake] Add ENABLE_IFRAME_SEAMLESS flag
https://bugs.webkit.org/show_bug.cgi?id=85838

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-08
Reviewed by Eric Seidel.

Add ENABLE_IFRAME_SEAMLESS flag to CMake and enable it by default.
This flag was introduced by r116356.

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

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

8 years ago[Chromium] Fix the position of an RTL resizer
hbono@chromium.org [Tue, 8 May 2012 17:51:29 +0000 (17:51 +0000)]
[Chromium] Fix the position of an RTL resizer
https://bugs.webkit.org/show_bug.cgi?id=80640

Reviewed by Tony Chang.

When rendering an RTL resizer, my r110073 renders it at the same position as the
one used for rendering a LTR resizer. Unfortunately, this code renders the RTL
resizer image at an incorrect position on Mac and Linux. This change uses the
correct formula to calculate the position of an RTL resizer.

Source/WebCore:

Test: platform/chromium/scrollbars/rtl-resizer-position.html

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

LayoutTests:

* platform/chromium/platform/chromium/scrollbars: Added.
* platform/chromium/platform/chromium/scrollbars/rtl-resizer-position-expected.png: Added.
* platform/chromium/platform/chromium/scrollbars/rtl-resizer-position-expected.txt: Added.
* platform/chromium/scrollbars/rtl-resizer-position.html: Added.

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

8 years ago[GTK] Memory leak in DRT EventSender.cpp
commit-queue@webkit.org [Tue, 8 May 2012 17:14:44 +0000 (17:14 +0000)]
[GTK] Memory leak in DRT EventSender.cpp
https://bugs.webkit.org/show_bug.cgi?id=85886

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-08
Reviewed by Martin Robinson.

Fix a memory leak in gdkModifersFromJSValue() by using JSRetainPtr for
JSString created with JSStringCreateWithUTF8CString.

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

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

8 years ago[chromium] move event_listener_unittest to webkit_unit_tests
tony@chromium.org [Tue, 8 May 2012 17:06:11 +0000 (17:06 +0000)]
[chromium] move event_listener_unittest to webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=85836

Reviewed by James Robinson.

Porting the test from src/webkit/tools/test_shell/event_listener_unittest.cc.
All I did was change the style and use the FrameTestHelper to load the file.

* WebKit.gyp: Exclude file in components build.
* WebKit.gypi: Add new file.
* tests/EventListenerTest.cpp: Added.
(WebKit):
(TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::~TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::eventCount):
(WebKit::TestWebDOMEventListener::eventAt):
(WebKit::TestWebDOMEventListener::clearEvents):
(WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::SetUp):
(WebKit::WebDOMEventListenerTest::TearDown):
(WebKit::WebDOMEventListenerTest::mainFrame):
(WebKit::WebDOMEventListenerTest::document):
(WebKit::WebDOMEventListenerTest::executeScript):
(WebKit::WebDOMEventListenerTest::GetNodeID):
(WebKit::TEST_F):
* tests/data/listener/mutation_event_listener.html: Added.

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

8 years ago[EFL] glib dependency needs to be updated in jhbuild
commit-queue@webkit.org [Tue, 8 May 2012 17:01:45 +0000 (17:01 +0000)]
[EFL] glib dependency needs to be updated in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=85878

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-08
Reviewed by Martin Robinson.

Bump glib version from 2.31.8 to 2.32.2 in jhbuild.modules. This
addresses flakiness in media tests due to possible deadlock with the
following output on stderr:
GStreamer-WARNING **: wrong STREAM_LOCK count 0

The bug was fixed upstream by:
http://git.gnome.org/browse/glib/commit/?id=265f265c677bc5399dbb1cfa449cb4b915a6459f

* efl/jhbuild.modules:

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

8 years ago[Qt] Unreviewed gardening, skip failing tests.
ossy@webkit.org [Tue, 8 May 2012 16:57:46 +0000 (16:57 +0000)]
[Qt] Unreviewed gardening, skip failing tests.

* platform/qt-5.0/Skipped:

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

8 years agoElement: isURLAttribute() should take a const Attribute&.
kling@webkit.org [Tue, 8 May 2012 16:27:04 +0000 (16:27 +0000)]
Element: isURLAttribute() should take a const Attribute&.
<http://webkit.org/b/85890>

Reviewed by Anders Carlsson.

Change isURLAttribute(Attribute*) to isURLAttribute(const Attribute&) to enforce
the fact that the Attribute can't be null, and shouldn't be mutated, at compile-time.
Also sprinkle OVERRIDE while we're at it.

* dom/Element.cpp:
(WebCore::Element::getURLAttribute):
(WebCore::Element::getNonEmptyURLAttribute):
* dom/Element.h:
(WebCore::Element::isURLAttribute):
* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendQuotedURLAttributeValue):
(WebCore::MarkupAccumulator::appendAttribute):
* editing/markup.cpp:
(WebCore::completeURLs):
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::isURLAttribute):
* html/HTMLAnchorElement.h:
* html/HTMLBaseElement.cpp:
(WebCore::HTMLBaseElement::isURLAttribute):
* html/HTMLBaseElement.h:
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::isURLAttribute):
* html/HTMLBodyElement.h:
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::isURLAttribute):
* html/HTMLButtonElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::isURLAttribute):
* html/HTMLElement.h:
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::isURLAttribute):
* html/HTMLEmbedElement.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::isURLAttribute):
* html/HTMLFormElement.h:
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::isURLAttribute):
* html/HTMLFrameElementBase.h:
(HTMLFrameElementBase):
* html/HTMLHtmlElement.cpp:
(WebCore::HTMLHtmlElement::isURLAttribute):
* html/HTMLHtmlElement.h:
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::isURLAttribute):
* html/HTMLImageElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::isURLAttribute):
* html/HTMLInputElement.h:
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::isURLAttribute):
* html/HTMLLinkElement.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::isURLAttribute):
* html/HTMLMediaElement.h:
* html/HTMLModElement.cpp:
(WebCore::HTMLModElement::isURLAttribute):
* html/HTMLModElement.h:
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::isURLAttribute):
* html/HTMLObjectElement.h:
* html/HTMLParamElement.cpp:
(WebCore::HTMLParamElement::isURLAttribute):
* html/HTMLParamElement.h:
* html/HTMLQuoteElement.cpp:
(WebCore::HTMLQuoteElement::isURLAttribute):
* html/HTMLQuoteElement.h:
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::isURLAttribute):
* html/HTMLScriptElement.h:
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::isURLAttribute):
* html/HTMLSourceElement.h:
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::isURLAttribute):
* html/HTMLTableCellElement.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::isURLAttribute):
* html/HTMLTableElement.h:
* html/HTMLTrackElement.cpp:
(WebCore::HTMLTrackElement::isURLAttribute):
* html/HTMLTrackElement.h:
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::isURLAttribute):
* html/HTMLVideoElement.h:
* svg/SVGScriptElement.cpp:
(WebCore::SVGScriptElement::isURLAttribute):
* svg/SVGScriptElement.h:

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

8 years ago[BlackBerry] Over-scroll image should be tiled
commit-queue@webkit.org [Tue, 8 May 2012 16:21:24 +0000 (16:21 +0000)]
[BlackBerry] Over-scroll image should be tiled
https://bugs.webkit.org/show_bug.cgi?id=85860

Patch by Andrew Lo <anlo@rim.com> on 2012-05-08
Reviewed by Rob Buis.

Implement tiling for over-scroll image if image dimension don't match
the surface dimensions.

* Api/BackingStore.cpp:
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::ensureOverScrollImage):
(BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
* Api/BackingStore_p.h:
(BackingStorePrivate):

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

8 years ago[Qt] Unreviewed gardening, unskip now passing tests, update platform specific expecte...
ossy@webkit.org [Tue, 8 May 2012 15:53:42 +0000 (15:53 +0000)]
[Qt] Unreviewed gardening, unskip now passing tests, update platform specific expected files.

* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/qt/fast/block/float/016-expected.png:
* platform/qt/fast/css/border-solid-single-edge-antialias-expected.txt: Added.
* platform/qt/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/qt/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
* platform/qt/fast/dom/HTMLMeterElement/meter-element-expected.png:
* platform/qt/fast/dom/HTMLMeterElement/meter-element-expected.txt:
* platform/qt/fast/dom/HTMLMeterElement/meter-optimums-expected.png:
* platform/qt/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
* platform/qt/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
* platform/qt/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
* platform/qt/fast/dom/HTMLMeterElement/meter-styles-expected.png:
* platform/qt/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
* platform/qt/fast/js/constructor-length-expected.txt: Added.
* platform/qt/fast/repaint/scale-page-shrink-expected.png: Added.
* platform/qt/fast/repaint/scale-page-shrink-expected.txt: Added.
* platform/qt/fast/table/027-expected.png:
* platform/qt/fast/table/027-expected.txt:
* platform/qt/fast/table/027-vertical-expected.png:
* platform/qt/fast/table/027-vertical-expected.txt:
* platform/qt/tables/mozilla/bugs/bug14929-expected.png:
* platform/qt/tables/mozilla/bugs/bug14929-expected.txt:
* platform/qt/tables/mozilla/bugs/bug2123-expected.png:
* platform/qt/tables/mozilla/bugs/bug2123-expected.txt:
* platform/qt/tables/mozilla/bugs/bug2509-expected.png:
* platform/qt/tables/mozilla/bugs/bug2509-expected.txt:
* platform/qt/tables/mozilla/bugs/bug27038-1-expected.png:
* platform/qt/tables/mozilla/bugs/bug27038-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug27038-2-expected.png:
* platform/qt/tables/mozilla/bugs/bug27038-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug2947-expected.png:
* platform/qt/tables/mozilla/bugs/bug2947-expected.txt:
* platform/qt/tables/mozilla/bugs/bug34176-expected.png:
* platform/qt/tables/mozilla/bugs/bug34176-expected.txt:
* platform/qt/tables/mozilla/bugs/bug44505-expected.png:
* platform/qt/tables/mozilla/bugs/bug44505-expected.txt:
* platform/qt/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
* platform/qt/tables/mozilla_expected_failures/bugs/bug59252-expected.txt:
* platform/qt/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
* platform/qt/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
* platform/qt/tables/mozilla_expected_failures/bugs/bug85016-expected.png:
* platform/qt/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
* platform/qt/test_expectations.txt:

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

8 years agoShrink ElementAttributeData by factoring out Attr object count.
schenney@chromium.org [Tue, 8 May 2012 15:46:00 +0000 (15:46 +0000)]
Shrink ElementAttributeData by factoring out Attr object count.
https://bugs.webkit.org/show_bug.cgi?id=85825

Unreviewed build fix.

* dom/ElementAttributeData.cpp:
(WebCore::attrListForElement): Was returning false instead of 0 for a pointer value. Now returns 0.

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

8 years ago[EFL][DRT] fast/layers/video-layer.html needs rebaseline after bug85602 landed
commit-queue@webkit.org [Tue, 8 May 2012 15:27:42 +0000 (15:27 +0000)]
[EFL][DRT] fast/layers/video-layer.html needs rebaseline after bug85602 landed
https://bugs.webkit.org/show_bug.cgi?id=85873

Unreviewed, EFL gardening.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-08

* platform/efl/fast/layers/video-layer-expected.txt:

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

8 years agoElement: Merge idAttributeChanged() into attributeChanged().
kling@webkit.org [Tue, 8 May 2012 15:20:54 +0000 (15:20 +0000)]
Element: Merge idAttributeChanged() into attributeChanged().
<http://webkit.org/b/85885>

Reviewed by Antti Koivisto.

No new tests, code churn only.

* dom/Element.h:
* dom/Element.cpp:
(WebCore::Element::attributeChanged): There's no need for this to be a standalone function anymore.

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

8 years ago[WK2] Integrate Page Visibility state change and WK2 Suspend/Resume API
commit-queue@webkit.org [Tue, 8 May 2012 14:59:58 +0000 (14:59 +0000)]
[WK2] Integrate Page Visibility state change and WK2 Suspend/Resume API
https://bugs.webkit.org/show_bug.cgi?id=85650

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-05-08
Reviewed by Kenneth Rohde Christiansen.

This patch uses state changes of the Page Visibility API to trigger the
automatic suspension/resume of animations on the WebPage and its main frame,
in the same fashion of what is used by the Suspend/Resume API of WebKit2.
By telling the WebPage it will move off/on the screen and the FrameView to
hide/show, this patch is suspending/resuming animations (animated painting)
but not timers and other active DOM objects.

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

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

8 years ago[EFL] [DRT] Add baselines for the tests which are missing expected results
commit-queue@webkit.org [Tue, 8 May 2012 14:42:48 +0000 (14:42 +0000)]
[EFL] [DRT] Add baselines for the tests which are missing expected results
https://bugs.webkit.org/show_bug.cgi?id=85875

Unreviewed, add EFL baselines for the tests which are missing expected
results.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-08

* platform/efl/fast/css/first-line-text-decoration-expected.png: Added.
* platform/efl/fast/css/first-line-text-decoration-expected.txt: Added.
* platform/efl/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/efl/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.
* platform/efl/fast/images/png-suite/test-expected.png: Added.
* platform/efl/fast/images/png-suite/test-expected.txt: Added.
* platform/efl/test_expectations.txt:

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

8 years ago[Qt] Add QML/WK2 evaluateJavaScript experimental API
kenneth@webkit.org [Tue, 8 May 2012 14:12:55 +0000 (14:12 +0000)]
[Qt] Add QML/WK2 evaluateJavaScript experimental API
https://bugs.webkit.org/show_bug.cgi?id=85496

Reviewed by Simon Hausmann.

This is an initial patch adding support for strings,
numbers and bools as return values.

Test: qmltests/WebView/tst_evaluateJavaScript.qml

* UIProcess/API/qt/qquickwebview.cpp:
(JSCallbackClosure):
(toQString):
(toQJSValue):
(buildQJSValue):
(javaScriptCallback):
(QQuickWebViewExperimental::evaluateJavaScript):
(QQuickWebView::runJavaScriptInMainFrame):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/tests/qmltests/WebView/tst_evaluateJavaScript.qml: Added.

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

8 years agoShrink ElementAttributeData by factoring out Attr object count.
kling@webkit.org [Tue, 8 May 2012 14:09:37 +0000 (14:09 +0000)]
Shrink ElementAttributeData by factoring out Attr object count.
<http://webkit.org/b/85825>

Reviewed by Antti Koivisto.

Stop tracking the number of Attr objects that point to a given Element on the
Element itself and manage this by having a global hashmap of Element => AttrList,
where AttrList is a vector of (pointers to) the associated Attr objects.

This shrinks ElementAttributeData by one integer, effectively reducing memory
consumption by ~530kB when viewing the full HTML5 spec at <http://whatwg.org/c>.

* dom/ElementAttributeData.h:
(ElementAttributeData):

    Remove m_attrCount...

* dom/Node.h:
(WebCore::Node::hasAttrList):
(WebCore::Node::setHasAttrList):
(WebCore::Node::clearHasAttrList):

    ...replacing it with a Node flag that tells us whether there's an Attr
    object map for this Node (only applies to Elements.)

* dom/ElementAttributeData.cpp:
(WebCore::attrListMap):
(WebCore::attrListForElement):
(WebCore::ensureAttrListForElement):
(WebCore::removeAttrListForElement):
(WebCore::ElementAttributeData::attrIfExists):
(WebCore::ElementAttributeData::ensureAttr):
(WebCore::ElementAttributeData::setAttr):
(WebCore::ElementAttributeData::removeAttr):
(WebCore::ElementAttributeData::detachAttributesFromElement):

    Map Element => per-Element AttrList in a global hash.

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

8 years ago[Blackberry] remove m_isRequestedByPlugin in ResourceRequest
commit-queue@webkit.org [Tue, 8 May 2012 14:02:35 +0000 (14:02 +0000)]
[Blackberry] remove m_isRequestedByPlugin in ResourceRequest
https://bugs.webkit.org/show_bug.cgi?id=84559

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-05-08
Reviewed by Antonio Gomes.

Source/WebCore:

ResourceRequest is a network level abstraction, and it should
not know anything about web concepts such as plug-ins, and Blackberry
does not need m_isRequestedByPlugin any longer, So clean up all related
code.

Tested on a website of http://edition.cnn.com, a new window should be
opened only when user has a singe tap gesture on a plugin element.

* platform/network/blackberry/ResourceRequest.h:
(WebCore::ResourceRequest::ResourceRequest):
(ResourceRequest):
(CrossThreadResourceRequestData):
* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::ResourceRequest::doPlatformCopyData):
(WebCore::ResourceRequest::doPlatformAdopt):

Source/WebKit/blackberry:

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):

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

8 years ago[Qt] Unbreak debugging of WebKit2.
alexis.menard@openbossa.org [Tue, 8 May 2012 14:00:31 +0000 (14:00 +0000)]
[Qt] Unbreak debugging of WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=85839

Reviewed by Simon Hausmann.

Source/WebKit2:

When you attach GDB to a running process, it stops it.
http://trac.webkit.org/changeset/115958 introduced a pause()
call to wait the debugger to be attached to then continue
the execution of the WebProcess. Unfortunately the pause()
function does not return unless a signal handler is called.
This patch introduce an event handler to exit from the paused
state when the debugger send the signal SIGCONT. The old code
works with older version of GDB (<7.0) but not with newer
versions where the behavior of pause() is correct.

* qt/MainQt.cpp:
(sigcontHandler):
(main):

Tools:

When you attach GDB to a running process, it stops it.
http://trac.webkit.org/changeset/115958 introduced a pause()
call to wait the debugger to be attached to then continue
the execution of the WebProcess. Unfortunately the pause()
function does not return unless a signal handler is called.
This patch introduce an event handler to exit from the paused
state when the debugger send the signal SIGCONT. The old code
works with older version of GDB (<7.0) but not with newer
versions where the behavior of pause() is correct.

* WebKitTestRunner/qt/main.cpp:
(sigcontHandler):
(main):

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

8 years ago[EFL][DRT] EFL's DRT does not fully support page visibility
commit-queue@webkit.org [Tue, 8 May 2012 13:57:20 +0000 (13:57 +0000)]
[EFL][DRT] EFL's DRT does not fully support page visibility
https://bugs.webkit.org/show_bug.cgi?id=85032

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-08
Reviewed by Antonio Gomes.

Tools:

* DumpRenderTree/LayoutTestController.cpp:
(resetPageVisibilityCallback): Fix incorrect argumentCount check.
* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues): Properly
reset page visibility setting between tests.
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setPageVisibility): Add support for "preview"
visibility state.

LayoutTests:

Unskip remaining page visibility test cases now that the functionality
is fully implemented in EFL port.

* platform/efl/Skipped:

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

8 years ago[webkit-patch] Return meaningful results from single-result queries.
gavinp@chromium.org [Tue, 8 May 2012 13:39:50 +0000 (13:39 +0000)]
[webkit-patch] Return meaningful results from single-result queries.
https://bugs.webkit.org/show_bug.cgi?id=85367

Reviewed by Dirk Pranke.

Sometimes a quicksearch returns a single result by just redirecting to the page for that single
bug. This patch hacks around that by noticing the redirect target is a single page, and constructing
a result list consisting of that one bug.

* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(BugzillaQueries._fetch_bugs_from_advanced_query):

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

8 years ago[webkit-patch] Add new chrome-channels command to track down current chrome release...
gavinp@chromium.org [Tue, 8 May 2012 13:37:25 +0000 (13:37 +0000)]
[webkit-patch] Add new chrome-channels command to track down current chrome release channels for a committed bug.
https://bugs.webkit.org/show_bug.cgi?id=85368

Reviewed by Eric Seidel.

* Scripts/webkitpy/common/config/urls.py:
* Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
(MockBugzillaQueries.fetch_bugs_matching_quicksearch):
* Scripts/webkitpy/common/net/omahaproxy.py: Added.
(OmahaProxy):
(OmahaProxy.__init__):
(OmahaProxy.set_url):
(OmahaProxy._json_url):
(OmahaProxy._get_json):
(OmahaProxy.get_revisions):
* Scripts/webkitpy/common/net/omahaproxy_unittest.py: Added.
(MockOmahaProxy):
(MockOmahaProxy.__init__):
(OmahaProxyTest):
(OmahaProxyTest.test_get_revisions):
* Scripts/webkitpy/tool/commands/__init__.py:
* Scripts/webkitpy/tool/commands/bugsearch.py:
(BugSearch):
* Scripts/webkitpy/tool/commands/chromechannels.py: Added.
(ChromeChannels):
(__init__):
(execute):
* Scripts/webkitpy/tool/commands/chromechannels_unittest.py: Added.
(MockOmahaProxy):
(MockOmahaProxy.get_revisions):
(TestableChromeChannels):
(TestableChromeChannels.__init__):
(ChromeChannelsTest):
(ChromeChannelsTest.test_single_bug):
(ChromeChannelsTest.test_with_query):

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

8 years ago[EFL] Update documentation of ewk_frame_contents_alternate_set and ewk_view_zoom_rang...
commit-queue@webkit.org [Tue, 8 May 2012 13:32:32 +0000 (13:32 +0000)]
[EFL] Update documentation of ewk_frame_contents_alternate_set and ewk_view_zoom_range_set.
https://bugs.webkit.org/show_bug.cgi?id=84588

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-05-08
Reviewed by Eric Seidel.

In ewk_frame_contents_alternate_set, param unreachableUri is required, must not be 0.
In ewk_view_zoom_range_set, function returns EINA_FALSE only on failure,
not when zoom range is changed.

* ewk/ewk_frame.h:
* ewk/ewk_view.h:

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

8 years agoUnreviewed. Fix GTK+ unit tests.
carlosgc@webkit.org [Tue, 8 May 2012 13:29:43 +0000 (13:29 +0000)]
Unreviewed. Fix GTK+ unit tests.

* gtk/common.py:
(pkg_config_file_variable):

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

8 years agoUnreviewed. Remove an accidentally committed file.
ossy@webkit.org [Tue, 8 May 2012 10:04:33 +0000 (10:04 +0000)]
Unreviewed. Remove an accidentally committed file.

* platform/qt/Skipped.orig: Removed.

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

8 years ago[GTK] Google tests that time out are leaked
carlosgc@webkit.org [Tue, 8 May 2012 09:55:24 +0000 (09:55 +0000)]
[GTK] Google tests that time out are leaked
https://bugs.webkit.org/show_bug.cgi?id=84973

Reviewed by Philippe Normand.

Move Tools/Scripts/run-gtk-tests to Tools/gtk/run-api-tests
leaving run-gtk-tests as simple wrapper that runs run-api-tests in
a jhbuild environment when jhbuild is available.

* Scripts/run-gtk-tests: Run Tools/gtk/run-api-tests directly or
with jhbuild if present.
* gtk/common.py:
(pkg_config_file_variable): Generic function to get a variable
from a pkg-config file.
(prefix_of_pkg_config_file): Use pkg_config_file_variable with 'prefix'.
* gtk/run-api-tests: Copied from Tools/Scripts/run-gtk-tests.
(TestRunner.__init__): Use common.build_path() to get the programs path.
(TestRunner._lookup_atspi2_binary): Use
common.pkg_config_file_variable() to get the 'exec_prefix'.
(TestRunner._start_accessibility_daemons): Use subprocess.Popen()
directly instead of helper _create_process that has been removed.
(TestRunner._setup_testing_environment): Use subprocess.Popen()
directly instead of helper _create_process that has been
removed. Use common.top_level_path() and common.build_path()
instead of custom methods that have been removed too.
(TestRunner._run_test_command): Use subprocess.Popen() directly
instead of helper _create_process that has been removed.

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

8 years ago[Qt] Unskip now passing tests and update platform specific expected files.
ossy@webkit.org [Tue, 8 May 2012 09:50:55 +0000 (09:50 +0000)]
[Qt] Unskip now passing tests and update platform specific expected files.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-08
Reviewed by Csaba Osztrogonác.

* platform/qt/Skipped:
* platform/qt/Skipped.orig: Copied from LayoutTests/platform/qt/Skipped.
* platform/qt/editing/pasteboard/paste-text-014-expected.png: Added.
* platform/qt/fast/block/float/editable-text-overlapping-float-expected.png: Added.
* platform/qt/fast/block/float/editable-text-overlapping-float-expected.txt:
* platform/qt/fast/block/float/multiple-float-positioning-expected.png: Added.
* platform/qt/fast/block/float/multiple-float-positioning-expected.txt:
* platform/qt/fast/block/margin-collapse/103-expected.png: Added.
* platform/qt/fast/block/margin-collapse/103-expected.txt: Added.
* platform/qt/fast/block/positioning/absolute-in-inline-ltr-2-expected.png: Added.
* platform/qt/fast/block/positioning/absolute-in-inline-ltr-2-expected.txt:
* platform/qt/fast/block/positioning/absolute-in-inline-rtl-2-expected.png: Added.
* platform/qt/fast/block/positioning/absolute-in-inline-rtl-2-expected.txt:
* platform/qt/fast/block/positioning/absolute-in-inline-rtl-3-expected.png: Added.
* platform/qt/fast/block/positioning/absolute-in-inline-rtl-3-expected.txt:
* platform/qt/fast/block/positioning/auto/006-expected.png: Added.
* platform/qt/fast/block/positioning/auto/006-expected.txt:
* platform/qt/fast/css/apple-prefix-expected.png: Added.
* platform/qt/fast/css/apple-prefix-expected.txt:
* platform/qt/fast/css/color-correction-backgrounds-and-text-expected.png: Added.
* platform/qt/fast/css/color-correction-backgrounds-and-text-expected.txt: Added.
* platform/qt/fast/css/ex-after-font-variant-expected.png: Added.
* platform/qt/fast/css/ex-after-font-variant-expected.txt:
* platform/qt/fast/css/percentage-non-integer-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/selection-clear-expected.png.
* platform/qt/fast/css/percentage-non-integer-expected.txt:
* platform/qt/fast/css/positioned-overflow-scroll-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/selection-clear-expected.png.
* platform/qt/fast/css/positioned-overflow-scroll-expected.txt: Added.
* platform/qt/fast/dom/HTMLImageElement/image-alt-text-expected.png: Added.
* platform/qt/fast/dom/HTMLImageElement/image-alt-text-expected.txt:
* platform/qt/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png: Added.
* platform/qt/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
* platform/qt/fast/dynamic/008-expected.png: Added.
* platform/qt/fast/dynamic/008-expected.txt:
* platform/qt/fast/forms/box-shadow-override-expected.png: Added.
* platform/qt/fast/forms/box-shadow-override-expected.txt:
* platform/qt/fast/forms/disabled-select-change-index-expected.png: Added.
* platform/qt/fast/forms/disabled-select-change-index-expected.txt:
* platform/qt/fast/forms/file/file-input-direction-expected.png: Added.
* platform/qt/fast/forms/file/file-input-direction-expected.txt:
* platform/qt/fast/forms/file/file-input-disabled-expected.png: Added.
* platform/qt/fast/forms/file/file-input-disabled-expected.txt:
* platform/qt/fast/forms/form-element-geometry-expected.png: Added.
* platform/qt/fast/forms/form-element-geometry-expected.txt:
* platform/qt/fast/forms/input-disabled-color-expected.png: Added.
* platform/qt/fast/forms/input-disabled-color-expected.txt:
* platform/qt/fast/forms/input-text-click-outside-expected.png: Added.
* platform/qt/fast/forms/input-text-click-outside-expected.txt: Added.
* platform/qt/fast/forms/input-text-scroll-left-on-blur-expected.png: Added.
* platform/qt/fast/forms/input-text-scroll-left-on-blur-expected.txt: Added.
* platform/qt/fast/forms/negativeLineHeight-expected.png: Added.
* platform/qt/fast/forms/negativeLineHeight-expected.txt:
* platform/qt/fast/forms/placeholder-pseudo-style-expected.png: Added.
* platform/qt/fast/forms/placeholder-pseudo-style-expected.txt: Added.
* platform/qt/fast/forms/range/slider-padding-expected.png: Added.
* platform/qt/fast/forms/range/slider-padding-expected.txt: Added.
* platform/qt/fast/forms/tabbing-input-iframe-expected.png: Added.
* platform/qt/fast/forms/tabbing-input-iframe-expected.txt: Added.
* platform/qt/fast/forms/textAreaLineHeight-expected.png: Added.
* platform/qt/fast/forms/textAreaLineHeight-expected.txt: Added.
* platform/qt/fast/forms/textarea-align-expected.png: Added.
* platform/qt/fast/forms/textarea-align-expected.txt:
* platform/qt/fast/forms/textarea-scrollbar-expected.png: Added.
* platform/qt/fast/forms/textarea-scrollbar-expected.txt: Added.
* platform/qt/fast/forms/textarea-scrolled-type-expected.png: Added.
* platform/qt/fast/forms/textarea-scrolled-type-expected.txt: Added.
* platform/qt/fast/forms/textarea-setinnerhtml-expected.png: Added.
* platform/qt/fast/forms/textarea-setinnerhtml-expected.txt:
* platform/qt/fast/inline/inline-borders-with-bidi-override-expected.png: Added.
* platform/qt/fast/inline/inline-borders-with-bidi-override-expected.txt:
* platform/qt/fast/invalid/016-expected.png: Added.
* platform/qt/fast/invalid/016-expected.txt:
* platform/qt/fast/invalid/missing-end-tag-expected.png: Added.
* platform/qt/fast/invalid/missing-end-tag-expected.txt: Added.
* platform/qt/fast/layers/scroll-rect-to-visible-expected.png: Added.
* platform/qt/fast/layers/scroll-rect-to-visible-expected.txt:
* platform/qt/fast/overflow/003-expected.png: Added.
* platform/qt/fast/overflow/003-expected.txt:
* platform/qt/fast/overflow/clip-rects-fixed-ancestor-expected.png: Added.
* platform/qt/fast/overflow/clip-rects-fixed-ancestor-expected.txt: Added.
* platform/qt/fast/overflow/image-selection-highlight-expected.png: Added.
* platform/qt/fast/overflow/image-selection-highlight-expected.txt:
* platform/qt/fast/overflow/overflow-rtl-expected.png: Added.
* platform/qt/fast/overflow/overflow-rtl-expected.txt: Added.
* platform/qt/fast/overflow/overflow-x-y-expected.png: Added.
* platform/qt/fast/overflow/overflow-x-y-expected.txt: Added.
* platform/qt/fast/overflow/scrollRevealButton-expected.png: Added.
* platform/qt/fast/overflow/scrollRevealButton-expected.txt: Added.
* platform/qt/fast/overflow/unreachable-overflow-rtl-bug-expected.png: Added.
* platform/qt/fast/overflow/unreachable-overflow-rtl-bug-expected.txt:
* platform/qt/fast/parser/entity-comment-in-textarea-expected.png: Added.
* platform/qt/fast/parser/entity-comment-in-textarea-expected.txt: Added.
* platform/qt/fast/parser/open-comment-in-textarea-expected.png: Added.
* platform/qt/fast/parser/open-comment-in-textarea-expected.txt: Added.
* platform/qt/fast/repaint/button-spurious-layout-hint-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/selection-clear-expected.png.
* platform/qt/fast/repaint/button-spurious-layout-hint-expected.txt: Added.
* platform/qt/fast/repaint/control-clip-expected.png: Added.
* platform/qt/fast/repaint/control-clip-expected.txt:
* platform/qt/fast/repaint/flexible-box-overflow-expected.png: Added.
* platform/qt/fast/repaint/flexible-box-overflow-expected.txt: Added.
* platform/qt/fast/repaint/flexible-box-overflow-horizontal-expected.png: Added.
* platform/qt/fast/repaint/flexible-box-overflow-horizontal-expected.txt: Added.
* platform/qt/fast/repaint/focus-ring-expected.png: Added.
* platform/qt/fast/repaint/focus-ring-expected.txt: Added.
* platform/qt/fast/repaint/inline-block-overflow-expected.png: Added.
* platform/qt/fast/repaint/inline-block-overflow-expected.txt: Added.
* platform/qt/fast/repaint/inline-outline-repaint-expected.png: Added.
* platform/qt/fast/repaint/inline-outline-repaint-expected.txt:
* platform/qt/fast/repaint/layer-child-outline-expected.png: Added.
* platform/qt/fast/repaint/layer-child-outline-expected.txt: Added.
* platform/qt/fast/repaint/layer-outline-expected.png: Added.
* platform/qt/fast/repaint/layer-outline-expected.txt: Added.
* platform/qt/fast/repaint/layer-outline-horizontal-expected.png: Added.
* platform/qt/fast/repaint/layer-outline-horizontal-expected.txt: Added.
* platform/qt/fast/repaint/list-marker-expected.png: Added.
* platform/qt/fast/repaint/list-marker-expected.txt: Added.
* platform/qt/fast/repaint/selection-after-delete-expected.png: Added.
* platform/qt/fast/repaint/selection-after-delete-expected.txt:
* platform/qt/fast/repaint/selection-after-remove-expected.png: Added.
* platform/qt/fast/repaint/selection-after-remove-expected.txt:
* platform/qt/fast/repaint/selection-clear-expected.png:
* platform/qt/fast/repaint/selection-clear-expected.txt:
* platform/qt/fast/repaint/selection-gap-overflow-scroll-expected.png: Added.
* platform/qt/fast/repaint/selection-gap-overflow-scroll-expected.txt: Added.
* platform/qt/fast/repaint/text-selection-rect-in-overflow-2-expected.png: Added.
* platform/qt/fast/repaint/text-selection-rect-in-overflow-2-expected.txt: Added.
* platform/qt/fast/repaint/text-selection-rect-in-overflow-expected.png: Added.
* platform/qt/fast/repaint/text-selection-rect-in-overflow-expected.txt: Added.
* platform/qt/fast/repaint/text-shadow-expected.png: Added.
* platform/qt/fast/repaint/text-shadow-expected.txt: Added.
* platform/qt/fast/repaint/text-shadow-horizontal-expected.png: Added.
* platform/qt/fast/repaint/text-shadow-horizontal-expected.txt: Added.
* platform/qt/fast/replaced/border-radius-clip-expected.png: Added.
* platform/qt/fast/replaced/border-radius-clip-expected.txt: Added.
* platform/qt/fast/replaced/width100percent-textarea-expected.png: Added.
* platform/qt/fast/replaced/width100percent-textarea-expected.txt: Added.
* platform/qt/fast/table/003-expected.png: Added.
* platform/qt/fast/table/003-expected.txt:
* platform/qt/fast/table/cell-pref-width-invalidation-expected.png: Added.
* platform/qt/fast/table/cell-pref-width-invalidation-expected.txt:
* platform/qt/fast/text/atsui-small-caps-punctuation-size-expected.png: Added.
* platform/qt/fast/text/atsui-small-caps-punctuation-size-expected.txt:
* platform/qt/fast/text/basic/003-expected.png: Added.
* platform/qt/fast/text/basic/003-expected.txt:
* platform/qt/fast/text/cg-vs-atsui-expected.png: Added.
* platform/qt/fast/text/cg-vs-atsui-expected.txt:
* platform/qt/fast/text/complex-text-opacity-expected.png: Added.
* platform/qt/fast/text/complex-text-opacity-expected.txt: Added.
* platform/qt/fast/text/embed-at-end-of-pre-wrap-line-expected.png: Added.
* platform/qt/fast/text/embed-at-end-of-pre-wrap-line-expected.txt: Added.
* platform/qt/fast/text/large-text-composed-char-expected.png: Added.
* platform/qt/fast/text/large-text-composed-char-expected.txt:
* platform/qt/fast/text/letter-spacing-negative-opacity-expected.png: Added.
* platform/qt/fast/text/letter-spacing-negative-opacity-expected.txt:
* platform/qt/fast/text/line-breaks-after-white-space-expected.png: Added.
* platform/qt/fast/text/line-breaks-after-white-space-expected.txt:
* platform/qt/fast/text/whitespace/normal-after-nowrap-breaking-expected.png: Added.
* platform/qt/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
* platform/qt/fast/text/whitespace/pre-break-word-expected.png: Added.
* platform/qt/fast/text/whitespace/pre-break-word-expected.txt:
* platform/qt/fast/text/whitespace/pre-wrap-line-test-expected.png: Added.
* platform/qt/fast/text/whitespace/pre-wrap-line-test-expected.txt:
* platform/qt/fast/text/whitespace/pre-wrap-overflow-selection-expected.png: Added.
* platform/qt/fast/text/whitespace/pre-wrap-overflow-selection-expected.txt:
* platform/qt/fast/text/word-break-expected.png: Added.
* platform/qt/fast/text/word-break-expected.txt:
* platform/qt/fast/xsl/xslt-entity-expected.png: Added.
* platform/qt/fast/xsl/xslt-entity-expected.txt:

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

8 years agoExtra line-breaks added when copying from source.
apavlov@chromium.org [Tue, 8 May 2012 09:43:19 +0000 (09:43 +0000)]
Extra line-breaks added when copying from source.
https://bugs.webkit.org/show_bug.cgi?id=85282

Reviewed by Ryosuke Niwa.

Source/WebCore:

The code used to replace any \n by \r\n, even the one that had a preceding \r, resulting in \r\r\n.
This change introduces a check for the preceding \r when replacing \n's.

Test: platform/win/editing/pasteboard/pasting-crlf-isnt-translated-to-crcrlf-win.html

* platform/chromium/ClipboardUtilitiesChromium.cpp:
(WebCore::replaceNewlinesWithWindowsStyleNewlines):
* platform/win/ClipboardUtilitiesWin.cpp:
(WebCore::replaceNewlinesWithWindowsStyleNewlines):

LayoutTests:

* platform/win/editing/pasteboard/pasting-crlf-isnt-translated-to-crcrlf-win-expected.txt: Added.
* platform/win/editing/pasteboard/pasting-crlf-isnt-translated-to-crcrlf-win.html: Added.

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

8 years ago[EFL] [DRT] Clear extra views before setting a blank page
commit-queue@webkit.org [Tue, 8 May 2012 09:28:30 +0000 (09:28 +0000)]
[EFL] [DRT] Clear extra views before setting a blank page
https://bugs.webkit.org/show_bug.cgi?id=85608

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-08
Reviewed by Kenneth Rohde Christiansen.

We need to clear the extra views before setting a blank page,
otherwise it will cause more events interactions and sometimes
trigger a unload(). This was causing frame-crash-with-page-cache.html
to leak events to the next test causing any subsequent test to
fail.

* DumpRenderTree/efl/DumpRenderTree.cpp:
(runTest):
* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::clearExtraViews):
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):

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

8 years ago[Qt] Gardening after 116361. Updated expected result.
kkristof@inf.u-szeged.hu [Tue, 8 May 2012 09:04:05 +0000 (09:04 +0000)]
[Qt] Gardening after 116361. Updated expected result.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-08
Reviewed by Csaba Osztrogonác.

* platform/qt/fast/js/switch-behaviour-expected.txt:

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

8 years agoOS(ANDROID) JNI AttachCurrentThread take JNIEnv** as a parameter, not void**
abarth@webkit.org [Tue, 8 May 2012 09:00:08 +0000 (09:00 +0000)]
OS(ANDROID) JNI AttachCurrentThread take JNIEnv** as a parameter, not void**
https://bugs.webkit.org/show_bug.cgi?id=85869

Reviewed by Eric Seidel.

According to
http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/invocation.html,
AttachCurrentThread takes a JNIEnv** rather than a void**.  Apparently,
most implementations actually take a void**.  The OS(ANDROID)
implementation, however, actually takes an JNIEnv**.  This patch
introduces a typedef to give each implementation what it desires.

* bridge/jni/JNIUtility.cpp:
(JSC::Bindings::getJNIEnv):

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

8 years agoUnreviewed gardening. Remove tests from test expectations and
ossy@webkit.org [Tue, 8 May 2012 08:59:53 +0000 (08:59 +0000)]
Unreviewed gardening. Remove tests from test expectations and
from a Skipped list, because they were disabled by r94327.

* platform/efl/Skipped:
* platform/gtk/test_expectations.txt:
* platform/mac/test_expectations.txt:
* platform/qt/test_expectations.txt:

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

8 years ago[Qt] X11 plugins need to be reworked for Qt5+WK1
kbalazs@webkit.org [Tue, 8 May 2012 08:42:37 +0000 (08:42 +0000)]
[Qt] X11 plugins need to be reworked for Qt5+WK1
https://bugs.webkit.org/show_bug.cgi?id=80691

Reviewed by Simon Hausmann.

.:

Implement basic windowless plugin support with Qt5.

* Source/api.pri: Need private API's to be able
to use QApplicationPrivate::windowForWidget.

Source/WebCore:

Implement basic windowless plugin support with Qt5.
The solution is the same that has been chosen for
WebKit2. We get the content drawed by the plugin
from the X server as an image, create a QImage
from it and paint it to the window surface with QPainter.
Performance is sufficient for basic video playback.

No new tests, covered by existing plugin tests.

* Target.pri:
* WebCore.pri:
* platform/qt/QWebPageClient.h:
(QWebPageClient):
* plugins/PluginView.h:
(PluginView):
* plugins/qt/PluginPackageQt.cpp:
(WebCore::PluginPackage::isPluginBlacklisted):
Blacklist plugins that are incompatible with Qt5.
The only one I know about currently is skypebuttons
but the list can be extended in the future.
(WebCore):
(WebCore::PluginPackage::load):
* plugins/qt/PluginViewQt.cpp:
(X11Environment):
(WebCore):
(WebCore::x11Display):
(WebCore::x11Screen):
(WebCore::rootWindowID):
(WebCore::displayDepth):
(WebCore::syncX):
(WebCore::PluginView::platformPageClient): Added a safe
convenience getter for the QWebpageClient.
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::setFocus):
(WebCore::setupGraphicsExposeEvent):
(WebCore::PluginView::paintUsingXPixmap):
(WebCore::setSharedXEventFields):
(WebCore::PluginView::initXEvent):
(WebCore::PluginView::setXKeyEventSpecificFields):
(WebCore::setXButtonEventSpecificFields):
(WebCore::setXMotionEventSpecificFields):
(WebCore::setXCrossingEventSpecificFields):
(WebCore::PluginView::setNPWindowIfNeeded):
(WebCore::PluginView::setParentVisible):
(WebCore::PluginView::platformGetValue):
(WebCore::PluginView::invalidateRect):
(WebCore::getVisualAndColormap):
Refactored this function to make it more clear
what does it actually do.
(WebCore::PluginView::platformStart):
(WebCore::PluginView::platformDestroy):

Source/WebKit/qt:

* Api/qwebsettings.cpp:
(QWebSettings::enablePersistentStorage):
Build fix for Qt5.
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::createPlugin):
Inject the wmode parameter for flash so it will
work in windowless, non-transparent mode which
is the only one we support currently.
* WebCoreSupport/PageClientQt.cpp:
(WebCore):
(WebCore::QWebPageClient::ownerWindow):
Added a getter for the top level window so the PluginView
can get it without calling into QtWidgets code.

Tools:

Implement basic windowless plugin support with Qt5.

* qmake/mkspecs/features/features.prf:
Enable NPAPI plugins if X11 libraries are available.
* qmake/mkspecs/features/functions.prf:
Added a convenience function to determine availability
of X11 libraries.

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

8 years agoInline Node::traverseNextNode
antti@apple.com [Tue, 8 May 2012 08:31:29 +0000 (08:31 +0000)]
Inline Node::traverseNextNode
https://bugs.webkit.org/show_bug.cgi?id=85844

Reviewed by Ryosuke Niwa.

Inline traverseNextNode and traverseNextSibling to reduce entry/exit overhead and allow better code generation
for many hot loops. Also added separate versions of stayWithin and unscoped cases (the function is
so simple that this seemed like the cleanest way to do it, the most reliable too) and used UNLIKELY for the
end-of-traversal conditions.

The traversal function can show up to ~1% in normal page loading profiles.

run-perf-tests seems to think this is a progression in some subtests though bots will tell for certain.

* WebCore.exp.in:
* dom/ContainerNode.h:

    Following the existing pattern, function bodies go to ContainerNode.h so they can call parentNode().
    (which returns ContainerNode, not Node).

(WebCore::Node::traverseNextNode):
(WebCore):
(WebCore::Node::traverseNextSibling):
* dom/Node.cpp:
(WebCore):
* dom/Node.h:
(Node):

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

8 years ago[Chromium] Assertions.cpp should work on OS(ANDROID)
abarth@webkit.org [Tue, 8 May 2012 07:34:08 +0000 (07:34 +0000)]
[Chromium] Assertions.cpp should work on OS(ANDROID)
https://bugs.webkit.org/show_bug.cgi?id=85867

Reviewed by Eric Seidel.

Some minor ifdefs for OS(ANDROID) on PLATFORM(CHROMIUM).

* wtf/Assertions.cpp:

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

8 years ago[BlackBerry] AutofillManager implementation upstream
commit-queue@webkit.org [Tue, 8 May 2012 07:05:01 +0000 (07:05 +0000)]
[BlackBerry] AutofillManager implementation upstream
https://bugs.webkit.org/show_bug.cgi?id=85576

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-08
Reviewed by Rob Buis.

Source/WebKit:

Added WebKit/blackberry/WebCoreSupport/AutofillManager.cpp
into building system of BlackBerry porting.

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

RIM PR: 136405
Implemented class AutofillManager to handle the form autofill
interactions.
It listens to text changed notification from text input, searches
autofill database for the suggested autofill candidate value,
and notifies WebPageClient to pop up a context dialog for user;
it also responds to user's choice by autofilling the text input.

* WebCoreSupport/AutofillManager.cpp: Added.
(WebCore):
(WebCore::AutofillManager::create):
(WebCore::AutofillManager::didChangeInTextField):
(WebCore::AutofillManager::autofillTextField):
(WebCore::AutofillManager::saveTextFields):
(WebCore::AutofillManager::clear):
* WebCoreSupport/AutofillManager.h: Added.
(WTF):
(WebKit):
(WebCore):
(AutofillManager):
(WebCore::AutofillManager::m_element):

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

8 years ago[Chormium] Test expectatino update
tkent@chromium.org [Tue, 8 May 2012 06:59:45 +0000 (06:59 +0000)]
[Chormium] Test expectatino update

* platform/chromium/test_expectations.txt:
 - multiline-pack.html is failing on all DEBUG bots.
 - filter-repaint-custom-rotated.html fails on Mac.

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

8 years agoWeb Inspector: make JavaScriptSourceFrame use breakpoint manager's breakpoints store.
pfeldman@chromium.org [Tue, 8 May 2012 06:56:55 +0000 (06:56 +0000)]
Web Inspector: make JavaScriptSourceFrame use breakpoint manager's breakpoints store.
https://bugs.webkit.org/show_bug.cgi?id=85714

Reviewed by Yury Semikhatsky.

It is currently using its own copy of breakpoints which is not necessary.

* inspector/front-end/BreakpointManager.js:
(WebInspector.BreakpointManager):
(WebInspector.BreakpointManager.prototype.restoreBreakpoints):
(WebInspector.BreakpointManager.prototype.setBreakpoint):
(WebInspector.BreakpointManager.prototype._innerSetBreakpoint):
(WebInspector.BreakpointManager.prototype.findBreakpoint):
(WebInspector.BreakpointManager.prototype.reset):
(WebInspector.BreakpointManager.prototype._debuggerReset):
(WebInspector.BreakpointManager.prototype._breakpointResolved):
(WebInspector.BreakpointManager.prototype._uiLocationAdded):
(WebInspector.BreakpointManager.prototype._uiLocationRemoved):
(WebInspector.BreakpointManager.Breakpoint.prototype._breakpointStorageId):
(WebInspector.BreakpointManager.Storage.prototype._restoreBreakpoints):
(set WebInspector.BreakpointManager.Storage.Item):
* inspector/front-end/JavaScriptSource.js:
(WebInspector.JavaScriptSource.prototype.consoleMessagesCleared):
(WebInspector.JavaScriptSource.prototype.breakpointStorageId):
* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame):
(WebInspector.JavaScriptSourceFrame.prototype._onContentChanged):
(WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu):
(WebInspector.JavaScriptSourceFrame.prototype.beforeTextChanged):
(WebInspector.JavaScriptSourceFrame.prototype._onMouseDown):
(WebInspector.JavaScriptSourceFrame.prototype._breakpointAdded):
(WebInspector.JavaScriptSourceFrame.prototype._breakpointRemoved):
(WebInspector.JavaScriptSourceFrame.prototype.onTextViewerContentLoaded):
(WebInspector.JavaScriptSourceFrame.prototype._continueToLine):
(WebInspector.JavaScriptSourceFrame.prototype._updateBreakpointsAfterLiveEdit):

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

8 years agoWeb Inspector: do not create locations for resolved provisional breakpoints
pfeldman@chromium.org [Tue, 8 May 2012 06:30:35 +0000 (06:30 +0000)]
Web Inspector: do not create locations for resolved provisional breakpoints
https://bugs.webkit.org/show_bug.cgi?id=85716

Reviewed by Yury Semikhatsky.

Source/WebCore:

Marked provisional breakpoints as such.

* inspector/front-end/BreakpointManager.js:
(WebInspector.BreakpointManager.prototype._debuggerReset):
(WebInspector.BreakpointManager.prototype._breakpointResolved):

LayoutTests:

* inspector/debugger/breakpoint-manager-expected.txt:
* inspector/debugger/breakpoint-manager.html:

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

8 years agoAdjust flakiness dashboard gpu_tests image diff URLs.
commit-queue@webkit.org [Tue, 8 May 2012 05:59:34 +0000 (05:59 +0000)]
Adjust flakiness dashboard gpu_tests image diff URLs.
https://bugs.webkit.org/show_bug.cgi?id=85423

Patch by Dave Tu <dtu@chromium.org> on 2012-05-07
Reviewed by Ojan Vafai.

* Tools/TestResultServer/static-dashboards/flakiness_dashboard.js:

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

8 years agoCompositing layers with transformed children not large enough to show contents
simon.fraser@apple.com [Tue, 8 May 2012 05:45:43 +0000 (05:45 +0000)]
Compositing layers with transformed children not large enough to show contents
https://bugs.webkit.org/show_bug.cgi?id=85855

Source/WebCore:

Reviewed by Dan Bernstein.

r114518 added a code path to RenderLayer::calculateLayerBounds() which
does an early return if the layer has clipping. However, this code
path omitted to take local transforms into account.

Fix is to handle transforms as we do in the non-clipped case.

Test: compositing/geometry/bounds-clipped-composited-child.html

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

LayoutTests:

Reviewed by Dan Bernstein.

Test having composited element with clipped, transformed children.

* compositing/geometry/bounds-clipped-composited-child-expected.png: Added.
* compositing/geometry/bounds-clipped-composited-child-expected.txt: Added.
* compositing/geometry/bounds-clipped-composited-child.html: Added.

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

8 years agoFix signed/unsigned mismatch
commit-queue@webkit.org [Tue, 8 May 2012 05:14:07 +0000 (05:14 +0000)]
Fix signed/unsigned mismatch
https://bugs.webkit.org/show_bug.cgi?id=85845

Make literal in assert be unsigned to match comparison on LHS. Avoids
warning on Windows.

Patch by Scott Graham <scottmg@chromium.org> on 2012-05-07
Reviewed by Eric Seidel.

No new tests. No intended functionality change.

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::splitColumn):

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

8 years agoUnreviewed build fix: didOpenFileSystem hides overloaded virtual function
kinuko@chromium.org [Tue, 8 May 2012 05:00:10 +0000 (05:00 +0000)]
Unreviewed build fix: didOpenFileSystem hides overloaded virtual function

* src/WorkerAsyncFileSystemChromium.cpp:

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

8 years agoFix performance regression for floats caused by LayoutUnit change
eae@chromium.org [Tue, 8 May 2012 04:12:07 +0000 (04:12 +0000)]
Fix performance regression for floats caused by LayoutUnit change
https://bugs.webkit.org/show_bug.cgi?id=85834

Reviewed by Eric Seidel.

Fix performance regression caused by r116009 by disabling the use of
64bit math in FractionalLayoutUnit, simplifying the pixelSnappedMaxX/Y
math, inlining a couple of methods and replacing the literal 0 (zero)
with ZERO_LAYOUT_UNIT.

No new tests, no change in functionality.

* platform/FractionalLayoutUnit.h:
(WebCore::boundedMultiply):
(WebCore::operator*):
(WebCore::operator/):
Disable the use of 64bit (long long) math in the case where the fraction
is set to 1.

* platform/graphics/FractionalLayoutRect.h:
(WebCore::FractionalLayoutRect::pixelSnappedMaxX):
(WebCore::FractionalLayoutRect::pixelSnappedMaxY):
Simplify the pixel snapping logic for maxX/maxY.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::isSelfCollapsingBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::computeOverflow):
(WebCore::RenderBlock::clearFloatsIfNeeded):
(WebCore::RenderBlock::paintChildren):
(WebCore::RenderBlock::blockSelectionGap):
(WebCore::RenderBlock::logicalLeftSelectionGap):
(WebCore::RenderBlock::logicalRightSelectionGap):
(WebCore::RenderBlock::computeLogicalLocationForFloat):
(WebCore::RenderBlock::lowestFloatLogicalBottom):
(WebCore::RenderBlock::getClearDelta):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
(WebCore::RenderBlock::addFocusRingRects):
(WebCore::RenderBlock::adjustLinePositionForPagination):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::availableLogicalWidthForLine):
(WebCore::RenderBlock::availableLogicalWidthForContent):
(WebCore::RenderBlock::FloatingObject::x):
(WebCore::RenderBlock::FloatingObject::maxX):
(WebCore::RenderBlock::FloatingObject::y):
(WebCore::RenderBlock::FloatingObject::maxY):
(WebCore::RenderBlock::FloatingObject::width):
(WebCore::RenderBlock::FloatingObject::height):
(FloatingObject):
(WebCore::RenderBlock::FloatingObject::pixelSnappedX):
(WebCore::RenderBlock::FloatingObject::pixelSnappedMaxX):
(WebCore::RenderBlock::FloatingObject::pixelSnappedY):
(WebCore::RenderBlock::FloatingObject::pixelSnappedMaxY):
(WebCore::RenderBlock::FloatingObject::pixelSnappedWidth):
(WebCore::RenderBlock::FloatingObject::pixelSnappedHeight):
(WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault):
(WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault):
(WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
(WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
* rendering/RenderBoxModelObject.cpp:
(WebCore::accumulateRelativePositionOffsets):
(WebCore::RenderBoxModelObject::offsetLeft):
(WebCore::RenderBoxModelObject::offsetTop):
(WebCore::RenderBoxModelObject::computedCSSPaddingTop):
(WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
(WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
(WebCore::RenderBoxModelObject::computedCSSPaddingRight):
(WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
(WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
(WebCore::RenderBoxModelObject::computedCSSPaddingStart):
(WebCore::RenderBoxModelObject::computedCSSPaddingEnd):

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

8 years agoUnreviewed build fix: adding missing include.
kinuko@chromium.org [Tue, 8 May 2012 04:11:08 +0000 (04:11 +0000)]
Unreviewed build fix: adding missing include.

* src/AsyncFileSystemChromium.cpp:

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

8 years ago[Chromium] Add expectations for first-line-text-decoration.html.
tkent@chromium.org [Tue, 8 May 2012 04:10:56 +0000 (04:10 +0000)]
[Chromium] Add expectations for first-line-text-decoration.html.

* platform/chromium-linux/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-expected.txt: Added.

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

8 years agowidth/height attributes of input element cannot be accessed by JavaScript.
commit-queue@webkit.org [Tue, 8 May 2012 03:49:57 +0000 (03:49 +0000)]
width/height attributes of input element cannot be accessed by JavaScript.
https://bugs.webkit.org/show_bug.cgi?id=70304

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-05-07
Reviewed by Darin Adler.

If the type of input element is image button, width/height attributes should be supported.
These attributes are defined in HTML5 spec.
http://www.w3.org/TR/html5/the-map-element.html#attr-dim-width

Source/WebCore:

Tests: fast/forms/input-width-height-attributes-without-renderer-loaded-image.html
       fast/forms/input-width-height-attributes-without-renderer-not-loaded-image.html
       fast/forms/input-width-height-attributes-without-renderer.html
       fast/forms/input-width-height-attributes.html

* html/HTMLInputElement.cpp: Add setter/getter functions to query/set width/height of input element.
(WebCore):
(WebCore::HTMLInputElement::height): Gets height of input element.
(WebCore::HTMLInputElement::width): Gets width of input element.
(WebCore::HTMLInputElement::setHeight): Sets height of input element.
(WebCore::HTMLInputElement::setWidth): Sets width of input element.
* html/HTMLInputElement.h: Add public prototype.
(HTMLInputElement):
* html/HTMLInputElement.idl: Add width/height attributes.
* html/ImageInputType.cpp: Add getter functions if the element is an image button.
(WebCore):
(WebCore::ImageInputType::height): Gets height of input element.
(WebCore::ImageInputType::width): Gets width of input element.
* html/ImageInputType.h: Add prototype.
(ImageInputType):
* html/InputType.cpp: Add getter functions.
(WebCore::InputType::height): Returns zero.
(WebCore):
(WebCore::InputType::width): Returns zero.
* html/InputType.h: Add prototype.
(InputType):

LayoutTests:

* fast/forms/input-width-height-attributes-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-loaded-image-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-loaded-image.html: Added.
* fast/forms/input-width-height-attributes-without-renderer-not-loaded-image-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-not-loaded-image.html: Added.
* fast/forms/input-width-height-attributes-without-renderer.html: Added.
* fast/forms/input-width-height-attributes.html: Added.
* fast/forms/resources/green.jpg: Added.
* fast/forms/resources/image-slow.pl: Added.

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

8 years agoSupport cross-filesystem operations in FileSystem API
kinuko@chromium.org [Tue, 8 May 2012 03:34:47 +0000 (03:34 +0000)]
Support cross-filesystem operations in FileSystem API
https://bugs.webkit.org/show_bug.cgi?id=84135

Reviewed by David Levin.

Source/WebCore:

Currently we pass Entry's fullPath to AsyncFileSystem layer where
we convert the given path to filesystem URL which includes origin and
filesystem type information, but in that way we cannot handle
cross-filesystem operations (e.g. cross-filesystem copy and move)
well since we end up with always attaching the source filesystem's
origin and type information for argument paths.

This patch does:
- change AsyncFileSystem's operation methods not to take entry paths
  but complete filesystem URLs.
- move type and rootURL information from AsyncFileSystem instance into
  DOMFileSystemBase instance (platform layer to Modules/filesystem layer)
- move filesystem-type related code in AsyncFileSystemChromium.cpp into
  DOMFileSystemChromium.cpp, which implements chromioum-specific
  DOMFileSystem code.
- move platform/FileSystemType.h into Modules/filesystem/FileSystemType.h.
- adding FileSystemType.h entry to build files (e.g. WebCore.gypi, WebCore.xcodeproj etc)

Test: fast/filesystem/cross-filesystem-op.html

* Modules/filesystem/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::create):
(WebCore::DOMFileSystem::DOMFileSystem):
(WebCore::DOMFileSystem::createWriter):
(WebCore::DOMFileSystem::createFile):
* Modules/filesystem/DOMFileSystem.h:
* Modules/filesystem/DOMFileSystemBase.cpp:
(WebCore::DOMFileSystemBase::DOMFileSystemBase):
(WebCore::DOMFileSystemBase::createFileSystemURL): Added as an internal
implementation of Entry.toURL().
(WebCore::DOMFileSystemBase::getMetadata):
(WebCore::verifyAndGetDestinationPathForCopyOrMove):
(WebCore::DOMFileSystemBase::move):
(WebCore::DOMFileSystemBase::copy):
(WebCore::DOMFileSystemBase::remove):
(WebCore::DOMFileSystemBase::removeRecursively):
(WebCore::DOMFileSystemBase::getParent):
(WebCore::DOMFileSystemBase::getFile):
(WebCore::DOMFileSystemBase::getDirectory):
(WebCore::DOMFileSystemBase::readDirectory):
* Modules/filesystem/DOMFileSystemBase.h: Changed to make each
DOMFileSystemBase instance have filesystem type and rootURL (they were
held by AsyncFileSystem previously)
(WebCore::DOMFileSystemBase::create): Changed to take additional parameters.
(WebCore::DOMFileSystemBase::type): Added.(Moved from AsyncFileSystem::type)
(WebCore::DOMFileSystemBase::rootURL): Added.(Moved from AsyncFileSystem::rootURL).
* Modules/filesystem/DOMFileSystemSync.cpp:
(WebCore::DOMFileSystemSync::create):
(WebCore::DOMFileSystemSync::DOMFileSystemSync):
(WebCore::DOMFileSystemSync::createFile):
(WebCore::DOMFileSystemSync::createWriter):
* Modules/filesystem/DOMFileSystemSync.h:
(WebCore::DOMFileSystemSync::create):
* Modules/filesystem/DOMWindowFileSystem.cpp:
(WebCore::DOMWindowFileSystem::webkitRequestFileSystem):
(WebCore::DOMWindowFileSystem::webkitResolveLocalFileSystemURL):
* Modules/filesystem/EntryBase.cpp:
(WebCore::EntryBase::toURL):
* Modules/filesystem/FileSystemCallbacks.cpp:
(WebCore::FileSystemCallbacks::create):
(WebCore::FileSystemCallbacks::FileSystemCallbacks):
(WebCore::FileSystemCallbacks::didOpenFileSystem):
(WebCore::ResolveURICallbacks::create):
(WebCore::ResolveURICallbacks::ResolveURICallbacks):
(WebCore::ResolveURICallbacks::didOpenFileSystem):
* Modules/filesystem/FileSystemCallbacks.h:
(FileSystemCallbacks):
(ResolveURICallbacks):
* Modules/filesystem/FileSystemType.h: Renamed from Source/WebCore/platform/FileSystemType.h.
* Modules/filesystem/LocalFileSystem.cpp:
(WebCore::openFileSystem):
(WebCore::LocalFileSystem::readFileSystem):
(WebCore::LocalFileSystem::requestFileSystem):
* Modules/filesystem/LocalFileSystem.h:
* Modules/filesystem/WorkerContextFileSystem.cpp:
(WebCore::WorkerContextFileSystem::webkitRequestFileSystem):
(WebCore::WorkerContextFileSystem::webkitRequestFileSystemSync):
(WebCore::WorkerContextFileSystem::webkitResolveLocalFileSystemURL):
(WebCore::WorkerContextFileSystem::webkitResolveLocalFileSystemSyncURL):
* Modules/filesystem/chromium/DOMFileSystemChromium.cpp: Added for chromium-specific
implementation. Almost all of the code is moved from AsyncFileSystemChromium.
(WebCore::DOMFileSystemBase::isValidType):
(WebCore::DOMFileSystemBase::crackFileSystemURL):
(WebCore::DOMFileSystemBase::supportsToURL):
(WebCore::DOMFileSystemBase::createFileSystemURL):
(WebCore::DOMFileSystemChromium::createIsolatedFileSystem):
* Modules/filesystem/chromium/DOMFileSystemChromium.h: Added.
* Modules/filesystem/chromium/DataTransferItemFileSystemChromium.cpp:
(WebCore::DataTransferItemFileSystem::webkitGetAsEntry):
* Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp:
(WebCore::DraggedIsolatedFileSystem::getDOMFileSystem):
* WebCore.gypi:
* platform/AsyncFileSystem.cpp:
(WebCore::AsyncFileSystem::openFileSystem):
* platform/AsyncFileSystem.h:
(AsyncFileSystem):
(WebCore::AsyncFileSystem::AsyncFileSystem):
* platform/AsyncFileSystemCallbacks.h:
(WebCore::AsyncFileSystemCallbacks::didOpenFileSystem):
* platform/blackberry/AsyncFileSystemBlackBerry.cpp:
(WebCore::AsyncFileSystem::create):
(WebCore::AsyncFileSystem::openFileSystem):
(WebCore::AsyncFileSystemBlackBerry::AsyncFileSystemBlackBerry):
(WebCore::AsyncFileSystemBlackBerry::move):
(WebCore::AsyncFileSystemBlackBerry::copy):
(WebCore::AsyncFileSystemBlackBerry::remove):
(WebCore::AsyncFileSystemBlackBerry::removeRecursively):
(WebCore::AsyncFileSystemBlackBerry::readMetadata):
(WebCore::AsyncFileSystemBlackBerry::createFile):
(WebCore::AsyncFileSystemBlackBerry::createDirectory):
(WebCore::AsyncFileSystemBlackBerry::fileExists):
(WebCore::AsyncFileSystemBlackBerry::directoryExists):
(WebCore::AsyncFileSystemBlackBerry::readDirectory):
(WebCore::AsyncFileSystemBlackBerry::createWriter):
(WebCore::AsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadata):
* platform/blackberry/AsyncFileSystemBlackBerry.h:
* platform/chromium/PlatformSupport.h:
* platform/gtk/AsyncFileSystemGtk.cpp:
(WebCore::AsyncFileSystem::create):
(WebCore::AsyncFileSystem::openFileSystem):
(WebCore::AsyncFileSystemGtk::AsyncFileSystemGtk):
(WebCore::AsyncFileSystemGtk::move):
(WebCore::AsyncFileSystemGtk::copy):
(WebCore::AsyncFileSystemGtk::remove):
(WebCore::AsyncFileSystemGtk::removeRecursively):
(WebCore::AsyncFileSystemGtk::readMetadata):
(WebCore::AsyncFileSystemGtk::createFile):
(WebCore::AsyncFileSystemGtk::createDirectory):
(WebCore::AsyncFileSystemGtk::fileExists):
(WebCore::AsyncFileSystemGtk::directoryExists):
(WebCore::AsyncFileSystemGtk::readDirectory):
(WebCore::AsyncFileSystemGtk::createWriter):
* platform/gtk/AsyncFileSystemGtk.h:

* GNUmakefile.list.am: Added FileSystemType.h.
* WebCore.gypi: Added FileSystemType.h.
* WebCore.vcproj/WebCore.vcproj: Added FileSystemType.h.
* WebCore.xcodeproj/project.pbxproj: Added FileSystemType.h.

Source/WebKit/chromium:

Currently we pass Entry's fullPath to AsyncFileSystem layer where
we convert the given path to filesystem URL which includes origin and
filesystem type information, but in that way we cannot handle
cross-filesystem operations (e.g. cross-filesystem copy and move)
well since we end up with always attaching the source filesystem's
origin and type information for argument paths.

This patch does:
- move filesystem-type related code out of AsyncFileSystemChromium.cpp
  (moving into DOMFileSystemChromium.cpp)
- change AsyncFileSystemChromium's methods implementation not to take
  entry paths but complete filesystem URLs.

* src/AsyncFileSystemChromium.cpp:
(WebCore::AsyncFileSystemChromium::AsyncFileSystemChromium):
(WebCore::AsyncFileSystemChromium::move):
(WebCore::AsyncFileSystemChromium::copy):
(WebCore::AsyncFileSystemChromium::remove):
(WebCore::AsyncFileSystemChromium::removeRecursively):
(WebCore::AsyncFileSystemChromium::readMetadata):
(WebCore::AsyncFileSystemChromium::createFile):
(WebCore::AsyncFileSystemChromium::createDirectory):
(WebCore::AsyncFileSystemChromium::fileExists):
(WebCore::AsyncFileSystemChromium::directoryExists):
(WebCore::AsyncFileSystemChromium::readDirectory):
(WebCore::AsyncFileSystemChromium::createWriter):
(WebCore::AsyncFileSystemChromium::createSnapshotFileAndReadMetadata):
* src/AsyncFileSystemChromium.h:
(WebCore::AsyncFileSystemChromium::create):
(AsyncFileSystemChromium):
* src/LocalFileSystemChromium.cpp:
(WebCore::openFileSystemHelper):
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::createAsyncFileSystem):
* src/WebFileSystemCallbacksImpl.cpp:
(WebKit::WebFileSystemCallbacksImpl::WebFileSystemCallbacksImpl):
(WebKit::WebFileSystemCallbacksImpl::didOpenFileSystem):
* src/WebFileSystemCallbacksImpl.h:
(WebFileSystemCallbacksImpl):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFileSystem):
(WebKit::WebFrameImpl::createFileEntry):
* src/WorkerAsyncFileSystemChromium.cpp:
(WebCore::WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium):
(WebCore::WorkerAsyncFileSystemChromium::move):
(WebCore::WorkerAsyncFileSystemChromium::copy):
(WebCore::WorkerAsyncFileSystemChromium::remove):
(WebCore::WorkerAsyncFileSystemChromium::removeRecursively):
(WebCore::WorkerAsyncFileSystemChromium::readMetadata):
(WebCore::WorkerAsyncFileSystemChromium::createFile):
(WebCore::WorkerAsyncFileSystemChromium::createDirectory):
(WebCore::WorkerAsyncFileSystemChromium::fileExists):
(WebCore::WorkerAsyncFileSystemChromium::directoryExists):
(WebCore::WorkerAsyncFileSystemChromium::readDirectory):
(WebCore::WorkerAsyncFileSystemChromium::createWriter):
(WebCore::WorkerAsyncFileSystemChromium::createSnapshotFileAndReadMetadata):
* src/WorkerAsyncFileSystemChromium.h:
(WebCore::WorkerAsyncFileSystemChromium::create):
(WorkerAsyncFileSystemChromium):

LayoutTests:

* fast/filesystem/cross-filesystem-op-expected.txt: Added.
* fast/filesystem/cross-filesystem-op.html: Added.

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

8 years ago[webkitpy] Remove Python 2.5-specific workaround from http_server_base.py.
rakuco@webkit.org [Tue, 8 May 2012 03:05:33 +0000 (03:05 +0000)]
[webkitpy] Remove Python 2.5-specific workaround from http_server_base.py.
https://bugs.webkit.org/show_bug.cgi?id=85852

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/servers/http_server_base.py:
(HttpServerBase._is_server_running_on_all_ports): Revert the part
of r89412 which was a workaround for an issue with Python 2.5 on
Mac 10.5.

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

8 years agoChromium rebaselines after http://trac.webkit.org/changeset/116373.
ojan@chromium.org [Tue, 8 May 2012 02:52:57 +0000 (02:52 +0000)]
Chromium rebaselines after trac.webkit.org/changeset/116373.
Differences look to just be in platform-specific text rendering.

* platform/chromium-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.

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

8 years ago[Chromium] Android wishes to use an empty implementation if AXObjectCache
abarth@webkit.org [Tue, 8 May 2012 02:47:13 +0000 (02:47 +0000)]
[Chromium] Android wishes to use an empty implementation if AXObjectCache
https://bugs.webkit.org/show_bug.cgi?id=85842

Reviewed by Eric Seidel.

Source/WebCore:

Add proper HAVE(ACCESSIBILITY) ifdefs so that Chromium builds without
accessibility.

* accessibility/chromium/AXObjectCacheChromium.cpp:
* accessibility/chromium/AccessibilityObjectChromium.cpp:

Source/WTF:

Disable accessibility on OS(ANDROID) for PLATFORM(CHROMIUM).

* wtf/Platform.h:

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

8 years ago[Web Intents] Flagged-off implementation of an intent tag for registration.
commit-queue@webkit.org [Tue, 8 May 2012 02:22:31 +0000 (02:22 +0000)]
[Web Intents] Flagged-off implementation of an intent tag for registration.
https://bugs.webkit.org/show_bug.cgi?id=73039

Patch by Greg Billock <gbillock@google.com> on 2012-05-07
Reviewed by Adam Barth.

Source/WebCore:

The intent tag is a declarative way for pages to register that they
accept delivery of web intent invocations of particular types. See the
spec at http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html

After discussion on the WhatWG list (see thread at
http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-April/035301.html)
the current plan is to combine declarative registration of Web
Intents and protocol/content handlers with this tag. Alternatives
considered were the meta and link tags.

* WebCore.gypi:
* html/HTMLAttributeNames.in:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLIntentElement.cpp: Added.
(WebCore::HTMLIntentElement::HTMLIntentElement):
(WebCore::HTMLIntentElement::create):
(WebCore::HTMLIntentElement::insertedIntoDocument):
* html/HTMLIntentElement.h: Added.
* html/HTMLIntentElement.idl: Added.
* html/HTMLTagNames.in:
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::registerIntentService):
* page/DOMWindow.idl:

Source/WebKit/chromium:

The intent tag allows web pages to mark themselves declaratively as accepting
web intent delivery of particular characteristics (action/type).
See the spec at:
http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html

* WebKit.gyp:
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::registerIntentService):
* src/FrameLoaderClientImpl.h:

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

8 years agoUnreviewed, rolling out r116375.
tkent@chromium.org [Tue, 8 May 2012 01:53:19 +0000 (01:53 +0000)]
Unreviewed, rolling out r116375.
http://trac.webkit.org/changeset/116375
https://bugs.webkit.org/show_bug.cgi?id=85850

Build break on Chromium-win and Chromium-mac. (Requested by
tkent on #webkit).

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

* WebKit.gyp:
* WebKit.gypi:
* tests/EventListenerTest.cpp: Removed.
* tests/data/listener/mutation_event_listener.html: Removed.

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

8 years agoAdd platform/mac/ results for new tests added by r116373.
aestes@apple.com [Tue, 8 May 2012 01:32:45 +0000 (01:32 +0000)]
Add platform/mac/ results for new tests added by r116373.

* platform/mac/fast/css/first-line-text-decoration-expected.txt: Added.
* platform/mac/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.

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

8 years agoRegion::intersects() and Region::contains() are slow due to copy overhead
danakj@chromium.org [Tue, 8 May 2012 00:11:35 +0000 (00:11 +0000)]
Region::intersects() and Region::contains() are slow due to copy overhead
https://bugs.webkit.org/show_bug.cgi?id=81076

Reviewed by Anders Carlsson.

Source/WebCore:

Testing contains() and intersects() requires a copy which ends up
invoking a malloc on sufficiently complicated web pages, and slows down
the test unnecessarily. These methods can be done by iterating over the
Region::Shape values rather than making a copy of the entire region and
manipulating it.

This uses Region::Shape::compareShapes() to walk the query regions and
compute the result of the intersects or contains tests without making a
copy.

This change improves the performance of the Region overlap testing for
composited layers, and allows for testing contains() before unite() to
avoid unnecessary copies of the Region when inserting into complex
Regions. With a layout test that has 225 composited layers, and tests
Region.intersects() for 1000 layers above them, this change decreases
the running time of the test by 1.2% by avoiding a copy of the 225
rects each time.

Unit test: RegionTest.intersectsRegion
           RegionTest.containsRegion

* platform/graphics/Region.cpp:
(WebCore::Region::contains):
(WebCore::Region::intersects):
(WebCore):
(WebCore::Region::Shape::compareShapes):
(Region::Shape::CompareContainsOperation):
(WebCore::Region::Shape::CompareContainsOperation::aOutsideB):
(WebCore::Region::Shape::CompareContainsOperation::bOutsideA):
(WebCore::Region::Shape::CompareContainsOperation::aOverlapsB):
(Region::Shape::CompareIntersectsOperation):
(WebCore::Region::Shape::CompareIntersectsOperation::aOutsideB):
(WebCore::Region::Shape::CompareIntersectsOperation::bOutsideA):
(WebCore::Region::Shape::CompareIntersectsOperation::aOverlapsB):
* platform/graphics/Region.h:
(Shape):

Source/WebKit/chromium:

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

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

8 years agoCorrect logical error in accessibilityIsIgnored.
commit-queue@webkit.org [Tue, 8 May 2012 00:09:43 +0000 (00:09 +0000)]
Correct logical error in accessibilityIsIgnored.
https://bugs.webkit.org/show_bug.cgi?id=85828

Patch by David Tseng <dtseng@google.com> on 2012-05-07
Reviewed by Chris Fleizach.

Covered by existing tests.

* accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::accessibilityIsIgnored):
* accessibility/AccessibilityMenuListPopup.cpp:
(WebCore::AccessibilityMenuListPopup::accessibilityIsIgnored):

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

8 years ago[chromium] move event_listener_unittest to webkit_unit_tests
tony@chromium.org [Tue, 8 May 2012 00:05:49 +0000 (00:05 +0000)]
[chromium] move event_listener_unittest to webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=85836

Reviewed by James Robinson.

Porting the test from src/webkit/tools/test_shell/event_listener_unittest.cc.
All I did was change the style and use the FrameTestHelper to load the file.

* WebKit.gyp: Exclude file in components build.
* WebKit.gypi: Add new file.
* tests/EventListenerTest.cpp: Added.
(WebKit):
(TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::~TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::eventCount):
(WebKit::TestWebDOMEventListener::eventAt):
(WebKit::TestWebDOMEventListener::clearEvents):
(WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::SetUp):
(WebKit::WebDOMEventListenerTest::TearDown):
(WebKit::WebDOMEventListenerTest::mainFrame):
(WebKit::WebDOMEventListenerTest::document):
(WebKit::WebDOMEventListenerTest::executeScript):
(WebKit::WebDOMEventListenerTest::GetNodeID):
(WebKit::TEST_F):
* tests/data/listener/mutation_event_listener.html: Added.

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

8 years agovertexAttribPointer needs to reject large negative offsets
zmo@google.com [Mon, 7 May 2012 23:56:47 +0000 (23:56 +0000)]
vertexAttribPointer needs to reject large negative offsets
https://bugs.webkit.org/show_bug.cgi?id=85117

Reviewed by Kenneth Russell.

Source/WebCore:

* html/canvas/WebGLRenderingContext.cpp: Use long long for GLsizeiptr and GLintptr
(WebCore):
(WebCore::WebGLRenderingContext::bufferData):
(WebCore::WebGLRenderingContext::bufferSubData):
(WebCore::WebGLRenderingContext::drawElements):
(WebCore::WebGLRenderingContext::getVertexAttribOffset):
(WebCore::WebGLRenderingContext::vertexAttribPointer):
* html/canvas/WebGLRenderingContext.h: Ditto
(WebGLRenderingContext):
* html/canvas/WebGLRenderingContext.idl: Ditto

LayoutTests:

* fast/canvas/webgl/index-validation-expected.txt:
* fast/canvas/webgl/index-validation.html: Add a test case for large negative offset.

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

8 years ago:first-line text-decorations are not rendered
commit-queue@webkit.org [Mon, 7 May 2012 23:39:40 +0000 (23:39 +0000)]
:first-line text-decorations are not rendered
https://bugs.webkit.org/show_bug.cgi?id=6047

Source/WebCore:

Text-decorations are applied during paint phase. The style was not being properly selected in case of
first line box. The patch fixes this.

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-05-07
Reviewed by Eric Seidel.

Tests: fast/css/first-line-text-decoration-inherited-from-parent.html
       fast/css/first-line-text-decoration.html

* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDecoration):
Inform the decoration color retriever if this box is part of the first line box or not.

* rendering/RenderObject.cpp:
(WebCore::decorationColor):
Changed the argument from RenderObject* to RenderStyle*. As this function is just a helper to getTextDecorationColors
as used RenderObject solely to retrieve the corresponding RenderStyle, which(RenderStyle*) was already available with the latter function.

(WebCore::RenderObject::getTextDecorationColors):
Take a new variable to check if first line style or the regular style has to be used.
Sends RenderStyle* as an argument to decorationColor().

* rendering/RenderObject.h:
(RenderObject):

LayoutTests:

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-05-07
Reviewed by Eric Seidel.

* fast/css/first-line-text-decoration.html: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-expected.png: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-expected.txt: Added.
 This test checks if text-decoration present in the tags first-line style is applied properly.

* fast/css/first-line-text-decoration-inherited-from-parent.html: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.
 This test checks if the text-decoration and text color is chosen properly in the case where
 the first-line style is inherited from a parent and contains such text-decorations.

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

8 years ago2012-05-07 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Mon, 7 May 2012 23:35:52 +0000 (23:35 +0000)]
2012-05-07  Oliver Hunt  <oliver@apple.com>

        Rolling out r110287

        RS=Filip Pizlo

        r110287 was meant to be refactoring only, but changed behavior
        enough to break some websites, including qq.com.

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

8 years agoRefactor windowClipRectForLayer to remove the explicit RenderLayer dependency
jchaffraix@webkit.org [Mon, 7 May 2012 23:33:50 +0000 (23:33 +0000)]
Refactor windowClipRectForLayer to remove the explicit RenderLayer dependency
https://bugs.webkit.org/show_bug.cgi?id=84090

Reviewed by David Hyatt.

Source/WebCore:

No observable change in behavior.

The function name was ambiguous as it was not a general purpose function but was
working directly on HTMLFrameOwnerElement. The rename makes this more obvious as
well as removes the explicit dependency on RenderLayer.

One of the slight change of this refactoring is that we now always null-check the
HTMLFrameOwnerElement's renderer as part windowClipRectForFrameOwner as I don't see
any evidence for the other code paths not to hit that. Also we may recur more on our
frame tree if we have no layer as we now call windowClipRect() in this case.

* page/FrameView.h:
(FrameView):
* plugins/PluginView.cpp:
(WebCore::PluginView::windowClipRect):
* WebCore.exp.in:
* WebCore.order:
* page/FrameView.cpp:
(WebCore::FrameView::windowClipRect):
Updated after windowClipRectForLayer name and signature change.

(WebCore::FrameView::windowClipRectForFrameOwner):
This function now takes the HTMLFrameOwnerElement directly.

* plugins/PluginView.cpp:
(WebCore::PluginView::PluginView):
(WebCore::PluginView::create):
* plugins/PluginView.h:
(PluginView):
Updated |m_element| to be an HTMLPlugInElement as this was what was
passed by every caller. This makes the conversion to HTMLFrameOwnerElement
possible.

Source/WebKit/chromium:

* src/WebPluginContainerImpl.cpp:
Updated after windowClipRectForLayer name and signature change.

Source/WebKit/win:

* WebCoreSupport/EmbeddedWidget.cpp:
(EmbeddedWidget::windowClipRect):
Updated after windowClipRectForLayer name and signature change.

* WebCoreSupport/EmbeddedWidget.h:
(EmbeddedWidget):
(EmbeddedWidget::EmbeddedWidget):
Updated the internal DOM pointer to be an HTMLPlugInElement
as it was what was passed in anyway. Also fixed some style
issues detected by our tools.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::clipRectInWindowCoordinates):
Updated after windowClipRectForLayer name and signature change.

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

8 years agoUnreviewed, GTK gardening.
philn@webkit.org [Mon, 7 May 2012 23:32:58 +0000 (23:32 +0000)]
Unreviewed, GTK gardening.

* platform/gtk/test_expectations.txt: Mark seamless frames as
failing until we enable the feature.

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

8 years agoVersioning.
lforschler@apple.com [Mon, 7 May 2012 23:32:01 +0000 (23:32 +0000)]
Versioning.

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

8 years agoREGRESSION (r101575): Chinese input is broken when composing mail in iCloud using...
enrica@apple.com [Mon, 7 May 2012 23:30:08 +0000 (23:30 +0000)]
REGRESSION (r101575): Chinese input is broken when composing mail in iCloud using Safari.
https://bugs.webkit.org/show_bug.cgi?id=85840
<rdar://problem/11115520>

Reviewed by Alexey Proskuryakov.

The revision that broke this, introduced a way to sanitize the markup when deleting a range selection.
iCloud listens for DOM modification events and clears the selection, altering the input method state.
The fix consists in adding a paramenter to DeleteSelectionCommand to control when we sanitize the
markup.

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::deleteSelection):
* editing/CompositeEditCommand.h:
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
(WebCore::DeleteSelectionCommand::doApply):
* editing/DeleteSelectionCommand.h:
(WebCore::DeleteSelectionCommand::create):
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::doApply):

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

8 years agoENABLE_IFRAME_SEAMLESS should be part of FEATURE_DEFINES.
aestes@apple.com [Mon, 7 May 2012 23:22:04 +0000 (23:22 +0000)]
ENABLE_IFRAME_SEAMLESS should be part of FEATURE_DEFINES.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

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

8 years agowebkitdirs.pm: Make determineNumberOfCPUs work on FreeBSD.
commit-queue@webkit.org [Mon, 7 May 2012 23:15:00 +0000 (23:15 +0000)]
webkitdirs.pm: Make determineNumberOfCPUs work on FreeBSD.
https://bugs.webkit.org/show_bug.cgi?id=81481

Patch by Raphael Kubo da Costa <rakuco@FreeBSD.org> on 2012-05-07
Reviewed by Dirk Pranke.

FreeBSD has the same sysctl interface present in Darwin to query
the number of CPUs available, so use that too.

* Scripts/webkitdirs.pm:
(determineNumberOfCPUs): Share the sysctl call with Darwin.
(isFreeBSD): Added.

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