WebKit-https.git
13 years ago2006-12-26 Eric Seidel <eric@webkit.org>
eseidel [Wed, 27 Dec 2006 00:14:44 +0000 (00:14 +0000)]
2006-12-26  Eric Seidel  <eric@webkit.org>

        Reviewed by bradee-oh.

        Add new PageLoadTests directory (this one)
        Add LICENSES file to explain where each SVG came from.

        * ChangeLog: Added.
        * svg/LICENSES: Added.
        * svg/files/33041-Samurai.svg: Added.
        * svg/files/42470-flower_from_my_garden_v2.svg: Added.
        * svg/files/Harvey_Rayner.svg: Added.
        * svg/files/az-lizard_benji_park_01.svg: Added.
        * svg/files/bamboo_01.svg: Added.
        * svg/files/cacuts_01.svg: Added.
        * svg/files/cowboy.svg: Added.
        * svg/files/crawfish2_ganson.svg: Added.
        * svg/files/deb9frac1.svg: Added.
        * svg/files/food_leif_lodahl_01.svg: Added.
        * svg/files/france.svg: Added.
        * svg/files/francobollo_gnome_ezechi_02.svg: Added.
        * svg/files/gearflowers.svg: Added.
        * svg/files/hereGear4.svg: Added.
        * svg/files/mtsthelens.svg: Added.
        * svg/files/mtsthelens0.jpg: Added.
        * svg/files/world-iso.svg: Added.
        * svg/files/worldcup.svg: Added.
        * svg/svg.pltsuite: Added.

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

13 years ago2006-12-26 Eric Seidel <eric@webkit.org>
eseidel [Wed, 27 Dec 2006 00:12:23 +0000 (00:12 +0000)]
2006-12-26  Eric Seidel  <eric@webkit.org>

        Reviewed by bradee-oh.

        Add very simple run-pageloadtest script for running SVG page load test.

        * Scripts/run-pageloadtest: Added.

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

13 years agoReviewed by Oliver.
zimmermann [Wed, 27 Dec 2006 00:03:30 +0000 (00:03 +0000)]
Reviewed by Oliver.

Add patternContentUnits support, and cleanup SVGPaintServerGradientCg.cpp
Fixes coords-units-01-b.svg

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

13 years agoJavaScriptCore:
ggaren [Tue, 26 Dec 2006 22:10:03 +0000 (22:10 +0000)]
JavaScriptCore:

        Reviewed by Eric Seidel.

        Some cleanup in preparation for fixing <rdar://problem/4740328> Safari
        crash on quit in _NPN_ReleaseObject from KJS::Bindings::CInstance::~CInstance

        * bindings/c/c_instance.cpp:
        * bindings/c/c_instance.h: Removed unused copy constructor and assignment
        operator. They made tracking data flow more difficult. Unused code is also
        dangerous because it can succumb to bit rot with the stealth of a Ninja.

        Replaced #include with forward declaration to reduce header dependency.

        * bindings/npruntime.cpp: Sorted #includes.
        (_NPN_GetStringIdentifier): Replaced assert with ASSERT.
        (_NPN_GetStringIdentifiers): ditto
        (_NPN_ReleaseVariantValue): ditto
        (_NPN_CreateObject): ditto
        (_NPN_RetainObject): ditto
        (_NPN_ReleaseObject): ditto
        (_NPN_DeallocateObject): ditto

WebKit:

        Reviewed by Eric Seidel.

        Some cleanup in preparation for fixing <rdar://problem/4740328> Safari
        crash on quit in _NPN_ReleaseObject from KJS::Bindings::CInstance::~CInstance

        Renamed "installedPlugins" to "sharedDatabase." This better follows
        the Cocoa naming scheme, and calls out the key attribute that produced this
        crash -- namely, that the database is shared throughout the process.

        -installedPlugins is actually a part of SPI, but a global search showed
        that it had no users.

        * Plugins/WebPluginDatabase.h:
        * Plugins/WebPluginDatabase.m:
        (+[WebPluginDatabase sharedDatabase]):
        (-[WebPluginDatabase refresh]):
        (-[WebPluginDatabase _plugInPaths]):
        (-[WebPluginDatabase _removePlugin:]):
        * WebCoreSupport/WebViewFactory.m:
        (-[WebViewFactory pluginsInfo]):
        (-[WebViewFactory refreshPlugins:]):
        (-[WebViewFactory pluginSupportsMIMEType:]):
        * WebView/WebView.mm:
        (+[WebView _supportedMIMETypes]):
        (+[WebView _viewClass:andRepresentationClass:forMIMEType:]):
        (-[WebView _close]):
        (-[WebView _pluginForMIMEType:]):
        (-[WebView _pluginForExtension:]):
        (-[WebView _isMIMETypeRegisteredAsPlugin:]):

WebKitTools:

        Reviewed by Eric Seidel.

        Some cleanup in preparation for fixing <rdar://problem/4740328> Safari
        crash on quit in _NPN_ReleaseObject from KJS::Bindings::CInstance::~CInstance

        (dumpRenderTree): Renamed "installedPlugins" to "sharedDatabase."

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

13 years ago2006-12-26 Eric Seidel <eric@eseidel.com>
eseidel [Tue, 26 Dec 2006 20:03:42 +0000 (20:03 +0000)]
2006-12-26  Eric Seidel  <eric@eseidel.com>

        Reviewed by ggaren

        No test cases changed.

        Remove unneeded isPaintingText() and activeClient() from SVGPaintServer system

        * platform/graphics/svg/SVGPaintServer.cpp:
        (WebCore::SVGPaintServer::SVGPaintServer):
        * platform/graphics/svg/SVGPaintServer.h:
        * platform/graphics/svg/SVGPaintServerGradient.h:
        * platform/graphics/svg/SVGPaintServerPattern.h:
        * platform/graphics/svg/SVGPaintServerSolid.h:
        * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
        (WebCore::SVGPaintServer::teardown):
        * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
        (WebCore::SVGPaintServerGradient::teardown):
        (WebCore::SVGPaintServerGradient::setup):
        * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
        (WebCore::SVGPaintServerPattern::setup):
        (WebCore::SVGPaintServerPattern::teardown):
        * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
        (WebCore::SVGPaintServerSolid::setup):
        * rendering/RenderPath.cpp:
        (WebCore::RenderPath::paint):
        * rendering/SVGInlineFlowBox.cpp:
        (WebCore::paintSVGInlineFlow):

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

13 years agoWebCore:
ggaren [Tue, 26 Dec 2006 18:12:14 +0000 (18:12 +0000)]
WebCore:

        Reviewed by Adam Roben.

        Fixed <rdar://problem/4778898> REGRESSION: crash in getInstanceForView()
        when quitting from kcbs.com

        No testcase because we can't open and close windows in DRT.

        The crash was caused by deallocating plug-ins that were later referenced
        in the unload event handler.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::closeDocument): Call didCloseDocument after closing
        instead of before, so plugins don't get deallocated until the document
        has been destroyed and all event handlers have fired.

        * loader/FrameLoaderClient.h: Renamed "willCloseDocument" to "didCloseDocument",
        since we call it after closing now.

WebKit:

        Reviewed by Adam Roben.

        Fixed <rdar://problem/4778898> REGRESSION: crash in getInstanceForView()
        when quitting from kcbs.com

        No testcase because we can't open and close windows in DRT.

        The crash was caused by deallocating plug-ins that were later referenced
        in the unload event handler.

        * Plugins/WebBaseNetscapePluginView.mm: Don't call stop on ourselves because
        we may destroy our plugin before the unload handler fires. Also, we don't
        need to, since didCloseDocument will do it for us.

        (-[WebBaseNetscapePluginView addWindowObservers]): We don't need to listen
        for windowWillClose anymore, since we don't want to call -stop on ourselves.
        (-[WebBaseNetscapePluginView removeWindowObservers]): ditto.

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::didCloseDocument): Renamed from "willCloseDocument."

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

13 years ago2006-12-26 Eric Seidel <eric@webkit.org>
eseidel [Tue, 26 Dec 2006 16:26:32 +0000 (16:26 +0000)]
2006-12-26  Eric Seidel  <eric@webkit.org>

        Reviewed by rwlbuis.

        Replace bogus SVGLength::isFraction() method with valueAsPercentage() to fix:
        http://bugs.webkit.org/show_bug.cgi?id=11973

        * ksvg2/svg/SVGLength.cpp:
        (WebCore::SVGLength::valueInSpecifiedUnits): remove extra spaces
        (WebCore::SVGLength::valueAsPercentage): new method
        * ksvg2/svg/SVGLength.h:
        * ksvg2/svg/SVGLinearGradientElement.cpp:
        (WebCore::SVGLinearGradientElement::buildGradient): use valueAsPercentage()
        * ksvg2/svg/SVGPatternElement.cpp:
        (WebCore::SVGPatternElement::drawPatternContentIntoTile): return if malloc fails
        * ksvg2/svg/SVGRadialGradientElement.cpp:
        (WebCore::SVGRadialGradientElement::buildGradient): use valueAsPercentage()
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::createImageBuffer): return 0 if malloc fails
        * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
        (WebCore::SVGPaintServerGradient::setup): return if malloc fails
        * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
        (WebCore::SVGResourceMasker::applyMask): add comment about possible crash

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

13 years ago More "plugin" => "pluginPackage" renaming that I forgot to check in.
ggaren [Tue, 26 Dec 2006 05:36:48 +0000 (05:36 +0000)]
    More "plugin" => "pluginPackage" renaming that I forgot to check in.

        * Plugins/WebBaseNetscapePluginView.h:
        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView setPluginPackage:]):
        * Plugins/WebNetscapePluginEmbeddedView.h:
        * Plugins/WebNetscapePluginEmbeddedView.m:
        (-[WebNetscapePluginEmbeddedView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
        (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):

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

13 years ago Reviewed by Eric Seidel.
ggaren [Tue, 26 Dec 2006 05:24:55 +0000 (05:24 +0000)]
    Reviewed by Eric Seidel.

        Fixed crash when opening view source window.

        * WebView/WebView.mm:
        (-[WebView initWithCoder:]): Don't use the WebView until calling
        _commonInitialization...

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

13 years agoReviewed by Oliver.
zimmermann [Tue, 26 Dec 2006 01:44:42 +0000 (01:44 +0000)]
Reviewed by Oliver.

In the DOMParser class, we have to create content-type specific
documents, instead of a pure "Document" object. Real-life SVG
files us this way to convert strings "<svg><rect x=...></svg>
to a new Document structure.

Add new testcase dynamic-svg-document-creation.svg.

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

13 years agoWebCore:
ggaren [Tue, 26 Dec 2006 01:22:28 +0000 (01:22 +0000)]
WebCore:

        Reviewed by Oliver Hunt.

        Removed WebCoreSettings, cleaned up WebCore::Settings.

        * WebCore.exp: Exported Settings for use by WebKit, removed WebCoreSettings class.

        * WebCore.xcodeproj/project.pbxproj: Removed WebCoreSetttings.h/.mm.
        Added Settings.cpp.

        * page/Frame.cpp: Removed cruft that duplicated Settings data. Callers now call
        through to Settings to get Settings data.

        * page/Page.cpp: Added Settings data member, to replace the one that WebView
        used to hold.

        * page/Settings.cpp: Added.
        * page/Settings.h:
            - Renamed all functions to match WebKit API. Renamed all variables to
            match functions. Favorite old name: "isPluginsEnabled."
            - Moved EditableLinkBehavior outside of the class. Having it inside
            just made it harder to type.
            - Merged in old WebCoreSettings functionality, like guarding against re-setting
            to the same value, and making sure to update page layout.
            - Paired setters and getters, putting setters first.

WebKit:

        Reviewed by Oliver Hunt.

        Removed WebCoreSettings, cleaned up WebCore::Settings.

        * WebView/WebFrame.mm: Added helper functions for converting between
        WebKitEditableLinkBehavior and WebCore::EditableLinkBehavior. I'm not sure
        that this is the best place for these functions, but it's where all the
        other functions like them reside.
        (core):
        (kit):
        * WebView/WebFrameInternal.h:

        * WebView/WebView.mm: Removed uses of WebCoreSettings. Replaced with direct
        use of underlying page's settings.

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

13 years agoReviewed by Oliver.
zimmermann [Tue, 26 Dec 2006 00:45:12 +0000 (00:45 +0000)]
Reviewed by Oliver.
Fix some minor style issues.

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

13 years agoReviewed by Oliver.
zimmermann [Tue, 26 Dec 2006 00:37:47 +0000 (00:37 +0000)]
Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=11963
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11123

Fix SVGList JS wrappers, which operate on POD types (ie. Point).
There exists a special JSSVGPODTypeWrapperCreatorForList class now,
which operators on specialized SVGPODList's. It makes it possible
to support stuff like "myList.getItem(0).value = 200", for POD lists.

Adding two new testcases demonstrating the usage of SVG DOM & SVGAnimatedPoints.

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

13 years ago Reviewed by Oliver Hunt.
ggaren [Mon, 25 Dec 2006 22:32:15 +0000 (22:32 +0000)]
    Reviewed by Oliver Hunt.

        Some refactoring in preparation for fixing <rdar://problem/4778898>
        REGRESSION: crash in getInstanceForView() when quitting from kcbs.com

        Two renames:
            - "plugin" => "pluginPackage" (since the type is WebNetscapePluginPackage *)
            - "instance" and/or "pluginPointer" => plugin (since NPP is an opaque handle to a plug-in)

        Removed braces around single-line 'if' statements.

        Made plugin a pointer instead of an inline ivar. This allows us to NULL
        it out once we call NPP_Destroy on it.

        Added helper functions for creating and destroying plugin. The destroy function
        NULLs out plugin, which helps with debugging.

        (-[WebBaseNetscapePluginView willCallPlugInFunction]): Added an ASSERT
        to catch attempts to call functions on destroyed plug-ins.

        (-[WebBaseNetscapePluginView _createPlugin]): New helper function.
        (-[WebBaseNetscapePluginView _destroyPlugin]): New helper function.

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

13 years ago Reviewed by Maciej.
ap [Mon, 25 Dec 2006 18:37:20 +0000 (18:37 +0000)]
    Reviewed by Maciej.

        http://bugs.webkit.org/show_bug.cgi?id=10313
        Reproducible crash when doing importStylesheet in javascript with
        xsl files that use xsl:import

        This doesn't fully address the bug, but makes a couple of steps
        in that direction.

        * xml/XSLTProcessor.cpp:
        (WebCore::transformToString): Set m_stylesheet even if it's created implicitly,
        rather than passed from outside. Always reset it in the end (this doesn't affect
        Document::applyXSLTransform(), which was the only user of setXSLStylesheet()).

        * xml/xmlhttprequest.cpp:
        (WebCore::XMLHttpRequest::getResponseXML): Set the loaded document's URL.

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

13 years ago2006-12-24 David Kilzer <ddkilzer@webkit.org>
ddkilzer [Sun, 24 Dec 2006 18:02:38 +0000 (18:02 +0000)]
2006-12-24  David Kilzer  <ddkilzer@webkit.org>

        Removed empty directory.

        * WebKit/Loader: Removed.

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

13 years ago Reviewed by Maciej and Geoff.
weinig [Sun, 24 Dec 2006 16:46:33 +0000 (16:46 +0000)]
    Reviewed by Maciej and Geoff.

        - remove unused member variable m_styleSelectorDirty

        No test possible (no functionality change)

        * dom/Document.cpp:
        (WebCore::Document::Document):
        (WebCore::Document::recalcStyleSelector):
        * dom/Document.h:

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

13 years agoLayoutTests:
weinig [Sun, 24 Dec 2006 15:48:01 +0000 (15:48 +0000)]
LayoutTests:

        Reviewed by Geoff.

        Tests for http://bugs.webkit.org/show_bug.cgi?id=11952
        style changes made through CSSMediaRule functions insertRule()
        and deleteRule do not show up on the screen

        * fast/dom/css-mediarule-deleteRule-update-expected.checksum: Added.
        * fast/dom/css-mediarule-deleteRule-update-expected.png: Added.
        * fast/dom/css-mediarule-deleteRule-update-expected.txt: Added.
        * fast/dom/css-mediarule-deleteRule-update.html: Added.
        * fast/dom/css-mediarule-insertRule-update-expected.checksum: Added.
        * fast/dom/css-mediarule-insertRule-update-expected.png: Added.
        * fast/dom/css-mediarule-insertRule-update-expected.txt: Added.
        * fast/dom/css-mediarule-insertRule-update.html: Added.

WebCore:

        Reviewed by Geoff.

        Patch for http://bugs.webkit.org/show_bug.cgi?id=11952
        style changes made through CSSMediaRule functions insertRule()
        and deleteRule do not show up on the screen

        Tests added:
        * fast/dom/css-mediarule-deleteRule-update.html
        * fast/dom/css-mediarule-insertRule-update.html

        * css/CSSMediaRule.cpp:
        (WebCore::CSSMediaRule::insertRule):
        (WebCore::CSSMediaRule::deleteRule):

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

13 years ago Reviewed by Alexey.
rwlbuis [Sun, 24 Dec 2006 15:45:52 +0000 (15:45 +0000)]
    Reviewed by Alexey.

        Get rid of unused variable.

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

13 years ago http://bugs.webkit.org/show_bug.cgi?id=9801
ap [Sun, 24 Dec 2006 07:39:59 +0000 (07:39 +0000)]
    bugs.webkit.org/show_bug.cgi?id=9801
        fast/encoding/utf-16-big-endian-diffs.html pixel test fails

        * fast/encoding/utf-16-big-endian-expected.checksum:
        * fast/encoding/utf-16-big-endian-expected.png:
        * fast/encoding/utf-16-little-endian-expected.checksum:
        * fast/encoding/utf-16-little-endian-expected.png:
        Updated the pixel results, which weren't landed with the fix for bug 3297.

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

13 years ago Reviewed by Maciej Stachowiak.
ggaren [Sun, 24 Dec 2006 07:19:11 +0000 (07:19 +0000)]
    Reviewed by Maciej Stachowiak.

        Added --threaded support to run-webkit-tests and DumpRenderTree.

        In "threaded" mode, DRT runs a concurrent JavaScript thread with each test,
        stressing the thread safety of JavaScriptCore and the JavaScriptCore/WebCore
        interface. This is useful for tracking down bugs you might see on a system
        configured to use a PAC file.

        Ironically, I can proudly state that very few layout tests pass.

        * DumpRenderTree/DumpRenderTree.m: Added javaScriptThread and helper functions
        for starting and stopping it.
        (runJavaScriptThread): helper function
        (startJavaScriptThread): helper function
        (stopJavaScriptThread): helper function

        (dumpRenderTree): Added --threaded command line argument.
        * Scripts/run-webkit-tests: ditto

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

13 years ago Reviewed by Geoff.
ap [Sun, 24 Dec 2006 07:09:13 +0000 (07:09 +0000)]
    Reviewed by Geoff.

        http://bugs.webkit.org/show_bug.cgi?id=11933
        REGRESSION: trying to change a property in a computed style declaration results in a crash

        Test: fast/dom/computed-style-set-property.html

        * bindings/js/kjs_css.cpp:
        (KJS::DOMCSSStyleDeclaration::put): Added a check for null m_impl->stylesheet(). Also, fixed
        incorrect logic in Dashboard branch - it didn't return in time if removeProperty() raised
        an exception (credit for noticing this bug goes to Geoff).

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

13 years ago Reviewed by Geoff.
weinig [Sun, 24 Dec 2006 03:19:05 +0000 (03:19 +0000)]
    Reviewed by Geoff.

        Patch for http://bugs.webkit.org/show_bug.cgi?id=11940
        Bad transparency in some cursor pointer images

        * Resources/northEastResizeCursor.png:
        * Resources/northEastSouthWestResizeCursor.png:
        * Resources/northWestResizeCursor.png:
        * Resources/northWestSouthEastResizeCursor.png:
        * Resources/southEastResizeCursor.png:
        * Resources/southWestResizeCursor.png:

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

13 years agoLayoutTests:
weinig [Sun, 24 Dec 2006 00:48:03 +0000 (00:48 +0000)]
LayoutTests:

        Reviewed by Geoff.

        Tests for http://bugs.webkit.org/show_bug.cgi?id=11876
        CSSMediaRule functions insertRule and deleteRule don't raise exceptions

        * fast/dom/css-mediarule-functions-expected.txt: Added.
        * fast/dom/css-mediarule-functions.html: Added.

WebCore:

        Reviewed by Geoff.

        Patch for http://bugs.webkit.org/show_bug.cgi?id=11876
        CSSMediaRule functions insertRule and deleteRule don't raise exceptions

        Test added:
        * fast/dom/css-mediarule-functions.html

        * bindings/js/kjs_css.cpp:
        (KJS::DOMCSSRuleFunc::callAsFunction):
        * css/CSSMediaRule.cpp: add exception handling
        (WebCore::CSSMediaRule::insertRule):
        (WebCore::CSSMediaRule::deleteRule):
        * css/CSSMediaRule.h: add ExceptionCode arguments
        * css/CSSMediaRule.idl: un-comment exceptions

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

13 years agoUpdate editing/pasteboard/paste-table-002 results now that the two style decl arrays...
hyatt [Sat, 23 Dec 2006 18:18:34 +0000 (18:18 +0000)]
Update editing/pasteboard/paste-table-002 results now that the two style decl arrays are in sync.

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

13 years ago2006-12-23 David Kilzer <ddkilzer@webkit.org>
ddkilzer [Sat, 23 Dec 2006 16:19:28 +0000 (16:19 +0000)]
2006-12-23  David Kilzer  <ddkilzer@webkit.org>

        Reviewed by Mitz.

        Regenerate test results with default fonts installed.

        * svg/custom/js-font-test-expected.png: Regenerated.
        * svg/custom/js-font-test-expected.txt: Regenerated.

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

13 years ago Fix 11942. The inheritable properties array is duplicated (lame). Make
hyatt [Sat, 23 Dec 2006 12:39:54 +0000 (12:39 +0000)]
    Fix 11942.  The inheritable properties array is duplicated (lame).  Make
        sure to keep both in sync.

        Reviewed by mitz

        * css/CSSComputedStyleDeclaration.cpp:
        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::):

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

13 years ago2006-12-22 Mark Rowe <bdash@webkit.org>
bdash [Sat, 23 Dec 2006 06:01:00 +0000 (06:01 +0000)]
2006-12-22  Mark Rowe  <bdash@webkit.org>

        Reviewed by Brady.

        Fix for <rdar://problem/4265976>
        prepare-ChangeLog sometimes lists the wrong Objective-C class name for a changed method

        * Scripts/prepare-ChangeLog: Treat @end as the end of both the interface and the method declaration.

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

13 years agoLayoutTests:
ggaren [Sat, 23 Dec 2006 00:19:06 +0000 (00:19 +0000)]
LayoutTests:

        Reviewed by Brady Eidson.

        Test for <rdar://problem/4871518> Leopard9A321: Crash visiting www.audible.com
        (WebCore::FrameLoader::loadSubframe)

        Tests an onload handler for a synchronously loaded iframe removing the iframe
        from the document.

        * fast/frames/onload-remove-iframe-crash-expected.txt: Added.
        * fast/frames/onload-remove-iframe-crash.html: Added.

WebCore:

        Reviewed by Brady Eidson.

        Fixed <rdar://problem/4871518> Leopard9A321: Crash visiting www.audible.com
        (WebCore::FrameLoader::loadSubframe)

        * loader/mac/FrameLoaderMac.mm:
        (WebCore::FrameLoader::createFrame): Updated to reflect the fact that
        createChildFrameNamed: now returns a WebCore::Frame* instead of a
        WebCoreFrameBridge *.
        * page/mac/WebCoreFrameBridge.h:

WebKit:

        Reviewed by Brady Eidson.

        Fixed <rdar://problem/4871518> Leopard9A321: Crash visiting www.audible.com
        (WebCore::FrameLoader::loadSubframe)

        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
        - The fix:
            Changed to re-fetch the child frame we're trying to load before returning it,
            since its onload handler may have removed it from the document. This
            allows us to treat a removed frame like a frame that never loaded.

        - Plus some cleanup:
            - Changed to return a WebCore::Frame* instead of a WebFrameBridge *,
            to simplify some code.
            - Grouped ObjC objects by usage, and moved calls to -release so that they
            immediately follow the calls that retain.

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

13 years ago Make sure to actually set the stroke thickness for text decorations.
hyatt [Fri, 22 Dec 2006 23:28:35 +0000 (23:28 +0000)]
    Make sure to actually set the stroke thickness for text decorations.
        Covered by bugzilla bug 11921.

        Reviewed by mitz

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintDecorations):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paintDecoration):

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

13 years agoReviewed by Rob.
zimmermann [Fri, 22 Dec 2006 19:35:33 +0000 (19:35 +0000)]
Reviewed by Rob.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=11934

Adding/removing SVGPathSeg* items to a SVGPathElement (through SVGPathSegList
interface) has live update problems, as the notifyAttributeChange() function
isn't called anywhere. The context param is currently stored per SVGPathSeg,
which is not needed - as it can be done using SVGPathSegList completely. It
wastes memory, that is fixed. In order to get rid of the context param in
SVGPathSeg, we need a way to map SVGPathSeg* objects to SVGStyledElement*
objects ("context element"). That is done using a new HashMap in the
SVGDocumentExtensions class.

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

13 years ago2006-12-22 Mitz Pettel <mitz@webkit.org>
ap [Fri, 22 Dec 2006 19:26:12 +0000 (19:26 +0000)]
2006-12-22  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Beth.

        - fix http://bugs.webkit.org/show_bug.cgi?id=11903
          REGRESSION: outline not drawn if line style is dashed.

        This fixes a bunch of existing pixel tests.

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::drawBorder):

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

13 years ago Reviewed by Kevin Decker
sullivan [Fri, 22 Dec 2006 18:49:14 +0000 (18:49 +0000)]
    Reviewed by Kevin Decker

        - renamed markMisspellingsInAdjacentWords to markMisspellingsAfterTypingToPosition
          in anticipation of fixing it to work more correctly with grammar checking, where
          only checking adjacent words isn't good enough.

        * editing/Editor.h:
        renamed markMisspellingsInAdjacentWords to markMisspellingsAfterTypingToPosition

        * editing/TypingCommand.cpp:
        (WebCore::TypingCommand::markMisspellingsAfterTyping):
        updated for name change

        * editing/mac/EditorMac.mm:
        (WebCore::Editor::markMisspellingsAfterTypingToPosition):
        renamed from markMisspellingsInAdjacentWords and added FIXME comment

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

13 years ago2006-12-22 Eric Seidel <eric@webkit.org>
eseidel [Fri, 22 Dec 2006 17:43:32 +0000 (17:43 +0000)]
2006-12-22  Eric Seidel  <eric@webkit.org>

        Reviewed by aroben.

        http://bugs.webkit.org/show_bug.cgi?id=11912
        Overriding visibility does not behave as expected.

        * rendering/RenderSVGContainer.cpp:
        (WebCore::RenderSVGContainer::paint): allow children to draw when container is visibility='hidden'

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

13 years ago Reviewed by Geoff Garen
sullivan [Fri, 22 Dec 2006 14:11:15 +0000 (14:11 +0000)]
    Reviewed by Geoff Garen

        - improved concept and implementation of my previous checkin after discussing with Darin

        * WebView/WebViewPrivate.h:
        * WebView/WebView.mm:
        (-[WebView setHoverFeedbackSuspended:]):
        renamed from setIgnoresMouseMovedEvents, and now tells the main WebHTMLView (if any) that this state has
        changed. Telling just the main WebHTMLView is a bit of an implementation hack. Hopefully someday we can
        rework the document architecture and make this kind of thing less hacky (but this is following existing
        customs, so I don't feel too bad)
        (-[WebView isHoverFeedbackSuspended]):
        renamed from ignoresMouseMovedEvents

        * WebView/WebHTMLViewInternal.h:
        declare _hoverFeedbackSuspendedChanged

        * WebView/WebHTMLView.m:
        (-[WebHTMLView _updateMouseoverWithEvent:]):
        test the webView's state of the hit-tested WebHTMLView rather than self
        (-[WebHTMLView _hoverFeedbackSuspendedChanged]):
        generate a fake mouse-moved event, which simulates the mouse moving away from
        the current element or back over it

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

13 years agoReviewed by Rob.
zimmermann [Fri, 22 Dec 2006 09:30:51 +0000 (09:30 +0000)]
Reviewed by Rob.

Fix SVGPathSeg JS object creation. SVGPathSegList has to return
the actual SVGPathSegLineToAbs/MoveToRel... object instead of a pure
SVGPathSeg JS object.

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

13 years agoWebCore:
bdakin [Fri, 22 Dec 2006 05:53:19 +0000 (05:53 +0000)]
WebCore:
        Reviewed by Geoff.

        Fix for <rdar://problem/4897162> REGRESSION: Attempting to create a
        new message in .Mac web mail causes Safari to crash
        ( KJS::DOMCSSStyleDeclaration::put() + 368 )

        This was a regression from my clone-node change. This fix is very
        simple.

        * dom/StyledElement.cpp:
        (WebCore::StyledElement::copyNonAttributeProperties): Must set the
        data that getInlineStyleDecl() points to instead of setting
        m_inlineStyleDecl directly. I also changed some variable names.
        * dom/StyledElement.h: Don't need parameter name here.

Layout Tests:
        Reviewed by Beth. (Geoff wrote the new test.)

        New test for <rdar://problem/4897162>. This also reverts the layout
        test changes that were caused by the first rev of the clone-node
        style change.

        * editing/style/remove-underline-across-paragraph-expected.checksum:
        * editing/style/remove-underline-across-paragraph-expected.png:
        * editing/style/remove-underline-across-paragraph-expected.txt:
        * editing/style/remove-underline-expected.checksum:
        * editing/style/remove-underline-expected.png:
        * editing/style/remove-underline-expected.txt:
        * fast/dom/clone-node-style-expected.txt: Added.
        * fast/dom/clone-node-style.html: Added.

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

13 years ago2006-12-21 Mark Rowe <bdash@webkit.org>
bdash [Fri, 22 Dec 2006 02:20:51 +0000 (02:20 +0000)]
2006-12-21  Mark Rowe  <bdash@webkit.org>

        Reviewed by Tim Hatcher.

        http://bugs.webkit.org/show_bug.cgi?id=11922
        Bug 11922: REGRESSION(r17128): Drosera no longer shows local variables in stack frame

        * Drosera/DebuggerDocument.m:
        (-[WebScriptObject webScriptAttributeKeysForScriptObject:]): Use an anonymous function with function.call to
        ensure that the properties are being retrieved from the correct scope object.

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

13 years agoLayoutTests:
adele [Fri, 22 Dec 2006 01:53:48 +0000 (01:53 +0000)]
LayoutTests:

        Reviewed by Geoff.

        Test for <rdar://problem/4895716> REGRESSION: Pressing return key in search field doesn't begin search

        * fast/events/onsearch-enter-expected.txt: Added.
        * fast/events/onsearch-enter.html: Added.

WebCore:

        Reviewed by Geoff.

        - Fix for <rdar://problem/4895716> REGRESSION: Pressing return key in search field doesn't begin search

        Test: fast/events/onsearch-enter.html

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::defaultEventHandler): Calls onSearch when handling "Enter".  Also removed
         special case for AppKit search fields, so now the enter event is considered handled here.
        (WebCore::HTMLInputElement::onSearch): Added. Dispatches search event.
        * html/HTMLInputElement.h: Added onSearch.
        * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::onSearch): Calls onSearch on the node.

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

13 years ago Reviewed by Oliver.
darin [Fri, 22 Dec 2006 01:26:59 +0000 (01:26 +0000)]
    Reviewed by Oliver.

        * WebInspector/webInspector/inspector.js: Added default values for the new CSS
        properties so they don't appear in the inspector when their values are
        uninteresting.

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

13 years ago Reviewed by Geoff Garen
sullivan [Thu, 21 Dec 2006 23:02:26 +0000 (23:02 +0000)]
    Reviewed by Geoff Garen

        - added WebKit support for making a web page temporarily ignore mouse movements

        * WebView/WebViewPrivate.h:
        declare ignoresMouseMovedEvents and setIgnoresMouseMovedEvents:

        * WebView/WebView.mm:
        added ignoresMouseMovedEvents boolean field to _private data structure
        (-[WebView setIgnoresMouseMovedEvents:]):
        set new boolean field
        (-[WebView ignoresMouseMovedEvents]):
        return new boolean field

        * WebView/WebHTMLView.m:
        (-[WebHTMLView _updateMouseoverWithEvent:]):
        bail out right away if [[self _webView] ignoresMouseMovedEvents]

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

13 years agoLayoutTests:
ggaren [Thu, 21 Dec 2006 22:39:21 +0000 (22:39 +0000)]
LayoutTests:

        Reviewed by Brady Eidson.

        <rdar://problem/4897205> ASSERTION FAILURE in ContainerNode::queuePostAttachCallback
        when creating an iframe from an iframe onload handler

        Test for adding an iframe to the document from another iframe's onload handler.

        * fast/loader/iframe-recursive-synchronous-load-expected.txt: Added.
        * fast/loader/iframe-recursive-synchronous-load.html: Added.

WebCore:

        Reviewed by Brady Eidson.

        Fixed <rdar://problem/4897205> ASSERTION FAILURE in ContainerNode::queuePostAttachCallback
        when creating an iframe from an iframe onload handler

        I added that assertion to try to "keep things simple," but I've found a
        testcase that demonstrates why things need to be complicated.

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::queuePostAttachCallback):

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

13 years ago Reviewed by Darin.
ap [Thu, 21 Dec 2006 20:16:27 +0000 (20:16 +0000)]
    Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=11919
        Allow setting CSS values to null.

WebCore:
        * bindings/js/kjs_css.cpp:
        (KJS::DOMCSSStyleDeclaration::put):
        (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
        Convert null values to null strings.

LayoutTests:
        * fast/dom/css-set-property-exception-expected.txt:
        * fast/dom/css-set-property-exception.html:

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

13 years ago Reviewed by Anders.
rwlbuis [Thu, 21 Dec 2006 19:45:50 +0000 (19:45 +0000)]
    Reviewed by Anders.

        http://bugs.webkit.org/show_bug.cgi?id=11898
        CSSMediaRule functions insertRule and deleteRule assert when called from js in debug builds

        Test explicitly for the two media rule functions so it ends up calling callAsFunction.

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

13 years agoAdd support for the layoutTestController JavaScript object
lars [Thu, 21 Dec 2006 13:46:30 +0000 (13:46 +0000)]
Add support for the layoutTestController JavaScript object
to be able to get textOnly dumps.
Added a Qt specific hack to always get the same fonts (the ones
added in this submit) and the same dpi when running the layout tests.
Modified the run-webkit-tests script to also do a comparison to the
Mac generated outputs (by stripping out positioning information).

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

13 years ago2006-12-21 Mark Rowe <bdash@webkit.org>
bdash [Thu, 21 Dec 2006 08:08:59 +0000 (08:08 +0000)]
2006-12-21  Mark Rowe  <bdash@webkit.org>

        Reviewed by Geoff.

        http://bugs.webkit.org/show_bug.cgi?id=11888
        Bug 11888: REGRESSION (r18320): Web Inspector panes broken

        * WebInspector/webInspector/inspector.js: Use removeProperty to reset a style property to its
        initial value.  Bail out early from updateNodePane if Inspector has not yet been set.

2006-12-21  Mark Rowe  <bdash@webkit.org>

        Reviewed by Geoff.

        http://bugs.webkit.org/show_bug.cgi?id=11888
        Bug 11888: REGRESSION (r18320): Web Inspector panes broken

        * Drosera/debugger.js: Use removeProperty to reset a style property to its initial value.

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

13 years agoLand updated results for computed style test.
hyatt [Thu, 21 Dec 2006 07:53:18 +0000 (07:53 +0000)]
Land updated results  for computed style test.

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

13 years ago Make sure the execrable match-nearest-mail-blockquote-color CSS property...
hyatt [Thu, 21 Dec 2006 07:41:41 +0000 (07:41 +0000)]
    Make sure the execrable match-nearest-mail-blockquote-color CSS property is actually initialized (amazingly
        it started off with the value "match", since it wasn't even initialized).  Now that it is actually being
        initialized and properly copied and assigned to, tests have failed.  It seems that we were getting the
        behavior of "match" by default, when the initial value was supposed to be "normal."

        Because this property really should not exist at all, it's unclear to me what the right solution is here.

        * rendering/RenderStyle.cpp:
        (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
        (WebCore::StyleCSS3NonInheritedData::operator==):
        * rendering/RenderStyle.h:

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

13 years ago Reviewed by Adam's rubberstamp
beidson [Thu, 21 Dec 2006 05:43:32 +0000 (05:43 +0000)]
    Reviewed by Adam's rubberstamp

        Accidentally left a logging channel on in my checkin

        * platform/Logging.cpp:
        (WebCore::):

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

13 years agoReviewed by Oliver.
zimmermann [Thu, 21 Dec 2006 01:42:38 +0000 (01:42 +0000)]
Reviewed by Oliver.

Fix removeItem recursively calling itself (!). It was meant to call m_vector.remove(index)
not removeItem(index, ec). This bug is in SVN for quite some time now :-)

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

13 years ago Reviewed by John Sullivan.
harrison [Thu, 21 Dec 2006 01:29:17 +0000 (01:29 +0000)]
    Reviewed by John Sullivan.

        <rdar://problem/4893376> REGRESSION: Crash occurs at WebCoreFrameBridge fontForSelection: when drag selecting from a line break

        No layout test added because crash only happens in path where editing window is key,
        which is never the case for the automated tests.

        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge fontForSelection:]):
        Add nil check of fontForSelection() result.

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

13 years agoReviewed by Adam.
zimmermann [Thu, 21 Dec 2006 00:53:02 +0000 (00:53 +0000)]
Reviewed by Adam.

Adding new test js-update-style.svg, testing
dynamic style updates via JS (here: stroke-width change)

Setting eol-style native property for all the js-update*.svg
files, as requested by Adam.

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

13 years agoReviewed by Beth.
zimmermann [Thu, 21 Dec 2006 00:26:38 +0000 (00:26 +0000)]
Reviewed by Beth.

Adding new test js-update-pattern.svg, testing
dynamic pattern updates via JS.

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

13 years agoReviewed by Maciej.
zimmermann [Thu, 21 Dec 2006 00:13:42 +0000 (00:13 +0000)]
Reviewed by Maciej.

Fix dynamic gradient changes, via JS. It actually worked before, but it
wasn't repainted. Behave just like the pattern notifyAttributeChange() code now.

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

13 years ago Reviewed by Darin Adler.
ggaren [Wed, 20 Dec 2006 23:57:05 +0000 (23:57 +0000)]
    Reviewed by Darin Adler.

        Fixed <rdar://problem/4809825>. We need to check isSafeScript when converting
        a Location to string.

        It's really a bug, and poor design, for objects to override toString.
        Subclasses that want custom toString implementations should add a toString
        function to their prototypes instead of overriding the JavaScript ToString
        operation. Following this design pattern would have avoided this bug in the
        first place.

        * bindings/js/kjs_window.cpp:
        (KJS::Location::toString):

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

13 years agoReviewed by Sam.
zimmermann [Wed, 20 Dec 2006 23:09:40 +0000 (23:09 +0000)]
Reviewed by Sam.
Add a new set of SVG JavaScript testcases, mostly using SVG DOM.

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

13 years agoUpdate computed style layout test results.
hyatt [Wed, 20 Dec 2006 22:30:47 +0000 (22:30 +0000)]
Update computed style layout test results.

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

13 years ago Fix SVG stroking. Make strokeThickness() get pushed into CG immediately
hyatt [Wed, 20 Dec 2006 22:25:31 +0000 (22:25 +0000)]
    Fix SVG stroking.  Make strokeThickness() get pushed into CG immediately
        when set in the GraphicsContext.  Remove setLineWidth since it is
        redundant with setStrokeThickness now.

        Reviewed by mitz

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::setLineWidth):
        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::setPlatformStrokeThickness):
        (WebCore::GraphicsContext::setPlatformStrokeStyle):
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::drawLine):
        (WebCore::GraphicsContext::drawEllipse):
        (WebCore::GraphicsContext::strokeArc):
        (WebCore::GraphicsContext::drawConvexPolygon):
        (WebCore::GraphicsContext::setPlatformStrokeThickness):
        * platform/graphics/qt/GraphicsContextQt.cpp:
        * platform/mac/FontMac.mm:
        (WebCore::Font::drawComplexText):
        (WebCore::Font::drawGlyphs):

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

13 years ago Fix for bug 11893, white text on form controls. Just make sure that
hyatt [Wed, 20 Dec 2006 21:55:41 +0000 (21:55 +0000)]
    Fix for bug 11893, white text on form controls.  Just make sure that
        all form control drawing in RenderTheme is bracketed by save/restore
        calls.

        Reviewed by adele

        * platform/mac/LocalCurrentGraphicsContext.h:
        * platform/mac/LocalCurrentGraphicsContext.mm:
        (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
        (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::paintTextField):
        (WebCore::RenderThemeMac::paintTextArea):

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

13 years ago2006-12-20 Mark Rowe <bdash@webkit.org>
bdash [Wed, 20 Dec 2006 21:54:10 +0000 (21:54 +0000)]
2006-12-20  Mark Rowe  <bdash@webkit.org>

        Reviewed by Anders.

        Fix leak of CGContextRef from GraphicsContext::createImageBuffer.

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::createImageBuffer): Release newly-created CGContextRef after passing it to GraphicsContext.

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

13 years ago Rubber-stamped by Darin.
bdakin [Wed, 20 Dec 2006 21:28:57 +0000 (21:28 +0000)]
    Rubber-stamped by Darin.

        This test also needs updated results after my clone node check-in.
        Somehow, the fix to clone node eliminated the dummy spans in both
        of these tests. This is an improvement.

        * editing/style/remove-underline-expected.checksum:
        * editing/style/remove-underline-expected.png:
        * editing/style/remove-underline-expected.txt:

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

13 years ago * kjs/string_object.cpp:
andersca [Wed, 20 Dec 2006 20:25:51 +0000 (20:25 +0000)]
    * kjs/string_object.cpp:
        (localeCompare):
        Another speculative Win32 fix.

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

13 years ago * kjs/string_object.cpp:
andersca [Wed, 20 Dec 2006 20:20:20 +0000 (20:20 +0000)]
    * kjs/string_object.cpp:
        (localeCompare):
        Speculative Win32 fix.

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

13 years ago Reviewed by Darin.
andersca [Wed, 20 Dec 2006 20:11:47 +0000 (20:11 +0000)]
    Reviewed by Darin.

        <rdar://problem/4235733>
        <http://bugs.webkit.org/?show_bug.cgi?id=10193>
        support String.localeCompare.

        Implement localeCompare.

        * JavaScriptCore.xcodeproj/project.pbxproj:
        * kjs/string_object.cpp:
        (localeCompare):
        (StringProtoFunc::callAsFunction):
        * kjs/string_object.h:
        (KJS::StringProtoFunc::):

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

13 years ago Reviewed by Mark Rowe.
thatcher [Wed, 20 Dec 2006 19:20:00 +0000 (19:20 +0000)]
    Reviewed by Mark Rowe.

        * JavaScriptCore.xcodeproj/project.pbxproj: use GCC 4.0 for all the other test targets

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

13 years ago Reviewed by Mark Rowe.
thatcher [Wed, 20 Dec 2006 18:54:38 +0000 (18:54 +0000)]
    Reviewed by Mark Rowe.

        <rdar://problem/4871993> WebCore-421.31 build fails with "Public API change" error when gcc 3.3 is the default compiler

        * bindings/scripts/CodeGeneratorObjC.pm: ignore blank lines in the public API check

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

13 years ago Rubber stamped by Darin.
bdakin [Wed, 20 Dec 2006 18:50:31 +0000 (18:50 +0000)]
    Rubber stamped by Darin.

        Updated results for this test after my clone node check-in
        yesterday.

        * editing/style/remove-underline-across-paragraph-expected.checksum:
        * editing/style/remove-underline-across-paragraph-expected.png:
        * editing/style/remove-underline-across-paragraph-expected.txt:

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

13 years ago Updated for Justin's checkin that added properties.
harrison [Wed, 20 Dec 2006 18:41:55 +0000 (18:41 +0000)]
    Updated for Justin's checkin that added properties.

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

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

13 years ago Reviewed by Mark Rowe.
thatcher [Wed, 20 Dec 2006 18:36:23 +0000 (18:36 +0000)]
    Reviewed by Mark Rowe.

        <rdar://problem/4871613> JavaScriptCore-421.31's dftables target needs to override default compiler and use gcc-4.0

        * JavaScriptCore.xcodeproj/project.pbxproj:

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

13 years agoLayoutTests:
harrison [Wed, 20 Dec 2006 15:40:34 +0000 (15:40 +0000)]
LayoutTests:

        Reviewed by John Sullivan.

        Test for <rdar://problem/4570218> REGRESSION (?-10.4.7): cntl-K only works the first time

        * editing/deleting/delete-to-end-of-paragraph-expected.checksum: Added.
        * editing/deleting/delete-to-end-of-paragraph-expected.png: Added.
        * editing/deleting/delete-to-end-of-paragraph-expected.txt: Added.
        * editing/deleting/delete-to-end-of-paragraph.html: Added.

WebCore:

        Reviewed by John Sullivan.

        <rdar://problem/4570218> REGRESSION (?-10.4.7): cntl-K only works the first time

        Test:
        * editing/deleting/delete-to-end-of-paragraph.html

        * editing/TypingCommand.cpp:
        (WebCore::TypingCommand::forwardDeleteKeyPressed):
        If the selection was a caret at the end of the paragraph, extend selection so it wraps to the start of next paragraph (if any),

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

13 years agoBuild fix, reviewed by Mitz.
zimmermann [Wed, 20 Dec 2006 14:16:38 +0000 (14:16 +0000)]
Build fix, reviewed by Mitz.
Fix mac build, by using proper float -> int conversion.

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

13 years agoFix warning on buildbot on mac.
hyatt [Wed, 20 Dec 2006 11:32:54 +0000 (11:32 +0000)]
Fix warning on buildbot on mac.

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

13 years ago Make sure text decoration colors prefer stroke over fill (and honor both...
hyatt [Wed, 20 Dec 2006 11:16:20 +0000 (11:16 +0000)]
    Make sure text decoration colors prefer stroke over fill (and honor both of the new CSS properties added
        for these values over color).

        Reviewed by mitz

        Added fast/text/stroking-decorations.html

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintDecorations):
        * rendering/RenderObject.cpp:
        (WebCore::decorationColor):
        (WebCore::RenderObject::getTextDecorationColors):

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

13 years agoLayoutTests:
ddkilzer [Wed, 20 Dec 2006 11:05:35 +0000 (11:05 +0000)]
LayoutTests:

        Reviewed by Darin.

        Test for http://bugs.webkit.org/show_bug.cgi?id=11746
        REGRESSION(r14931): Outlook Web Access incorrectly positions the insertion point when replying to e-mail

        * editing/selection/move-begin-end-expected.txt: Updated editing delegate results.
        * fast/forms/onselect-textarea-expected.txt: Updated selection start/end positions.
        * fast/forms/textarea-initial-caret-position-expected.txt: Added.
        * fast/forms/textarea-initial-caret-position.html: Added.
        * fast/forms/textarea-no-scroll-on-blur.html:
        Updated to position caret at end of text to match previous initial focus behavior for this test.
        * fast/forms/textarea-scrollbar.html: Ditto.
        * fast/forms/textarea-scrolled-endline-caret.html: Ditto.
        * fast/forms/textarea-scrolled-type.html: Ditto.

WebCore:

        Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=11746
        REGRESSION(r14931): Outlook Web Access incorrectly positions the insertion point when replying to e-mail

        Set caret at beginning of text on initial focus.

        Test: fast/forms/textarea-initial-caret-position.html

        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::updateFocusAppearance):

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

13 years ago Fix for bug 11889, support stroking and filling of HTML text from CSS. This...
hyatt [Wed, 20 Dec 2006 10:31:33 +0000 (10:31 +0000)]
    Fix for bug 11889, support stroking and filling of HTML text from CSS.  This patch adds four new CSS properties:
        text-fill-color, text-stroke-color, text-stroke-width and text-stroke (a shorthand for the other two).  Text
        is filled and not stroked by default and does so using the text-fill-color.  If this property is not set, then
        color is used.

        Stroking is accomplished by setting a stroke width.  Stroke color, if omitted, will be picked up from the color
        property.  You can set either color to be transparent or partially transparent.  A fully transparent fill color is
        the way to achieve an "outline" effect where only stroking happens.

        Stroking and filling are both customizable inside the ::selection pseudo-element, and so when selecting you can
        vary colors and widths.

        text-shadow applies to both the stroke and the fill.

        text-decorations do not yet respect the stroke/fill colors.  This will follow in a later patch.

        Reviewed by mitz

        Added fast/text/stroking.html as a layout test.  Enhanced RenderTreeAsText.cpp to dump fill and stroke information.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::):
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSPropertyNames.in:
        * css/cssparser.cpp:
        (WebCore::CSSParser::parseValue):
        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        * platform/mac/FontMac.mm:
        (WebCore::Font::drawComplexText):
        (WebCore::Font::drawGlyphs):
        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::placeBoxesHorizontally):
        * rendering/InlineFlowBox.h:
        (WebCore::InlineFlowBox::InlineFlowBox):
        (WebCore::InlineFlowBox::maxHorizontalVisualOverflow):
        * rendering/InlineTextBox.cpp:
        (WebCore::updateGraphicsContext):
        (WebCore::InlineTextBox::paint):
        (WebCore::InlineTextBox::paintSelection):
        (WebCore::InlineTextBox::paintMarkedTextBackground):
        (WebCore::InlineTextBox::paintTextMatchMarker):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::selectionForegroundColor):
        * rendering/RenderStyle.cpp:
        (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
        (WebCore::StyleCSS3InheritedData::operator==):
        (WebCore::RenderStyle::diff):
        * rendering/RenderStyle.h:
        (WebCore::RenderStyle::textStrokeColor):
        (WebCore::RenderStyle::textStrokeWidth):
        (WebCore::RenderStyle::textFillColor):
        (WebCore::RenderStyle::setTextStrokeColor):
        (WebCore::RenderStyle::setTextStrokeWidth):
        (WebCore::RenderStyle::setTextFillColor):
        (WebCore::RenderStyle::initialTextStrokeWidth):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::operator<<):

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

13 years agoAdded support to bind QObject's to JavaScript.
lars [Wed, 20 Dec 2006 10:05:24 +0000 (10:05 +0000)]
Added support to bind QObject's to JavaScript.

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

13 years agoLayoutTests:
adele [Wed, 20 Dec 2006 07:18:26 +0000 (07:18 +0000)]
LayoutTests:

        Reviewed by Anders.

        Test for <rdar://problem/3824247> Select All works even if -khtml-user-select:none; style is set

        * editing/selection/select-all-user-select-none-expected.txt: Added.
        * editing/selection/select-all-user-select-none.html: Added.

WebCore:

        Reviewed by Anders.

        - Fix for <rdar://problem/3824247> Select All works even if -khtml-user-select:none; style is set

        Also made user-select:none work on new list boxes, and cleaned up the list box defaultEventHandler.

        Test: editing/selection/select-all-user-select-none.html

        * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): Make sure canSelect is true on the root renderer.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::canSelectAll): Check canSelect here.
        (WebCore::HTMLSelectElement::selectAll): Added nil check for renderer.
        (WebCore::HTMLSelectElement::defaultEventHandler): Return early if the event has been handled.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Check canSelect here.
        * html/HTMLSelectElement.h:

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

13 years ago Reviewed by Geoff.
andersca [Wed, 20 Dec 2006 06:52:38 +0000 (06:52 +0000)]
    Reviewed by Geoff.

        Add -p option to testkjs which pretty prints the files instead of executing them.

        * JavaScriptCore.exp:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * kjs/Parser.cpp:
        (KJS::Parser::prettyPrint):
        * kjs/Parser.h:
        * kjs/testkjs.cpp:
        (doIt):

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

13 years agoFix bug numbers (Thanks Mitz!)
andersca [Wed, 20 Dec 2006 06:22:28 +0000 (06:22 +0000)]
Fix bug numbers (Thanks Mitz!)

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

13 years agoLayoutTests:
andersca [Wed, 20 Dec 2006 06:00:38 +0000 (06:00 +0000)]
LayoutTests:

        Reviewed by Adele.

        <rdar://problem/4726407>
        [9A255] Crash in WebCore::EventTargetNode::dispatchEvent

        * fast/dom/resources/script-element-gc.js: Added.
        * fast/dom/script-element-gc-expected.txt: Added.
        * fast/dom/script-element-gc.html: Added.

WebCore:

        Reviewed by Adele.

        <rdar://problem/4726407>
        [9A255] Crash in WebCore::EventTargetNode::dispatchEvent

        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::notifyFinished):
        Ref the script element while running the script since it can be freed
        when executing the script.

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

13 years ago Reviewed by Geoff.
darin [Wed, 20 Dec 2006 01:49:03 +0000 (01:49 +0000)]
    Reviewed by Geoff.

        - <rdar://problem/4885227>
          frame resizing is now live and no longer does direct drawing

        * html/HTMLFrameSetElement.h: Made frameBorder() and noResize() const.
        Added rowLengths() and colLengths() getters so that we don't have to
        have RenderFrameSet as a friend. Stopped using bit fields.

        * html/HTMLFrameSetElement.cpp:
        (WebCore::HTMLFrameSetElement::defaultEventHandler): Removed now-uneeded
        check for contextmenu events. Look at return value from userResize to
        decide whether to mark the event as "default handled". In the case where
        the event is handled, don't call through to the base class.

        * rendering/RenderFrameSet.h: No longer mark HTMLFrameSetElement as a
        friend. Made positionFrames and canResize private, and changed canResize
        to take an IntPoint. Added isResizingRow, isResizingColumn, canResizeRow,
        and canResizeColumn functions to be used soon for cursor feedback.
        Removed override of non-virtual element() function and replaced it with
        a private frameSet() inline function. Grouped all the data members for
        each axis into a GridAxis class, and made one called m_cols and one called
        m_rows. Used vectors for the resizable bits of this instead of new/delete
        arrays. Added a constant named "noSplit" so we don't have to use -1
        everywhere explicitly for this purpose. Renamed setResizing to
        setIsResizing and made it private. Eliminated resizing() function.
        Added new private helper functions, layOutAxis, findNonResizableSplits,
        splitPosition, hitTestSplit, startResizing, and continueResizing.
        Renamed m_resizing to m_isResizing, and m_clientResizing to
        m_isChildResizing.

        * rendering/RenderFrameSet.cpp:
        (WebCore::RenderFrameSet::RenderFrameSet): Removed now-unneeded initialization
        that is handled by the GridAxis and Vector constructors.
        (WebCore::RenderFrameSet::~RenderFrameSet): Ditto (for destructors).
        (WebCore::RenderFrameSet::GridAxis::GridAxis): Added.
        (WebCore::RenderFrameSet::frameSet): Added. Inline function so we don't have
        to cast the result of node() or element() everywhere.
        (WebCore::RenderFrameSet::nodeAtPoint): Updated for name changes.
        (WebCore::RenderFrameSet::GridAxis::resize): Added. Helper function to be used
        in the layout function.
        (WebCore::RenderFrameSet::layOutAxis): Added. Factored out the part of the
        layout function that used to be inside a for loop for the two axes.
        The algorithm is otherwise unchanged.
        (WebCore::RenderFrameSet::findNonResizableSplits): Added. Factored out the
        code that set up the "split variable" arrays from the layout function.
        (WebCore::RenderFrameSet::layout): Moved the bulk of this function into the
        new helpers. This allowed me to remove the use of goto.
        (WebCore::RenderFrameSet::positionFrames): Updated for change to data structures.
        Also added some more local variables for clarity.
        (WebCore::RenderFrameSet::startResizing): Added. Code factored out of the
        userResize function that handles mousedown events that might begin a resize.
        (WebCore::RenderFrameSet::continueResizing): Added. Code factored out of the
        userResize function that handles mouse events that continue a resize already
        in progress, including mouseup events that end the resizing. Uses the new
        splitPosition function so it can be used over and over again while resizing.
        (WebCore::RenderFrameSet::userResize): Restructured to use the new helper
        functions. Removed the direct drawing of a gray bar during mouse movement;
        instead we do the resizing live.
        (WebCore::RenderFrameSet::setIsResizing): Updated for name changes.
        (WebCore::RenderFrameSet::isResizingRow): Added.
        (WebCore::RenderFrameSet::isResizingColumn): Added.
        (WebCore::RenderFrameSet::canResize): Changed to use hitTestSplit for clarity.
        (WebCore::RenderFrameSet::canResizeRow): Added.
        (WebCore::RenderFrameSet::canResizeColumn): Added.
        (WebCore::RenderFrameSet::splitPosition): Added.
        (WebCore::RenderFrameSet::hitTestSplit): Added. Contains the guts of the code
        that was used both in canResize and userResize before -- now it's shared.
        (WebCore::RenderFrameSet::dump): Updated for name changes.

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

13 years agoLayoutTests:
justing [Wed, 20 Dec 2006 01:16:17 +0000 (01:16 +0000)]
LayoutTests:

        Reviewed by harrison

        Added Selection::removeAllRanges() and ::addRange()

        * editing/selection/addRange-expected.checksum: Added.
        * editing/selection/addRange-expected.png: Added.
        * editing/selection/addRange-expected.txt: Added.
        * editing/selection/addRange.html: Added.
        * editing/selection/removeAllRanges-expected.txt: Added.
        * editing/selection/removeAllRanges.html: Added.

WebCore:

        Reviewed by harrison

        Added Selection::removeAllRanges() and ::addRange()

        * bindings/js/kjs_window.cpp:
        (KJS::SelectionFunc::callAsFunction): Added the bindings for
        the two new functions.
        * bindings/js/kjs_window.h:
        (KJS::Selection::):
        * editing/SelectionController.cpp:
        (WebCore::SelectionController::removeAllRanges): Equivalent
        to clear().
        (WebCore::SelectionController::addRange): Until we support
        discontiguous selections, the new selected range is the
        union of the old selected range and the passed range if
        the two intersect, and the old range if they don't.
        * editing/SelectionController.h:

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

13 years ago Reviewed by Darin
sullivan [Wed, 20 Dec 2006 01:07:15 +0000 (01:07 +0000)]
    Reviewed by Darin

        - fix for unrepro infinite recursion bug:
        <rdar://problem/4448181> CrashTracer: 154 crashes in Safari at com.apple.AppKit:
        -[NSView isDescendantOf:] + 24; infinite recursion in makeFirstResponder logic

        * WebView/WebView.mm:
        added becomingFirstResponder BOOL to private struct
        (-[WebView becomeFirstResponder]):
        use _private->becomingFirstResponder to guard against infinite recursion; complain on
        debug builds if we run into this problem

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

13 years agom2006-12-19 Oliver Hunt <oliver@apple.com>
oliver [Wed, 20 Dec 2006 00:41:58 +0000 (00:41 +0000)]
m2006-12-19  Oliver Hunt  <oliver@apple.com>

        rs=ggaren.
        Fix expected output of layout test to not rely on ms fonts

        * svg/custom/js-font-test-expected.checksum:
        * svg/custom/js-font-test-expected.png:
        * svg/custom/js-font-test-expected.txt:

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

13 years ago Reviewed by Hyatt.
bdakin [Wed, 20 Dec 2006 00:32:37 +0000 (00:32 +0000)]
    Reviewed by Hyatt.

        Fix for <rdar://problem/4860924> outerHTML gives an out-of-date
        result when applied to a clone

        We were only copying the m_inlineStyleDecl over to clones, but we
        need to copy m_isStyleAttributeValid and
        m_synchronizingStyleAttribute as well to know when we have to
        update style, etc.

        * dom/StyledElement.cpp:
        (WebCore::StyledElement::copyNonAttributeProperties): Copy over all
        three member variables.
        * dom/StyledElement.h:
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::cloneNode): No longer need to copy the
        inline style decl explicitly because copyNonAttributeProperties()
        will take care of it.
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::copyNonAttributeProperties): Call into
        parent class implementation. This is important now that there is
        more than one implementation of this function.

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

13 years ago Reviewed by Darin Adler.
ggaren [Tue, 19 Dec 2006 23:39:03 +0000 (23:39 +0000)]
    Reviewed by Darin Adler.

        Fixed http://bugs.webkit.org/show_bug.cgi?id=11880
        REGRESSION (r18304): Assertion failure in -[WebHTMLView _canProcessDragWithDraggingInfo:]
        when dragging over the window's a scroll bar (innerFrame)

        RenderLayer needs to check 'active,' when deciding what to do if hit testing
        hasn't hit anything, because we want the default hit testing mechanism to return the
        document when we hit a scrollbar.

        This problem shows that the idea of 'capturing' was a little too ambitious
        in hit testing, at least given the current state of things. So, I've replaced
        'capturing' with 'mouseUp,' the condition that provided the immediate need
        for the capturing flag in the first place.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleMouseMoveEvent):
        * rendering/HitTestRequest.h: Removed 'capturing'
        (WebCore::HitTestRequest::HitTestRequest):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::hitTestLayer):

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

13 years agoJavaScriptCore:
beidson [Tue, 19 Dec 2006 23:08:10 +0000 (23:08 +0000)]
JavaScriptCore:

        Rubberstamped by Lou

        Removed unneccessary "else"

        * wtf/Assertions.cpp:

WebCore:

        Reviewed by Ada

        Added a logging channel for network activity for loader work

        * platform/Logging.cpp:
        (WebCore::):
        * platform/Logging.h:
        * platform/mac/LoggingMac.mm:
        (WebCore::InitializeLoggingChannelsIfNecessary):

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

13 years agoLayoutTests:
justing [Tue, 19 Dec 2006 22:06:53 +0000 (22:06 +0000)]
LayoutTests:

        Reviewed by hyatt

        <rdar://problem/4888891>
        Docs & Spreadsheets: Comment fails to insert if text is selected in the document

        * fast/dom/Range/surroundContents-1-expected.checksum: Added.
        * fast/dom/Range/surroundContents-1-expected.png: Added.
        * fast/dom/Range/surroundContents-1-expected.txt: Added.
        * fast/dom/Range/surroundContents-1.html: Added.

WebCore:

        Reviewed by hyatt

        <rdar://problem/4888891>
        Docs & Spreadsheets: Comment fails to insert if text is selected in the document

        * dom/Range.cpp:
        (WebCore::Range::surroundContents): If startContainer is a text node,
        it will be split when the range is extracted, and it will be its parent
        that will have to accept newParent.  Also cleaned up some code with
        isDescendantOf.

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

13 years agoJavaScriptCore:
thatcher [Tue, 19 Dec 2006 21:43:27 +0000 (21:43 +0000)]
JavaScriptCore:

        Reviewed by Darin.

        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features

        * JavaScriptCore.xcodeproj/project.pbxproj:

JavaScriptGlue:

        Reviewed by Darin.

        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features

        * JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

        Reviewed by Darin.

        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features

        * WebCore.xcodeproj/project.pbxproj:

WebKit:

        Reviewed by Darin.

        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features

        * WebKit.xcodeproj/project.pbxproj:

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

13 years agoReviewed by Oliver.
zimmermann [Tue, 19 Dec 2006 21:38:54 +0000 (21:38 +0000)]
Reviewed by Oliver.
Fix SVGList index validation (off-by-one error).

Adding new testcase js-font-test.svg, which uses SVGLengthList interface.
(This is a very old ksvg1 testcase, adopted for SVG1.1)

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

13 years agoReviewed by Oliver.
zimmermann [Tue, 19 Dec 2006 20:17:21 +0000 (20:17 +0000)]
Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=11879
Fix pattern on stroke/fill of text.

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

13 years ago Build fix
aliceli1 [Tue, 19 Dec 2006 19:58:46 +0000 (19:58 +0000)]
    Build fix

        * platform/graphics/ImageBuffer.cpp:

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

13 years ago Reviewed by Darin.
ap [Tue, 19 Dec 2006 18:56:45 +0000 (18:56 +0000)]
    Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=7296
        JavaScript error not thrown when trying to set a CSS property to an invalid value

WebCore:
        * bindings/js/kjs_css.cpp:
        (KJS::DOMCSSStyleDeclaration::put): When not in Dashboard compatibility mode,
        raise exception for invalid values. Also removed an unnecessary call to
        removeProperty(), which prevented the property value from being preserved in
        error case.

        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::setProperty): Moved the handling of
        empty property values here. Also removed an unnecessary call to removeProperty().

LayoutTests:
        * fast/block/positioning/relayout-on-position-change.html: This test was setting
        position property to an invalid value, expecting that it will be removed. Changed
        it to set the property to an empty value (now the test passes in Firefox, too).

        * fast/dom/css-set-property-exception-expected.txt:
        * fast/dom/css-set-property-exception.html:
        Updated the results, added a new case and made the output more verbose.

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

13 years ago Reviewed by Adam.
andersca [Tue, 19 Dec 2006 18:45:12 +0000 (18:45 +0000)]
    Reviewed by Adam.

        * dom/Document.h:
        * page/EventHandler.h:
        Use correct forward declarations for HitTestRequest.

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

13 years agoBuild fix, not reviewed.
zimmermann [Tue, 19 Dec 2006 15:09:04 +0000 (15:09 +0000)]
Build fix, not reviewed.

Fix Qt/Linux build. Missing GraphicsContext.h include.
Fix Mac build, by adding lroundf() (I swear this compiled w/o that, locally :-)

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

13 years agoReviewed by Sam. Previous attempts reviewed by Oliver & Eric.
zimmermann [Tue, 19 Dec 2006 14:51:13 +0000 (14:51 +0000)]
Reviewed by Sam. Previous attempts reviewed by Oliver & Eric.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=11867

Bring back masking, by adding off-screen rendering functionality in GraphicsContext.
Add new "static GraphicsContext* createImageContext(const IntSize& size, bool grayScale)"
function, and implement it with CGBitmapContext in the GraphicsContextCG (stubs for Qt.)

Mask image sizes are dynamically calculated using the passed bounding box in applyMask,
as it was orignally planned. Gradient stroke mask image sizes aren't hardcoded to 2048x2048
anymore, but are as well dynamically calculated using getAbsoluteRepaintRect().

Add new ImageBuffer class encapsulating the size of the image, a platform-specific
handle (ie. CGImageRef for CG platform) plus the GraphicsContext pointer, obtained
via GraphicsContext::createImageBuffer. Offer a generic logic for rendering subtrees
of the rendering tree into a ImageBuffer (see renderSubtreeToImage function)
ImageBufferCG is completly implemented, ImageBufferQt is stubbed.

Also add correct default values for x/y/width/height of <mask>.
Fixes masking related LayoutTests, and speeds up gradient-on-stroke a lot.

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

13 years agoFix spelling error in Cairo graphics context.
hyatt [Tue, 19 Dec 2006 11:22:53 +0000 (11:22 +0000)]
Fix spelling error in Cairo graphics context.

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

13 years agoRemove save()/restore()... forgot they are more expensive.
hyatt [Tue, 19 Dec 2006 11:07:56 +0000 (11:07 +0000)]
Remove save()/restore()... forgot they are more expensive.

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

13 years ago Make sure to initialize the CG fill and stroke colors to our initial fill...
hyatt [Tue, 19 Dec 2006 11:04:18 +0000 (11:04 +0000)]
    Make sure to initialize the CG fill and stroke colors to our initial fill/stroke colors when first
        constructing a GraphicsContextCG.  Because Safari actually draws text in the bookmarks bar using GraphicsContext
        and sets a fill color, this could only really be seen in another WebKit app.

        Patched GraphicsContextQt as well, since it has the same pattern.

        Reviewed by bdash

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::setCGFillColor):
        (WebCore::setCGStrokeColor):
        (WebCore::GraphicsContext::GraphicsContext):

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

13 years agoRemove an unnecessary cgsetfill in drawEllipse.
hyatt [Tue, 19 Dec 2006 10:47:28 +0000 (10:47 +0000)]
Remove an unnecessary cgsetfill in drawEllipse.

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