16 years ago Reviewed by Maciej.
ap [Wed, 28 Dec 2005 18:21:50 +0000 (18:21 +0000)]
    Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6246
          TextIterator::rangeFromLocationAndLength() returns nil range for an
          empty document

        Test: editing/input/range-for-empty-document.html

        * khtml/editing/visible_text.cpp:
        Handle the case of an empty document and (0, 0) requested range.

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

16 years ago Reviewed and landed by Geoff.
ggaren [Wed, 28 Dec 2005 18:18:34 +0000 (18:18 +0000)]
    Reviewed and landed by Geoff.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6269
        ToT memory corruption

        * khtml/rendering/render_text.cpp:
        Remove deref().

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

16 years ago Rubber stamped by Eric.
mjs [Wed, 28 Dec 2005 03:47:48 +0000 (03:47 +0000)]
    Rubber stamped by Eric.

- proper length for Array concat function is 1, not 0; also add test
for String concat.

        * fast/js/kde/function_length-expected.txt:
        * fast/js/kde/resources/function_length.js:

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

16 years ago2005-12-27 Anders Carlsson <andersca@mac.com>
andersca [Tue, 27 Dec 2005 20:06:40 +0000 (20:06 +0000)]
2005-12-27  Anders Carlsson  <andersca@mac.com>

        Reviewed by Darin.

        - Update tests for http://bugzilla.opendarwin.org/show_bug.cgi?id=6250
        Implement Array.map and Array.filter

        * fast/js/array-every-expected.txt:
        * fast/js/array-every.html:
        * fast/js/array-foreach-expected.txt:
        * fast/js/array-foreach.html:
        Modify these tests since Array.every and Array.foreach now follow Mozilla
        and treat arrays as sparse, not visiting non-existing properties.

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

16 years ago2005-12-27 Anders Carlsson <andersca@mac.com>
andersca [Tue, 27 Dec 2005 20:02:01 +0000 (20:02 +0000)]
2005-12-27  Anders Carlsson  <andersca@mac.com>

        Reviewed by Darin.

        * kjs/array_object.cpp:
        Implement filter and map. Also, make the existing
        array iteration functions not invoke the callback for
        non-existing properties, just as Mozilla does now.

        * kjs/array_object.h:
        Add filter and map.

        * tests/mozilla/expected.html:
        Update, two 1.6 tests now pass.

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

16 years ago Reviewed by Hyatt, landed by Darin.
darin [Tue, 27 Dec 2005 19:13:40 +0000 (19:13 +0000)]
    Reviewed by Hyatt, landed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5699
          REGRESSION: incomplete repaint

        * khtml/rendering/render_object.cpp:
        (RenderObject::repaintAfterLayoutIfNeeded): Return false if only the
        size changed and not everything was repainted.
        * manual-tests/bugzilla-5699.html: Added.

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

16 years agoLayoutTests:
darin [Tue, 27 Dec 2005 19:06:50 +0000 (19:06 +0000)]

        Reviewed by Maciej, landed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4844
        Render "simple" Hebrew using the CG codepath

        * fast/text/international/bidi-AN-after-L-expected.checksum: Updated.
        * fast/text/international/bidi-AN-after-L-expected.png: Updated.
        * fast/text/international/bidi-L2-run-reordering-expected.checksum: Updated.
        * fast/text/international/bidi-L2-run-reordering-expected.png: Updated.
        * fast/text/international/bidi-LDB-2-CSS-expected.checksum: Updated.
        * fast/text/international/bidi-LDB-2-CSS-expected.png: Updated.
        * fast/text/international/bidi-LDB-2-HTML-expected.checksum: Updated.
        * fast/text/international/bidi-LDB-2-HTML-expected.png: Updated.
        * fast/text/international/bidi-LDB-2-formatting-characters-expected.checksum: Updated.
        * fast/text/international/bidi-LDB-2-formatting-characters-expected.png: Updated.
        * fast/text/international/bidi-explicit-embedding-expected.checksum: Updated.
        * fast/text/international/bidi-explicit-embedding-expected.png: Updated.
        * fast/text/international/bidi-fallback-font-weight-expected.checksum: Updated.
        * fast/text/international/bidi-fallback-font-weight-expected.png: Updated.
        * fast/text/international/bidi-ignored-for-first-child-inline-expected.checksum: Updated.
        * fast/text/international/bidi-ignored-for-first-child-inline-expected.png: Updated.
        * fast/text/international/bidi-innertext-expected.checksum: Updated.
        * fast/text/international/bidi-innertext-expected.png: Updated.
        * fast/text/international/bidi-layout-across-linebreak-expected.checksum: Updated.
        * fast/text/international/bidi-layout-across-linebreak-expected.png: Updated.
        * fast/text/international/bidi-override-expected.checksum: Updated.
        * fast/text/international/bidi-override-expected.png: Updated.


        Reviewed by Maciej, landed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4844
        Render "simple" Hebrew using the CG codepath

        * WebCoreSupport.subproj/WebTextRenderer.m: (shouldUseATSU): Exclude Hebrew letters and maqaf.

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

16 years agoLayoutTests:
darin [Tue, 27 Dec 2005 18:39:34 +0000 (18:39 +0000)]

        Reviewed by Maciej, landed by Darin.

        - fixed <http://bugzilla.opendarwin.org/show_bug.cgi?id=4101>
        CSS Fibonacci spiral using 4 images doesn't render correctly

        * fast/replaced/absolute-image-sizing-expected.checksum: Added.
        * fast/replaced/absolute-image-sizing-expected.png: Added.
        * fast/replaced/absolute-image-sizing-expected.txt: Added.
        * fast/replaced/absolute-image-sizing.html: Added.


        Reviewed by Maciej, landed by Darin.

        - fixed <http://bugzilla.opendarwin.org/show_bug.cgi?id=4101>
        CSS Fibonacci spiral using 4 images doesn't render correctly

        Added layout tests:
        * fast/replaced/absolute-image-sizing.html

        * khtml/rendering/render_box.cpp:
        (RenderBox::calcAbsoluteHorizontalValues): Use calcReplacedWidth() instead of intrinsicWidth()
        for replaced elements.
        (RenderBox::calcAbsoluteVerticalValues): Same thing for height.

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

16 years ago Reviewed by Geoff and Eric.
darin [Tue, 27 Dec 2005 18:26:16 +0000 (18:26 +0000)]
    Reviewed by Geoff and Eric.

        - http://bugzilla.opendarwin.org/show_bug.cgi?id=6198
          use RefPtr a few places in RenderText and related classes

        * khtml/html/htmltokenizer.h: Use RefPtr for some data members in Token.
        Also removed use of bitfields in Token, since there's no need to optimize storage here.
        * khtml/html/htmlparser.cpp:
        (HTMLParser::parseToken): Update for use of RefPtr in Token.
        (HTMLParser::textCreateErrorCheck): Ditto.
        (HTMLParser::commentCreateErrorCheck): Ditto.
        (HTMLParser::handleIsindex): Ditto.
        * khtml/html/htmltokenizer.cpp:
        (khtml::Token::addAttribute): Ditto.
        (khtml::HTMLTokenizer::processToken): Ditto.

        * khtml/rendering/render_text.h: Reduce the number of includes, change
        SOFT_HYPHEN from a macro into a constant. Change originalString function
        to return a PassRefPtr instead of a RefPtr. Make str and m_generatedContentStr
        member be a RefPtr.
        * khtml/rendering/render_text.cpp:
        (khtml::RenderText::previousOffset): Update for use of RefPtr for str.
        (khtml::RenderText::nextOffset): Ditto.
        (khtml::RenderText::RenderText): Ditto.
        (khtml::RenderText::originalString): Change to return PassRefPtr, even though
        it's not necessary at this level (since it's a virtual function).
        (khtml::RenderText::posOfChar): Update for use of RefPtr for str.
        (khtml::RenderText::setText): Ditto.
        (khtml::RenderTextFragment::RenderTextFragment): Ditto.
        (khtml::RenderTextFragment::originalString): Change to return PassRefPtr.

        * khtml/html/html_inlineimpl.cpp: Re-sorted list of includes, added newly-needed ones.
        * kwq/KWQRenderTreeDebug.cpp: Added new include needed since QPtrVector is no longer
        included by render_text.h.

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

16 years ago Fix suggested by Mitz.
darin [Tue, 27 Dec 2005 18:05:02 +0000 (18:05 +0000)]
    Fix suggested by Mitz.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6240
          REGRESSION: scrollbars in overflows don't work

        * khtml/xml/dom2_eventsimpl.cpp: (DOM::MouseRelatedEventImpl::computePositions):
        Remove the code to compute pageX/Y from clientX/Y, because clientX/Y are not passed
        in correctly (in fact, what's passed in is pageX/Y)! I accidentally included part
        of my fix for clientX/Y in the original patch.

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

16 years ago - updated test results for new JS 1.6 tests
mjs [Tue, 27 Dec 2005 12:56:45 +0000 (12:56 +0000)]
    - updated test results for new JS 1.6 tests

        * tests/mozilla/expected.html:

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

16 years ago2005-12-27 Anders Carlsson <andersca@mac.com>
andersca [Tue, 27 Dec 2005 12:29:57 +0000 (12:29 +0000)]
2005-12-27  Anders Carlsson  <andersca@mac.com>

        Reviewed by Maciej.

        Add Mozilla JS 1.6 tests.

        * tests/mozilla/js1_6/Array/browser.js: Added.
        * tests/mozilla/js1_6/Array/regress-290592.js: Added.
        * tests/mozilla/js1_6/Array/regress-304828.js: Added.
        * tests/mozilla/js1_6/Array/regress-305002.js: Added.
        * tests/mozilla/js1_6/Array/regress-310425-01.js: Added.
        * tests/mozilla/js1_6/Array/regress-310425-02.js: Added.
        * tests/mozilla/js1_6/Array/regress-320887.js: Added.
        * tests/mozilla/js1_6/Array/shell.js: Added.
        * tests/mozilla/js1_6/README: Added.
        * tests/mozilla/js1_6/Regress/browser.js: Added.
        * tests/mozilla/js1_6/Regress/regress-301574.js: Added.
        * tests/mozilla/js1_6/Regress/regress-309242.js: Added.
        * tests/mozilla/js1_6/Regress/regress-311157-01.js: Added.
        * tests/mozilla/js1_6/Regress/regress-311157-02.js: Added.
        * tests/mozilla/js1_6/Regress/regress-314887.js: Added.
        * tests/mozilla/js1_6/Regress/regress-320172.js: Added.
        * tests/mozilla/js1_6/Regress/shell.js: Added.
        * tests/mozilla/js1_6/String/browser.js: Added.
        * tests/mozilla/js1_6/String/regress-306591.js: Added.
        * tests/mozilla/js1_6/String/shell.js: Added.
        * tests/mozilla/js1_6/browser.js: Added.
        * tests/mozilla/js1_6/shell.js: Added.
        * tests/mozilla/js1_6/template.js: Added.

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

16 years ago No review, just a test harness change.
mjs [Tue, 27 Dec 2005 12:24:33 +0000 (12:24 +0000)]
    No review, just a test harness change.

- avoid bombing out if a shouldBe test case unexpectedly throws an exception

        * fast/js/kde/resources/base.js:

- this lets some of the tests get a bit further, so new results:

        * fast/js/kde/Number-expected.txt:
        * fast/js/kde/RegExp-expected.txt:
        * fast/js/kde/exception_propagation-expected.txt:
        * fast/js/kde/parse-expected.txt:

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

16 years agoLayoutTests:
mjs [Tue, 27 Dec 2005 12:05:35 +0000 (12:05 +0000)]

        Reviewed, tweaked and landed by Maciej.

- test case for 4405: <button> not listed in form collections.

        * fast/forms/button-in-forms-collection-expected.txt: Added.
        * fast/forms/button-in-forms-collection.html: Added.


        Reviewed and landed by Maciej.

- fixed 4405: <button> not listed in form collections.

Test: fast/forms/button-in-forms-collection.html

        * khtml/html/html_formimpl.h:
        (DOM::HTMLButtonElementImpl::isEnumeratable): override to return true

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

16 years agoJavaScriptCore:
mjs [Tue, 27 Dec 2005 11:07:49 +0000 (11:07 +0000)]

        Reviewed and landed by Maciej.

- fixed 6234: Can delete array index property incorrectly.

        * kjs/array_object.cpp:
        (ArrayInstance::deleteProperty): use toArrayIndex instead of toUInt32 when
looking for array properties.


        Reviewed, tweaked and landed by Maciej.

- test case for 6234: Can delete array index property incorrectly.

        * fast/js/array-float-delete.html: Added.

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

16 years ago2005-12-27 Anders Carlsson <andersca@mac.com>
andersca [Tue, 27 Dec 2005 10:35:55 +0000 (10:35 +0000)]
2005-12-27  Anders Carlsson  <andersca@mac.com>

        Reviewed by Maciej.

        * kjs/object.cpp:
        Remove duplicate call to putDirect.

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

16 years ago Reviewed by Darin and Geoff.
mjs [Tue, 27 Dec 2005 09:24:14 +0000 (09:24 +0000)]
    Reviewed by Darin and Geoff.

Changes by me and Anders.

- mostly fixed REGRESSION: 5-10% performance regression on JS iBench from getter/setter change

- also fixed some warnings reported by -Winline

        * JavaScriptCorePrefix.h: Move new and delete definitions higher so there
aren't conflicts with use in standard C++ headers
        * kjs/object.cpp:
        (KJS::throwSetterError): Moved this piece of put into a seprate function
to avoid the PIC branch.
        (KJS::JSObject::put): Use hasGetterSetterProperties to avoid expensive stuff
when not needed. Also use GetterSetter properties attribute.
        (KJS::JSObject::deleteProperty): Recompute whether any properties are getter/setter
properties any more, if this one was one.
        (KJS::JSObject::defineGetter): Let the PropertyMap know that it has getter/setter
properties now (and use the new attribute).
        (KJS::JSObject::defineSetter): Ditto.
        (KJS::JSObject::fillGetterPropertySlot): Out-of-line helper for getOwnPropertySlot,
to avoid global variable access in the hot code path.
        * kjs/object.h:
        (KJS::): Added GetterSetter attribute.
        (KJS::JSCell::isObject): Moved lower to be after inline methods it uses.
        (KJS::JSValue::isObject): ditto
        (KJS::JSObject::getOwnPropertySlot): try to avoid impact of getters and setters
as much as possible in the case where they are not being used
        * kjs/property_map.cpp:
        (KJS::PropertyMap::containsGettersOrSetters): New method to help with this
        * kjs/property_map.h:
        (KJS::PropertyMap::hasGetterSetterProperties): Ditto
        (KJS::PropertyMap::setHasGetterSetterProperties): Ditto
        (KJS::PropertyMap::PropertyMap): Added a crazy hack to store the
global "has getter/setter properties" flag in the property map
single entry, to avoid making objects any bigger.
        * kjs/value.h: Moved some things to object.h to make -Winline happier

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

16 years agoCheck in the beginnings of a VC 2005 project for JSCore dll.
hyatt [Mon, 26 Dec 2005 23:33:31 +0000 (23:33 +0000)]
Check in the beginnings of a VC 2005 project for JSCore dll.

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

16 years ago Rubber stamped by Geoff.
mjs [Mon, 26 Dec 2005 23:07:31 +0000 (23:07 +0000)]
    Rubber stamped by Geoff.

- land JavaScript tests from the kde version of kjs

        * fast/js/kde/Array-expected.txt: Added.
        * fast/js/kde/Array.html: Added.
        * fast/js/kde/Boolean-expected.txt: Added.
        * fast/js/kde/Boolean.html: Added.
        * fast/js/kde/Date-expected.txt: Added.
        * fast/js/kde/Date.html: Added.
        * fast/js/kde/Error-expected.txt: Added.
        * fast/js/kde/Error.html: Added.
        * fast/js/kde/GlobalObject-expected.txt: Added.
        * fast/js/kde/GlobalObject.html: Added.
        * fast/js/kde/Number-expected.txt: Added.
        * fast/js/kde/Number.html: Added.
        * fast/js/kde/Object-expected.txt: Added.
        * fast/js/kde/Object.html: Added.
        * fast/js/kde/Prototype-expected.txt: Added.
        * fast/js/kde/Prototype.html: Added.
        * fast/js/kde/RegExp-expected.txt: Added.
        * fast/js/kde/RegExp.html: Added.
        * fast/js/kde/StringObject-expected.txt: Added.
        * fast/js/kde/StringObject.html: Added.
        * fast/js/kde/assignments-expected.txt: Added.
        * fast/js/kde/assignments.html: Added.
        * fast/js/kde/cast-expected.txt: Added.
        * fast/js/kde/cast.html: Added.
        * fast/js/kde/comment-1-expected.txt: Added.
        * fast/js/kde/comment-1.html: Added.
        * fast/js/kde/comment-2-expected.txt: Added.
        * fast/js/kde/comment-2.html: Added.
        * fast/js/kde/completion-expected.txt: Added.
        * fast/js/kde/completion.html: Added.
        * fast/js/kde/conditional-expected.txt: Added.
        * fast/js/kde/conditional.html: Added.
        * fast/js/kde/const-expected.txt: Added.
        * fast/js/kde/const.html: Added.
        * fast/js/kde/constructor_length-expected.txt: Added.
        * fast/js/kde/constructor_length.html: Added.
        * fast/js/kde/crash-1-expected.txt: Added.
        * fast/js/kde/crash-1.html: Added.
        * fast/js/kde/crash-2-expected.txt: Added.
        * fast/js/kde/crash-2.html: Added.
        * fast/js/kde/delete-expected.txt: Added.
        * fast/js/kde/delete.html: Added.
        * fast/js/kde/empty-expected.txt: Added.
        * fast/js/kde/empty.html: Added.
        * fast/js/kde/encode_decode_uri-expected.txt: Added.
        * fast/js/kde/encode_decode_uri.html: Added.
        * fast/js/kde/eval-expected.txt: Added.
        * fast/js/kde/eval.html: Added.
        * fast/js/kde/evil-n-expected.txt: Added.
        * fast/js/kde/evil-n.html: Added.
        * fast/js/kde/exception_propagation-expected.txt: Added.
        * fast/js/kde/exception_propagation.html: Added.
        * fast/js/kde/exceptions-expected.txt: Added.
        * fast/js/kde/exceptions.html: Added.
        * fast/js/kde/function-expected.txt: Added.
        * fast/js/kde/function.html: Added.
        * fast/js/kde/function_arguments-expected.txt: Added.
        * fast/js/kde/function_arguments.html: Added.
        * fast/js/kde/function_constructor-expected.txt: Added.
        * fast/js/kde/function_constructor.html: Added.
        * fast/js/kde/function_length-expected.txt: Added.
        * fast/js/kde/function_length.html: Added.
        * fast/js/kde/garbage-n-expected.txt: Added.
        * fast/js/kde/garbage-n.html: Added.
        * fast/js/kde/inbuilt_function_proto-expected.txt: Added.
        * fast/js/kde/inbuilt_function_proto.html: Added.
        * fast/js/kde/inbuilt_function_tostring-expected.txt: Added.
        * fast/js/kde/inbuilt_function_tostring.html: Added.
        * fast/js/kde/iteration-expected.txt: Added.
        * fast/js/kde/iteration.html: Added.
        * fast/js/kde/j-comment-3-expected.txt: Added.
        * fast/js/kde/j-comment-3.html: Added.
        * fast/js/kde/j-comment-4-expected.txt: Added.
        * fast/js/kde/j-comment-4.html: Added.
        * fast/js/kde/literals-expected.txt: Added.
        * fast/js/kde/literals.html: Added.
        * fast/js/kde/math-expected.txt: Added.
        * fast/js/kde/math.html: Added.
        * fast/js/kde/md5-1-expected.txt: Added.
        * fast/js/kde/md5-1.html: Added.
        * fast/js/kde/md5-2-expected.txt: Added.
        * fast/js/kde/md5-2.html: Added.
        * fast/js/kde/object_prototype-expected.txt: Added.
        * fast/js/kde/object_prototype.html: Added.
        * fast/js/kde/object_prototype_tostring-expected.txt: Added.
        * fast/js/kde/object_prototype_tostring.html: Added.
        * fast/js/kde/operators-expected.txt: Added.
        * fast/js/kde/operators.html: Added.
        * fast/js/kde/parse-expected.txt: Added.
        * fast/js/kde/parse.html: Added.
        * fast/js/kde/prototype_length-expected.txt: Added.
        * fast/js/kde/prototype_length.html: Added.
        * fast/js/kde/prototype_proto-expected.txt: Added.
        * fast/js/kde/prototype_proto.html: Added.
        * fast/js/kde/resources/Array.js: Added.
        * fast/js/kde/resources/Boolean.js: Added.
        * fast/js/kde/resources/Date.js: Added.
        * fast/js/kde/resources/Error.js: Added.
        * fast/js/kde/resources/GlobalObject.js: Added.
        * fast/js/kde/resources/KNOWN_FAILURES: Added.
        * fast/js/kde/resources/Number.js: Added.
        * fast/js/kde/resources/Object.js: Added.
        * fast/js/kde/resources/Prototype.js: Added.
        * fast/js/kde/resources/README: Added.
        * fast/js/kde/resources/RegExp.js: Added.
        * fast/js/kde/resources/StringObject.js: Added.
        * fast/js/kde/resources/assignments.js: Added.
        * fast/js/kde/resources/base.js: Added.
        * fast/js/kde/resources/cast.js: Added.
        * fast/js/kde/resources/comment-1.js: Added.
        * fast/js/kde/resources/comment-2.js: Added.
        * fast/js/kde/resources/completion.js: Added.
        * fast/js/kde/resources/conditional.js: Added.
        * fast/js/kde/resources/const.js: Added.
        * fast/js/kde/resources/constructor_length.js: Added.
        * fast/js/kde/resources/crash-1.js: Added.
        * fast/js/kde/resources/crash-2.js: Added.
        * fast/js/kde/resources/delete.js: Added.
        * fast/js/kde/resources/empty.js: Added.
        * fast/js/kde/resources/encode_decode_uri.js: Added.
        * fast/js/kde/resources/eval.js: Added.
        * fast/js/kde/resources/evil-n.js: Added.
        * fast/js/kde/resources/exception_propagation.js: Added.
        * fast/js/kde/resources/exceptions.js: Added.
        * fast/js/kde/resources/function.js: Added.
        * fast/js/kde/resources/function_arguments.js: Added.
        * fast/js/kde/resources/function_constructor.js: Added.
        * fast/js/kde/resources/function_length.js: Added.
        * fast/js/kde/resources/garbage-n.js: Added.
        * fast/js/kde/resources/inbuilt_function_proto.js: Added.
        * fast/js/kde/resources/inbuilt_function_tostring.js: Added.
        * fast/js/kde/resources/iteration.js: Added.
        * fast/js/kde/resources/j-comment-3.js: Added.
        * fast/js/kde/resources/j-comment-4.js: Added.
        * fast/js/kde/resources/literals.js: Added.
        * fast/js/kde/resources/math.js: Added.
        * fast/js/kde/resources/md5-1.js: Added.
        * fast/js/kde/resources/md5-2.js: Added.
        * fast/js/kde/resources/object_prototype.js: Added.
        * fast/js/kde/resources/object_prototype_tostring.js: Added.
        * fast/js/kde/resources/operators.js: Added.
        * fast/js/kde/resources/parse.js: Added.
        * fast/js/kde/resources/prototype_length.js: Added.
        * fast/js/kde/resources/prototype_proto.js: Added.
        * fast/js/kde/resources/scope.js: Added.
        * fast/js/kde/resources/shell.js: Added.
        * fast/js/kde/resources/statements.js: Added.
        * fast/js/kde/resources/string-1-n.js: Added.
        * fast/js/kde/resources/string-2-n.js: Added.
        * fast/js/kde/resources/var_decl_init.js: Added.
        * fast/js/kde/scope-expected.txt: Added.
        * fast/js/kde/scope.html: Added.
        * fast/js/kde/statements-expected.txt: Added.
        * fast/js/kde/statements.html: Added.
        * fast/js/kde/string-1-n-expected.txt: Added.
        * fast/js/kde/string-1-n.html: Added.
        * fast/js/kde/string-2-n-expected.txt: Added.
        * fast/js/kde/string-2-n.html: Added.
        * fast/js/kde/var_decl_init-expected.txt: Added.
        * fast/js/kde/var_decl_init.html: Added.

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

16 years agoUndo my accidental commit of Makefile.vc
hyatt [Mon, 26 Dec 2005 22:47:49 +0000 (22:47 +0000)]
Undo my accidental commit of Makefile.vc

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

16 years agoMake sure assert.h is included by including it in config.h
hyatt [Mon, 26 Dec 2005 22:23:55 +0000 (22:23 +0000)]
Make sure assert.h is included by including it in config.h

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

16 years agoFix win32 bustage. ifdef the swap function for std pairs.
hyatt [Mon, 26 Dec 2005 22:08:52 +0000 (22:08 +0000)]
Fix win32 bustage.  ifdef the swap function for std pairs.

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

16 years agoWebCore:
mjs [Mon, 26 Dec 2005 21:46:27 +0000 (21:46 +0000)]

        Reviewed by Geoff.

        - Remove WebFrame's parent frame pointer, instead rely on WebCore's parent concept

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge parent]): New method, relies on the KHTMLPart's
parent pointer.


        Reviewed by Geoff

        - Remove WebFrame's parent frame pointer, instead rely on WebCore's parent concept

        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge canTargetLoadInFrame:]): Use bridge parent method instead of needlessly
asking for parent via WebFrame
        (-[WebBridge frameDetached]): Don't call _removeChild on the parent frame any more
because WebFame's _detachFromParent takes care of that now.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): Fix stray spaces
        (-[WebFrame _detachChildren]): Don't remove children as we loop any more, they
can remove themselves.
        (-[WebFrame _detachFromParent]): Remove self from parent; don't nil out bridge
until we are done with it.
        (-[WebFrame _transitionToCommitted:]): Remove some extra braces.
        (-[WebFrame _goToItem:withLoadType:]): Use parentFrame method in assert instead of parent
field directly.
        (-[WebFrame _addChild:]): Don't poke at parent frame pointer in _private
since it is not there any more.
        (-[WebFrame _removeChild:]): Remove extra braces and don't clear parent pointer
explicitly any more.
        (-[WebFrame _addFramePathToString:]): Get parentFrame from method, not field.
        (-[WebFrame _loadDataSource:withLoadType:formState:]): Remove extra braces.
        (-[WebFrame _nextFrameWithWrap:]): Get parent in the proper way and clean up the
coding style.
        (-[WebFrame _previousFrameWithWrap:]): Ditto.
        (-[WebFrame parentFrame]): Get parent from the bridge.

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

16 years ago Reviewed by Hyatt.
mjs [Mon, 26 Dec 2005 08:06:14 +0000 (08:06 +0000)]
    Reviewed by Hyatt.

- fixed REGRESSION: world leak of WebDataSource

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _stopLoading]): don't retain self until after
the possible early return.

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

16 years agoChangeLog fixup
ggaren [Sun, 25 Dec 2005 18:28:22 +0000 (18:28 +0000)]
ChangeLog fixup

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

16 years ago Reviewed by Geoff.
mjs [Sun, 25 Dec 2005 11:05:04 +0000 (11:05 +0000)]
    Reviewed by Geoff.

- rearrange some code in WebDataSource so that more of the frame traversal logic
is in WebFrame, in preparation for moving it down to WebBridge.

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _archiveWithMarkupString:nodes:]): Assert that the
data source is committed, doesn't make sense to archive otherwise.
        (-[WebDataSource _subframeArchivesWithCurrentState:]): New helper method.
        (-[WebDataSource _archiveWithCurrentState:]): Assert that the data source
is committed. Use the helper.
        (-[WebDataSource _setWebView:]): Comment that we won't tell subframes that
defers callback changed.
        (-[WebDataSource _startLoading]): Remove stray space.
        (-[WebDataSource _stopLoading]): Only handle local _stopLoading business.
Cound on WebFrame to tell subframes to stop loading. Fold in _stopLoadingInternal
and remove _recursiveStopLoading.
        (-[WebDataSource _startLoading:]): Clean up an assert slightly.
        (-[WebDataSource _setTitle:]): Remove stray spaces.
        (-[WebDataSource _defersCallbacksChanged]): Don't call subframes. WebFrame
can do that.
        (-[WebDataSource isLoading]): Move checking of subframes down to WebFrame.
        (-[WebDataSource webArchive]): Return nil if the data source is not yet
committed. It makes no sense to archive a provisional data source since it
has no data yet.
        (-[WebDataSource addSubresource:]): Replace an assert with an early return,
ASSERT is not an appropriate way to flag problems with the argument of a public
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _setLoadType:]): Remove stray space.
        (-[WebFrame _checkLoadCompleteForThisFrame]): Stop loading subframes
manually and add a FIXME about confusingness of stopping loading here.
        (-[WebFrame _defersCallbacksChanged]): Tell our subframes.
        (-[WebFrame _addChild:]): Remove stray space.
        (-[WebFrame _stopLoadingSubframes]): New helper method.
        (-[WebFrame _subframeIsLoading]): New helper method, code moved
from WebDataSource.
        (-[WebFrame stopLoading]): Tell subframes to stop loading.
        (-[WebFrame reload]): Remove extra braces.
        * WebView.subproj/WebFrameInternal.h:

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

16 years ago Reviewed by Eric and Dave Hyatt.
mjs [Sun, 25 Dec 2005 09:22:35 +0000 (09:22 +0000)]
    Reviewed by Eric and Dave Hyatt.

- make even const PassRefPtrs give transfer of ownership semantics

This is a somewhat cheesy change. Having to use PassRefPtr_Ref creates ambiguities
in assignment and copy construction. And this makes life way easier and removes
the need for pass(). It is not really correct, but we pretty much never need a real
const PassRefPtr, and this takes care of things for PassRefPtr temporaries.

        * kjs/identifier.cpp:
        (KJS::Identifier::add): No more need for pass()
        * kjs/property_map.cpp:
        (KJS::PropertyMap::addSparseArrayPropertiesToReferenceList): No more need for pass()
        * kjs/ustring.cpp:
        (KJS::UString::Rep::create): Use adoptRef
        (KJS::UString::UString): No more need for pass
        (KJS::UString::append): No more need for pass
        (KJS::UString::substr): No more need for pass
        * kxmlcore/PassRefPtr.h: made m_ptr mutable (ugh)
        (KXMLCore::PassRefPtr::PassRefPtr): Take a const PassRefPtr reference
        (KXMLCore::PassRefPtr::release): Made this a const method (ugh)
        (KXMLCore::PassRefPtr::operator=): clean up appropriately
        (KXMLCore::adoptRef): Added this to use instead of PassRefPtr<T>::adopt, I think
it makes the behavior more clear and it is less verbose.
        (KXMLCore::static_pointer_cast): use adoptRef
        (KXMLCore::const_pointer_cast): use adoptRef
        * kxmlcore/RefPtr.h:
        (KXMLCore::RefPtr::RefPtr): take const PassRefPtr&
        (KXMLCore::PassRefPtr::operator=): take const PassRefPtr&

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

16 years agoBug #: none
eseidel [Sun, 25 Dec 2005 08:11:18 +0000 (08:11 +0000)]
Bug #: none
Submitted by: eseidel
Reviewed by: mjs
        Unbreak HashTableConstIterator++ by returning const_iterator

        * kxmlcore/HashTable.h:
        (KXMLCore::HashTableConstIterator::operator++): use const_iterator

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

16 years agoBug #: none
eseidel [Sun, 25 Dec 2005 07:52:16 +0000 (07:52 +0000)]
Bug #: none
Submitted by: eseidel
Reviewed by: mjs
        Un-break HashTable copy constructor.

        * kxmlcore/HashTable.h:
        (KXMLCore::::HashTable): use const_iterator instead

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

16 years agoBug #: 6236
eseidel [Sun, 25 Dec 2005 05:11:42 +0000 (05:11 +0000)]
Bug #: 6236
Submitted by: mitz
Reviewed by: eseidel
        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6236
          REGRESSION: Crash in DOMString::replace() in ToT (12/24/05)

        * fast/forms/domstring-replace-crash-expected.txt: Added.
        * fast/forms/domstring-replace-crash.html: Added.

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

16 years agoBug #: 6326
eseidel [Sun, 25 Dec 2005 05:11:05 +0000 (05:11 +0000)]
Bug #: 6326
Submitted by: mitz
Reviewed by: eseidel
        Test: fast/forms/domstring-replace-crash.html

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6236
          REGRESSION: Crash in DOMString::replace() in ToT (12/24/05)

        * khtml/dom/dom_string.h:
        (DOMString::replace): Added check for null m_impl.

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

16 years ago Reviewed by Eric.
mjs [Sat, 24 Dec 2005 22:45:59 +0000 (22:45 +0000)]
    Reviewed by Eric.

        - replaced QPtrDict for Accessors structs with HashMap (also renamed some
stray getSetInfo methods)

        * khtml/ecma/kjs_html.cpp:
        * khtml/ecma/kjs_html.h:

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

16 years ago Reviewed by Eric.
mjs [Sat, 24 Dec 2005 22:06:57 +0000 (22:06 +0000)]
    Reviewed by Eric.

- fixed "HashMap does not work with const pointer keys or values"

        * kxmlcore/HashMapPtrSpec.h:
        (KXMLCore::HashMap): In all methods, explicitly cast all pointers
to void * before passing to internal implementation. Use C-style
casts instead of new-style casts, because the real solution would
        require a combo of reinterpret_cast anc const_cast.

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

16 years ago Reviewed by eric.
ggaren [Sat, 24 Dec 2005 22:00:25 +0000 (22:00 +0000)]
    Reviewed by eric.


        - Fixed assertion failure in QString::mid caused by my last checkin.
        parseWindowFeatuers() sometimes called QString::mid() with a start
        index past the end of the string but a length of 0. There were two
        problems there. (1) parseWindowString() shouldn't have gotten past the
        end of the string. (2) QString had range truncating code that was
        borked. So I fixed both.

        * khtml/ecma/kjs_window.cpp:
        (KJS::parseWindowFeatures): One of the "past the end" tests was >
        instead of >=.
        * kwq/KWQString.mm:
        (QString::mid): Truncate length *before* deciding whether to return
        early. Also, compare start and data._length before computing
        data._length - start, because the error case we're trying to catch
        will almost certainly cause unsigned overflow.
        * manual-tests/window-open-features-parsing.html: Added trailing ','
        to uber-test to catch this failure, too.

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

16 years ago Reviewed by Maciej.
ap [Sat, 24 Dec 2005 10:02:23 +0000 (10:02 +0000)]
    Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6221
          REGRESSION: Password field is blank error for secure websites using
          password field (ToT, 12/24/05)

        * khtml/kwq/KWQSlot.mm:
        (KWQSlot::KWQSlot): Changed the parameter type of slotTextChanged to const DOMString &
        * khtml/rendering/render_form.h:
        * khtml/rendering/render_form.cpp:
        (RenderLineEdit::RenderLineEdit): ditto.
        (RenderLineEdit::slotTextChanged): ditto.
        (RenderFileButton::RenderFileButton): ditto.
        (RenderFileButton::slotTextChanged): ditto.

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

16 years ago Reviewed by John.
mjs [Sat, 24 Dec 2005 00:54:11 +0000 (00:54 +0000)]
    Reviewed by John.

- move more frame tree traversal code from WebView to WebFrame

        * WebView.subproj/WebFrame.m:
        (-[WebFrame _atMostOneFrameHasSelection]): Moved this debug
method from WebView, renamed it and changed it to return a boolean
so it is appropriate for use in assertions instead of giving its own
        (-[WebFrame _accumulateFramesWithSelection:]): Helper for the above.
        (-[WebFrame _findFrameWithSelection]):  Moved from WebView and renamed from
_findSelectedFrame, also removed the skipping variant.
        (-[WebFrame _clearSelectionInOtherFrames]): Moved from WebView and
changed how the logic works. Instead of clearing selection in any frame
but the focus frame, it clears selection in all but this one.
        * WebView.subproj/WebFrameInternal.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView becomeFirstResponder]): Call _clearSelectionInOtherFrames
        * WebView.subproj/WebPDFView.m:
        (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Stop getting WebFrame
in needlessly roundabout way.
        (-[WebPDFView becomeFirstResponder]): Call _clearSelectionInOtherFrames
        * WebView.subproj/WebTextView.m:
        (-[WebTextView _webFrame]): New helper method.
        (-[WebTextView _elementAtWindowPoint:]): Use it.
        (-[WebTextView becomeFirstResponder]): Call _clearSelectionInOtherFrames
        (-[WebTextView resignFirstResponder]): Fix style issue
        (-[WebTextView clickedOnLink:atIndex:]): Use new helkper
        * WebView.subproj/WebView.m:
        (-[WebView selectedFrame]): Call to WebFrame as appropriate
        (-[WebView _selectedOrMainFrame]): Fix style issue
        * WebView.subproj/WebViewInternal.h:

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

16 years ago Reviewed by vicki (yay!), eric.
ggaren [Fri, 23 Dec 2005 23:04:09 +0000 (23:04 +0000)]
    Reviewed by vicki (yay!), eric.

        - Fixed: <rdar://problem/4377597> parsing of window.open features strings needs to be more forgiving

        Manual test case: WebCore/manual-tests/window-open-features-parsing.html
        Also fixed: WebCore/manual-tests/window-open-features.html, which had an incorrect URL in it.

        This patch is long. Luckily, it's also complicated.

        The main thing I've done is to change our parsing of the window.open 'features' argument to match Win IE. This is important because we now implement the correct defaults for window.open, and resizing and scrolling are turned off by default. So, if we parse the 'features' string incorrectly, we'll end up with an annoying, incorrectly sized window that can't resize or scroll.

        To honor a long-standing request by Eric, I factored out the parsing into two new functions: parseWindowFeatures and constrainToScreen. I also added support for "innerWidth" and "innerHeight," since they're just synonyms for "width" and "height."

        * khtml/ecma/kjs_window.cpp: removed "emit" statements, since emit is #defined as ""
        (KJS::parseDialogFeatures): renamed from parseFeatures, since we now have a 'parseWindowFeatures'.
        (KJS::showModalDialog): ditto on parseFeatures. Also added some missing initializations for WindowArgs data members.
        (KJS::parseWindowFeatures): new function, all new functionality.
        (KJS::constrainToScreen): new function, no new functionality -- just cut and pasted code that used to run as part of our parsing routine.
        (1) Factored out previous parsing code.
        (2) Factored 17 lines of custom popup-blocking code into 3 lines that use pre-existing 'allowPopUp' function. Gratuitous, but it cried out to me.
        (3) Changed URL parsing to substitute "" for undefined *and* null values (we already did this for undefined), to avoid trying to navigate to 'http://null'.
        (4) Factore a multiline if () { if () {}} into an if ( && )
        (4) Removed the main body of code from a giant 'else' block by inserting early returns for the exceptional cases. This caused some things to show up in the diff even though they're just whitespace changes. I didn't actually change any code past the line "if (!str.isEmpty() && activePart)"
        * kwq/KWQKHTMLPartBrowserExtension.mm:
        (KHTMLPartBrowserExtension::createNewWindow): Added code to set toolbars to visible if toolBarVisible is true *or* locationBarVisible is true. The parser used to do this for us, but it's really the browser that's responsible for saying that the toolbar and the locationbar are the same thing. Hopefully, we can add a setLocationBarVisible delegate in the future so that other webkit clients can make their own UI decisions.
        * kwq/KWQKPartsBrowserExtension.h: Added locationBarVisible data member to WindowArgs structure and renamed toolBarsVisible to toolBarVisible (see above). Removed initialization code from WindowArgs structure because this file is for platform-specific code, and what defaults to use for window arguments is purely engine stuff.

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

16 years agoBug #: 6138
eseidel [Fri, 23 Dec 2005 18:44:39 +0000 (18:44 +0000)]
Bug #: 6138
Submitted by: eseidel
Reviewed by: mjs
        Remove many use of .qstring()
        Convert several instances of QStrings to DOMStrings
        Add DOMString::replace(QChar, QChar)
        Remove (unused) KWQLabel, KWQKGlobal
        Slight performance improvement.
        Also fixed ChangeLog line endings from previous commit.

        No tests needed, no functionality changes.

        * ChangeLog: Fixed line endings
        * ForwardingHeaders/kglobal.h: Removed.
        * ForwardingHeaders/qlabel.h: Removed.
        * WebCore.xcodeproj/project.pbxproj: removed KWQLabel
        * khtml/css/css_base.cpp:
        * khtml/css/css_stylesheetimpl.cpp:
        * khtml/css/cssstyleselector.cpp:
        * khtml/dom/dom_string.h:
        * khtml/ecma/kjs_css.cpp:
        * khtml/ecma/kjs_dom.cpp:
        * khtml/ecma/kjs_events.cpp:
        * khtml/ecma/kjs_html.cpp:
        * khtml/ecma/kjs_proxy.cpp:
        * khtml/ecma/kjs_window.cpp:
        * khtml/ecma/xmlhttprequest.cpp:
        * khtml/ecma/xmlhttprequest.h:
        * khtml/editing/jsediting.cpp:
        * khtml/editing/markup.cpp:
        * khtml/html/html_baseimpl.cpp:
        * khtml/html/html_elementimpl.cpp:
        * khtml/html/html_formimpl.cpp:
        * khtml/html/html_headimpl.cpp:
        * khtml/html/html_imageimpl.cpp:
        * khtml/html/html_objectimpl.cpp:
        * khtml/html/html_objectimpl.h:
        * khtml/html/html_tableimpl.cpp:
        * khtml/html/htmltokenizer.cpp:
        * khtml/khtml_part.cpp:
        * khtml/misc/loader.cpp:
        * khtml/rendering/render_applet.cpp:
        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_box.cpp:
        * khtml/rendering/render_form.cpp:
        * khtml/rendering/render_form.h:
        * khtml/rendering/render_frames.cpp:
        * khtml/rendering/render_line.cpp:
        * khtml/rendering/render_list.cpp:
        * khtml/rendering/render_text.cpp:
        * khtml/xml/dom_docimpl.cpp:
        * khtml/xml/dom_elementimpl.cpp:
        * khtml/xml/dom_nodeimpl.cpp:
        * khtml/xml/dom_stringimpl.cpp:
        * khtml/xml/xml_tokenizer.cpp:
        * khtml/xsl/xsl_stylesheetimpl.cpp:
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        * kwq/KWQKGlobal.h: Removed.
        * kwq/KWQKGlobal.mm: Removed.
        * kwq/KWQLabel.h: Removed.
        * kwq/KWQLabel.mm: Removed.
        * kwq/KWQLineEdit.h:
        * kwq/KWQLineEdit.mm:
        * kwq/KWQPainter.mm:
        * kwq/KWQSignal.h:
        * kwq/KWQSignal.mm:
        * kwq/KWQSlot.h:
        * kwq/KWQSlot.mm:
        * kwq/KWQString.h:
        * kwq/KWQString.mm:
        * kwq/KWQTextEdit.h:
        * kwq/KWQTextEdit.mm:
        * ksvg2/scripts/cssmakeprops: removed kglobal.h
        * ksvg2/scripts/cssmakevalues: removed kglobal.h

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

16 years ago Reviewed by Eric Seidel.
ap [Fri, 23 Dec 2005 08:55:02 +0000 (08:55 +0000)]
    Reviewed by Eric Seidel.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5924
          Zero-length responses to XMLHTTPRequest mishandled

        * khtml/ecma/xmlhttprequest.cpp (KJS::XMLHttpRequest::slotFinished):
          Make sure to fetch response headers and set the state to Loaded, if
          this hasn't been done already.

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

16 years ago Reviewed by Eric Seidel.
ap [Fri, 23 Dec 2005 08:50:13 +0000 (08:50 +0000)]
    Reviewed by Eric Seidel.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3565
          Posting data via XML HTTP Request doesnt work

        * khtml/ecma/xmlhttprequest.cpp:
        (KJS::XMLHttpRequest::send): Set application/xml as a default Content-Type;
          use a proper codec for request body if a charset is specified.
        (KJS::XMLHttpRequest::getRequestHeader): Use getSpecificHeader.
        (KJS::XMLHttpRequest::getResponseHeader): Ditto.
        (KJS::XMLHttpRequest::getSpecificHeader): Factored out code from getResponseHeader.
        (KJS::XMLHttpRequestProtoFunc::callAsFunction): Removed a FIXME (this is done in send() now).
        * khtml/ecma/xmlhttprequest.h:

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

16 years ago ChangeLog entry for the previous checkin
ap [Fri, 23 Dec 2005 08:35:38 +0000 (08:35 +0000)]
  ChangeLog entry for the previous checkin

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

16 years ago - this time for sure
mjs [Fri, 23 Dec 2005 08:34:42 +0000 (08:34 +0000)]
    - this time for sure

        * kxmlcore/RefPtr.h:

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

16 years ago Reviewed by Darin Adler.
ap [Fri, 23 Dec 2005 08:28:44 +0000 (08:28 +0000)]
    Reviewed by Darin Adler.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6118
        Investigate not using the frameset charset as a default for frames

        * fast/encoding/frame-default-enc-expected.checksum: Added.
        * fast/encoding/frame-default-enc-expected.png: Added.
        * fast/encoding/frame-default-enc-expected.txt: Added.
        * fast/encoding/frame-default-enc.html: Added.
        * fast/encoding/resources/frame-default-enc-frame.html: Added.

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

16 years ago Reviewed by Eric.
mjs [Fri, 23 Dec 2005 08:19:32 +0000 (08:19 +0000)]
    Reviewed by Eric.

- move a few more methods from WebView to WebFrame.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame _hasSelection]): Renamed from _frameIsSelected: and moved from
        (-[WebFrame _clearSelection]): Renamed from _deselectFrame: and moved from
        * WebView.subproj/WebFrameInternal.h:
        * WebView.subproj/WebView.m:
        (-[WebView searchFor:direction:caseSensitive:wrap:]): Update for renames.
        (-[WebView _findSelectedFrameStartingFromFrame:skippingFrame:]): Ditto.
        (-[WebView _debugCollectSelectedFramesIntoArray:startingFromFrame:]): Ditto.
        (-[WebView _selectedFrameDidChange]):

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

16 years ago <http://bugzilla.opendarwin.org/show_bug.cgi?id=6211>
justing [Fri, 23 Dec 2005 08:05:14 +0000 (08:05 +0000)]
        fast/text/attributed-substring-from-range-lines needs LayoutTests/editing/editing.js

        * editing/input/attributed-substring-from-range-lines-expected.txt: Added.
        * editing/input/attributed-substring-from-range-lines.html: Added.
        * fast/text/attributed-substring-from-range-lines-expected.txt: Removed.
        * fast/text/attributed-substring-from-range-lines.html: Removed.

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

16 years ago Reviewed by Eric.
mjs [Fri, 23 Dec 2005 08:02:17 +0000 (08:02 +0000)]
    Reviewed by Eric.

- updated for WebCore changes to make XSLT params partially work

        * fast/xsl/xslt-processer-expected.txt:

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

16 years ago Reviewed by Darin Adler.
ap [Fri, 23 Dec 2005 07:55:26 +0000 (07:55 +0000)]
    Reviewed by Darin Adler.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6118
        Investigate not using the frameset charset as a default for frames

        * khtml/khtml_part.cpp (KHTMLPart::write):
        Do not use the parent frame encoding as a default for sub-frames (revert

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

16 years ago - fix build problem from last commit.
mjs [Fri, 23 Dec 2005 07:35:00 +0000 (07:35 +0000)]
    - fix build problem from last commit.

        * kxmlcore/RefPtr.h:

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

16 years ago Reviewed by Eric.
mjs [Fri, 23 Dec 2005 03:57:25 +0000 (03:57 +0000)]
    Reviewed by Eric.

        - made RefPtr<DOMStringImpl> usable as a hashtable key/value
- changed XSLTProcessorImpl to make use of this instead of a QDict.
- partially fixed broken param handling for xslt

See LayoutTests for updated test case.

        * khtml/xml/dom_stringimpl.cpp:
        * khtml/xml/dom_stringimpl.h:
        (KXMLCore::): Set things up so you can use RefPtr<DOMStringImpl> as
a hashtable key (should already be usable as a value).
        * khtml/xsl/xslt_processorimpl.cpp:
        (DOM::xsltParamArrayFromParameterMap): Updated to use a HashMap of RefPtrs instead
of QDict. Also, fixed bugs that would have kept this from ever working at all.
        (DOM::XSLTProcessorImpl::transformToString): ditto
        (DOM::XSLTProcessorImpl::setParameter): ditto
        (DOM::XSLTProcessorImpl::getParameter): ditto
        (DOM::XSLTProcessorImpl::removeParameter): ditto
        * khtml/xsl/xslt_processorimpl.h:

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

16 years agoJavaScriptCore:
mjs [Fri, 23 Dec 2005 01:52:43 +0000 (01:52 +0000)]

        Reviewed by Darin.

        - Make HashMap/HashSet support non-POD types

        The changes for support are relatively simple, but I also made extensive changes to
        avoid copying, so that there isn't refcount thrash when you put RefPtrs into a HashMap.

        * kxmlcore/HashTable.h:
        (KXMLCore::swap): specialize swap for pairs, to swap elements individually,
so that excess copies can be avoided.
        (KXMLCore::Mover::move): Template function to either copy or swap, used
when transferring elements from old table to new.
        (KXMLCore::IdentityHashTranslator::hash): The old "converting lookup" templates
that took two or three function parameters now take a class parameter, this is
the class used to do a normal lookup.
        (KXMLCore::IdentityHashTranslator::equal): Ditto.
        (KXMLCore::IdentityHashTranslator::translate): Ditto. Translate now takes a reference
to write into instead of returning a value to avoid redundant copies.
        (KXMLCore::HashTable::~HashTable): Use deallocateTable instead of freeing directly.
        (KXMLCore::HashTable::insert): Based on HashTranslator now instead of separate
functions. Added a FIXME about a remaining rare excess copy.
        (KXMLCore::HashTable::isEmptyBucket): Use KeyTraits directly instead of unwrapping
the key from Traits, to avoid creating and destroying pair, which copies.
        (KXMLCore::HashTable::isDeletedBucket): ditto
        (KXMLCore::HashTable::lookup): Use HashTranslator now instead of separate functions.
        (KXMLCore::HashTable::initializeBucket): Renamed from emptyBucket. Use placement new to
work right for non-POD types.
        (KXMLCore::HashTable::deleteBucket): Use assignDeleted to avoid excess copies.
        (KXMLCore::HashTable::reinsert): use Mover template to copy or swap as appropriate
        (KXMLCore::HashTable::allocateTable): Initialize every bucket if calloc won't do.
        (KXMLCore::HashTable::deallocateTable): Destruct every bucket if needed.
        (KXMLCore::HashTable::rehash): Avoid copy before reinserting, so that swap can do its magic.
        (KXMLCore::HashTable::clear): use deallocateTable instead of freeing directly.
        (KXMLCore::HashTable::HashTable): be more dumb when copying to ensure that non-POD types
work right
        * kxmlcore/HashFunctions.h:
        (KXMLCore::PointerHash): Specialize PointerHash for RefPtr
        * kxmlcore/HashMap.h:
        (KXMLCore::extractFirst): Return a reference not a full object to avoid
        (KXMLCore::HashMapTranslator::hash): Use a special translator for insertion
to defer making the pair as long as possible, thus avoiding needless copies.
        (KXMLCore::HashMapTranslator::equal): ditto
        (KXMLCore::HashMapTranslator::translate): ditto
        (KXMLCore::::inlineAdd): Shared by set and add to insert using HashMapTranslator
        (KXMLCore::::set): Use inlineAdd
        (KXMLCore::::add): Use inlineAdd
        * kxmlcore/HashMapPtrSpec.h:
        (KXMLCore::): Pass KeyTraits along
        * kxmlcore/HashSet.h:
        (KXMLCore::identityExtract): Return a reference not a full object to avoid copies.
        (KXMLCore::HashSetTranslatorAdapter::hash): Redo adapter stuff to work with
the new HashTranslator approach.
        (KXMLCore::HashSetTranslatorAdapter::equal): ditto
        (KXMLCore::HashSetTranslatorAdapter::translate): ditto
        (KXMLCore::::insert): ditto
        * kxmlcore/HashTraits.h:
        (KXMLCore::GenericHashTraits): This is intended be used as a base class for
customized traits: sensible defaults.
        (KXMLCore::): Use it a bunch
        (KXMLCore::assignDeleted): template function to allow pairs to be assigned the
deleted value w/o excess copies.
        (KXMLCore::PairHashTraits::emptyValue): Updated
        (KXMLCore::PairHashTraits::deletedValue): Updated
        (KXMLCore::PairHashTraits::assignDeletedValue): part of assignDeleted hack
        (KXMLCore::DeletedValueAssigner::assignDeletedValue): Use template magic
to either use use deletedValue or assignDeletedValue for the cases where we care.
        * kxmlcore/RefPtr.h:
        (KXMLCore::RefPtr::swap): Added swap method.
        (KXMLCore::swap): Added swap free function.
        * kjs/identifier.cpp:
        (KJS::CStringTranslator::hash): Use new HashTranslator class approach to
alternate type based insertion.
        (KJS::CStringTranslator::equal): ditto
        (KJS::CStringTranslator::translate): ditto
        (KJS::Identifier::add): ditto
        (KJS::UCharBufferTranslator::hash): ditto
        (KJS::UCharBufferTranslator::equal): ditto
        (KJS::UCharBufferTranslator::translate): ditto

- irrelevant change:

        * kjs/array_object.cpp:
        (ArrayProtoFunc::callAsFunction): Removed a stray space.


        Reviewed by Darin.

        - update for new HashTranslator stuff

        * khtml/xml/dom_atomicstring.cpp:
        * khtml/xml/dom_qname.cpp:

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

16 years ago Reviewed by Darin.
adele [Fri, 23 Dec 2005 01:13:50 +0000 (01:13 +0000)]
    Reviewed by Darin.

        Cleaned up a previous checkin by defining global const defaultForm.

        * khtml/xml/dom_docimpl.cpp:

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

16 years agoLayoutTests:
adele [Thu, 22 Dec 2005 23:06:21 +0000 (23:06 +0000)]

        Reviewed by Tim Hatcher.

        Tests for <rdar://problem/4387433> Seed: Radio buttons behave incorrectly in Gmail settings

        * fast/forms/radio_checked_dynamic-expected.checksum: Added.
        * fast/forms/radio_checked_dynamic-expected.png: Added.
        * fast/forms/radio_checked_dynamic-expected.txt: Added.
        * fast/forms/radio_checked_dynamic.html: Added.


        Reviewed by Tim Hatcher.

        Fixed <rdar://problem/4387433> Seed: Radio buttons behave incorrectly in Gmail settings

        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLFormElementImpl::registerFormElement): update radio button hash map when moving form elements around.
        (DOM::HTMLGenericFormElementImpl::insertedIntoTree): ditto.
        * khtml/html/html_formimpl.h:
        (DOM::HTMLGenericFormElementImpl::isRadioButton): Added.
        (DOM::HTMLInputElementImpl::isRadioButton): Added.
        * khtml/xml/dom_docimpl.cpp:
        Added comment explaining that we use 1 for the default form.  We can't use a null pointer as a key for the hash map.
        (DocumentImpl::checkedRadioButtonForGroup): Added conversion of null form pointer to 1.
        (DocumentImpl::removeRadioButtonGroup): ditto.

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

16 years ago2005-12-22 Anders Carlsson <andersca@mac.com>
andersca [Thu, 22 Dec 2005 21:10:54 +0000 (21:10 +0000)]
2005-12-22  Anders Carlsson  <andersca@mac.com>

        Reviewed by Eric.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6196
        Would like to be able to define prototypes in headers

        * khtml/ecma/XSLTProcessor.cpp:
        * khtml/ecma/domparser.cpp:
        * khtml/ecma/kjs_css.cpp:
        * khtml/ecma/kjs_dom.cpp:
        * khtml/ecma/kjs_events.cpp:
        * khtml/ecma/kjs_html.cpp:
        * khtml/ecma/kjs_range.cpp:
        * khtml/ecma/kjs_traversal.cpp:
        * khtml/ecma/kjs_views.cpp:
        * khtml/ecma/xmlhttprequest.cpp:
        * khtml/ecma/xmlserializer.cpp:
        Update for changes to JSC.

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

16 years agoRemove conflict markers
andersca [Thu, 22 Dec 2005 21:08:59 +0000 (21:08 +0000)]
Remove conflict markers

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

16 years ago2005-12-22 Anders Carlsson <andersca@mac.com>
andersca [Thu, 22 Dec 2005 21:07:37 +0000 (21:07 +0000)]
2005-12-22  Anders Carlsson  <andersca@mac.com>

        Reviewed by Eric and Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6196
        Would like to be able to define prototypes in headers

        * kjs/lookup.h:
        Also, namespace all macros by prefixing them with KJS_.

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

16 years ago Reviewed by Eric.
darin [Thu, 22 Dec 2005 16:53:57 +0000 (16:53 +0000)]
    Reviewed by Eric.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6193
          remove some unused KWQ code

        * kcanvas/KCanvasCreator.cpp: (KCanvasCreator::self): Don't use static deleter for
        two reasons: (1) We don't want any globals with constructors in any of our frameworks
        because they slow down framework load time. (2) There's no need to destroy this object at
        process termination time -- it's extra work with no benefit. Because of both these
        reasons, our KStaticDeleter implementation was basically a no-op.
        * ksvg2/svg/SVGDOMImplementationImpl.cpp: (SVGDOMImplementationImpl::self): Ditto.
        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::setDocumentChanged): Ditto.

        * khtml/html/html_canvasimpl.cpp: Removed include of kstringhandler.h.
        * khtml/html/html_imageimpl.cpp: Ditto.

        * khtml/khtmlpart_p.h: Removed something that was in an "APPLE_CANGES" ifdef.

        * ForwardingHeaders/kstaticdeleter.h: Removed.
        * ForwardingHeaders/kstringhandler.h: Removed.
        * kwq/KWQKStaticDeleter.h: Removed.
        * kwq/KWQKStringHandler.h: Removed.
        * kwq/KWQKStringHandler.mm: Removed.

        * WebCore.xcodeproj/project.pbxproj: Removed files.

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

16 years agoLayoutTests:
darin [Thu, 22 Dec 2005 16:50:09 +0000 (16:50 +0000)]

        Reviewed by Eric.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6192
          add support for non-standard &nsup; entity (implemented in other browsers)

        * fast/parser/nsup-entity-expected.txt: Added.
        * fast/parser/nsup-entity.html: Added.


        Reviewed by Eric.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6192
          add support for non-standard &nsup; entity (implemented in other browsers)

        * khtml/html/kentities.gperf: Add "nsup" to table.
        * khtml/html/htmltokenizer.cpp: Removed old workaround for inlining issue that no
        longer seems to be necessary; also touches the file which is important because
        Xcode doesn't seem to understand the dependency on kentities.gperf and the need
        to recompile.

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

16 years ago Reviewed by Maciej.
darin [Thu, 22 Dec 2005 16:48:08 +0000 (16:48 +0000)]
    Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6191
          RefPtr/PassRefPtr have a leak issue, operator== issues

        * kxmlcore/PassRefPtr.h:
        (KXMLCore::PassRefPtr::PassRefPtr): Remove non-template constructor that takes RefPtr
        since the constructor template that takes RefPtr should be sufficient. Add a constructor
        template that takes PassRefPtr&.
        (KXMLCore::PassRefPtr::adopt): Use PassRefPtr_Ref to avoid setting pointer first to
        0 and then to the pointer.
        (KXMLCore::PassRefPtr::operator=): Added template versions that take PassRefPtr& and
        RefPtr parameters.
        (KXMLCore::PassRefPtr::operator PassRefPtr<U>): Changed to fix leak -- old version
        would release and then ref.
        (KXMLCore::operator==): Make templates have two parameters so you can mix types.
        Also remove unneeded const in raw pointer versions.
        (KXMLCore::operator!=): Ditto.

        * kxmlcore/RefPtr.h:
        (KXMLCore::RefPtr::RefPtr): Add constructor template that takes PassRefPtr.
        (KXMLCore::RefPtr::operator=): Add assignment operator templates that take
        RefPtr and PassRefPtr.
        (KXMLCore::operator==): Make templates have two parameters so you can mix types.
        Also remove unneeded const in raw pointer versions.
        (KXMLCore::operator!=): Ditto.

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

16 years ago Reviewed by Eric.
darin [Thu, 22 Dec 2005 16:46:39 +0000 (16:46 +0000)]
    Reviewed by Eric.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6167
          RenderStyle default constructor should initialize its members for speed

        * khtml/rendering/DataRef.h: (khtml::DataRef::operator=): Eliminate an extra
        branch by doing ref before deref instead of == check.

        * khtml/rendering/render_style.cpp:
        (khtml::initDefaultStyle): Added. Function to initialize the default style
        for use in constructor.
        (khtml::RenderStyle::RenderStyle): Changed constructor to initalize all the
        members with constructor syntax instead of using assignment on all of them.
        * khtml/rendering/render_style.h: Removed static data member _default --
        it's now a file scope global instead.

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

16 years ago Reviewed by Darin Adler.
ap [Thu, 22 Dec 2005 07:39:45 +0000 (07:39 +0000)]
    Reviewed by Darin Adler.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5846
          cvs-create-patch --include produces incorrect paths

        * Scripts/cvs-create-patch: Handle newly-added directories using chdir.

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

16 years ago - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6184
darin [Thu, 22 Dec 2005 06:55:50 +0000 (06:55 +0000)]
    - fix bugzilla.opendarwin.org/show_bug.cgi?id=6184
          fast/text/attributed-substring-from-range* failing

        * fast/text/attributed-substring-from-range-expected.txt: Updated.
        * fast/text/attributed-substring-from-range-lines-expected.txt: Updated.

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

16 years ago Reviewed by Justin.
darin [Thu, 22 Dec 2005 04:11:39 +0000 (04:11 +0000)]
    Reviewed by Justin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6142
          intermittent failures in some paste tests

        * khtml/editing/apply_style_command.cpp:
        (khtml::ApplyStyleCommand::applyBlockStyle): Call new updateLayout member function.
        (khtml::ApplyStyleCommand::applyInlineStyle): Ditto.
        (khtml::ApplyStyleCommand::pushDownTextDecorationStyleAtBoundaries): Ditto.
        * khtml/editing/composite_edit_command.cpp:
        (khtml::CompositeEditCommand::addBlockPlaceholderIfNeeded): Ditto.
        (khtml::CompositeEditCommand::findBlockPlaceholder): Ditto.
        (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Ditto.
        * khtml/editing/delete_selection_command.cpp:
        (khtml::DeleteSelectionCommand::fixupWhitespace): Ditto.
        (khtml::DeleteSelectionCommand::moveNodesAfterNode): Ditto.
        * khtml/editing/edit_command.cpp:
        (khtml::EditCommand::apply): Ditto.
        (khtml::EditCommand::unapply): Ditto.
        (khtml::EditCommand::reapply): Ditto.
        (khtml::EditCommand::updateLayout): Added. Calls updateLayoutIgnorePendingStylesheets
        on the document.
        * khtml/editing/edit_command.h: Added updateLayout member function.
        * khtml/editing/insert_line_break_command.cpp:
        (khtml::InsertLineBreakCommand::doApply): Call new updateLayout member function.
        * khtml/editing/insert_paragraph_separator_command.cpp:
        (khtml::InsertParagraphSeparatorCommand::doApply): Ditto.
        * khtml/editing/jsediting.cpp:
        (DOM::JSEditor::execCommand): Call updateLayoutIgnorePendingStylesheets instead of updateLayout.
        (DOM::JSEditor::queryCommandEnabled): Ditto.
        (DOM::JSEditor::queryCommandIndeterm): Ditto.
        (DOM::JSEditor::queryCommandState): Ditto.
        (DOM::JSEditor::queryCommandValue): Ditto.
        * khtml/editing/markup.cpp: (khtml::createMarkup): Ditto.
        * khtml/editing/replace_selection_command.cpp:
        (khtml::ReplacementFragment::insertFragmentForTestRendering): Ditto.
        (khtml::ReplaceSelectionCommand::fixupNodeStyles): Call new updateLayout member function.
        (khtml::ReplacementFragment::computeStylesUsingTestRendering): Call
        updateLayoutIgnorePendingStylesheets instead of updateLayout.
        (khtml::ReplaceSelectionCommand::doApply): Call new updateLayout member function.
        (khtml::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded): Ditto.
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
        * khtml/editing/visible_units.cpp:
        (khtml::previousLinePosition): Call updateLayoutIgnorePendingStylesheets instead of updateLayout.
        (khtml::nextLinePosition): Ditto.
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::innerText): Ditto.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge setSelectedDOMRange:affinity:closeTyping:]): Ditto.
        (-[WebCoreBridge smartDeleteRangeForProposedRange:]): Ditto.

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

16 years ago Reviewed by Geoff.
darin [Thu, 22 Dec 2005 04:06:46 +0000 (04:06 +0000)]
    Reviewed by Geoff.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6177
          move event code from JavaScript binding into DOM implementation

        * khtml/ecma/kjs_events.cpp:
        (KJS::DOMMouseEvent::getValueProperty): Change everything to just call through instead of doing
        the work here.
        (KJS::DOMWheelEvent::getValueProperty): Ditto.

        * khtml/xml/dom2_eventsimpl.h:
        * khtml/xml/dom2_eventsimpl.cpp:
        (DOM::MouseRelatedEventImpl::MouseRelatedEventImpl): Initialize new m_pageX, m_pageY, m_layerX,
        m_layerY, m_offsetX, and m_offsetY.
        (DOM::MouseRelatedEventImpl::computePositions): Renamed from computeLayerPos since it handles
        page position andoffset position too now.
        (DOM::MouseRelatedEventImpl::pageX): Added. Not in header since it's virtual.
        (DOM::MouseRelatedEventImpl::pageY): Ditto.
        (DOM::MouseRelatedEventImpl::x): Added, with FIXME since it should change eventually.
        (DOM::MouseRelatedEventImpl::y): Ditto.
        (DOM::MouseEventImpl::initMouseEvent): Call computePositions instead of computeLayerPos.
        (DOM::MouseEventImpl::toElement): Added.
        (DOM::MouseEventImpl::fromElement): Added.

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

16 years agoJavaScriptCore:
thatcher [Thu, 22 Dec 2005 01:40:58 +0000 (01:40 +0000)]

        * JavaScriptCore.xcodeproj/project.pbxproj:
          Set tab width to 8, indent width to 4 and uses tabs to false per file.


        * WebCore.xcodeproj/project.pbxproj:
          Set tab width to 8, indent width to 4 and uses tabs to false per file.


        * WebKit.xcodeproj/project.pbxproj:
          Set tab width to 8, indent width to 4 and uses tabs to false per file.

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

16 years ago Reviewed by Tim Omernick and Darin Adler.
sullivan [Thu, 22 Dec 2005 01:25:13 +0000 (01:25 +0000)]
    Reviewed by Tim Omernick and Darin Adler.

        - fixed HiDPI problem with forms auto-fill menu width

        No test cases added; this code is used for "chrome" only.

        * kwq/DOMHTML.mm:
        (-[DOMHTMLInputElement _rectOnScreen]):
        convert entire rect to window coordinates, not just origin

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

16 years ago Reviewed by Darin.
ggaren [Thu, 22 Dec 2005 00:55:34 +0000 (00:55 +0000)]
    Reviewed by Darin.

        Removed evil hack for determining if a type is an integer, replaced
        with template metaprogramming.

        * JavaScriptCore.xcodeproj/project.pbxproj: Set tab size to 2 for
        * kjs/testkjs.cpp:
        (main): Inserted asserts to test IsInteger. FIXME: Move these to
        KXMLCore unit tests directory when we create one.
        * kxmlcore/HashTraits.h:
        (KXMLCore::): Added IsInteger class for querying types.

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

16 years ago Reviewed by Justin).
harrison [Wed, 21 Dec 2005 22:51:12 +0000 (22:51 +0000)]
    Reviewed by Justin).

        <rdar://problem/4039777> Pasting particular snippet of HTML containing list items and a link creates too many list items
        - Fixed paste crash by making calling RenderBox::deleteLineBoxWrapper() from RenderObject::remove(),
        so that the connection is broken before the InlineBox's parent gets deleted.
        - Fixed overzealous style changes when setting the style on a specific range of elements.  These specific
        ranges are derived programmatically, e.g. as a part of pasting, so they must be respected exactly rather
        than modified by converting the endpoints to VisiblePositions.

        Test cases coming soon.

        * khtml/editing/apply_style_command.cpp:
        * khtml/editing/apply_style_command.h:
        * khtml/editing/composite_edit_command.cpp:
        * khtml/editing/composite_edit_command.h:
        * khtml/editing/insert_line_break_command.cpp:
        * khtml/editing/replace_selection_command.cpp:
        * khtml/rendering/render_box.cpp:
        * khtml/rendering/render_box.h:
        * khtml/rendering/render_list.cpp:
        * khtml/rendering/render_object.cpp:
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_replaced.cpp:

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

16 years agoLayoutTests:
adele [Wed, 21 Dec 2005 16:50:59 +0000 (16:50 +0000)]

        Reviewed by Darin.

        Updating results for:
        REGRESSION: Page scroll position jumps when clicking on word in editable div

        These results all changed because we now select all for contenteditable elements when focus() is called on them.

        * editing/selection/focus_editable_html-expected.checksum:
        * editing/selection/focus_editable_html-expected.png:
        * editing/selection/focus_editable_html-expected.txt:
        * fast/dom/blur-contenteditable-expected.txt:
        * fast/dom/focus-contenteditable-expected.checksum:
        * fast/dom/focus-contenteditable-expected.png:
        * fast/dom/focus-contenteditable-expected.txt:
        * fast/overflow/overflow-focus-ring-expected.checksum:
        * fast/overflow/overflow-focus-ring-expected.png:
        * fast/overflow/overflow-focus-ring-expected.txt:


        Reviewed by Darin.

        Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=5911
        REGRESSION: Page scroll position jumps when clicking on word in editable div

        I moved the scrolling code out of setFocusNode, and consolidated some of the focus code to scroll when necessary.

        * khtml/html/html_formimpl.cpp: Removed HTMLButtonElementImpl::blur, HTMLButtonElementImpl::focus, HTMLInputElementImpl::blur, HTMLInputElementImpl::focus.
        New code in ElementImpl::focus will now handle these cases.  This allows tabbing through the elements to go through the same code path as calling focus() on an element.
        Before, focus() would scroll to reveal for any form elements that had a RenderWidget, but wouldn't scroll for anchor elements, or any of the new form elements.
        Now the behavior will be more consistent.
        (DOM::HTMLLabelElementImpl::focus): calls ElementImpl::focus.
        (DOM::HTMLLegendElementImpl::focus): ditto.
        * khtml/html/html_formimpl.h:
        * khtml/khtml_part.cpp:
        (KHTMLPart::selectAll): calls new function selectContentsOfNode
        (KHTMLPart::selectContentsOfNode): factored out code to selectAll for a particular node- which is useful for contenteditable elements.
        * khtml/khtml_part.h: added selectContentsOfNode
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::setFocusNode): removed scrolling code.
        * khtml/xml/dom_elementimpl.cpp:
        (ElementImpl::focus): Calls updateLayout in case focus() is called before there's a renderer.
        Makes a selection for editable elements (right now we select all, but this will change).
        Doesn't scroll if the renderer is a RenderWidget, since that is handled when the view becomes first responder.  This will go away when we convert the rest of our form elements.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::revealSelection): Made this more like centerSelectionInVisibleArea  where we get the right rectangle if the selection is a caret.
        (KWQKHTMLPart::nextKeyViewInFrame): call ElementImpl::focus() for the node.  This will set the selection too, which used to be done here.

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

16 years agoBug #: none
eseidel [Wed, 21 Dec 2005 10:53:16 +0000 (10:53 +0000)]
Bug #: none
Submitted by: eseidel
Reviewed by: none needed.
        Fixed ChangeLog typo.

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

16 years agoBug #: none
eseidel [Wed, 21 Dec 2005 10:44:40 +0000 (10:44 +0000)]
Bug #: none
Submitted by: eseidel
Reviewed by: mjs
        Beef up our XSLT processor tests to include a test which passes
        a parameter into the transform.  I also took this opportunity
        to clean up the output a bit, and in the process found another
        bug and file: http://bugzilla.opendarwin.org/show_bug.cgi?id=6180

        * fast/xsl/resources/xslt-param.xml: Added.
        * fast/xsl/resources/xslt-param.xsl: Added.
        * fast/xsl/xslt-processer-expected.txt:
        * fast/xsl/xslt-processer.html:

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

16 years ago Reviewed by justin
justing [Wed, 21 Dec 2005 02:06:18 +0000 (02:06 +0000)]
    Reviewed by justin

        New layout tests for:
        -[WebHTMLView firstRectForCharacterRange:] is using _selectedRange instead of the given range if no marked text

        * editing/input/firstrectforcharacterrange-plain-expected.txt: Added.
        * editing/input/firstrectforcharacterrange-plain.html: Added.
        * editing/input/firstrectforcharacterrange-styled-expected.txt: Added.
        * editing/input/firstrectforcharacterrange-styled.html: Added.

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

16 years ago Reviewed by justin
justing [Wed, 21 Dec 2005 02:05:12 +0000 (02:05 +0000)]
    Reviewed by justin

        -[WebHTMLView firstRectForCharacterRange:] is using _selectedRange instead of the given range if no marked text

        Added layout tests:
        * editing/input/firstrectforcharacterrange-styled
        * editing/input/firstrectforcharacterrange-plain

        * khtml/editing/visible_text.cpp:
        Return null if the range isn't found, instead of a startless/endless
        range.  Set the end if the requested location+length is out of bounds.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge convertToDOMRange:]): Handle larged unsigned values
        before calling rangeWithLocationAndLength, which expects signed ints.

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

16 years ago Reviewed by justin
justing [Wed, 21 Dec 2005 02:04:38 +0000 (02:04 +0000)]
    Reviewed by justin

        -[WebHTMLView firstRectForCharacterRange:] is using _selectedRange instead of the given range if no marked text

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView firstRectForCharacterRange:]):
        Handle some large unsigned values the way NSTextView does.
        Actually use the range passed in instead of _selectedRange,
        use of _selectedRange was a workaround that is no longer necessary.

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

16 years ago Reviewed by Darin Adler.
sullivan [Wed, 21 Dec 2005 01:16:47 +0000 (01:16 +0000)]
    Reviewed by Darin Adler.

        - fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=6146
          (REGRESSION: Bold font used for Google search result pages is too thick)

        This is a problem with a particular font that was installed by Microsoft Office X. Though the
        font and/or lower levels of font-handling code in the system are buggy, this bad symptom will
        occur for users of Safari and other WebKit clients who happen to have one of these bad fonts.
        This adds a workaround to avoid the problem.

        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
        When we're going to synthesize bold or italic, yet the font we looked up was apparently a
        match for the traits, try to look up a font that without the to-be-synthesized traits.
        This way, instead of applying synthetic bold over Arial Bold, we'll apply synthetic
        bold over Arial Regular, which is uglier than just using Arial Bold, but far less ugly
        than using Arial Bold with synthetic bold too.

 2005-12-16  Justin Garcia  <justin.garcia@apple.com>

         <rdar://problem/4103393> Frequent Safari crash on lexisnexus.com (khtml::Selection::xPosForVerticalArrowNavigation)
         <rdar://problem/4330451> CrashTracer: [REGRESSION] 2235 crashes in Safari at com.apple.WebCore: khtml::Selection::xPosForVerticalArrowNavigation const  436

         Reviewed by darin

         WebCore will crash when a selection that starts or ends in a node
         that has been removed from the document is modify()d.  This can occur:
         (1) in non-editable regions (4103393 and 4330451), (2) in editable
         regions (4383146) as the result of arbitrary DOM operations, and (3) in
         Mail (4099739) as the result of an editing operation that sets a
         bad ending selection.

         Crashes of type (1) can occur when the user uses the arrow keys
         to interact with a web app, or when the user tries to use
         command-shift-arrow to switch tabs (this is a depricated
         combo that will work if no one else responds to it). The easiest
         way to fix these crashes is to disallow editing'ish selection changes
         like moveDown:, selectWord:, pageDown:, etc, when the selection
         is in a non-editable region.

         Crashes of type (2) will require a more complicated fix (but occur
         much less often than type (1)).  Crashes of type (3) must be
         fixed by tracking down the editing operation that sets bad selections.

         Added a layout-test:
         * editing/selection/selection-actions.html

         * WebView.subproj/WebHTMLView.m:
         (-[WebHTMLView _canAlterCurrentSelection]):
         (-[WebHTMLView _alterCurrentSelection:direction:granularity:]):
         (-[WebHTMLView _alterCurrentSelection:verticalDistance:]):
         (-[WebHTMLView _expandSelectionToGranularity:]):
         * WebView.subproj/WebHTMLViewPrivate.h:

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

16 years ago Reviewed by Darin.
adele [Wed, 21 Dec 2005 00:48:54 +0000 (00:48 +0000)]
    Reviewed by Darin.

        Fix for <rdar://problem/4387630> REGRESSION: <select> element's onClick event doesn't fire @ bugweb.apple.com

        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::passSubframeEventToSubframe): only pass mouse down for khtmlviews.

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

16 years ago Reviewed by darin
justing [Wed, 21 Dec 2005 00:23:52 +0000 (00:23 +0000)]
    Reviewed by darin

        Layout test for:
        <rdar://problem/4103393> Frequent Safari crash on lexisnexus.com (khtml::Selection::xPosForVerticalArrowNavigation)
         <rdar://problem/4330451> CrashTracer: [REGRESSION] 2235 crashes in Safari at com.apple.WebCore: khtml::Selection::xPosForVerticalArrowNavigation const  436

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

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

16 years ago 2005-12-16 Justin Garcia <justin.garcia@apple.com>
justing [Wed, 21 Dec 2005 00:23:08 +0000 (00:23 +0000)]
 2005-12-16  Justin Garcia  <justin.garcia@apple.com>

         <rdar://problem/4103393> Frequent Safari crash on lexisnexus.com (khtml::Selection::xPosForVerticalArrowNavigation)
         <rdar://problem/4330451> CrashTracer: [REGRESSION] 2235 crashes in Safari at com.apple.WebCore: khtml::Selection::xPosForVerticalArrowNavigation const  436

         Reviewed by darin

         WebCore will crash when a selection that starts or ends in a node
         that has been removed from the document is modify()d.  This can occur:
         (1) in non-editable regions (4103393 and 4330451), (2) in editable
         regions (4383146) as the result of arbitrary DOM operations, and (3) in
         Mail (4099739) as the result of an editing operation that sets a
         bad ending selection.

         Crashes of type (1) can occur when the user uses the arrow keys
         to interact with a web app, or when the user tries to use
         command-shift-arrow to switch tabs (this is a depricated
         combo that will work if no one else responds to it). The easiest
         way to fix these crashes is to disallow editing'ish selection changes
         like moveDown:, selectWord:, pageDown:, etc, when the selection
         is in a non-editable region.

         Crashes of type (2) will require a more complicated fix (but occur
         much less often than type (1)).  Crashes of type (3) must be
         fixed by tracking down the editing operation that sets bad selections.

         Added a layout-test:
         * editing/selection/selection-actions.html

         * WebView.subproj/WebHTMLView.m:
         (-[WebHTMLView _canAlterCurrentSelection]):
         (-[WebHTMLView _alterCurrentSelection:direction:granularity:]):
         (-[WebHTMLView _alterCurrentSelection:verticalDistance:]):
         (-[WebHTMLView _expandSelectionToGranularity:]):
         * WebView.subproj/WebHTMLViewPrivate.h:

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

16 years ago Reviewed by: eric, thatcher
justing [Wed, 21 Dec 2005 00:00:21 +0000 (00:00 +0000)]
Reviewed by: eric, thatcher

        <rdar://problem/4172984> KWQExceptions needs to use @try/@catch instead of relying on NSException.h internals

        Needed to undef try/catch because of 4333439.  Moved the
        declarations of variables that are returned from within a @try
        block outside the @try block (because of "might be clobbered by
        a longjmp or vfork" warnings).  Moved some return statements
        inside the @try block to fix volatilization errors with gcc4.

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

16 years ago Reviewed by eric, thatcher
justing [Tue, 20 Dec 2005 23:05:44 +0000 (23:05 +0000)]
    Reviewed by eric, thatcher

        <rdar://problem/4172984> KWQExceptions needs to use @try/@catch instead of relying on NSException.h internals

        Needed to undef try/catch because of 4333439.  Moved the
        declarations of variables that are returned from within a @try
        block outside the @try block (because of "might be clobbered by
        a longjmp or vfork" warnings).  Moved some return statements
        inside the @try block to fix volatilization errors with gcc4.

        * WebCore.xcodeproj/project.pbxproj:
        * WebCorePrefix.h:
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
        * kwq/KWQExceptions.h:
        * kwq/KWQExceptions.mm:
        * kwq/KWQFileButton.mm:
        * kwq/KWQKCursor.mm:
        (+[NSCursor _WebCore_cursorWithName:hotSpot:_WebCore_cursorWithName:hotSpot:]):
        * kwq/KWQKHTMLPart.mm:
        * kwq/KWQKHTMLPartBrowserExtension.mm:
        * kwq/KWQLineEdit.mm:
        * kwq/KWQListBox.mm:
        * kwq/KWQLoader.mm:
        * kwq/KWQWidget.mm:

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

16 years ago <rdar://problem/4294417> Cannot un-italicize some text after triple clicking it
harrison [Tue, 20 Dec 2005 22:31:44 +0000 (22:31 +0000)]
    <rdar://problem/4294417> Cannot un-italicize some text after triple clicking it

        Reviewed by Justin.

        * khtml/editing/apply_style_command.cpp:
        Removed check for tab span because ApplyStyleCommand::removeCSSStyle() already makes the same check.

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

16 years ago Reviewed by mitz
justing [Tue, 20 Dec 2005 21:36:40 +0000 (21:36 +0000)]
    Reviewed by mitz

        Fixed more uninitialized variable warnings, and
        removed an extra semicolon.

        * WebCoreSupport.subproj/WebTextRenderer.m:

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

16 years ago <rdar://problem/4387270> editing/deleting/delete-3800834-fix failing
justing [Tue, 20 Dec 2005 21:18:28 +0000 (21:18 +0000)]
    <rdar://problem/4387270> editing/deleting/delete-3800834-fix failing
        <http://bugzilla.opendarwin.org/show_bug.cgi?id=6160> REGRESSION: Crash when running editing/deleting/delete-3800834-fix.html
        <http://bugzilla.opendarwin.org/show_bug.cgi?id=6161> REGRESSION: crash when pressing tab in editable WebHTMLView

        Reviewed by darin

        Some callers call setAttribute on a floating element.  So, using
        a RefPtr for the element inside addAttribute can destroy

        * khtml/xml/dom_elementimpl.cpp:

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

16 years agoFix bug numbers in last two entries.
mjs [Tue, 20 Dec 2005 20:48:55 +0000 (20:48 +0000)]
Fix bug numbers in last two entries.

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

16 years agoAdded bugzilla link.
mjs [Tue, 20 Dec 2005 20:42:41 +0000 (20:42 +0000)]
Added bugzilla link.

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

16 years ago Reviewed by Darin.
mjs [Tue, 20 Dec 2005 20:41:55 +0000 (20:41 +0000)]
    Reviewed by Darin.

- push more of frame lookup and management from WebView to
WebFrame, this is in preparation for shifting this to WebCore

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge closeWindowSoon]): Adjust for change to WebFrameNamespaces
        (-[WebBridge runModal]): ditto
        * WebView.subproj/WebControllerSets.h:
        * WebView.subproj/WebControllerSets.m:
        (+[WebFrameNamespaces addFrame:toNamespace:]): This now operates in terms
of WebFrames (expected to be the main frame) not WebViews.
        (+[WebFrameNamespaces framesInNamespace:]): Ditto.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _setFrameNamespace:]): Set self, not WebView.
        (-[WebFrame _shouldAllowAccessFrom:]): Moved this code above use
to avoid prototyping the method.
        (-[WebFrame _descendantFrameNamed:sourceFrame:]): Ditto.
        (-[WebFrame _frameInAnyWindowNamed:sourceFrame:]): Copied logic
over from WebView.
        (-[WebFrame findFrameNamed:]): Do it all here, don't call WebView.
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebView.m:
        * WebView.subproj/WebViewPrivate.h:

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

16 years ago Reviewed by Darin.
mjs [Tue, 20 Dec 2005 20:40:43 +0000 (20:40 +0000)]
    Reviewed by Darin.

        - fixed leak in createAttributeMap

        * khtml/xml/dom_elementimpl.cpp:
        (StyledElementImpl::createAttributeMap): the new attribute map
is going in a RefPtr, don't also ref it manually.

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

16 years agoRemove accidentally committed change (which I am about to recommit, so no ChangeLog
mjs [Tue, 20 Dec 2005 20:27:15 +0000 (20:27 +0000)]
Remove accidentally committed change (which I am about to recommit, so no ChangeLog
comment for the revert).

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

16 years ago Reviewed by Darin.
mjs [Tue, 20 Dec 2005 20:18:54 +0000 (20:18 +0000)]
    Reviewed by Darin.

- made ALWAYS_INLINE declare things inline as well as __attribute__((always_inline))

        * kxmlcore/AlwaysInline.h:

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

16 years agoJavaScriptCore:
mjs [Tue, 20 Dec 2005 20:12:50 +0000 (20:12 +0000)]

        Reviewed by Darin.

- fixed a leak in the assignment operator from PassRefPtr to RefPtr

        * kxmlcore/RefPtr.h:

- fix problem with PassRefPtr that darin spotted - it lacked a copy constructor
and therefore was using the default one, which can lead to excess derefs

I fixed this by adding a copy constructor from non-const
reference, and by adding a template pass() function that you have
to use when raw pointer or RefPtr are passed where PassRefPtr is

        * kjs/identifier.cpp:
        (KJS::Identifier::add): Changed to have PassRefPtr return type and
pass() the results.
        * kjs/identifier.h:
        * kjs/property_map.cpp:
        (KJS::PropertyMap::addSparseArrayPropertiesToReferenceList): Use pass()
where required.
        * kjs/ustring.cpp:
        (KJS::UString::UString): Use pass() as needed.
        (KJS::UString::append): ditto
        (KJS::UString::substr): ditto
        * kjs/ustring.h:
        (KJS::UString::UString): Use initializer instead of assignment
        * kxmlcore/PassRefPtr.h:
        (KXMLCore::PassRefPtr::PassRefPtr): Added copy constructor
        (KXMLCore::pass): new template function to make it convenient to pass
a PassRefPtr


        Reviewed by Darin.

        - change an assignment to a contructor declaration to build with PassRefPtr
leak fix changes

        * ksvg2/svg/SVGTransformableImpl.cpp:

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

16 years ago Reviewed by adele.
ggaren [Tue, 20 Dec 2005 18:47:15 +0000 (18:47 +0000)]
    Reviewed by adele.

        Fixed build failure due to missing 'b's in my last checkin.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge isStatusbarVisible]): changed 'B' to 'b'
        (-[WebBridge setStatusbarVisible:]): ditto

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

16 years agoJavaScriptCore:
ggaren [Tue, 20 Dec 2005 18:34:31 +0000 (18:34 +0000)]

        Reviewed by Maciej.

        Fixed <rdar://problem/4370397> Missing return statement in

        JSMethodNameToObjcMethodName had a check for a name being too long, but
        the check was missing a return statement.

        A lot of this code was confusing and some of it was wrong, so I fixed
        it up, added some asserts to catch this type of bug in the future,
        changed some comments, and renamed some variables.

        The two advantages of the new algorithm are (1) It makes writing past
        the end of the buffer virtually impossible because the test on the main
        loop is "while (not past end of buffer)" and (2) It's twice as fast
        because it doesn't call strlen. (There's no need to call strlen when
        we're walking the string ourselves.)

        methodsNamed also supports arbitrary-length method names now. Just in
        case the AppKit folks start getting REALLY verbose...

        * bindings/objc/objc_class.mm:
        * bindings/objc/objc_utility.h:
        * bindings/objc/objc_utility.mm:


        Layout test for <rdar://problem/4370397> Missing return statement in

        * fast/js/objc-big-method-name-expected.txt: Added.
        * fast/js/objc-big-method-name.html: Added.

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

16 years ago Reviewed by Darin, committed by Adele.
adele [Tue, 20 Dec 2005 18:29:13 +0000 (18:29 +0000)]
    Reviewed by Darin, committed by Adele.

        - fix deployment builds broken by the ATSUI multiple renderers patch

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (createATSULayoutParameters): Assign initial values, which will never be used,
        to substituteRenderer and firstSmallCap, to avoid uninitialized variable warnings.

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

16 years agoWebCore:
ggaren [Tue, 20 Dec 2005 17:06:04 +0000 (17:06 +0000)]

        Reviewed by John.

        Fixed <rdar://problem/4310363> JavaScript window.open: Height is 1
        pixel short, and related bugs.

        There were a few bugs here.
        (1) Our code took size arguments and applied them to the window's
            content rect. That's incorrect. The Rhino book says the arguments
            should apply to the WebView. Other things that occupy the content
            rect include the tab bar, the status bar, and the 1 pixel border
            between brushed metal and document. All of these used to impinge
            on the web page's display area.

            The fix is to calculate sizing based on the WebView instead of
            the content rect. This means that the webViewContentRect and
            setContentRect delegate methods are obsolete and no longer called
            by any of our code. (setContentRect was never called in the
            first place.)

        (2) None of our sizing accounted for scaled resolutions.

            The fix is to ask the WebView to scale all coordintes for us.

        (3) Our code assumed that all window accoutrements were on by default.
            Safari works that way, but other WebKit clients might not.

            The fix is always to explicitly set an on/off state.

        (a) To facilitate scaling, I added a new bridge method, webView, to
        access the webView.

        (b) For internal consistency, I changed ___Bars to ___bars in bridge
        methods, and ___bars to ___Bars in WinArgs data members. (Interestingly,
        the different classes in our code are evenly divided on which format to

        Added manual test:
        * manual-tests/window-open-features.html: Added.
        * manual-tests/resources/200x200.png: Added.
        * manual-tests/resources/popup200x200.html: Added.

        * khtml/ecma/kjs_window.cpp:
        (KJS::showModalDialog): see (b)
        (KJS::WindowFunc::callAsFunction): see (b)
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::statusbarVisible): see (b)
        * kwq/KWQKHTMLPartBrowserExtension.mm:
        At the top of this method, I just did some formatting cleanup and
        moved the 'referrer' variable closer to where it's used.
        The changes in the middle of the method are (3), the bottom, (2).
        * kwq/KWQKPartsBrowserExtension.h:
        (KParts::WindowArgs::WindowArgs): see (b)
        * kwq/WebCoreBridge.h: see (a)


        Reviewed by John.

        Part of fix for <rdar://problem/4310363> JavaScript window.open: Height
        is 1 pixel short, and related bugs. See WebCore ChageLog.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge webView]): Added method.

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

16 years agoSubmitted by: eseidel
eseidel [Tue, 20 Dec 2005 10:08:04 +0000 (10:08 +0000)]
Submitted by: eseidel
Reviewed by: mjs
        Development-only build fix.

        * WebView.subproj/WebFrame.m:
        (-[WebFramePrivate dealloc]): fixed typo

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

16 years ago Not reviewed.
mjs [Tue, 20 Dec 2005 09:59:11 +0000 (09:59 +0000)]
    Not reviewed.

- revert accidental commit of this file.

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

16 years agoBug #: 6156
eseidel [Tue, 20 Dec 2005 09:30:24 +0000 (09:30 +0000)]
Bug #: 6156
Submitted by: eseidel
Reviewed by: mjs
        Leaks when running SVG tests
        No additional tests necessary, leaks already caught by other tests.

        * kcanvas/KCanvasFilters.cpp:
        (KCanvasFEDiffuseLighting::setLightSource): takes ownership
        (KCanvasFESpecularLighting::setLightSource): takes ownership
        * kcanvas/KCanvasFilters.h:
        (KCanvasFEDiffuseLighting::KCanvasFEDiffuseLighting): added
        (KCanvasFEDiffuseLighting::~KCanvasFEDiffuseLighting): added
        (KCanvasFEDiffuseLighting::lightSource): fixed spacing
        (KCanvasFESpecularLighting::KCanvasFESpecularLighting): added
        (KCanvasFESpecularLighting::~KCanvasFESpecularLighting): added
        (KCanvasFESpecularLighting::lightSource): fixed spacing
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
        (KRenderingDeviceQuartz::stringForPath): added missing CFRelease

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

16 years agoBug #: 5931
eseidel [Tue, 20 Dec 2005 09:16:45 +0000 (09:16 +0000)]
Bug #: 5931
Submitted by: eseidel
Reviewed by: darin
        Remove additional bit-rotted DEBUG* ifdefs from WebCore.
        No tests possible, only removing dead code.

        * khtml/css/css_stylesheetimpl.cpp:
        * khtml/html/html_formimpl.cpp:
        * khtml/html/htmlparser.cpp:

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

16 years agoBug #: 6107
eseidel [Tue, 20 Dec 2005 08:49:51 +0000 (08:49 +0000)]
Bug #: 6107
Submitted by: eseidel
Reviewed by: darin
        Move Decoder onto Shared<T> and clients onto RefPtr.
        No test cases possible, no functional changes.

        * khtml/ecma/XSLTProcessor.cpp:
        * khtml/ecma/xmlhttprequest.cpp:
        * khtml/ecma/xmlhttprequest.h:
        * khtml/khtml_part.cpp:
        * khtml/khtmlpart_p.h:
        * khtml/misc/decoder.cpp:
        * khtml/misc/decoder.h:
        * khtml/misc/loader.h:
        * khtml/xml/dom_docimpl.cpp:
        * khtml/xml/dom_docimpl.h:
        * khtml/xsl/xslt_processorimpl.cpp:

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

16 years ago Reviewed by Eric.
mjs [Tue, 20 Dec 2005 08:32:56 +0000 (08:32 +0000)]
    Reviewed by Eric.

- Move handling of frame namespaces down to WebFrame.
- Put some internal class declarations in the implementation file.

        * WebView.subproj/WebControllerSets.m:
        (+[WebFrameNamespaces addWebView:toFrameNamespace:]):
        (+[WebFrameNamespaces webViewsInFrameNamespace:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFramePrivate dealloc]):
        (-[WebFrame _setFrameNamespace:]):
        (-[WebFrame _frameNamespace]):
        * WebView.subproj/WebFrameInternal.h:
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebView.m:
        (-[WebView _close]):
        (-[WebView _findFrameNamed:sourceFrame:]):
        (-[WebView setGroupName:]):
        (-[WebView groupName]):
        * WebView.subproj/WebViewInternal.h:

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

16 years agoLayoutTests:
adele [Mon, 19 Dec 2005 22:16:29 +0000 (22:16 +0000)]

        Reviewed by Darin, committed by Adele.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6139
          ATSUI code path should implement small caps, synthetic bold and oblique and correct metrics for fallback fonts

        * fast/text/atsui-multiple-renderers-expected.checksum: Added.
        * fast/text/atsui-multiple-renderers-expected.png: Added.
        * fast/text/atsui-multiple-renderers-expected.txt: Added.
        * fast/text/atsui-multiple-renderers.html: Added.

        * css1/text_properties/text-transCapitalize-expected.checksum:
        * css1/text_properties/text-transCapitalize-expected.png:
        * fast/text/international/bidi-AN-after-L-expected.checksum:
        * fast/text/international/bidi-AN-after-L-expected.png:
        * fast/text/international/bidi-AN-after-L-expected.txt:
        * fast/text/international/bidi-L2-run-reordering-expected.checksum:
        * fast/text/international/bidi-L2-run-reordering-expected.png:
        * fast/text/international/bidi-L2-run-reordering-expected.txt:
        * fast/text/international/bidi-LDB-2-CSS-expected.checksum:
        * fast/text/international/bidi-LDB-2-CSS-expected.png:
        * fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * fast/text/international/bidi-LDB-2-HTML-expected.checksum:
        * fast/text/international/bidi-LDB-2-HTML-expected.png:
        * fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * fast/text/international/bidi-LDB-2-formatting-characters-expected.checksum:
        * fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
        * fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * fast/text/international/bidi-european-terminators-expected.checksum:
        * fast/text/international/bidi-european-terminators-expected.png:
        * fast/text/international/bidi-european-terminators-expected.txt:
        * fast/text/international/bidi-fallback-font-weight-expected.checksum:
        * fast/text/international/bidi-fallback-font-weight-expected.png:
        * fast/text/international/bidi-fallback-font-weight-expected.txt:
        * fast/text/international/bidi-ignored-for-first-child-inline-expected.checksum:
        * fast/text/international/bidi-ignored-for-first-child-inline-expected.png:
        * fast/text/international/bidi-ignored-for-first-child-inline-expected.txt:
        * fast/text/international/bidi-innertext-expected.checksum:
        * fast/text/international/bidi-innertext-expected.png:
        * fast/text/international/bidi-innertext-expected.txt:
        * fast/text/international/bidi-override-expected.checksum:
        * fast/text/international/bidi-override-expected.png:
        * fast/text/international/bidi-override-expected.txt:


        Reviewed by Darin, committed by Adele.

        Test: fast/text/atsui-multiple-renderers.html

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6139
          ATSUI code path should implement small caps, synthetic bold and oblique and correct metrics for fallback fonts

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (overrideLayoutOperation): Fetch renderer info from the renderers array;
        add synthetic bold offset; render only synthetic bold in the synthetic bold pass.
        (drawGlyphs): Replaced 14 with new SYNTHETIC_OBLIQUE_ANGLE define.
        (initializeATSUStyle): Apply a skewing transform for synthetic oblique.
        (createATSUTextLayout): Merged into createATSUTextLayout.
        (createATSULayoutParameters): Merged in createATSUTextLayout; allocate
        and fill a renderers array and a character buffer for small caps and mirroring;
        (applyMirroringToRun): Merged into createATSULayoutParameters.
        (ATSU_drawHighlight): Deleted mirroring code.
        (ATSU_draw): Deleted mirroring code; added second pass for synthetic bold.
        (ATSU_pointToOffset): Deleted mirroring code.

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