WebKit-https.git
12 years agoSet the correct svn:mime-type on WebCore/page/inspector/Images/*.png
bdash [Tue, 24 Jul 2007 12:56:15 +0000 (12:56 +0000)]
Set the correct svn:mime-type on WebCore/page/inspector/Images/*.png

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

12 years ago2007-07-24 Mark Rowe <mrowe@apple.com>
bdash [Tue, 24 Jul 2007 12:21:21 +0000 (12:21 +0000)]
2007-07-24  Mark Rowe  <mrowe@apple.com>

        Reviewed by Antti.

        <rdar://problem/5356666> NSMenuItem's seen leaking on buildbot

        * platform/mac/ContextMenuItemMac.mm:
        (WebCore::ContextMenuItem::releasePlatformDescription): Transfer ownership from the RetainPtr's CF-based retain
        count to the Foundation retain count so that callers of releasePlatformDescription can use -[NSObject release]
        to dispose of it in a manner that won't leak under Obj-C GC.
        * platform/mac/ContextMenuMac.mm:
        (WebCore::ContextMenu::appendItem): Release platformItem as we were transferred its ownership by releasePlatformDescription.
        (WebCore::ContextMenu::insertItem): ditto.

2007-07-24  Mark Rowe  <mrowe@apple.com>

        Reviewed by Antti.

        <rdar://problem/5356666> NSMenuItem's seen leaking on buildbot

        * WebCoreSupport/WebContextMenuClient.mm:
        (WebContextMenuClient::contextMenuItemSelected): Release platformItem as we were transferred its ownership by releasePlatformDescription.

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

12 years agoRoll out r24583, it needs further consideration.
bdash [Tue, 24 Jul 2007 11:47:17 +0000 (11:47 +0000)]
Roll out r24583, it needs further consideration.

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

12 years ago2007-07-24 Mark Rowe <mrowe@apple.com>
bdash [Tue, 24 Jul 2007 11:40:22 +0000 (11:40 +0000)]
2007-07-24  Mark Rowe  <mrowe@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5356666> NSMenuItem's seen leaking on buildbot

        * platform/mac/ContextMenuMac.mm:
        (WebCore::ContextMenu::appendItem): Release the platformItem after we take ownership of it from the ContextMenuItem.

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

12 years ago2007-07-24 Mitz Pettel <mitz@webkit.org>
bdash [Tue, 24 Jul 2007 09:55:33 +0000 (09:55 +0000)]
2007-07-24  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=14684
          Hebrew text in Safari chrome is reversed (LTR instead of RTL)

        Test: fast/text/drawBidiText.html

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * manual-tests/chrome-bidi-text.html: Added.
        * manual-tests/resources/chrome-bidi-text-window.html: Added.
        * platform/BidiReorderCharacters.cpp: Removed.
        * platform/BidiReorderCharacters.h: Removed.
        * platform/BidiResolver.h:
        (WebCore::BidiCharacterRun::start): Added accessor method.
        (WebCore::BidiCharacterRun::stop): Ditto.
        (WebCore::BidiCharacterRun::level): Ditto.
        (WebCore::BidiCharacterRun::next): Ditto.
        (WebCore::::appendRun): Added default implementation.
        * platform/TextStyle.h:
        (WebCore::TextStyle::setDirectionalOverride): Added accessor method.
        * platform/graphics/GraphicsContext.cpp:
        (WebCore::TextRunIterator::TextRunIterator): Added. A BidiResolver-
        compliant iterator over the characters in a TextRun.
        (WebCore::TextRunIterator::offset):
        (WebCore::TextRunIterator::increment):
        (WebCore::TextRunIterator::atEnd):
        (WebCore::TextRunIterator::current):
        (WebCore::TextRunIterator::direction):
        (WebCore::TextRunIterator::operator==):
        (WebCore::TextRunIterator::operator!=):
        (WebCore::GraphicsContext::drawBidiText): Added. Applies the Unicode
        Bidi Algorithm to the text and draws the resulting unidirectional runs
        in the right order and with the right directionality.
        * platform/graphics/GraphicsContext.h:
        * platform/win/PopupMenuWin.cpp:
        (WebCore::PopupMenu::paint): Replaced the use of a character buffer
        and BidiReorderCharacters with calling to drawBidiText(). Removed special
        handling of '-webkit-rtl-ordering:visual' because that CSS property is an
        implementation detail of WebCore's visual Hebrew support, and the UA stylesheet
        sets it to 'logical' for this form control. Authors can specify the ordering
        using the 'direction' and 'unicode-bidi' properties.
        * platform/win/WebCoreTextRenderer.cpp:
        (WebCore::isOneLeftToRightRun): Added. Checks if the text consists of
        a single left-to-right run, in which case it requires no bidi processing.
        (WebCore::doDrawTextAtPoint): Changed to call drawBidiText if the text
        is not entirely left-to-right.
        * rendering/RenderFileUploadControl.cpp:
        (WebCore::RenderFileUploadControl::paintObject): Replaced the use of a
        character buffer in BidiReorderCharacters with calling to drawBidiText().
        Removed special handling of '-webkit-rtl-ordering:visual' for the same reason
        stated above.
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::paintItemForeground): Ditto. Also changed the
        run-rounding modes used when drawing to match those used when measuring.

2007-07-24  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - test, updated tests and updated results for
          http://bugs.webkit.org/show_bug.cgi?id=14684
          Hebrew text in Safari chrome is reversed (LTR instead of RTL)

        * fast/forms/HTMLOptionElement_label05-expected.checksum:
        * fast/forms/HTMLOptionElement_label05-expected.png:
        * fast/forms/listbox-deselect-scroll-expected.checksum:
        * fast/forms/listbox-deselect-scroll-expected.png:
        * fast/forms/listbox-width-change-expected.checksum:
        * fast/forms/listbox-width-change-expected.png:
        * fast/forms/option-strip-whitespace-expected.checksum:
        * fast/forms/option-strip-whitespace-expected.png:
        * fast/forms/select-change-popup-to-listbox-expected.checksum:
        * fast/forms/select-change-popup-to-listbox-expected.png:
        * fast/forms/select-initial-position-expected.checksum:
        * fast/forms/select-initial-position-expected.png:
        * fast/text/drawBidiText-expected.checksum: Added.
        * fast/text/drawBidiText-expected.png: Added.
        * fast/text/drawBidiText-expected.txt: Added.
        * fast/text/drawBidiText.html: Added.
        * fast/text/international/bidi-listbox-atsui-expected.checksum:
        * fast/text/international/bidi-listbox-atsui-expected.png:
        * fast/text/international/bidi-listbox-atsui-expected.txt:
        * fast/text/international/bidi-listbox-atsui.html: Removed the
        visual ordering cases.
        * fast/text/international/bidi-listbox-expected.checksum:
        * fast/text/international/bidi-listbox-expected.png:
        * fast/text/international/bidi-listbox-expected.txt:
        * fast/text/international/bidi-listbox.html: Removed the visual ordering
        cases because the patch removed special handling of visual ordering.

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

12 years ago Reviewed by Steve.
oliver [Tue, 24 Jul 2007 06:54:36 +0000 (06:54 +0000)]
    Reviewed by Steve.

        Windows build fix, remove superfluous !

        * page/EventHandler.cpp:
        (WebCore::EventHandler::keyEvent):

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

12 years ago Fixes to versioning script.
sfalken [Tue, 24 Jul 2007 06:31:11 +0000 (06:31 +0000)]
    Fixes to versioning script.

        Reviewed by Ada.

        * WebKit.vcproj/auto-version.sh:

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

12 years agoImplement IWebHistoryItem::[set]AlternateTitle
aroben [Tue, 24 Jul 2007 04:11:45 +0000 (04:11 +0000)]
Implement IWebHistoryItem::[set]AlternateTitle

WebCore:

        Add an assignment operator for BString that takes a BSTR

        Reviewed by Geoff and Oliver.

        * platform/win/BString.cpp:
        (WebCore::BString::operator=):
        * platform/win/BString.h:

WebKit/win:

        Implement IWebHistoryItem::[set]AlternateTitle

        The argument types were reversed for these two methods, so I fixed that as
        well.

        Reviewed by Geoff and Oliver.

        * Interfaces/IWebHistoryItem.idl:
        * WebHistoryItem.cpp:
        (WebHistoryItem::setAlternateTitle): Implemented.
        (WebHistoryItem::alternateTitle): Implemented.
        * WebHistoryItem.h:

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

12 years agoLayoutTests:
justing [Tue, 24 Jul 2007 03:59:08 +0000 (03:59 +0000)]
LayoutTests:

        Reviewed by Geoff.

        <rdar://problem/5354455> Word selection when right-clicking can be confusing (14728)

        * editing/selection/5354455-1-expected.checksum: Added.
        * editing/selection/5354455-1-expected.png: Added.
        * editing/selection/5354455-1-expected.txt: Added.
        * editing/selection/5354455-1.html: Added.
        * editing/selection/5354455-2-expected.checksum: Added.
        * editing/selection/5354455-2-expected.png: Added.
        * editing/selection/5354455-2-expected.txt: Added.
        * editing/selection/5354455-2.html: Added.

WebCore:

        Reviewed by Geoff.

        <rdar://problem/5354455> Word selection when right-clicking can be confusing (14728)

        * page/EventHandler.cpp:
        (WebCore::EventHandler::sendContextMenuEvent): In non-editable content,
        only do word selection over text.  In editable content, we will continue
        to select images, line breaks and other elements on right-clicks, to match
        TextEdit.  For now, in editable content, we'll live with the cases where
        positionForPoint creates selections that aren't underneath the mouse.  These
        aren't regressions because we've always done word selection on right clicks
        in editable content.

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

12 years agoLayoutTests:
andersca [Tue, 24 Jul 2007 03:09:32 +0000 (03:09 +0000)]
LayoutTests:

        Reviewed by Oliver.

        <rdar://problem/5335354>
        REGRESSION(r21359-r21368): Can't edit inside RTEF editable region

        * fast/dom/Document/open-with-pending-load-expected.txt: Added.
        * fast/dom/Document/open-with-pending-load.html: Added.

WebCore:

        Reviewed by Oliver.

        <rdar://problem/5335354>
        REGRESSION(r21359-r21368): Can't edit inside RTEF editable region

        If Document::open is called and there's a pending load that has not yet started,
        that load should be cancelled.

        * dom/Document.cpp:
        (WebCore::Document::open):

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

12 years ago Reviewed by Geoff.
andersca [Tue, 24 Jul 2007 03:01:26 +0000 (03:01 +0000)]
    Reviewed by Geoff.

        <rdar://problem/5121461> REGRESSION: Unable to load JigZone puzzle

        * bindings/jni/jni_jsobject.cpp:
        (JavaJSObject::createNative):

        Call RootObject::gcProtect on the global object, thereby putting it in the
        "protect count" set which is used for checking if a native handle is valid.

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

12 years ago Reviewed by Mark.
andersca [Tue, 24 Jul 2007 01:22:46 +0000 (01:22 +0000)]
    Reviewed by Mark.

        Remove http/tests/multipart/invalid-image-data.html which no longer fails on Leopard.

        * mac/leopard/Skipped:

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

12 years ago <rdar://problem/5228167> REGRESSION: editing/execCommand/5119244.html failing...
justing [Tue, 24 Jul 2007 01:00:06 +0000 (01:00 +0000)]
    <rdar://problem/5228167> REGRESSION: editing/execCommand/5119244.html failing on Leopard

        Removed another use of the &#x23B7 entity.  See below.

        * editing/execCommand/5119244-expected.checksum:
        * editing/execCommand/5119244-expected.png:
        * editing/execCommand/5119244-expected.txt:
        * editing/execCommand/5119244.html:
        * mac/leopard/Skipped:

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

12 years ago Reviewed by Oliver.
justing [Tue, 24 Jul 2007 00:46:57 +0000 (00:46 +0000)]
    Reviewed by Oliver.

        <rdar://problem/5228164> REGRESSION: editing/deleting/5144139-2.html fails on Leopard

        Removed the use of the &#x23B7 entity, which is available on
        Leopard but not Tiger.  Perhaps because it is not available in Ahem
        but is available in some fallback font that ships with Leopard but not Tiger.
        It's OK to remove because its use wasn't necessary to test the fix for 5144139.

        * editing/deleting/5144139-2-expected.checksum:
        * editing/deleting/5144139-2-expected.png:
        * editing/deleting/5144139-2-expected.txt:
        * editing/deleting/5144139-2.html:
        * mac/leopard/Skipped:

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

12 years ago2007-07-23 Ada Chan <adachan@apple.com>
adachan [Tue, 24 Jul 2007 00:39:26 +0000 (00:39 +0000)]
2007-07-23  Ada Chan  <adachan@apple.com>

        Reviewed by Steve.

        Added a new text drawing method that allows caller to override the font smoothing level.

        * WebKit.vcproj/WebKit.def:
        * WebKit.vcproj/WebKit_debug.def:
        * WebKitGraphics.cpp:
        (WebDrawText):
        * WebKitGraphics.h:

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

12 years ago2007-07-23 Ada Chan <adachan@apple.com>
adachan [Tue, 24 Jul 2007 00:37:05 +0000 (00:37 +0000)]
2007-07-23  Ada Chan  <adachan@apple.com>

        Reviewed by Steve.

        Update WebKitSystemInterface.{h,lib}.

        * win/include/WebKitSystemInterface/WebKitSystemInterface.h:
        * win/lib/WebKitSystemInterface.lib:
        * win/lib/WebKitSystemInterface_debug.lib:

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

12 years ago Reviewed by Hyatt.
thatcher [Tue, 24 Jul 2007 00:04:32 +0000 (00:04 +0000)]
    Reviewed by Hyatt.

        <rdar://problem/5242145> REGRESSION: Clicking on symbol in documentation often doesn't scroll to symbol

        A renderer for the anchor wasn't always available at the time parsing finished. So we need
        to bail out of gotoAnchor if stylesheets are pending and remember to call gotoAnchor later
        once all of the pending stylesheets load.

        * dom/Document.cpp:
        (WebCore::Document::Document): Initialize m_gotoAnchorNeededAfterStylesheetsLoad to false.
        (WebCore::Document::stylesheetLoaded): If we have no more pending stylesheets, call gotoAnchor if needed.
        * dom/Document.h:
        (WebCore::Document::gotoAnchorNeededAfterStylesheetsLoad): New method.
        (WebCore::Document::setGotoAnchorNeededAfterStylesheetsLoad): Ditto.
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::gotoAnchor): Bail early if the document still has pending stylesheets.
        * loader/FrameLoader.h: Make gotoAnchor() public.

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

12 years ago Reviewed by Darin
sullivan [Mon, 23 Jul 2007 23:16:47 +0000 (23:16 +0000)]
    Reviewed by Darin

        - fixed <rdar://problem/5327887> Printing Mail note (or Safari page) with misspelled word prints red underline

        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
        When printing, bail out without doing any work. Also moved a couple of lines down below another early
        bailout since they were pointless above it.

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

12 years agoFix qt DRT to suppress js popup alerts and log instead.
treat [Mon, 23 Jul 2007 21:58:25 +0000 (21:58 +0000)]
Fix qt DRT to suppress js popup alerts and log instead.

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

12 years ago * pcre/pcre_compile.c: Roll back a tiny accidental change in the unused ...
darin [Mon, 23 Jul 2007 21:35:44 +0000 (21:35 +0000)]
    * pcre/pcre_compile.c: Roll back a tiny accidental change in the unused !JAVASCRIPT
        side of an #ifdef. This has no effect when using PCRE in JAVASCRIPT mode as we do,
        but seems worth rolling back.

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

12 years agoBuild fix, newer Leopard builds expect GCC_ENABLE_OBJC_GC to have a value of 'supported'.
thatcher [Mon, 23 Jul 2007 21:29:06 +0000 (21:29 +0000)]
Build fix, newer Leopard builds expect GCC_ENABLE_OBJC_GC to have a value of 'supported'.

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

12 years agoLayoutTests:
oliver [Mon, 23 Jul 2007 21:03:14 +0000 (21:03 +0000)]
LayoutTests:

        Reviewed by Darin.

        Added initial pseudo-hangul IM, and tests for behaviour of hangul (<rdar://problem/5352152>)
        Updated keydown-keypress-preventDefault to be correct, and to have an demonstrate that keys have been inserted.
        Updated kotoeri test to perform more validation and check against updated behaviour

        * editing/input/mac/hangul-enter-confirms-and-sends-keypress-expected.txt: Added.
        * editing/input/mac/hangul-enter-confirms-and-sends-keypress.html: Added.
        * editing/input/mac/hangul.js: Added.
        * editing/input/mac/kotoeri-enter-to-confirm-and-newline.html:
        * fast/events/keydown-keypress-preventDefault-expected.txt:
        * fast/events/keydown-keypress-preventDefault.html:

WebCore:

        Reviewed by Darin.

        <rdar://problem/5353577> WebKit key event behaviour needs to better match other browsers keyevent behaviour
        <rdar://problem/5352152> REGRESSION (24399-24479): Pressing Enter in a search field at apple.com no longer starts a search with Korean IM
        <rdar://problem/5352649> WebKit should send keyDown event on autorepeat keyDowns
        http://bugs.webkit.org/show_bug.cgi?id=14690

        Perform Input Method call first so that our behaviour is determined by whether or not
        the input method has actually handle the event, rather than by making guesses based
        on the existences of marked text.  This fixes issues with IMs that have side effects
        even on events they do not handle.

        Refactored the code in order to improve clarity given the hoisting required by performing
        the IM call earlier.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::keyEvent):

WebKit:

        Reviewed by Darin.

        We have to be able to support insertText: followed by doCommandBySelector: in
        order to support the 2- and 3-Set Korean and RuSwitcher IMs at least.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView insertText:]):

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

12 years agoLayoutTests:
andersca [Mon, 23 Jul 2007 20:27:19 +0000 (20:27 +0000)]
LayoutTests:

        Reviewed by Darin.

        <rdar://problem/5045711>
        http://bugs.webkit.org/show_bug.cgi?id=12938
        Google calendar settings page crashes

        * fast/dom/destroy-selected-radio-button-crash-expected.txt: Added.
        * fast/dom/destroy-selected-radio-button-crash.html: Added.

WebCore:

        Reviewed by Darin.

        <rdar://problem/5045711>
        http://bugs.webkit.org/show_bug.cgi?id=12938
        Google calendar settings page crashes

        Move handling of checked radio buttons to a new class, HTMLFormElement::CheckedRadioButtons.
        Each <form> element has an instance of this class. For radio buttons without a containing
        form, the document has an instance of HTMLFormElement::CheckedRadioButtons where the
        state of those radio buttons will be stored.
        be stored.

        This also fixes another bug where removing a checked radio button that does not have a
        containing form would not remove the radio button from the checked radio buttons map,
        which could lead to a crash due to a dangling pointer.

        * dom/Document.cpp:
        (WebCore::Document::~Document):
        * dom/Document.h:
        (WebCore::Document::checkedRadioButtons):
        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::registerFormElement):
        (WebCore::HTMLFormElement::removeFormElement):
        (WebCore::HTMLFormElement::CheckedRadioButtons::didCheckButton):
        (WebCore::HTMLFormElement::CheckedRadioButtons::checkedButtonForGroup):
        (WebCore::HTMLFormElement::CheckedRadioButtons::removeButtonIfChecked):
        * html/HTMLFormElement.h:
        (WebCore::HTMLFormElement::checkedRadioButtons):
        * html/HTMLGenericFormElement.cpp:
        (WebCore::HTMLGenericFormElement::insertedIntoTree):
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::~HTMLInputElement):
        (WebCore::checkedRadioButtons):
        (WebCore::HTMLInputElement::isKeyboardFocusable):
        (WebCore::HTMLInputElement::setInputType):
        (WebCore::HTMLInputElement::parseMappedAttribute):
        (WebCore::HTMLInputElement::setChecked):
        (WebCore::HTMLInputElement::preDispatchEventHandler):
        (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
        * manual-tests/remove-form-node-with-radio-buttons-crash.html: Added.

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

12 years ago Reverting change 24535 now that a solution has been found that doesn't
aliceli1 [Mon, 23 Jul 2007 20:23:12 +0000 (20:23 +0000)]
    Reverting change 24535 now that a solution has been found that doesn't
        involve exposing an interface unnecessarily.

        * WebView/WebHTMLView.mm:
        * WebView/WebHTMLViewPrivate.h:

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

12 years agoAdd layout test for continuation hang.
hyatt [Mon, 23 Jul 2007 18:51:02 +0000 (18:51 +0000)]
Add layout test for continuation hang.

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

12 years ago Fix for 5350587, hang in iExploder text 8101. The code that painted outlines...
hyatt [Mon, 23 Jul 2007 18:50:20 +0000 (18:50 +0000)]
    Fix for 5350587, hang in iExploder text 8101.  The code that painted outlines for continuations was buggy
        in that it assumed the chain was always inline-block-inline, but this is only true for the innermost chained
        continuation.  To make this more robust, we always just use the inline's containing block's containing block,
        which should be guaranteed to enclose all renderers in the continuation chain.  In addition, there is now a
        null check (to guarantee no more hangs) and an assert (to check if we hit this situation again where the block
        used to paint does not properly enclose the continuation chain).

        Reviewed by beth

        fast/inline/outline-continuation.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintContinuationOutlines):
        * rendering/InlineFlowBox.cpp:
        (WebCore::RenderInline::paint):

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

12 years ago2007-07-22 Holger Hans Peter Freyther <zecke@selfish.org>
zecke [Mon, 23 Jul 2007 18:16:02 +0000 (18:16 +0000)]
2007-07-22  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Adam.

        Add WebKit/gtk/Api and WebCoreSupport API to the INCLUDEPATH to allow GdkLauncher to be
        build against it.

        * WebKit.pri:

WebCore:
2007-07-22  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Adam.

        WARNING: NO TEST CASES ADDED OR CHANGED

        Add the WebKit/Gtk API to the buildsystem, ask qmake to create a
        pkg-config file and install headers and libraries.

        Start to emit signals from FrameLoaderClientGdk, hide the kit Frame
        inside the the FrameLoaderClientGdk.

        Move ChromeClientGdk to WebKit/gtk/WebCoreSupport

        * WebCore.pro:
        * loader/gdk/FrameLoaderClientGdk.cpp:
        * loader/gdk/FrameLoaderClientGdk.h:
        * platform/gdk/ChromeClientGdk.h: Removed.
        * platform/gdk/FrameGdk.cpp: Remove code not belonging here
        * platform/gdk/FrameGdk.h:
        * platform/gdk/ScrollViewGdk.cpp: The gdkDrawable won't exist at that time and it is fine
        * platform/gdk/TemporaryLinkStubs.cpp: Removed ChromeClientGdk stubs

WebKit:
2007-07-22  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Adam.

        Add the first API and partial implementation of the WebKit/Gtk port as
        of http://bugs.webkit.org/show_bug.cgi?id=14678.

        The delegates of WebView will be modeled as signals. Delegates like the
        WebPolicyDelegate will be implemented as signals with default handlers.

        Start moving files to WebKit/gtk/WebCoreSupport.

        * gtk: Added.
        * gtk/Api: Added.
        * gtk/Api/headers.pri: Added.
        * gtk/Api/webkitgtk-marshal.list: Added.
        * gtk/Api/webkitgtkdefines.h: Added.
        * gtk/Api/webkitgtkframe.cpp: Added.
        * gtk/Api/webkitgtkframe.h: Added.
        * gtk/Api/webkitgtkframedata.cpp: Added.
        * gtk/Api/webkitgtkframedata.h: Added.
        * gtk/Api/webkitgtkglobal.cpp: Added.
        * gtk/Api/webkitgtkglobal.h: Added.
        * gtk/Api/webkitgtknetworkrequest.cpp: Added.
        * gtk/Api/webkitgtknetworkrequest.h: Added.
        * gtk/Api/webkitgtkpage.cpp: Added.
        * gtk/Api/webkitgtkpage.h: Added.
        * gtk/Api/webkitgtkprivate.cpp: Added.
        * gtk/Api/webkitgtkprivate.h: Added.
        * gtk/Api/webkitgtksettings.cpp: Added.
        * gtk/Api/webkitgtksettings.h: Added.
        * gtk/WebCoreSupport: Added.
        * gtk/WebCoreSupport/ChromeClientGdk.cpp: Added.
        (WebCore::ChromeClientGdk::ChromeClientGdk):
        (WebCore::ChromeClientGdk::chromeDestroyed):
        (WebCore::ChromeClientGdk::windowRect):
        (WebCore::ChromeClientGdk::setWindowRect):
        (WebCore::ChromeClientGdk::pageRect):
        (WebCore::ChromeClientGdk::scaleFactor):
        (WebCore::ChromeClientGdk::focus):
        (WebCore::ChromeClientGdk::unfocus):
        (WebCore::ChromeClientGdk::createWindow):
        (WebCore::ChromeClientGdk::createModalDialog):
        (WebCore::ChromeClientGdk::show):
        (WebCore::ChromeClientGdk::canRunModal):
        (WebCore::ChromeClientGdk::runModal):
        (WebCore::ChromeClientGdk::setToolbarsVisible):
        (WebCore::ChromeClientGdk::toolbarsVisible):
        (WebCore::ChromeClientGdk::setStatusbarVisible):
        (WebCore::ChromeClientGdk::statusbarVisible):
        (WebCore::ChromeClientGdk::setScrollbarsVisible):
        (WebCore::ChromeClientGdk::scrollbarsVisible):
        (WebCore::ChromeClientGdk::setMenubarVisible):
        (WebCore::ChromeClientGdk::menubarVisible):
        (WebCore::ChromeClientGdk::setResizable):
        (WebCore::ChromeClientGdk::closeWindowSoon):
        (WebCore::ChromeClientGdk::canTakeFocus):
        (WebCore::ChromeClientGdk::takeFocus):
        (WebCore::ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
        (WebCore::ChromeClientGdk::runBeforeUnloadConfirmPanel):
        (WebCore::ChromeClientGdk::addMessageToConsole):
        (WebCore::ChromeClientGdk::runJavaScriptAlert):
        (WebCore::ChromeClientGdk::runJavaScriptConfirm):
        (WebCore::ChromeClientGdk::runJavaScriptPrompt):
        (WebCore::ChromeClientGdk::setStatusbarText):
        (WebCore::ChromeClientGdk::shouldInterruptJavaScript):
        (WebCore::ChromeClientGdk::tabsToLinks):
        (WebCore::ChromeClientGdk::windowResizerRect):
        (WebCore::ChromeClientGdk::addToDirtyRegion):
        (WebCore::ChromeClientGdk::scrollBackingStore):
        (WebCore::ChromeClientGdk::updateBackingStore):
        (WebCore::ChromeClientGdk::mouseDidMoveOverElement):
        (WebCore::ChromeClientGdk::setToolTip):
        (WebCore::ChromeClientGdk::print):
        * gtk/WebCoreSupport/ChromeClientGdk.h: Added.

WebKitTools:
2007-07-22  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Adam.

        Make the GdkLauncher use the new WebKit/Gtk API. Change webkitdirs.pm to
        honor --qmakearg for the Gdk/Gtk build as well.

        * GdkLauncher/main.cpp: Switch to the new API
        * Scripts/webkitdirs.pm: Allow to specify --qmakearg, e.g. to control the WEBKIT_{INC,LIB}_DIR

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

12 years ago Implement IDOMElement::setAttribute
aroben [Mon, 23 Jul 2007 17:16:37 +0000 (17:16 +0000)]
    Implement IDOMElement::setAttribute

        This method was mistakenly called "setResult" in DOMCore.idl, so I
        fixed that as well.

        Needed for <rdar://problem/5314906>.

        Reviewed by Ada.

        * DOMCoreClasses.cpp:
        (DOMElement::setAttribute): Implemented/renamed.
        * DOMCoreClasses.h: Renamed setResult => setAttribute.
        * DOMHTMLClasses.h: Ditto.
        * Interfaces/DOMCore.idl: Ditto.

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

12 years ago Reviewed by Oliver Hunt.
aliceli1 [Mon, 23 Jul 2007 16:37:16 +0000 (16:37 +0000)]
    Reviewed by Oliver Hunt.

        Expose [WebHTMLView hasMarkedText] to
        fix <rdar://problem/4830074> autocomplete breaks Japanese typing

        * WebView/WebHTMLView.mm:
        * WebView/WebHTMLViewPrivate.h:

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

12 years ago Reviewed by Oliver.
mjs [Mon, 23 Jul 2007 10:26:02 +0000 (10:26 +0000)]
    Reviewed by Oliver.

        - fix remaining problems with Window shadowing

        * kjs/nodes.cpp:
        (VarDeclNode::evaluate): Tweak the special case a little.

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

12 years ago Reviewed by Oliver.
mjs [Mon, 23 Jul 2007 08:48:04 +0000 (08:48 +0000)]
    Reviewed by Oliver.

        - fix Window shadowing regressions caused by the previous commit.

        * kjs/nodes.cpp:
        (VarDeclNode::evaluate): Handle the case of global scope specially.

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

12 years ago Reviewed by Darin.
mjs [Mon, 23 Jul 2007 07:10:35 +0000 (07:10 +0000)]
    Reviewed by Darin.

        -fixed <rdar://problem/5353293> REGRESSION (r24287): 1% i-Bench JS slowdown from JavaScript compatibility fix (14719)
        http://bugs.webkit.org/show_bug.cgi?id=14719

        My fix for this actually resulted in JS iBench being 1% faster than before the regression
        and the Celtic Kane benchmark being 5% faster than before the regression.

        * kjs/nodes.cpp:
        (VarDeclNode::handleSlowCase): factored out the slow code path to be out of line.
        (VarDeclNode::evaluate): I did a couple of things:
        (1) Don't check if the variable is already declared by looking for the property in
        the variable object, that code path was dead code.
        (2) Special-case the common case where the top of the scope and the variable object
        are the same; in that case the variable must always be in the variable object.
        (3) Don't return a jsString() of the variable name, nothing uses the return value
        from this node types evaluate method.
        * kjs/nodes.h:

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

12 years ago Reviewed by Adam.
mjs [Mon, 23 Jul 2007 05:45:31 +0000 (05:45 +0000)]
    Reviewed by Adam.

        <rdar://problem/5353174> REGRESSION: 1% JavaScript performance regression fro Window refactoring (14717)
        http://bugs.webkit.org/show_bug.cgi?id=14717

        * bindings/js/kjs_window.cpp:
        * bindings/js/kjs_window.h:
        (KJS::Window::impl): inlined
        * page/DOMWindow.cpp:
        * page/DOMWindow.h:
        (WebCore::DOMWindow::frame): inlined

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

12 years ago Fix typo.
weinig [Mon, 23 Jul 2007 05:42:46 +0000 (05:42 +0000)]
    Fix typo.

        * fast/dom/Window/window-function-name-getter-precedence.html:

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

12 years ago * platform/ContextMenu.cpp: Added missing include.
darin [Mon, 23 Jul 2007 05:30:22 +0000 (05:30 +0000)]
    * platform/ContextMenu.cpp: Added missing include.

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

12 years agoLayoutTests:
weinig [Mon, 23 Jul 2007 05:28:37 +0000 (05:28 +0000)]
LayoutTests:

        Reviewed by Darin.

        Test for  http://bugs.webkit.org/show_bug.cgi?id=14682
        REGRESSION(24285-24399): alerts do not appear at W3C RTL test page

        * fast/dom/Window/window-function-name-getter-precedence-expected.txt: Added.
        * fast/dom/Window/window-function-name-getter-precedence.html: Added.

WebCore:

        Reviewed by Darin.

        Fix for http://bugs.webkit.org/show_bug.cgi?id=14682
        REGRESSION(24285-24399): alerts do not appear at W3C RTL test page

        Test: fast/dom/Window/window-function-name-getter-precedence.html

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::customGetOwnPropertySlot): Make sure to return functions
        before the custom name getter.

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

12 years ago Reviewed by Adam.
darin [Mon, 23 Jul 2007 05:25:34 +0000 (05:25 +0000)]
    Reviewed by Adam.

        - fix <rdar://problem/5353263> ContextMenuItem and ContextMenu objects leaking (seen on buildbot)

        * platform/ContextMenu.cpp:
        (WebCore::separatorItem): Return an auto_ptr instead of a raw pointer, since this function
        creates an object that's the caller's responsibility to delete.
        (WebCore::createAndAppendFontSubMenu): Create the context menu on the stack, not the heap,
        since setSubMenu does not take ownership, and hence the objects were leaking.
        (WebCore::createAndAppendSpellingAndGrammarSubMenu): Ditto.
        (WebCore::createAndAppendSpellingSubMenu): Ditto.
        (WebCore::createAndAppendSpeechSubMenu): Ditto.
        (WebCore::createAndAppendWritingDirectionSubMenu): Ditto.

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

12 years ago Reviewed by Adam Roben.
pewtermoose [Mon, 23 Jul 2007 05:00:34 +0000 (05:00 +0000)]
    Reviewed by Adam Roben.

        Add information on getting a useful crash log on Mac and Windows.

        * nav.inc:
        * quality/crashlogs.html: Added.
        * quality/mac_reportbox.jpg: Added.
        * quality/mac_viewtrace.jpg: Added.
        * quality/win_installwatson.jpg: Added.
        * quality/win_watsongui.jpg: Added.
        * quality/win_watsoninstalled.jpg: Added.

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

12 years ago * DumpRenderTree/TextInputController.m: (-[TextInputController interpretKeyEv...
darin [Mon, 23 Jul 2007 04:38:50 +0000 (04:38 +0000)]
    * DumpRenderTree/TextInputController.m: (-[TextInputController interpretKeyEvents:withSender:]):
        Fix a leak by releasing the array used here.

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

12 years agoJavaScriptCore:
darin [Sun, 22 Jul 2007 22:47:25 +0000 (22:47 +0000)]
JavaScriptCore:

        Reviewed by Kevin Decker.

        - fix <rdar://problem/5126394> REGRESSION: Crash after clicking back button in test application (13250)
          http://bugs.webkit.org/show_bug.cgi?id=13250

        * bindings/objc/objc_utility.mm: (KJS::Bindings::convertObjcValueToValue):
        If the object returns 0 for _imp, convert that to "undefined", since callers
        can't cope with a JSValue of 0.

WebCore:

        Reviewed by Kevin Decker.

        - fix <rdar://problem/5126394> REGRESSION: Crash after clicking back button in test application (13250)
          http://bugs.webkit.org/show_bug.cgi?id=13250

        * bindings/objc/WebScriptObject.mm:
        (_didExecute): Removed unnecessary check for isValid() since the _rootObject method already
        takes care of that check.
        (-[WebScriptObject _imp]): Made this return 0 if there is not a valid rootObject.
        (-[WebScriptObject _isSafeScript]): Made this always return false if there is not a valid
        rootObject, eliminating the need to check _rootObject for nil if the code is checking _isSafeScript.
        (-[WebScriptObject callWebScriptMethod:withArguments:]): Removed check of _rootObject, since it's
        immediately followed by a check of _isSafeScript. Removed awkward conversion of name from NSString *
        to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
        arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
        the _imp pointer. Added a second check of _isSafeScript after calling get to get the function
        object, since arbitrary changes could occur in there, including navigation to a new frame.
        This also takes care of null checking the second call to _imp.
        (-[WebScriptObject evaluateWebScript:]): Removed check of _rootObject, since it's
        immediately followed by a check of _isSafeScript. Removed awkward conversion of script from NSString *
        to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
        arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
        the _imp pointer.
        (-[WebScriptObject setValue:forKey:]): Removed check of _rootObject, since it's
        immediately followed by a check of _isSafeScript. Removed awkward conversion of key from NSString *
        to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
        arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
        the _imp pointer.
        (-[WebScriptObject valueForKey:]): Ditto.
        (-[WebScriptObject removeWebScriptKey:]): Ditto.
        (-[WebScriptObject stringRepresentation]): Removed check of _rootObject, since it's
        immediately followed by a check of _isSafeScript. Removed unnecessary local variable
        and const_cast from the call to the _imp method.
        (-[WebScriptObject webScriptValueAtIndex:]): Removed check of _rootObject, since it's
        immediately followed by a check of _isSafeScript.
        (-[WebScriptObject setWebScriptValueAtIndex:value:]): Ditto.
        (-[WebScriptObject JSObject]): Ditto.

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

12 years agoWebKitTools:
ddkilzer [Sun, 22 Jul 2007 22:24:59 +0000 (22:24 +0000)]
WebKitTools:

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=14713
          Script to update iExploder cssproperties.in file based on CSSPropertyNames.in

        Added script to update WebKitTools/iExploder/htdocs/cssproperties.in based on the contents
        of WebCore/css/CSSPropertyNames.in.  Also updated cssproperties.in.

        * Scripts/update-iexploder-cssproperties: Added.
        * iExploder/htdocs/cssproperties.in: Updated by running update-iexploder-cssproperties script.
        Added new CSS3 property section and Moved box-sizing property to it.

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

12 years agoLayoutTests:
oliver [Sun, 22 Jul 2007 21:10:57 +0000 (21:10 +0000)]
LayoutTests:

        Reviewed by Sam.

        Moving input method tests to editing/input/mac

        * editing/input/mac: Copied from fast/events/inputmethods.
        * fast/events/inputmethods: Removed.
        * fast/events/inputmethods/kotoeri-enter-to-confirm-and-newline-expected.txt: Removed.
        * fast/events/inputmethods/kotoeri-enter-to-confirm-and-newline.html: Removed.
        * fast/events/inputmethods/kotoeri.js: Removed.
        * fast/events/inputmethods/logger.js: Removed.
        * win/Skipped:

qt:

        Reviewed by Sam.

        Add Mac input methods to qt skip list

        * Skipped:

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

12 years agoUpdated reviewers.
darin [Sun, 22 Jul 2007 20:32:11 +0000 (20:32 +0000)]
Updated reviewers.

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

12 years ago Reviewed by Anders.
darin [Sun, 22 Jul 2007 20:31:40 +0000 (20:31 +0000)]
    Reviewed by Anders.

        - speculative fix for <rdar://problem/5337500> CrashTracer: [USER] 4 crashes in Mail
          at WebCore::HTMLImageElement::isURLAttribute(WebCore::Attribute*) const

        * editing/markup.cpp: Added AttributeChange class.
        (WebCore::completeURLs): Changed function so that all the URL completion is done in
        a separate pass after finding all the URL attributes. This is safer, since actually
        applying an attribute change could have any arbitrary effect on the document; it's
        tricky to iterate a document while it's being modified and we don't have the checks
        here that would be needed to make that work in pathological cases.

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

12 years ago Reviewed by Adam.
oliver [Sun, 22 Jul 2007 20:02:26 +0000 (20:02 +0000)]
    Reviewed by Adam.

        Add the input methods tests to the windows skip list
        until we work to how to make them platform agnostic

        * win/Skipped:

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

12 years agoUpdate Bugzilla bug number in Radar bug title based on feedback from Mitz.
darin [Sun, 22 Jul 2007 19:51:33 +0000 (19:51 +0000)]
Update Bugzilla bug number in Radar bug title based on feedback from Mitz.

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

12 years agoLayoutTests:
oliver [Sun, 22 Jul 2007 19:46:15 +0000 (19:46 +0000)]
LayoutTests:

        Reviewed by Darin.

        Initial input method test case, this tests the behaviour of the
        enter key in our "kotoeri" engine.

        * fast/events/inputmethods: Added.
        * fast/events/inputmethods/kotoeri-enter-to-confirm-and-newline-expected.txt: Added.
        * fast/events/inputmethods/kotoeri-enter-to-confirm-and-newline.html: Added.
        * fast/events/inputmethods/kotoeri.js: Added.
        * fast/events/inputmethods/logger.js: Added.

WebKitTools:

        Reviewed by Darin.

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

        Add preliminary support for testing Input Method/WebKit behaviour and interaction
        in DRT.  This provides the NSTextInput API which is most of what should be necessary
        to mimic the event sequences Input Methods trigger.

        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
        * DumpRenderTree/TextInputController.h:
        * DumpRenderTree/TextInputController.m:
        (-[WebHTMLView interpretKeyEvents:]):
        (+[TextInputController isSelectorExcludedFromWebScript:]):
        (+[TextInputController webScriptNameForSelector:]):
        (-[TextInputController initWithWebView:]):
        (-[TextInputController dealloc]):
        (-[TextInputController textInput]):
        (-[TextInputController setInputMethodHandler:]):
        (-[TextInputController interpretKeyEvents:withSender:]):

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

12 years ago Reviewed by Adam.
darin [Sun, 22 Jul 2007 19:43:43 +0000 (19:43 +0000)]
    Reviewed by Adam.

        - fix <rdar://problem/5350604> REGRESSION: Crash in inspector controller code after
          clicking back button in test application (13250)

        * page/InspectorController.cpp: (WebCore::InspectorController::addScriptResource):
        Replace an assertion that was firing with some code that at least doesn't immediately crash.

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

12 years ago * StringsNotToBeLocalized.txt: Updated for recent changes.
darin [Sun, 22 Jul 2007 19:08:44 +0000 (19:08 +0000)]
    * StringsNotToBeLocalized.txt: Updated for recent changes.

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

12 years ago Reviewed by Anders.
darin [Sun, 22 Jul 2007 18:43:49 +0000 (18:43 +0000)]
    Reviewed by Anders.

        - improve the fix for <rdar://problem/5298816> Crash redirecting message,
          in -[SharedBufferData initWithSharedBuffer:]; fixes a crash seen on the buildbot

        * loader/DocLoader.cpp: (WebCore::DocLoader::~DocLoader): Call setDocLoader(0) on all
        the resources so they don't try to use a stale DocLoader pointer later.

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

12 years ago Reviewed by Sam Weinig.
weinig [Sat, 21 Jul 2007 22:29:46 +0000 (22:29 +0000)]
    Reviewed by Sam Weinig.

        - fixed typos and markup in the following manual tests

        * manual-tests/accidental-strict-mode.html:
        * manual-tests/caretScrolling.html:
        * manual-tests/close-on-closedWindow.html:

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

12 years agoLayoutTests:
weinig [Sat, 21 Jul 2007 22:27:34 +0000 (22:27 +0000)]
LayoutTests:

        Reviewed by Mitz.

        Update tests for <rdar://problem/5352013>
        The computed style for background-position is wrong for the initial value

        * fast/css/computed-style-expected.txt:
        * fast/css/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle-background-position-expected.txt:

WebCore:

        Reviewed by Mitz.

        Patch for <rdar://problem/5352013>
        The computed style for background-position is wrong for the initial value

        - Set the initial value for background-position-x and background-position-y (and
          therefore background-position) to 0% instead of 0px.

        * rendering/RenderStyle.cpp:
        (WebCore::BackgroundLayer::BackgroundLayer):
        * rendering/RenderStyle.h:
        (WebCore::RenderStyle::initialBackgroundXPosition):
        (WebCore::RenderStyle::initialBackgroundYPosition):

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

12 years ago2007-07-21 Ada Chan <adachan@apple.com>
adachan [Sat, 21 Jul 2007 22:07:28 +0000 (22:07 +0000)]
2007-07-21  Ada Chan  <adachan@apple.com>

        Reviewed by Adam.

        Fix bug 14706: http://bugs.webkit.org/show_bug.cgi?id=14706
        Need to set the last visited time before calling WebHistory::addItem().

        * WebHistory.cpp:
        (WebHistory::addItemForURL):

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

12 years ago Fix REGRESSION: Right-click/control-click broken
aroben [Sat, 21 Jul 2007 21:38:09 +0000 (21:38 +0000)]
    Fix REGRESSION: Right-click/control-click broken

        http://bugs.webkit.org/show_bug.cgi?id=14658
        <rdar://problem/5346830>

        Reviewed by Mitz.

        * WebCoreSupport/WebContextMenuClient.mm:
        (fixMenusToSendToOldClients): Update defaultItemsCount after removing
        items from the defaultItems array.

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

12 years agoVersioning.
bdash [Sat, 21 Jul 2007 11:10:27 +0000 (11:10 +0000)]
Versioning.

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

12 years ago Reviewed by Adele.
oliver [Sat, 21 Jul 2007 06:46:13 +0000 (06:46 +0000)]
    Reviewed by Adele.

        <rdar://problem/5319438> REGRESSION: Cannot paste into an active inline input area (14522)
        http://bugs.webkit.org/show_bug.cgi?id=14522

        AppKit sends noop: to -[WebHTMLView doCommandBySelector:] when an IM does not handle event,
        we now check this as it is necessary to work around some IMs that do send messages
        (such as insertText: rather than unmarkText: to confirm a composition)

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]):
        (-[WebHTMLView doCommandBySelector:]):
        * WebView/WebHTMLViewInternal.h:

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

12 years agoPatch from Adam Treat to add the rest of the policy information (action type)
staikos [Sat, 21 Jul 2007 03:25:05 +0000 (03:25 +0000)]
Patch from Adam Treat to add the rest of the policy information (action type)
and a signal for initial layout

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

12 years agoWebCore:
beidson [Sat, 21 Jul 2007 02:29:07 +0000 (02:29 +0000)]
WebCore:

        Reviewed by Adele and Andersca

        <rdar://problem/5336105> - WebBackForwardList created from scratch is unusable (always leads to crash)

        * WebCore.exp: Export the BackForwardList c'tor so WebKit can create one explicitly

WebKit:

        Reviewed by Adele and Andersca

        <rdar://problem/5336105> - WebBackForwardList created from scratch is unusable (always leads to crash)

        * History/WebBackForwardList.mm:
        (-[WebBackForwardList init]): Have a default initializer that uses an empty BackFowardList not associated with a page.

        * WebView/WebFrame.mm:
        (kit): For clarity's sake, this should return nil, not 0

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

12 years agoLayoutTests:
weinig [Sat, 21 Jul 2007 02:26:24 +0000 (02:26 +0000)]
LayoutTests:

        Reviewed by Beth Dakin.

        Tests for <rdar://problem/5351901>
        Computed value of border-position should return a CSSValueList, not a CSSPrimitiveValue

        * fast/css/computed-style-expected.txt:
        * fast/css/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle-background-position-expected.txt: Added.
        * fast/css/getComputedStyle-background-position.html: Added.

WebCore:

        Reviewed by Beth Dakin.

        Fix for <rdar://problem/5351901>
        Computed value of border-position should return a CSSValueList, not a CSSPrimitiveValue

        - Return a space separated CSSValueList for background-position
          instead of a CSSPrimitiveValue (string type).
        - Remove the "else if (renderer)" case as it never returns a different
          value than just calling length.value().
        - Make background-position-x and background-position-y behave like
          background-position.  Fix case of initial value return 'auto' instead
          of 0.

        Test: fast/css/getComputedStyle-background-position.html

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

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

12 years ago Build fix for non-Mac platforms.
ggaren [Sat, 21 Jul 2007 01:38:16 +0000 (01:38 +0000)]
    Build fix for non-Mac platforms.

        * bindings/js/GCController.cpp:

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

12 years ago Reviewed by Darin.
andersca [Sat, 21 Jul 2007 01:23:51 +0000 (01:23 +0000)]
    Reviewed by Darin.

        If the style sheet requested is a user style sheet, don't store it in the DocLoader's resource map;
        user style sheets can outlive their doc loaders.

        * loader/DocLoader.cpp:
        (WebCore::DocLoader::requestCSSStyleSheet):

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

12 years agoLayoutTests:
justing [Sat, 21 Jul 2007 00:38:20 +0000 (00:38 +0000)]
LayoutTests:

        Reviewed by Darin.

        <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it

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

WebCore:

        Reviewed by Darin.

        <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it

        * bridge/EditorClient.h: Removed a client method for enabling/disabling
        word selection on right clicks.
        * editing/Editor.cpp: Ditto.
        * editing/Editor.h:
        * page/EventHandler.cpp:
        (WebCore::EventHandler::sendContextMenuEvent): Select the
        word underneath the mouse regardless of whether its editable.

WebKit:

        Reviewed by Darin.

        <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it

        * WebCoreSupport/WebEditorClient.h:
        * WebCoreSupport/WebEditorClient.mm: Removed the method
        for enabling/disabling word selection on right click.
        * WebView/WebView.mm: Ditto.
        * WebView/WebViewPrivate.h: Removed the getter/setter entirely,
        it was in a private Category for Mail, but wasn't used by Mail
        on Tiger or Leopard, they apparently implement word selection on
        their own.

win:

        Reviewed by Darin.

        <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it

        * WebEditorClient.cpp: Removed the now unused selectWordBeforeMenuEvent().
        * WebEditorClient.h:

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

12 years ago2007-07-20 Ada Chan <adachan@apple.com>
adachan [Fri, 20 Jul 2007 23:35:21 +0000 (23:35 +0000)]
2007-07-20  Ada Chan  <adachan@apple.com>

        Reviewed by Darin and Adam.

        <rdar://problem/5338385> Fixed infinite loop in ScrollView::scrollRectIntoViewRecursively().
        Also removed an unused local variable.

        * platform/win/ScrollViewWin.cpp:
        (WebCore::ScrollView::scrollRectIntoViewRecursively):

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

12 years agoLayoutTests:
antti [Fri, 20 Jul 2007 23:26:48 +0000 (23:26 +0000)]
LayoutTests:

        Reviewed by Darin.

        HTTP test for <rdar://problem/5305788>
        REGRESSION: Safari sometimes loads IE-specific stylesheet on www.apaema.org

        Test that order style sheets arrive has no impact to selection of preferred style sheet set.

        * http/tests/local/fail.css: Added.
        * http/tests/local/link-stylesheet-preferred-expected.txt: Added.
        * http/tests/local/link-stylesheet-preferred.html: Added.
        * http/tests/local/slow-css-pass.cgi: Added.

WebCore:

        Reviewed by Darin.

        Fix <rdar://problem/5305788>
        REGRESSION: Safari sometimes loads IE-specific stylesheet on www.apaema.org

        Pick the preferred style sheet set based on document order even if the sheet is still loading. Previously
        the set was chosen based on which stylesheet happened to arrive first. Just fix the problem at hand
        and resist urge to start refactoring this function.

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

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

12 years agoLayoutTests:
weinig [Fri, 20 Jul 2007 23:19:23 +0000 (23:19 +0000)]
LayoutTests:

        Reviewed by Darin.

        Add tests for <rdar://problem/5351252>
        Computed value for -webkit-background-size and border-spacing
        should be space separated CSSValueLists.

        * fast/css/computed-style-expected.txt:
        * fast/css/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle-background-size-expected.txt: Added.
        * fast/css/getComputedStyle-background-size.html: Added.
        * fast/css/getComputedStyle-border-spacing-expected.txt: Added.
        * fast/css/getComputedStyle-border-spacing.html: Added.

WebCore:

        Reviewed by Darin.

        Fix for <rdar://problem/5351252>
        Computed value for -webkit-background-size and border-spacing
        should be space separated CSSValueLists.

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

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

12 years ago Suggested by Darin Adler.
ggaren [Fri, 20 Jul 2007 23:14:03 +0000 (23:14 +0000)]
    Suggested by Darin Adler.

        Slight tweak to my last commit: changed gcController() to return a
        reference instead of a pointer.

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

12 years ago2007-07-20 Ada Chan <adachan@apple.com>
adachan [Fri, 20 Jul 2007 22:59:23 +0000 (22:59 +0000)]
2007-07-20  Ada Chan  <adachan@apple.com>

        Reviewed by Steve.

        <rdar://problem/5350832> History item's visitedCount wasn't updated correctly

        The call to setLastVisitedTimeInterval() in WebHistory::addItemForURL() does not
        really increment the visitedCount of the HistoryItem - because we only increment the count
        if the last visited time is different.  We should initialize the HistoryItem with
        lastVisited time = 0 so when we call setLastVisitedTimeInterval() later, it'll update
        the last visited time AND the visitedCount.

        * WebHistory.cpp:
        (WebHistory::addItemForURL):

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

12 years ago Reviewed by Darin Adler.
ggaren [Fri, 20 Jul 2007 22:58:24 +0000 (22:58 +0000)]
    Reviewed by Darin Adler.

        Fixed http://bugs.webkit.org/show_bug.cgi?id=12900 Page tear-down
        forces garbage collection once per frame

        Also fixed <rdar://problem/5286989> GC on window close does not always
        bring the JS object count down to 0

        Implemented a 0-delay GC timer in WebCore. Instead of forcing GC
        immediately, code that thinks it has created a lot of garbage starts
        the timer. This has two advantages:

        1) Multiple GCs can coalesce. In my pathological test case, this
        improves performance by an order of magnitude.

        2) Conservative marking is less likely to keep alive important dead
        objects, like the window object, because the stack is small and free of
        JS processing when the timer fires.

        Added GCController.h/.cpp, sometimes blindly:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:

        Added singleton that implements GC on a 0-delay timer:
        * bindings/js/GCController.h: Added.
        * bindings/js/GCController.cpp: Added.

        Changed Collector::collect() calls below to call to the singleton:
        * bindings/js/kjs_proxy.cpp:
        (WebCore::KJSProxy::~KJSProxy):
        * bindings/js/kjs_window.cpp:
        (KJS::Window::clear):
        * history/CachedPage.cpp:
        (WebCore::CachedPage::clear):

        * page/Frame.cpp:
        (WebCore::Frame::~Frame): Removed previous slightly hackish attempt to
        avoid conservative marking of the window object.

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

12 years ago Reviewed by Darin.
andersca [Fri, 20 Jul 2007 22:52:25 +0000 (22:52 +0000)]
    Reviewed by Darin.

        <rdar://problem/5298816> Crash redirecting message, in -[SharedBufferData initWithSharedBuffer:]

        Have cached resources keep track of what DocLoader they belong to. This is so that they can remove themselves
        from the DocLoader's resource map when they're destroyed when the cache is disabled.

        * html/HTMLImageLoader.cpp:
        (WebCore::HTMLImageLoader::updateFromElement):
        * loader/Cache.cpp:
        (WebCore::Cache::requestResource):
        * loader/CachedResource.cpp:
        (WebCore::CachedResource::CachedResource):
        (WebCore::CachedResource::~CachedResource):
        * loader/CachedResource.h:
        (WebCore::CachedResource::setDocLoader):

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

12 years agoLayoutTests:
beidson [Fri, 20 Jul 2007 22:42:18 +0000 (22:42 +0000)]
LayoutTests:

        Reviewed by Darin

        <rdar://problem/5153021> and http://bugs.webkit.org/show_bug.cgi?id=13364

        * fast/frames/frame-base-url-expected.txt: Added.
        * fast/frames/frame-base-url.html: Added.
        * fast/frames/resources/subframe-base-url.html: Added.

WebCore:

        Reviewed by Darin

        <rdar://problem/5153021> and http://bugs.webkit.org/show_bug.cgi?id=13364

        The issue here was that if a document in a subframe was loaded from a URL, but then a script did
        document.open or document.write during parsing, we would overwrite the document's url and baseurl
        with the parent frame's url.  WRONG!

        * dom/Document.cpp:
        (WebCore::Document::open): Only set the url and baseURL in document.open if they are still empty or about:blank

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

12 years agoLayoutTests:
mjs [Fri, 20 Jul 2007 22:35:50 +0000 (22:35 +0000)]
LayoutTests:

        Reviewed by Oliver.

        - test case for <rdar://problem/5326303> REGRESSION: blur event fires upon navigating away from a page with focused element

        (Test mostly by Alice.)

        * fast/events/no-blur-on-page-leave-expected.txt: Added.
        * fast/events/no-blur-on-page-leave.html: Added.
        * fast/events/resources/no-blur-result.html: Added.

WebCore:

        Reviewed by Oliver.

        <rdar://problem/5326303> REGRESSION: blur event fires upon navigating away from a page with focused element

        The proximate cause was the recent change to keep focus on the
        WebHTMLView when switching views. But the reason this happend was
        that didCommitLoadForFrame got called at a time when the new view
        was in place, but the old document was still there. This was a
        longstanding problem with the delegate, and fixing it cleans it
        up.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::begin): Don't send dispatchWindowObjectAvailable if
        caller asked not to (this is to allow order of delegates to be the same).
        (WebCore::FrameLoader::transitionToCommitted): Don't emit didCommitLoadForFrame here.
        (WebCore::FrameLoader::receivedFirstData): Instead do it here, after calling begin(),
        so the new document is set up.
        * loader/FrameLoader.h: Add new optional parameter to begin().

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

12 years ago Reviewed by Darin.
thatcher [Fri, 20 Jul 2007 21:38:36 +0000 (21:38 +0000)]
    Reviewed by Darin.

        <rdar://problem/5199812> WebView needs to adopt viewWillDraw (moving off of _propagateDirtyRectsToOpaqueAncestors)
        <rdar://problem/5017301> REGRESSION: Scroller in Widget Manager splits down the middle while scrolling

        On Leopard _propagateDirtyRectsToOpaqueAncestors is no longer called by AppKit. Also marking new dirty rects
        underneath _recursiveDisplayRectIfNeededIgnoringOpacity will wait until the next runloop to draw them,
        causing rendering to happen in two steps instead of one as WebCore expected.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _topHTMLView]): Move to the file internal category so we can use it in viewWillDraw.
        (-[WebHTMLView _isTopHTMLView]): Ditto.
        (-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]): #ifdef for Tiger only.
        (-[WebHTMLView viewWillDraw]): Do a recursive layout if this is the top WebHTMLView.
        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
          Don't do layout here on Leopard since viewWillDraw handled it.
        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.

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

12 years ago Reviewed by Tim and Geoff.
bdakin [Fri, 20 Jul 2007 21:31:07 +0000 (21:31 +0000)]
    Reviewed by Tim and Geoff.

        Fix for <rdar://problem/5346855> Mail crashes at
        WebCore::RenderTableSection:paint + 846 when attempting to display
        a HTML based message

        After reapplying styles, the RenderView needs layout. However,
        layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize used to
        return early if the WebHTMLView itself does not need layout.
        Because the WebHTMLView is not necessarily in synch with the
        RenderTree, returning early here can get us into a bad situation
        where we paint before laying out the Render Tree. This patch checks
        both the WebHTMLView and the bridge (which checks the RenderView,
        etc), so that we do not return early without laying out the Render
        Tree.

        Some day, we should phase out WebHTMLView keeping track of
        needsLayout at all. But that is a bit beyond the scope of this fix.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):

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

12 years ago Reviewed by Mitz.
weinig [Fri, 20 Jul 2007 20:56:53 +0000 (20:56 +0000)]
    Reviewed by Mitz.

        Update test to reduce code duplication.

        * fast/css/getComputedStyle-borderRadius-expected.txt:
        * fast/css/getComputedStyle-borderRadius.html:

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

12 years agoLayoutTests:
weinig [Fri, 20 Jul 2007 20:35:04 +0000 (20:35 +0000)]
LayoutTests:

        Reviewed by Beth Dakin.

        Computed style for border radii should return a CSSValueList instead
        of CSSPrimitiveValue (with a Pair type) when the radii are not the same.

        * fast/css/computed-style-expected.txt:
        * fast/css/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle-borderRadius-expected.txt: Copied from LayoutTests/fast/dom/getComputedStyle-borderRadius-expected.txt.
        * fast/css/getComputedStyle-borderRadius.html: Copied from LayoutTests/fast/dom/getComputedStyle-borderRadius.html.
        * fast/dom/getComputedStyle-borderRadius-expected.txt: Removed.
        * fast/dom/getComputedStyle-borderRadius.html: Removed.

WebCore:

        Reviewed by Beth Dakin.

        Update for fix for http://bugs.webkit.org/show_bug.cgi?id=14646
        <rdar://problem/5340449>

        - Return a CSSValueList instead of CSSValue (with a Pair type) for
          computed values of border radii.
        - Add ability to CSSValueList to print out a space separated list
          instead of a comma.
        - Add border radii to list of computed styles that we create and can
          iterate over.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::):
        (WebCore::getBorderRadiusCornerValue):
        * css/CSSValueList.cpp:
        (WebCore::CSSValueList::CSSValueList):
        (WebCore::CSSValueList::cssText):
        * css/CSSValueList.h:

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

12 years ago2007-07-20 Mitz Pettel <mitz@webkit.org>
pewtermoose [Fri, 20 Jul 2007 19:01:55 +0000 (19:01 +0000)]
2007-07-20  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - http://bugs.webkit.org/show_bug.cgi?id=14626
          Make bidiReorderCharacters independent of RenderBlock

        No layout test possible because there is no change in functionality.

        This patch generalizes RenderBlock's implementation of the Unicode Bidi Algorithm
        in the form of the BidiResolver class template. An instance of a BidiResolver class
        can generate a sequence of runs with corresponding level and override attributes,
        given a range specified by start and end iterators. The iterators can optionally
        call back to the BidiResolver instance to push or pop explicit embedding levels.

        The patch replaces BidiState with a specialization of BidiResolver that uses
        BidiIterators and generates BidiRuns. It also eliminates some of the file statics
        in bidi.cpp, instead relying on BidiResolver data members.

        The patch makes the BidiContext part of BidiStatus, thus making BidiStatus the
        entire state that needs to be saved and restored in order to restart the bidi
        algorithm at a given point. Previously, you had to keep and pass around two
        separate structures, namely the BidiContext and the BidiStatus.

        bidiReorderCharacters is implemented without relying on render objects, using
        a BidiResolver specialization that uses simple character buffer iterators and
        simple run structures.

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * platform/BidiContext.cpp: Added.
        (WebCore::operator==):
        * platform/BidiContext.h: Added.
        (WebCore::BidiContext::BidiContext):
        (WebCore::BidiContext::ref):
        (WebCore::BidiContext::deref):
        (WebCore::BidiContext::parent):
        (WebCore::BidiContext::level):
        (WebCore::BidiContext::dir):
        (WebCore::BidiContext::override):
        * platform/BidiReorderCharacters.cpp: Added.
        (WebCore::CharacterBufferIterator::CharacterBufferIterator):
        (WebCore::CharacterBufferIterator::offset):
        (WebCore::CharacterBufferIterator::increment):
        (WebCore::CharacterBufferIterator::atEnd):
        (WebCore::CharacterBufferIterator::current):
        (WebCore::CharacterBufferIterator::direction):
        (WebCore::CharacterBufferIterator::operator==):
        (WebCore::CharacterBufferIterator::operator!=):
        (WebCore::::appendRun):
        (WebCore::bidiReorderCharacters):
        * platform/BidiReorderCharacters.h: Added.
        * platform/BidiResolver.h: Added.
        (WebCore::BidiStatus::BidiStatus):
        (WebCore::operator==):
        (WebCore::operator!=):
        (WebCore::BidiCharacterRun::BidiCharacterRun):
        (WebCore::BidiCharacterRun::reversed):
        (WebCore::BidiCharacterRun::dirOverride):
        (WebCore::BidiCharacterRun::next):
        (WebCore::BidiResolver::):
        (WebCore::BidiResolver::context):
        (WebCore::BidiResolver::setContext):
        (WebCore::BidiResolver::setLastDir):
        (WebCore::BidiResolver::setLastStrongDir):
        (WebCore::BidiResolver::setEorDir):
        (WebCore::BidiResolver::dir):
        (WebCore::BidiResolver::setDir):
        (WebCore::BidiResolver::status):
        (WebCore::BidiResolver::setStatus):
        (WebCore::BidiResolver::adjustEmbedding):
        (WebCore::BidiResolver::setAdjustEmbedding):
        (WebCore::BidiResolver::firstRun):
        (WebCore::BidiResolver::lastRun):
        (WebCore::BidiResolver::runCount):
        (WebCore::::embed):
        (WebCore::::deleteRuns):
        (WebCore::::reverseRuns):
        (WebCore::::createBidiRunsForLine):
        * platform/win/PopupMenuWin.cpp:
        (WebCore::PopupMenu::paint):
        * rendering/RenderBlock.h:
        * rendering/RenderFileUploadControl.cpp:
        (WebCore::RenderFileUploadControl::paintObject):
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::paintItemForeground):
        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::childRemoved):
        (WebCore::RootInlineBox::lineBreakBidiStatus):
        (WebCore::RootInlineBox::setLineBreakInfo):
        * rendering/RootInlineBox.h:
        (WebCore::RootInlineBox::RootInlineBox):
        * rendering/bidi.cpp:
        (WebCore::BidiIterator::BidiIterator):
        (WebCore::BidiState::deleteRuns):
        (WebCore::operator==):
        (WebCore::operator!=):
        (WebCore::bidiNext):
        (WebCore::bidiFirst):
        (WebCore::BidiState::addRun):
        (WebCore::appendRunsForObject):
        (WebCore::BidiState::appendRun):
        (WebCore::RenderBlock::constructLine):
        (WebCore::RenderBlock::computeHorizontalPositionsForLine):
        (WebCore::RenderBlock::computeVerticalPositionsForLine):
        (WebCore::RenderBlock::bidiReorderLine):
        (WebCore::buildCompactRuns):
        (WebCore::RenderBlock::layoutInlineChildren):
        (WebCore::RenderBlock::determineStartPosition):
        (WebCore::RenderBlock::determineEndPosition):
        (WebCore::RenderBlock::matchedEndLine):
        (WebCore::RenderBlock::skipWhitespace):
        * rendering/bidi.h:
        (WebCore::BidiRun::BidiRun):
        (WebCore::BidiRun::next):

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

12 years agoLayoutTests:
darin [Fri, 20 Jul 2007 18:37:09 +0000 (18:37 +0000)]
LayoutTests:

        Reviewed by John Sullivan.

        - test for <rdar://problem/5331723> <rdar://problem/5331723> Safari gives error
          103 for URLs that Adobe Lightroom's Preview feature produces, with ":1" in the hostname

        * fast/loader/file-URL-with-port-number-expected.txt: Added.
        * fast/loader/file-URL-with-port-number.html: Added.
        * fast/loader/resources/empty-subframe.html: Added.

WebCore:

        Reviewed by John Sullivan.

        - fix for <rdar://problem/5331723> <rdar://problem/5331723> Safari gives error
          103 for URLs that Adobe Lightroom's Preview feature produces, with ":1" in the hostname

        Test: fast/loader/file-URL-with-port-number.html

        * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::portAllowed):
        Don't do any port blocking for file URLs.

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

12 years ago Reviewed by Darin Adler and David Harrison
sullivan [Fri, 20 Jul 2007 17:50:15 +0000 (17:50 +0000)]
    Reviewed by Darin Adler and David Harrison

        - fixed <rdar://problem/5307075> REGRESSION: Bottom of some printed pages are truncated

        The "avoid orphan" code I added a year ago was causing the page to be imaged to a larger
        height (good), but not shrinking everything to compensate (bad). Bad one-year-ago me!

        * WebView/WebHTMLViewInternal.h:
        added avoidingPrintOrphan boolean

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
        clear _private->avoidingPrintOrphan when clearing _private->printing
        (-[WebHTMLView _scaleFactorForPrintOperation:]):
        take _private->avoidingPrintOrphan into account when computing the scale factor
        (-[WebHTMLView knowsPageRange:]):
        set _private->avoidingPrintOrphan when we're shrinking to avoid an orphan

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

12 years ago2007-07-20 Mitz Pettel <mitz@webkit.org>
pewtermoose [Fri, 20 Jul 2007 16:41:24 +0000 (16:41 +0000)]
2007-07-20  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=14689
          REGRESSION (3.0.2-TOT): <select> menu items have incorrect background color

        * manual-tests/item-background.html: Added.
        * platform/PopupMenuClient.h:
        * platform/graphics/Color.cpp:
        (WebCore::blendComponent): Renamed the static method blend() to this.
        (WebCore::Color::blend): Added. Compositing (in "normal" or "source over"
        blend mode) B.blend(C) over A is equivalent to compositing C over the
        result of compositing B over A.
        (WebCore::Color::blendWithWhite): Changed for the above rename.
        * platform/graphics/Color.h:
        * platform/win/PopupMenuWin.cpp:
        (WebCore::PopupMenu::paint): Changed to use itemBackgroundColor().
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::itemBackgroundColor): Added. Returns the color
        that would result from overlaying the item's background color over the
        menu's background color over solid white. Note that clientStyle() cannot
        be used for the menu's background color, since background color is not
        inherited by the inner block (the regression resulted from changing
        clientStyle() to return the inner block's style), and that the color
        returned from this method is guaranteed to be opaque.
        * rendering/RenderMenuList.h:
        * rendering/RenderTextControl.cpp:
        (WebCore::RenderTextControl::itemBackgroundColor): Added.
        * rendering/RenderTextControl.h:

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

12 years ago Reviewed by Darin.
rwlbuis [Fri, 20 Jul 2007 16:35:57 +0000 (16:35 +0000)]
    Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=14642
        REGRESSION(r24064-24096): Reflection type effect in canvas tag broke

        Do not stop the fill/stroke operation when encountering an empty path.

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

12 years ago... and now the non-symlink file, in a separate commit as SVN is also special about...
bdash [Fri, 20 Jul 2007 11:07:27 +0000 (11:07 +0000)]
... and now the non-symlink file, in a separate commit as SVN is also special about symlinks :-/

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

12 years ago2007-07-20 Mark Rowe <mrowe@apple.com>
bdash [Fri, 20 Jul 2007 11:06:31 +0000 (11:06 +0000)]
2007-07-20  Mark Rowe  <mrowe@apple.com>

        Replace symlink with a PHP-level include to allow use of git on Windows without cygwin.
        WordPress will replace the file with a symlink when it's first accessed, and the PHP-level
        include is functionally identical for our purposes on the first use.

        * blog/wp-content/advanced-cache.php:

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

12 years agoRemove some files that are not used anymore.
lars [Fri, 20 Jul 2007 11:00:39 +0000 (11:00 +0000)]
Remove some files that are not used anymore.

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

12 years agouse the correct font for spaces.
lars [Fri, 20 Jul 2007 10:40:20 +0000 (10:40 +0000)]
use the correct font for spaces.

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

12 years agospaces where not correctly taken into account for both offsetForPosition and selectio...
lars [Fri, 20 Jul 2007 10:39:59 +0000 (10:39 +0000)]
spaces where not correctly taken into account for both offsetForPosition and selectionRectForText. Because of that selections sort of worked in LTR text, but completely failed in RTL.

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

12 years agofix up some smaller issues in selection handling. It's still not perfect and selectio...
lars [Fri, 20 Jul 2007 10:39:44 +0000 (10:39 +0000)]
fix up some smaller issues in selection handling. It's still not perfect and selections in mixed rtl/ltr text are still broken, but it's getting there.

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

12 years agomake offsetForPosition and selectionRectForText work correctly with small caps.
lars [Fri, 20 Jul 2007 10:39:23 +0000 (10:39 +0000)]
make offsetForPosition and selectionRectForText work correctly with small caps.

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

12 years agoclip the drawn text correctly when needed.
lars [Fri, 20 Jul 2007 10:39:05 +0000 (10:39 +0000)]
clip the drawn text correctly when needed.

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

12 years agoFix offsetForPosition and selectionRectForText methods.
lars [Fri, 20 Jul 2007 10:38:49 +0000 (10:38 +0000)]
Fix offsetForPosition and selectionRectForText methods.

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

12 years agofix BiDi text rendering.
lars [Fri, 20 Jul 2007 10:38:28 +0000 (10:38 +0000)]
fix BiDi text rendering.

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

12 years ago Reviewed by Maciej.
oliver [Fri, 20 Jul 2007 10:01:04 +0000 (10:01 +0000)]
    Reviewed by Maciej.

        <rdar://problem/5349668> WebKit/Win needs to send same key events during IME composition as it does on mac

        Removed guards against sending key events during composition, and added a flag
        to indicate a key event is IME related.  This is needed to prevent the first
        keydown from firing a keypress event, and makes WebEditorClient::handleInputMethodKeypress
        somewhat cleaner.

        * WebEditorClient.cpp:
        (WebEditorClient::handleInputMethodKeypress):
        * WebView.cpp:
        (WebView::keyUp):
        (WebView::keyDown):
        * WebView.h:
        (WebView::inIMEKeyDown):

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

12 years ago2007-07-20 Mark Rowe <mrowe@apple.com>
bdash [Fri, 20 Jul 2007 09:23:44 +0000 (09:23 +0000)]
2007-07-20  Mark Rowe  <mrowe@apple.com>

        Reviewed by Maciej.

        Move FTPDirectoryTokenizer::m_templateDocumentData to be a function-scoped static
        to avoid creating a global initializer.  This fixes the build for x86_64.

        * loader/FTPDirectoryDocument.cpp:
        (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):

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

12 years ago * Scripts/commit-log-editor: Small fix to make an all-whitespace log
aroben [Fri, 20 Jul 2007 07:11:47 +0000 (07:11 +0000)]
    * Scripts/commit-log-editor: Small fix to make an all-whitespace log
        message not count as an existing log.

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

12 years ago Reviewed by Maciej Stachowiak.
ggaren [Fri, 20 Jul 2007 05:54:48 +0000 (05:54 +0000)]
    Reviewed by Maciej Stachowiak.

        Fixed <rdar://problem/5347849> Cache eviction of live decoded data is
        thrash-y

        The solution here is to evict live decoded data based on a strict LRU
        model. This should work well as a "scrolling window."

        With this patch, I see a substantial reduction in CPU while scrolling
        through a page with large images on a low memory system. Layout tests
        pass.

        * loader/Cache.h: Changed from a size-based vector of LRU lists to a
        single LRU list in order to implement strict LRU.

        * loader/CachedResource.h: Removed tracking of access count, since that
        was the old cache eviction model.

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

12 years ago Reviewed by Maciej.
oliver [Fri, 20 Jul 2007 05:13:33 +0000 (05:13 +0000)]
    Reviewed by Maciej.

        <rdar://problem/5076807> REGRESSION: Can't undo conversion of inline text (by hitting ESC)
        <rdar://problem/5346167> DOM key events triggered during IME composition differ in webkit/mac vs all windows browsers

        We now basically match the behaviour of IE/Windows. This means that during composition keydown and autorepeat
        keys generate keydown events with a keyCode of 229, which correlates to the windows VK_PROCESSKEY message.
        keyup events are generated with the keyCode of the actual key that was pressed.

        The only difference is on the first keydown of a composition, in which IE will use keyCode == 229, and we will
        send an event with the keyCode for the actual key that was pressed.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::keyEvent):
        * platform/PlatformKeyboardEvent.h:
        (WebCore::PlatformKeyboardEvent::setWindowsKeyCode):

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

12 years ago Reviewed by Adam.
mjs [Fri, 20 Jul 2007 04:09:11 +0000 (04:09 +0000)]
    Reviewed by Adam.

        - WebKit part of fix for <rdar://problem/5262230> Crash while loading a popup in addictinggames.com

        Made closeWindowSoon fire on a timer instead of happening synchronously.

        * WebChromeClient.cpp:
        (WebChromeClient::closeWindowSoon): Actually close the window on a timer, not immediately.
        * WebKit.vcproj/WebKit.vcproj:
        * WebView.cpp:
        (WebView::WebView):
        (WebView::closeWindowSoon):
        (WebView::closeWindowTimerFired):
        * WebView.h:

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

12 years ago Reviewed by Sam
beidson [Fri, 20 Jul 2007 03:47:26 +0000 (03:47 +0000)]
    Reviewed by Sam

        <rdar://problem/5134929> REGRESSION: Colon detected as delimiting an empty port is stripped

        The fix for this was in KURL::parse() which had a slightly changed rule that would strip the colon if there
        was no port.

        An additional canonicalization fix was made in window.location.host to match the expected behavior of leaving
        the colon in place - before this fix, if the colon was there but no port was there, we'd see the port as 0.

        * bindings/js/kjs_window.cpp:
        (KJS::Location::put): Call setHostAndPort instead of setHost and setPort seperately

        * manual-tests/location-host-canonicalization.html: Added.

        * platform/KURL.cpp:
        (WebCore::KURL::setHostAndPort): Set the host and port as one string component then reparse the URL
        (WebCore::KURL::parse): Change one line to consider the empty colon as part of the host name
        * platform/KURL.h:

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

12 years agoUse the right radar number
andersca [Fri, 20 Jul 2007 03:15:30 +0000 (03:15 +0000)]
Use the right radar number

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

12 years ago Reviewed by Adam.
andersca [Fri, 20 Jul 2007 02:59:04 +0000 (02:59 +0000)]
    Reviewed by Adam.

        <rdar://problem/5334742>
        Windows Beta: Crash playing a very large QuickTime movie in Safari

        <rdar://problem/5271174>
        http://bugs.webkit.org/show_bug.cgi?id=14148
        LEAK: Serious memory consumption and leak when loading QT movies.

        Don't keep plugin stream data in memory since some plugin resources (like QT movies)
        can be really big. If a plug-in wants data in a file, create a file and write data to it
        as it's coming from the wire, instead of using a big buffer.

        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::ResourceLoader):
        (WebCore::ResourceLoader::addData):
        (WebCore::ResourceLoader::willStopBufferingData):
        * loader/ResourceLoader.h:
        (WebCore::ResourceLoader::setShouldBufferData):
        * plugins/win/PluginStreamWin.cpp:
        (WebCore::PluginStreamWin::PluginStreamWin):
        (WebCore::PluginStreamWin::start):
        (WebCore::PluginStreamWin::startStream):
        (WebCore::PluginStreamWin::destroyStream):
        (WebCore::PluginStreamWin::didReceiveData):
        (WebCore::PluginStreamWin::didFinishLoading):
        * plugins/win/PluginStreamWin.h:

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

12 years ago2007-07-19 Ada Chan <adachan@apple.com>
adachan [Fri, 20 Jul 2007 02:55:54 +0000 (02:55 +0000)]
2007-07-19  Ada Chan  <adachan@apple.com>

        Rubber-stamped by Adam.

        Update libraries.

        * win/lib/WebKitSystemInterface.lib:
        * win/lib/WebKitSystemInterface_debug.lib:

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