profile/ivi/webkit-efl.git
12 years ago[Part 2] We should use CSSPropertyID rather than integers when manipulating CSS prope...
alexis.menard@openbossa.org [Tue, 3 Apr 2012 14:18:19 +0000 (14:18 +0000)]
[Part 2] We should use CSSPropertyID rather than integers when manipulating CSS property ids.
https://bugs.webkit.org/show_bug.cgi?id=82977

Reviewed by Andreas Kling.

Source/WebCore:

CSSPropertyID enum holds all the CSS property ids but many parts of WebKit treat the ids
as integers. While it's not incorrect it is nicer to use the enum as a parameter of
functions manipulating property ids, as we ensure that the value passed will be an
existing value. Almost everything has been changed with the exception of the Animation related
classes which can be done in a following patch.

No new tests : There should be no behavior change in this patch.

* WebCore.exp.in:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::cssText):
(WebCore::CSSComputedStyleDeclaration::valueForShadow):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::logUnimplementedPropertyID):
(WebCore::CSSComputedStyleDeclaration::getPropertyValue):
(WebCore::CSSComputedStyleDeclaration::item):
* css/CSSComputedStyleDeclaration.h:
(CSSComputedStyleDeclaration):
* css/CSSGrammar.y:
* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):
(WebCore::isColorPropertyID):
(WebCore::parseColorValue):
(WebCore::isSimpleLengthPropertyID):
(WebCore::parseSimpleLengthValue):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::parseKeywordValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::addProperty):
(WebCore::CSSParser::parseFillShorthand):
(WebCore::CSSParser::parseShorthand):
(WebCore::CSSParser::parse4Values):
(WebCore::CSSParser::parsePage):
(WebCore::CSSParser::parseSize):
(WebCore::CSSParser::parseQuotes):
(WebCore::CSSParser::parseContent):
(WebCore::CSSParser::parseFillSize):
(WebCore::CSSParser::parseFillProperty):
(WebCore::CSSParser::parseAnimationProperty):
(WebCore::CSSParser::parseGridTrackList):
(WebCore::CSSParser::parseDashboardRegions):
(WebCore::CSSParser::parseClipShape):
(WebCore::CSSParser::parseShadow):
(WebCore::CSSParser::parseReflect):
(WebCore::BorderImageParseContext::commitBorderImageProperty):
(WebCore::CSSParser::parseBorderImage):
(WebCore::CSSParser::parseBorderImageSlice):
(WebCore::CSSParser::parseBorderRadius):
(WebCore::CSSParser::parseCounter):
(WebCore::CSSParser::parseFlowThread):
(WebCore::CSSParser::parseRegionThread):
(WebCore::CSSParser::parseTransformOrigin):
(WebCore::CSSParser::parsePerspectiveOrigin):
* css/CSSParser.h:
(CSSParser):
(WebCore::ShorthandScope::ShorthandScope):
* css/CSSProperty.cpp:
(WebCore::resolveToPhysicalProperty):
(WebCore::CSSProperty::resolveDirectionAwareProperty):
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSProperty.h:
(WebCore::CSSProperty::CSSProperty):
(CSSProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* css/CSSStyleSelector.h:
(CSSStyleSelector):
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
* css/SVGCSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
* css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
* css/SVGCSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applySVGProperty):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyCSSValue):
(WebCore::StylePropertySet::removeShorthandProperty):
(WebCore::StylePropertySet::removeProperty):
(WebCore::StylePropertySet::setProperty):
(WebCore::StylePropertySet::asText):
(WebCore::StylePropertySet::findPropertyWithId):
(WebCore::StylePropertySet::removeEquivalentProperties):
* css/StylePropertySet.h:
(StylePropertySet):
* css/StylePropertyShorthand.cpp:
(WebCore::shorthandForProperty):
* css/StylePropertyShorthand.h:
(WebCore):
* dom/StyledElement.cpp:
(WebCore::StyledElement::setInlineStyleProperty):
(WebCore::StyledElement::removeInlineStyleProperty):
(WebCore::StyledElement::addPropertyToAttributeStyle):
* dom/StyledElement.h:
(StyledElement):
(WebCore::StyledElement::addPropertyToAttributeStyle):
* editing/EditingStyle.cpp:
(HTMLElementEquivalent):
(WebCore::EditingStyle::EditingStyle):
(WebCore::EditingStyle::setProperty):
* editing/EditingStyle.h:
(WebCore::EditingStyle::create):
(EditingStyle):
* editing/Editor.cpp:
(WebCore::Editor::selectionStartHasStyle):
(WebCore::Editor::selectionHasStyle):
* editing/Editor.h:
(Editor):
* editing/EditorCommand.cpp:
(WebCore::executeApplyStyle):
(WebCore::executeToggleStyleInList):
(WebCore::executeToggleStyle):
(WebCore::executeApplyParagraphStyle):
(WebCore::stateStyle):
* editing/markup.cpp:
(WebCore):
(WebCore::propertyMissingOrEqualToNone):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::addHTMLLengthToStyle):
(WebCore::HTMLElement::addHTMLColorToStyle):
* html/HTMLElement.h:
(HTMLElement):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::styleWithProperties):
* page/animation/AnimationBase.cpp:
(WebCore::addShorthandProperties):
* svg/SVGFontFaceElement.cpp:
(WebCore::cssPropertyIdForSVGAttributeName):
(WebCore::SVGFontFaceElement::parseAttribute):
* svg/SVGStyledElement.cpp:
(WebCore::mapAttributeToCSSProperty):
(WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
(WebCore::SVGStyledElement::collectStyleForAttribute):
(WebCore::SVGStyledElement::svgAttributeChanged):
(WebCore::SVGStyledElement::getPresentationAttribute):
* svg/SVGStyledElement.h:
(WebCore):
(SVGStyledElement):

Source/WebKit/qt:

Update the code to use CSSPropertyID rather than an integer.

* Api/qwebelement.cpp:
(QWebElement::setStyleProperty):

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

12 years agoRevert RenderTheme paint and layout functions to ints
leviw@chromium.org [Tue, 3 Apr 2012 13:55:52 +0000 (13:55 +0000)]
Revert RenderTheme paint and layout functions to ints
https://bugs.webkit.org/show_bug.cgi?id=82196

Reviewed by Julien Chaffraix.

When dealing with object that are rendered outside of WebCore, we do all necessary pixel snapping
before passing coordinates to the external code. RenderTheme encompasses a set of objects whose
rendering is influenced by the platform. This change reverts the interface between this platform
code and WebCore to be integers.

Some platforms, such as Mac, use sub-pixel units for layout and rendering, but it's still not
desirable to pass sub-pixel values to these API's, because ultimately we'll render these objects
at whole-pixel values to avoid anti-aliasing.

Marking touched overridden virtual functions as OVERRIDE. There are many more to update.

No new tests. No change in behavior.

* platform/graphics/FractionalLayoutRect.h:
(WebCore::FractionalLayoutRect::pixelSnappedLocation): Convenience function.
(WebCore::FractionalLayoutRect::pixelSnappedSize): Ditto.
(FractionalLayoutRect):
* platform/graphics/IntRect.h:
(WebCore::IntRect::pixelSnappedLocation): Temporary mirrors to the functions of the same name on
FractionalLayoutRect.
(WebCore::IntRect::pixelSnappedSize): Ditto.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBoxDecorations): Adding a local pixel snapped paint rect to avoid
repeated pixel snapping.
* rendering/RenderBox.h:
(WebCore::RenderBox::absoluteContentBox): Reverting to integers since this represents on-screen
coordinates
(WebCore::RenderBox::pixelSnappedSize): Convenience method.
* rendering/RenderMediaControls.cpp:
(WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): This static function is only called
from RenderTheme platform code. Changing it to operate on pixel snapped values since we don't want
to pipe LayoutUnits through that code.
* rendering/RenderMeter.cpp:
(WebCore::RenderMeter::computeLogicalWidth): Changing to feed pixel snapped values into the platform
code to properly determine the resulting meter size.
(WebCore::RenderMeter::computeLogicalHeight): Ditto.
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):
(WebCore::RenderTheme::adjustRepaintRect):
(WebCore::RenderTheme::meterSizeForBounds):
* rendering/RenderTheme.h:
(RenderTheme):
(WebCore::RenderTheme::paintCapsLockIndicator):
* rendering/RenderThemeChromiumMac.h:
(RenderThemeChromiumMac):
* rendering/RenderThemeChromiumSkia.cpp:
(WebCore::RenderThemeChromiumSkia::convertToPaintingRect):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
* rendering/RenderThemeChromiumSkia.h:
* rendering/RenderThemeMac.h:
(RenderThemeMac):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::adjustRepaintRect):
(WebCore::RenderThemeMac::inflateRect):
(WebCore::RenderThemeMac::convertToPaintingRect):
(WebCore::RenderThemeMac::setControlSize):
(WebCore::RenderThemeMac::paintCapsLockIndicator):
(WebCore::RenderThemeMac::paintMenuList):
(WebCore::RenderThemeMac::meterSizeForBounds):
(WebCore::RenderThemeMac::setPopupButtonCellState):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton):
* rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton):
* rendering/RenderThemeWin.h:
(RenderThemeWin):

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

12 years agochromium: fast/dom/error-to-string-stack-overflow.html is failing after v8 roll to...
commit-queue@webkit.org [Tue, 3 Apr 2012 13:39:59 +0000 (13:39 +0000)]
chromium: fast/dom/error-to-string-stack-overflow.html is failing after v8 roll to 3.10.0.2
https://bugs.webkit.org/show_bug.cgi?id=82993

Adjust test expectation to include the line number of the exception.

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-04-03
Reviewed by Kentaro Hara.

* platform/chromium-linux/fast/dom/error-to-string-stack-overflow-expected.txt:
* platform/chromium/test_expectations.txt:

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

12 years agoEnable and connect the WebInspectorServer with WebKit2 pages.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:24:56 +0000 (13:24 +0000)]
Enable and connect the WebInspectorServer with WebKit2 pages.
https://bugs.webkit.org/show_bug.cgi?id=73094

Reviewed by Simon Hausmann.

Source/WebKit2:

Pages are registered/unregistered as they are created/destroyed, if they have
developer extras enabled. The server is run on the UI process and communicates
with the web process through IPC for each message between the inspector
controller and the remote frontend.

Includes the server spawning logic for the Qt port, the server is
started through an environment variable specifying the interface and
port to bind the server to, by default on 127.0.0.1.

* UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::WebInspectorProxy):
(WebKit::WebInspectorProxy::invalidate):
(WebKit):
(WebKit::WebInspectorProxy::enableRemoteInspection):
(WebKit::WebInspectorProxy::remoteFrontendConnected):
(WebKit::WebInspectorProxy::remoteFrontendDisconnected):
(WebKit::WebInspectorProxy::dispatchMessageFromRemoteFrontend):
(WebKit::WebInspectorProxy::sendMessageToRemoteFrontend):
* UIProcess/WebInspectorProxy.h:
(WebInspectorProxy):
* UIProcess/WebInspectorProxy.messages.in:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::preferencesDidChange):
* UIProcess/qt/QtWebContext.cpp:
(WebKit::initInspectorServer):
(WebKit):
(WebKit::globalInitialization):
(WebKit::QtWebContext::create):
* WebProcess/WebCoreSupport/WebInspectorClient.cpp:
(WebKit::WebInspectorClient::sendMessageToFrontend):
* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::WebInspector):
(WebKit):
(WebKit::WebInspector::sendMessageToRemoteFrontend):
(WebKit::WebInspector::dispatchMessageFromRemoteFrontend):
(WebKit::WebInspector::remoteFrontendConnected):
(WebKit::WebInspector::remoteFrontendDisconnected):
* WebProcess/WebPage/WebInspector.h:
(WebInspector):
(WebKit::WebInspector::hasRemoteFrontendConnected):
* WebProcess/WebPage/WebInspector.messages.in:

Tools:

Enable developer extras on pages in MiniBrowser for Qt.

* MiniBrowser/qt/qml/BrowserWindow.qml:

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

12 years agoWebInspectorServer for WebKit2.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:24:32 +0000 (13:24 +0000)]
WebInspectorServer for WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=73855

Reviewed by Simon Hausmann.

The server uses WebSocket for communication with the remote client and
normal HTTP requests are handled to optionally send the frontend on the
wire. Those decision are handled per platform and Qt currently maps:

  - "/" to a static listing page.
  - "/pagelist.json" to the page list for the listing page or tools.
  - anything else, for example "/inspector.js" to the file with the
    same name in the dynamic libraries built resources.
    Invalid files should return a 404.

* Target.pri:
* UIProcess/InspectorServer/WebInspectorServer.cpp: Added.
(WebKit):
(WebKit::pageIdFromRequestPath):
(WebKit::WebInspectorServer::server):
(WebKit::WebInspectorServer::WebInspectorServer):
(WebKit::WebInspectorServer::~WebInspectorServer):
(WebKit::WebInspectorServer::registerPage):
(WebKit::WebInspectorServer::unregisterPage):
(WebKit::WebInspectorServer::sendMessageOverConnection):
(WebKit::WebInspectorServer::didReceiveUnrecognizedHTTPRequest):
(WebKit::WebInspectorServer::didReceiveWebSocketUpgradeHTTPRequest):
(WebKit::WebInspectorServer::didEstablishWebSocketConnection):
(WebKit::WebInspectorServer::didReceiveWebSocketMessage):
(WebKit::WebInspectorServer::didCloseWebSocketConnection):
(WebKit::WebInspectorServer::closeConnection):
* UIProcess/InspectorServer/WebInspectorServer.h: Added.
(WebKit):
(WebInspectorServer):
* UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp: Added.
(WebKit):
(WebKit::WebInspectorServer::platformResourceForPath):
(WebKit::WebInspectorServer::buildPageList):
* WebKit2.qrc: Added.
* qt/Resources/inspectorPageIndex.html: Added.

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

12 years agoAdd a Generic WebSocket Server.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:24:11 +0000 (13:24 +0000)]
Add a Generic WebSocket Server.
https://bugs.webkit.org/show_bug.cgi?id=73093

Reviewed by Simon Hausmann.

Source/WebCore:

Allow SocketStreamHandle for the Qt port to take an existing QTcpSocket in its constructor.

* platform/network/qt/SocketStreamHandle.h:
(WebCore::SocketStreamHandle::create):
(SocketStreamHandle):
* platform/network/qt/SocketStreamHandlePrivate.h:
(SocketStreamHandlePrivate):
* platform/network/qt/SocketStreamHandleQt.cpp:
(WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate):
(WebCore):
(WebCore::SocketStreamHandlePrivate::initConnections):
(WebCore::SocketStreamHandlePrivate::close):
(WebCore::SocketStreamHandle::SocketStreamHandle):

Source/WebKit2:

The Inspector Server will be a WebSocket Server that also responds to
non-WebSocket-Upgrade HTTP Requests. This is a generic WebSocket server
that passes on what it doesn't know on to its client for extended
functionality. This code is wrapped in a new ENABLE(INSPECTOR_SERVER) flag.

There are no tests yet for a built-in WebSocket server.
This will be covered by API level tests in a later patch.

* Target.pri:

  WebSocketServer is a simple server. Calling listen, or close,
  multiple times is safe. Subclassing is expected.

* UIProcess/InspectorServer/WebSocketServer.cpp: Added.
(WebKit):
(WebKit::WebSocketServer::WebSocketServer):
(WebKit::WebSocketServer::~WebSocketServer):
(WebKit::WebSocketServer::listen):
(WebKit::WebSocketServer::close):
(WebKit::WebSocketServer::didAcceptConnection):
(WebKit::WebSocketServer::didCloseWebSocketServerConnection):
* UIProcess/InspectorServer/WebSocketServer.h: Added.
(WebKit):
(WebCore):
(WebSocketServer):
* UIProcess/InspectorServer/WebSocketServerClient.h: Added.
(WebCore):
(WebKit):
(WebSocketServerClient):
(WebKit::WebSocketServerClient::~WebSocketServerClient):
(WebKit::WebSocketServerClient::didReceiveUnrecognizedHTTPRequest):
(WebKit::WebSocketServerClient::didReceiveWebSocketUpgradeHTTPRequest):
(WebKit::WebSocketServerClient::didEstablishWebSocketConnection):
(WebKit::WebSocketServerClient::didReceiveWebSocketMessage):
(WebKit::WebSocketServerClient::didCloseWebSocketConnection):

  Each WebSocketConnection:

   - Passes unknown HTTP Requests to the server's client.
   - Handles WebSocket Upgrade Requests.
     - First ask the client if it is okay.
     - Later notify the client about a success.
   - Once upgraded the connection parses and passes WebSocket
     frames to the client.

* UIProcess/InspectorServer/WebSocketServerConnection.cpp: Added.
(WebKit):
(WebKit::WebSocketServerConnection::WebSocketServerConnection):
(WebKit::WebSocketServerConnection::~WebSocketServerConnection):
(WebKit::WebSocketServerConnection::shutdownNow):
(WebKit::WebSocketServerConnection::shutdownAfterSendOrNow): meant to shutdown after an HTTP response. Ensure all platforms work as expected.
(WebKit::WebSocketServerConnection::sendWebSocketMessage): send a text message (WebSocket message) over the connection.
(WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
(WebKit::WebSocketServerConnection::sendRawData): send raw data (HTTP message) over the connection.
(WebKit::WebSocketServerConnection::didCloseSocketStream): handle socket closing scenarios.
(WebKit::WebSocketServerConnection::didReceiveSocketStreamData): parse the incoming data in HTTP / WebSocket modes.
(WebKit::WebSocketServerConnection::didFailSocketStream): log errors.
(WebKit::WebSocketServerConnection::readHTTPMessage): when starting, a web socket connection reads an HTTP message.
(WebKit::WebSocketServerConnection::upgradeToWebSocketServerConnection):
(WebKit::WebSocketServerConnection::readWebSocketFrames): parse our buffer for as many frames as possible.
(WebKit::WebSocketServerConnection::readWebSocketFrame): parse an individual frame.
* UIProcess/InspectorServer/WebSocketServerConnection.h: Added.
(WebCore):
(WebKit):
(WebSocketServerConnection):
(WebKit::WebSocketServerConnection::identifier):
(WebKit::WebSocketServerConnection::setIdentifier):

  Qt specific implementation.

* UIProcess/InspectorServer/qt/WebSocketServerQt.cpp: Added.
(WebKit):
(WebKit::WebSocketServer::platformInitialize):
(WebKit::WebSocketServer::platformListen):
(WebKit::WebSocketServer::platformClose):
(WebKit::QtTcpServerHandler::QtTcpServerHandler):
(WebKit::QtTcpServerHandler::handleNewConnection):
(WebKit::QtTcpServerHandler::listen):
(WebKit::QtTcpServerHandler::close):
* UIProcess/InspectorServer/qt/WebSocketServerQt.h: Added.
(WebKit):
(QtTcpServerHandler):

* WebKit2.pri:
* config.h: Add ENABLE(INSPECTOR_SERVER) for WebKit2.

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

12 years agoExpose reusable WebSocket code for WebSocketServer.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:23:46 +0000 (13:23 +0000)]
Expose reusable WebSocket code for WebSocketServer.
https://bugs.webkit.org/show_bug.cgi?id=73852

Reviewed by Kent Tamura.

Keep the majority the web socket handshake HTTP request and response logic
inside WebSocketHandshake and expose it through WebSocketFrame to make it
available for the web socket server implementation.

This also re-add the masking code that was removed in r111829 since it is
needed for the server implementation.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/websockets/WebSocketChannel.cpp:
(WebCore):
(WebCore::WebSocketChannel::processFrame): now using WebSocketChannel::parseFrame. Extracted the !frame.masked check.
(WebCore::WebSocketChannel::sendFrame):
* Modules/websockets/WebSocketChannel.h:
(WebSocketChannel):
* Modules/websockets/WebSocketFrame.cpp: Added.
(WebCore):
(WebCore::WebSocketFrame::needsExtendedLengthField):
(WebCore::WebSocketFrame::parseFrame): moved from WebSocketChannel::parseFrame.
(WebCore::appendMaskedFramePayload):
(WebCore::WebSocketFrame::makeFrameData): moved from makeFrameData in WebSocketChannel.cpp.
(WebCore::WebSocketFrame::WebSocketFrame): moved from the header.
* Modules/websockets/WebSocketFrame.h:
(WebSocketFrame):
* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::getExpectedWebSocketAccept): expose this object-static function.
* Modules/websockets/WebSocketHandshake.h:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

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

12 years agoAdd Generic HTTP Request Class. Generalized HTTP Parsing.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:23:23 +0000 (13:23 +0000)]
Add Generic HTTP Request Class. Generalized HTTP Parsing.
https://bugs.webkit.org/show_bug.cgi?id=73092

Reviewed by Simon Hausmann.

A WebSocket server will need to read HTTP Requests before upgrading
to WebSocket framing. This patch creates a cross-platform HTTPRequest
class. Since some of this was already done in WebSocket code:

  - the header parsing code was extracted and put into HTTPParsers.cpp
  - WebSocketHandshakeRequest subclasses HTTPRequest
  - WebSocket code was refactored for these changes

Refactoring is covered by existing http/tests/websocket tests.

* CMakeLists.txt:
* GNUmakefile.list.am:

* Modules/websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::didOpenSocketStream):

  Extract the HTTP Header parsing out of WebSocketHandshake and
  put it into HTTP Parsers. Now make use of the generic parsing.

* Modules/websockets/WebSocketHandshake.cpp:
(WebCore):
(WebCore::trimInputSample):
(WebCore::WebSocketHandshake::clientHandshakeRequest): switch to RefCounted HandshakeRequest.
(WebCore::WebSocketHandshake::readStatusLine):
(WebCore::WebSocketHandshake::readHTTPHeaders): use generic HTTPParsers parsing.
* Modules/websockets/WebSocketHandshake.h: switch to RefCounted HandshakeRequest.

  WebSocketHandshakeRequest is a specialization of an HTTPRequest.
  Much of its original code was abstracted into HTTPRequest, and
  this is now a subclass with WebSocket key information.

* Modules/websockets/WebSocketHandshakeRequest.cpp:
(WebCore::WebSocketHandshakeRequest::WebSocketHandshakeRequest): initialize now calls super.
* Modules/websockets/WebSocketHandshakeRequest.h:
(WebCore::WebSocketHandshakeRequest::create): switch to being ref counted like HTTPRequest.
(WebSocketHandshakeRequest):

* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

  Add generic HTTP Request parsing functions to HTTPParsers.cpp.
  Use out parameters to get values after parsing.

* platform/network/HTTPParsers.cpp:
(WebCore):
(WebCore::trimInputSample): taken from WebSocket parsing.
(WebCore::parseHTTPRequestLine): new code, parse a request line.
(WebCore::parseHTTPHeaders): taken from previous WebSocket parsing. Algorithm unchanged.
(WebCore::parseHTTPRequestBody): new code, just copy the date into the provided buffer.
* platform/network/HTTPParsers.h:
(WebCore):

  This adds a general HTTPRequest class. Accessors for the
  request method, url, httpVersion, headers, and data. You can
  create an HTTPRequest using the constructor, or parse one
  from a data buffer, such as one read from a socket.

* platform/network/HTTPRequest.cpp: Added.
(WebCore):
(WebCore::HTTPRequest::parseHTTPRequestFromBuffer): create an HTTPRequest by parsing data in a buffer.
(WebCore::HTTPRequest::parseRequestLine): helper to initialize members while parsing.
(WebCore::HTTPRequest::parseHeaders): helper to initialize members while parsing.
(WebCore::HTTPRequest::parseRequestBody): helper to initialize members while parsing.
(WebCore::HTTPRequest::HTTPRequest):
(WebCore::HTTPRequest::~HTTPRequest):
* platform/network/HTTPRequest.h: Added.
(WebCore):
(HTTPRequest):
(WebCore::HTTPRequest::create): create an empty request, or specify details.
(WebCore::HTTPRequest::requestMethod):
(WebCore::HTTPRequest::setRequestMethod):
(WebCore::HTTPRequest::url):
(WebCore::HTTPRequest::setURL):
(WebCore::HTTPRequest::body):
(WebCore::HTTPRequest::headerFields):
(WebCore::HTTPRequest::addHeaderField):

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

12 years ago[Qt] Add a missing inspector front-end image to resources.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:22:57 +0000 (13:22 +0000)]
[Qt] Add a missing inspector front-end image to resources.

Reviewed by Simon Hausmann.

* inspector/front-end/WebKit.qrc:

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

12 years ago[Qt] Add developerExtrasEnabled to QWebPreferences.
jocelyn.turcotte@nokia.com [Tue, 3 Apr 2012 13:22:41 +0000 (13:22 +0000)]
[Qt] Add developerExtrasEnabled to QWebPreferences.
https://bugs.webkit.org/show_bug.cgi?id=83018

Reviewed by Kenneth Rohde Christiansen.

This is required to allow inspecting pages.

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

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

12 years ago[Qt][WK2] All plugin tests are failing on buildbot
kbalazs@webkit.org [Tue, 3 Apr 2012 13:13:14 +0000 (13:13 +0000)]
[Qt][WK2] All plugin tests are failing on buildbot
https://bugs.webkit.org/show_bug.cgi?id=83024

Unreviewed gardening. Skip plugin tests until fix.

* platform/qt-5.0-wk2/Skipped:

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

12 years agoGtk fails media/video-source-error.html (due to trailing whitespace?)
commit-queue@webkit.org [Tue, 3 Apr 2012 13:06:54 +0000 (13:06 +0000)]
Gtk fails media/video-source-error.html (due to trailing whitespace?)
https://bugs.webkit.org/show_bug.cgi?id=30198

Patch by Simon Pena <spena@igalia.com> on 2012-04-03
Reviewed by Philippe Normand.

Unskip offending test, since it is now passing without errors.

* platform/gtk/Skipped: Unskip media/video-source-error.html

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

12 years agoSoup HTTP backend does not send Content-Length in certain cases
commit-queue@webkit.org [Tue, 3 Apr 2012 12:59:35 +0000 (12:59 +0000)]
Soup HTTP backend does not send Content-Length in certain cases
https://bugs.webkit.org/show_bug.cgi?id=82036

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

Source/WebCore:

Telling soup explicitly when to send content-length header
in POST & PUT cases in order to align with e.g. Chromium and FF.

No new tests, already covered by *methods*.html in
http/tests/xmlhttprequest/.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::startHTTPRequest): Special handling for POST & PUT.

LayoutTests:

Rebaselining and unskipping relevant tests for EFL.
Rebaselining POST and PUT cases for GTK.

* platform/efl/Skipped:
* platform/efl/http/tests/xmlhttprequest/methods-async-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/methods-async-expected.txt.
* platform/efl/http/tests/xmlhttprequest/methods-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/methods-expected.txt.
* platform/efl/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/workers/methods-async-expected.txt.
* platform/efl/http/tests/xmlhttprequest/workers/methods-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/workers/methods-expected.txt.
* platform/efl/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt.
* platform/efl/http/tests/xmlhttprequest/workers/shared-worker-methods-expected.txt: Copied from LayoutTests/platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-expected.txt.
* platform/gtk/http/tests/xmlhttprequest/methods-async-expected.txt:
* platform/gtk/http/tests/xmlhttprequest/methods-expected.txt:
* platform/gtk/http/tests/xmlhttprequest/workers/methods-async-expected.txt:
* platform/gtk/http/tests/xmlhttprequest/workers/methods-expected.txt:
* platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt:
* platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-expected.txt:

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

12 years ago[EFL] LayoutTestController needs implementation of setDefersLoading
commit-queue@webkit.org [Tue, 3 Apr 2012 12:56:49 +0000 (12:56 +0000)]
[EFL] LayoutTestController needs implementation of setDefersLoading
https://bugs.webkit.org/show_bug.cgi?id=82890

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-03
Reviewed by Philippe Normand.

Source/WebKit/efl:

Implement setDefersLoading() in EFL's LayoutTestController so that the
corresponding test case can be removed from the skip list.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::setDefersLoading):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Implement setDefersLoading() in EFL's LayoutTestController so that the
corresponding test case can be removed from the skip list.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setDefersLoading):

LayoutTests:

Unskip loader/navigation-while-deferring-loads test in EFL now that
its LayoutTestController implements setDefersLoading().

* platform/efl/Skipped:

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

12 years ago[Chromium] Unreviewed, suppress compositing/reflections/nested-reflection-transformed...
apavlov@chromium.org [Tue, 3 Apr 2012 12:16:45 +0000 (12:16 +0000)]
[Chromium] Unreviewed, suppress compositing/reflections/nested-reflection-transformed2.html on Win Debug.

* platform/chromium/test_expectations.txt:

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

12 years agoSimplify CSSStyleSelector constructor through the use of a helper function
commit-queue@webkit.org [Tue, 3 Apr 2012 12:11:05 +0000 (12:11 +0000)]
Simplify CSSStyleSelector constructor through the use of a helper function
https://bugs.webkit.org/show_bug.cgi?id=82940

Reviewed by Andreas Kling.

No behavior change, thus no tests.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::CSSStyleSelector):
(WebCore):
(WebCore::CSSStyleSelector::addAuthorRulesAndCollectUserRulesFromSheets):
* css/CSSStyleSelector.h:
(CSSStyleSelector):

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

12 years ago[EFL] LayoutTestController needs implementation of goBack
commit-queue@webkit.org [Tue, 3 Apr 2012 12:11:04 +0000 (12:11 +0000)]
[EFL] LayoutTestController needs implementation of goBack
https://bugs.webkit.org/show_bug.cgi?id=81914

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-03
Reviewed by Philippe Normand.

Tools:

Implement goBack() in EFL's LayoutTestController by calling
ewk_frame_back().

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::goBack):

LayoutTests:

Unskip loader/navigation-while-deferring-loads test in EFL now that
its LayoutTestController supports goBack().

* platform/efl/Skipped:

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

12 years ago[Qt][WK2] Failing http/tests/plugins tests after reenabled plugins
kbalazs@webkit.org [Tue, 3 Apr 2012 12:08:14 +0000 (12:08 +0000)]
[Qt][WK2] Failing http/tests/plugins tests after reenabled plugins
https://bugs.webkit.org/show_bug.cgi?id=82895

Reviewed by Csaba Osztrogonác.

* platform/qt-5.0-wk1/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0/Skipped:

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

12 years agoWeb Inspector: Database::Database::id field in the protocol should have type integer...
yurys@chromium.org [Tue, 3 Apr 2012 12:07:53 +0000 (12:07 +0000)]
Web Inspector: Database::Database::id field in the protocol should have type integer not string
https://bugs.webkit.org/show_bug.cgi?id=83003

Reviewed by Pavel Feldman.

Changed DOM storage and database identifier type from int to String. This
is aligned with other domains and gives us more flexibility.

* bindings/js/JSInjectedScriptHostCustom.cpp:
(WebCore::JSInjectedScriptHost::databaseId):
(WebCore::JSInjectedScriptHost::storageId):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::V8InjectedScriptHost::databaseIdCallback):
(WebCore::V8InjectedScriptHost::storageIdCallback):
* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::databaseIdImpl):
(WebCore::InjectedScriptHost::storageIdImpl):
* inspector/InjectedScriptHost.h:
(InjectedScriptHost):
* inspector/InjectedScriptHost.idl:
* inspector/Inspector.json:
* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
(WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
(WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
(WebCore::InspectorDOMStorageAgent::storageId):
(WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
* inspector/InspectorDOMStorageAgent.h:
(InspectorDOMStorageAgent):
* inspector/InspectorDOMStorageResource.cpp:
(WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource):
(WebCore::InspectorDOMStorageResource::bind):
* inspector/InspectorDOMStorageResource.h:
(WebCore::InspectorDOMStorageResource::id):
(InspectorDOMStorageResource):
* inspector/InspectorDatabaseAgent.cpp:
(WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
(WebCore::InspectorDatabaseAgent::executeSQL):
(WebCore::InspectorDatabaseAgent::databaseId):
(WebCore::InspectorDatabaseAgent::databaseForId):
* inspector/InspectorDatabaseAgent.h:
(InspectorDatabaseAgent):
* inspector/InspectorDatabaseResource.cpp:
(WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
(WebCore::InspectorDatabaseResource::bind):
* inspector/InspectorDatabaseResource.h:
(WebCore::InspectorDatabaseResource::id):
(InspectorDatabaseResource):

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

12 years ago[Qt] Tap highlight attempted hidden several times
commit-queue@webkit.org [Tue, 3 Apr 2012 12:06:20 +0000 (12:06 +0000)]
[Qt] Tap highlight attempted hidden several times
https://bugs.webkit.org/show_bug.cgi?id=82903

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-03
Reviewed by Kenneth Rohde Christiansen.

Do not reset GestureRecognizer if already reset, and do not
disable tap-highlight on touch-end if already reset.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::recognize):
(WebKit::QtTapGestureRecognizer::reset):

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

12 years ago[EFL] LayoutTestController needs implementation of pageSizeAndMarginsInPixels
commit-queue@webkit.org [Tue, 3 Apr 2012 12:05:49 +0000 (12:05 +0000)]
[EFL] LayoutTestController needs implementation of pageSizeAndMarginsInPixels
https://bugs.webkit.org/show_bug.cgi?id=82589

Source/WebKit/efl:

Add missing implementation for pageSizeAndMarginsInPixels to EFL's
DumpRenderTreeSupport.

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-04-03
Reviewed by Philippe Normand.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::pageSizeAndMarginsInPixels):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Add missing implementation for pageSizeAndMarginsInPixels to EFL's LayoutTestController
in order to unskip printing/page-format-data.html

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-04-03
Reviewed by Philippe Normand.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::pageSizeAndMarginsInPixels):

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

12 years ago[Qt] Tap highlight still showing when tap gesture has timed out
commit-queue@webkit.org [Tue, 3 Apr 2012 12:01:11 +0000 (12:01 +0000)]
[Qt] Tap highlight still showing when tap gesture has timed out
https://bugs.webkit.org/show_bug.cgi?id=82902

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-03
Reviewed by Kenneth Rohde Christiansen.

Disable highlight of potential tap, when tap-and-hold state
replaces potential tap state.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):

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

12 years ago2012-04-03 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 3 Apr 2012 11:26:50 +0000 (11:26 +0000)]
2012-04-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Enable animVal support for SVGAnimatedEnumeration
        https://bugs.webkit.org/show_bug.cgi?id=82459

        Rubber-stamped by Zoltan Herczeg.

        Make highestEnumValue() return an unsigned to avoid casting in SVGAnimatedEnumerationPropertyTearOff.
        Fixes the last chromium build failure on the debug carnary bots.

        * svg/SVGComponentTransferFunctionElement.h:
        * svg/SVGFEBlendElement.h:
        * svg/SVGFEColorMatrixElement.h:
        * svg/SVGFECompositeElement.h:
        * svg/SVGFEConvolveMatrixElement.h:
        * svg/SVGFEDisplacementMapElement.h:
        * svg/SVGFEMorphologyElement.h:
        * svg/SVGFETurbulenceElement.h:
        * svg/SVGGradientElement.h:
        * svg/SVGMarkerElement.h:
        * svg/SVGTextContentElement.h:
        * svg/SVGTextPathElement.h:
        * svg/SVGUnitTypes.h:
        * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
        (WebCore::SVGAnimatedEnumerationPropertyTearOff::setBaseVal):

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

12 years agoAnimate animatedPoints instead of points for SVGPoly*Elements
zimmermann@webkit.org [Tue, 3 Apr 2012 10:36:01 +0000 (10:36 +0000)]
Animate animatedPoints instead of points for SVGPoly*Elements
https://bugs.webkit.org/show_bug.cgi?id=82844

Reviewed by Dirk Schulze.

Source/WebCore:

When the points attribute of a SVGPoly*Element is animated, we should animate
the 'animatedPoints' SVG DOM property, not the 'points' property, which corresponds
to the "baseVal". Fix that, now only the 'd' attribute for SVGPathElement is incorrect,
everything else is moved to the new animVal concept!

* svg/SVGAnimatedPointList.cpp:
(WebCore::SVGAnimatedPointListAnimator::startAnimValAnimation):
(WebCore::SVGAnimatedPointListAnimator::stopAnimValAnimation):
(WebCore::SVGAnimatedPointListAnimator::resetAnimValToBaseVal):
(WebCore::SVGAnimatedPointListAnimator::animValWillChange):
(WebCore::SVGAnimatedPointListAnimator::animValDidChange):
* svg/SVGAnimatedPointList.h:
(SVGAnimatedPointListAnimator):
* svg/SVGAnimatedType.cpp:
(WebCore::SVGAnimatedType::valueAsString):
(WebCore::SVGAnimatedType::setValueAsString):
(WebCore::SVGAnimatedType::supportsAnimVal):
* svg/SVGPolyElement.cpp:
(WebCore::SVGPolyElement::parseAttribute):
(WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
(WebCore::SVGPolyElement::points):
(WebCore::SVGPolyElement::animatedPoints):

LayoutTests:

Update SVGPointList animation tests, verifying that animatedPoints is animated, and not points.

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

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

12 years ago[GTK] media/video-volume.html fails on 32-bits debug
philn@webkit.org [Tue, 3 Apr 2012 10:27:09 +0000 (10:27 +0000)]
[GTK] media/video-volume.html fails on 32-bits debug
https://bugs.webkit.org/show_bug.cgi?id=50389

Unreviewed, unskip the test, it's passing locally. We'll keep an
eye on the bots.

* platform/gtk/Skipped:

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

12 years ago2012-04-03 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 3 Apr 2012 10:26:34 +0000 (10:26 +0000)]
2012-04-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Next chromium build fix, this time for real :-)

        * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
        (WebCore::SVGAnimatedEnumerationPropertyTearOff::setBaseVal): Cast highestEnumValue to unsigned.

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

12 years ago2012-04-03 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 3 Apr 2012 10:19:50 +0000 (10:19 +0000)]
2012-04-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Attempt to fix chromium build.

        * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h: Unsigned is always >= 0 - only check if its 0 here.
        (WebCore::SVGAnimatedEnumerationPropertyTearOff::setBaseVal):

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

12 years agoUnreviewed, rolling out r112954 and r112969.
apavlov@chromium.org [Tue, 3 Apr 2012 09:57:19 +0000 (09:57 +0000)]
Unreviewed, rolling out r112954 and r112969.
http://trac.webkit.org/changeset/112954
http://trac.webkit.org/changeset/112969
https://bugs.webkit.org/show_bug.cgi?id=79172

Hits "ASSERTION FAILED: !m_isHandlingDrag" in DnD-related
tests on Debug bots

Source/WebCore:

* page/DragController.cpp:
(WebCore::DragController::performDrag):

LayoutTests:

* fast/events/drag-dataTransferItemList.html:
* fast/events/drop-handler-should-not-stop-navigate-expected.txt: Removed.
* fast/events/drop-handler-should-not-stop-navigate.html: Removed.
* http/tests/security/clipboard/clipboard-file-access.html:

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

12 years ago2012-04-03 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 3 Apr 2012 09:39:17 +0000 (09:39 +0000)]
2012-04-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Enable animVal support for SVGAnimatedEnumeration
        https://bugs.webkit.org/show_bug.cgi?id=82459

        Reviewed by Dirk Schulze.

        Add new tests for all SVGAnimatedEnumeration in the SVG DOM to proof they animate and update animVal correctly.

        * platform/gtk/Skipped: Unskip svgenum tests.
        * svg/animations/animate-marker-orient-from-angle-to-angle-expected.txt: Added.
        * svg/animations/animate-marker-orient-from-angle-to-angle.html: Added.
        * svg/animations/animate-marker-orient-from-angle-to-auto-expected.txt: Added.
        * svg/animations/animate-marker-orient-from-angle-to-auto.html: Added.
        * svg/animations/animate-marker-orient-to-angle-expected.txt: Added.
        * svg/animations/animate-marker-orient-to-angle.html: Added.
        * svg/animations/script-tests/animate-marker-orient-from-angle-to-angle.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (executeTest):
        * svg/animations/script-tests/animate-marker-orient-from-angle-to-auto.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/animate-marker-orient-to-angle.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-deg-to-grad.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgangle-animation-deg-to-rad.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgangle-animation-grad-to-deg.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgangle-animation-grad-to-rad.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgangle-animation-rad-to-deg.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgangle-animation-rad-to-grad.js:
        (sample1):
        (sample2):
        (sample3):
        * svg/animations/script-tests/svgenum-animation-1.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-10.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-11.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (sample5):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-12.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-13.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-3.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-4.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (sample5):
        (sample6):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-5.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-6.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-7.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-8.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (sample5):
        (executeTest):
        * svg/animations/script-tests/svgenum-animation-9.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/svgangle-animation-deg-to-grad-expected.txt:
        * svg/animations/svgangle-animation-deg-to-rad-expected.txt:
        * svg/animations/svgangle-animation-grad-to-deg-expected.txt:
        * svg/animations/svgangle-animation-grad-to-rad-expected.txt:
        * svg/animations/svgangle-animation-rad-to-deg-expected.txt:
        * svg/animations/svgangle-animation-rad-to-grad-expected.txt:
        * svg/animations/svgenum-animation-1-expected.txt: Added.
        * svg/animations/svgenum-animation-1.html: Added.
        * svg/animations/svgenum-animation-10-expected.txt: Added.
        * svg/animations/svgenum-animation-10.html: Added.
        * svg/animations/svgenum-animation-11-expected.txt: Added.
        * svg/animations/svgenum-animation-11.html: Added.
        * svg/animations/svgenum-animation-12-expected.txt: Added.
        * svg/animations/svgenum-animation-12.html: Added.
        * svg/animations/svgenum-animation-13-expected.txt: Added.
        * svg/animations/svgenum-animation-13.html: Added.
        * svg/animations/svgenum-animation-2-expected.txt: Added.
        * svg/animations/svgenum-animation-2.html: Added.
        * svg/animations/svgenum-animation-3-expected.txt: Added.
        * svg/animations/svgenum-animation-3.html: Added.
        * svg/animations/svgenum-animation-4-expected.txt: Added.
        * svg/animations/svgenum-animation-4.html: Added.
        * svg/animations/svgenum-animation-5-expected.txt: Added.
        * svg/animations/svgenum-animation-5.html: Added.
        * svg/animations/svgenum-animation-6-expected.txt: Added.
        * svg/animations/svgenum-animation-6.html: Added.
        * svg/animations/svgenum-animation-7-expected.txt: Added.
        * svg/animations/svgenum-animation-7.html: Added.
        * svg/animations/svgenum-animation-8-expected.txt: Added.
        * svg/animations/svgenum-animation-8.html: Added.
        * svg/animations/svgenum-animation-9-expected.txt: Added.
        * svg/animations/svgenum-animation-9.html: Added.

2012-04-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Enable animVal support for SVGAnimatedEnumeration
        https://bugs.webkit.org/show_bug.cgi?id=82459

        Reviewed by Dirk Schulze.

        Enable animVal support for the last missing SVG DOM primitive: SVGAnimatedEnumeration.
        It's a bit more involved than the others as we have to differentiate between the various
        enumerations to use the correct SVGPropertyTraits<MyEnum>::fromString() code-path.

        One SVGAnimatedEnumeration property in the SVG DOM is special: SVGAnimatedEnumeration orientType
        from SVGMarkerElement. SVGMarkerElement exposes both the orientType and SVGAnimatedAngle orientAngle
        SVG DOM properties and both get mapped to the same SVGNames::orientAttr ("orient" XML attribute).
        That means that any animation of the orientAttr has to update both orientType & orientAngle.

        This is a not a new requirement, we already support attributes like 'stdDeviation' from
        SVGFEGaussianBlurElement, which get mapped to multiple SVG DOM objects: SVGAnimatedInteger stdDeviationX/Y.
        The difference is that <integer-optional-integer> or <number-optional-number> animations use the
        same type in the pair<xxx, xxx> (eg. both int, or both float). The 'orient' attribute needs to be
        mapped to pair<xxx, yyy> types. Generalize the templates in SVGAnimatedTypeAnimator to support that.

        Example:
        <marker id="someMarkerElement" orient="45deg"/>
        <animate fill="remove" begin="1s" dur="2s" from="90deg" to="auto" attributeName="orient" xlink:href="#someMarkerElement"/>

        at 0s: someMarkerElement.orientType.animVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.animVal.value = 45

               someMarkerElement.orientType.baseVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.baseVal.value = 45

        at 1s: someMarkerElement.orientType.animVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.animVal.value = 90

               someMarkerElement.orientType.baseVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.baseVal.value = 45

        at 2s: someMarkerElement.orientType.animVal = SVGMarkerElement.SVG_MARKER_ORIENT_AUTO
               someMarkerElement.orientAngle.animVal.value = 0

               someMarkerElement.orientType.baseVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.baseVal.value = 45

         > 3s: someMarkerElement.orientType.animVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.animVal.value = 45

               someMarkerElement.orientType.baseVal = SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
               someMarkerElement.orientAngle.baseVal.value = 45

        We need to map the 'orient' attribute to a pair<SVGAngle, unsigned short> type, in order
        to track both orientAngle & orientType at the same type. Fortunately SVGAnimatedAngle
        is only used in the SVG DOM for SVGMarkerElements orientAngle property. We can directly
        switch SVGAnimatedAngleAnimator to the new pair<SVGAngle, unsigned short> type instead
        of having to introduce a special SVGAnimatedAngleAndEnumerationAnimator.

        Added tests for all SVGAnimatedEnumeration properties in the SVG DOM, including an extensive set of tests
        for the synchronization of the orientType / orientAngle properties, when they get animated.

        Tests: svg/animations/animate-marker-orient-from-angle-to-angle.html
               svg/animations/animate-marker-orient-from-angle-to-auto.html
               svg/animations/animate-marker-orient-to-angle.html
               svg/animations/svgenum-animation-1.html
               svg/animations/svgenum-animation-10.html
               svg/animations/svgenum-animation-11.html
               svg/animations/svgenum-animation-12.html
               svg/animations/svgenum-animation-13.html
               svg/animations/svgenum-animation-2.html
               svg/animations/svgenum-animation-3.html
               svg/animations/svgenum-animation-4.html
               svg/animations/svgenum-animation-5.html
               svg/animations/svgenum-animation-6.html
               svg/animations/svgenum-animation-7.html
               svg/animations/svgenum-animation-8.html
               svg/animations/svgenum-animation-9.html

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * WebCore.gypi:
        * WebCore.xcodeproj/project.pbxproj:
        * svg/SVGAllInOne.cpp:
        * svg/SVGAnimateElement.cpp:
        (WebCore::SVGAnimateElement::determineAnimatedPropertyType):
        (WebCore::SVGAnimateElement::calculateAnimatedValue):
        (WebCore::propertyTypesAreConsistent):
        (WebCore::SVGAnimateElement::applyResultsToTarget):
        * svg/SVGAnimatedAngle.cpp:
        (WebCore::SVGAnimatedAngleAnimator::constructFromString):
        (WebCore::SVGAnimatedAngleAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedAngleAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedAngleAnimator::resetAnimValToBaseVal):
        (WebCore::SVGAnimatedAngleAnimator::animValWillChange):
        (WebCore::SVGAnimatedAngleAnimator::animValDidChange):
        (WebCore::SVGAnimatedAngleAnimator::calculateFromAndByValues):
        (WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):
        * svg/SVGAnimatedAngle.h:
        (WebCore):
        * svg/SVGAnimatedBoolean.cpp:
        (WebCore::SVGAnimatedBooleanAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedBooleanAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedBooleanAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedEnumeration.cpp: Added.
        (WebCore):
        (WebCore::enumerationValueForTargetAttribute):
        (WebCore::SVGAnimatedEnumerationAnimator::SVGAnimatedEnumerationAnimator):
        (WebCore::SVGAnimatedEnumerationAnimator::constructFromString):
        (WebCore::SVGAnimatedEnumerationAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedEnumerationAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedEnumerationAnimator::resetAnimValToBaseVal):
        (WebCore::SVGAnimatedEnumerationAnimator::animValWillChange):
        (WebCore::SVGAnimatedEnumerationAnimator::animValDidChange):
        (WebCore::SVGAnimatedEnumerationAnimator::calculateFromAndToValues):
        (WebCore::SVGAnimatedEnumerationAnimator::calculateFromAndByValues):
        (WebCore::SVGAnimatedEnumerationAnimator::calculateAnimatedValue):
        (WebCore::SVGAnimatedEnumerationAnimator::calculateDistance):
        * svg/SVGAnimatedEnumeration.h:
        (SVGAnimatedEnumerationAnimator):
        (WebCore::SVGAnimatedEnumerationAnimator::~SVGAnimatedEnumerationAnimator):
        (WebCore):
        * svg/SVGAnimatedInteger.cpp:
        (WebCore::SVGAnimatedIntegerAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedIntegerAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedIntegerAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedIntegerOptionalInteger.cpp:
        (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::resetAnimValToBaseVal):
        (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::animValWillChange):
        (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::animValDidChange):
        * svg/SVGAnimatedLength.cpp:
        (WebCore::SVGAnimatedLengthAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedLengthAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedLengthAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedLengthList.cpp:
        (WebCore::SVGAnimatedLengthListAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedLengthListAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedLengthListAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedNumber.cpp:
        (WebCore::SVGAnimatedNumberAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedNumberAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedNumberAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedNumberList.cpp:
        (WebCore::SVGAnimatedNumberListAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedNumberListAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedNumberListAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedNumberOptionalNumber.cpp:
        (WebCore::SVGAnimatedNumberOptionalNumberAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedNumberOptionalNumberAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedNumberOptionalNumberAnimator::resetAnimValToBaseVal):
        (WebCore::SVGAnimatedNumberOptionalNumberAnimator::animValWillChange):
        (WebCore::SVGAnimatedNumberOptionalNumberAnimator::animValDidChange):
        * svg/SVGAnimatedPreserveAspectRatio.cpp:
        (WebCore::SVGAnimatedPreserveAspectRatioAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedPreserveAspectRatioAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedPreserveAspectRatioAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedRect.cpp:
        (WebCore::SVGAnimatedRectAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedRectAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedRectAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedString.cpp:
        (WebCore::SVGAnimatedStringAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedStringAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedStringAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedTransformList.cpp:
        (WebCore::SVGAnimatedTransformListAnimator::startAnimValAnimation):
        (WebCore::SVGAnimatedTransformListAnimator::stopAnimValAnimation):
        (WebCore::SVGAnimatedTransformListAnimator::resetAnimValToBaseVal):
        * svg/SVGAnimatedType.cpp:
        (WebCore::SVGAnimatedType::~SVGAnimatedType):
        (WebCore::SVGAnimatedType::createAngleAndEnumeration):
        (WebCore::SVGAnimatedType::createEnumeration):
        (WebCore):
        (WebCore::SVGAnimatedType::angleAndEnumeration):
        (WebCore::SVGAnimatedType::enumeration):
        (WebCore::SVGAnimatedType::valueAsString):
        (WebCore::SVGAnimatedType::setValueAsString):
        (WebCore::SVGAnimatedType::supportsAnimVal):
        * svg/SVGAnimatedType.h:
        (SVGAnimatedType):
        * svg/SVGAnimatedTypeAnimator.h:
        (WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
        (SVGAnimatedTypeAnimator):
        (WebCore::SVGAnimatedTypeAnimator::constructFromBaseValue):
        (WebCore::SVGAnimatedTypeAnimator::resetFromBaseValue):
        (WebCore::SVGAnimatedTypeAnimator::stopAnimValAnimationForType):
        (WebCore::SVGAnimatedTypeAnimator::animValDidChangeForType):
        (WebCore::SVGAnimatedTypeAnimator::animValWillChangeForType):
        (WebCore::SVGAnimatedTypeAnimator::constructFromBaseValues):
        (WebCore::SVGAnimatedTypeAnimator::resetFromBaseValues):
        (WebCore::SVGAnimatedTypeAnimator::stopAnimValAnimationForTypes):
        (WebCore::SVGAnimatedTypeAnimator::animValDidChangeForTypes):
        (WebCore::SVGAnimatedTypeAnimator::animValWillChangeForTypes):
        (WebCore::SVGAnimatedTypeAnimator::castAnimatedPropertyToActualType):
        (WebCore::SVGAnimatedTypeAnimator::executeAction):
        * svg/SVGAnimatorFactory.h:
        (WebCore::SVGAnimatorFactory::create):
        * svg/SVGMarkerElement.cpp:
        (WebCore):
        * svg/properties/SVGAnimatedListPropertyTearOff.h:
        (SVGAnimatedListPropertyTearOff):
        * svg/properties/SVGAnimatedPropertyTearOff.h:
        (SVGAnimatedPropertyTearOff):
        * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
        (SVGAnimatedStaticPropertyTearOff):

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

12 years agoUnreviewed, rolling out r112987 and r112993.
commit-queue@webkit.org [Tue, 3 Apr 2012 09:24:39 +0000 (09:24 +0000)]
Unreviewed, rolling out r112987 and r112993.
http://trac.webkit.org/changeset/112987
http://trac.webkit.org/changeset/112993
https://bugs.webkit.org/show_bug.cgi?id=83010

hits ASSERTs in Debug builds (Requested by philn-tp on
#webkit).

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

Source/WebCore:

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::initSecurityContext):
* dom/Document.h:
(Document):
* html/HTMLAttributeNames.in:
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::parseAttribute):
(WebCore::HTMLFrameElementBase::location):
* html/HTMLIFrameElement.idl:
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::defaultForInitial):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::submitForm):
(WebCore::FrameLoader::outgoingReferrer):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::reload):
(WebCore::FrameLoader::loadResourceSynchronously):
* loader/FrameLoader.h:
(FrameLoader):

LayoutTests:

* fast/frames/srcdoc/reloading-a-srcdoc-document-loads-it-again-expected.txt: Removed.
* fast/frames/srcdoc/reloading-a-srcdoc-document-loads-it-again.html: Removed.
* fast/frames/srcdoc/setting-src-does-nothing-expected.txt: Removed.
* fast/frames/srcdoc/setting-src-does-nothing.html: Removed.
* fast/frames/srcdoc/setting-srcdoc-reloads-document-expected.txt: Removed.
* fast/frames/srcdoc/setting-srcdoc-reloads-document.html: Removed.
* fast/frames/srcdoc/srcdoc-beats-src-dom-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-beats-src-dom.html: Removed.
* fast/frames/srcdoc/srcdoc-beats-src-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-beats-src.html: Removed.
* fast/frames/srcdoc/srcdoc-can-be-in-qurks-mode-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-can-be-in-qurks-mode.html: Removed.
* fast/frames/srcdoc/srcdoc-can-navigate-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-can-navigate.html: Removed.
* fast/frames/srcdoc/srcdoc-defaults-to-standards-mode-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-defaults-to-standards-mode.html: Removed.
* fast/frames/srcdoc/srcdoc-loads-content-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-loads-content.html: Removed.
* fast/frames/srcdoc/srcdoc-urls-expected.txt: Removed.
* fast/frames/srcdoc/srcdoc-urls.html: Removed.
* http/tests/security/srcdoc-can-access-parent-expected.txt: Removed.
* http/tests/security/srcdoc-can-access-parent.html: Removed.
* http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt: Removed.
* http/tests/security/srcdoc-in-sandbox-cannot-access-parent.html: Removed.
* http/tests/security/srcdoc-inherits-referrer-expected.txt: Removed.
* http/tests/security/srcdoc-inherits-referrer-for-forms-expected.txt: Removed.
* http/tests/security/srcdoc-inherits-referrer-for-forms.html: Removed.
* http/tests/security/srcdoc-inherits-referrer.html: Removed.
* platform/chromium/http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt: Removed.

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

12 years ago[GTK] DRT missing didRunInsecureContent notification
commit-queue@webkit.org [Tue, 3 Apr 2012 09:20:50 +0000 (09:20 +0000)]
[GTK] DRT missing didRunInsecureContent notification
https://bugs.webkit.org/show_bug.cgi?id=59367

Patch by Simon Pena <spena@igalia.com> on 2012-04-03
Reviewed by Philippe Normand.

Source/WebKit/gtk:

Add a new signal "insecure-content-run" to the WebFrame to notify
when insecure HTTP content (such as CSS, an iframe or a script) is
run from a secure HTTPS WebFrame. Implement didRunInsecureContent
in gtk's FrameLoaderClient by means of emitting that signal.

* WebCoreSupport/FrameLoaderClientGtk.cpp: Implement
didRunInsecureContent by emitting WebFrame's
"insecure-content-run" signal
(WebKit::FrameLoaderClient::didRunInsecureContent):
* webkit/webkitwebframe.cpp: Add "insecure-content-run" signal
(webkit_web_frame_class_init):

Tools:

Connect DumpRenderTree to WebFrame's "insecure-content-run", in both
the main WebFrame or any other WebFrame created later. Added
"didRunInsecureContent" notification in the callback in order to
get the LayoutTests passing.

* DumpRenderTree/gtk/DumpRenderTree.cpp: Connect
to WebFrame's "insecure-content-run" signal and add
didRunInsecureContent notification in the callback to get the
LayoutTests passing.
(didRunInsecureContent):
(createWebView):

LayoutTests:

Unskip tests as new API is added to detect when a secure HTTPS page
loads content (such as CSS, images, iframes or a script) from
a non-secure HTTP origin.

* platform/gtk/Skipped: Unskip insecure-css-in-main-frame,
insecure-css-in-iframe, insecure-image-in-main-frame,
insecure-script-in-iframe, insecure-plugin-in-iframe,
redirect-http-to-https-script-in-iframe and
redirect-https-to-http-script-in-iframe since they pass after the
new API has been added.

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

12 years ago[Qt] Unreviewed gardening after r112954.
kkristof@inf.u-szeged.hu [Tue, 3 Apr 2012 09:16:13 +0000 (09:16 +0000)]
[Qt] Unreviewed gardening after r112954.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-04-03

* platform/qt/Skipped: Skip fast/events/drop-handler-should-not-stop-navigate.html because of missing drag and drop support.

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

12 years agoFallback fonts should be used while a web font is being loaded
bashi@chromium.org [Tue, 3 Apr 2012 09:08:01 +0000 (09:08 +0000)]
Fallback fonts should be used while a web font is being loaded
https://bugs.webkit.org/show_bug.cgi?id=76684

Reviewed by Ojan Vafai.

Add the test which should have been submitted with r112489.

* http/tests/webfont/fallback-font-while-loading-expected.txt: Added.
* http/tests/webfont/fallback-font-while-loading.html: Added.
* http/tests/webfont/slow-ahem-loading.cgi: Added.

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

12 years agoUnreviewed, disable inspector/styles/override-screen-size.html on platforms other...
apavlov@chromium.org [Tue, 3 Apr 2012 08:53:49 +0000 (08:53 +0000)]
Unreviewed, disable inspector/styles/override-screen-size.html on platforms other than Chromium.
Related bug: https://bugs.webkit.org/show_bug.cgi?id=82886

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

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

12 years agoREGRESSION (r112217): H&R Block tax site won't load
bbudge@chromium.org [Tue, 3 Apr 2012 08:45:26 +0000 (08:45 +0000)]
REGRESSION (r112217): H&R Block tax site won't load
https://bugs.webkit.org/show_bug.cgi?id=82964

Source/WebCore:

Modifies the redirect checking code to first check if the security origin can
request the redirect URL before invoking the CORS check.

Reviewed by Adam Barth.

http/tests/xmlhttprequest/access-control-and-redirects-async.html

* loader/DocumentThreadableLoader.cpp:
* loader/DocumentThreadableLoader.h:

LayoutTests:

Add a test case for a same origin request with a custom header that receives a
same origin redirect, and therefore should pass the redirect check.

Reviewed by Adam Barth.

* http/tests/xmlhttprequest/access-control-and-redirects-async-expected.txt:
* http/tests/xmlhttprequest/access-control-and-redirects-async.html:

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

12 years agoUnreviewed, rolling out r112994.
loislo@chromium.org [Tue, 3 Apr 2012 08:36:12 +0000 (08:36 +0000)]
Unreviewed, rolling out r112994.
http://trac.webkit.org/changeset/112994
https://bugs.webkit.org/show_bug.cgi?id=83008

This patch has to wait until v8 roll. (Requested by loislo on
#webkit).

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

* bindings/js/ScriptHeapSnapshot.h:
* bindings/v8/ScriptHeapSnapshot.cpp:
(WebCore):
* bindings/v8/ScriptHeapSnapshot.h:
(WebCore):
(ScriptHeapSnapshot):
* inspector/InspectorProfilerAgent.cpp:
(WebCore::InspectorProfilerAgent::createSnapshotHeader):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.HeapSnapshotConstructorsDataGrid):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype.setDataSource):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype.populateChildren):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged.firstSnapshotLoaded):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged.secondSnapshotLoaded):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged):
(WebInspector.DetailedHeapshotView.prototype._changeFilter):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype.get maxNodeId):
(WebInspector.HeapSnapshot.prototype.updateStaticData):
* inspector/front-end/HeapSnapshotProxy.js:
(WebInspector.HeapSnapshotProxy.prototype.get maxNodeId):

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

12 years agorebaseline-server: Make it possible to not launch a browser with the server.
rakuco@FreeBSD.org [Tue, 3 Apr 2012 08:32:34 +0000 (08:32 +0000)]
rebaseline-server: Make it possible to not launch a browser with the server.
https://bugs.webkit.org/show_bug.cgi?id=82999

Reviewed by Adam Barth.

Add the `--no-show-results' option, which lets one decide not to
launch a web browser when running the rebaseline server.  This is
especially useful if the default browser is not the wanted one, or
if the rebaseline server page is already open.

* Scripts/webkitpy/tool/commands/abstractlocalservercommand.py:
(AbstractLocalServerCommand.__init__):
(AbstractLocalServerCommand.execute):

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

12 years agoWeb Inspector: use maxJSObjectId that is provided by back-end.
loislo@chromium.org [Tue, 3 Apr 2012 08:28:37 +0000 (08:28 +0000)]
Web Inspector: use maxJSObjectId that is provided by back-end.
https://bugs.webkit.org/show_bug.cgi?id=82451

Summary view can filter objects in snapshot. It uses maxJSObjectId for this.
There was no such field in the profile header at the
moment but I've landed a patch in downstream.

Reviewed by Yury Semikhatsky.

* bindings/v8/ScriptHeapSnapshot.cpp:
(WebCore::ScriptHeapSnapshot::maxSnapshotJSObjectId):
(WebCore):
* bindings/v8/ScriptHeapSnapshot.h:
(WebCore):
(ScriptHeapSnapshot):
* inspector/InspectorProfilerAgent.cpp:
(WebCore::InspectorProfilerAgent::createSnapshotHeader):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged):
(WebInspector.DetailedHeapshotView.prototype._changeFilter):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype.updateStaticData):
* inspector/front-end/HeapSnapshotProxy.js:

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

12 years agoUnreviewed, baseline update for new test.
philn@webkit.org [Tue, 3 Apr 2012 07:57:32 +0000 (07:57 +0000)]
Unreviewed, baseline update for new test.

* http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:
* platform/chromium/http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt: Copied from LayoutTests/http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt.

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

12 years agoWeb Inspector: "Pause on start" doesn't change checked state in workers panel
pfeldman@chromium.org [Tue, 3 Apr 2012 07:31:23 +0000 (07:31 +0000)]
Web Inspector: "Pause on start" doesn't change checked state in workers panel
https://bugs.webkit.org/show_bug.cgi?id=82908

Reviewed by Yury Semikhatsky.

This change partially reverts logic that was introduced with r111551:
preventDefault was called beside each stopPropagation. As a result, default checkbox handler was not working.
Event.prototype.consume now receives preventDefault parameter that controls whether default action
should be prevented.

* inspector/front-end/AdvancedSearchController.js:
(WebInspector.SearchView.prototype._onKeyDown):
* inspector/front-end/CSSSelectorProfileView.js:
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleView.prototype._enterKeyPressed):
(WebInspector.ConsoleGroup.prototype._titleClicked):
* inspector/front-end/DataGrid.js:
(WebInspector.DataGrid.prototype._keyDown):
* inspector/front-end/DatabaseQueryView.js:
(WebInspector.DatabaseQueryView.prototype._enterKeyPressed):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype._mouseDownInContentsGrid):
(WebInspector.DetailedHeapshotView.prototype._retainersHeaderDragging):
* inspector/front-end/Dialog.js:
(WebInspector.Dialog.prototype._onKeyDown):
* inspector/front-end/Drawer.js:
(WebInspector.Drawer.prototype._statusBarDragging):
* inspector/front-end/Object.js:
(WebInspector.Event.prototype.consume):
* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertyTreeElement.prototype._promptKeyDown):
* inspector/front-end/ProfileView.js:
* inspector/front-end/SearchController.js:
(WebInspector.SearchController.prototype._onKeyDown):
* inspector/front-end/SoftContextMenu.js:
(.WebInspector.SoftContextMenu.prototype.show):
(.WebInspector.SoftContextMenu.prototype._menuItemMouseDown):
(.WebInspector.SoftContextMenu.prototype._menuKeyDown):
(.WebInspector.SoftContextMenu.prototype._discardMenu):
* inspector/front-end/Spectrum.js:
(WebInspector.Spectrum.draggable.consume):
(WebInspector.Spectrum.prototype._onKeyDown):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.muteEventListener):
(WebInspector.StylesSidebarPane):
(WebInspector.StylePropertiesSection.prototype._handleSelectorClick):
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
(WebInspector.StylePropertyTreeElement.prototype):
* inspector/front-end/TextPrompt.js:
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPromptWithHistory.prototype.defaultKeyHandler):
(WebInspector.TextPrompt.SuggestBox.prototype._onItemMouseDown):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype._handleKeyDown):
* inspector/front-end/UIUtils.js:
(WebInspector.startEditing):
* inspector/front-end/inspector.js:
(WebInspector.documentKeyDown):
* inspector/front-end/treeoutline.js:
(TreeOutline.prototype._treeKeyPress):
(TreeOutline.prototype._treeKeyDown):
(TreeOutline.prototype._searchInputKeyDown):
(TreeElement.prototype.selectOnMouseDown):
* inspector/front-end/utilities.js:
(Event.prototype.consume):

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

12 years agoWebViewImpl doesn't notify the page that the user has canceled fullscreen.
bbudge@chromium.org [Tue, 3 Apr 2012 07:21:10 +0000 (07:21 +0000)]
WebViewImpl doesn't notify the page that the user has canceled fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=82760

Reviewed by Darin Fisher.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::willExitFullScreen):
(WebKit::WebViewImpl::exitFullScreenForElement):
* src/WebViewImpl.h:

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

12 years agoUnreviewed, GTK gardening
philn@webkit.org [Tue, 3 Apr 2012 07:18:39 +0000 (07:18 +0000)]
Unreviewed, GTK gardening

* platform/gtk/Skipped: Skip 2 crashers and failing new test.
* platform/gtk/test_expectations.txt: Mark
inspector/timeline/timeline-network-resource.html flaky.

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

12 years agoAX: search field on Google.com does not have the AXSearchField subrole
cfleizach@apple.com [Tue, 3 Apr 2012 07:15:37 +0000 (07:15 +0000)]
AX: search field on Google.com does not have the AXSearchField subrole
https://bugs.webkit.org/show_bug.cgi?id=82819

Reviewed by Darin Adler.

Source/WebCore:

Detect search fields when possible for accessibility.

Test: platform/mac/accessibility/search-subrole.html

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isSearchField):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isSearchField):
(WebCore):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper subrole]):

LayoutTests:

* platform/mac/accessibility/search-subrole-expected.txt: Added.
* platform/mac/accessibility/search-subrole.html: Added.

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

12 years agoIntroduce another file-to-array script
tkent@chromium.org [Tue, 3 Apr 2012 07:14:51 +0000 (07:14 +0000)]
Introduce another file-to-array script
https://bugs.webkit.org/show_bug.cgi?id=83001

Reviewed by Kentaro Hara.

make-file-arrays.py is a script to convert a binary file to a C++
char array. The differences from css/make-css-file-arrays.pl and
inspector/xxd.pl are:

- No whitespace stripping for CSS files
- We can make conditional arrays.
e.g. An array enclosed with #if ENABLE(...) - #endif.

This script will be used to implement a calendar picker for <input
type=date>.

* make-file-arrays.py: Added.

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

12 years agoImplement <iframe srcdoc>
abarth@webkit.org [Tue, 3 Apr 2012 06:52:35 +0000 (06:52 +0000)]
Implement <iframe srcdoc>
https://bugs.webkit.org/show_bug.cgi?id=82991

Reviewed by Sam Weinig.

Source/WebCore:

This patch implements the <iframe srcdoc> feature. This feature allows
authors to easily supply the contents of an iframe without needing to
round-trip to the server. Using srcdoc is more convenient than using
data URLs because we set a bunch of properties of the child document
sensibly. For example, the child inherits the base URL of the parent
and the child uses standards mode by default.

This feature is specified in
<http://www.whatwg.org/specs/web-apps/current-work/#attr-iframe-srcdoc>.
Although the feature has been in the spec for a while, I'm not aware of
any other implementations in major browsers. The srcdoc feature works
especially well with the sandbox and seamless attributes. We already
implement sandbox and will likely implement seamless soon.

The srcdoc feature was announced on the webkit-dev mailing list on March 30:
https://lists.webkit.org/pipermail/webkit-dev/2012-March/020161.html

This patch approaches the implementation using SubstituteData, which is
a mechanism previously used for error messages and the like. Using
SubstituteData has the advantage of not needing to modify the loading
or history pipelines at all, making the integration of srcdoc with the
rest of WebCore quite smooth.

This patch encodes the contents of the srcdoc attribute to and from
UTF-8 when round-tripping the contents through the loader. In a future
patch, I plan to experiment with whether using UTF-16 (or perhaps
another encoding) can improve performance. There might also be a way to
avoid the memcpy entirely, but these optimizations are best left to
followup patches as this patch focuses on the observable behavior of
the feature.

Tests: fast/frames/srcdoc/reloading-a-srcdoc-document-loads-it-again.html
       fast/frames/srcdoc/setting-src-does-nothing.html
       fast/frames/srcdoc/setting-srcdoc-reloads-document.html
       fast/frames/srcdoc/srcdoc-beats-src-dom.html
       fast/frames/srcdoc/srcdoc-beats-src.html
       fast/frames/srcdoc/srcdoc-can-be-in-qurks-mode.html
       fast/frames/srcdoc/srcdoc-can-navigate.html
       fast/frames/srcdoc/srcdoc-defaults-to-standards-mode.html
       fast/frames/srcdoc/srcdoc-loads-content.html
       fast/frames/srcdoc/srcdoc-urls.html
       http/tests/security/srcdoc-can-access-parent.html
       http/tests/security/srcdoc-in-sandbox-cannot-access-parent.html
       http/tests/security/srcdoc-inherits-referrer-for-forms.html
       http/tests/security/srcdoc-inherits-referrer.html

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::initSecurityContext):
    - srcdoc documents need to inherit their security contexts from
      their parents. We pick this initialization point to inherit the
      base URL and to set the "srcdoc Document" bit so that everything
      gets initialized atomically and from precisely the same owner
      frame.
* dom/Document.h:
(Document):
(WebCore::Document::isSrcdocDocument):
    - This bit of state is present in the HTML5 spec and is referred to
      by a number of different requirements in the spec.
* html/HTMLAttributeNames.in:
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::parseAttribute):
(WebCore::HTMLFrameElementBase::location):
    - These functions implement the requirement that the srcdoc
      attribute takes precedence over the src attribute and triggers a
      load of a document with the URL about:srcdoc.
* html/HTMLIFrameElement.idl:
    - Expose the srcdoc property as a reflection of the DOM attribute.
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::defaultForInitial):
    - This tweak allows srcdoc documents to use standards mode by
      default, saving authors from having to include a doctype in each
      srcdoc document.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::defaultSubstituteDataForURL):
    - This function transfers the contents of the srcdoc attribute into
      the loading pipeline. If the client supplies other
      SubstituteData, that takes precendence over our "default"
      SubstituteData.
(WebCore::FrameLoader::outgoingReferrer):
    - This function implements the requirement from the HTML5 spec that
      srcdoc documents inherit their referrer from their parent
      document. A recursive implementation might have been more
      aesthetic but the iterative implementation seemed like a better
      choice.
(WebCore::FrameLoader::shouldTreatURLAsSrcdocDocument):
    - An about:srcdoc URL only has special meaning when loaded in an
      iframe with a srcdoc attribute. Otherwise, it's just a normal
      "about" URL, meaning a blank page.
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::submitForm):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::reload):
(WebCore::FrameLoader::loadResourceSynchronously):
    - Update these call sites to call defaultSubstituteDataForURL and
      outgoingReferrer consistently.
* loader/FrameLoader.h:
(FrameLoader):

LayoutTests:

Add a number of tests for <iframe srcdoc>. These tests cover all the
requirements I could find in the HTML5 specification by grepping for
the term "srcdoc".

* fast/frames/srcdoc/reloading-a-srcdoc-document-loads-it-again-expected.txt: Added.
* fast/frames/srcdoc/reloading-a-srcdoc-document-loads-it-again.html: Added.
* fast/frames/srcdoc/setting-src-does-nothing-expected.txt: Added.
* fast/frames/srcdoc/setting-src-does-nothing.html: Added.
* fast/frames/srcdoc/setting-srcdoc-reloads-document-expected.txt: Added.
* fast/frames/srcdoc/setting-srcdoc-reloads-document.html: Added.
* fast/frames/srcdoc/srcdoc-beats-src-dom-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-beats-src-dom.html: Added.
* fast/frames/srcdoc/srcdoc-beats-src-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-beats-src.html: Added.
* fast/frames/srcdoc/srcdoc-can-be-in-qurks-mode-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-can-be-in-qurks-mode.html: Added.
* fast/frames/srcdoc/srcdoc-can-navigate-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-can-navigate.html: Added.
* fast/frames/srcdoc/srcdoc-defaults-to-standards-mode-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-defaults-to-standards-mode.html: Added.
* fast/frames/srcdoc/srcdoc-loads-content-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-loads-content.html: Added.
* fast/frames/srcdoc/srcdoc-urls-expected.txt: Added.
* fast/frames/srcdoc/srcdoc-urls.html: Added.
* http/tests/security/srcdoc-can-access-parent-expected.txt: Added.
* http/tests/security/srcdoc-can-access-parent.html: Added.
* http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt: Added.
* http/tests/security/srcdoc-in-sandbox-cannot-access-parent.html: Added.
* http/tests/security/srcdoc-inherits-referrer-expected.txt: Added.
* http/tests/security/srcdoc-inherits-referrer-for-forms-expected.txt: Added.
* http/tests/security/srcdoc-inherits-referrer-for-forms.html: Added.
* http/tests/security/srcdoc-inherits-referrer.html: Added.

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

12 years agoEFL's LayoutTestController disableImageLoading implementation.
commit-queue@webkit.org [Tue, 3 Apr 2012 05:10:59 +0000 (05:10 +0000)]
EFL's LayoutTestController disableImageLoading implementation.
https://bugs.webkit.org/show_bug.cgi?id=82848

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-04-02
Reviewed by Hajime Morita.

Tools:

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::disableImageLoading):

LayoutTests:

* platform/efl/Skipped:

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

12 years ago[EFL] LayoutTestController needs implementation of isPageBoxVisible
commit-queue@webkit.org [Tue, 3 Apr 2012 05:05:42 +0000 (05:05 +0000)]
[EFL] LayoutTestController needs implementation of isPageBoxVisible
https://bugs.webkit.org/show_bug.cgi?id=82591

Source/WebKit/efl:

Add missing implementation for isPageBoxVisible to EFL's
DumpRenderTreeSupport.

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-04-02
Reviewed by Hajime Morita.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::isPageBoxVisible):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Add missing implementation to isPageBoxVisible to EFL's LayoutTestController
in order to unskip printing/page-format-data.html

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-04-02
Reviewed by Hajime Morita.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::isPageBoxVisible):

LayoutTests:

Unskip printing/page-format-data.html

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-04-02
Reviewed by Hajime Morita.

* platform/efl/Skipped:

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

12 years ago[Chromium] Add WebKit API for WebCore::TextFieldDecorator
tkent@chromium.org [Tue, 3 Apr 2012 04:24:37 +0000 (04:24 +0000)]
[Chromium] Add WebKit API for WebCore::TextFieldDecorator
https://bugs.webkit.org/show_bug.cgi?id=82143

Reviewed by Dimitri Glazkov.

Expose WebCore::TextFieldDecorator as
WebKit::WebTextFieldDecoratorClient. This change add capability to add
decoration buttons to text field <input> elements.

* WebKit.gyp: Add new files.
* public/WebTextFieldDecoratorClient.h: Added.
* public/WebView.h:
(WebKit): Add addTextFieldDecoratorClient().
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::willAddTextFieldDecorationsTo):
Calls willAddDecorationTo() of TextFieldDecorator objects owned by WebViewImpl.
(WebKit::ChromeClientImpl::addTextFieldDecorationsTo):
Apply TextFieldDecorationElement::decorate() for the specified input element.
* src/ChromeClientImpl.h:
(ChromeClientImpl): Add new function declarations.
* src/TextFieldDecoratorImpl.cpp:
Added. This is a bridge of WebCore::TextFieldDecorator and
WebKit::WebTextFieldDecoratorClient. This owns CachedImage objects
specfied by WebTextFieldDecoratorClient.
(WebKit::TextFieldDecoratorImpl::TextFieldDecoratorImpl):
(WebKit::TextFieldDecoratorImpl::create):
(WebKit::TextFieldDecoratorImpl::~TextFieldDecoratorImpl):
(WebKit::TextFieldDecoratorImpl::willAddDecorationTo):
(WebKit::TextFieldDecoratorImpl::imageForNormalState):
(WebKit::TextFieldDecoratorImpl::imageForDisabledState):
(WebKit::TextFieldDecoratorImpl::imageForReadonlyState):
(WebKit::TextFieldDecoratorImpl::handleClick):
(WebKit::TextFieldDecoratorImpl::willDetach):
* src/TextFieldDecoratorImpl.h: Added.
(TextFieldDecoratorImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::addTextFieldDecoratorClient):
Add implementation of WebView::addTextFieldDecoratorClient().
* src/WebViewImpl.h:
WebViewImpl owns a vector of TextFieldDecoratorImpl.
(WebViewImpl):
(WebKit::WebViewImpl::textFieldDecorators):

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

12 years ago[EFL] Gardening; update expectations in fast/dom.
rakuco@freebsd.org [Tue, 3 Apr 2012 04:14:44 +0000 (04:14 +0000)]
[EFL] Gardening; update expectations in fast/dom.

Mostly size changes after the recent jhbuild and font commits.

* platform/efl/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
* platform/efl/fast/dom/HTMLMeterElement/meter-optimums-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
* platform/efl/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
* platform/efl/fast/dom/HTMLTableElement/colSpan-expected.png:
* platform/efl/fast/dom/HTMLTableElement/colSpan-expected.txt:
* platform/efl/fast/dom/HTMLTableElement/createCaption-expected.png:
* platform/efl/fast/dom/HTMLTableElement/createCaption-expected.txt:
* platform/efl/fast/dom/clone-node-dynamic-style-expected.png:
* platform/efl/fast/dom/clone-node-dynamic-style-expected.txt:
* platform/efl/fast/dom/dom-parse-serialize-display-expected.png:
* platform/efl/fast/dom/dom-parse-serialize-display-expected.txt:
* platform/efl/fast/dom/dom-parse-serialize-expected.png:
* platform/efl/fast/dom/dom-parse-serialize-expected.txt:

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

12 years ago[EFL] Gardening; update text expectation for test in fast/layers.
rakuco@freebsd.org [Tue, 3 Apr 2012 04:01:12 +0000 (04:01 +0000)]
[EFL] Gardening; update text expectation for test in fast/layers.

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

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

12 years agorun-webkit-tests with a relative --root causes tests to fail because DYLD_LIBRARY_PAT...
simon.fraser@apple.com [Tue, 3 Apr 2012 03:52:16 +0000 (03:52 +0000)]
run-webkit-tests with a relative --root causes tests to fail because DYLD_LIBRARY_PATH is not set
https://bugs.webkit.org/show_bug.cgi?id=82962

Reviewed by Dirk Pranke.

Ensure that _build_path() returns an absolute path.

Eric Seidel also had to deploy MockConfig in a bunch of places
in order to correct previous testing errors where we were
pretending that "Mock Output from child process" (returned by MockExecutive.run_command)
was a real path.  The real Config object calls run_command("webkit-build-directory")
to read the WebKit build directory from the webkitdirs.pm perl code.
MockConfig abstracts this away and always returns "/mock-build" during
testing.  This change is much larger than one would think necessary
because of needing to deploy this MockConfig class.

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort._build_path):

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

12 years ago[chromium] Remove SkCanvas::LayerIter use from OpaqueRegionSkia
commit-queue@webkit.org [Tue, 3 Apr 2012 03:31:26 +0000 (03:31 +0000)]
[chromium] Remove SkCanvas::LayerIter use from OpaqueRegionSkia
https://bugs.webkit.org/show_bug.cgi?id=82564

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-02
Reviewed by Stephen White.

Source/WebCore:

Per-tile-painting uses an SkPictureRecord in place of an SkCanvas
as the painting target for the GraphicsContext. This class only does
a simple recording and does not create layers in the canvas during
record, only playback. This is preventing us from correctly tracking
opaque regions under per-tile-painting.

We currently use the SkCanvas LayerIter to look at the layers in the
canvas backing the GraphicsContext, and check the SkPaints, clips,
and transforms to see how they impact the current draw once it reaches
the final device.

The clips and transforms can be retreived without using the LayerIter
through the "getTotal*" methods. A cumulative SkPaint is not available
so we store this ourselves.

PlatformContextSkia becomes aware of when saveLayer() is being called
on the underlying canvas, and passes this information to the
OpaqueRegionSkia class. Since we no longer watch layers in the canvas,
we must explicitly handle image clipping for the opaque tracker, as
it is implemented in the PlatformContextSkia, not via constructs in
the SkCanvas/SkPaint. We save the opaque area of the image mask for
the canvas layer in the stack along with the SkPaint for the layer.

Unit test: PlatformContextSkiaTest.PreserveOpaqueOnlyMattersForFirstLayer

* platform/graphics/filters/skia/FEGaussianBlurSkia.cpp:
(WebCore::FEGaussianBlur::platformApplySkia):
* platform/graphics/filters/skia/FEMorphologySkia.cpp:
(WebCore::FEMorphology::platformApplySkia):
* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
* platform/graphics/skia/OpaqueRegionSkia.cpp:
(WebCore::OpaqueRegionSkia::pushCanvasLayer):
(WebCore):
(WebCore::OpaqueRegionSkia::popCanvasLayer):
(WebCore::OpaqueRegionSkia::setImageMask):
(WebCore::OpaqueRegionSkia::didDrawRect):
(WebCore::OpaqueRegionSkia::didDrawPath):
(WebCore::OpaqueRegionSkia::didDrawPoints):
(WebCore::OpaqueRegionSkia::didDrawBounded):
(WebCore::OpaqueRegionSkia::didDraw):
(WebCore::OpaqueRegionSkia::didDrawUnbounded):
* platform/graphics/skia/OpaqueRegionSkia.h:
(OpaqueRegionSkia):
(WebCore::OpaqueRegionSkia::CanvasLayerState::CanvasLayerState):
(CanvasLayerState):
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::saveLayer):
(WebCore):
(WebCore::PlatformContextSkia::restoreLayer):
(WebCore::PlatformContextSkia::beginLayerClippedToImage):
* platform/graphics/skia/PlatformContextSkia.h:
(PlatformContextSkia):

Source/WebKit/chromium:

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

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

12 years agoRemove TreeScope::isShadowRoot.
shinyak@chromium.org [Tue, 3 Apr 2012 03:00:48 +0000 (03:00 +0000)]
Remove TreeScope::isShadowRoot.
https://bugs.webkit.org/show_bug.cgi?id=82879

Reviewed by Dimitri Glazkov.

This patch removes TreeScope::isShadowRoot(). To make code fast, TreeScope::isShadowRoot
is implemented in ShadowRoot.h. So when using TreeScope::isShadowRoot(), ShadowRoot.h is
always required. In some case,  this might bring unnecessary dependency.

Since TreeScope::rootNode() is inlined, the overall performance won't change.

No new tests, simple refactoring.

* dom/ShadowRoot.h:
* dom/TreeScope.h:
* html/shadow/HTMLShadowElement.cpp:
(WebCore::HTMLShadowElement::doesSelectFromHostChildren):
* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::attach):
(WebCore::InsertionPoint::assignedFrom):
(WebCore::InsertionPoint::isShadowBoundary):

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

12 years agoFix usage of LayoutUnits and pixel snapping in RenderLayer
eae@chromium.org [Tue, 3 Apr 2012 02:44:44 +0000 (02:44 +0000)]
Fix usage of LayoutUnits and pixel snapping in RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=82498

Reviewed by Julien Chaffraix.

Fix usage of subpixel types and snapping/rounding in RenderLayer in
preparation for turning on subpixel layout.

No new tests, no change in functionality.

* rendering/LayoutTypes.h:
(WebCore::pixelSnappedIntSize):
Add no-op implementation of pixelSnappedIntSize, will be replaced with a
real implementation once we make the switch.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPosition):
Snap RenderBox size when updating the size of the layer.

(WebCore::RenderLayer::resize):
Round position when setting the inline style during resize operation.

(WebCore::RenderLayer::scrollCornerRect):
Remove unnecessary pixelSnappedIntRect call.

(WebCore::RenderLayer::positionOverflowControls):
Remove unnecessary pixelSnappedIntRect call.

(WebCore::RenderLayer::scrollWidth):
(WebCore::RenderLayer::scrollHeight):
Fix implementation of scrollWidth and Height to pixel snap the values.

(WebCore::RenderLayer::computeScrollDimensions):
(WebCore::RenderLayer::paintResizer):
(WebCore::RenderLayer::hitTestOverflowControls):
Remove unnecessary pixelSnappedIntRect calls.

(WebCore::RenderLayer::paintLayerContents):
Pixel snap values just before painting (instead of earlier on).

(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestContents):
Change to use subpixel types.

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

12 years agoMark compositing/reflections/backface-hidden-reflection.html as crashing
dpranke@chromium.org [Tue, 3 Apr 2012 02:39:31 +0000 (02:39 +0000)]
Mark compositing/reflections/backface-hidden-reflection.html as crashing

Unreviewed, expectations and baselines update.

* platform/chromium/test_expectations.txt:
* platform/chromium-linux-x86/svg/custom/text-ctm-expected.png: Removed
* platform/chromium-linux/svg/custom/text-ctm-expected.png: Added.

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

12 years ago[Qt][WK2] Set viewport size back, when WebProcess is relaunched.
commit-queue@webkit.org [Tue, 3 Apr 2012 02:16:55 +0000 (02:16 +0000)]
[Qt][WK2] Set viewport size back, when WebProcess is relaunched.
https://bugs.webkit.org/show_bug.cgi?id=82936

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-04-02
Reviewed by Andreas Kling.

Fixed layout requires viewport size set properly on the WebProcess side.
Make sure it is set, when WebProcess is relaunched.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::didRelaunchProcess):

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

12 years agoUnreviewed, expectations update.
dpranke@chromium.org [Tue, 3 Apr 2012 02:12:34 +0000 (02:12 +0000)]
Unreviewed, expectations update.

* platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:

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

12 years ago<select> shouldn't intrude as a run-in.
inferno@chromium.org [Tue, 3 Apr 2012 01:41:49 +0000 (01:41 +0000)]
<select> shouldn't intrude as a run-in.
https://bugs.webkit.org/show_bug.cgi?id=82829

Reviewed by Tony Chang.

Source/WebCore:

Matches Opera's behavior which also does not allow <select>
to intrude as a run-in into the neighbouring block.
IE and Firefox doesn't support run-ins, so can't compare behavior
with them.

Test: fast/runin/select-runin.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::handleRunInChild):

LayoutTests:

* fast/runin/select-runin-expected.txt: Added.
* fast/runin/select-runin.html: Added.

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

12 years agoFix snafu in r112971. We were never calling parseParameter for builder.
ojan@chromium.org [Tue, 3 Apr 2012 01:39:35 +0000 (01:39 +0000)]
Fix snafu in r112971. We were never calling parseParameter for builder.

* TestResultServer/static-dashboards/dashboard_base.js:

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

12 years agoGenerate the lists of all layout test builders from the buildbot json
ojan@chromium.org [Tue, 3 Apr 2012 01:25:46 +0000 (01:25 +0000)]
Generate the lists of all layout test builders from the buildbot json
https://bugs.webkit.org/show_bug.cgi?id=82924

Reviewed by Mihai Parparita.

In order to make this work, cleaned up a lot of existing technical debt.
-Got rid of expectations builder. This concept is outdated and just dead code.
-Split hash parameter parsing into two functions. One for dashboard_base
(crossDashboardParameters) and one for the specific dashboard html file
(dashboardSpecificParameters). In the old world, parseParameters needed to
be called twice and depended on it's own output the first time through.
Now we only need to parse crossDashboardParameters first and crossDashboardParameters
doesn't depend on the output of crossDashboardParameters.
-Lots of variable/method renames due to the above.
-g_defaultDashboardSpecificStateValues now has to list all possible hash parameters
for that dashboard.

* TestResultServer/static-dashboards/aggregate_results.html:
* TestResultServer/static-dashboards/builders.js:
(BuilderGroup):
(BuilderGroup.prototype.setup):
(jsonRequest.xhr.onload):
(jsonRequest.xhr.onerror):
(isWebkitTestRunner):
(isChromiumWebkitTipOfTreeTestRunner):
(isChromiumWebkitDepsTestRunner):
(generateBuildersFromBuilderList):
(onLayoutTestBuilderListLoad):
(onErrorLoadingBuilderList):
(loadBuildersList):
* TestResultServer/static-dashboards/dashboard_base.js:
(handleValidHashParameterWrapper):
(queryHashAsMap):
(parseParameter):
(parseCrossDashboardParameters):
(parseDashboardSpecificParameters):
(parseParameters):
(diffStates):
(defaultValue):
(isLayoutTestResults):
(isGPUTestResults):
(currentBuilderGroupCategory):
(currentBuilderGroup):
(initBuilders):
Now that we've split parameter parseing, these methods no longer need
to take an optional state. They can always just use the global cross-dashboard state.

(pathToBuilderResultsFile):
(appendJSONScriptElementFor):
(appendJSONScriptElements):
(handleResourceLoadError):
(haveJsonFilesLoaded):
(combinedDashboardState):
(setQueryParameter):
(permaLinkURLHash):
(toggleQueryParameter):
(queryParameterValue):
(selectHTML):
(htmlForTestTypeSwitcher):
(g_handleBuildersListLoaded):
* TestResultServer/static-dashboards/flakiness_dashboard.html:
* TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
(testPlatformAndBuildType):
(testSubstringList):
(testHtmlForTestTypeSwitcherGroup):
(testLookupVirtualTestSuite):
(testBaseTest):
(generateBuildersFromBuilderListHelper):
(testGenerateChromiumWebkitTipOfTreeBuildersFromBuilderList):
(testGenerateChromiumWebkitDepsBuildersFromBuilderList):
(assertObjectsDeepEqual):
(testQueryHashAsMap):
(testDiffStates):
* TestResultServer/static-dashboards/timeline_explorer.html:
* TestResultServer/static-dashboards/treemap.html:

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

12 years agoCall decrementStatsCounter directly
commit-queue@webkit.org [Tue, 3 Apr 2012 01:16:05 +0000 (01:16 +0000)]
Call decrementStatsCounter directly
https://bugs.webkit.org/show_bug.cgi?id=82950

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

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::~WebFrameImpl):

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

12 years agofast/events/drop-handler-should-not-stop-navigate.html fails on Lion
dcheng@chromium.org [Tue, 3 Apr 2012 00:25:34 +0000 (00:25 +0000)]
fast/events/drop-handler-should-not-stop-navigate.html fails on Lion
https://bugs.webkit.org/show_bug.cgi?id=82984

Reviewed by Enrica Casucci.

* fast/events/drop-handler-should-not-stop-navigate.html:
* platform/mac/Skipped:

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

12 years agoadd css parsing of -webkit-flex
tony@chromium.org [Tue, 3 Apr 2012 00:24:28 +0000 (00:24 +0000)]
add css parsing of -webkit-flex
https://bugs.webkit.org/show_bug.cgi?id=82927

Reviewed by Ojan Vafai.

Source/WebCore:

This is the new syntax for CSS3 flexbox:
http://dev.w3.org/csswg/css3-flexbox/#flexibility

Not hooked up to anything in the render tree yet so the old syntax is
still valid.

Test: css3/flexbox/flex-property-parsing.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFlex):
* css/CSSParser.h:
(WebCore):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSStyleApplyProperty.cpp:
(ApplyPropertyFlex):
(WebCore::ApplyPropertyFlex::applyInheritValue):
(WebCore::ApplyPropertyFlex::applyInitialValue):
(WebCore::ApplyPropertyFlex::applyValue):
(WebCore::ApplyPropertyFlex::createHandler):
(WebCore::ApplyPropertyFlex::getFlexValue):
(WebCore):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* rendering/style/RenderStyle.h:
* rendering/style/StyleFlexibleBoxData.cpp:
(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):
* rendering/style/StyleFlexibleBoxData.h:
(StyleFlexibleBoxData):

LayoutTests:

* css3/flexbox/flex-property-parsing-expected.txt: Added.
* css3/flexbox/flex-property-parsing.html: Added.
* css3/flexbox/script-tests/css-properties.js:
* css3/flexbox/script-tests/flex-parsing.js:
* css3/flexbox/script-tests/flex-property-parsing.js: Added.
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/efl/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
* platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/qt/svg/css/getComputedStyle-basic-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

12 years agoRebaseline oscillator results
crogers@google.com [Tue, 3 Apr 2012 00:22:15 +0000 (00:22 +0000)]
Rebaseline oscillator results
https://bugs.webkit.org/show_bug.cgi?id=82987

Unreviewed rebaseline.

* platform/chromium-linux-x86/webaudio/oscillator-custom-expected.wav: Added.
* platform/chromium-linux-x86/webaudio/oscillator-sawtooth-expected.wav: Added.
* platform/chromium-linux-x86/webaudio/oscillator-sine-expected.wav: Added.
* platform/chromium-linux-x86/webaudio/oscillator-square-expected.wav: Added.
* platform/chromium-linux-x86/webaudio/oscillator-triangle-expected.wav: Added.
* platform/chromium-linux/webaudio/oscillator-custom-expected.wav: Added.
* platform/chromium-linux/webaudio/oscillator-sawtooth-expected.wav: Added.
* platform/chromium-linux/webaudio/oscillator-sine-expected.wav: Added.
* platform/chromium-linux/webaudio/oscillator-square-expected.wav: Added.
* platform/chromium-linux/webaudio/oscillator-triangle-expected.wav: Added.
* platform/chromium-win/webaudio/oscillator-custom-expected.wav: Added.
* platform/chromium-win/webaudio/oscillator-sawtooth-expected.wav: Added.
* platform/chromium-win/webaudio/oscillator-sine-expected.wav: Added.
* platform/chromium-win/webaudio/oscillator-square-expected.wav: Added.
* platform/chromium-win/webaudio/oscillator-triangle-expected.wav: Added.

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

12 years agoIncorrect liveness information when inlining
oliver@apple.com [Tue, 3 Apr 2012 00:11:50 +0000 (00:11 +0000)]
Incorrect liveness information when inlining
https://bugs.webkit.org/show_bug.cgi?id=82985

Reviewed by Filip Pizlo.

Don't remap register numbers that have already been remapped.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):

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

12 years agoOne more flakey canvas test
enrica@apple.com [Tue, 3 Apr 2012 00:07:41 +0000 (00:07 +0000)]
One more flakey canvas test

* platform/mac/Skipped:

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

12 years agofast/events/drop-handler-should-not-stop-navigate.html fails on Lion
enrica@apple.com [Tue, 3 Apr 2012 00:02:43 +0000 (00:02 +0000)]
fast/events/drop-handler-should-not-stop-navigate.html fails on Lion
after http://trac.webkit.org/changeset/112954

* platform/mac/Skipped:

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

12 years agocheck-webkit-style errors when removing .png files
tony@chromium.org [Mon, 2 Apr 2012 23:54:58 +0000 (23:54 +0000)]
check-webkit-style errors when removing .png files
https://bugs.webkit.org/show_bug.cgi?id=82933

Reviewed by David Levin.

* Scripts/webkitpy/style/patchreader.py:
(PatchReader.check): Make sure the file exists and pass in a FileSystem() object (for mocking).
* Scripts/webkitpy/style/patchreader_unittest.py:
(test_check_patch_with_png_deletion):

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

12 years agoSkipping a bunch of flakey tests on Lion.
enrica@apple.com [Mon, 2 Apr 2012 23:53:56 +0000 (23:53 +0000)]
Skipping a bunch of flakey tests on Lion.

* platform/mac/Skipped:

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

12 years agoFix layout test failure with window-properties-expected.txt
crogers@google.com [Mon, 2 Apr 2012 23:41:01 +0000 (23:41 +0000)]
Fix layout test failure with window-properties-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=82969

Unreviewed build fix.

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

Fix expectations caused by addition of Oscillator and WaveTable:
http://trac.webkit.org/changeset/112938

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

12 years agoSkip new test webarchive/css-page-rule-crash.html for WK2.
beidson@apple.com [Mon, 2 Apr 2012 23:24:24 +0000 (23:24 +0000)]
Skip new test webarchive/css-page-rule-crash.html for WK2.
WK2 tests can't dump as WebArchives yet.

No review.

* platform/wk2/Skipped:

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

12 years agoUnreviewed, rolling out r112948.
commit-queue@webkit.org [Mon, 2 Apr 2012 23:04:24 +0000 (23:04 +0000)]
Unreviewed, rolling out r112948.
http://trac.webkit.org/changeset/112948
https://bugs.webkit.org/show_bug.cgi?id=82961

Someone else already checked in a similar change (Requested by
sundiamonde on #webkit).

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

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitDriver._start):

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

12 years ago[BlackBerry] Adapt WebPagePrivate::webContext to the API change of r109570
commit-queue@webkit.org [Mon, 2 Apr 2012 23:01:10 +0000 (23:01 +0000)]
[BlackBerry] Adapt WebPagePrivate::webContext to the API change of r109570
https://bugs.webkit.org/show_bug.cgi?id=82945

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

RIM PR: 147163
Adapt WebPagePrivate::webContext to the API change of the security
cherry-pick of r109570 and r112023.

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

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

12 years agoRemoving ahem.ttf that was checked in with wrong-case name.
tomz@codeaurora.org [Mon, 2 Apr 2012 22:56:58 +0000 (22:56 +0000)]
Removing ahem.ttf that was checked in with wrong-case name.

Reviewed by Adam Barth.

This file is not referenced yet.  The correctly named one will be added with
the next ietestcenter css test import.

* ietestcenter/css3/support/ahem.ttf: Removed.

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

12 years agogarden-o-matic isn't able to rebaseline audio failures
abarth@webkit.org [Mon, 2 Apr 2012 22:35:52 +0000 (22:35 +0000)]
garden-o-matic isn't able to rebaseline audio failures
https://bugs.webkit.org/show_bug.cgi?id=82957

Reviewed by Chris Rogers.

This patch just adds "wav" to the list of test suffixes and updates the
unit tests to show that we're rebaselining audio tests results now too.

* Scripts/webkitpy/tool/commands/rebaseline.py:
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(test_rebaseline_updates_expectations_file):

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

12 years agoHaving a drop handler prevents navigation on drop even if event is not cancelled
dcheng@chromium.org [Mon, 2 Apr 2012 22:33:42 +0000 (22:33 +0000)]
Having a drop handler prevents navigation on drop even if event is not cancelled
https://bugs.webkit.org/show_bug.cgi?id=79172

Reviewed by Ryosuke Niwa.

Source/WebCore:

Only early return if the drop handler prevents the default action.

Test: fast/events/drop-handler-should-not-stop-navigate.html

* page/DragController.cpp:
(WebCore::DragController::performDrag):

LayoutTests:

* fast/events/drag-dataTransferItemList.html: Fix drop handler to prevent default.
* fast/events/drop-handler-should-not-stop-navigate-expected.txt: Added.
* fast/events/drop-handler-should-not-stop-navigate.html: Added.
* http/tests/security/clipboard/clipboard-file-access.html: Change dragover to drop handler
    to prevent bubbled events from causing navigation.

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

12 years ago[Chromium] Flaky SVG tests on MacOS 10.6
schenney@chromium.org [Mon, 2 Apr 2012 22:31:07 +0000 (22:31 +0000)]
[Chromium] Flaky SVG tests on MacOS 10.6
https://bugs.webkit.org/show_bug.cgi?id=82954

Unreviewed Chromium test_expectations update

Removign one empty expectations file that somehow made it in
previously. And marking several tests as flaky on Snow Leopard.

* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.txt: Removed.
* platform/chromium/test_expectations.txt:

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

12 years agoWe should use CSSPropertyID rather than integers when manipulating CSS property ids.
alexis.menard@openbossa.org [Mon, 2 Apr 2012 22:30:04 +0000 (22:30 +0000)]
We should use CSSPropertyID rather than integers when manipulating CSS property ids.
https://bugs.webkit.org/show_bug.cgi?id=82941

Reviewed by Andreas Kling.

CSSPropertyID enum holds all the CSS property ids but many parts of WebKit treat the ids
as integers. While it's not incorrect it is nicer to use the enum as a parameter of
functions manipulating property ids, as we ensure that the value passed will be an
existing value. It will also feel more correct after this patch that CSSProperty::id()
return a value of the enum rather than an integer. As this modification is quite big this
is the first part only so it will be easier to review.

Source/WebCore:

No new tests : There should be no behavior change in this patch.

* css/CSSParser.cpp:
(WebCore::cssPropertyID):
* css/CSSParser.h:
(WebCore):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::cssText):
* css/CSSProperty.h:
(WebCore::CSSProperty::id):
(WebCore::CSSProperty::shorthandID):
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::appendFontLonghandValueIfExplicit):
(WebCore::StylePropertySet::propertyIsImportant):
(WebCore::StylePropertySet::getPropertyShorthand):
(WebCore::StylePropertySet::isPropertyImplicit):
(WebCore::StylePropertySet::asText):
* css/StylePropertySet.h:
(StylePropertySet):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::conflictsWithInlineStyleOfElement):
(WebCore::removePropertiesInStyle):
(WebCore::setTextDecorationProperty):
(WebCore::diffTextDecorations):
* editing/Editor.cpp:
(WebCore::Editor::selectionStartCSSPropertyValue):
* editing/Editor.h:
(Editor):
* editing/EditorCommand.cpp:
(WebCore::valueStyle):

Source/WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::styleProperty): Adapt to the API change and also remove an unecessary name->id
conversion.

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

12 years agogarden-o-matic should let you listen to audio failures
abarth@webkit.org [Mon, 2 Apr 2012 22:19:32 +0000 (22:19 +0000)]
garden-o-matic should let you listen to audio failures
https://bugs.webkit.org/show_bug.cgi?id=82953

Reviewed by Chris Rogers.

Now that we've actually got an audio failure on the bots, we can clean
up the last stray bugs.  This patch doesn't have any tests because I'm
lame.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/results.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
(.):

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

12 years agoCall NPP_SetValue with WKNVCALayerRenderServerPort when a WKView is moved from a...
andersca@apple.com [Mon, 2 Apr 2012 22:11:51 +0000 (22:11 +0000)]
Call NPP_SetValue with WKNVCALayerRenderServerPort when a WKView is moved from a buffered to an unbuffered window, or vice versa
https://bugs.webkit.org/show_bug.cgi?id=82951
<rdar://problem/10589308>

Reviewed by Sam Weinig.

* PluginProcess/mac/PluginControllerProxyMac.mm:
(WebKit::PluginControllerProxy::setLayerHostingMode):
Call Plugin::setLayerHostingMode).

* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.h:
Move WKNVCALayerRenderServerPort to the header file.

* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::NetscapePlugin):
Initialize m_layerHostingMode.

(WebKit::NetscapePlugin::initialize):
Set m_layerHostingMode from the parameters struct.

* WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::NetscapePlugin::compositingRenderServerPort):
Return MACH_PORT_NULL when hosted in the window server.

(WebKit::NetscapePlugin::platformPostInitialize):
Move the code that gets the layer out into a separate function, updatePluginLayer.

(WebKit::NetscapePlugin::setLayerHostingMode):
Let the plug-in know that the layer hosting mode changed and update the plug-in layer if
setting the new compositing port was successful.

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

12 years agoSimplify main resource load start/end in FrameLoader
japhet@chromium.org [Mon, 2 Apr 2012 22:08:19 +0000 (22:08 +0000)]
Simplify main resource load start/end in FrameLoader
and DocumentLoader.
https://bugs.webkit.org/show_bug.cgi?id=82935

1. Have FrameLoader call prepareForLoadStart() on itself directly, rather
    than through DocumentLoader.
2. Remove DocumentLoader::m_primaryLoadComplete, since this is basically equivalent
    to m_mainResourceLoader.
3. Rename setPrimaryLoadComplete() to clearMainResourceLoader(), and only call it at
    the end of the main resource load.
4. Move clearing DocumentLoader::m_mainResourceError into startLoadingMainResource(),
    which leaves DocumentLoader::prepareForLoadStart() empty.

Reviewed by Adam Barth.

No new tests, refactor only.

* WebCore.exp.in:
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::DocumentLoader):
(WebCore):
(WebCore::DocumentLoader::mainReceivedError):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::clearMainResourceLoader):
(WebCore::DocumentLoader::isLoadingInAPISense):
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/DocumentLoader.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
* loader/FrameLoader.h: prepareForLoadStart() is now called directly,
    so make it private.

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

12 years ago2012-04-02 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Mon, 2 Apr 2012 22:05:59 +0000 (22:05 +0000)]
2012-04-02  Stephanie Lewis  <slewis@apple.com>

        run-webkit-tests --root fails if /usr/local/lib/libWebCoreTestSupport.dylib is not installed.
        https://bugs.webkit.org/show_bug.cgi?id=82552

        Reviewed by Dirk Pranke.

        Use DYLD_LIBRARY_PATH so we pick up the libWebCoreTestSupport.dylib located in the root.

        * Scripts/webkitpy/layout_tests/port/webkit.py:
        (WebKitDriver._start):

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

12 years agoActivation tear-off neglects to copy the callee and scope chain, leading to crashes...
fpizlo@apple.com [Mon, 2 Apr 2012 21:53:12 +0000 (21:53 +0000)]
Activation tear-off neglects to copy the callee and scope chain, leading to crashes if we
try to create an arguments object from the activation
https://bugs.webkit.org/show_bug.cgi?id=82947
<rdar://problem/11058598>

Reviewed by Gavin Barraclough.

We now copy the entire call frame header just to be sure. This is mostly perf-netural,
except for a 3.7% slow-down in V8/earley.

* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildren):
* runtime/JSActivation.h:
(JSC::JSActivation::tearOff):

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

12 years ago[Chromium] Expectations updated needed after 75091
schenney@chromium.org [Mon, 2 Apr 2012 21:44:26 +0000 (21:44 +0000)]
[Chromium] Expectations updated needed after 75091
https://bugs.webkit.org/show_bug.cgi?id=81217

Unreviewed Chromium test_expectations update.

Leaving tests as flaky because some builders seem to be flaky,
although it's not clear why.

* platform/chromium-linux-x86/svg/carto.net: Added.
* platform/chromium-linux-x86/svg/carto.net/tabgroup-expected.txt: Added.
* platform/chromium-linux-x86/svg/custom/text-ctm-expected.png: Added.
* platform/chromium-linux-x86/svg/hixie/perf/003-expected.png: Added.
* platform/chromium-linux/svg/carto.net/tabgroup-expected.png:
* platform/chromium-linux/svg/carto.net/tabgroup-expected.txt: Added.
* platform/chromium-linux/svg/carto.net/window-expected.png:
* platform/chromium-linux/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/chromium-linux/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/chromium-linux/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/chromium-linux/svg/custom/use-detach-expected.png:
* platform/chromium-linux/svg/hixie/perf/003-expected.png:
* platform/chromium-linux/svg/hixie/perf/003-expected.txt: Removed.
* platform/chromium-mac-leopard/svg/carto.net/tabgroup-expected.png:
* platform/chromium-mac-leopard/svg/carto.net/window-expected.png:
* platform/chromium-mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/chromium-mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/chromium-mac-leopard/svg/custom/use-detach-expected.png:
* platform/chromium-mac-leopard/svg/hixie/perf/003-expected.png:
* platform/chromium-mac-snowleopard/svg/carto.net/tabgroup-expected.png:
* platform/chromium-mac-snowleopard/svg/carto.net/window-expected.png:
* platform/chromium-mac-snowleopard/svg/custom/js-late-clipPath-and-object-creation-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-and-object-creation-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-and-object-creation-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/custom/use-detach-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/hixie/perf/003-expected.png: Removed.
* platform/chromium-mac/svg/carto.net/tabgroup-expected.png: Added.
* platform/chromium-mac/svg/carto.net/window-expected.png: Added.
* platform/chromium-mac/svg/custom/js-late-clipPath-and-object-creation-expected.png: Added.
* platform/chromium-mac/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
* platform/chromium-mac/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
* platform/chromium-mac/svg/custom/use-detach-expected.png: Added.
* platform/chromium-mac/svg/hixie/perf/003-expected.png: Added.
* platform/chromium-win-vista/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/chromium-win-vista/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/chromium-win-xp/svg/carto.net: Removed.
* platform/chromium-win/svg/carto.net/tabgroup-expected.png:
* platform/chromium-win/svg/carto.net/tabgroup-expected.txt:
* platform/chromium-win/svg/carto.net/window-expected.png:
* platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
* platform/chromium-win/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/chromium-win/svg/custom/js-late-gradient-and-object-creation-expected.txt:
* platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.txt:
* platform/chromium-win/svg/custom/text-ctm-expected.png:
* platform/chromium-win/svg/custom/text-ctm-expected.txt:
* platform/chromium-win/svg/custom/use-detach-expected.png:
* platform/chromium-win/svg/custom/use-detach-expected.txt:
* platform/chromium-win/svg/hixie/perf/003-expected.png:
* platform/chromium-win/svg/hixie/perf/003-expected.txt:
* platform/chromium/test_expectations.txt:
* platform/mac-snowleopard/svg/custom/js-late-clipPath-and-object-creation-expected.png: Removed.

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

12 years agoRebaseline more tests from 79568
commit-queue@webkit.org [Mon, 2 Apr 2012 21:34:00 +0000 (21:34 +0000)]
Rebaseline more tests from 79568
https://bugs.webkit.org/show_bug.cgi?id=79568

Unreviewed test expectations udpate.

Patch by Philip Rogers <pdr@google.com> on 2012-04-02

* platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt: Removed.
* platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt: Removed.
* platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-41-t-expected.txt: Removed.
* platform/chromium-linux/svg/W3C-SVG-1.1/text-path-01-b-expected.txt: Removed.
* platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-41-t-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-41-t-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/text-path-01-b-expected.txt:
* platform/chromium-win/svg/clip-path/clip-path-text-and-shape-expected.txt:
* platform/chromium-win/svg/clip-path/clip-path-with-text-clipped-expected.txt:
* platform/chromium/test_expectations.txt:

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

12 years agoNRWT is not printing out the builder it's uploading JSON files for
dpranke@chromium.org [Mon, 2 Apr 2012 21:33:46 +0000 (21:33 +0000)]
NRWT is not printing out the builder it's uploading JSON files for
https://bugs.webkit.org/show_bug.cgi?id=82834

Reviewed by Ojan Vafai.

Handle log messages of the form log.info("%s", arg) properly ...
I didn't even know you could do that :).

* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(_LogHandler.emit):
* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
(RegularTest.test_log_args):
(VerboseTest.test_log_args):

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

12 years ago[mac] LayoutTestHelper crashes if there is no main display
timothy_horton@apple.com [Mon, 2 Apr 2012 21:23:38 +0000 (21:23 +0000)]
[mac] LayoutTestHelper crashes if there is no main display
https://bugs.webkit.org/show_bug.cgi?id=82944
<rdar://problem/11162954>

Reviewed by Simon Fraser.

If there's no main display attached, ColorSyncDeviceCopyDeviceInfo returns
a null dictionary, so we shouldn't go ahead and try to read from it.

* DumpRenderTree/mac/LayoutTestHelper.m:
(installLayoutTestColorProfile):

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

12 years agoASSERTION FAILED: m_purgePreventCount in FontCache::getCachedFontData running svg...
timothy_horton@apple.com [Mon, 2 Apr 2012 21:19:29 +0000 (21:19 +0000)]
ASSERTION FAILED: m_purgePreventCount in FontCache::getCachedFontData running svg/custom/animate-disallowed-use-element.svg
https://bugs.webkit.org/show_bug.cgi?id=81002
<rdar://problem/11168969>

Reviewed by Simon Fraser.

Don't spend time rebuilding SVG text layout attributes if the document is being torn down, as
they won't be used, and can cause assertion failures in the font cache.

No new tests, as it fixes an intermittent assertion failure during document destruction.

* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::willBeDestroyed):

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

12 years agosvg/W3C-SVG-1.1/animate-elem-80-t.svg is flaky on mac
schenney@chromium.org [Mon, 2 Apr 2012 21:16:03 +0000 (21:16 +0000)]
svg/W3C-SVG-1.1/animate-elem-80-t.svg is flaky on mac
https://bugs.webkit.org/show_bug.cgi?id=82911

Unreviewed test_expectations update.

Fixing Mac 10.7 buildbot redness by marking animate-elem-80-t.svg as flaky.

* platform/chromium/test_expectations.txt:

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

12 years ago[BlackBerry] Set ResourceRequest TargetType in WebPagePrivate::load()
commit-queue@webkit.org [Mon, 2 Apr 2012 21:15:23 +0000 (21:15 +0000)]
[BlackBerry] Set ResourceRequest TargetType in WebPagePrivate::load()
https://bugs.webkit.org/show_bug.cgi?id=80519

Source/WebCore:

Stop asserting in platformCachePolicyForRequest() as now it is expected
that the ResourceRequest might not have the right TargetType setup at
this time for main loads.

Patch by Lianghui Chen <liachen@rim.com> on 2012-04-02
Reviewed by Rob Buis.

No new tests as no change in behaviour.

* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::platformCachePolicyForRequest):

Source/WebKit/blackberry:

Set the right TargetType for main loads if they are not already set in
dispatchWillSendRequest().

Also adjust NetworkRequest TargetType for decidePolicyForExternalLoad()
and dispatchDecidePolicyForNavigationAction() as they are called before
dispatchWillSendRequest() is called. Patch to change ResourceRequest
TargetType earlier has been rejected as in WebKit bug
https://bugs.webkit.org/show_bug.cgi?id=80713

Patch by Lianghui Chen <liachen@rim.com> on 2012-04-02
Reviewed by Rob Buis.

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
(WebCore::FrameLoaderClientBlackBerry::decidePolicyForExternalLoad):

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

12 years agoFix issue with reflections and composited layers
simon.fraser@apple.com [Mon, 2 Apr 2012 21:10:28 +0000 (21:10 +0000)]
Fix issue with reflections and composited layers
https://bugs.webkit.org/show_bug.cgi?id=82636

Source/WebCore:

Reviewed by Alexey Proskuryakov

When tearing down GraphicsLayers which referene eachother via m_replicatedLayer/m_replicaLayer,
we need to clean up the replica layer pointers.

No new tests; tested by existing compositing and repaint tests.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::~GraphicsLayer):
(WebCore::GraphicsLayer::setReplicatedByLayer):

LayoutTests:

Reviewed by Alexey Proskuryakov

Unskip some compositing tests that should pass now.

* platform/mac-wk2/Skipped:

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

12 years agoSource/WebCore: Add Oscillator/WaveTable implementation and tests
crogers@google.com [Mon, 2 Apr 2012 21:07:37 +0000 (21:07 +0000)]
Source/WebCore: Add Oscillator/WaveTable implementation and tests
https://bugs.webkit.org/show_bug.cgi?id=82414

Oscillator represents an audio source generating a periodic waveform.  It can be set to
a few commonly used waveforms.  Additionally, it can be set to an arbitrary periodic
waveform through the use of a WaveTable object.

Reviewed by Kenneth Russell.

Tests: webaudio/oscillator-custom.html
       webaudio/oscillator-sawtooth.html
       webaudio/oscillator-sine.html
       webaudio/oscillator-square.html
       webaudio/oscillator-triangle.html

* DerivedSources.make:
* GNUmakefile.list.am:
Add Oscillator and WaveTable to build files.
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createOscillator):
(WebCore):
(WebCore::AudioContext::createWaveTable):
* Modules/webaudio/AudioContext.h:
Add create methods for Oscillator and WaveTable.
(WebCore):
(AudioContext):
* Modules/webaudio/AudioContext.idl:
* Modules/webaudio/AudioNode.h:
* Modules/webaudio/Oscillator.cpp: Added.
(WebCore):
(WebCore::Oscillator::create):
(WebCore::Oscillator::Oscillator):
(WebCore::Oscillator::~Oscillator):
(WebCore::Oscillator::setType):
(WebCore::Oscillator::calculateSampleAccuratePhaseIncrements):
(WebCore::Oscillator::process):
(WebCore::Oscillator::reset):
(WebCore::Oscillator::setWaveTable):
* Modules/webaudio/Oscillator.h: Added.
(WebCore):
(Oscillator):
(WebCore::Oscillator::type):
(WebCore::Oscillator::frequency):
(WebCore::Oscillator::detune):
Implement Oscillator as AudioSourceNode.
* Modules/webaudio/Oscillator.idl: Added.
* Modules/webaudio/WaveTable.cpp: Added.
(WebCore):
(WebCore::WaveTable::create):
(WebCore::WaveTable::createSine):
(WebCore::WaveTable::createSquare):
(WebCore::WaveTable::createSawtooth):
(WebCore::WaveTable::createTriangle):
(WebCore::WaveTable::WaveTable):
(WebCore::WaveTable::waveDataForFundamentalFrequency):
(WebCore::WaveTable::maxNumberOfPartials):
(WebCore::WaveTable::numberOfPartialsForRange):
(WebCore::WaveTable::createBandLimitedTables):
(WebCore::WaveTable::generateBasicWaveform):
* Modules/webaudio/WaveTable.h: Added.
(WebCore):
(WaveTable):
(WebCore::WaveTable::rateScale):
(WebCore::WaveTable::waveTableSize):
(WebCore::WaveTable::sampleRate):
(WebCore::WaveTable::numberOfRanges):
Implement WaveTable which is constructed given a set of Fourier coefficients.
* Modules/webaudio/WaveTable.idl: Added.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
Add Oscillator and WaveTable files to build files.

LayoutTests: Add Oscillator/WaveTable implementation and tests
https://bugs.webkit.org/show_bug.cgi?id=82414

Reviewed by Kenneth Russell.

* webaudio/oscillator-custom-expected.wav: Added.
* webaudio/oscillator-custom.html: Added.
* webaudio/oscillator-sawtooth-expected.wav: Added.
* webaudio/oscillator-sawtooth.html: Added.
* webaudio/oscillator-sine-expected.wav: Added.
* webaudio/oscillator-sine.html: Added.
* webaudio/oscillator-square-expected.wav: Added.
* webaudio/oscillator-square.html: Added.
* webaudio/oscillator-triangle-expected.wav: Added.
* webaudio/oscillator-triangle.html: Added.
* webaudio/resources/oscillator-testing.js: Added.
(generateExponentialOscillatorSweep):

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

12 years ago2012-04-02 David Dorwin <ddorwin@chromium.org>
scherkus@chromium.org [Mon, 2 Apr 2012 21:05:09 +0000 (21:05 +0000)]
2012-04-02  David Dorwin  <ddorwin@chromium.org>

        Add layout test expectations for Chromium to exhibit support WebM types
        https://bugs.webkit.org/show_bug.cgi?id=82925

        Unreviewed.

        * platform/chromium/media/W3C/video/canPlayType/canPlayType_codecs_order_1-expected.txt: Added.
        * platform/chromium/media/W3C/video/canPlayType/canPlayType_supported_but_no_codecs_parameter_1-expected.txt: Added.
        * platform/chromium/media/W3C/video/canPlayType/canPlayType_two_implies_one_1-expected.txt: Added.
        * platform/chromium/media/W3C/video/canPlayType/canPlayType_two_implies_one_2-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

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

12 years agoCorrect remaining LayoutUnit misuse in RenderReplaced and RenderFlexibleBox
leviw@chromium.org [Mon, 2 Apr 2012 21:00:08 +0000 (21:00 +0000)]
Correct remaining LayoutUnit misuse in RenderReplaced and RenderFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=82899

Reviewed by Darin Adler.

Removing remaining LayoutUnit misuse and compiler errors that exist in RenderReplaced
and RenderFlexibleBox once LayoutUnit becomes sub-pixel.

No new tests. No change in behavior.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Switching
a raw zero in a ternary operation to zeroLayoutUnit.
(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild): Ditto for std::max.
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::paint): Adding missing pixel snapping before painting.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Like above, switching
a raw zero to zeroLayoutUnit.
(WebCore::RenderReplaced::computePreferredLogicalWidths): Ditto.

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

12 years agoCrash due to floating object lists not properly being cleared
commit-queue@webkit.org [Mon, 2 Apr 2012 20:58:10 +0000 (20:58 +0000)]
Crash due to floating object lists not properly being cleared
https://bugs.webkit.org/show_bug.cgi?id=74056

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-04-02
Reviewed by David Hyatt.

Source/WebCore:

Add a check to clearFloats() that determines when intruding floats
are being cleared and not re-added. In this condition, ensure
children with floats are also getting layout because they might
need to have the same intruding floats cleared from their floating
object lists also.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::clearFloats):

LayoutTests:

This test creates a condition where an intruding float is changed so
that it no longer intrudes. The child of a sibling was not getting
properly updated during the next layout.

* fast/block/float/intruding-float-not-removed-from-descendant-crash-expected.txt: Added
* fast/block/float/intruding-float-not-removed-from-descendant-crash.html: Added

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

12 years ago[chromium] Layout Test svg/text/text-rescale.html is failing
schenney@chromium.org [Mon, 2 Apr 2012 20:53:26 +0000 (20:53 +0000)]
[chromium] Layout Test svg/text/text-rescale.html is failing
https://bugs.webkit.org/show_bug.cgi?id=79454

Unreviewed Chromium test_expectations update.

Some the of results for svg/text/text-rescale.svg and svg/text/text-viewbox-rescale.svg
are just in need of rebaselining, while others are flakey. Clarifying
the situation in test_expectations.

* platform/chromium-linux/svg/text/text-rescale-expected.txt: Removed.
* platform/chromium-linux/svg/text/text-viewbox-rescale-expected.txt: Removed.
* platform/chromium-mac/svg/text/text-rescale-expected.png: Added.
* platform/chromium-win/svg/text/text-rescale-expected.png: Added.
* platform/chromium-win/svg/text/text-rescale-expected.txt: Added.
* platform/chromium-win/svg/text/text-viewbox-rescale-expected.png: Added.
* platform/chromium/test_expectations.txt:
* platform/mac/svg/text/text-viewbox-rescale-expected.txt: Removed.

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

12 years agoAlign IDL to Typed Array Specification
commit-queue@webkit.org [Mon, 2 Apr 2012 20:46:07 +0000 (20:46 +0000)]
Align IDL to Typed Array Specification
https://bugs.webkit.org/show_bug.cgi?id=82919

Patch by Seo Sanghyeon <sh4.seo@samsung.com> on 2012-04-02
Reviewed by Darin Adler.

No tests. No change in behavior.

* html/canvas/Float32Array.idl:
* html/canvas/Float64Array.idl:
* html/canvas/Int16Array.idl:
* html/canvas/Int32Array.idl:
* html/canvas/Int8Array.idl:
* html/canvas/Uint16Array.idl:
* html/canvas/Uint32Array.idl:
* html/canvas/Uint8Array.idl:
* html/canvas/Uint8ClampedArray.idl:

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

12 years agoSkipping ASSERTING inspector/debugging tests.
enrica@apple.com [Mon, 2 Apr 2012 20:45:32 +0000 (20:45 +0000)]
Skipping ASSERTING inspector/debugging tests.

* platform/mac/Skipped:

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

12 years agoSkipping 2 Unicode tests that are crashing intermittently.
enrica@apple.com [Mon, 2 Apr 2012 20:38:04 +0000 (20:38 +0000)]
Skipping 2 Unicode tests that are crashing intermittently.

* platform/mac-wk2/Skipped:

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

12 years agoWebKit should throttle memory pressure notifications in proportion to handler time
msaboff@apple.com [Mon, 2 Apr 2012 20:34:59 +0000 (20:34 +0000)]
WebKit should throttle memory pressure notifications in proportion to handler time
https://bugs.webkit.org/show_bug.cgi?id=82674

Rubber-stamped by Darin Adler.

Updated r112910: <http://trac.webkit.org/changeset/112910> to address
post checkin concerns raised in original bug.

No additional tests. This passes existing test and was verified using
manual tests on a small memory system with many websites open.

* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore):
(WebCore::MemoryPressureHandler::respondToMemoryPressure):

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