WebKit-https.git
10 years ago2009-12-13 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 13 Dec 2009 20:31:02 +0000 (20:31 +0000)]
2009-12-13  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Sam Weinig.

        Use JSON.parse instead of eval for Web-hosted SunSpider results processing
        https://bugs.webkit.org/show_bug.cgi?id=32490

        * hosted/json2.js: Added. Incorporated from json.org
        * resources/driver-TEMPLATE.html: Fix an HTML validation bug I noticed.
        * resources/results-TEMPLATE.html: Use JSON.parse instead of eval to process
        results.

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

10 years agoReviewed by Eric Seidel.
jeremy@chromium.org [Sun, 13 Dec 2009 13:33:40 +0000 (13:33 +0000)]
Reviewed by Eric Seidel.

Add code to allow toggling ATSUI/Core Text rendering at runtime in ComplexTextController.
https://bugs.webkit.org/show_bug.cgi?id=31802

The goal here is to allow for a zero runtime hit for ports that decide to select
the API at compile time.
When both USE(ATSUI) and USE(CORE_TEXT) are true, the API is toggled
at runtime.  Core Text is used for OS Versions >= 10.6.

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/ComplexTextController.cpp:
(WebCore::shouldUseATSUIAPI): Cache decision about which API to use.
(WebCore::ComplexTextController::ComplexTextRun::indexAt):
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Stub function to call through
to ATSUI/Core text variants.
(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): The actual work for object construction
is delegate to createTextRunFromFontDataATSUI/createTextRunFromFontDataCoreText.
* platform/graphics/mac/ComplexTextController.h:
* platform/graphics/mac/ComplexTextControllerATSUI.cpp:
(WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Small style fix.
(WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataATSUI):
(WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
* platform/graphics/mac/ComplexTextControllerCoreText.cpp:
(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
(WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataCoreText):
(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):

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

10 years ago2009-12-13 Christian Dywan <christian@twotoasts.de>
christian@webkit.org [Sun, 13 Dec 2009 11:32:15 +0000 (11:32 +0000)]
2009-12-13  Christian Dywan  <christian@twotoasts.de>

        Reviewed by Holger Freyther.

        http://bugs.webkit.org/show_bug.cgi?id=31014
        [Gtk] Build fails with gtk+-2.10 (no tested with older releases)

        Guard GTK+ 2.12 specific tooltip code with #ifdef.

        * WebCoreSupport/ChromeClientGtk.cpp:
        (WebKit::ChromeClient::mouseDidMoveOverElement):

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

10 years ago2009-12-13 Simon Hausmann <hausmann@webkit.org>
eric@webkit.org [Sun, 13 Dec 2009 09:31:41 +0000 (09:31 +0000)]
2009-12-13  Simon Hausmann  <hausmann@webkit.org>

        Reviewed by Holger Freyther.

        [Qt] Re-enable QWebView::renderHints property for Qt for Symbian

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

        The bug in Qt's moc that triggered a linking error when declaring this
        property has been fixed and we can remove the workaround.

        * Api/qwebview.h:

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

10 years ago2009-12-13 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Sun, 13 Dec 2009 08:44:00 +0000 (08:44 +0000)]
2009-12-13  Eric Carlson  <eric.carlson@apple.com>

        No review, rolling out r52059 until I can generate new Tiger
        test results.

        * rendering/RenderThemeMac.mm:
        (WebCore::mediaControllerTheme):

2009-12-13  Eric Carlson  <eric.carlson@apple.com>

        No review, rolling out r52059 until I can generate new Tiger test
        results.

        * platform/mac-leopard/Skipped:
        * platform/mac-leopard/media/controls-after-reload-expected.txt:
        * platform/mac-leopard/media/controls-drag-timebar-expected.txt:
        * platform/mac-leopard/media/controls-strict-expected.txt:
        * platform/mac-leopard/media/controls-styling-expected.txt:
        * platform/mac-leopard/media/video-controls-rendering-expected.checksum:
        * platform/mac-leopard/media/video-controls-rendering-expected.txt:
        * platform/mac-leopard/media/video-display-toggle-expected.checksum:
        * platform/mac-leopard/media/video-display-toggle-expected.txt:
        * platform/mac-leopard/media/video-no-audio-expected.txt:
        * platform/mac-leopard/media/video-zoom-controls-expected.checksum:
        * platform/mac-leopard/media/video-zoom-controls-expected.txt:
        * platform/mac/media/audio-controls-rendering-expected.checksum:
        * platform/mac/media/video-zoom-expected.checksum:

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

10 years agoRubber-stamped by Dan Bernstein.
weinig@apple.com [Sun, 13 Dec 2009 04:45:31 +0000 (04:45 +0000)]
Rubber-stamped by Dan Bernstein.

Fix the EXPERIMENTAL_SINGLE_VIEW_MODE build.

* Configurations/WebCore.xcconfig:
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clearDragState):
* page/mac/DragControllerMac.mm:
(WebCore::DragController::isCopyKeyDown):
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::eventActivatedView):
* platform/PlatformKeyboardEvent.h:
* platform/PlatformMouseEvent.h:
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/ScrollView.cpp:
(WebCore::ScrollView::wheelEvent):
* platform/mac/KeyEventMac.mm:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/mac/PlatformMouseEventMac.mm:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/mac/PopupMenuMac.mm:
(WebCore::PopupMenu::show):
* platform/mac/WidgetMac.mm:

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

10 years ago2009-12-12 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 13 Dec 2009 04:26:23 +0000 (04:26 +0000)]
2009-12-12  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Enable Web-hosted version of SunSpider to handle multiple versions
        https://bugs.webkit.org/show_bug.cgi?id=32478

        * make-hosted: Now generate the hosted version to be able to run both the
        0.9 and the 0.9.1 test suites.
        * hosted: Modified property svn:ignore.
        * hosted/sunspider-driver.html: Removed.
        * hosted/sunspider-results.html: Removed.
        * hosted/sunspider.html:
        * hosted/versions.html: Added.
        * resources/TEMPLATE.html:
        * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-driver.html.
        * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-results.html.

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

10 years agoRubber-stamped by Dan Bernstein.
weinig@apple.com [Sun, 13 Dec 2009 03:59:30 +0000 (03:59 +0000)]
Rubber-stamped by Dan Bernstein.

Fix the !ENABLE(VIDEO) build.

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForVideo):

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

10 years agoRubber-stamped by Dan Bernstein.
weinig@apple.com [Sun, 13 Dec 2009 03:56:00 +0000 (03:56 +0000)]
Rubber-stamped by Dan Bernstein.

Fix the !ENABLE(DATABASE) build.

* storage/SQLTransactionClient.cpp:
* storage/SQLTransactionClient.h:
* storage/SQLTransactionCoordinator.cpp:
* storage/SQLTransactionCoordinator.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):

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

10 years ago2009-12-12 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Sun, 13 Dec 2009 03:28:42 +0000 (03:28 +0000)]
2009-12-12  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Dan Bernstein.

        <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows

        Use MediaControllerThemeQuickTime on Leopard.

        * rendering/RenderThemeMac.mm:
        (WebCore::mediaControllerTheme):

2009-12-12  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Dan Bernstein.

        <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows

        Regenerate layout and pixel test results for the new UI.

        * platform/mac-leopard/Skipped:
        * platform/mac-leopard/media/controls-after-reload-expected.txt:
        * platform/mac-leopard/media/controls-drag-timebar-expected.txt:
        * platform/mac-leopard/media/controls-strict-expected.txt:
        * platform/mac-leopard/media/controls-styling-expected.txt:
        * platform/mac-leopard/media/video-controls-rendering-expected.checksum:
        * platform/mac-leopard/media/video-controls-rendering-expected.png:
        * platform/mac-leopard/media/video-controls-rendering-expected.txt:
        * platform/mac-leopard/media/video-display-toggle-expected.checksum:
        * platform/mac-leopard/media/video-display-toggle-expected.png:
        * platform/mac-leopard/media/video-display-toggle-expected.txt:
        * platform/mac-leopard/media/video-no-audio-expected.txt:
        * platform/mac-leopard/media/video-zoom-controls-expected.checksum:
        * platform/mac-leopard/media/video-zoom-controls-expected.png:
        * platform/mac-leopard/media/video-zoom-controls-expected.txt:
        * platform/mac/media/audio-controls-rendering-expected.checksum:
        * platform/mac/media/audio-controls-rendering-expected.png:
        * platform/mac/media/video-zoom-expected.checksum:
        * platform/mac/media/video-zoom-expected.png:

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

10 years ago2009-12-12 Kenneth Russell <kbr@google.com>
eric@webkit.org [Sun, 13 Dec 2009 03:02:14 +0000 (03:02 +0000)]
2009-12-12  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Errors in WebGL[T]Array set() and get() methods
        https://bugs.webkit.org/show_bug.cgi?id=32456

        Test: fast/canvas/webgl/bug-32456.html

        * fast/canvas/webgl/array-unit-tests.html:
        * fast/canvas/webgl/bug-32456-expected.txt: Added.
        * fast/canvas/webgl/bug-32456.html: Added.
2009-12-12  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Errors in WebGL[T]Array set() and get() methods
        https://bugs.webkit.org/show_bug.cgi?id=32456

        Test: fast/canvas/webgl/bug-32456.html

        * bindings/js/JSWebGLFloatArrayCustom.cpp:
        (WebCore::JSWebGLFloatArray::set):
        * bindings/js/JSWebGLIntArrayCustom.cpp:
        (WebCore::JSWebGLIntArray::set):
        * bindings/js/JSWebGLShortArrayCustom.cpp:
        (WebCore::JSWebGLShortArray::set):
        * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
        (WebCore::JSWebGLUnsignedByteArray::set):
        * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
        (WebCore::JSWebGLUnsignedIntArray::set):
        * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
        (WebCore::JSWebGLUnsignedShortArray::set):
        * bindings/v8/custom/V8WebGLArrayCustom.h:
        (WebCore::setWebGLArray):
        * html/canvas/WebGLFloatArray.idl:
        * html/canvas/WebGLUnsignedIntArray.idl:

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

10 years ago2009-12-12 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 13 Dec 2009 02:18:53 +0000 (02:18 +0000)]
2009-12-12  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Give command-line sunspider the ability to handle multiple suites and versions
        https://bugs.webkit.org/show_bug.cgi?id=32477

        * Scripts/run-sunspider: Updated for changes to command-line parameters.
        * Scripts/sunspider-compare-results: ditto
2009-12-12  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Give command-line sunspider the ability to handle multiple suites and versions
        https://bugs.webkit.org/show_bug.cgi?id=32477

        Each suite/version's set of tests are now in a separate subdirectory of tests/, with a file named LIST
        enumerating the tests. Current suites are:

        sunspider-0.9 - riginal SunSpider content
        sunspider-0.9.1 - SunSpider suite with a few tests fixed (and a few more to come)
        ubench - "ubench" microbenchmark suite
        v8-v4 - version 4 of the v8 benchmark
        parse-only - some parser tests

        Sunspider can now be run with the --suite= parameter to select a
        suite. The default is --suite=sunspider-0.9.

        * .: Modified property svn:ignore to ignore new results directories.
        * make-hosted: Generate based on sunspider-0.9 suite.
        * resources/TEMPLATE.html: Fix an HTML compliance problem.
        * resources/sunspider-standalone-driver.js: Become aware of suite names.
        * sunspider: Modified to handle multiple suites as described above.
        * sunspider-compare-results: ditto
        * tests/LIST: Moved to tests/sunspider-0.9/ and tests/sunspider-0.9.1/
        * tests/LIST-PARSE-ONLY: Moved to parse-only/LIST
        * tests/LIST-UBENCH: Removed.
        * tests/LIST-V8: Removed.
        * tests/3d-cube.js: Moved to tests/sunspider-0.9 and tests/sunspider-0.9.1
        * tests/3d-morph.js: ditto
        * tests/3d-raytrace.js: ditto
        * tests/access-binary-trees.js: ditto
        * tests/access-fannkuch.js: ditto
        * tests/access-nbody.js: ditto
        * tests/access-nsieve.js: ditto
        * tests/bitops-3bit-bits-in-byte.js: ditto
        * tests/bitops-bits-in-byte.js: ditto
        * tests/bitops-bitwise-and.js: ditto
        * tests/bitops-nsieve-bits.js: ditto
        * tests/controlflow-recursive.js: ditto
        * tests/crypto-aes.js: ditto
        * tests/crypto-md5.js: ditto
        * tests/crypto-sha1.js: ditto
        * tests/date-format-tofte.js: ditto
        * tests/date-format-xparb.js: ditto
        * tests/math-cordic.js: ditto
        * tests/math-partial-sums.js: ditto
        * tests/math-spectral-norm.js: ditto
        * tests/regexp-dna.js: ditto
        * tests/string-base64.js: ditto
        * tests/string-fasta.js: ditto
        * tests/string-tagcloud.js: ditto
        * tests/string-unpack-code.js: ditto
        * tests/string-validate-input.js: ditto
        * tests/sunspider-0.9/: Added
        * tests/sunspider-0.9/*.js: Moved from one level up
        * tests/sunspider-0.9.1: Added.
        * tests/sunspider-0.9.1/*.js: Moved from one level up.
        * tests/v8-crypto.js: Moved to v8-v4/ directory.
        * tests/v8-deltablue.js: ditto
        * tests/v8-earley-boyer.js: ditto
        * tests/v8-raytrace.js: ditto
        * tests/v8-regexp.js: ditto
        * tests/v8-richards.js: ditto
        * tests/v8-splay.js: ditto
        * tests/v8-v4: Added.

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

10 years ago2009-12-12 Kenneth Russell <kbr@google.com>
eric@webkit.org [Sat, 12 Dec 2009 23:12:31 +0000 (23:12 +0000)]
2009-12-12  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Update WebGL tests to released versions
        https://bugs.webkit.org/show_bug.cgi?id=32457

        * fast/canvas/webgl/resources/utils3d.js:
        (initWebGL.gl.console.window.console.log):
        (initWebGL):
        (loadShader):
        (makeBox):
        (makeSphere):
        (processLoadObj):
        (doLoadObj):
        (doLoadImageTexture):
2009-12-12  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Update WebGL tests to released versions
        https://bugs.webkit.org/show_bug.cgi?id=32457

        * manual-tests/webgl/Earth.html:
        * manual-tests/webgl/ManyPlanetsDeep.html:
        * manual-tests/webgl/SpinningBox.html:
        * manual-tests/webgl/TeapotPerPixel.html:
        * manual-tests/webgl/TeapotPerVertex.html:
        * manual-tests/webgl/resources/CanvasMatrix.js:
        (CanvasMatrix4.prototype.getAsWebGLFloatArray):
        * manual-tests/webgl/resources/utils3d.js:
        (initWebGL.gl.console.window.console.log):
        (initWebGL):
        (loadShader):
        (makeBox):
        (makeSphere):
        (processLoadObj):
        (doLoadObj):
        (doLoadImageTexture):

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

10 years ago2009-12-12 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Sat, 12 Dec 2009 21:29:36 +0000 (21:29 +0000)]
2009-12-12  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

       <rdar://problem/7453726> Pull shared UI code into WebKit

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

2009-12-12  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

       <rdar://problem/7453726> Pull shared UI code into WebKit

       Update media tests for small change in timeline slider thumb position

        * platform/mac/media/audio-controls-rendering-expected.txt:
        * platform/mac/media/controls-after-reload-expected.txt:
        * platform/mac/media/controls-styling-expected.txt:
        * platform/mac/media/video-no-audio-expected.txt:
        * platform/mac/media/video-zoom-controls-expected.txt:

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

10 years ago2009-12-12 Christian Dywan <christian@twotoasts.de>
christian@webkit.org [Sat, 12 Dec 2009 19:10:38 +0000 (19:10 +0000)]
2009-12-12  Christian Dywan  <christian@twotoasts.de>

        Reviewed by Dirk Schulze.

        Remove the include to SVGFEDisplacementMap.h, it's not needed at all.

        * platform/graphics/filters/FEComponentTransfer.h:

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

10 years agoNot reviewed, fixing previous comment.
mjs@apple.com [Sat, 12 Dec 2009 18:32:14 +0000 (18:32 +0000)]
Not reviewed, fixing previous comment.

Remove accidental change to sunspider-compare-results

* Scripts/sunspider-compare-results:

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

10 years ago2009-12-12 Christian Dywan <christian@twotoasts.de>
christian@webkit.org [Sat, 12 Dec 2009 18:24:42 +0000 (18:24 +0000)]
2009-12-12  Christian Dywan  <christian@twotoasts.de>

        Rubber-stamped by Maciej Stachowiak.

        Only include SVGFEDisplacementMap.h if SVG is enabled.

        * platform/graphics/filters/FEComponentTransfer.h:

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

10 years ago2009-12-11 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sat, 12 Dec 2009 17:52:21 +0000 (17:52 +0000)]
2009-12-11  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Unify codegen for forward and backward variants of branches
        https://bugs.webkit.org/show_bug.cgi?id=32463

        * jit/JIT.h:
        (JSC::JIT::emit_op_loop): Implemented in terms of forward variant.
        (JSC::JIT::emit_op_loop_if_true): ditto
        (JSC::JIT::emitSlow_op_loop_if_true): ditto
        (JSC::JIT::emit_op_loop_if_false): ditto
        (JSC::JIT::emitSlow_op_loop_if_false): ditto
        (JSC::JIT::emit_op_loop_if_less): ditto
        (JSC::JIT::emitSlow_op_loop_if_less): ditto
        * jit/JITOpcodes.cpp:

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

10 years ago2009-12-11 Christian Dywan <christian@twotoasts.de>
christian@webkit.org [Sat, 12 Dec 2009 17:14:39 +0000 (17:14 +0000)]
2009-12-11  Christian Dywan  <christian@twotoasts.de>

        Reviewed by Eric Seidel.

        [GTK] Build with --disable-svg is broken
        http://bugs.webkit.org/show_bug.cgi?id=32361

        * webkit/webkitwebframe.cpp:
        (webkit_web_frame_pause_svg_animation): Fix ENABLE(SVG) guards.

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

10 years ago2009-12-12 Dirk Schulze <krit@webkit.org>
eric@webkit.org [Sat, 12 Dec 2009 10:20:57 +0000 (10:20 +0000)]
2009-12-12  Dirk Schulze  <krit@webkit.org>

        Reviewed by Eric Seidel.

        [Cairo][Qt] Alpha blending in SVG filters is wrong
        https://bugs.webkit.org/show_bug.cgi?id=32427

        This patch is a follow-up to:
        http://trac.webkit.org/changeset/51950
        It fixes the alpha blending for Cairo and Qt on SVG Filters.

        Covered by: * LayoutTests/svg/filters/feGaussianBlur.svg
                    * LayoutTests/svg/filters/feComposite.svg
                     and others.

        * platform/graphics/cairo/ImageBufferCairo.cpp:
        (WebCore::ImageBuffer::platformTransformColorSpace):
        * platform/graphics/qt/ImageBufferQt.cpp:
        (WebCore::ImageBuffer::platformTransformColorSpace):

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

10 years ago[Qt] Missing forward entries when dumping back/forward list
ossy@webkit.org [Sat, 12 Dec 2009 10:13:04 +0000 (10:13 +0000)]
[Qt] Missing forward entries when dumping back/forward list
https://bugs.webkit.org/show_bug.cgi?id=32470

Failing tests added to skiplist until bug fixed.

* platform/qt/Skipped:
- http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html added
- http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html added

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

10 years agoRolled out my last patch because the bots were crashing
ggaren@apple.com [Sat, 12 Dec 2009 07:20:27 +0000 (07:20 +0000)]
Rolled out my last patch because the bots were crashing

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

10 years agoAllow WTFs concept of the main thread to differ from pthreads when necessary.
weinig@apple.com [Sat, 12 Dec 2009 06:30:47 +0000 (06:30 +0000)]
Allow WTFs concept of the main thread to differ from pthreads when necessary.

Reviewed by Anders Carlsson.

* wtf/ThreadingPthreads.cpp:
(WTF::initializeThreading):
(WTF::isMainThread):
* wtf/mac/MainThreadMac.mm:
(WTF::initializeMainThreadPlatform):
(WTF::scheduleDispatchFunctionsOnMainThread):

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

10 years agoWindows build fix: Export some new symbols.
ggaren@apple.com [Sat, 12 Dec 2009 06:22:35 +0000 (06:22 +0000)]
Windows build fix: Export some new symbols.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

10 years agoWindows build fix: Removed an incorrect #ifdef.
ggaren@apple.com [Sat, 12 Dec 2009 06:02:24 +0000 (06:02 +0000)]
Windows build fix: Removed an incorrect #ifdef.

* bindings/js/GCController.cpp:

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

10 years agoUnreviewed build fix.
eroman@chromium.org [Sat, 12 Dec 2009 05:50:17 +0000 (05:50 +0000)]
Unreviewed build fix.

        [V8] Add a method on ScriptController to get it compiling after http://trac.webkit.org/changeset/52033.

        * bindings/v8/ScriptController.cpp:
        (WebCore::ScriptController::anyPageIsProcessingUserGesture):
        * bindings/v8/ScriptController.h:

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

10 years agoWindows build fix: Removed some old exports.
ggaren@apple.com [Sat, 12 Dec 2009 05:49:16 +0000 (05:49 +0000)]
Windows build fix: Removed some old exports.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

10 years agoWindows build fix: Use unsigned instead of uint32_t to avoid dependencies.
ggaren@apple.com [Sat, 12 Dec 2009 05:39:33 +0000 (05:39 +0000)]
Windows build fix: Use unsigned instead of uint32_t to avoid dependencies.

* wtf/StdLibExtras.h:
(WTF::bitCount):

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

10 years agoJavaScriptCore: Changed GC from mark-sweep to mark-allocate.
ggaren@apple.com [Sat, 12 Dec 2009 05:29:56 +0000 (05:29 +0000)]
JavaScriptCore: Changed GC from mark-sweep to mark-allocate.

Reviewed by Sam Weinig.

Added WeakGCMap to keep WebCore blissfully ignorant about objects that
have become garbage but haven't run their destructors yet.

1% SunSpider speedup.
7.6% v8 speedup (37% splay speedup).
17% speedup on bench-alloc-nonretained.js.
18% speedup on bench-alloc-retained.js.

* API/JSBase.cpp:
(JSGarbageCollect):
* API/JSContextRef.cpp:
* JavaScriptCore.exp:
* JavaScriptCore.xcodeproj/project.pbxproj: Updated for renames and new
files.

* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions): Updated to use the Collector
iterator abstraction.

* jsc.cpp:
(functionGC): Updated for rename.

* runtime/Collector.cpp: Slightly reduced the number of allocations per
collection, so that small workloads only allocate on collector block,
rather than two.

(JSC::Heap::Heap): Updated to use the new allocateBlock function.

(JSC::Heap::destroy): Updated to use the new freeBlocks function.

(JSC::Heap::allocateBlock): New function to initialize a block when
allocating it.

(JSC::Heap::freeBlock): Consolidated the responsibility for running
destructors into this function.

(JSC::Heap::freeBlocks): Updated to use freeBlock.

(JSC::Heap::recordExtraCost): Sweep the heap in this reporting function,
so that allocation, which is more common, doesn't have to check extraCost.

(JSC::Heap::heapAllocate): Run destructors right before recycling a
garbage cell. This has better cache utilization than a separate sweep phase.

(JSC::Heap::resizeBlocks):
(JSC::Heap::growBlocks):
(JSC::Heap::shrinkBlocks): New set of functions for managing the size of
the heap, now that the heap doesn't maintain any information about its
size.

(JSC::isPointerAligned):
(JSC::isHalfCellAligned):
(JSC::isPossibleCell):
(JSC::isCellAligned):
(JSC::Heap::markConservatively): Cleaned up this code a bit.

(JSC::Heap::clearMarkBits):
(JSC::Heap::markedCells): Some helper functions for examining the the mark
bitmap.

(JSC::Heap::sweep): Simplified this function by using a DeadObjectIterator.

(JSC::Heap::markRoots): Reordered some operations for clarity.

(JSC::Heap::objectCount):
(JSC::Heap::addToStatistics):
(JSC::Heap::statistics): Rewrote these functions to calculate an object
count on demand, since the heap doesn't maintain this information by
itself.

(JSC::Heap::reset): New function for resetting the heap once we've
exhausted heap space.

(JSC::Heap::collectAllGarbage): This function matches the old collect()
behavior, but it's now an uncommon function used only by API.

* runtime/Collector.h:
(JSC::CollectorBitmap::count):
(JSC::CollectorBitmap::isEmpty): Added some helper functions for managing
the collector mark bitmap.

(JSC::Heap::reportExtraMemoryCost): Changed reporting from cell equivalents
to bytes, so it's easier to understand.

* runtime/CollectorHeapIterator.h:
(JSC::CollectorHeapIterator::CollectorHeapIterator):
(JSC::CollectorHeapIterator::operator!=):
(JSC::CollectorHeapIterator::operator*):
(JSC::CollectorHeapIterator::advance):
(JSC::::LiveObjectIterator):
(JSC::::operator):
(JSC::::DeadObjectIterator):
(JSC::::ObjectIterator): New iterators for encapsulating details about
heap layout, and what's live and dead on the heap.

* runtime/JSArray.cpp:
(JSC::JSArray::putSlowCase):
(JSC::JSArray::increaseVectorLength): Delay reporting extra cost until
we're fully constructed, so the heap mark phase won't visit us in an
invalid state.

* runtime/JSCell.h:
(JSC::JSCell::):
(JSC::JSCell::createDummyStructure):
(JSC::JSCell::JSCell):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h: Added a dummy cell to simplify allocation logic.

* runtime/JSString.h:
(JSC::jsSubstring): Don't report extra cost for substrings, since they
share a buffer that's already reported extra cost.

* runtime/Tracing.d:
* runtime/Tracing.h: Changed these dtrace hooks not to report object
counts, since they're no longer cheap to compute.

* runtime/UString.h: Updated for renames.

* runtime/WeakGCMap.h: Added.
(JSC::WeakGCMap::isEmpty):
(JSC::WeakGCMap::uncheckedGet):
(JSC::WeakGCMap::uncheckedBegin):
(JSC::WeakGCMap::uncheckedEnd):
(JSC::::get):
(JSC::::take):
(JSC::::set):
(JSC::::uncheckedRemove): Mentioned above.

* wtf/StdLibExtras.h:
(WTF::bitCount): Added a bit population count function, so the heap can
count live objects to fulfill statistics questions.

JavaScriptGlue: Changed GC from mark-sweep to mark-allocate.

Reviewed by Sam Weinig.

* JavaScriptGlue.cpp:
(JSCollect): Updated for rename. Fixed a bug where JSGlue would not check
to avoid nested GC calls.

WebCore: Changed GC from mark-sweep to mark-allocate.

Reviewed by Sam Weinig.

* ForwardingHeaders/runtime/WeakGCMap.h: Added.
* bindings/js/GCController.cpp:
(WebCore::collect):
(WebCore::GCController::gcTimerFired):
(WebCore::GCController::garbageCollectNow): Updated for rename.

* bindings/js/JSDOMBinding.cpp:
(WebCore::removeWrappers):
(WebCore::hasCachedDOMObjectWrapperUnchecked):
(WebCore::hasCachedDOMObjectWrapper):
(WebCore::hasCachedDOMNodeWrapperUnchecked):
(WebCore::forgetDOMObject):
(WebCore::forgetDOMNode):
(WebCore::isObservableThroughDOM):
(WebCore::markDOMNodesForDocument):
(WebCore::markDOMObjectWrapper):
(WebCore::markDOMNodeWrapper):
* bindings/js/JSDOMBinding.h: Changed DOM wrapper maps to be WeakGCMaps.
Don't ASSERT that an item must be in the WeakGCMap when its destructor
runs, since it might have been overwritten in the map first.

* bindings/js/JSDocumentCustom.cpp:
(WebCore::toJS): Changed Document from a DOM object wrapper to a DOM node
wrapper, to simplify some code.

* bindings/js/JSInspectedObjectWrapper.cpp:
(WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
(WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper):
* bindings/js/JSInspectorCallbackWrapper.cpp: Use a WeakGCMap for these
wrappers.

* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::markChildren): Updated for WeakGCMap and Document using
a DOM node wrapper instead of a DOM object wrapper.

* bindings/js/JSSVGPODTypeWrapper.h:
(WebCore::JSSVGDynamicPODTypeWrapperCache::wrapperMap):
(WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
(WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
(WebCore::::~JSSVGDynamicPODTypeWrapper): Shined a small beam of sanity
on this code. Use hashtable-based lookup in JSSVGPODTypeWrapper.h instead
of linear lookup through iteration, since that's what hashtables were
invented for. Make JSSVGPODTypeWrapper.h responsible for reomving itself
from the table, instead of its JS wrapper, to decouple these objects from
GC, and because these objects are refCounted, not solely owned by their
JS wrappers.

* bindings/scripts/CodeGeneratorJS.pm:
* dom/Document.h: Adopted changes above.

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

10 years ago2009-12-11 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Sat, 12 Dec 2009 04:56:51 +0000 (04:56 +0000)]
2009-12-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, build fix.

        [V8] Change bindings to catch up with http://trac.webkit.org/changeset/52033.

        * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
        (WebCore::CALLBACK_FUNC_DECL): Added retrieval of calling frame and passing
          to the submit method.

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

10 years agoPut -umbrella linker flag into a variable so that it can be overridden.
weinig@apple.com [Sat, 12 Dec 2009 02:43:24 +0000 (02:43 +0000)]
Put -umbrella linker flag into a variable so that it can be overridden.

Reviewed by Mark Rowe.

* Configurations/WebCore.xcconfig:

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

10 years agoWebKit/qt: Unreviewed build fix for Qt versions < 4.6.
yael.aharon@nokia.com [Sat, 12 Dec 2009 02:31:59 +0000 (02:31 +0000)]
WebKit/qt: Unreviewed build fix for Qt versions < 4.6.

* tests/qwebframe/tst_qwebframe.cpp:
* tests/qwebview/tst_qwebview.cpp:

WebKitTools: Unreviewed build fix for Qt versions < 4.6.
Guard every slot individually with #ifdef.

* DumpRenderTree/qt/EventSenderQt.cpp:
* DumpRenderTree/qt/EventSenderQt.h:

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

10 years ago2009-12-11 Shinichiro Hamaji <hamaji@chromium.org>
hamaji@chromium.org [Sat, 12 Dec 2009 01:50:40 +0000 (01:50 +0000)]
2009-12-11  Shinichiro Hamaji  <hamaji@chromium.org>

        Reviewed by Darin Adler.

        body with display:inline causes crash
        https://bugs.webkit.org/show_bug.cgi?id=32371

        * fast/inline/inline-body-crash-expected.txt: Copied from LayoutTests/fast/css-generated-content/absolute-position-inside-inline-expected.txt.
        * fast/inline/inline-body-crash.html: Added.
        * fast/inline/inline-body-with-scrollbar-crash-expected.txt: Copied from LayoutTests/fast/css-generated-content/absolute-position-inside-inline-expected.txt.
        * fast/inline/inline-body-with-scrollbar-crash.html: Added.
2009-12-11  Shinichiro Hamaji  <hamaji@chromium.org>

        Reviewed by Darin Adler.

        body with display:inline causes crash
        https://bugs.webkit.org/show_bug.cgi?id=32371

        Tests: fast/inline/inline-body-crash.html
               fast/inline/inline-body-with-scrollbar-crash.html

        * page/FrameView.cpp:
        (WebCore::FrameView::createScrollbar):
        (WebCore::FrameView::layout):

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

10 years agoRubberstamped by Sam Weinig.
beidson@apple.com [Sat, 12 Dec 2009 01:40:50 +0000 (01:40 +0000)]
Rubberstamped by Sam Weinig.

https://webkit.org/b/22851 - Remove defunct FIXME.

* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::HTMLPlugInElement): This flag was removed completely
  from the HTMLFrameOwnerElement chain of classes.

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

10 years agoSmall refactoring to get rid of some extra unneeded selection-related work
darin@apple.com [Sat, 12 Dec 2009 01:38:41 +0000 (01:38 +0000)]
Small refactoring to get rid of some extra unneeded selection-related work
in RenderLayer::scrollToOffset and separate caret and range selection
logic in FrameView::layout. This may be useful later when changing how
the range selection logic works to fix layout reentrancy problems.

Reviewed by Dan Bernstein.

* page/Frame.cpp: Removed invalidateSelection.
* page/Frame.h: Ditto.

* page/FrameView.cpp:
(WebCore::FrameView::layout): Call SelectionController::setNeedsLayout
and Frame::selectionLayoutChanged instead of calling
Frame::invalidateSelection, which was just a function that called
both of those others.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollToOffset): Call
SelectionController::setNeedsLayout instead of calling
Frame::invalidateSelection. This call site only needs the caret-related
work in that first function, not the other work formerly done by
Frame::invalidateSelection. The caret works outside the normal
painting and rendering system, and the range selection highlight is
more or less inside it and doesn't need special handling when scrolling.

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

10 years ago<rdar://problem/7342725> and https://webkit.org/b/32383
beidson@apple.com [Sat, 12 Dec 2009 01:34:17 +0000 (01:34 +0000)]
<rdar://problem/7342725> and https://webkit.org/b/32383
Selecting article text at sfgate.com results in spurious back/forward entries

Reviewed by Darin Adler.

WebCore:

If an iframe had a form and that form is submitted by javascript, IE and Opera don't add back/forward entries.

In the case where the frame was added dynamically via createElement(), Firefox would like to add a back entry
but has a bug that prevents this.

Therefore by a bizarre coincidence, WebKit is the loner and the only engine affected by sfgate.com's technique.

This patch changes us to willfully match IE and Opera and fixes sfgate.com in the process.

Tests: http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html
       http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html

Capture whether the form was submitted by javascript:
* loader/FormState.cpp:
(WebCore::FormState::FormState):
(WebCore::FormState::create):
* loader/FormState.h:
(WebCore::FormState::formSubmissionTrigger):

When deciding the value of the lockBackForwardList variable, take formSubmissionTrigger() into account:
* loader/RedirectScheduler.cpp:
(WebCore::RedirectScheduler::scheduleFormSubmission):

Rearrange the public HTMLFormElement::submit() method to be called only from DOM or JS bindings,
and figure out the rest of the parameters for an internal submit() call including the formSubmissionTrigger:
* bindings/js/JSHTMLFormElementCustom.cpp:
(WebCore::JSHTMLFormElement::submit):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::prepareSubmit):
(WebCore::HTMLFormElement::submit):
* html/HTMLFormElement.h:

LayoutTests:

* http/tests/navigation/dynamic-iframe-dynamic-form-back-entry-expected.txt: Added.
* http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html: Added.
* http/tests/navigation/parsed-iframe-dynamic-form-back-entry-expected.txt: Added.
* http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html: Added.
* http/tests/navigation/resources/notify-done.html: Added.

* http/tests/navigation/onload-navigation-iframe-timeout-expected.txt: Updated.

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

10 years ago Reviewed by Darin Adler.
ap@apple.com [Sat, 12 Dec 2009 01:10:35 +0000 (01:10 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=32445
        REGRESSION: http://www.mcafee.com/japan/ displays unstyled

        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::setCSSStyleSheet):
        * html/HTMLLinkElement.cpp:
        (WebCore::HTMLLinkElement::setCSSStyleSheet):
        Add a quirk for mcafee.com/japan (http or https, with or without www).

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

10 years agoMake PlatformWheelEvent.h private instead of project.
weinig@apple.com [Sat, 12 Dec 2009 01:09:46 +0000 (01:09 +0000)]
Make PlatformWheelEvent.h private instead of project.

Reviewed by Dan Bernstein.

* WebCore.xcodeproj/project.pbxproj:

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

10 years ago Added icons for full-screen video on Windows
cmarrin@apple.com [Sat, 12 Dec 2009 00:39:30 +0000 (00:39 +0000)]
    Added icons for full-screen video on Windows
        https://bugs.webkit.org/show_bug.cgi?id=31318

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 23:49:00 +0000 (23:49 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler.

        Support reflections on composited layers
        https://bugs.webkit.org/show_bug.cgi?id=31885

        First part of supporting composited reflections on compositing layers.

        Rename the m_transformLayer member variable to m_structuralLayer, since it
        will get used both for transform layers (for preserve-3d) and to hold a flattening
        layer related to reflections, both of which have similar requirements, and are
        mutually exclusive.

        * platform/graphics/mac/GraphicsLayerCA.h:
        primaryLayer(), hostLayerForSublayers() and layerForSuperlayer() all now return
        a CALayer, since m_structuralLayer isn't always a WebLayer.

        * platform/graphics/mac/GraphicsLayerCA.mm:
        (WebCore::GraphicsLayerCA::commitLayerChanges):
        updateLayerPreserves3D() renamed to updateStructuralLayer()

        (WebCore::GraphicsLayerCA::updateLayerNames):
        New "update" method for updating layer names.

        (WebCore::GraphicsLayerCA::updateSublayerList):
        m_transformLayer -> m_structuralLayer. Also minor refactor to only
        allocate newSublayers in one place.

        (WebCore::GraphicsLayerCA::updateLayerSize):
        (WebCore::GraphicsLayerCA::removeAnimationFromLayer):
        (WebCore::GraphicsLayerCA::hostLayerForSublayers):
        (WebCore::GraphicsLayerCA::layerForSuperlayer):
        m_transformLayer -> m_structuralLayer

        (WebCore::GraphicsLayerCA::updateStructuralLayer):
        Call ensureStructuralLayer() which handles any deltas to the
        structural layer type.

        (WebCore::GraphicsLayerCA::ensureStructuralLayer):
        Handle changes to the structural layer requirements

        (WebCore::GraphicsLayerCA::structuralLayerPurpose):
        Return an enum describing the purpose of the structural layer; for now
        this only returns NoStructuralLayer or StructuralLayerForPreserves3D, but
        will in future also have a value related to reflections.

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=32454
barraclough@apple.com [Fri, 11 Dec 2009 23:34:10 +0000 (23:34 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=32454
Refactor construction of simple strings to avoid string concatenation.

Reviewed by Oliver Hunt.

Building strings through concatenation has a memory and performance cost -
a memory cost since we must over-allocate the buffer to leave space to append
into, and performance in that the string may still require reallocation (and
thus copying during construction).  Instead move the full construction to
within a single function call (makeString), so that the arguments' lengths
can be calculated and an appropriate sized buffer allocated before copying
any characters.

~No performance change (~2% progression on date tests).

* bytecode/CodeBlock.cpp:
(JSC::escapeQuotes):
(JSC::valueToSourceString):
(JSC::constantName):
(JSC::idName):
(JSC::CodeBlock::registerName):
(JSC::regexpToSourceString):
(JSC::regexpName):
* bytecompiler/NodesCodegen.cpp:
(JSC::substitute):
* profiler/Profiler.cpp:
(JSC::Profiler::createCallIdentifier):
* runtime/DateConstructor.cpp:
(JSC::callDate):
* runtime/DateConversion.cpp:
(JSC::formatDate):
(JSC::formatDateUTCVariant):
(JSC::formatTime):
(JSC::formatTimeUTC):
* runtime/DateConversion.h:
(JSC::):
* runtime/DatePrototype.cpp:
(JSC::dateProtoFuncToString):
(JSC::dateProtoFuncToUTCString):
(JSC::dateProtoFuncToDateString):
(JSC::dateProtoFuncToTimeString):
(JSC::dateProtoFuncToGMTString):
* runtime/ErrorPrototype.cpp:
(JSC::errorProtoFuncToString):
* runtime/ExceptionHelpers.cpp:
(JSC::createUndefinedVariableError):
(JSC::createErrorMessage):
(JSC::createInvalidParamError):
* runtime/FunctionPrototype.cpp:
(JSC::insertSemicolonIfNeeded):
(JSC::functionProtoFuncToString):
* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
* runtime/RegExpConstructor.cpp:
(JSC::constructRegExp):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::match):
* runtime/RegExpPrototype.cpp:
(JSC::regExpProtoFuncCompile):
(JSC::regExpProtoFuncToString):
* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncBig):
(JSC::stringProtoFuncSmall):
(JSC::stringProtoFuncBlink):
(JSC::stringProtoFuncBold):
(JSC::stringProtoFuncFixed):
(JSC::stringProtoFuncItalics):
(JSC::stringProtoFuncStrike):
(JSC::stringProtoFuncSub):
(JSC::stringProtoFuncSup):
(JSC::stringProtoFuncFontcolor):
(JSC::stringProtoFuncFontsize):
(JSC::stringProtoFuncAnchor):
* runtime/UString.h:
(JSC::):
(JSC::makeString):

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

10 years ago2009-12-11 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Fri, 11 Dec 2009 23:03:17 +0000 (23:03 +0000)]
2009-12-11  Nate Chapin  <japhet@chromium.org>

        Reviewed by Darin Fisher.

        Expose shouldHideReferrer() in WebSecurityPolicy.

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

        * public/WebSecurityPolicy.h: Add shouldHideReferrer().
        * src/WebSecurityPolicy.cpp:
        (WebKit:: WebSecurityPolicy::shouldHideReferrer): Added.

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=32400
barraclough@apple.com [Fri, 11 Dec 2009 22:57:39 +0000 (22:57 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=32400
Switch remaining cases of string addition to use ropes.

Reviewed by Oliver Hunt.

Re-landing r51975 - added toPrimitiveString method,
performs toPrimitive then subsequent toString operations.

~1% progression on Sunspidey.

* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/JSString.h:
(JSC::JSString::JSString):
(JSC::JSString::appendStringInConstruct):
* runtime/Operations.cpp:
(JSC::jsAddSlowCase):
* runtime/Operations.h:
(JSC::jsString):
(JSC::jsAdd):

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

10 years ago2009-12-11 Eric Seidel <eric@webkit.org>
eric@webkit.org [Fri, 11 Dec 2009 22:39:29 +0000 (22:39 +0000)]
2009-12-11  Eric Seidel  <eric@webkit.org>

        Reviewed by Adam Barth.

        CommandsTest.assert_execute_outputs doesn't check stderr
        https://bugs.webkit.org/show_bug.cgi?id=32352

        Fix assert_execute_outputs to check stderr
        and then fix all the unit tests which needed to
        pass stderr output.

        * Scripts/modules/commands/commandtest.py:
        * Scripts/modules/commands/download_unittest.py:
        * Scripts/modules/commands/upload_unittest.py:

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

10 years agoVersioning.
mrowe@apple.com [Fri, 11 Dec 2009 22:29:25 +0000 (22:29 +0000)]
Versioning.

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 21:50:18 +0000 (21:50 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Build fix for platforms where ACCELERATED_COMPOSITING is not defined.

        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::pauseAnimation):

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 21:35:36 +0000 (21:35 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Build fix, no review.

        Build fix for platforms where ACCELERATED_COMPOSITING is not defined.

        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::startAnimation):

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

10 years agoWindows build fix
aroben@apple.com [Fri, 11 Dec 2009 21:31:14 +0000 (21:31 +0000)]
Windows build fix

JavaScriptCore:

* JavaScriptCore.vcproj/jsc/jscCommon.vsprops: Added
$(WebKitOutputDir)/include/private to the include path.

WebCore:

* platform/graphics/win/WKCACFLayerRenderer.cpp: Removed #include of
non-existent header.

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 21:24:50 +0000 (21:24 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Build fix, no review.

        Build fix for platforms where ACCELERATED_COMPOSITING is not defined.

        * page/animation/ImplicitAnimation.cpp:
        (WebCore::ImplicitAnimation::startAnimation):

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 21:02:50 +0000 (21:02 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler.

        Negative values for animation-delay are ignored (treated as zero)
        https://bugs.webkit.org/show_bug.cgi?id=26150

        When we get the m_startTime for an animation or transition, subtract any negative
        delay so the animation/transition behaves like it started in the past, per spec.

        Tests: animations/negative-delay.html
               transitions/negative-delay.html

        * page/animation/AnimationBase.cpp:
        (WebCore::AnimationBase::updateStateMachine):

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

10 years ago2009-12-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 11 Dec 2009 20:57:27 +0000 (20:57 +0000)]
2009-12-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Accelerated transitions broken when mixed with paused animations
        https://bugs.webkit.org/show_bug.cgi?id=32387

        Synchronization of a mixture of accelerated and software animations occurs via
        a callback from GraphicsLayerCA, which ends up in
        AnimationControllerPrivate::receivedStartTimeResponse(). The time passed in is
        the exact time at which the accelerated animations started, so is used as the
        start time for all animations and transitions which are marked as waiting.

        The bug was that the callback called when re-starting animations that were
        paused sent back an old time value, but this was used to start normal
        transitions. Therefore the transition would start with a stale start time, and
        thus end prematurely.

        The fix is to change the way that GraphicsLayerCA handles paused animations.
        Rather than setting the beginTime of the animation, it uses a beginTime of 0
        and a timeOffset that gets passed down. Thus the callbacks always come with
        beginTime for 'now'.

        Also clarify the role of AnimationBase::endAnimation() by splitting it into
        pauseAnimation() and endAnimation(), and pass down timeOffsets, rather than
        beginTimes when starting and pausing.

        Manual test only, because the bug requires a non-trivial combination of
        animation pausing and transitions which take time, and the bug only shows in
        pixel results.

        * manual-tests/animation/transitions-and-paused-animations.html

        * page/animation/AnimationBase.cpp:
        (WebCore::AnimationBase::updateStateMachine):
        * page/animation/AnimationBase.h:
        (WebCore::AnimationBase::startAnimation):
        (WebCore::AnimationBase::pauseAnimation):
        (WebCore::AnimationBase::endAnimation):
        * page/animation/ImplicitAnimation.cpp:
        (WebCore::ImplicitAnimation::~ImplicitAnimation):
        (WebCore::ImplicitAnimation::startAnimation):
        (WebCore::ImplicitAnimation::endAnimation):
        (WebCore::ImplicitAnimation::onAnimationEnd):
        * page/animation/ImplicitAnimation.h:
        (WebCore::ImplicitAnimation::pauseAnimation):
        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::~KeyframeAnimation):
        (WebCore::KeyframeAnimation::startAnimation):
        (WebCore::KeyframeAnimation::pauseAnimation):
        (WebCore::KeyframeAnimation::endAnimation):
        (WebCore::KeyframeAnimation::onAnimationEnd):
        * page/animation/KeyframeAnimation.h:
        * platform/graphics/GraphicsLayer.h:
        (WebCore::GraphicsLayer::addAnimation):
        (WebCore::GraphicsLayer::pauseAnimation):
        * platform/graphics/mac/GraphicsLayerCA.h:
        (WebCore::GraphicsLayerCA::LayerAnimation::LayerAnimation):
        (WebCore::GraphicsLayerCA::AnimationProcessingAction::AnimationProcessingAction):
        * platform/graphics/mac/GraphicsLayerCA.mm:
        (WebCore::GraphicsLayerCA::addAnimation):
        (WebCore::GraphicsLayerCA::removeAnimationsForKeyframes):
        (WebCore::GraphicsLayerCA::pauseAnimation):
        (WebCore::GraphicsLayerCA::updateLayerAnimations):
        (WebCore::GraphicsLayerCA::setAnimationOnLayer):
        (WebCore::GraphicsLayerCA::pauseAnimationOnLayer):
        (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
        (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::startAnimation):
        (WebCore::RenderLayerBacking::startTransition):
        (WebCore::RenderLayerBacking::animationPaused):
        * rendering/RenderLayerBacking.h:

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

10 years ago2009-12-11 Adam Barth <abarth@webkit.org>
eric@webkit.org [Fri, 11 Dec 2009 20:50:47 +0000 (20:50 +0000)]
2009-12-11  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        [check-webkit-style] False positive for tst_QWebFrame
        https://bugs.webkit.org/show_bug.cgi?id=32436

        Add an exception for function names that start with "tst_".  These are
        used by the Qt unit testing framework.

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

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

10 years agoMove QuartzCorePresent.h to include/private
aroben@apple.com [Fri, 11 Dec 2009 20:46:17 +0000 (20:46 +0000)]
Move QuartzCorePresent.h to include/private

This fixes other projects that use wtf/Platform.h

Rubber-stamped by Steve Falkenburg.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Let VS do its thang.
* JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Write
QuartzCorePresent.h to $(WebKitOutputDir)/include/private.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
* JavaScriptCore.vcproj/WTF/WTFCommon.vsprops:
Added $(WebKitOutputDir)/include/private to the include path.

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

10 years ago2009-12-11 Drew Wilson <atwilson@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 20:38:30 +0000 (20:38 +0000)]
2009-12-11  Drew Wilson  <atwilson@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION: fast/workers/dedicated-worker-lifecycle.html failing intermittently on leopard bot
        https://bugs.webkit.org/show_bug.cgi?id=29344

        dedicated-worker-lifecycle.html relies on a Worker object getting GC'd, which is never guaranteed (due to conservative GC)
        but is especially unreliable on Leopard, so disabling on that platform.

        * platform/mac-leopard/Skipped:
        disabled dedicated-worker-lifecycle.html.

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

10 years agoFix clean builds and everything rebuilding on every build
aroben@apple.com [Fri, 11 Dec 2009 20:30:18 +0000 (20:30 +0000)]
Fix clean builds and everything rebuilding on every build

Reviewed by Sam Weinig.

* JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Don't
write out QuartzCorePresent.h if it exists but is older than
QuartzCore.h. Also, create the directory we write QuartzCorePresent.h
into first.

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

10 years agoFixes <http://webkit.org/b/32399>.
bweinstein@apple.com [Fri, 11 Dec 2009 19:59:11 +0000 (19:59 +0000)]
Fixes <http://webkit.org/b/32399>.
Pan Scrolling Jumps out of frames if the initial location is in a frame that can't be scrolled.

Reviewed by Darin Adler.

WebCore:

When we initially figure out the layer that we should begin scrolling, don't try to jump out
of frames/iFrames to look at the owner document. We don't want to jump out of frames, so we
don't need that logic anymore.

Added a test to make sure that we don't pan scroll if we start to scroll in an empty
iFrame that has a scrollable owner document.

Test: platform/win/fast/events/panScroll-no-iframe-jump.html

* dom/Node.cpp:
(WebCore::Node::defaultEventHandler):

LayoutTests:

Added a test to make sure that we don't pan scroll if we start to scroll in an empty
iFrame that has a scrollable owner document.

* platform/win/fast/events/panScroll-no-iframe-jump-expected.txt: Added.
* platform/win/fast/events/panScroll-no-iframe-jump.html: Added.

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

10 years agoWindows build fix for systems with spaces in their paths
aroben@apple.com [Fri, 11 Dec 2009 19:45:59 +0000 (19:45 +0000)]
Windows build fix for systems with spaces in their paths

* JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Quote some paths.

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

10 years agoCopy QuartzCore header file into Include/JavaScriptCore so Platform.h can find it.
bweinstein@apple.com [Fri, 11 Dec 2009 19:33:28 +0000 (19:33 +0000)]
Copy QuartzCore header file into Include/JavaScriptCore so Platform.h can find it.

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

10 years ago Skip test that is failing because script is not executed after the
kov@webkit.org [Fri, 11 Dec 2009 19:10:31 +0000 (19:10 +0000)]
    Skip test that is failing because script is not executed after the
        view it is on is destroyed.
        See https://bugs.webkit.org/show_bug.cgi?id=32441

        * platform/gtk/Skipped:

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

10 years agoFixes <http://webkit.org/b/32303>.
bweinstein@apple.com [Fri, 11 Dec 2009 18:46:14 +0000 (18:46 +0000)]
Fixes <http://webkit.org/b/32303>.
Middle-mouse button not firing mousedown DOM event when autoscroll happens.

Reviewed by Adam Roben.

WebCore:

This fix moves the pan scrolling code into Node.cpp, as part of the default event handler.
We get two wins out of this:
    1) Mousedown DOM events are now fired before pan scrolling.
    2) Calling event.preventDefault() on a middle mouse button will now prevent pan scrolling.

Added tests to show that middle mousedown DOM events are fired when panscrolling happens, and
that when event.preventDefault is called, pan scrolling doesn't happen.

Tests: platform/win/fast/events/panScroll-event-fired.html
       platform/win/fast/events/panScroll-preventDefault.html

* dom/Node.cpp:
(WebCore::Node::defaultEventHandler): Moved pan scrolling starting code to here.
* page/EventHandler.cpp:
(WebCore::EventHandler::startPanScrolling): Function to initialize scrolling variables and start timer.
(WebCore::EventHandler::handleMousePressEvent): From here.
* page/EventHandler.h:

LayoutTests:

Added tests to show that middle mousedown DOM events are fired when panscrolling happens, and
that when event.preventDefault is called, pan scrolling doesn't happen.

* platform/win/fast/events/panScroll-event-fired-expected.txt: Added.
* platform/win/fast/events/panScroll-event-fired.html: Added.
* platform/win/fast/events/panScroll-preventDefault-expected.txt: Added.
* platform/win/fast/events/panScroll-preventDefault.html: Added.

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

10 years agoforgot to save Changelog
cmarrin@apple.com [Fri, 11 Dec 2009 18:31:25 +0000 (18:31 +0000)]
forgot to save Changelog

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

10 years ago Delay load DLLs for accelerated compositing
cmarrin@apple.com [Fri, 11 Dec 2009 18:29:01 +0000 (18:29 +0000)]
    Delay load DLLs for accelerated compositing
        https://bugs.webkit.org/show_bug.cgi?id=31856

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

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

        Reviewed by Darin Fisher.

        Adds an Android-specific implementation of initializeMaximumHTTPConnectionCountPerHost.
        https://bugs.webkit.org/show_bug.cgi?id=31810

        * platform/network/ResourceRequestBase.cpp: Modified. Disable default implementation
            of initializeMaximumHTTPConnectionCountPerHost for Android.
        * platform/network/android: Added.
        * platform/network/android/ResourceRequestAndroid.cpp: Added.
        (WebCore::initializeMaximumHTTPConnectionCountPerHost): Android-specific implementation.

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

10 years ago2009-12-11 Avi Drissman <avi@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 18:16:13 +0000 (18:16 +0000)]
2009-12-11  Avi Drissman  <avi@chromium.org>

        Reviewed by Darin Fisher.

        Tickmarks in the scrollbar are not cleared for non-main frames
        https://bugs.webkit.org/show_bug.cgi?id=32385

        * src/WebFrameImpl.cpp:
        (WebKit::WebFrameImpl::stopFinding):

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

10 years ago2009-12-11 Kent Tamura <tkent@chromium.org>
tkent@chromium.org [Fri, 11 Dec 2009 18:13:55 +0000 (18:13 +0000)]
2009-12-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Darin Fisher.

        Add acceptTypes() method to FileChooser.
        https://bugs.webkit.org/show_bug.cgi?id=32429

        This method returns an 'accept' attribute value of the
        corresponding INPUT element. A ChromeClient::runOpenPanel()
        implementation can refer it through a FileChooser instance to
        support type-restricted file selecting.

        This makes no user-visible changes for now.

        * platform/FileChooser.h:
        (WebCore::FileChooser::acceptTypes):
        * rendering/RenderFileUploadControl.cpp:
        (WebCore::RenderFileUploadControl::acceptTypes):
        * rendering/RenderFileUploadControl.h:

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

10 years ago[Qt][LayoutTestController] Output of document.write() is vanished by waitUntilDone...
ossy@webkit.org [Fri, 11 Dec 2009 18:06:52 +0000 (18:06 +0000)]
[Qt][LayoutTestController] Output of document.write() is vanished by waitUntilDone()/notifyDone()
https://bugs.webkit.org/show_bug.cgi?id=32437

* platform/qt/Skipped: http/tests/misc/percent-sign-in-form-field-name.html added until bug fixed.

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

10 years ago2009-12-11 Victor Wang <victorw@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 18:03:42 +0000 (18:03 +0000)]
2009-12-11  Victor Wang  <victorw@chromium.org>

        Reviewed by Darin Fisher.

        Changed PopupMenuChromium to keep the value selected from
        keyboard when popup is closed.

        The problem is Chromium does not fire the onchange event
        when the popup is closed if an item is selected via
        keyboard by typing the first char of the item. This makes
        chromium popup not having consistent behaviours and also
        behaves differently from other major browsers.
        Calling popup->hide() instead of popup->hidePopup() in
        PopupMenu fixes the issues as it does extra step to check
        whethere there is a keyboard selection changed when closing
        the popup.

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

        TEST: add a manual test as the current layout test shell
        does not support sending keyboard events to popup list.

        * manual-tests/chromium/select-close-popup-value-change.html: Added.
        * platform/chromium/PopupMenuChromium.cpp:
        (WebCore::PopupMenu::hide):

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

10 years ago Skip two tests that require infrastructure our DRT doesn't have,
kov@webkit.org [Fri, 11 Dec 2009 17:31:45 +0000 (17:31 +0000)]
    Skip two tests that require infrastructure our DRT doesn't have,
        or functionality our port does not implement.

        * platform/gtk/Skipped:

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

10 years ago[Qt] Unreviewed. Skip a timeouter flakey test.
ossy@webkit.org [Fri, 11 Dec 2009 17:30:08 +0000 (17:30 +0000)]
[Qt] Unreviewed. Skip a timeouter flakey test.

* platform/qt/Skipped: fast/frames/sandboxed-iframe-storage.html added.

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

10 years ago2009-12-11 anton muhin <antonm@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 17:21:14 +0000 (17:21 +0000)]
2009-12-11  anton muhin  <antonm@chromium.org>

        Reviewed by Adam Barth.

        [v8] refactor WeakReferenceMap.
        Move common bits of functionality to reduce duplication.

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

        Should be covered by buildbots.

        * bindings/v8/DOMData.h:
        (WebCore::DOMData::WrapperMapObjectRemover::visitDOMWrapper):
        (WebCore::DOMData::handleWeakObject):
        (WebCore::DOMData::removeObjectsFromWrapperMap):
        * bindings/v8/DOMDataStore.cpp:
        (WebCore::DOMDataStore::weakDOMObjectCallback):
        (WebCore::DOMDataStore::weakActiveDOMObjectCallback):
        (WebCore::DOMDataStore::weakNodeCallback):
        (WebCore::DOMDataStore::weakSVGElementInstanceCallback):
        (WebCore::DOMDataStore::weakSVGObjectWithContextCallback):
        * bindings/v8/DOMDataStore.h:
        * bindings/v8/V8DOMMap.cpp:
        (WebCore::visitDOMNodesInCurrentThread):
        (WebCore::visitDOMObjectsInCurrentThread):
        (WebCore::visitActiveDOMObjectsInCurrentThread):
        (WebCore::visitDOMSVGElementInstancesInCurrentThread):
        (WebCore::visitSVGObjectsInCurrentThread):
        * bindings/v8/V8DOMMap.h:
        (WebCore::WeakReferenceMap::removeIfPresent):
        (WebCore::WeakReferenceMap::clear):
        (WebCore::WeakReferenceMap::visit):

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

10 years agoRubber-stamped by Simon Hausmann.
ossy@webkit.org [Fri, 11 Dec 2009 17:19:53 +0000 (17:19 +0000)]
Rubber-stamped by Simon Hausmann.

[Qt] TouchEvent related tests have platform dependent results until all platform implement it.

* platform/qt/fast/dom/Window/window-properties-expected.txt: TouchEvent related output added.
* platform/qt/fast/dom/prototype-inheritance-expected.txt: TouchEvent related output added.
* platform/qt/fast/dom/prototype-inheritance.html: Removed. (added by mistake previously)
* platform/qt/fast/js/global-constructors-expected.txt: TouchEvent related output added.

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

10 years agoFixed typo in test result.
kov@webkit.org [Fri, 11 Dec 2009 17:15:06 +0000 (17:15 +0000)]
Fixed typo in test result.

* platform/gtk/editing/execCommand/toggle-compound-styles-expected.txt:

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

10 years ago2009-12-11 anton muhin <antonm@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 17:14:06 +0000 (17:14 +0000)]
2009-12-11  anton muhin  <antonm@chromium.org>
        Reviewed by Adam Barth.

        [v8] in Debug builds create an additional handle scope
        when doing debug build checks.
        https://bugs.webkit.org/show_bug.cgi?id=32335

        Should be covered by buildbots.

        * bindings/v8/V8DOMWrapper.h:
        (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
        (WebCore::V8DOMWrapper::convertDOMWrapperToNode):

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

10 years agoRubber-stamped by Simon Hausmann.
ossy@webkit.org [Fri, 11 Dec 2009 17:07:06 +0000 (17:07 +0000)]
Rubber-stamped by Simon Hausmann.

[Qt] TouchEvent related tests have platform dependent results until all platform implement it.
Original expected files copied.

* platform/qt/fast/dom/Window/window-properties-expected.txt: Copied from LayoutTests/fast/dom/Window/window-properties-expected.txt.
* platform/qt/fast/dom/prototype-inheritance-expected.txt: Copied from LayoutTests/fast/dom/prototype-inheritance-expected.txt.
* platform/qt/fast/dom/prototype-inheritance.html: Copied from LayoutTests/fast/dom/prototype-inheritance.html.
* platform/qt/fast/js/global-constructors-expected.txt: Copied from LayoutTests/fast/js/global-constructors-expected.txt.

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

10 years ago2009-12-11 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Fri, 11 Dec 2009 16:52:32 +0000 (16:52 +0000)]
2009-12-11  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Timothy Hatcher.

        Web Inspector: Do not use ContextMenuItem as value type in custom
        context menu implementation.

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

        * GNUmakefile.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSInspectorFrontendHostCustom.cpp:
        (WebCore::JSInspectorFrontendHost::showContextMenu):
        * inspector/InspectorFrontendHost.cpp:
        (WebCore::InspectorFrontendHost::InspectorFrontendHost):
        (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
        (WebCore::InspectorFrontendHost::showContextMenu):
        (WebCore::InspectorFrontendHost::contextMenuCleared):
        * inspector/InspectorFrontendHost.h:
        (WebCore::InspectorFrontendHost::MenuProvider::create):
        (WebCore::InspectorFrontendHost::MenuProvider::~MenuProvider):
        (WebCore::InspectorFrontendHost::MenuProvider::disconnect):
        (WebCore::InspectorFrontendHost::MenuProvider::populateContextMenu):
        (WebCore::InspectorFrontendHost::MenuProvider::contextMenuCleared):
        (WebCore::InspectorFrontendHost::MenuProvider::MenuProvider):
        * page/ContextMenuController.cpp:
        (WebCore::ContextMenuController::ContextMenuController):
        (WebCore::ContextMenuController::clearContextMenu):
        (WebCore::ContextMenuController::showContextMenu):
        (WebCore::ContextMenuController::contextMenuItemSelected):
        * page/ContextMenuController.h:
        * page/ContextMenuProvider.h: Added.
        (WebCore::ContextMenuProvider::~ContextMenuProvider):
        * page/ContextMenuSelectionHandler.h: Removed.

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

10 years ago[Qt] Updated QWebElement documentation
girish@forwardbias.in [Fri, 11 Dec 2009 16:22:21 +0000 (16:22 +0000)]
[Qt] Updated QWebElement documentation

Reviewed by Tor Arne Vestbø.

findAll() returns a QWebElementCollection, not QList<QWebElement>.

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

10 years agoWebCore: Basic cross-platform implementation of mapping platform touch events
hausmann@webkit.org [Fri, 11 Dec 2009 16:20:20 +0000 (16:20 +0000)]
WebCore: Basic cross-platform implementation of mapping platform touch events
to JavaScript touch events.

Patch by Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovok.com> on 2009-12-11
Reviewed by Antti Koivisto.

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

Test: fast/events/basic-touch-events.html

* page/EventHandler.cpp:
(WebCore::EventHandler::handleTouchEvent):
* page/EventHandler.h:

WebKit/qt: Forward Qt touch events to the event handler as platform touch events.

Patch by Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovok.com> on 2009-12-11
Reviewed by Antti Koivisto.

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

* Api/qwebpage.cpp:
(QWebPagePrivate::touchEvent):
(QWebPage::event):
* Api/qwebpage_p.h:

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

10 years ago2009-12-11 Zoltan Horvath <zoltan@webkit.org>
zoltan@webkit.org [Fri, 11 Dec 2009 16:19:36 +0000 (16:19 +0000)]
2009-12-11  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Darin Adler.

        Allow custom memory allocation control for WebCore's EmptyFrameLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=32110

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

        class name              - instantiated at: WebCore/'location'

        class EmptyFrameLoaderClient - svg/graphics/SVGImage.cpp:229

        * loader/FrameLoaderClient.h:

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

10 years ago2009-12-11 Zoltan Horvath <zoltan@webkit.org>
zoltan@webkit.org [Fri, 11 Dec 2009 16:17:56 +0000 (16:17 +0000)]
2009-12-11  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Darin Adler.

        Allow custom memory allocation control for 3 classes in WebCore's svg and loader directory
        https://bugs.webkit.org/show_bug.cgi?id=32106

        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'

        class EmptyContextMenuClient - instantiated at: svg/graphics/SVGImage.cpp:232
        class EmptyDragClient        - instantiated at: svg/graphics/SVGImage.cpp:237
        class SVGImageChromeClient   - instantiated at: svg/graphics/SVGImage.cpp:243

        * svg/graphics/SVGImage.cpp:
        * loader/EmptyClients.h:

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

10 years agoSkip the touch tests on Windows (somehow that hunk got lost).
hausmann@webkit.org [Fri, 11 Dec 2009 15:51:02 +0000 (15:51 +0000)]
Skip the touch tests on Windows (somehow that hunk got lost).

* platform/win/Skipped:

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

10 years agoAdded support for creating synthetic touch events with EventSender
hausmann@webkit.org [Fri, 11 Dec 2009 15:46:54 +0000 (15:46 +0000)]
Added support for creating synthetic touch events with EventSender
in Qt's DumpRenderTree.

Patch by Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovok.com> on 2009-12-11
Reviewed by Antti Koivisto.

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

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::addTouchPoint):
(EventSender::updateTouchPoint):
(EventSender::touchStart):
(EventSender::touchMove):
(EventSender::touchEnd):
(EventSender::clearTouchPoints):
(EventSender::releaseTouchPoint):
(EventSender::sendTouchEvent):
* DumpRenderTree/qt/EventSenderQt.h:

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

10 years ago2009-12-11 Kent Tamura <tkent@chromium.org>
eric@webkit.org [Fri, 11 Dec 2009 15:39:30 +0000 (15:39 +0000)]
2009-12-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Darin Adler.

        Fix a problem that JSC::gregorianDateTimeToMS() returns a negative
        value for a huge year value.
        https://bugs.webkit.org/show_bug.cgi?id=32304

        * wtf/DateMath.cpp:
        (WTF::dateToDaysFrom1970): Renamed from dateToDayInYear, and changed the return type to double.
        (WTF::calculateDSTOffset): Follow the dateToDaysFrom1970() change.
        (WTF::timeClip): Use maxECMAScriptTime.
        (JSC::gregorianDateTimeToMS): Follow the dateToDaysFrom1970() change.
2009-12-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Darin Adler.

        Fix a problem that JSC::gregorianDateTimeToMS() returns a negative
        value for a huge year value.
        https://bugs.webkit.org/show_bug.cgi?id=32304

        * fast/js/date-daysfrom1970-overflow-expected.txt: Added.
        * fast/js/date-daysfrom1970-overflow.html: Added.
        * fast/js/script-tests/date-daysfrom1970-overflow.js: Added.

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

10 years ago2009-12-11 Benjamin Poulain <benjamin.poulain@nokia.com>
eric@webkit.org [Fri, 11 Dec 2009 15:21:55 +0000 (15:21 +0000)]
2009-12-11  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Darin Adler.

        The values of RuntimeArray are not enumerable
        https://bugs.webkit.org/show_bug.cgi?id=29005

        The indices of RuntimeArray should be enumerated like for a regular array.

        * platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
        * platform/mac/fast/dom/wrapper-classes-objc.html:
2009-12-11  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Darin Adler.

        The values of RuntimeArray are not enumerable
        https://bugs.webkit.org/show_bug.cgi?id=29005

        The indices of RuntimeArray should be enumerated like for a regular array.

        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::getOwnPropertyNames):
        * bridge/runtime_array.h:
2009-12-11  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Darin Adler.

        The values of RuntimeArray are not enumerable
        https://bugs.webkit.org/show_bug.cgi?id=29005

        * DumpRenderTree/mac/ObjCController.m:
        (+[ObjCController isSelectorExcludedFromWebScript:]):
        (+[ObjCController webScriptNameForSelector:]):
        (-[ObjCController arrayOfString]):

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

10 years ago2009-12-11 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Fri, 11 Dec 2009 15:07:55 +0000 (15:07 +0000)]
2009-12-11  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Remove obsolete message handling methods from WebDevTools* interfaces

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

        * public/WebDevToolsAgent.h:
        * public/WebDevToolsAgentClient.h:
        * public/WebDevToolsFrontend.h:
        * public/WebDevToolsFrontendClient.h:

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

10 years ago2009-12-11 Andreas Kling <andreas.kling@nokia.com>
eric@webkit.org [Fri, 11 Dec 2009 14:38:31 +0000 (14:38 +0000)]
2009-12-11  Andreas Kling  <andreas.kling@nokia.com>

        Reviewed by Simon Hausmann.

        [Qt] ImageDecoderQt: Fix retrieval of image file extensions

        QImageReader only allows retrieving the format() before actually reading the image.

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

        * platform/graphics/qt/ImageDecoderQt.cpp:
        (WebCore::ImageDecoderQt::setData):
        (WebCore::ImageDecoderQt::internalDecodeSize):

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

10 years ago2009-12-11 Simon Hausmann <hausmann@webkit.org>
eric@webkit.org [Fri, 11 Dec 2009 14:15:36 +0000 (14:15 +0000)]
2009-12-11  Simon Hausmann  <hausmann@webkit.org>

        Reviewed by Antti Koivisto.

        Added basic layout test for DOM touch events.

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

        * fast/events/basic-touch-events-expected.txt: Added.
        * fast/events/basic-touch-events.html: Added.
        * fast/events/script-tests/basic-touch-events.js: Added.
        (appendEventLog):
        (verifyTouchEvent):
        (verifyTouchPoint):
        (singleTouchSequence):
        (multiTouchSequence):
        (touchTargets):
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/win/Skipped:

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

10 years ago2009-12-11 Simon Hausmann <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovo...
eric@webkit.org [Fri, 11 Dec 2009 14:07:49 +0000 (14:07 +0000)]
2009-12-11  Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm  <kim.gronholm@nomovok.com>

        Reviewed by Antti Koivisto.

        Added interfaces for touch event support in JavaScript.

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

        The Touch, TouchEvent and TouchList interfaces come straight from
        Android's copy of WebKit (eclaire branch).

        The PlatformTouchEvent and PlatformTouchPoint code was written by
        us.

        No new tests added, we are just adding interfaces
        with this patch.

        * WebCore.pro:
        * bindings/js/JSEventCustom.cpp:
        (WebCore::toJS):
        * dom/Document.cpp:
        (WebCore::Document::addListenerTypeIfNeeded):
        * dom/Document.h:
        (WebCore::Document::):
        * dom/Document.idl:
        * dom/Element.h:
        * dom/Element.idl:
        * dom/Event.cpp:
        (WebCore::Event::isTouchEvent):
        * dom/Event.h:
        * dom/EventNames.h:
        * dom/Touch.cpp: Added.
        (WebCore::contentsX):
        (WebCore::contentsY):
        (WebCore::Touch::Touch):
        (WebCore::Touch::updateLocation):
        * dom/Touch.h: Added.
        (WebCore::Touch::create):
        (WebCore::Touch::frame):
        (WebCore::Touch::target):
        (WebCore::Touch::identifier):
        (WebCore::Touch::clientX):
        (WebCore::Touch::clientY):
        (WebCore::Touch::screenX):
        (WebCore::Touch::screenY):
        (WebCore::Touch::pageX):
        (WebCore::Touch::pageY):
        * dom/Touch.idl: Added.
        * dom/TouchEvent.cpp: Added.
        (WebCore::TouchEvent::TouchEvent):
        (WebCore::TouchEvent::initTouchEvent):
        * dom/TouchEvent.h: Added.
        (WebCore::TouchEvent::create):
        (WebCore::TouchEvent::touches):
        (WebCore::TouchEvent::targetTouches):
        (WebCore::TouchEvent::changedTouches):
        (WebCore::TouchEvent::TouchEvent):
        (WebCore::TouchEvent::isTouchEvent):
        * dom/TouchEvent.idl: Added.
        * dom/TouchList.cpp: Added.
        (WebCore::TouchList::item):
        * dom/TouchList.h: Added.
        (WebCore::TouchList::create):
        (WebCore::TouchList::length):
        (WebCore::TouchList::append):
        (WebCore::TouchList::TouchList):
        * dom/TouchList.idl: Added.
        * html/HTMLAttributeNames.in:
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::parseMappedAttribute):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:
        * platform/PlatformTouchEvent.h: Added.
        (WebCore::PlatformTouchEvent::PlatformTouchEvent):
        (WebCore::PlatformTouchEvent::touchPoints):
        * platform/PlatformTouchPoint.h: Added.
        (WebCore::PlatformTouchPoint::):
        (WebCore::PlatformTouchPoint::id):
        (WebCore::PlatformTouchPoint::state):
        (WebCore::PlatformTouchPoint::screenPos):
        (WebCore::PlatformTouchPoint::pos):
        * platform/qt/PlatformTouchEventQt.cpp: Added.
        (WebCore::PlatformTouchEvent::PlatformTouchEvent):
        * platform/qt/PlatformTouchPointQt.cpp: Added.
        (WebCore::PlatformTouchPoint::PlatformTouchPoint):

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

10 years ago[Android] Add detachHistoryItem() to AndroidWebHistoryBridge. And the constructor...
benm@google.com [Fri, 11 Dec 2009 12:20:43 +0000 (12:20 +0000)]
[Android] Add detachHistoryItem() to AndroidWebHistoryBridge. And the constructor takes
HistoryItem* now. As AndroidWebHistoryBridge holds a dumb pointer of HistoryItem and
HistoryItem holds a RefPtr of AndroidWebHistoryBridge, the dumb pointer needs to be cleared
when HistoryItem is deleted to avoid potential crash.
https://bugs.webkit.org/show_bug.cgi?id=32251

Patch by Grace Kloba <klobag@gmail.com> on 2009-12-11
Reviewed by Darin Adler.

* history/HistoryItem.cpp:
(WebCore::HistoryItem::~HistoryItem):
* history/android/AndroidWebHistoryBridge.h:
(WebCore::AndroidWebHistoryBridge::AndroidWebHistoryBridge):
(WebCore::AndroidWebHistoryBridge::detachHistoryItem):

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

10 years ago2009-12-11 Fumitoshi Ukai <ukai@chromium.org>
ukai@chromium.org [Fri, 11 Dec 2009 10:44:33 +0000 (10:44 +0000)]
2009-12-11  Fumitoshi Ukai  <ukai@chromium.org>

        Reviewed by Pavel Feldman.

        Log WebSocket error to Web Inspector console.
        https://bugs.webkit.org/show_bug.cgi?id=32165

        * websocket/tests/handshake-error-expected.txt:
        * websocket/tests/handshake-fail-by-cross-origin-expected.txt:
        * websocket/tests/handshake-fail-by-sub-protocol-mismatch-expected.txt:
2009-12-11  Fumitoshi Ukai  <ukai@chromium.org>

        Reviewed by Pavel Feldman.

        Log WebSocket error to Web Inspector console.
        https://bugs.webkit.org/show_bug.cgi?id=32165

        * websockets/WebSocketChannel.cpp:
        (WebCore::WebSocketChannel::didOpen):
        (WebCore::WebSocketChannel::appendToBuffer):
        * websockets/WebSocketHandshake.cpp:
        (WebCore::WebSocketHandshake::readServerHandshake):
        (WebCore::WebSocketHandshake::readHTTPHeaders):
        (WebCore::WebSocketHandshake::checkResponseHeaders):

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

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

        No review, rolling out r51975.
        http://trac.webkit.org/changeset/51975

        * jit/JITStubs.cpp:
        (JSC::DEFINE_STUB_FUNCTION):
        * runtime/JSString.h:
        (JSC::JSString::JSString):
        (JSC::JSString::appendStringInConstruct):
        * runtime/Operations.cpp:
        (JSC::jsAddSlowCase):
        * runtime/Operations.h:
        (JSC::jsString):
        (JSC::jsAdd):

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

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

        Reviewed by Darin Adler.

        Mixed content shouldn't trigger for plug-ins without URLs
        https://bugs.webkit.org/show_bug.cgi?id=32384

        * http/tests/security/mixedContent/empty-url-plugin-in-frame-expected.txt: Added.
        * http/tests/security/mixedContent/empty-url-plugin-in-frame.html: Added.
        * http/tests/security/mixedContent/resources/frame-with-empty-url-plugin.html: Added.
2009-12-10  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        Mixed content shouldn't trigger for plug-ins without URLs
        https://bugs.webkit.org/show_bug.cgi?id=32384

        These plug-ins cannot be controlled by active network attackers, so
        there's no reason to trigger a mixed content warning.

        Test: http/tests/security/mixedContent/empty-url-plugin-in-frame.html

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::isMixedContent):

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

10 years agoIncorrect caching of prototype lookup with dictionary base
oliver@apple.com [Fri, 11 Dec 2009 02:22:07 +0000 (02:22 +0000)]
Incorrect caching of prototype lookup with dictionary base
https://bugs.webkit.org/show_bug.cgi?id=32402

Reviewed by Gavin Barraclough

Make sure we don't add cached prototype lookup to the proto_list
lookup chain if the top level object is a dictionary.

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=32400
barraclough@apple.com [Fri, 11 Dec 2009 02:07:42 +0000 (02:07 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=32400
Switch remaining cases of string addition to use ropes.

Reviewed by Oliver Hunt.

~1% progression on Sunspidey.

* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/JSString.h:
(JSC::JSString::JSString):
(JSC::JSString::appendStringInConstruct):
* runtime/Operations.cpp:
(JSC::jsAddSlowCase):
* runtime/Operations.h:
(JSC::jsString):
(JSC::jsAdd):

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

10 years ago Unreviewed, build fix for chromium.
eroman@chromium.org [Fri, 11 Dec 2009 00:58:57 +0000 (00:58 +0000)]
    Unreviewed, build fix for chromium.

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::dispatchWillSendRequest):

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

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

        https://bugs.webkit.org/show_bug.cgi?id=32140
        REGRESSION(r50072): Mailman administrative functionality is broken

        Test: http/tests/misc/percent-sign-in-form-field-name.html

        * platform/network/FormDataBuilder.cpp: (WebCore::appendQuotedString): Don't encode percent
        sign, we never had a good reason to do that.

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

10 years ago2009-12-10 Eric Seidel <eric@webkit.org>
eric@webkit.org [Fri, 11 Dec 2009 00:20:06 +0000 (00:20 +0000)]
2009-12-10  Eric Seidel  <eric@webkit.org>

        No review, just updating unit tests to match recent checkins.

        * Scripts/modules/mock_bugzillatool.py:
         - Add missing red_core_builders_names method causing exception.
        * Scripts/modules/workqueue_unittest.py:
         - processutils is dead, use executive.py instead.

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

10 years ago2009-12-10 Kent Hansen <kent.hansen@nokia.com>
eric@webkit.org [Fri, 11 Dec 2009 00:06:15 +0000 (00:06 +0000)]
2009-12-10  Kent Hansen  <kent.hansen@nokia.com>

        Reviewed by Geoffrey Garen.

        Remove JSObject::getPropertyAttributes() and all usage of it.
        https://bugs.webkit.org/show_bug.cgi?id=31933

        getOwnPropertyDescriptor() should be used instead.

        * JavaScriptCore.exp:
        * JavaScriptCore.order:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
        * debugger/DebuggerActivation.cpp:
        (JSC::DebuggerActivation::getOwnPropertyDescriptor):
        * debugger/DebuggerActivation.h:
        * runtime/JSObject.cpp:
        (JSC::JSObject::propertyIsEnumerable):
        * runtime/JSObject.h:
        * runtime/JSVariableObject.cpp:
        * runtime/JSVariableObject.h:
2009-12-10  Kent Hansen  <kent.hansen@nokia.com>

        Reviewed by Geoffrey Garen.

        Remove getPropertyAttributes() from JavaScript bindings.
        https://bugs.webkit.org/show_bug.cgi?id=31933

        The functionality is provided by getOwnPropertyDescriptor().

        * WebCore.order:
        * bindings/js/JSDOMWindowCustom.cpp:
        * bindings/js/JSDOMWindowShell.cpp:
        * bindings/js/JSDOMWindowShell.h:
        * bindings/scripts/CodeGeneratorJS.pm:
        * page/DOMWindow.idl:

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

10 years ago2009-12-10 Kenneth Russell <kbr@google.com>
eric@webkit.org [Thu, 10 Dec 2009 23:55:26 +0000 (23:55 +0000)]
2009-12-10  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Changed WebGLRenderingContext to synthesize GL errors rather than
        raising JavaScript exceptions. Removed internal getError() calls
        after each graphics call. The GraphicsContext3D maintains the
        synthetic exceptions because only it has complete information
        about certain conditions requiring them to be raised.

        Based on idea from Ilmari Heikkinen, added create3DDebugContext()
        to webgl-test.js and changed the WebGL layout tests expecting
        error conditions to use it. Updated expected.txt files, which now
        implicitly test the OpenGL error as it is part of the exception's
        message.

        Added new targeted test covering aspects of synthetic errors as
        well as regression tests for bugs uncovered during its development.

        Test: fast/canvas/webgl/error-reporting.html

        * fast/canvas/webgl/drawArraysOutOfBounds-expected.txt:
        * fast/canvas/webgl/drawArraysOutOfBounds.html:
        * fast/canvas/webgl/drawElementssOutOfBounds-expected.txt:
        * fast/canvas/webgl/drawElementssOutOfBounds.html:
        * fast/canvas/webgl/error-reporting-expected.txt: Added.
        * fast/canvas/webgl/error-reporting.html: Added.
        * fast/canvas/webgl/getActiveTest-expected.txt:
        * fast/canvas/webgl/incorrect-context-object-behaviour-expected.txt:
        * fast/canvas/webgl/invalidPassedParams-expected.txt:
        * fast/canvas/webgl/invalidPassedParams.html:
        * fast/canvas/webgl/null-object-behaviour-expected.txt:
        * fast/canvas/webgl/resources/webgl-test.js:
        (create3DDebugContext.wrap.getError):
        (create3DDebugContext):
        * fast/canvas/webgl/script-tests/error-reporting.js: Added.
        * fast/canvas/webgl/script-tests/getActiveTest.js:
        * fast/canvas/webgl/script-tests/incorrect-context-object-behaviour.js:
        * fast/canvas/webgl/script-tests/null-object-behaviour.js:
        * fast/canvas/webgl/script-tests/uniform-location.js:
        * fast/canvas/webgl/uniform-location-expected.txt:
2009-12-10  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Changed WebGLRenderingContext to synthesize GL errors rather than
        raising JavaScript exceptions. Removed internal getError() calls
        after each graphics call. The GraphicsContext3D maintains the
        synthetic exceptions because only it has complete information
        about certain conditions requiring them to be raised.

        Based on idea from Ilmari Heikkinen, added create3DDebugContext()
        to webgl-test.js and changed the WebGL layout tests expecting
        error conditions to use it. Updated expected.txt files, which now
        implicitly test the OpenGL error as it is part of the exception's
        message.

        Added new targeted test covering aspects of synthetic errors as
        well as regression tests for bugs uncovered during its development.

        Test: fast/canvas/webgl/error-reporting.html

        * html/canvas/WebGLRenderingContext.cpp:
        (WebCore::WebGLRenderingContext::sizeInBytes):
        (WebCore::WebGLRenderingContext::activeTexture):
        (WebCore::WebGLRenderingContext::attachShader):
        (WebCore::WebGLRenderingContext::bindAttribLocation):
        (WebCore::WebGLRenderingContext::bindBuffer):
        (WebCore::WebGLRenderingContext::bindFramebuffer):
        (WebCore::WebGLRenderingContext::bindRenderbuffer):
        (WebCore::WebGLRenderingContext::bindTexture):
        (WebCore::WebGLRenderingContext::bufferData):
        (WebCore::WebGLRenderingContext::bufferSubData):
        (WebCore::WebGLRenderingContext::compileShader):
        (WebCore::WebGLRenderingContext::createShader):
        (WebCore::WebGLRenderingContext::detachShader):
        (WebCore::WebGLRenderingContext::disableVertexAttribArray):
        (WebCore::WebGLRenderingContext::drawArrays):
        (WebCore::WebGLRenderingContext::drawElements):
        (WebCore::WebGLRenderingContext::enableVertexAttribArray):
        (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
        (WebCore::WebGLRenderingContext::framebufferTexture2D):
        (WebCore::WebGLRenderingContext::getActiveAttrib):
        (WebCore::WebGLRenderingContext::getActiveUniform):
        (WebCore::WebGLRenderingContext::getBufferParameter):
        (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
        (WebCore::WebGLRenderingContext::getParameter):
        (WebCore::WebGLRenderingContext::getProgramParameter):
        (WebCore::WebGLRenderingContext::getProgramInfoLog):
        (WebCore::WebGLRenderingContext::getRenderbufferParameter):
        (WebCore::WebGLRenderingContext::getShaderParameter):
        (WebCore::WebGLRenderingContext::getShaderInfoLog):
        (WebCore::WebGLRenderingContext::getShaderSource):
        (WebCore::WebGLRenderingContext::getTexParameter):
        (WebCore::WebGLRenderingContext::getUniform):
        (WebCore::WebGLRenderingContext::getUniformLocation):
        (WebCore::WebGLRenderingContext::getVertexAttrib):
        (WebCore::WebGLRenderingContext::linkProgram):
        (WebCore::WebGLRenderingContext::shaderSource):
        (WebCore::WebGLRenderingContext::texImage2D):
        (WebCore::WebGLRenderingContext::texSubImage2D):
        (WebCore::WebGLRenderingContext::uniform1f):
        (WebCore::WebGLRenderingContext::uniform1fv):
        (WebCore::WebGLRenderingContext::uniform1i):
        (WebCore::WebGLRenderingContext::uniform1iv):
        (WebCore::WebGLRenderingContext::uniform2f):
        (WebCore::WebGLRenderingContext::uniform2fv):
        (WebCore::WebGLRenderingContext::uniform2i):
        (WebCore::WebGLRenderingContext::uniform2iv):
        (WebCore::WebGLRenderingContext::uniform3f):
        (WebCore::WebGLRenderingContext::uniform3fv):
        (WebCore::WebGLRenderingContext::uniform3i):
        (WebCore::WebGLRenderingContext::uniform3iv):
        (WebCore::WebGLRenderingContext::uniform4f):
        (WebCore::WebGLRenderingContext::uniform4fv):
        (WebCore::WebGLRenderingContext::uniform4i):
        (WebCore::WebGLRenderingContext::uniform4iv):
        (WebCore::WebGLRenderingContext::uniformMatrix2fv):
        (WebCore::WebGLRenderingContext::uniformMatrix3fv):
        (WebCore::WebGLRenderingContext::uniformMatrix4fv):
        (WebCore::WebGLRenderingContext::useProgram):
        (WebCore::WebGLRenderingContext::validateProgram):
        (WebCore::WebGLRenderingContext::vertexAttribPointer):
        * html/canvas/WebGLRenderingContext.h:
        (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall):
        * platform/graphics/GraphicsContext3D.h:
        * platform/graphics/mac/GraphicsContext3DMac.cpp:
        (WebCore::GraphicsContext3D::getActiveAttrib):
        (WebCore::GraphicsContext3D::getActiveUniform):
        (WebCore::GraphicsContext3D::getError):
        (WebCore::GraphicsContext3D::synthesizeGLError):
2009-12-10  Kenneth Russell  <kbr@google.com>

        Reviewed by Oliver Hunt.

        Changed WebGLRenderingContext to synthesize GL errors rather than
        raising JavaScript exceptions. Removed internal getError() calls
        after each graphics call. The GraphicsContext3D maintains the
        synthetic exceptions because only it has complete information
        about certain conditions requiring them to be raised.

        Based on idea from Ilmari Heikkinen, added create3DDebugContext()
        to webgl-test.js and changed the WebGL layout tests expecting
        error conditions to use it. Updated expected.txt files, which now
        implicitly test the OpenGL error as it is part of the exception's
        message.

        Added new targeted test covering aspects of synthetic errors as
        well as regression tests for bugs uncovered during its development.

        Test: fast/canvas/webgl/error-reporting.html

        * src/GraphicsContext3D.cpp:
        (WebCore::GraphicsContext3DInternal::reshape):
        (WebCore::GraphicsContext3DInternal::getError):
        (WebCore::GraphicsContext3DInternal::synthesizeGLError):
        (WebCore::GraphicsContext3D::getActiveAttrib):
        (WebCore::GraphicsContext3D::getActiveUniform):
        (WebCore::GraphicsContext3D::getError):
        (WebCore::GraphicsContext3D::synthesizeGLError):

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

10 years ago2009-12-10 Eric Seidel <eric@webkit.org>
eric@webkit.org [Thu, 10 Dec 2009 23:47:36 +0000 (23:47 +0000)]
2009-12-10  Eric Seidel  <eric@webkit.org>

        Reviewed by Adam Barth.

        Move run_command onto Executive to make code which uses run_command testable
        https://bugs.webkit.org/show_bug.cgi?id=32396

        * Scripts/modules/executive.py:
         - Move run_command and error handlers onto Executive.
        * Scripts/modules/scm.py:
        * Scripts/modules/scm_unittest.py:

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

10 years ago2009-12-10 Stephen White <senorblanco@chromium.org>
eric@webkit.org [Thu, 10 Dec 2009 23:40:28 +0000 (23:40 +0000)]
2009-12-10  Stephen White  <senorblanco@chromium.org>

        Reviewed by Dimitri Glazkov.

        Fix for assert on Chrome/skia with SVG Filters enabled.
        https://bugs.webkit.org/show_bug.cgi?id=32394

        Covered by LayoutTests/svg/W3C-SVG-1.1/filters-tile-01-b.svg and others.

        * platform/graphics/skia/ImageBufferSkia.cpp:
        (WebCore::ImageBuffer::platformTransformColorSpace):

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