WebKit-https.git
13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 years agoJavaScriptCore:
ggaren [Fri, 20 Jul 2007 02:12:54 +0000 (02:12 +0000)]
JavaScriptCore:

        Reviewed by Darin Adler.

        Fixed http://bugs.webkit.org/show_bug.cgi?id=10880 | <rdar://problem/5335694>
        REGRESSION: JavaScript menu doesn't appear on pricepoint.com (14595)

        Though the ECMA spec says auto-semicolon insertion should not occur
        without a newline or '}', Firefox treats do-while specially, and the
        library used by pricepoint.com requires that special treatment.

        * JavaScriptCore.xcodeproj/project.pbxproj:
        * kjs/grammar.y:

LayoutTests:

        Reviewed by Darin Adler.

        Test for http://bugs.webkit.org/show_bug.cgi?id=10880 | <rdar://problem/5335694>
        REGRESSION: JavaScript menu doesn't appear on pricepoint.com (14595)

        * fast/js/do-while-without-semicolon-expected.txt: Added.
        * fast/js/do-while-without-semicolon.html: Added.

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

13 years agoWebCore:
ggaren [Fri, 20 Jul 2007 02:07:37 +0000 (02:07 +0000)]
WebCore:

        Reviewed by Darin Adler.

        Fixed <rdar://problem/5348384> Restore old return value behavior of
        stringByEvaluatingJavaScriptFromString

        Return an empty string unless you have a string, boolean, or number
        result.

        * WebCore.xcodeproj/project.pbxproj:
        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):

WebKitTools:

        Reviewed by Darin Adler.

        Updated DumpRenderTree for <rdar://problem/5348384> Restore old return
        value behavior of stringByEvaluatingJavaScriptFromString

        * DumpRenderTree/DumpRenderTree.m:
        (testStringByEvaluatingJavaScriptFromString):
        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

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

13 years agoDo a recursive layout on frame's children.
treat [Thu, 19 Jul 2007 23:48:42 +0000 (23:48 +0000)]
Do a recursive layout on frame's children.

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

13 years ago Reviewed by Alexey.
darin [Thu, 19 Jul 2007 22:22:17 +0000 (22:22 +0000)]
    Reviewed by Alexey.

        - fix http://bugs.webkit.org/show_bug.cgi?id=14666
          remove unused xxx-encodings.txt for all platforms other than Mac

        * platform/gdk/gdk-encodings.txt: Removed.
        * platform/win/win-encodings.txt: Removed.
        * platform/wx/wx-encodings.txt: Removed.

        * platform/character-sets.txt: Moved into mac subdirectory since it's only used for Mac; at some
        point I hope to remove it completely.
        * platform/make-charset-table.pl: Ditto.
        * platform/mac/character-sets.txt: Copied from platform/character-sets.txt.
        * platform/mac/make-charset-table.pl: Copied from platform/make-charset-table.pl.

        * DerivedSources.make: Moved CharsetData.cpp into the MACOS section.
        Changed the build rule to use Mac-specific paths for everything and got rid of
        make variables.

        * WebCore.vcproj/build-generated-files.sh: Removed code to set ENCODINGS_FILE and ENCODINGS_PREFIX.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * make-generated-sources.sh: Ditto.

        * Projects/gdk/webcore-gdk.bkl: Removed code to pass gdk-encodings.txt to make-generated-sources.sh.
        * Projects/wx/webcore-wx.bkl: Ditto, but for wx-encodings.txt.

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

13 years ago Reviewed by Geoff.
darin [Thu, 19 Jul 2007 21:10:40 +0000 (21:10 +0000)]
    Reviewed by Geoff.

        - fix <rdar://problem/5345440> PCRE computes wrong length for expressions with quantifiers
          on named recursion or subexpressions

        It's challenging to implement proper preflighting for compiling these advanced features.
        But we don't want them in the JavaScript engine anyway.

        Turned off the following features of PCRE (some of these are simply parsed and not implemented):

            \C \E \G \L \N \P \Q \U \X \Z
            \e \l \p \u \z
            [::] [..] [==]
            (?#) (?<=) (?<!) (?>)
            (?C) (?P) (?R)
            (?0) (and 1-9)
            (?imsxUX)

        Added the following:

            \u \v

        Because of \v, the js1_2/regexp/special_characters.js test now passes.

        To be conservative, I left some features that JavaScript doesn't want, such as
        \012 and \x{2013}, in place. We can revisit these later; they're not directly-enough
        related to avoiding the incorrect preflighting.

        I also didn't try to remove unused opcodes and remove code from the execution engine.
        That could save code size and speed things up a bit, but it would require more changes.

        * kjs/regexp.h:
        * kjs/regexp.cpp: (KJS::RegExp::RegExp): Remove the sanitizePattern workaround for
        lack of \u support, since the PCRE code now has \u support.

        * pcre/pcre-config.h: Set JAVASCRIPT to 1.
        * pcre/pcre_internal.h: Added ESC_v.

        * pcre/pcre_compile.c: Added a different escape table for when JAVASCRIPT is set that
        omits all the escapes we don't want interpreted and includes '\v'.
        (check_escape): Put !JAVASCRIPT around the code for '\l', '\L', '\N', '\u', and '\U',
        and added code to handle '\u2013' inside JAVASCRIPT.
        (compile_branch): Put !JAVASCRIPT if around all the code implementing the features we
        don't want.
        (pcre_compile2): Ditto.

        * tests/mozilla/expected.html: Updated since js1_2/regexp/special_characters.js now
        passes.

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

13 years agoLayoutTests:
antti [Thu, 19 Jul 2007 20:09:18 +0000 (20:09 +0000)]
LayoutTests:

        Reviewed by Darin.

        Test for <rdar://problem/5257371>
        Dashcode Client crash when clicking on placemarks in Maps widget in WebCore::DeprecatedPtrListImpl::addIterator

        * fast/flexbox/inline-children-crash-expected.txt: Added.
        * fast/flexbox/inline-children-crash.html: Added.

WebCore:

        Reviewed by Darin.

        Fix <rdar://problem/5257371>
        Dashcode Client crash when clicking on placemarks in Maps widget in WebCore::DeprecatedPtrListImpl::addIterator

        FlexibleBoxes should never have inline children. Don't move children out from last remaining anonymous block.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::removeChild): real fix
        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutVerticalBox): just to be sure, this is checked elsewhere too

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

13 years ago Reviewed by Darin.
andersca [Thu, 19 Jul 2007 20:04:46 +0000 (20:04 +0000)]
    Reviewed by Darin.

        <rdar://problem/5322268>
        Safari Crash at http://www.exlibrisgroup.com/sfx_openurl.htm

        Add a real copy constructor and assignment operator for CollectionInfo
        so that the vectors in the cache maps will be copied correctly.

        * html/HTMLCollection.cpp:
        (WebCore::HTMLCollection::CollectionInfo::CollectionInfo):
        (WebCore::HTMLCollection::CollectionInfo::swap):
        * html/HTMLCollection.h:
        (WebCore::HTMLCollection::CollectionInfo::operator=):
        (WebCore::HTMLCollection::CollectionInfo::copyCacheMap):

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

13 years ago Fix for 5237574, Colloquy main view does not size correctly. Make
hyatt [Thu, 19 Jul 2007 20:01:26 +0000 (20:01 +0000)]
    Fix for 5237574, Colloquy main view does not size correctly.  Make
        sure to reset the baseilne when calculating a row's height/baseline, so
        that old values don't stick around.

        Reviewed by Tim Hatcher

        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::calcRowHeight):

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

13 years ago Make commit-log-editor work with git
aroben [Thu, 19 Jul 2007 17:24:03 +0000 (17:24 +0000)]
 Make commit-log-editor work with git

        Reviewed by Sam.

        * Scripts/commit-log-editor: Use VCSUtils and accept a git-style
        commit message template. Also removed the unused $breakPoint variable.

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

13 years ago Move generally-useful VCS code into a new VCSUtils.pm module
aroben [Thu, 19 Jul 2007 17:23:54 +0000 (17:23 +0000)]
 Move generally-useful VCS code into a new VCSUtils.pm module

        This is in preparation for making commit-log-editor git-friendly.

        Reviewed by Sam.

        * Scripts/VCSUtils.pm: Added. Code moved here from prepare-ChangeLog.
        * Scripts/prepare-ChangeLog: Use VCSUtils.

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

13 years agoLayoutTests:
antti [Thu, 19 Jul 2007 16:58:01 +0000 (16:58 +0000)]
LayoutTests:

        Reviewed by John.

        Update test case to work better as a pixel test.

        * fast/layers/layer-visibility-expected.checksum:
        * fast/layers/layer-visibility-expected.png:
        * fast/layers/layer-visibility-expected.txt:
        * fast/layers/layer-visibility.html:

WebCore:

        Reviewed by John.

        Fix <rdar://problem/5346697>
        REGRESSION(r23773): Visibile children on invisible layer are not painted (fast/layers/layer-visibility.html fails)

        Test m_hasVisibleContent instead of renderer()->style()->visibility().
        This takes children into account too.

        Regression spotted by Mitz.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintLayer):

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

13 years ago Fix a crash on exit when running DRT against a current
lars [Thu, 19 Jul 2007 13:19:47 +0000 (13:19 +0000)]
    Fix a crash on exit when running DRT against a current
        Qt 4.4 snapshot.

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

13 years agoFix <rdar://problem/5344972> REGRESSION: A error dialog occurs when attempting to...
aroben [Thu, 19 Jul 2007 08:40:58 +0000 (08:40 +0000)]
Fix <rdar://problem/5344972> REGRESSION: A error dialog occurs when attempting to ctrl-click in a iChat message window (webview)

Reviewed by Oliver.

* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusToSendToOldClients): Don't check for the Inspect Element item
if we have fewer than 2 items.

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

13 years agoFix changelog to match reality
oliver [Thu, 19 Jul 2007 05:46:31 +0000 (05:46 +0000)]
Fix changelog to match reality

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

13 years ago Rubber stamped by maciej
oliver [Thu, 19 Jul 2007 05:42:10 +0000 (05:42 +0000)]
    Rubber stamped by maciej

        Rollout previous patch.

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

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

13 years ago Reviewed by Dave Hyatt.
ggaren [Thu, 19 Jul 2007 04:26:43 +0000 (04:26 +0000)]
    Reviewed by Dave Hyatt.

        <rdar://problem/5345099>

        Reduced default WebCore cache size from 32 MB to 23 MB on systems below
        512 MB RAM. This improves RPRVT usage in the Safari pageout test by
        ~10% on a system with 384 MB RAM.

        At 23 MB, no extra resources are evicted from the cache during a PLT
        run, so this is a safe change PLT-wise. 23 MB is also seems to be a
        generous number in real world usage.

        * WebView/WebPreferences.m:
        (+[WebPreferences initialize]):

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

13 years agoIdentify the appropriate Kevin in changelog
oliver [Thu, 19 Jul 2007 04:16:57 +0000 (04:16 +0000)]
Identify the appropriate Kevin in changelog

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

13 years ago Reviewed by Kevin.
oliver [Thu, 19 Jul 2007 04:14:02 +0000 (04:14 +0000)]
    Reviewed by Kevin.

        Fix for <rdar://problem/5346167> DOM key events triggered during
                IME composition differ in webkit/mac vs all windows browsers

        We no longer send DOM key events during IME composition.  This behaviour
        matches the behaviour of WebKit/Win.

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

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

13 years agoLayoutTests:
weinig [Thu, 19 Jul 2007 04:11:36 +0000 (04:11 +0000)]
LayoutTests:

        Reviewed by Oliver.

        Test for http://bugs.webkit.org/show_bug.cgi?id=14646
        WebKit border radius properties are unavailable via JavaScript

        * fast/dom/getComputedStyle-borderRadius-expected.txt: Added.
        * fast/dom/getComputedStyle-borderRadius.html: Added.

WebCore:

        Reviewed by Oliver.

        Fix for http://bugs.webkit.org/show_bug.cgi?id=14646
        WebKit border radius properties are unavailable via JavaScript

        Test: fast/dom/getComputedStyle-borderRadius.html

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::getBorderRadiusCornerValue): Helper function that returns a single value if
        width and the height of the corner radius are equal, and otherwise a pair.
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

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

13 years agoDon't try to use an SSL certificate on Windows until <rdar://problem/5345985> is...
aroben [Thu, 19 Jul 2007 03:44:46 +0000 (03:44 +0000)]
Don't try to use an SSL certificate on Windows until <rdar://problem/5345985> is fixed

Reviewed by Mark.

* Scripts/run-webkit-httpd:
* Scripts/run-webkit-tests:

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

13 years ago Reviewed by Darin.
andersca [Thu, 19 Jul 2007 02:40:12 +0000 (02:40 +0000)]
    Reviewed by Darin.

        <rdar://problem/5262136> Double form repost alert going forward on britishairways.com

        When checking if the request has changed and a new policy callback needs to be sent,
        ignore the request headers. NSURLConnection in Leopard will always call willSendRequest,
        with a request that was different from the one passed to -[NSURLConnection connectionWithRequest:]
        (a few Accept headers are added).

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::checkNavigationPolicy):
        * platform/network/ResourceRequestBase.cpp:
        (WebCore::equalIgnoringHeaderFields):
        (WebCore::operator==):
        * platform/network/ResourceRequestBase.h:

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

13 years agoForgot to commit the actual fix!
aroben [Thu, 19 Jul 2007 01:41:03 +0000 (01:41 +0000)]
Forgot to commit the actual fix!

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

13 years agoMore git friendliness for prepare-ChangeLog
aroben [Thu, 19 Jul 2007 01:38:59 +0000 (01:38 +0000)]
More git friendliness for prepare-ChangeLog

The overall change is to remove the use of git-status and replace it
with git-diff --name-status (which we were already using in the
--git-commit case).

This lets us respect directories specified on the command line when
using git, just as we do for Subversion. It also speeds things up a
bit, especially in the subdirectory case, as git-status is pretty slow.

I also fixed some issues where we wouldn't detect copied files and
would reverse the new filename and the original filename for renamed files.

Reviewed by Mark.

* Scripts/prepare-ChangeLog:
(sub diffFromToString): Added.
(sub diffCommand): Don't append the paths in the --git-commit case, as
we should be operating on the entire commit.
(sub statusCommand): Always use git-diff --name-status, and added an
extra -C option to git-diff to make it find a few more copied files.
(sub createPatchCommand): Collapsed the two git cases a bit, and added
the extra -C option as above.
(sub generateFileList): Remove the git-status codepath, and recognize
file copies in the --name-status output.
(sub isModifiedOrAddedStatus): Collapsed the status codes into one
dictionary.
(sub isConflictStatus): Updated the git dictionary.
(sub statusDescription): Updated the git dictionary.

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

13 years agoDisable SSL tests on Windows
aroben [Thu, 19 Jul 2007 01:26:29 +0000 (01:26 +0000)]
Disable SSL tests on Windows

<rdar://problem/5345985> tracks making these tests work

Rubberstamed by Mark.

* http/conf/cygwin-httpd.conf:
* win/Skipped:

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

13 years agoJavaScriptCore:
darin [Thu, 19 Jul 2007 00:44:16 +0000 (00:44 +0000)]
JavaScriptCore:

        Reviewed by Oliver Hunt.

        - fix <rdar://problem/5345432> PCRE computes length wrong for expressions such as "[**]"

        Test: fast/js/regexp-charclass-crash.html

        * pcre/pcre_compile.c: (pcre_compile2): Fix the preflight code that calls
        check_posix_syntax to match the actual regular expression compilation code;
        before it was missing the check of the first character.

LayoutTests:

        Reviewed by Oliver Hunt.

        - test for <rdar://problem/5345432> PCRE computes length wrong for expressions such as "[**]"

        * fast/js/regexp-charclass-crash-expected.txt: Added.
        * fast/js/regexp-charclass-crash.html: Added.

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

13 years agoLayoutTests:
andersca [Wed, 18 Jul 2007 23:31:38 +0000 (23:31 +0000)]
LayoutTests:

        Reviewed by Darin.

        <rdar://problem/5340098>
        http://bugs.webkit.org/show_bug.cgi?id=13366
        REGRESSION (r10935): AOL beta music player doesn't play

        * fast/dom/HTMLDocument/object-by-name-unknown-child-element-expected.txt: Added.
        * fast/dom/HTMLDocument/object-by-name-unknown-child-element.html: Added.

WebCore:

        Reviewed by Darin.

        <rdar://problem/5340098>
        http://bugs.webkit.org/show_bug.cgi?id=13366
        REGRESSION (r10935): AOL beta music player doesn't play

        The AOL beta music player has a typo, causing it to create an <embed"> element inside of
        an <object> element
        Because of this, it will not be treated as an embed tag, so its name will not be added
        to the document's named item map. Furthermore, since the <object> contains a child that
        is not a <param>, the object's name won't be added either.

        The (somewhat ugly) fix is to add <object> to the named map only if it has <param> or
        unknown elements as children.

        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::updateDocNamedItem):

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

13 years ago2007-07-19 Holger Hans Peter Freyther <zecke@selfish.org>
zecke [Wed, 18 Jul 2007 22:56:33 +0000 (22:56 +0000)]
2007-07-19  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Mark.

        Define __BUILDING_GDK when building for Gdk to fix building testkjs on OSX.

        * JavaScriptCore.pri:

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

13 years ago * Scripts/build-drosera: Update where we look for the Xcode project.
thatcher [Wed, 18 Jul 2007 22:45:32 +0000 (22:45 +0000)]
    * Scripts/build-drosera: Update where we look for the Xcode project.

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

13 years agoUse the old wording for safari
treat [Wed, 18 Jul 2007 22:45:04 +0000 (22:45 +0000)]
Use the old wording for safari

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

13 years ago Reviewed by Geoff.
andersca [Wed, 18 Jul 2007 22:34:19 +0000 (22:34 +0000)]
    Reviewed by Geoff.

        <rdar://problem/5341133> REGRESSION (Safari 2->Safari 3): DjVu plug-in doesn't load in Safari 3

        The DjVu plug-in uses the size of the passed in NPNetscapeFuncs struct to copy it over to a NPNetscapeFuncs struct
        whose size was determined when DjVu was compiled. This means that when we add extra functions to the vtable,
        DjVu will segfault copying it into the (too small) destination struct.

        Fix this by special-casing the DjVu plug-in and setting the NPNetscapeFuncs size to be the same size as what DjVu expects.

        * Plugins/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage _applyDjVuWorkaround]):
        (-[WebNetscapePluginPackage load]):

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

13 years agoForgot the changelog
treat [Wed, 18 Jul 2007 22:26:51 +0000 (22:26 +0000)]
Forgot the changelog

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

13 years agoAdd a script for launching test app for Qt and Gdk ports.
treat [Wed, 18 Jul 2007 22:23:19 +0000 (22:23 +0000)]
Add a script for launching test app for Qt and Gdk ports.

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

13 years agoWebCore:
thatcher [Wed, 18 Jul 2007 21:35:14 +0000 (21:35 +0000)]
WebCore:

        Reviewed by Adam.

        <rdar://problem/5343767> Should have a way to disable the Web Inspector

        This change facilitates the ability to turn the Web Inspector on and off.

        Makes the InspectorClient be required to create a new Page. This also means that
        InspectorController will never be NULL. Adds a new function on Page to test
        if the inspector is enabled.

        * WebCore.exp: New symbol for the Page constructor.
        * WebCore.pro: Add InspectorClientGdk.cpp.
        * WebCoreSources.bkl: ditto.
        * html/HTMLDocument.cpp:
        (WebCore::HTMLDocument::createTokenizer):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::detachFromParent): Don't null check the InspectorCOntroller.
        (WebCore::FrameLoader::dispatchDidCommitLoad): Ditto.
        (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest): Ditto.
        (WebCore::FrameLoader::dispatchWillSendRequest): Ditto.
        (WebCore::FrameLoader::dispatchDidReceiveResponse): Ditto.
        (WebCore::FrameLoader::dispatchDidReceiveContentLength): Ditto.
        (WebCore::FrameLoader::dispatchDidFinishLoading): Ditto.
        (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache): Ditto.
        * page/ContextMenuController.cpp:
        (WebCore::ContextMenuController::handleContextMenuEvent): Ask the InspectorController if it is enabled.
        (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
        * page/InspectorController.cpp:
        (WebCore::InspectorController::enabled): Ask the Page's settings if developer extras are enabled.
        (WebCore::InspectorController::inspect): Check if the InspectorController is enabled.
        (WebCore::InspectorController::focusNode): Ditto.
        (WebCore::InspectorController::highlight): Ditto.
        (WebCore::InspectorController::hideHighlight): Ditto.
        (WebCore::InspectorController::addMessageToConsole): Ditto.
        (WebCore::InspectorController::attachWindow): Ditto.
        (WebCore::InspectorController::detachWindow): Ditto.
        (WebCore::InspectorController::windowScriptObjectAvailable): Ditto.
        (WebCore::InspectorController::didCommitLoad): Ditto.
        (WebCore::InspectorController::frameDetachedFromParent): Ditto.
        (WebCore::InspectorController::didLoadResourceFromMemoryCache): Ditto.
        (WebCore::InspectorController::identifierForInitialRequest): Ditto.
        (WebCore::InspectorController::willSendRequest): Ditto.
        (WebCore::InspectorController::didReceiveResponse): Ditto.
        (WebCore::InspectorController::didReceiveContentLength): Ditto.
        (WebCore::InspectorController::didFinishLoading): Ditto.
        (WebCore::InspectorController::didFailLoading): Ditto.
        * page/InspectorController.h:
        * page/Page.cpp:
        (WebCore::Page::Page): Require an InspectorClient.
        (WebCore::Page::~Page): Always call pageDestroyed on the InspectorController.
        (WebCore::Page::inspectorEnabled): Check the WebCore settings if the developer extras are enabled.
        * page/Page.h:
        * page/gdk/InspectorClientGdk.cpp: Added.
        (WebCore::InspectorClientGdk::inspectorDestroyed): Empty stub calling notImplemented.
        (WebCore::InspectorClientGdk::createPage): Ditto.
        (WebCore::InspectorClientGdk::showWindow): Ditto.
        (WebCore::InspectorClientGdk::closeWindow): Ditto.
        (WebCore::InspectorClientGdk::attachWindow): Ditto.
        (WebCore::InspectorClientGdk::detachWindow): Ditto.
        (WebCore::InspectorClientGdk::highlight): Ditto.
        (WebCore::InspectorClientGdk::hideHighlight): Ditto.
        (WebCore::InspectorClientGdk::inspectedURLChanged): Ditto.
        * page/gdk/InspectorClientGdk.h: Added.
        * platform/graphics/svg/SVGImage.cpp:
        (WebCore::SVGImage::dataChanged): Pass in a dummy InspectorClient.
        * platform/graphics/svg/SVGImageEmptyClients.h:
        (WebCore::SVGEmptyInspectorClient::~SVGEmptyInspectorClient): Empty dummy implementation.
        (WebCore::SVGEmptyInspectorClient::inspectorDestroyed): Ditto.
        (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
        (WebCore::SVGEmptyInspectorClient::showWindow): Ditto.
        (WebCore::SVGEmptyInspectorClient::closeWindow): Ditto.
        (WebCore::SVGEmptyInspectorClient::attachWindow): Ditto.
        (WebCore::SVGEmptyInspectorClient::detachWindow): Ditto.
        (WebCore::SVGEmptyInspectorClient::highlight): Ditto.
        (WebCore::SVGEmptyInspectorClient::hideHighlight): Ditto.
        (WebCore::SVGEmptyInspectorClient::inspectedURLChanged): Ditto.

WebKit:

        Reviewed by Adam.

        <rdar://problem/5343767> Should have a way to disable the Web Inspector

        Adds a new DisableWebKitDeveloperExtras default that will force the Web Inspector to be disabled.
        This overrides the WebKitDeveloperExtras and IncludeDebugMenu default. It also disables
        the Web Inspector in Debug builds.

        * WebView/WebView.mm:
        (+[WebView _developerExtrasEnabled]): Check for the DisableWebKitDeveloperExtras default.
        (-[WebView _commonInitializationWithFrameName:groupName:]): Make a new WebInspectorClient when making the Page.

WebKitQt:

        Reviewed by Adam.

        Make the Page with the now required InspectorClient.

        * Api/qwebpage.cpp:
        (QWebPagePrivate::QWebPagePrivate):
        * WebKitPart/WebKitPart.cpp:
        (WebKitPart::initView):

WebKitTools:

        Reviewed by Adam.

        Make the Page with the now required InspectorClient.

        * GdkLauncher/main.cpp:
        (main):

win:

        Reviewed by Adam.

        Make the Page with the now required InspectorClient.

        * WebView.cpp:
        (WebView::initWithFrame):

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

13 years agoWebCore:
andersca [Wed, 18 Jul 2007 21:11:54 +0000 (21:11 +0000)]
WebCore:

        Make some headers private instead of project.

        * WebCore.xcodeproj/project.pbxproj:

WebKit:

        Build fix.

        * Misc/WebNSAttributedStringExtras.mm:

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

13 years ago Reviewed by Maciej and Kevin Decker
sullivan [Wed, 18 Jul 2007 21:07:20 +0000 (21:07 +0000)]
    Reviewed by Maciej and Kevin Decker

        - fixed <rdar://problem/5315926> REGRESSION: ~.4% PLT regression from r23949 (canonicalization change)

        * loader/mac/LoaderNSURLExtras.m:
        (canonicalURL):
        Rolled out the fix for 5249730 that caused this regression. 5249730 is addressed a different way now.

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

13 years agoWebCore:
weinig [Wed, 18 Jul 2007 21:04:10 +0000 (21:04 +0000)]
WebCore:

        Build fix.

        * WebCore.xcodeproj/project.pbxproj:
        * loader/gdk/FrameLoaderClientGdk.cpp:
        (WebCore::FrameLoaderClientGdk::objectContentType):
        * platform/graphics/win/ImageWin.cpp:
        * platform/network/cf/ResourceResponseCFNet.cpp:
        * platform/win/ClipboardWin.cpp:
        (WebCore::createGlobalImageFileDescriptor):

WebKitQt:

        Build fix.

        * Api/qwebnetworkinterface.cpp:
        (QWebNetworkManager::started):
        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::canShowMIMEType):
        (WebCore::FrameLoaderClientQt::objectContentType):

win:

        Build fix.

        * WebFrame.cpp:
        (WebFrame::dispatchDecidePolicyForMIMEType):
        (WebFrame::objectContentType):
        * WebView.cpp:
        (WebView::canShowMIMEType):

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

13 years agoFinish rename and fix the builds
weinig [Wed, 18 Jul 2007 20:43:03 +0000 (20:43 +0000)]
Finish rename and fix the builds

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

13 years agoWebCore:
weinig [Wed, 18 Jul 2007 20:37:20 +0000 (20:37 +0000)]
WebCore:

        Rubber-stamped by Adam Roben.

        Rename MimeTypeRegistry to MIMETypeRegistry and xmlhttprequest to XMLHttpRequest

        * WebCore.exp:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * bindings/js/JSXMLHttpRequest.cpp:
        * bindings/js/kjs_binding.cpp:
        * bindings/js/kjs_dom.cpp:
        * dom/Document.cpp:
        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::formData):
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::containsJavaApplet):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::requestObject):
        * loader/mac/LoaderNSURLExtras.m:
        (suggestedFilenameWithMIMEType):
        * platform/MIMETypeRegistry.cpp: Copied from platform/MimeTypeRegistry.cpp.
        (WebCore::initialiseSupportedImageMIMETypes):
        (WebCore::initialiseMIMETypeRegistry):
        (WebCore::MIMETypeRegistry::getMIMETypeForPath):
        (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
        (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
        (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
        (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
        (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
        (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
        (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
        * platform/MIMETypeRegistry.h: Copied from platform/MimeTypeRegistry.h.
        * platform/MimeTypeRegistry.cpp: Removed.
        * platform/MimeTypeRegistry.h: Removed.
        * platform/gdk/MIMETypeRegistryGdk.cpp: Copied from platform/gdk/MimeTypeRegistryGdk.cpp.
        (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
        * platform/gdk/MimeTypeRegistryGdk.cpp: Removed.
        * platform/graphics/BitmapImage.cpp:
        * platform/graphics/Image.cpp:
        (WebCore::Image::supportsType):
        * platform/mac/DragDataMac.mm:
        * platform/mac/MIMETypeRegistryMac.mm: Copied from platform/mac/MimeTypeRegistryMac.mm.
        (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
        (WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
        (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
        * platform/mac/MimeTypeRegistryMac.mm: Removed.
        * platform/mac/PasteboardMac.mm:
        (WebCore::Pasteboard::writeImage):
        * platform/qt/MIMETypeRegistryQt.cpp: Copied from platform/qt/MimeTypeRegistryQt.cpp.
        (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
        * platform/qt/MimeTypeRegistryQt.cpp: Removed.
        * platform/win/MIMETypeRegistryWin.cpp: Copied from platform/win/MimeTypeRegistryWin.cpp.
        (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
        (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
        * platform/win/MimeTypeRegistryWin.cpp: Removed.
        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::updateWidget):
        * xml/xmlhttprequest.cpp: Removed.
        * xml/xmlhttprequest.h: Removed.
        * xml/XMLHttpRequest.cpp: Copied from xml/xmlhttprequest.cpp.
        * xml/XMLHttpRequest.h: Copied from xml/xmlhttprequest.h.

WebKit:

        Rubber-stamped by Adam Roben.

        Update after renaming MimeTypeRegistry to MIMETypeRegistry.

        * Misc/WebNSPasteboardExtras.mm:
        (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]):
        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
        * WebView/WebDataSource.mm:
        (-[WebDataSource _documentFragmentWithArchive:]):
        * WebView/WebHTMLRepresentation.mm:
        (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
        (+[WebHTMLRepresentation supportedImageMIMETypes]):
        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _imageExistsAtPaths:]):

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

13 years agoFinish rename, fix build
weinig [Wed, 18 Jul 2007 20:00:08 +0000 (20:00 +0000)]
Finish rename, fix build

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

13 years ago Rubber-stamped by Adam Roben.
weinig [Wed, 18 Jul 2007 19:56:40 +0000 (19:56 +0000)]
    Rubber-stamped by Adam Roben.

        Rename csshelper.h, csshelper.cpp, cssparser.h, cssparser.cpp,
        cssstyleselector.h, and cssstyleselector.cpp to be CamelCase.

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * bindings/objc/DOM.mm:
        * bindings/objc/DOMHTML.mm:
        * css/CSSGrammar.y:
        * css/CSSMediaRule.cpp:
        * css/CSSMutableStyleDeclaration.cpp:
        * css/CSSPrimitiveValue.cpp:
        * css/CSSStyleSheet.cpp:
        * css/MediaList.cpp:
        * css/MediaQueryExp.cpp:
        * css/csshelper.cpp: Removed.
        * css/csshelper.h: Removed.
        * css/CSSHelper.cpp: Copied from css/csshelper.cpp.
        * css/CSSHelper.h: Copied from css/csshelper.h.
        * css/cssparser.cpp: Removed.
        * css/cssparser.h: Removed.
        * css/CSSParser.cpp: Copied from css/cssparser.cpp.
        * css/CSSParser.h: Copied from css/cssparser.h.
        * css/cssstyleselector.cpp: Removed.
        * css/cssstyleselector.h: Removed.
        * css/CSSStyleSelector.cpp: Copied from css/cssstyleselector.cpp.
        * css/CSSStyleSelector.h: Copied from css/cssstyleselector.h.
        * dom/Document.cpp:
        * dom/Element.cpp:
        * dom/StyledElement.cpp:
        * editing/ApplyStyleCommand.cpp:
        * editing/markup.cpp:
        * html/CanvasGradient.cpp:
        * html/CanvasRenderingContext2D.cpp:
        * html/CanvasStyle.cpp:
        * html/HTMLAnchorElement.cpp:
        * html/HTMLBaseElement.cpp:
        * html/HTMLBodyElement.cpp:
        * html/HTMLDocument.cpp:
        * html/HTMLEmbedElement.cpp:
        * html/HTMLFormElement.cpp:
        * html/HTMLFrameElementBase.cpp:
        * html/HTMLImageElement.cpp:
        * html/HTMLImageLoader.cpp:
        * html/HTMLLinkElement.cpp:
        * html/HTMLObjectElement.cpp:
        * html/HTMLOptGroupElement.cpp:
        * html/HTMLOptionElement.cpp:
        * html/HTMLSelectElement.cpp:
        * html/HTMLTableElement.cpp:
        * html/HTMLTablePartElement.cpp:
        * html/HTMLTokenizer.cpp:
        * ksvg2/css/SVGCSSParser.cpp:
        * ksvg2/css/SVGCSSStyleSelector.cpp:
        * ksvg2/svg/SVGAElement.cpp:
        * ksvg2/svg/SVGClipPathElement.cpp:
        * ksvg2/svg/SVGGradientElement.cpp:
        * ksvg2/svg/SVGLength.cpp:
        * ksvg2/svg/SVGMaskElement.cpp:
        * ksvg2/svg/SVGStyledElement.cpp:
        * ksvg2/svg/SVGUseElement.cpp:
        * page/DOMWindow.cpp:
        * page/mac/FrameMac.mm:
        * page/mac/WebCoreFrameBridge.mm:
        * rendering/HitTestResult.cpp:
        * rendering/RenderObject.cpp:
        * rendering/RenderStyle.cpp:
        * rendering/RenderThemeMac.mm:

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