2009-10-12  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>

        Reviewed by Simon Hausmann.

        QWebPage's createViewlessPlugin autotest crash fix.

        It is possible that plugins that are QWidgets or QGraphicsWidgets
        are created before a view has been assigned to a QWebPage. The
        plug-ins won't be fully functional, as by design, they should
        visualise something, but they won't crash and will stay in memory.

        An autotest that covers this use-case, is included.

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

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::createPlugin):
        * tests/qwebpage/tst_qwebpage.cpp:
        (PluginTrackedPageWidget::PluginTrackedPageWidget):
        (PluginTrackedPageGraphicsWidget::PluginTrackedPageGraphicsWidget):
        (PluginTrackedPageGraphicsWidget::createPlugin):
        (tst_QWebPage::destroyPlugin):
        (tst_QWebPage::createViewlessPlugin):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49440 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Cameron McCormack  <cam@mcc.id.au>

        Reviewed by Eric Seidel.

        Drop in="" from <feFlood>
        https://bugs.webkit.org/show_bug.cgi?id=29001

        This makes <feFlood in="bogus"> have an effect, too.

        http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute

        Test: svg/dom/feFlood-no-in1.html

        * svg/SVGFEFloodElement.cpp:
        (WebCore::SVGFEFloodElement::SVGFEFloodElement):
        (WebCore::SVGFEFloodElement::build):
        * svg/SVGFEFloodElement.h:
        * svg/SVGFEFloodElement.idl:
        * svg/graphics/filters/SVGFEFlood.cpp:
        (WebCore::FEFlood::FEFlood):
        (WebCore::FEFlood::create):
        * svg/graphics/filters/SVGFEFlood.h:

        LayoutTest:

        Drop in="" from <feFlood>
        https://bugs.webkit.org/show_bug.cgi?id=29001

        This makes <feFlood in="bogus"> have an effect, too.

        http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute

        * svg/dom/feFlood-no-in1-expected.txt: Added.
        * svg/dom/feFlood-no-in1.html: Added.
        * svg/dom/script-tests/feFlood-no-in1.js: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Andras Becsi  <becsi.andras@stud.u-szeged.hu>

        Reviewed by Tor Arne Vestbø.

        [Qt] Add expected files for new passing fast tests.

        * platform/qt/fast/css/counters/t1204-increment-00-c-o-expected.txt: Added.
        * platform/qt/fast/css/counters/t1204-increment-01-c-o-expected.txt: Added.
        * platform/qt/fast/css/text-rendering-expected.txt: Added.
        * platform/qt/fast/forms/basic-buttons-expected.txt: Added.
        * platform/qt/fast/forms/basic-inputs-expected.txt: Added.
        * platform/qt/fast/multicol/positioned-with-constrained-height-expected.txt: Added.
        * platform/qt/fast/overflow/position-fixed-transform-clipping-expected.txt: Added.
        * platform/qt/fast/repaint/line-in-scrolled-clipped-block-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler.

        Video keeps playing after going fullscreen, then closing window
        https://bugs.webkit.org/show_bug.cgi?id=30164

        Clear the QTMovie on the QTMovieView when coming out of fullscreen,
        to fix issue where the underlying movie keeps playing.

        * WebView/WebVideoFullscreenController.mm:
        (-[WebVideoFullscreenController windowDidExitFullscreen]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49443 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Rubber-stamped by Xan Lopez.

        Remove unnecessary self-include.

        * webkit/webkitsecurityorigin.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49444 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Sebastian Dröge  <sebastian.droege@collabora.co.uk>

        Reviewed by Gustavo Noronha.

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

        Fix 0 sentinel for g_object_set() function call.

        * platform/graphics/gtk/DataSourceGStreamer.cpp:
        (webkit_data_src_uri_set_uri):
        0 is passed as 32 bit value on x86-64 in vararg functions, but
        g_object_set() expects a 64 bit 0. This will cause crashes.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Xan Lopez.

        [Gtk] Update Fedora httpd.conf settings to closely match the generic httpd.conf
        https://bugs.webkit.org/show_bug.cgi?id=30302

        Closely match the default httpd.conf for layout tests.

        * http/conf/fedora-httpd.conf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Added automatic flush before compositing
        https://bugs.webkit.org/show_bug.cgi?id=30236

        This causes image to always render correctly. In writing a testcase
        I needed to implement readPixels. This exposed a bug in reading back
        values from a CanvasArray subclass, so I fixed that as well. Now when
        you wrap a CanvasArray in a JSValue it actually wraps the specific
        subclass. To do this I need to add virtual methods to each CanvasArray
        subclass to determine the type and a custom toJS method for CanvasArray
        to create the proper wrapper. 

        Test: fast/canvas/webgl/triangle.html



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49447 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12 Csaba Osztrogonac <ossy@webkit.org>

        Unreviewed. Added myself to committers.py.

        * Scripts/modules/committers.py:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49461 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Dirk Schulze  <krit@webkit.org>

        Reviewed by Eric Seidel.

        SVG - crash on feMerge when input not available
        [https://bugs.webkit.org/show_bug.cgi?id=30297]

        Make a early return in SVGFEMergeElement if the needed
        filter effect doesn't exist.

        Test: svg/filters/feMerge-wrong-input.svg

        * svg/SVGFEMergeElement.cpp:
        (WebCore::SVGFEMergeElement::build):

2009-10-12  Dirk Schulze  <krit@webkit.org>

        Reviewed by Eirc Seidel.

        feMergeNod has a reference to an effect that doesn't exist. This test will
        check if SVGFEMergeElement handles this correctly and stops the filter process.

        * svg/filters/feMerge-wrong-input-expected.checksum: Added.
        * svg/filters/feMerge-wrong-input-expected.png: Added.
        * svg/filters/feMerge-wrong-input-expected.txt: Added.
        * svg/filters/feMerge-wrong-input.svg: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49472 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Dimitri Glazkov  <dglazkov@chromium.org>

        No review, rolling out r49429, because it broke layout tests.
        http://trac.webkit.org/changeset/49429

        * bindings/v8/V8AbstractEventListener.cpp:
        (WebCore::V8AbstractEventListener::~V8AbstractEventListener):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
jsc scripts cleanup and Qt/GTK fix
https://bugs.webkit.org/show_bug.cgi?id=30288

Patch by Csaba Osztrogonac <ossy@webkit.org> on 2009-10-12
Reviewed by Darin Adler.

Duplicated jscPath() moved to webkitdirs.pm.
New jscProductDir() added to webkitdirs.pm instead of duplicated codes.
Configuration added (release/debug) to path for Qt-port on Windows.

* Scripts/run-javascriptcore-tests:
* Scripts/run-jsc:
* Scripts/run-sunspider:
* Scripts/sunspider-compare-results:
* Scripts/webkitdirs.pm:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fixes <http://webkit.org/b/30315>.
Web Inspector: DOM Content and Load lines in Resources are unclear what they mean.
        
Reviewed by Timothy Hatcher.

Add tooltip text to the Load event and DOM Content event lines through
a new layer that allows these lines to be on top of the view.

* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
(WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition):
* inspector/front-end/inspector.css:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Three old test results give back the absolute position instead of the realtive position.
        The new test will check the correct behavior of gradients in userSpaceOnUse mode and
        values in percentage.

        * platform/mac/svg/custom/gradient-attr-update-expected.txt:
        * platform/mac/svg/custom/gradient-deep-referencing-expected.txt:
        * platform/mac/svg/custom/gradient-userSpaceOnUse-with-percentage-expected.checksum: Added.
        * platform/mac/svg/custom/gradient-userSpaceOnUse-with-percentage-expected.png: Added.
        * platform/mac/svg/custom/gradient-userSpaceOnUse-with-percentage-expected.txt: Added.
        * platform/mac/svg/custom/text-gradient-no-content-expected.txt:
        * svg/custom/gradient-userSpaceOnUse-with-percentage.svg: Added.
2009-10-12  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVG Gradients can't handle percentage values in userSpaceOnUse mode
        [https://bugs.webkit.org/show_bug.cgi?id=30286]

        Fixed *GradientAttributes to take SVGLength instead of double. This casues
        the problem, that we can't calculate the correct size of a gradient on
        userSpaceOnUse mode with percentage values.

        Test: svg/custom/gradient-userSpaceOnUse-with-percentage.svg

        * svg/LinearGradientAttributes.h:
        (WebCore::LinearGradientAttributes::LinearGradientAttributes):
        (WebCore::LinearGradientAttributes::x1):
        (WebCore::LinearGradientAttributes::y1):
        (WebCore::LinearGradientAttributes::x2):
        (WebCore::LinearGradientAttributes::y2):
        (WebCore::LinearGradientAttributes::setX1):
        (WebCore::LinearGradientAttributes::setY1):
        (WebCore::LinearGradientAttributes::setX2):
        (WebCore::LinearGradientAttributes::setY2):
        * svg/RadialGradientAttributes.h:
        (WebCore::RadialGradientAttributes::RadialGradientAttributes):
        (WebCore::RadialGradientAttributes::cx):
        (WebCore::RadialGradientAttributes::cy):
        (WebCore::RadialGradientAttributes::r):
        (WebCore::RadialGradientAttributes::fx):
        (WebCore::RadialGradientAttributes::fy):
        (WebCore::RadialGradientAttributes::setCx):
        (WebCore::RadialGradientAttributes::setCy):
        (WebCore::RadialGradientAttributes::setR):
        (WebCore::RadialGradientAttributes::setFx):
        (WebCore::RadialGradientAttributes::setFy):
        * svg/SVGLinearGradientElement.cpp:
        (WebCore::SVGLinearGradientElement::buildGradient):
        (WebCore::SVGLinearGradientElement::collectGradientProperties):
        * svg/SVGRadialGradientElement.cpp:
        (WebCore::SVGRadialGradientElement::buildGradient):
        (WebCore::SVGRadialGradientElement::collectGradientProperties):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Reviewed by Simon Hausmann.

        Add a palette() method that is needed by our RenderTheme.

        * platform/qt/QWebPageClient.h:
2009-10-12  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Reviewed by Simon Hausmann.

        Implement the new palette() methods on the page clients

        * Api/qgraphicswebview.cpp:
        (QGraphicsWebViewPrivate::palette):
        * Api/qwebview.cpp:
        (QWebViewPrivate::palette):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore: Fix <rdar://problem/7094146> Reproducible crash at
RenderObject::localToAbsolute()

Reviewed by Simon Fraser.

Test: fast/dynamic/position-absolute-to-fixed-crash.html

The crash was caused by stale positioned objects lists following an
object transitioning from being absolutely position to being fixed
positioned.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange): In case of a transition between
absolute and fixed position, mark the parent as having a child needing
layout, so that this object will get inserted into its new container's
positioned objects list.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::styleWillChange): Changed a condition to cover
this transition, so that this object gets removed from its current
container's positioned objects list.

LayoutTests: Test for <rdar://problem/7094146> Reproducible crash at
RenderObject::localToAbsolute()

Reviewed by Simon Fraser.

* fast/dynamic/position-absolute-to-fixed-crash-expected.txt: Added.
* fast/dynamic/position-absolute-to-fixed-crash.html: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2009-10-12  Yaar Schnitman  <yaar@chromium.org>

        Reviewed by Dimitri Glazkov.

        Chromium Port - Windows
        https://bugs.webkit.org/show_bug.cgi?id=29969

        * chromium/DEPS: Added gtest dep required by windows and incremented some of the deps revisions.
2009-10-12  Yaar Schnitman  <yaar@chromium.org>

        Reviewed by Dimitri Glazkov.

        Chromium Port - Windows
        https://bugs.webkit.org/show_bug.cgi?id=29969

        * Scripts/pdevenv: removed msvc's /useenv for chromium builds
        * Scripts/webkitdirs.pm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support for the beforeload event to frames.  Complete support of the beforeload event by making sure
its wrapper gets properly constructed (so that the URL field of the event can be accessed).  Add support
for the Objective-C wrapper class as well.

Reviewed by Darin Adler.

Added fast/dom/beforeload/frame-before-load.html

* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSEventCustom.cpp:
(WebCore::toJS):
* bindings/objc/DOMEvents.mm:
(kitClass):
* dom/BeforeLoadEvent.h:
(WebCore::BeforeLoadEvent::isBeforeLoadEvent):
* dom/Event.cpp:
(WebCore::Event::isBeforeLoadEvent):
* dom/Event.h:
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::parseMappedAttribute):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadWithDocumentLoader):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix for https://bugs.webkit.org/show_bug.cgi?id=29078
<rdar://problem/7288221>

Reviewed by Darin Adler.

WebCore: 

Add a mechanism to blacklist certain codecs.  Initially, just blacklist UTF-7 as HTML5 encourages.

* platform/text/TextEncodingRegistry.cpp:
(WebCore::pruneBlacklistedCodecs):
(WebCore::buildBaseTextCodecMaps):
(WebCore::extendTextCodecMaps):

LayoutTests: 

Test the lack of UTF-7 support. Remove old UTF-7 tests.

* fast/encoding/char-decoding-expected.txt:
* fast/encoding/char-decoding.html:
* http/tests/misc/submit-get-in-utf7-expected.txt: Removed.
* http/tests/misc/submit-get-in-utf7.html: Removed.
* http/tests/misc/submit-post-in-utf7-expected.txt: Removed.
* http/tests/misc/submit-post-in-utf7.html: Removed.
* http/tests/misc/url-in-utf7-expected.txt: Removed.
* http/tests/misc/url-in-utf7.html: Removed.
* http/tests/security/xssAuditor/http-equiv-utf-7-encoded-expected.txt: Removed.
* http/tests/security/xssAuditor/http-equiv-utf-7-encoded.html: Removed.
* http/tests/security/xssAuditor/resources/echo-intertag-utf-7.pl: Removed.
* http/tests/security/xssAuditor/script-tag-utf-7-encoded-expected.txt: Removed.
* http/tests/security/xssAuditor/script-tag-utf-7-encoded.html: Removed.
* http/tests/security/xssAuditor/script-tag-utf-7-expected.txt: Removed.
* http/tests/security/xssAuditor/script-tag-utf-7.html: Removed.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49487 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore: JavaScript bindings of WebSocket addEventListener/removeEventListener
https://bugs.webkit.org/show_bug.cgi?id=29841

Patch by Fumitoshi Ukai <ukai@chromium.org> on 2009-10-06
Reviewed by NOBODY (OOPS!).

Test: fast/websockets/websocket-event-target.html

* bindings/js/JSWebSocketCustom.cpp:
(WebCore::JSWebSocket::addEventListener):
(WebCore::JSWebSocket::removeEventListener):
* bindings/v8/custom/V8CustomBinding.h:
* bindings/v8/custom/V8WebSocketCustom.cpp:
(WebCore::CALLBACK_FUNC_DECL):
* websockets/WebSocket.idl:

WebKitTools: Enable experimentalWebSocket in DumpRenderTree for LayoutTest.
https://bugs.webkit.org/show_bug.cgi?id=29841

Patch by Fumitoshi Ukai <ukai@chromium.org> on 2009-10-06
Reviewed by NOBODY (OOPS!).

* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):

LayoutTests: Add a test to verify WebSocket's EventTarget methods.
https://bugs.webkit.org/show_bug.cgi?id=29841

Patch by Fumitoshi Ukai <ukai@chromium.org> on 2009-10-06
Reviewed by NOBODY (OOPS!).

* fast/websockets/script-tests/TEMPLATE.html: Copied from LayoutTests/fast/canvas/script-tests/TEMPLATE.html.
* fast/websockets/script-tests/websocket-event-target.js: Added.
(openListener):
(messageListener):
(closeListener):
* fast/websockets/websocket-event-target-expected.txt: Added.
* fast/websockets/websocket-event-target.html: Added.

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