WebKit-https.git
10 years ago2009-12-04 James Hawkins <jhawkins@chromium.org>
eric@webkit.org [Sat, 5 Dec 2009 00:24:28 +0000 (00:24 +0000)]
2009-12-04  James Hawkins  <jhawkins@chromium.org>

        Reviewed by Darin Fisher.

        https://bugs.webkit.org/show_bug.cgi?id=32095
        Implement WebRegularExpression, a WebKit API for accessing
        WebCore::RegularExpression.

        * WebKit.gyp:
        * public/WebRegularExpression.h: Added.
        * public/WebTextCaseSensitivity.h: Added.
        (WebKit::):
        * src/AssertMatchingEnums.cpp:
        * src/WebRegularExpression.cpp: Added.
        (WebKit::WebRegularExpression::WebRegularExpression):
        (WebKit::WebRegularExpression::~WebRegularExpression):
        (WebKit::WebRegularExpression::match):

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

10 years ago[Chromium] Simplify zoom-related APIs and add a zoom level getter,
pkasting@chromium.org [Fri, 4 Dec 2009 23:56:21 +0000 (23:56 +0000)]
[Chromium] Simplify zoom-related APIs and add a zoom level getter,
part two: Remove deprecated APIs.
https://bugs.webkit.org/show_bug.cgi?id=31893

Reviewed by Darin Fisher.

* public/WebView.h:
* src/WebViewImpl.cpp:
* src/WebViewImpl.h:

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

10 years ago2009-12-04 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 4 Dec 2009 23:18:53 +0000 (23:18 +0000)]
2009-12-04  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        <rdar://problem/7441571> Hardware-backed layers are skipped when printing

        When printing, set the PaintBehaviorFlattenCompositingLayers flag so that compositing layers
        paint. This also causes 3D transforms to be flattened to 2D.

        Test: printing/compositing-layer-printing.html

        * page/FrameView.cpp:
        (WebCore::FrameView::paintContents):

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

10 years agoFix up some issues in my SVGListTraits change from yesterday.
oliver@apple.com [Fri, 4 Dec 2009 23:13:27 +0000 (23:13 +0000)]
Fix up some issues in my SVGListTraits change from yesterday.

Reviewed by Deth Bakin

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

10 years agoSkip test that is failing because of new behaviour enforced by
kov@webkit.org [Fri, 4 Dec 2009 22:10:24 +0000 (22:10 +0000)]
Skip test that is failing because of new behaviour enforced by
libsoup. Bug reported.

* platform/gtk/Skipped:

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

10 years agoAdd some missing methods for showing and hiding the
kenneth@webkit.org [Fri, 4 Dec 2009 22:00:50 +0000 (22:00 +0000)]
Add some missing methods for showing and hiding the
Web Inspector.

Reviewed by Adam Treat.

* DumpRenderTree/qt/DumpRenderTree.cpp:
(WebCore::WebPage::WebPage):
(WebCore::WebPage::~WebPage):
(WebCore::WebPage::webInspector):
* DumpRenderTree/qt/DumpRenderTree.h:
* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::showWebInspector):
(LayoutTestController::hideWebInspector):
* DumpRenderTree/qt/LayoutTestControllerQt.h:

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

10 years agoSkip tests that require support for frame loader callbacks
kov@webkit.org [Fri, 4 Dec 2009 21:54:22 +0000 (21:54 +0000)]
Skip tests that require support for frame loader callbacks
reporting, and a new test.

* platform/gtk/Skipped:

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

10 years agoUnreviewed build fix.
yael.aharon@nokia.com [Fri, 4 Dec 2009 21:35:33 +0000 (21:35 +0000)]
Unreviewed build fix.

[Qt] build fix after r51634 removed unused QBoxLayout include which included limits.h.

* DumpRenderTree/qt/DumpRenderTree.cpp:

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

10 years ago2009-12-04 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Fri, 4 Dec 2009 21:19:11 +0000 (21:19 +0000)]
2009-12-04  Dirk Schulze  <krit@webkit.org>

        Reviewed by Gustavo Noronha Silva.

        Move the render result to svg/custom as a cross platform render result.

        * platform/mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.txt: Removed.
        * svg/custom/radial-gradient-with-outstanding-focalPoint-expected.txt: Added.

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

10 years agoNot reviewed: chromium build fix.
ajwong@chromium.org [Fri, 4 Dec 2009 21:13:34 +0000 (21:13 +0000)]
Not reviewed: chromium build fix.

Fix Chromium build break caused by moving of isDefaultPortForProtocol() and
portAllowed() into KURL.h/KURL.cpp.  Cloning code.

* platform/KURLGoogle.cpp:
(WebCore::isDefaultPortForProtocol):
(WebCore::portAllowed):

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

10 years ago2009-12-04 Pavel Feldman <pfeldman@chromium.org>
eric@webkit.org [Fri, 4 Dec 2009 21:03:38 +0000 (21:03 +0000)]
2009-12-04  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Timothy Hatcher.

        Web Inspector: Remove suppress highlight when restoring selected node.

        https://bugs.webkit.org/show_bug.cgi?id=32152

        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
        (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode):
        (WebInspector.ElementsPanel.prototype.setDocument):

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

10 years agoWebKitTools: Implement the setAllowUniversalAccessFromFileURLs method
kenneth@webkit.org [Fri, 4 Dec 2009 21:01:48 +0000 (21:01 +0000)]
WebKitTools: Implement the setAllowUniversalAccessFromFileURLs method
for the Qt LayoutTestController.

Reviewed by Adam Treat.

* DumpRenderTree/qt/DumpRenderTree.cpp:
(WebCore::WebPage::resetSettings):
* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::setAllowUniversalAccessFromFileURLs):
* DumpRenderTree/qt/LayoutTestControllerQt.h:

LayoutTests: Remove test that works after adding setAllowUniversalAccessFromFileURLs
to Qt's version of the LayoutTestController.

Reviewed by Adam Treat.

* platform/qt/Skipped:

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

10 years ago2009-12-04 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Fri, 4 Dec 2009 20:19:50 +0000 (20:19 +0000)]
2009-12-04  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Gradient SVG animation demonstrates tearing at animation extremes
        https://bugs.webkit.org/show_bug.cgi?id=11929

        The focalPoint of a radial gradient is temporarly substracted by
        the centralPoint, if the focalPoint is not in the radius of the
        gradient. This is needed to calculate a new postion of the focalPoint
        according to the specification. But the new focalPoint needs to be
        moved by the centralPoint after this calculation, which is not the case
        at the moment. This patch fixes this issue. It was also introduced a
        deviation of maximal 0.2% for Cairo to get around the fixed point numbers
        in Cairo.

        W3C-SVG-1.1/pservers-grad-13-b needed an update. The missing adjustment
        of the new focalPoint caused wrong results for the last three tests.

        Test: svg/custom/radial-gradient-with-outstanding-focalPoint.svg

        * svg/SVGRadialGradientElement.cpp:
        (WebCore::SVGRadialGradientElement::buildGradient):

        Gradient SVG animation demonstrates tearing at animation extremes
        https://bugs.webkit.org/show_bug.cgi?id=11929

        In SVG a focalPoint must be inside the radius of a radial gradient.
        It this isn't the case, we have to move the focalPoint into the radius.
        This checks the correct behavior of WebKit on false values for fx, fy.

        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png:
        * platform/mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Added.
        * platform/mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.txt: Added.
        * svg/custom/radial-gradient-with-outstanding-focalPoint.svg: Added.

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

10 years ago2009-12-04 Anton Muhin <antonm@chromium.org>
eric@webkit.org [Fri, 4 Dec 2009 20:16:02 +0000 (20:16 +0000)]
2009-12-04  Anton Muhin  <antonm@chromium.org>

        Reviewed by Dmitry Titov.

        Do not use WebCore::String::String(const UChar*, int length) to convert
        short v8 strings.

        Plus added string traits.
        https://bugs.webkit.org/show_bug.cgi?id=31415

        * bindings/v8/V8Binding.cpp:
        (WebCore::):
        (WebCore::v8StringToWebCoreString):

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

10 years agoREGRESSION: AX: buttons now extremely repetitive
cfleizach@apple.com [Fri, 4 Dec 2009 20:04:32 +0000 (20:04 +0000)]
REGRESSION: AX: buttons now extremely repetitive
https://bugs.webkit.org/show_bug.cgi?id=32164

Reviewed by Darin Adler.

WebCore:

Test: platform/mac/accessibility/button-shouldnot-have-axvalue.html

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isButton):
* accessibility/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper accessibilityAttributeNames]):

WebKitTools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(isAttributeSupportedCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
(AccessibilityUIElement::isAttributeSupported):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::isAttributeSupported):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::isAttributeSupported):

LayoutTests:

* platform/mac-leopard/accessibility/table-with-aria-role-expected.txt:
* platform/mac/accessibility/button-shouldnot-have-axvalue-expected.txt: Added.
* platform/mac/accessibility/button-shouldnot-have-axvalue.html: Added.
* platform/mac/accessibility/table-with-aria-role-expected.txt:

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

10 years ago2009-12-04 Zoltan Herczeg <zherczeg@inf.u-szeged.hu>
eric@webkit.org [Fri, 4 Dec 2009 20:01:20 +0000 (20:01 +0000)]
2009-12-04  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>

        Reviewed by Darin Adler.

        Check whether the right side of a string append is non-empty
        https://bugs.webkit.org/show_bug.cgi?id=32151

        Especially beneficial for CachedScript::script() method
        which usually appends an empty string returned by flush()
        to its m_script member. m_script is often hundreds of kbytes
        which is duplated without reason.

        * platform/text/String.cpp:
        (WebCore::String::append):

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

10 years agoMail.app crashes when indenting table pasted from Numbers.app.
enrica@apple.com [Fri, 4 Dec 2009 19:49:37 +0000 (19:49 +0000)]
Mail.app crashes when indenting table pasted from Numbers.app.
<rdar://problem/7209507>
https://bugs.webkit.org/show_bug.cgi?id=32166

Reviewed by John Sullivan.

WebCore:

Test: LayoutTests/editing/execCommand/indent-partial-table.html

* editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::indentRegion): Added test to verify that the end of the paragraph
after the selection has not been moved.

LayoutTests:

* editing/execCommand/indent-partial-table-expected.txt: Added.
* editing/execCommand/indent-partial-table.html: Added.

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

10 years ago Reviewed by Darin Adler.
ap@apple.com [Fri, 4 Dec 2009 19:16:15 +0000 (19:16 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=32085
        WebSocket should block the same ports that are blocked for resource loading

        Test: websocket/tests/url-parsing.html

        * page/SecurityOrigin.cpp:
        (WebCore::SecurityOrigin::SecurityOrigin):
        (WebCore::SecurityOrigin::localURLSchemes):
        * page/SecurityOrigin.h:
        Move isDefaultPortForProtocol() to KURL, because that's a better place for it (SecurityOrigin
        is not even in WebCore/platform directory).

        * html/HTMLAnchorElement.cpp:
        (WebCore::HTMLAnchorElement::host):
        (WebCore::HTMLAnchorElement::setHost):
        (WebCore::HTMLAnchorElement::setPort):
        Updated for the new location of isDefaultPortForProtocol().

        * platform/KURL.cpp:
        (WebCore::KURL::protocolIs): In an assertion, compare to "javascript" case-insensitively,
        since the function deosn't require lower case input.
        (WebCore::isDefaultPortForProtocol): Moved from SecurityOrigin.
        (WebCore::portAllowed): Moved from ResourceHandle.
        * platform/KURL.h:

        * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): Updated for the
        new location of portAllowed().

        * websockets/WebSocket.cpp: (WebCore::WebSocket::connect): Per the spec, raise a SECURITY_ERR
        if trying to connect to a blocked port.

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

10 years ago2009-12-04 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
eric@webkit.org [Fri, 4 Dec 2009 18:12:46 +0000 (18:12 +0000)]
2009-12-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Corrects QtLauncher style

        * QtLauncher/main.cpp:
        (WebPage::acceptNavigationRequest):
        (MainWindow::MainWindow):
        (MainWindow::webPage):
        (MainWindow::webView):
        (MainWindow::changeLocation):
        (MainWindow::loadFinished):
        (MainWindow::showLinkHover):
        (MainWindow::zoomIn):
        (MainWindow::zoomOut):
        (MainWindow::print):
        (MainWindow::setEditable):
        (MainWindow::dumpHtml):
        (MainWindow::selectElements):
        (MainWindow::newWindow):
        (MainWindow::setupUI):
        (WebPage::createWindow):
        (WebPage::createPlugin):
        (main):

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

10 years ago2009-12-04 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
eric@webkit.org [Fri, 4 Dec 2009 18:04:54 +0000 (18:04 +0000)]
2009-12-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] QtLauncher: add a menu to show or hide the web inspector.
        https://bugs.webkit.org/show_bug.cgi?id=32149

        * QtLauncher/main.cpp:
        (WebInspector::WebInspector):
        (WebInspector::showEvent):
        (WebInspector::hideEvent):
        (MainWindow::MainWindow):
        (MainWindow::setupUI):

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

10 years ago2009-12-04 Benjamin Poulain <benjamin.poulain@nokia.com>
eric@webkit.org [Fri, 4 Dec 2009 17:57:47 +0000 (17:57 +0000)]
2009-12-04  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] WebKit crashes when loading certain SVG images
        https://bugs.webkit.org/show_bug.cgi?id=29443

        Update the test results for the new FontCache implementation.

        * platform/qt/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/qt/css1/font_properties/font_variant-expected.txt:
        * platform/qt/css1/pseudo/firstline-expected.txt:
        * platform/qt/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * platform/qt/css2.1/t1505-c524-font-var-00-b-expected.txt:

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

10 years ago2009-12-04 Benjamin Poulain <benjamin.poulain@nokia.com>
eric@webkit.org [Fri, 4 Dec 2009 17:50:42 +0000 (17:50 +0000)]
2009-12-04  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] WebKit crashes when loading certain SVG images
        https://bugs.webkit.org/show_bug.cgi?id=29443

        Remove FontFallbackListQt and rely on the common FontFallbackList
        to handle the fonts. FontCache and FontPlatformData have been
        updated to work with the common FontFallbackList.

        In the previous implementation, FontPlatformDataCacheKey
        was a clone of FontPlatformData with the hashing
        capabilities added in order to use it as a key in the cache's
        hashmap. FontPlatformData has been modified to handle the hashing
        function directly so the data are not copied twice in memory.

        FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of
        code from FontCache::getFontData() and FontFallbackList::fontDataAt().
        The behavior is similar except currFamily->family().length() was
        not tested and the fallback fonts selector were not used.

        Existing tests cover the change.

        * WebCore.pro:
        * platform/graphics/qt/FontCacheQt.cpp:
        (WebCore::FontCache::platformInit):
        (WebCore::FontCache::getFontDataForCharacters):
        (WebCore::FontCache::getSimilarFontPlatformData):
        (WebCore::FontCache::getLastResortFallbackFont):
        (WebCore::FontCache::getTraitsInFamily):
        (WebCore::FontCache::createFontPlatformData):
        * platform/graphics/qt/FontCustomPlatformData.cpp:
        (WebCore::FontCustomPlatformData::fontPlatformData):
        * platform/graphics/qt/FontFallbackListQt.cpp:
        Removed. We now use the implementation from FontFallbackList.cpp
        * platform/graphics/qt/FontPlatformData.h:
        Add hashing capabilities to be able to use the data with the FontCache.
        This was previously done in FontCacheQt.cpp
        (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
        (WebCore::FontPlatformData::FontPlatformData):
        (WebCore::FontPlatformData::isHashTableDeletedValue):
        (WebCore::FontPlatformData::font):
        (WebCore::FontPlatformData::size):
        (WebCore::FontPlatformData::family):
        (WebCore::FontPlatformData::bold):
        (WebCore::FontPlatformData::italic):
        (WebCore::FontPlatformData::smallCaps):
        (WebCore::FontPlatformData::pixelSize):
        * platform/graphics/qt/FontPlatformDataQt.cpp:
        (WebCore::FontPlatformData::FontPlatformData):
        (WebCore::FontPlatformData::~FontPlatformData):
        (WebCore::FontPlatformData::operator=):
        (WebCore::FontPlatformData::operator==):
        (WebCore::FontPlatformData::hash):

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

10 years ago2009-12-04 Kenneth Rohde Christiansen <kenneth@webkit.org>
eric@webkit.org [Fri, 4 Dec 2009 17:43:29 +0000 (17:43 +0000)]
2009-12-04  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Reviewed by Antti Koivisto.

        Split out the renderPrivate in two methods, one for working on
        relative coordinates (relative to the viewport) and one for
        working on absolute coordinates. The latter is more effecient
        for implementing tiling, as you don't need translate the coords,
        and because it avoid clipping to the viewport.

        No behaviour changes, so no new tests.

        * Api/qwebframe.cpp:
        (QWebFramePrivate::renderContentsLayerAbsoluteCoords):
        (QWebFramePrivate::renderRelativeCoords):
        (QWebFrame::render):
        * Api/qwebframe_p.h:

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

10 years agoFix wrong assert that was only working through sheer luck.
treat@webkit.org [Fri, 4 Dec 2009 17:14:22 +0000 (17:14 +0000)]
Fix wrong assert that was only working through sheer luck.
https://bugs.webkit.org/show_bug.cgi?id=32162

Patch by Adam Treat <atreat@rim.com> on 2009-12-04
Reviewed by Dan Bernstein.

* platform/text/BidiContext.cpp:
(WebCore::BidiContext::create):

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

10 years ago[Qt] Allow removing 'qrc' as a local security origin scheme
vestbo@webkit.org [Fri, 4 Dec 2009 15:36:52 +0000 (15:36 +0000)]
[Qt] Allow removing 'qrc' as a local security origin scheme

Reviewed by Simon Hausmann.

WebCore:

* page/SecurityOrigin.cpp:

WebKit/qt:

* tests/qwebpage/tst_qwebpage.cpp:

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

10 years ago[Qt] Clean up argument parsing in the QtLauncher
vestbo@webkit.org [Fri, 4 Dec 2009 15:36:34 +0000 (15:36 +0000)]
[Qt] Clean up argument parsing in the QtLauncher

Reviewed by Simon Hausmann.

* QtLauncher/main.cpp:

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

10 years ago2009-12-04 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
eric@webkit.org [Fri, 4 Dec 2009 12:56:49 +0000 (12:56 +0000)]
2009-12-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Prevent the inspector from closing its wrapping widget.
        This is not necessary anymore since we now hide the embedded
        close button.
        https://bugs.webkit.org/show_bug.cgi?id=32149

        * WebCoreSupport/InspectorClientQt.cpp:
        (WebCore::InspectorClientQt::showWindow):
        (WebCore::InspectorClientQt::closeWindow):

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

10 years agoAllow custom memory allocation control for WebCore's CollectionCache
zoltan@webkit.org [Fri, 4 Dec 2009 12:07:19 +0000 (12:07 +0000)]
Allow custom memory allocation control for WebCore's CollectionCache
https://bugs.webkit.org/show_bug.cgi?id=32109

Reviewed by Eric Seidel.

Inherits the following class from FastAllocBase because it is
instantiated by 'new':

struct name            - instantiated at: WebCore/'location'

struct CollectionCache - dom/Document.cpp:4029

* html/CollectionCache.h:

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

10 years ago2009-12-04 Steve Block <steveblock@google.com>
eric@webkit.org [Fri, 4 Dec 2009 11:30:41 +0000 (11:30 +0000)]
2009-12-04  Steve Block  <steveblock@google.com>

        Reviewed by Darin Adler.

        Fixes a crashing bug in Geolocation when a watch is cleared from some callbacks.
        https://bugs.webkit.org/show_bug.cgi?id=32111

        * fast/dom/Geolocation/resources/permission-denied-already-clear-watch.js: Added. Tests clearing the watch from the error callback after a permission denied message when permissions have already been denied.
        * fast/dom/Geolocation/permission-denied-already-clear-watch.html: Added. HTML wrapper for above test.
        * fast/dom/Geolocation/permission-denied-already-clear-watch-expected.txt: Added. Expected result for above test.

        * fast/dom/Geolocation/resources/timeout-clear-watch.js: Added. Tests clearing the watch from the error callback due to a timeout.
        * fast/dom/Geolocation/timeout-clear-watch.html: Added. HTML wrapper for above test.
        * fast/dom/Geolocation/timeout-clear-watch-expected.txt: Added. Expected result for above test.

        * platform/gtk/Skipped: Modified. Skips new tests.
2009-12-04  Steve Block  <steveblock@google.com>

        Reviewed by Darin Adler.

        Fixes a crashing bug in Geolocation when a watch is cleared from some callbacks.
        https://bugs.webkit.org/show_bug.cgi?id=32111

        In Geolocation::GeoNotifier::timerFired, a JS callback may be invoked if a
        fatal error was registered on this GeoNotifier or if this request has timed
        out. If the request is a watch, and is cleared by a call to clearWatch in the
        callback, the GeoNotifier object will be destroyed. We must therefore cache the
        m_geolocation member to allow us to call Geolocation::fatalErrorOccurred or
        Geolocation::requestTimedOut.

        Tests: fast/dom/Geolocation/permission-denied-already-clear-watch.html
               fast/dom/Geolocation/timeout-clear-watch.html

        * page/Geolocation.cpp: Modified.
        (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Cache the m_geolocation member before invoking the JS callback.

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

10 years ago[Qt] Re-enable audio/video tests after updated buildbot's Qt
ossy@webkit.org [Fri, 4 Dec 2009 10:37:26 +0000 (10:37 +0000)]
[Qt] Re-enable audio/video tests after updated buildbot's Qt
to Phonon supported one, and put 2 bad tests into skiplist.

Reviewed by Simon Hausmann.

* platform/qt/Skipped:

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

10 years agoAllow custom memory allocation control for 2 classes of the platform directory in...
zoltan@webkit.org [Fri, 4 Dec 2009 10:33:55 +0000 (10:33 +0000)]
Allow custom memory allocation control for 2 classes of the platform directory in WebCore
https://bugs.webkit.org/show_bug.cgi?id=

Reviewed by Eric Seidel.

Inherits the following class from Noncopyable because it is instantiated
by 'new' and no need to be copyable:

class/struct name         - instantiated at: WebCore/'location'

class SharedTimer         - (its child class) workers/WorkerRunLoop.cpp:91

Inherits the following class from FastAllocBase because it is
instantiated by 'new':

class TransformOperations - rendering/style/RenderStyle.h:1175

Noncopyable.h's include added to SharedTimer.h.

* platform/SharedTimer.h:
* platform/graphics/transforms/TransformOperations.h:

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

10 years ago2009-12-04 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Fri, 4 Dec 2009 10:18:42 +0000 (10:18 +0000)]
2009-12-04  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Gustavo Noronha.

        [GTK]Enable DNS prefetching
        https://bugs.webkit.org/show_bug.cgi?id=23846

        Bump libsoup required version to 2.29.3 for DNS prefetching.

        * configure.ac:

WebCore:

2009-12-04  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Gustavo Noronha.

        [GTK]Enable DNS prefetching
        https://bugs.webkit.org/show_bug.cgi?id=23846

        Enable DNS prefetching.

        Based on a patch by José Millán.

        * platform/network/soup/DNSSoup.cpp:
        (WebCore::prefetchDNS):

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

10 years agoRoll out r51687 because it breaks the Leopard builds.
zoltan@webkit.org [Fri, 4 Dec 2009 08:56:25 +0000 (08:56 +0000)]
Roll out r51687 because it breaks the Leopard builds.

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

10 years ago2009-12-04 Zoltan Horvath <zoltan@webkit.org>
zoltan@webkit.org [Fri, 4 Dec 2009 08:38:39 +0000 (08:38 +0000)]
2009-12-04  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Eric Seidel.

        Allow custom memory allocation control for 2 classes of the platform directory in WebCore
        https://bugs.webkit.org/show_bug.cgi?id=

        Inherits the following class from Noncopyable because it is instantiated
        by 'new' and no need to be copyable:

        class/struct name         - instantiated at: WebCore/'location'

        class SharedTimer         - (its child class) workers/WorkerRunLoop.cpp:91

        Inherits the following class from FastAllocBase because it is
        instantiated by 'new':

        class TransformOperations - rendering/style/RenderStyle.h:1175

        * platform/SharedTimer.h:
        * platform/graphics/transforms/TransformOperations.h:

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

10 years ago2009-12-04 Yuzo Fujishima <yuzo@google.com>
eric@webkit.org [Fri, 4 Dec 2009 08:25:22 +0000 (08:25 +0000)]
2009-12-04  Yuzo Fujishima  <yuzo@google.com>

        Reviewed by Darin Fisher.

        Add test to see if unicode messages can be sent over web socket.

        https://bugs.webkit.org/show_bug.cgi?id=31341

        * websocket/tests/script-tests/unicode.js: Added.
        (endTest):
        (ws.onopen):
        (ws.onmessage):
        (ws.onclose):
        (timeOutCallback):
        * websocket/tests/unicode-expected.txt: Added.
        * websocket/tests/unicode.html: Added.
        * websocket/tests/unicode_wsh.py: Added.

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

10 years ago2009-12-04 Zoltan Horvath <zoltan@webkit.org>
zoltan@webkit.org [Fri, 4 Dec 2009 08:15:01 +0000 (08:15 +0000)]
2009-12-04  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Eric Seidel.

        Allow custom memory allocation control for the svg directory in WebCore
        https://bugs.webkit.org/show_bug.cgi?id=

        Inherits the following classes from Noncopyable because these are instantiated
        by 'new' and no need to be copyable:

        class/struct name           - instantiated at: WebCore/'location'

        struct ResourceSet          - svg/graphics/SVGResource.cpp:148
        class SVGFontData           - css/CSSFontFaceSource.cpp:156
        class SVGDocumentExtensions - dom/Document.cpp:3962
        class SVGViewSpec           - svg/SVGSVGElement.cpp:191

        * svg/SVGDocumentExtensions.h:
        * svg/SVGFontData.h:
        * svg/SVGViewSpec.h:
        * svg/graphics/SVGResource.cpp:

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

10 years agoWAI-ARIA: aria-activedescendant doesn't work as intended
cfleizach@apple.com [Fri, 4 Dec 2009 07:50:48 +0000 (07:50 +0000)]
WAI-ARIA: aria-activedescendant doesn't work as intended
https://bugs.webkit.org/show_bug.cgi?id=32100

Reviewed by Beth Dakin.

WebCore:

Fixes a number of issues regarding the "tree" role and aria-activedescendant.
1. The indexes were being reported incorrectly by treeitems.
2. aria-activedescendant changes were not being sent to the containing item.
3. The tree's selected rows need to consult aria-activedescendant.
4. Since a tree changes what it returns as its children (it returns its rows)
   the mac-specific array indexing methods need to correctly handle the tree case.

Tests: platform/mac/accessibility/aria-tree-activedescendant.html
       platform/mac/accessibility/aria-tree-index-of-items.html

* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
(WebCore::AccessibilityRenderObject::activeDescendant):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
* accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postPlatformNotification):
* accessibility/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
(-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
(-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
* accessibility/win/AXObjectCacheWin.cpp:
(WebCore::AXObjectCache::postPlatformNotification):

LayoutTests:

* platform/mac/accessibility/aria-tree-activedescendant-expected.txt: Added.
* platform/mac/accessibility/aria-tree-activedescendant.html: Added.
* platform/mac/accessibility/aria-tree-index-of-items-expected.txt: Added.
* platform/mac/accessibility/aria-tree-index-of-items.html: Added.

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

10 years ago2009-12-03 Zoltan Horvath <zoltan@webkit.org>
zoltan@webkit.org [Fri, 4 Dec 2009 07:48:59 +0000 (07:48 +0000)]
2009-12-03  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Eric Seidel.

        Allow custom memory allocation control for the xml directory in WebCore
        https://bugs.webkit.org/show_bug.cgi?id=

        Inherits the following class from Noncopyable because it is instantiated
        by 'new' and no need to be copyable:

        class/struct name               - instantiated at: WebCore/'location'

        struct XMLHttpRequestStaticData - xml/XMLHttpRequest.cpp:134

        Inherits the following classes from FastAllocBase because these are instantiated by 'new':

        class NodeTest                  - xml/XPathGrammar.y:258
        class NodeSet                   - xml/XPathValue.cpp:52
        struct EvaluationContext        - xml/XPathExpressionNode.cpp:40

        * xml/XMLHttpRequest.cpp:
        * xml/XPathExpressionNode.h:
        * xml/XPathNodeSet.h:
        * xml/XPathStep.h:

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

10 years ago2009-12-03 Shinichiro Hamaji <hamaji@chromium.org>
hamaji@chromium.org [Fri, 4 Dec 2009 07:42:19 +0000 (07:42 +0000)]
2009-12-03  Shinichiro Hamaji  <hamaji@chromium.org>

        Reviewed by David Levin.

        check-webkit-style should check for camelCase variable names
        https://bugs.webkit.org/show_bug.cgi?id=32051

        * Scripts/modules/cpp_style.py:
        * Scripts/modules/cpp_style_unittest.py:

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

10 years agoNew History changes do not compile for Chromium/V8
atwilson@chromium.org [Fri, 4 Dec 2009 06:40:56 +0000 (06:40 +0000)]
New History changes do not compile for Chromium/V8
https://bugs.webkit.org/show_bug.cgi?id=32148

Reviewed by Adam Barth.

Existing tests suffice (just trying to get code to compile).

* WebCore.gypi:
Added V8HistoryCustom.cpp and other missing files.
* bindings/v8/custom/V8CustomBinding.h:
Added custom handlers for History.pushState()/replaceState().
* bindings/v8/custom/V8HistoryCustom.cpp: Added.
Added custom handlers for History.pushState()/replaceState().
* history/BackForwardListChromium.cpp:
(WebCore::BackForwardList::pushStateItem):
Stubbed out this routine for now - will implement in the future.

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

10 years ago2009-12-03 Adam Barth <abarth@webkit.org>
eric@webkit.org [Fri, 4 Dec 2009 06:19:58 +0000 (06:19 +0000)]
2009-12-03  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        OwnPtr<XBLBindingManager> Document::m_bindingManager;
        https://bugs.webkit.org/show_bug.cgi?id=32147

        The document actually owns the bindingManager.  That's what the code
        should say.

        * dom/Document.cpp:
        (WebCore::Document::~Document):
        * dom/Document.h:
        (WebCore::Document::bindingManager):

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

10 years ago2009-12-03 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Fri, 4 Dec 2009 05:55:46 +0000 (05:55 +0000)]
2009-12-03  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        OwnPtr<Tokenizer> Document::m_tokenizer;
        https://bugs.webkit.org/show_bug.cgi?id=32145

        The document actually owns the tokenizer.  That's what the code should say.

        * dom/Document.cpp:
        (WebCore::Document::removedLastRef):
        (WebCore::Document::~Document):
        (WebCore::Document::cancelParsing):
        (WebCore::Document::implicitOpen):
        (WebCore::Document::implicitClose):
        * dom/Document.h:
        (WebCore::Document::tokenizer):

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

10 years ago2009-12-03 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Fri, 4 Dec 2009 05:54:58 +0000 (05:54 +0000)]
2009-12-03  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        OwnPtr<RenderArena> Document::m_renderArena;
        https://bugs.webkit.org/show_bug.cgi?id=32146

        The document owns the renderArena.  That's what the code should say.

        * dom/Document.cpp:
        (WebCore::Document::Document): Also, removed a redundant initialization
        of the tokenizer that I missed in my previous patch.
        (WebCore::Document::~Document):
        (WebCore::Document::attach):
        (WebCore::Document::detach):
        * dom/Document.h:
        (WebCore::Document::renderArena):

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

10 years agoRevert r51633
atwilson@chromium.org [Fri, 4 Dec 2009 05:54:31 +0000 (05:54 +0000)]
Revert r51633

This reverts commit 4c9cc0b9a12d38654b9c687ffc1671c7307b397a.

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

10 years ago2009-12-03 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Fri, 4 Dec 2009 05:28:33 +0000 (05:28 +0000)]
2009-12-03  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        The code should say that Document owns DocLoader
        https://bugs.webkit.org/show_bug.cgi?id=32143

        It's the truth.

        * dom/Document.cpp:
        (WebCore::Document::~Document):
        * dom/Document.h:
        (WebCore::Document::docLoader):

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

10 years agoTry and fix the Windows build.
barraclough@apple.com [Fri, 4 Dec 2009 02:53:05 +0000 (02:53 +0000)]
Try and fix the Windows build.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:  Export a symbol that should be exported.

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

10 years agoTry and fix the Mac build.
mrowe@apple.com [Fri, 4 Dec 2009 02:35:16 +0000 (02:35 +0000)]
Try and fix the Mac build.

* JavaScriptCore.exp:  Export a symbol that should be exported.

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

10 years agoFixing layout test bustage on platforms.
cfleizach@apple.com [Fri, 4 Dec 2009 02:28:47 +0000 (02:28 +0000)]
Fixing layout test bustage on platforms.

AX: VO just says "term" on many web sites
https://bugs.webkit.org/show_bug.cgi?id=32139

* platform/mac-leopard/accessibility/lists-expected.txt:
* platform/mac/accessibility/radio-button-group-members-expected.txt:

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

10 years agoREGRESSION(4.0.3-48777): Crash in JSC::ExecState::propertyNames() (Debug-only?)
oliver@apple.com [Fri, 4 Dec 2009 02:17:46 +0000 (02:17 +0000)]
REGRESSION(4.0.3-48777): Crash in JSC::ExecState::propertyNames() (Debug-only?)
https://bugs.webkit.org/show_bug.cgi?id=32133

Reviewed by Gavin Barraclough.

Work around odd GCC-ism and correct the scopechain for use by
calls made while a cachedcall is active on the callstack.

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=32136
barraclough@apple.com [Fri, 4 Dec 2009 02:15:18 +0000 (02:15 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=32136
Add a rope representation to JSString.  Presently JSString always holds its data in UString form.
Instead, allow the result of a string concatenation to be represented in a tree form - with a
variable sized, reference-counted rope node retaining a set of UString::Reps (or other rope nopes).

Reviewed by Oliver "Brraaaaiiiinnnnnzzzzzzzz" Hunt.

Strings must still currently be resolved down to a flat UString representation before being used,
but by holding the string in a rope representation during construction we can avoid copying data
until we know the final size of the string.

~2% progression on SunSpider (~25% on date-format-xparb, ~20% on string-validate-input).

* JavaScriptCore.exp:

    - Update exports.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):

    - Make use of new JSString::length() method to avoid prematurely resolving ropes.

* jit/JITOpcodes.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):

    - Switch the string length trampoline to read the length directly from JSString::m_length,
      rather than from the JSString's UString::Rep's 'len' property.

* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):

    - Modify op_add such that addition of two strings, where either or both strings are already
      in rope representation, produces a rope as a result.

* runtime/JSString.cpp:
(JSC::JSString::Rope::~Rope):
(JSC::copyChars):
(JSC::JSString::resolveRope):
(JSC::JSString::getPrimitiveNumber):
(JSC::JSString::toBoolean):
(JSC::JSString::toNumber):
(JSC::JSString::toString):
(JSC::JSString::toThisString):
(JSC::JSString::getStringPropertyDescriptor):
* runtime/JSString.h:
(JSC::JSString::Rope::Fiber::Fiber):
(JSC::JSString::Rope::Fiber::destroy):
(JSC::JSString::Rope::Fiber::isRope):
(JSC::JSString::Rope::Fiber::rope):
(JSC::JSString::Rope::Fiber::string):
(JSC::JSString::Rope::create):
(JSC::JSString::Rope::initializeFiber):
(JSC::JSString::Rope::ropeLength):
(JSC::JSString::Rope::stringLength):
(JSC::JSString::Rope::fibers):
(JSC::JSString::Rope::Rope):
(JSC::JSString::Rope::operator new):
(JSC::JSString::JSString):
(JSC::JSString::value):
(JSC::JSString::length):
(JSC::JSString::isRope):
(JSC::JSString::rope):
(JSC::JSString::string):
(JSC::JSString::canGetIndex):
(JSC::jsSingleCharacterSubstring):
(JSC::JSString::getIndex):
(JSC::jsSubstring):
(JSC::JSString::getStringPropertySlot):

    - Add rope form.

* runtime/Operations.h:
(JSC::jsAdd):
(JSC::concatenateStrings):

    - Update string concatenation, and addition of ropes, to produce ropes.

* runtime/StringObject.cpp:
(JSC::StringObject::getOwnPropertyNames):

    - Make use of new JSString::length() method to avoid prematurely resolving ropes.

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

10 years agoAX: VO just says "term" on many web sites
cfleizach@apple.com [Fri, 4 Dec 2009 02:06:58 +0000 (02:06 +0000)]
AX: VO just says "term" on many web sites
https://bugs.webkit.org/show_bug.cgi?id=32139

Reviewed by Eric Seidel.

WebCore:

Test: platform/mac/accessibility/definition-list-term.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityDescription):
* accessibility/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper subrole]):
(-[AccessibilityObjectWrapper roleDescription]):

WebKitTools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(getRoleDescriptionCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
(AccessibilityUIElement::roleDescription):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::roleDescription):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::roleDescription):

LayoutTests:

* platform/mac/accessibility/aria-grouping-roles-expected.txt:
* platform/mac/accessibility/aria-grouping-roles.html:
* platform/mac/accessibility/definition-list-term-expected.txt: Added.
* platform/mac/accessibility/definition-list-term.html: Added.
* platform/mac/accessibility/lists-expected.txt:

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

10 years agoImplement WAI-ARIA scrollbar role and related property aria-orientation
cfleizach@apple.com [Fri, 4 Dec 2009 01:00:07 +0000 (01:00 +0000)]
Implement WAI-ARIA scrollbar role and related property aria-orientation
https://bugs.webkit.org/show_bug.cgi?id=32126

Reviewed by Beth Dakin.

WebCore:

Test: accessibility/aria-scrollbar-role.html

* accessibility/AccessibilityObject.cpp:
(WebCore::createARIARoleMap):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isScrollbar):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::orientation):
(WebCore::AccessibilityRenderObject::canHaveChildren):
* accessibility/AccessibilityRenderObject.h:
* accessibility/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
* html/HTMLAttributeNames.in:

WebKitTools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(getOrientationCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
(AccessibilityUIElement::orientation):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::orientation):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::orientation):

LayoutTests:

* accessibility/aria-scrollbar-role-expected.txt: Added.
* accessibility/aria-scrollbar-role.html: Added.
* platform/gtk/Skipped:
* platform/win/Skipped:

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

10 years agoFixed <rdar://problem/7401617> Selection painting issue in hardware-
mitz@apple.com [Fri, 4 Dec 2009 00:16:50 +0000 (00:16 +0000)]
Fixed <rdar://problem/7401617> Selection painting issue in hardware-
accelerated layers
which is another part of https://bugs.webkit.org/show_bug.cgi?id=23628
Fix selection painting to do container-relative repaints

Reviewed by Darin Adler.

Test: fast/repaint/block-selection-gap-in-composited-layer.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::selectionGapRectsForRepaint): Compute and paint
gap rects in the coordinate space of the repaint container.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::recursiveRepaintLayerRect): Added a
FIXME.
* rendering/RenderView.cpp:
(WebCore::RenderView::setSelection): Map block selection gap rects from
the repaint container’s coordinate space to the view’s coordinate space
before adding them to the cached selection bounds.
(WebCore::RenderView::clearSelection): Changed to use
repaintRectangleInViewAndCompositedLayers() so that the selection rect
is invalidated in composited layers as well.

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

10 years ago Reviewed by Darin Adler.
ap@apple.com [Fri, 4 Dec 2009 00:07:11 +0000 (00:07 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=32132
        websocket/tests/simple.html fails on Windows

        * websocket/tests/script-tests/simple.js:
        * websocket/tests/simple-expected.txt:
        Make the test weaker - readyState could already grow by the time a posted event gets dispatched.

        * platform/win/Skipped: Un-skip the test.

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

10 years agoMake shorthand-transitions.html less flaky.
jparent@chromium.org [Thu, 3 Dec 2009 23:37:02 +0000 (23:37 +0000)]
Make shorthand-transitions.html less flaky.
The test currently allows for timing related differences by using a tolerance, but the tolerance
is inconsistent in the test, even for values read at the same time (some values are allowed a 100ms
difference, others are only allowed 50ms).  This change makes all values have a 100ms tolerance.
(open question: is 100ms enough?  I've looked through a bunch of logs of failures and it seems to be,
so this should definitely help reduce but this may not entirely eliminate flakiness).

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=32134

* transitions/shorthand-transitions.html:

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

10 years ago2009-12-03 Csaba Osztrogonác <ossy@webkit.org>
eric@webkit.org [Thu, 3 Dec 2009 23:24:19 +0000 (23:24 +0000)]
2009-12-03  Csaba Osztrogonác  <ossy@webkit.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=32135

        [Qt] Add expected files for new tests we pass.
        Compared to the Mac expected png files.

        * platform/qt/fast/css/namespaces/namespaces-escapes-expected.txt: Added.
        * platform/qt/fast/css/namespaces/namespaces-invalid-at-expected.txt: Added.

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

10 years ago2009-12-03 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Thu, 3 Dec 2009 22:17:56 +0000 (22:17 +0000)]
2009-12-03  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Adam Roben.

        Minor correction to r51663.

        * DumpRenderTree/win/DumpRenderTree.cpp:
        (addQTDirToPATH):
            GetEnvironmentVariable -> GetEnvironmentVariableW.

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

10 years ago2009-12-03 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Thu, 3 Dec 2009 22:10:56 +0000 (22:10 +0000)]
2009-12-03  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Adam Roben.

        ~96 regression tests fail when using QuickTime 7.6 (they pass with QuickTime 7.3)
        https://bugs.webkit.org/show_bug.cgi?id=30256

        Add the QuickTime dll directory to the PATH environment variable so
        inialization can succeed.

        * DumpRenderTree/win/DumpRenderTree.cpp:
        (addQTDirToPATH):
        (initialize):

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

10 years ago2009-12-03 Shu Chang <Chang.Shu@nokia.com>
eric@webkit.org [Thu, 3 Dec 2009 22:08:18 +0000 (22:08 +0000)]
2009-12-03  Shu Chang  <Chang.Shu@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] After revision 32643, sender() is of type QWebPage instead of QWebFrame.

        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        (LayoutTestController::maybeDump):

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

10 years ago2009-12-03 Yuzo Fujishima <yuzo@google.com>
eric@webkit.org [Thu, 3 Dec 2009 22:01:14 +0000 (22:01 +0000)]
2009-12-03  Yuzo Fujishima  <yuzo@google.com>

        Reviewed by Eric Seidel.

        Update pywebsocket to 0.4.3
        This version logs friendlier and higher-level messages in WARN level, which is used for LayoutTests.
        Stack trace is logged now in INFO level.
        https://bugs.webkit.org/show_bug.cgi?id=32097

        * pywebsocket/mod_pywebsocket/dispatch.py:
        * pywebsocket/mod_pywebsocket/msgutil.py:
        * pywebsocket/mod_pywebsocket/standalone.py:
        * pywebsocket/mod_pywebsocket/util.py:
        * pywebsocket/setup.py:
        * pywebsocket/test/test_dispatch.py:
        * pywebsocket/test/test_util.py:

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

10 years ago2009-12-03 Jonathan Dixon <joth@chromium.org>
eric@webkit.org [Thu, 3 Dec 2009 21:54:10 +0000 (21:54 +0000)]
2009-12-03  Jonathan Dixon  <joth@chromium.org>

        Reviewed by Dimitri Glazkov.

        Bug 32066 - Add enable geolocation flag to WebCore::Settings for Chromium
        https://bugs.webkit.org/show_bug.cgi?id=32066

        Adds geolocationEnabled in Settings for runtime control of geolocaiton features. This defaults to ON
        as it is intended as a development and testing aid, not a user control. To completely remove geolocation
        from a given port, the compile time ENABLE_GEOLOCATION should still be used.
        Adding placeholder GeolocationServiceChromium implementation, as this is required to allows
        ENABLE_GEOLOCATION to be defined (in turn required for testing), even though this patch does not
        make that the default just yet.

        * WebCore.gypi:
        * page/Settings.cpp:
        (WebCore::Settings::Settings): Add new m_geolocationEnabled flag default value
        (WebCore::Settings::setGeolocationEnabled): Setter for  m_geolocationEnabled flag
        * page/Settings.h:
        (WebCore::Settings::geolocationEnabled):  Add m_geolocationEnabled flag
        * platform/chromium/GeolocationServiceChromium.cpp: Added.
        (WebCore::GeolocationServiceChromium::GeolocationServiceChromium): Place holder GeolocationServiceChromium)
        (WebCore::createGeolocationService): factory function, only required when ENABLED(GEOLOCATION) is true
2009-12-03  Jonathan Dixon  <joth@chromium.org>

        Reviewed by Dimitri Glazkov.

        Bug 32066 - Add enable geolocation flag to WebCore::Settings for Chromium
        https://bugs.webkit.org/show_bug.cgi?id=32066

        Add the plumbing to map WebSettings through to WebCore::Settings

        * features.gypi:
        * public/WebSettings.h: Add setGeolocationEnabled API to interface
        * src/WebSettingsImpl.cpp:
        (WebKit::WebSettingsImpl::setGeolocationEnabled): Calls through to WebCore::Settings::setGeolocationEnabled
        * src/WebSettingsImpl.h: Add setGeolocationEnabled interface function

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

10 years agoSpinTracer: 349 spins in Mail at WebCore::Editor::advanceToNextMisspelling(bool)
enrica@apple.com [Thu, 3 Dec 2009 21:43:38 +0000 (21:43 +0000)]
SpinTracer: 349 spins in Mail at WebCore::Editor::advanceToNextMisspelling(bool)
<rdar://problem/7198592>
https://bugs.webkit.org/show_bug.cgi?id=32129

Reviewed by John Sullivan.

Fixed the way the next paragraph is calculated.
I've added a repro case in Safari and attached it to the Bugzilla bug.

* editing/Editor.cpp:
(WebCore::findFirstMisspellingOrBadGrammarInRange): Changed the way we move to the
next paragraph in the loop.

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

10 years ago2009-12-03 İsmail Dönmez <ismail@namtrac.org>
eric@webkit.org [Thu, 3 Dec 2009 21:37:26 +0000 (21:37 +0000)]
2009-12-03  İsmail Dönmez  <ismail@namtrac.org>

        Reviewed by Eric Seidel.

        Fix compilation when SVG is disabled.

        * Api/qwebframe.cpp:
        (qt_drt_pauseSVGAnimation):

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

10 years agoRubber-stamped by Alexey Proskuryakov.
bweinstein@apple.com [Thu, 3 Dec 2009 21:27:43 +0000 (21:27 +0000)]
Rubber-stamped by Alexey Proskuryakov.

Skip failing WebSocket test on Windows.

* platform/win/Skipped:

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

10 years agoFix JSClassRef leak.
weinig@apple.com [Thu, 3 Dec 2009 21:25:24 +0000 (21:25 +0000)]
Fix JSClassRef leak.

Reviewed by Gavin Barraclough.

* DumpRenderTree/AccessibilityController.cpp:
(AccessibilityController::makeWindowObject):
* DumpRenderTree/GCController.cpp:
(GCController::makeWindowObject):
* DumpRenderTree/LayoutTestController.cpp:
(LayoutTestController::makeWindowObject):

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

10 years agoRubberstamped by Oliver Hunt.
beidson@apple.com [Thu, 3 Dec 2009 21:19:38 +0000 (21:19 +0000)]
Rubberstamped by Oliver Hunt.

Fix layout tests by removing the full outputting of the Date object and just outputting the milliseconds since the epoch.

* fast/loader/stateobjects/pushstate-object-types-expected.txt:
* fast/loader/stateobjects/pushstate-object-types.html:

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

10 years ago Reviewed by Eric Seidel.
ap@apple.com [Thu, 3 Dec 2009 21:06:07 +0000 (21:06 +0000)]
    Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=32130
        Add a test for sending non-trivial amount of data over WebSocket

        * websocket/tests/echo_wsh.py: Copied from WebKitTools/pywebsocket/example/echo_wsh.py.
        * websocket/tests/simple-stress-expected.txt: Added.
        * websocket/tests/simple-stress.html: Added.

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

10 years agoRubberstamped by Sam Weinig.
beidson@apple.com [Thu, 3 Dec 2009 20:59:59 +0000 (20:59 +0000)]
Rubberstamped by Sam Weinig.

Fix my absolute URL snafu by outputting only the last path component for these URLs,
which is all that is relevant.

* fast/loader/stateobjects/document-destroyed-navigate-back-expected.txt:
* fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll-expected.txt:
* fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html:
* fast/loader/stateobjects/document-destroyed-navigate-back.html:
* fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange-expected.txt:
* fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html:

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

10 years agoBuild fix
oliver@apple.com [Thu, 3 Dec 2009 20:38:58 +0000 (20:38 +0000)]
Build fix

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

10 years agoBuild fix
oliver@apple.com [Thu, 3 Dec 2009 19:51:05 +0000 (19:51 +0000)]
Build fix

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

10 years agoNo wonder editing WebCore.exp repeatedly while I worked on this patch never seemed...
beidson@apple.com [Thu, 3 Dec 2009 19:39:16 +0000 (19:39 +0000)]
No wonder editing WebCore.exp repeatedly while I worked on this patch never seemed to stick.

Long live our auto-generated overlords that I didn't know about...

* WebCore.base.exp:

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

10 years agoREGRESSION (r51627): 3 SVG tests are failing
oliver@apple.com [Thu, 3 Dec 2009 19:34:46 +0000 (19:34 +0000)]
REGRESSION (r51627): 3 SVG tests are failing
https://bugs.webkit.org/show_bug.cgi?id=32117

Reviewed by Dan Bernstein.

Null checking Items in the SVGList is insufficient as items may
be floats, etc so add SVGListTraits::isNull and add appropriate
specializations.

Test: svg/dom/svglist-exception-on-out-bounds-error.html

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

10 years agoNo review - release build fix.
beidson@apple.com [Thu, 3 Dec 2009 19:32:16 +0000 (19:32 +0000)]
No review - release build fix.

* history/HistoryItem.cpp:
(WebCore::HistoryItem::documentDetached):

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

10 years agoNo review - release build fix.
beidson@apple.com [Thu, 3 Dec 2009 19:27:31 +0000 (19:27 +0000)]
No review - release build fix.

* loader/HistoryController.cpp:
(WebCore::HistoryController::pushState):

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

10 years agoTouch WebKit.idl to force Interfaces rebuild and fix Windows build.
bweinstein@apple.com [Thu, 3 Dec 2009 19:25:46 +0000 (19:25 +0000)]
Touch WebKit.idl to force Interfaces rebuild and fix Windows build.

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

10 years agoWebCore: Multiple Undos removes the last posted comment and/or the ones before it.
enrica@apple.com [Thu, 3 Dec 2009 19:18:42 +0000 (19:18 +0000)]
WebCore: Multiple Undos removes the last posted comment and/or the ones before it.
<rdar://problem/6557066>
https://bugs.webkit.org/show_bug.cgi?id=32079

Reviewed by Adele Peterson.

The fix consists in preventing Undos and Redos to be applied to elements that
are no longer editable. We do not attempt to remove the commands from the queue.
It is a relatively simple fix that comes with a little extra overhead for the apply
and unapply methods where we are now performing the editability check.

Test: editing/undo/undo-indent-noneditable.html

* editing/AppendNodeCommand.cpp:
(WebCore::AppendNodeCommand::doApply):
(WebCore::AppendNodeCommand::doUnapply):
* editing/DeleteFromTextNodeCommand.cpp:
(WebCore::DeleteFromTextNodeCommand::doApply):
(WebCore::DeleteFromTextNodeCommand::doUnapply):
* editing/InsertIntoTextNodeCommand.cpp:
(WebCore::InsertIntoTextNodeCommand::doApply):
(WebCore::InsertIntoTextNodeCommand::doUnapply):
* editing/InsertNodeBeforeCommand.cpp:
(WebCore::InsertNodeBeforeCommand::doApply):
(WebCore::InsertNodeBeforeCommand::doUnapply):
* editing/JoinTextNodesCommand.cpp:
(WebCore::JoinTextNodesCommand::doApply):
(WebCore::JoinTextNodesCommand::doUnapply):
* editing/MergeIdenticalElementsCommand.cpp:
(WebCore::MergeIdenticalElementsCommand::doApply):
(WebCore::MergeIdenticalElementsCommand::doUnapply):
* editing/RemoveNodeCommand.cpp:
(WebCore::RemoveNodeCommand::doApply):
(WebCore::RemoveNodeCommand::doUnapply):
* editing/SplitElementCommand.cpp:
(WebCore::SplitElementCommand::executeApply):
(WebCore::SplitElementCommand::doUnapply):
* editing/SplitTextNodeCommand.cpp:
(WebCore::SplitTextNodeCommand::doApply):
(WebCore::SplitTextNodeCommand::doUnapply):
* editing/WrapContentsInDummySpanCommand.cpp:
(WebCore::WrapContentsInDummySpanCommand::doUnapply):
(WebCore::WrapContentsInDummySpanCommand::doReapply):

LayoutTests: Multiple Undos removes the last posted comment and/or the ones before it.
<rdar://problem/6557066>
https://bugs.webkit.org/show_bug.cgi?id=32079

Reviewed by Adele Peterson.

Added test to verify that undo has no effect when an element is
no longer editable.

* editing/undo/undo-indent-noneditable-expected.txt: Added.
* editing/undo/undo-indent-noneditable.html: Added.

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

10 years ago<rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object...
beidson@apple.com [Thu, 3 Dec 2009 19:04:40 +0000 (19:04 +0000)]
<rdar://problem/7214236> and webkit.org/b/32052 - Implement HTML5 state object history API

Reviewed by Sam Weinig.

WebCore:

Tests: fast/loader/stateobjects/document-destroyed-navigate-back.html
       fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html
       fast/loader/stateobjects/popstate-after-load-complete-addeventlistener.html
       fast/loader/stateobjects/popstate-after-load-complete-body-attribute.html
       fast/loader/stateobjects/popstate-after-load-complete-window-attribute.html
       fast/loader/stateobjects/pushstate-object-types.html
       fast/loader/stateobjects/pushstate-then-replacestate.html
       fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html
       fast/loader/stateobjects/replacestate-then-pushstate.html
       http/tests/loading/state-object-security-exception.html

Derived sources and project file changes:
* DerivedSources.cpp:
* DerivedSources.make:
* GNUmakefile.am
* WebCore.pro
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

Add the new PopStateEvent:
* dom/PopStateEvent.cpp: Added.
(WebCore::PopStateEvent::PopStateEvent):
(WebCore::PopStateEvent::initPopStateEvent):
* dom/PopStateEvent.h: Added.
(WebCore::PopStateEvent::create):
(WebCore::PopStateEvent::isPopStateEvent):
(WebCore::PopStateEvent::state):
* dom/PopStateEvent.idl: Added.
* bindings/js/JSPopStateEventCustom.cpp: Added.
(WebCore::JSPopStateEvent::initPopStateEvent):
(WebCore::JSPopStateEvent::state):
* bindings/js/JSEventCustom.cpp:
(WebCore::toJS):
* dom/Event.cpp:
(WebCore::Event::isPopStateEvent):
* dom/Event.h:
* dom/EventNames.h:

Add the "onpopstate" attribute:
* html/HTMLAttributeNames.in:
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::parseMappedAttribute):
* html/HTMLBodyElement.idl:
* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::parseMappedAttribute):
* html/HTMLFrameSetElement.h:
* html/HTMLFrameSetElement.idl:
* page/DOMWindow.h:
* page/DOMWindow.idl:

Add pushState and replaceState management to the loader and history machinery:
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::pushState):
(WebCore::JSHistory::replaceState):
* loader/HistoryController.cpp:
(WebCore::HistoryController::updateForSameDocumentNavigation): Augmented from "scrollToAnchor()", combining
  both the same-document fragment scroll case with the new same-document state object activation case.
(WebCore::HistoryController::pushState):
(WebCore::HistoryController::replaceState):
* loader/HistoryController.h:
* history/BackForwardList.cpp:
(WebCore::BackForwardList::addItem): Use insertItemAfterCurrent.
(WebCore::BackForwardList::insertItemAfterCurrent): Optionally insert the item without clearing the forward
  list, as pushStateItem might've selectively cleared only certain items, with the bulk of the forward list
  meant to remain.
(WebCore::BackForwardList::pushStateItem): Clear the forward list *only* for the state item's document, then
  insert the new item.
(WebCore::BackForwardList::removeItem):
* history/BackForwardList.h:
* page/History.cpp:
(WebCore::History::urlForState):
(WebCore::History::stateObjectAdded):
* page/History.h:
* page/History.idl:

Let HistoryItems and Documents associate with each other, as well as letting HistoryItems contain state objects:
* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
(WebCore::HistoryItem::~HistoryItem):
(WebCore::HistoryItem::setStateObject):
(WebCore::HistoryItem::setDocument):
(WebCore::HistoryItem::documentDetached):
* history/HistoryItem.h:
(WebCore::HistoryItem::stateObject):
(WebCore::HistoryItem::document):
* dom/Document.cpp:
(WebCore::Document::detach): Notify all back/forward history items owned by this Document that it
  is going away.
(WebCore::Document::registerHistoryItem): Manage the list of back/forward history items this document owns.
(WebCore::Document::unregisterHistoryItem): Ditto.
* dom/Document.h:

Add the ability for Documents, DocumentLoaders, and FrameLoaderClients to be notified when a Documents
URL changes as the result of pushState(), replaceState(), or a popstate navigation:
* dom/Document.cpp:
(WebCore::Document::implicitClose): If there's a pending state object, dispatch the popstate event.
(WebCore::Document::updateURLForPushOrReplaceState):
(WebCore::Document::statePopped): If loading is complete, dispatch the popstate event. Otherwise, set
  the pending state object.
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::replaceRequestURLForSameDocumentNavigation):
* loader/DocumentLoader.h:
* loader/FrameLoaderClient.h:
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::dispatchDidChangeStateObjectForPageForFrame):

Change handling of "loading a HistoryItem" to distinguish between new-Document navigations and same-Document
navigations, combining the old concept of anchor scrolls with the new concept of state object navigations:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadInSameDocument):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
(WebCore::FrameLoader::navigateWithinDocument):
(WebCore::FrameLoader::navigateToDifferentDocument):
(WebCore::FrameLoader::loadItem):
* loader/FrameLoader.h:
* page/Page.cpp:
(WebCore::Page::goToItem): Changed to allow state object activations to pass through without the load stopping.

WebKit/chromium:

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDidPushStateWithinPage):
(WebKit::FrameLoaderClientImpl::dispatchDidReplaceStateWithinPage):
(WebKit::FrameLoaderClientImpl::dispatchDidPopStateWithinPage):
* src/FrameLoaderClientImpl.h:

WebKit/gtk:

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidPushStateWithinPage):
(WebKit::FrameLoaderClient::dispatchDidReplaceStateWithinPage):
(WebKit::FrameLoaderClient::dispatchDidPopStateWithinPage):
* WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidPushStateWithinPage):
(WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
(WebFrameLoaderClient::dispatchDidPopStateWithinPage):
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebFrameLoadDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView _cacheFrameLoadDelegateImplementations]):

WebKit/qt:

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDidPushStateWithinPage):
(WebCore::FrameLoaderClientQt::dispatchDidReplaceStateWithinPage):
(WebCore::FrameLoaderClientQt::dispatchDidPopStateWithinPage):
* WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

* Interfaces/IWebFrameLoadDelegatePrivate2.idl:
* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::dispatchDidPushStateWithinPage):
(WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
(WebFrameLoaderClient::dispatchDidPopStateWithinPage):
* WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

* WebKitSupport/FrameLoaderClientWx.cpp:
(WebCore::FrameLoaderClientWx::dispatchDidPushStateWithinPage):
(WebCore::FrameLoaderClientWx::dispatchDidReplaceStateWithinPage):
(WebCore::FrameLoaderClientWx::dispatchDidPopStateWithinPage):
* WebKitSupport/FrameLoaderClientWx.h:

WebKitTools:

Keep DRT-win building...

* DumpRenderTree/win/FrameLoadDelegate.h:
(FrameLoadDelegate::didPushStateWithinPageForFrame):
(FrameLoadDelegate::didReplaceStateWithinPageForFrame):
(FrameLoadDelegate::didPopStateWithinPageForFrame):

LayoutTests:

Update expected results of old tests:
* fast/dom/Window/window-appendages-cleared-expected.txt:
* fast/dom/Window/window-properties-expected.txt:
* http/tests/security/cross-frame-access-enumeration-expected.txt:

New tests:
* fast/loader/stateobjects: Added.
* fast/loader/stateobjects/document-destroyed-navigate-back-expected.txt: Added.
* fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll-expected.txt: Added.
* fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html: Added.
* fast/loader/stateobjects/document-destroyed-navigate-back.html: Added.
* fast/loader/stateobjects/popstate-after-load-complete-addeventlistener-expected.txt: Added.
* fast/loader/stateobjects/popstate-after-load-complete-addeventlistener.html: Added.
* fast/loader/stateobjects/popstate-after-load-complete-body-attribute-expected.txt: Added.
* fast/loader/stateobjects/popstate-after-load-complete-body-attribute.html: Added.
* fast/loader/stateobjects/popstate-after-load-complete-body-inline-attribute-expected.txt: Added.
* fast/loader/stateobjects/popstate-after-load-complete-body-inline-attribute.html: Added.
* fast/loader/stateobjects/popstate-after-load-complete-window-attribute-expected.txt: Added.
* fast/loader/stateobjects/popstate-after-load-complete-window-attribute.html: Added.
* fast/loader/stateobjects/pushstate-object-types-expected.txt: Added.
* fast/loader/stateobjects/pushstate-object-types.html: Added.
* fast/loader/stateobjects/pushstate-then-replacestate-expected.txt: Added.
* fast/loader/stateobjects/pushstate-then-replacestate.html: Added.
* fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange-expected.txt: Added.
* fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html: Added.
* fast/loader/stateobjects/replacestate-then-pushstate-expected.txt: Added.
* fast/loader/stateobjects/replacestate-then-pushstate.html: Added.
* fast/loader/stateobjects/resources: Added.
* fast/loader/stateobjects/resources/navigate-back.html: Added.
* http/tests/loading/state-object-security-exception-expected.txt: Added.
* http/tests/loading/state-object-security-exception.html: Added.

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

10 years agoReviewed by Xan Lopez.
kov@webkit.org [Thu, 3 Dec 2009 18:53:45 +0000 (18:53 +0000)]
Reviewed by Xan Lopez.

Platform-specific result for test. GIO identifies the file as
application/javascript, as opposed to other platforms identifying
it as application/x-javascript.

* platform/gtk/inspector/timeline-network-resource-expected.txt: Added.

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

10 years ago2009-12-03 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Thu, 3 Dec 2009 18:04:54 +0000 (18:04 +0000)]
2009-12-03  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: chromium build fix.
        r51621 changed JS bindings only, broke v8's.

        * bindings/v8/ScriptFunctionCall.cpp:
        (WebCore::ScriptFunctionCall::appendArgument):
        * bindings/v8/ScriptFunctionCall.h:

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

10 years agoRubber-stamped by Oliver Hunt.
kov@webkit.org [Thu, 3 Dec 2009 17:16:23 +0000 (17:16 +0000)]
Rubber-stamped by Oliver Hunt.

Re-baseline required after r51522.

* platform/gtk/editing/deleting/5390681-2-expected.txt:

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

10 years agoSkipping new tests, and tests that require new DRT functionality.
kov@webkit.org [Thu, 3 Dec 2009 17:09:57 +0000 (17:09 +0000)]
Skipping new tests, and tests that require new DRT functionality.

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

10 years agoUnreviewed build fix.
zoltan@webkit.org [Thu, 3 Dec 2009 17:06:04 +0000 (17:06 +0000)]
Unreviewed build fix.

Patch by Andras Becsi <abecsi@inf.u-szeged.hu> on 2009-12-03
[Qt] ARM-Linux build fix after r51634 removed unused QBoxLayout include which included limits.h on ARM.

* DumpRenderTree/qt/DumpRenderTree.cpp:

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

10 years ago2009-12-03 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 3 Dec 2009 16:57:55 +0000 (16:57 +0000)]
2009-12-03  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Adam Barth.

        [V8] Attributes and NamedNodeMaps aren't tracked correctly and may be prematurely garbage-collected.
        https://bugs.webkit.org/show_bug.cgi?id=32094

        Covered by existing test: LayoutTests/fast/dom/Attr/access-after-element-destruction.html

        * bindings/v8/DOMObjectsInclude.h:
        * bindings/v8/V8DOMWrapper.cpp:
        (WebCore::V8DOMWrapper::getTemplate):
        (WebCore::V8DOMWrapper::convertToV8Object):
        (WebCore::V8DOMWrapper::convertNamedNodeMapToV8Object):
        * bindings/v8/V8DOMWrapper.h:
        * bindings/v8/V8GCController.cpp:
        (WebCore::ObjectGrouperVisitor::visitDOMWrapper):
        * bindings/v8/custom/V8CustomBinding.h:

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

10 years ago2009-12-03 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Thu, 3 Dec 2009 16:43:36 +0000 (16:43 +0000)]
2009-12-03  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Timothy Hatcher.

        Chromium: Add support for settings containing ":"

        https://bugs.webkit.org/show_bug.cgi?id=32118

        * src/InspectorClientImpl.cpp:
        (WebKit::InspectorClientImpl::loadSettings):

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

10 years agorepaint events from outside the viewport aren't received
kenneth@webkit.org [Thu, 3 Dec 2009 14:25:50 +0000 (14:25 +0000)]
repaint events from outside the viewport aren't received
https://bugs.webkit.org/show_bug.cgi?id=32081

Reviewed by Simon Fraser.

When using a tiled backing store for painting, you need to receive
event from outside the viewport. Setting the viewport to the size
of the contents is not an option if you want to make use of WebCore's
infrastructure for drawing scrollbars etc.

A new property, paintsEntireContents, has been introduced for the
above use-case. It is settable, as tiling will be optional for Qt,
and for the not yet upstreamed EFL port, there will be two different
views, where only one of them are tiled.

No change in behavior, so no new tests added.

* page/FrameView.cpp:
(WebCore::FrameView::repaintContentRectangle):
* platform/ScrollView.cpp:
(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::setPaintsEntireContents):
(WebCore::ScrollView::wheelEvent):
* platform/ScrollView.h:
(WebCore::ScrollView::paintsEntireContents):

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

10 years ago[Qt] Skip layoutTestController.notifyDone() related tests which got revealed in r51634
ossy@webkit.org [Thu, 3 Dec 2009 14:24:42 +0000 (14:24 +0000)]
[Qt] Skip layoutTestController.notifyDone() related tests which got revealed in r51634
until there is a fix for the issue.
https://bugs.webkit.org/show_bug.cgi?id=31626

Patch by Andras Becsi <abecsi@inf.u-szeged.hu> on 2009-12-03
Reviewed by Kenneth Rohde Christiansen.

* platform/qt/Skipped:

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

10 years agoWebKitTools: [Qt] Refactor DRT to not crash on tests which open child windows from...
ossy@webkit.org [Thu, 3 Dec 2009 14:06:57 +0000 (14:06 +0000)]
WebKitTools: [Qt] Refactor DRT to not crash on tests which open child windows from javascript.
Prevent DRT from showing the main view if these childs get deleted.
This fixes https://bugs.webkit.org/show_bug.cgi?id=31591.

Patch by Andras Becsi <abecsi@inf.u-szeged.hu> on 2009-12-03
Reviewed by Kenneth Rohde Christiansen.

* DumpRenderTree/qt/DumpRenderTree.cpp:
(WebCore::WebPage::WebPage):
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::~DumpRenderTree):
(WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):
(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::closeRemainingWindows):
(WebCore::DumpRenderTree::createWindow):
(WebCore::DumpRenderTree::windowCount):
* DumpRenderTree/qt/DumpRenderTree.h:

LayoutTests: [Qt] Re-enable previously skipped tests.
https://bugs.webkit.org/show_bug.cgi?id=31591

Patch by Andras Becsi <abecsi@inf.u-szeged.hu> on 2009-12-03
Reviewed by Kenneth Rohde Christiansen.

* platform/qt/Skipped:

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

10 years agoReviewed by Eric Seidel.
jeremy@chromium.org [Thu, 3 Dec 2009 13:52:39 +0000 (13:52 +0000)]
Reviewed by Eric Seidel.

Switch Chrome/Mac to use Core Text APIs rather than ATSUI APIs.
https://bugs.webkit.org/show_bug.cgi?id=31802

No test since this is already covered by existing pixel tests.

* platform/graphics/SimpleFontData.h: Change #ifdef to define getNSFont() on Chrome/Mac .
* platform/graphics/mac/ComplexTextControllerCoreText.cpp: Provide forward declarations
of Core Text functions that are public on 10.6 but SPI on 10.5.

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

10 years ago[Qt] Put test into skiplist because of missing layoutTestController.evaluateInWebInsp...
ossy@webkit.org [Thu, 3 Dec 2009 13:15:59 +0000 (13:15 +0000)]
[Qt] Put test into skiplist because of missing layoutTestController.evaluateInWebInspector().

* platform/qt/Skipped:
- inspector/settings-set-get.html added.

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

10 years ago2009-12-03 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
pfeldman@chromium.org [Thu, 3 Dec 2009 12:46:59 +0000 (12:46 +0000)]
2009-12-03  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>

        Reviewed by Timothy Hatcher.

        Web Inspector: Simplify the settings support in inspector controller.

        https://bugs.webkit.org/show_bug.cgi?id=32076

        Test: inspector/settings-set-get.html

        * WebCore.Inspector.exp:
        * bindings/js/JSInspectorFrontendHostCustom.cpp:
        * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
        * inspector/InspectorClient.h:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::~InspectorController):
        (WebCore::InspectorController::setting):
        (WebCore::InspectorController::setSetting):
        (WebCore::InspectorController::setWindowVisible):
        (WebCore::InspectorController::attachWindow):
        (WebCore::InspectorController::setAttachedWindowHeight):
        (WebCore::InspectorController::storeLastActivePanel):
        (WebCore::InspectorController::scriptObjectReady):
        (WebCore::InspectorController::showWindow):
        (WebCore::InspectorController::enableResourceTracking):
        (WebCore::InspectorController::disableResourceTracking):
        (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
        (WebCore::InspectorController::enableProfiler):
        (WebCore::InspectorController::disableProfiler):
        (WebCore::InspectorController::enableDebuggerFromFrontend):
        (WebCore::InspectorController::disableDebugger):
        * inspector/InspectorController.h:
        * inspector/InspectorFrontendHost.cpp:
        (WebCore::InspectorFrontendHost::setting):
        (WebCore::InspectorFrontendHost::setSetting):
        * inspector/InspectorFrontendHost.h:
        * inspector/InspectorFrontendHost.idl:
        * loader/EmptyClients.h:
        (WebCore::EmptyInspectorClient::populateSetting):
        (WebCore::EmptyInspectorClient::storeSetting):

WebKit/chromium
        * src/InspectorClientImpl.cpp:
        (WebKit::InspectorClientImpl::hiddenPanels):
        (WebKit::InspectorClientImpl::populateSetting):
        (WebKit::InspectorClientImpl::storeSetting):
        (WebKit::InspectorClientImpl::loadSettings):
        (WebKit::InspectorClientImpl::saveSettings):
        * src/InspectorClientImpl.h:

WebKit/cf
        * WebCoreSupport/WebInspectorClientCF.cpp:
        (WebInspectorClient::populateSetting):
        (WebInspectorClient::storeSetting):

WebKit/gtk
        * WebCoreSupport/InspectorClientGtk.cpp:
        (WebKit::InspectorClient::populateSetting):
        (WebKit::InspectorClient::storeSetting):
        * WebCoreSupport/InspectorClientGtk.h:

WebKit/haiku
        * WebCoreSupport/InspectorClientHaiku.cpp:
        (WebCore::InspectorClientHaiku::populateSetting):
        (WebCore::InspectorClientHaiku::storeSetting):
        * WebCoreSupport/InspectorClientHaiku.h:

WebKit/mac
        * WebCoreSupport/WebInspectorClient.h:
        * WebCoreSupport/WebInspectorClient.mm:
        (-[WebInspectorWindowController showWindow:]):
        (-[WebInspectorWindowController attach]):
        (-[WebInspectorWindowController detach]):

WebKit/qt
        * WebCoreSupport/InspectorClientQt.cpp:
        (WebCore::InspectorClientQt::populateSetting):
        (WebCore::InspectorClientQt::storeSetting):
        (WebCore::variantToSetting):
        (WebCore::settingToVariant):
        * WebCoreSupport/InspectorClientQt.h:

WebKit/win
        * WebCoreSupport/WebInspectorClient.cpp:
        (WebInspectorClient::attachWindow):
        (WebInspectorClient::detachWindow):
        (WebInspectorClient::showWindowWithoutNotifications):
        * WebCoreSupport/WebInspectorClient.h:

WebKit/wx
        * WebKitSupport/InspectorClientWx.cpp:
        (WebCore::InspectorClientWx::populateSetting):
        (WebCore::InspectorClientWx::storeSetting):
        * WebKitSupport/InspectorClientWx.h:

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

10 years ago[Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that...
benm@google.com [Thu, 3 Dec 2009 12:31:28 +0000 (12:31 +0000)]
[Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that changed.
https://bugs.webkit.org/show_bug.cgi?id=31915

Reviewed by Brady Eidson.

WebCore:

No change in functionality so no new tests required.

* history/HistoryItem.cpp:
(WebCore::defaultNotifyHistoryItemChanged): Update this function to pass the HistoryItem that is being changed.
(WebCore::HistoryItem::setAlternateTitle): Update call to notifyHistoryItemChanged to include the new parameter.
(WebCore::HistoryItem::setURLString): ditto.
(WebCore::HistoryItem::setOriginalURLString): ditto.
(WebCore::HistoryItem::setReferrer): ditto.
(WebCore::HistoryItem::setTitle): ditto.
(WebCore::HistoryItem::setTarget): ditto.
(WebCore::HistoryItem::setDocumentState): On Android, add a call to notifyHistoryItemChanged. See bug for a discussion of why this is needed.
(WebCore::HistoryItem::clearDocumentState): ditto.
(WebCore::HistoryItem::setIsTargetItem): ditto.
(WebCore::HistoryItem::addChildItem): ditto.
(WebCore::HistoryItem::setFormInfoFromRequest): ditto.
* history/HistoryItem.h: Update signature of notifyHistoryItemChanged.

WebKit/mac:

* History/WebHistoryItem.mm:
(WKNotifyHistoryItemChanged): Update WKNotifyHistoryItemChanged() to add the new HistoryItem parameter added in the WebCore portion of this patch.
* History/WebHistoryItemInternal.h: ditto.

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

10 years ago[Android] The FrameLoaderClient is unaware of BackForwardList changes.
benm@google.com [Thu, 3 Dec 2009 12:18:23 +0000 (12:18 +0000)]
[Android] The FrameLoaderClient is unaware of BackForwardList changes.
https://bugs.webkit.org/show_bug.cgi?id=31914

Reviewed by Brady Eidson.

WebCore:

This change adds three new methods on the FrameLoaderClient interface to receive notifications when the BackForwardList changes.

No new tests required. Functionality on all platforms upstream remains the same. Android is the first platform to make use of these callbacks.

* history/BackForwardList.cpp:
(WebCore::BackForwardList::addItem): Execute the callback.
(WebCore::BackForwardList::goBack): ditto.
(WebCore::BackForwardList::goForward): ditto.
(WebCore::BackForwardList::goToItem): ditto.
(WebCore::BackForwardList::setCapacity): dito.
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation for the callback that does nothing.
(WebCore::EmptyFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
(WebCore::EmptyFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
* loader/FrameLoaderClient.h:

WebKit/chromium:

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebKit::FrameLoaderClientImpl::dispatchDidRemoveBackForwardItem): ditto.
(WebKit::FrameLoaderClientImpl::dispatchDidChangeBackForwardIndex): dito.
* src/FrameLoaderClientImpl.h:

WebKit/gtk:

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebKit::FrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
(WebKit::FrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
* WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/haiku:

* WebCoreSupport/FrameLoaderClientHaiku.cpp:
(WebCore::FrameLoaderClientHaiku::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebCore::FrameLoaderClientHaiku::dispatchDidRemoveBackForwardItem): ditto.
(WebCore::FrameLoaderClientHaiku::dispatchDidChangeBackForwardIndex): ditto.
* WebCoreSupport/FrameLoaderClientHaiku.h:

WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
(WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.

WebKit/qt:

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebCore::FrameLoaderClientQt::dispatchDidRemoveBackForwardItem): ditto.
(WebCore::FrameLoaderClientQt::dispatchDidChangeBackForwardIndex): ditto.
* WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
(WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
* WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

* WebKitSupport/FrameLoaderClientWx.cpp:
(WebCore::FrameLoaderClientWx::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
(WebCore::FrameLoaderClientWx::dispatchDidRemoveBackForwardItem): ditto.
(WebCore::FrameLoaderClientWx::dispatchDidChangeBackForwardIndex): ditto.
* WebKitSupport/FrameLoaderClientWx.h:

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

10 years ago[Android] Upstream WebCore/history/android: Require some platform specific state...
benm@google.com [Thu, 3 Dec 2009 11:52:29 +0000 (11:52 +0000)]
[Android] Upstream WebCore/history/android: Require some platform specific state attached to HistoryItem.
https://bugs.webkit.org/show_bug.cgi?id=31913

Reviewed by Brady Eidson.

Android stores information such as the zoom scale factor and bridge back to the Java counterpart with HistoryItem.

No new tests required as this is Android specific code.

* history/HistoryItem.h: Add Android specific member data to HistoryItem.
* history/android: Added.
* history/android/AndroidWebHistoryBridge.h: Added.
* history/android/HistoryItemAndroid.cpp: Added, provides implementation for Android specific member functions in HistoryItem.
(WebCore::HistoryItem::bridge): Added.
(WebCore::HistoryItem::setBridge): Added.

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

10 years agoNULL ptr in SVGPathSegList::getPathSegAtLength()
oliver@apple.com [Thu, 3 Dec 2009 09:22:14 +0000 (09:22 +0000)]
NULL ptr in SVGPathSegList::getPathSegAtLength()
https://bugs.webkit.org/show_bug.cgi?id=30313

Reviewed by Maciej Stachowiak.

Add exception checks to SVGPathSegList's implementation to catch (and propagate) exceptions.
Add null checks to SVGList's content manipulation functions to prevent
null values from entering the list in the first place.

Test: svg/dom/svgpath-out-of-bounds-getPathSeg.html

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

10 years ago2009-12-02 Shinichiro Hamaji <hamaji@chromium.org>
eric@webkit.org [Thu, 3 Dec 2009 07:27:34 +0000 (07:27 +0000)]
2009-12-02  Shinichiro Hamaji  <hamaji@chromium.org>

        Reviewed by Darin Adler.

        Rewrite two tests with dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=32014

        * fast/block/positioning/complex-percentage-height-expected.txt: Added.
        * fast/block/positioning/complex-percentage-height.html:
        * fast/lists/item-not-in-list-line-wrapping-expected.txt: Added.
        * fast/lists/item-not-in-list-line-wrapping.html:
        * platform/mac/fast/block/positioning/complex-percentage-height-expected.checksum: Removed.
        * platform/mac/fast/block/positioning/complex-percentage-height-expected.png: Removed.
        * platform/mac/fast/block/positioning/complex-percentage-height-expected.txt: Removed.
        * platform/mac/fast/lists/item-not-in-list-line-wrapping-expected.checksum: Removed.
        * platform/mac/fast/lists/item-not-in-list-line-wrapping-expected.png: Removed.
        * platform/mac/fast/lists/item-not-in-list-line-wrapping-expected.txt: Removed.
        * platform/qt/Skipped:
        * platform/qt/fast/block/positioning/complex-percentage-height-expected.txt: Removed.
        * platform/qt/fast/lists/item-not-in-list-line-wrapping-expected.txt: Removed.

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

10 years agoAdd files missed in prior patch.
oliver@apple.com [Thu, 3 Dec 2009 06:46:56 +0000 (06:46 +0000)]
Add files missed in prior patch.

Reviewed by Gavin Barraclough.

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

10 years agoAdd zombies to JSC
oliver@apple.com [Thu, 3 Dec 2009 06:25:58 +0000 (06:25 +0000)]
Add zombies to JSC
https://bugs.webkit.org/show_bug.cgi?id=32103

Reviewed by Gavin Barraclough.

Add a compile time flag to make the JSC collector replace "unreachable"
objects with zombie objects.  The zombie object is a JSCell subclass that
ASSERTs on any attempt to use the JSCell methods.  In addition there are
a number of additional assertions in bottleneck code to catch zombie usage
as quickly as possible.

Grrr. Argh. Brains.

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

10 years ago2009-12-02 Yusuke Sato <yusukes@chromium.org>
eric@webkit.org [Thu, 3 Dec 2009 06:14:23 +0000 (06:14 +0000)]
2009-12-02  Yusuke Sato  <yusukes@chromium.org>

        Reviewed by Eric Seidel.

        Sanitize web fonts using the OTS library
        https://bugs.webkit.org/show_bug.cgi?id=31106

        Add support for OpenType sanitizer (OTS). It parses OpenType files (from @font-face)
        and attempts to validate and sanitize them. We hope this reduces the attack surface
        of the system font libraries.

        * WebCore.gyp/WebCore.gyp: Added dependency to (chromium_src_dir)/third_party/ots/ library.
        * WebCore.gypi: Added new files below.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * platform/graphics/chromium/FontCustomPlatformData.cpp: Validate and transcode a web font.
        (WebCore::createFontCustomPlatformData):
        * platform/graphics/mac/FontCustomPlatformData.cpp: Ditto.
        (WebCore::createFontCustomPlatformData):
        * platform/graphics/opentype/OpenTypeSanitizer.cpp: Added.
        (WebCore::OpenTypeSanitizer::sanitize):
        * platform/graphics/opentype/OpenTypeSanitizer.h: Added.
        (WebCore::OpenTypeSanitizer::OpenTypeSanitizer):
2009-12-02  Yusuke Sato  <yusukes@chromium.org>

        Reviewed by Eric Seidel.

        Sanitize web fonts using the OTS library
        https://bugs.webkit.org/show_bug.cgi?id=31106

        * DEPS: Added dependency to the OpenType sanitizer library.
        * features.gypi: Added ENABLE_OPENTYPE_SANITIZER=1.

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

10 years ago2009-12-02 Eric Seidel <eric@webkit.org>
eric@webkit.org [Thu, 3 Dec 2009 05:31:48 +0000 (05:31 +0000)]
2009-12-02  Eric Seidel  <eric@webkit.org>

        Reviewed by Adam Barth.

        REGRESSION(51595): commit-queue is throwing exceptions
        https://bugs.webkit.org/show_bug.cgi?id=32083

        * Scripts/modules/commands/queues.py:
         - Don't use default value of [] as it ends up getting shared.
         - Make log_progress accept arrays of ints as well as strings.
         - Return an exit code from execute()
        * Scripts/modules/commands/queues_unittest.py: Added.
         - Test to make sure log_progress will accept ints.
         - Test to make sure run_bugzilla_tool will accept ints.
        * Scripts/modules/workqueue.py:
         - Print the stack trace on unexpected exceptions for easier debugging.
        * Scripts/run-webkit-unittests:
         - Add queues_unittest.

        * Scripts/modules/commands/queues.py:
        * Scripts/modules/commands/queues_unittest.py: Copied from WebKitTools/Scripts/modules/commands/commandtest.py.
        * Scripts/modules/mock_bugzillatool.py:
        * Scripts/modules/workqueue.py:
        * Scripts/run-webkit-unittests:

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

10 years agoWeb Inspector frontend heap allocates ScriptFunctionCall which is unsafe
oliver@apple.com [Thu, 3 Dec 2009 05:20:24 +0000 (05:20 +0000)]
Web Inspector frontend heap allocates ScriptFunctionCall which is unsafe
https://bugs.webkit.org/show_bug.cgi?id=32098

Reviewed by Sam Weinig.

Fix is simply to make the ScriptFunctionCall stack allocated as nature intended
Doing this required adding an appendArgument(char*) to ScriptFunctionCall so
that an explicit String cast would not be necessary.

To prevent something like this happening again in future i've added private
operator new implementations to ScriptFunctionCall making this type of mistake
produce errors when compiling.

Test case: Inspector tests now pass with GC on every alloc enabled.

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