WebKit-https.git
18 years ago Fix to make selection more like NSTextView. All gap painting is now done by WebCore...
hyatt [Tue, 5 Oct 2004 20:11:51 +0000 (20:11 +0000)]
Fix to make selection more like NSTextView.  All gap painting is now done by WebCore, so WebKit no longer
needs to try to fill gaps around text.

        Reviewed by kocienda

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]):
        (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]):

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

18 years ago Reviewed by Darin
kocienda [Tue, 5 Oct 2004 20:05:38 +0000 (20:05 +0000)]
    Reviewed by Darin

        Use the new CSS properties I added with my previous check-in. Also makes
        some changes to caret positioning and drawing to make the proper editing
        end-of-line behavior work correctly.

        * khtml/editing/selection.cpp:
        (khtml::Selection::layout): Caret drawing now takes affinity into account
        when deciding where to paint the caret (finally!).
        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::previousVisiblePosition): Move off Position::rendersInDifferentPosition
        to determine the result. Use a simpler test involving comparisons between
        downstream positions while iterating. This is cheaper to do and easier to understand.
        (khtml::VisiblePosition::nextVisiblePosition): Ditto.
        * khtml/rendering/bidi.cpp:
        (khtml::BidiIterator::current): Do not return non-breaking spaces for empty
        text renderers and for non-text renderers. Return a null Qchar instead. Returning
        non-breaking spaces was causing errors when the new -khtml-nbsp-mode was set to "space".
        (khtml::RenderBlock::computeHorizontalPositionsForLine): Shrink line boxes that
        contain with more spaces than can fit on the end of a line.
        (khtml::RenderBlock::skipWhitespace): Factor this out from findNextLineBreak.
        (khtml::RenderBlock::findNextLineBreak): Use new skipWhitespace function. Add
        in code to check and use new CSS properties.
        * khtml/rendering/break_lines.cpp:
        (khtml::isBreakable): Consider a non-breaking space a breakable character based
        on setting of new -khtml-nbsp-mode property.
        * khtml/rendering/break_lines.h: Ditto.
        * khtml/rendering/render_block.h: Declare skipWhitespace function.
        * khtml/rendering/render_text.cpp:
        (RenderText::caretRect): Do not draw the caret beyond the right edge of the
        window when in white-space normal mode.

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

18 years ago Reviewed by Darin
kocienda [Tue, 5 Oct 2004 18:24:01 +0000 (18:24 +0000)]
    Reviewed by Darin

        Fix for these bugs:

        In this patch, I add two new CSS properties and their associated behavior.
        This is to support end-of-line and word-wrapping features that match the
        conventions of text editors.

        There are also some other small changes here which begin to lay the groundwork
        for using these new properties to bring about the desired editing behavior.

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue): Add support for new CSS properties.
        * khtml/css/cssproperties.c: Generated file.
        * khtml/css/cssproperties.h: Ditto.
        * khtml/css/cssproperties.in: Add new properties.
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyProperty): Add support for new CSS properties.
        * khtml/css/cssvalues.c: Generated file.
        * khtml/css/cssvalues.h: Ditto.
        * khtml/css/cssvalues.in:  Add support for new CSS properties.
        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::upstreamDeepEquivalent): Added new helper.
        * khtml/editing/visible_position.h:
        * khtml/rendering/render_box.cpp:
        (RenderBox::deleteLineBoxWrapper): Zero out inlineBoxWrapper.
        * khtml/rendering/render_replaced.cpp:
        (RenderWidget::detach): Zero out inlineBoxWrapper.
        * khtml/rendering/render_style.cpp:
        (StyleCSS3InheritedData):
        (StyleCSS3InheritedData::operator==): Add support for new CSS properties.
        (RenderStyle::diff): Ditto.
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::nbspMode): Ditto.
        (khtml::RenderStyle::khtmlLineBreak): Ditto.
        (khtml::RenderStyle::setNBSPMode): Ditto.
        (khtml::RenderStyle::setKHTMLLineBreak): Ditto.
        (khtml::RenderStyle::initialNBSPMode): Ditto.
        (khtml::RenderStyle::initialKHTMLLineBreak): Ditto.

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

18 years ago Reviewed by John.
darin [Tue, 5 Oct 2004 15:44:58 +0000 (15:44 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3577255> custom file icon shows up upside down in <input type=file>

        * WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton setFilename:]): Added a call to
        setFlipped that fixes the problem, even though I don't know why.

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

18 years ago Reviewed by John.
darin [Tue, 5 Oct 2004 15:43:50 +0000 (15:43 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3673150> Pasting string from clipboard that is longer than input box will accept fails rather than truncating

        * kwq/KWQTextField.mm:
        (-[KWQTextFieldFormatter isPartialStringValid:proposedSelectedRange:originalString:originalSelectedRange:errorDescription:]):
        Wrote a new version of this method that truncates incoming strings rather than rejecting them
        out of hand.

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

18 years ago Reviewed by Maciej.
darin [Tue, 5 Oct 2004 07:03:55 +0000 (07:03 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _selectionStartFontAttributesAsRTF]): Changed to call new bridge method
        named fontAttributesForSelectionStart, deleted the method this used to use, and renamed
        this to have the word "start" in it.
        (-[WebHTMLView copyFont:]): Updated for name change.

        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

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

18 years ago Reviewed by Maciej.
darin [Tue, 5 Oct 2004 07:01:21 +0000 (07:01 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3826343> crash in KHTMLParser::setCurrent parsing document fragment (happens in Calendar widget)

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::KHTMLParser): Initialized currentIsReferenced to false (fixes bug).
        (KHTMLParser::reset): Use doc() to make code easier to read.
        (KHTMLParser::setCurrent): Ditto.
        (KHTMLParser::parseToken): Ditto.
        (KHTMLParser::insertNode): Ditto.
        (KHTMLParser::getElement): Ditto.
        (KHTMLParser::popOneBlock): Ditto.

        - fixed <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window

        * kwq/KWQKHTMLPart.h: Added fontAttributesForSelectionStart.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::styleForSelectionStart): Factored out most of fontForSelection.
        (KWQKHTMLPart::fontAttributesForSelectionStart): Added.
        (KWQKHTMLPart::fontAttributesForSelectionStart): Added.
        (KWQKHTMLPart::registerCommandForUndo): Updated for name change (see below).
        (KWQKHTMLPart::registerCommandForRedo): Ditto.

        * kwq/WebCoreBridge.h: Added fontAttributesForSelectionStart.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge undoEditing:]): Updated for name change (see below).
        (-[WebCoreBridge redoEditing:]): Ditto.
        (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:]): Got rid of named temporary
        EditCommandPtr variable to make things slightly more terse.
        (-[WebCoreBridge moveSelectionToDragCaret:smartMove:]): Ditto.
        (-[WebCoreBridge deleteSelectionWithSmartDelete:]): Ditto.
        (-[WebCoreBridge fontAttributesForSelectionStart]): Added.

        - fix compile on Panther and other cleanup

        * khtml/khtml_part.cpp: Removed unneeded include.
        * kwq/KWQEditCommand.h: Got rid of use of "impl" when referring to EditCommand pointers.
        * kwq/KWQEditCommand.mm: Added include so we compile on Panther.
        (-[KWQEditCommand initWithEditCommand:]): Changed name.
        (-[KWQEditCommand dealloc]): Updated for m_impl change to m_command.
        (-[KWQEditCommand finalize]): Ditto.
        (+[KWQEditCommand commandWithEditCommand:]): Changed name.
        (-[KWQEditCommand command]): Changed name.

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

18 years ago * WebView.subproj/WebFrameInternal.h: removed constant declarations that...
cblu [Mon, 4 Oct 2004 23:20:52 +0000 (23:20 +0000)]
    * WebView.subproj/WebFrameInternal.h: removed constant declarations that I committed by mistake

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

18 years ago Reviewed by John.
darin [Mon, 4 Oct 2004 22:54:51 +0000 (22:54 +0000)]
    Reviewed by John.

        - did a more-robust version of the fix I just landed

        * khtml/html/htmlparser.h: Added currentIsReferenced boolean.
        * khtml/html/htmlparser.cpp:
        (KHTMLParser::KHTMLParser): Initializes currentIsReferenced.
        (KHTMLParser::setCurrent): Changed to respect and set currentIsReferenced.

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

18 years ago Reviewed by John.
darin [Mon, 4 Oct 2004 22:45:22 +0000 (22:45 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3824393> REGRESSION (165-TOT): Crash in KHTMLParser::popOneBlock closing window (bose.com)

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::~KHTMLParser): Move call to setCurrent(0) after the call to freeBlock, since freeBlock doesn't
        work well when current is 0, and there's no reason we need to reset the current block first.
        (KHTMLParser::setCurrent): Don't ever hold a reference to the document. This prevents a situation where there
        would be a reference cycle. In the test case from the bug above, this cycle actually happened and resulted
        in a double-delete of the document, tokenizer, and parser.

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

18 years ago Fixed: <rdar://problem/3798948> NPP_URLNotify is not called if plug-in calls NPN_...
cblu [Mon, 4 Oct 2004 22:14:54 +0000 (22:14 +0000)]
Fixed: <rdar://problem/3798948> NPP_URLNotify is not called if plug-in calls NPN_*URLNotfy
Fixed a number of FIXME's related to notifying plug-ins of loaded pages.

        Reviewed by rjw.

        * Plugins.subproj/WebBaseNetscapePluginStream.h:
- replaced URL ivar with requestURL and responseURL ivars since we need to pass both to plug-ins
         - added sendNotification boolean. Relying on notifyData not being NULL was not information to know whether to call NPP_URLNotify or not.
- added isTerminated boolean because determining whether or not stream.ndata is NULL is not enough to know if the stream has been cancelled.
* Plugins.subproj/WebBaseNetscapePluginStream.m:
        (+[WebBaseNetscapePluginStream reasonForError:]): new, factored out from receivedError:
        (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): new
        (-[WebBaseNetscapePluginStream dealloc]): release new ivars
        (-[WebBaseNetscapePluginStream finalize]): added assert
        (-[WebBaseNetscapePluginStream setRequestURL:]): new
        (-[WebBaseNetscapePluginStream setResponseURL:]): new
        (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): renamed, use responseURL as it basically did before
        (-[WebBaseNetscapePluginStream startStreamWithResponse:]): call renamed method
        (-[WebBaseNetscapePluginStream destroyStream]):
- do nothing if terminated
- call NPP_StreamAsFile and NPP_DestroyStream if stream.ndata is not NULL
- call NPP_URLNotify if sendNotification is YES regardless of value of notifyData
        (-[WebBaseNetscapePluginStream receivedError:]): call reasonForError
        (-[WebBaseNetscapePluginStream deliverData]): use renamed ivar
        * Plugins.subproj/WebBaseNetscapePluginView.h:
- added observingFrameLoadNotification boolean
- renamed dictionary ivar to pendingFrameLoads which has WebFrame keys and WebPluginRequest values
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView addFrameLoadObserver]): new
        (-[WebBaseNetscapePluginView removeFrameLoadObserver]): new
        (-[WebBaseNetscapePluginView stop]): call removeFrameLoadObserver
        (-[WebBaseNetscapePluginView initWithFrame:]): use renamed pendingFrameLoads ivar
        (-[WebBaseNetscapePluginView dealloc]): ditto
        (-[WebBaseNetscapePluginView requestWithURLCString:]): set referrer on the request just as IE does
        (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
- call NPP_URLNotify depending of value of sendNotification
- call new init method on WebBaseNetscapePluginStream rather then setting variables individually
        (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): new, calls NPP_URLNotify at the right time with the right value
        (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]): new, delegate method called from WebFrame
        (-[WebBaseNetscapePluginView loadPluginRequest:]): call addFrameLoadObserver
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): take new sendNotification parameter and pass it
        (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]): pass YES for sendNotification
        (-[WebBaseNetscapePluginView getURL:target:]): pass NO for sendNotification
        (-[WebBaseNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]): take new sendNotification parameter and pass it
        (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): pass YES for sendNotification
        (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]): pass NO for sendNotification
        (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:]): take new sendNotification parameter
        (-[WebPluginRequest sendNotification]): new
        * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
        (-[WebNetscapePluginEmbeddedView didStart]): set referrer on the request just as IE does
        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): set the request URL on the stream
        * Plugins.subproj/WebNetscapePluginStream.h:
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): take new sendNotification parameter and pass it
        (-[WebNetscapePluginStream dealloc]): use renamed ivar
        (-[WebNetscapePluginStream start]): ditto
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _setState:]): removed notification posting code. This was only used by WebBaseNetscapePluginView and it was the wrong notification to send.
        (-[WebFrame _checkLoadCompleteForThisFrame]): call internal load delegate to tell it that the load has finished
        (-[WebFrame _loadItem:withLoadType:]): ditto
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): ditto
        (-[WebFrame _setInternalLoadDelegate:]): new
        (-[WebFrame _internalLoadDelegate]): new
        * WebView.subproj/WebFrameInternal.h:
        * WebView.subproj/WebFramePrivate.h:

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

18 years ago Reviewed by Maciej.
darin [Mon, 4 Oct 2004 21:32:56 +0000 (21:32 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3825429> onclick handler called when mouse down on another element (affects Dashboard Movies widget, test case enclosed)

        * khtml/khtmlview.cpp:
        (KHTMLViewPrivate::KHTMLViewPrivate): Initialize the click node to 0.
        (KHTMLViewPrivate::~KHTMLViewPrivate): Deref the click node.
        (KHTMLViewPrivate::reset): Clear the click node.
        (KHTMLView::viewportMousePressEvent): Call invalidateClick when we pass the event to a subframe to
        reduce the chance that we'll hold on to an old click node for a long time. Set the click node to
        the node we we are clicking on.
        (KHTMLView::viewportMouseDoubleClickEvent): Only send a click even if the node is the same one from
        the original click. Call invalidateClick when done to reduce the chance that we'll hold on to an
        old click node for a long time.
        (KHTMLView::invalidateClick): Clear the click node.
        (KHTMLView::viewportMouseReleaseEvent): Only send a click even if the node is the same one from
        the original click. Call invalidateClick when done to reduce the chance that we'll hold on to an
        old click node for a long time.
        (KHTMLView::keyPressEvent): Remove code that sets the originalNode field, which is never used.

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

18 years ago Reviewed by Hyatt
kocienda [Mon, 4 Oct 2004 18:52:39 +0000 (18:52 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3825289> REGRESSION (Mail): Crash in fontForSelection in empty window

        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::previousPosition): Switch to node iteration instead "leaf"
        iteration. I have been wanting to make this change for a long time, but couldn't
        since other code relied on the leaf behavior. That is no longer true. Plus, the
        bug fix requires the new behavior.
        (khtml::VisiblePosition::nextPosition): Ditto.
        (khtml::VisiblePosition::isCandidate): Empty blocks needed a height to be a candidate,
        but we make a special case for the body element. This fixes the bug.

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

18 years ago Fixed: <rdar://problem/3758113> REGRESSION: Macromedia ColdFusion page doesn't show...
cblu [Mon, 4 Oct 2004 18:01:26 +0000 (18:01 +0000)]
Fixed: <rdar://problem/3758113> REGRESSION: Macromedia ColdFusion page doesn't show main content

After bumping up our plug-in version, Flash now sends 2 CRLF's between the headers and body of their POST request. Our code was not prepared for this.

        Reviewed by darin.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[NSData _web_locationAfterFirstBlankLine]): looks for 2 CRLF's, not for 2 LF's

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

18 years ago Reviewed by Ken.
darin [Mon, 4 Oct 2004 17:43:49 +0000 (17:43 +0000)]
    Reviewed by Ken.

        - fixed a potential storage leak when we turn on CGImageRef image rendering

        * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]): Fix potential storage leak
        by adding [super dealloc], but leak was not real yet because the code is commented out.

        - make paste style work with color as part of fix to <rdar://problem/3814237> REGRESSION (Mail):
          Copy/paste style does not set color in Mail compose window

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _selectionFontAttributes]): Change structure so it's easy to add more attributes.
        For now I haven't added any yet.
        (-[WebHTMLView _colorAsString:]): Moved this earlier in the file.
        (-[WebHTMLView _shadowAsString:]): Ditto.
        (-[WebHTMLView _styleFromFontAttributes:]): Add background color, foreground color, and text shadow.

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

18 years ago Reviewed by Ken.
darin [Mon, 4 Oct 2004 17:40:13 +0000 (17:40 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3800667> REGRESSION (Mail): double-clicking multiple spaces only selects two spaces

        * kwq/KWQTextUtilities.mm: (KWQFindWordBoundary): Moved here from the .cpp file. Changed to use the
        doubleClickAtIndex: method from NSAttributedString rather than using Unicode Utilities.
        * kwq/KWQTextUtilities.cpp: Removed.
        * WebCore.pbproj/project.pbxproj: Removed KWQTextUtilities.cpp.

        - fixed a problem that would show up using HTML editing under garbage collection

        * kwq/KWQEditCommand.mm: (-[KWQEditCommand finalize]): Fixed a [super dealloc] that should have been a
        [super finalize].

        - another small change

        * khtml/editing/visible_units.cpp: (khtml::nextWordBoundary): Tweaked a comment.

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

18 years ago Reviewed by Ken.
darin [Mon, 4 Oct 2004 17:34:12 +0000 (17:34 +0000)]
    Reviewed by Ken.

        - rolled in a fix the KDE folks did for the operations that generate HTML fragments

        * kjs/string_object.cpp: (StringProtoFuncImp::call): Added quote marks to generated HTML.

        - rolled out an old workaround we don't need any more

        * JavaScriptCore.pbproj/project.pbxproj: Remove -Wno-long-double because the <math.h> issue that
        required it is no longer there.

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

18 years ago Reviewed by Ken (or arguably done by Ken, reviewed by Darin).
darin [Fri, 1 Oct 2004 17:25:20 +0000 (17:25 +0000)]
    Reviewed by Ken (or arguably done by Ken, reviewed by Darin).

        - fixed <rdar://problem/3823828> REGRESSION (Mail): Clicking past end of any line puts insertion point at beginning of next line

        * khtml/editing/visible_position.cpp: (khtml::VisiblePosition::VisiblePosition):
        Check for an offset of 0 and a <br> and use UPSTREAM affinity in that case.
        This is a short term fix for something that needs a better longer-term fix.

        - fixed <rdar://problem/3823816> REGRESSION (Mail): double-clicking first word on line also selects previous empty line

        * khtml/editing/visible_units.cpp: (khtml::previousWordBoundary): Added a special
        case for <br>. While I'm not sure why this regressed, I'm sure this fix is good.

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

18 years ago Reviewed by John.
darin [Fri, 1 Oct 2004 15:18:31 +0000 (15:18 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3782117> CrashTracer: ..722 crashes at com.apple.WebCore: DOM::HTMLBodyElementImpl::insertedIntoDocument + 0x2c (AOL website)

        * khtml/html/html_baseimpl.cpp:
        (HTMLBodyElementImpl::insertedIntoDocument): Check for nil document case.
        (HTMLFrameElementImpl::isURLAllowed): Ditto.
        (HTMLFrameElementImpl::openURL): Ditto.

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

18 years ago Reviewed by Maciej.
darin [Fri, 1 Oct 2004 08:02:28 +0000 (08:02 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3822218> REGRESSION (164-165): images don't update on rollover on directv.com page

        I introduced a major regression where various JavaScript window properties would not be found when I
        fixed bug 3809600.

        * khtml/ecma/kjs_window.h: Added hasProperty.
        * khtml/ecma/kjs_window.cpp: (Window::hasProperty): Return true in all the cases where get returns something.

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

18 years ago Reviewed by Maciej.
darin [Fri, 1 Oct 2004 06:43:37 +0000 (06:43 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3461499> JavaScript function document.open() is buggy with 2nd argument "replace"

        Experiments with Firefox indicate that document.open() should not be treated as window.open() unless there
        are more than two parameters. Also, Firefox does not implement the "replace" behavior, so we don't have
        to worry about it either.

        * khtml/ecma/kjs_html.cpp: (KJS::HTMLDocFunction::tryCall): Only forward to window if there are more than
        two parameters, rather than if there are more than one.

        - fixed <rdar://problem/3672933> oninput is firing at page load time for <input type=range>

        * kwq/KWQSlider.mm: (QSlider::setValue): Don't emit a signal here. This follows the usual pattern, where
        a signal is only emitted for changes that are not explicitly requested by the caller.

        - fixed <rdar://problem/3821167> leaks of something allocated by recalcStyle after loading altavista page from cvs-base

        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyle): Ref and deref the style we allocate so it's
        not left floating if setStyle decides not to ref it.

        - fixed <rdar://problem/3821172> leak of HTML attribute string after loading the ESPN page from cvs-base

        * khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseHTMLAttribute): Use the DOMString version of
        the lower() operation so we don't end up leaving a DOMStringImpl * floating if AtomicString decides not
        to ref it.

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

18 years agoWebKit:
rjw [Fri, 1 Oct 2004 00:24:39 +0000 (00:24 +0000)]
WebKit:
Fixed <rdar://problem/3821215> NPN hasMethod and hasProperty functions should take NPObjects, not NPClass

Also changed dashboard regions dictionary to use "control"
for scroller region label, instead of "scroller, per
request from ouch.

        Reviewed by Chris.

        * Plugins.subproj/npruntime.h:
        * WebView.subproj/WebView.m:
        (-[WebView _addScrollerDashboardRegions:from:]):

JavaScriptCore:
Fixed <rdar://problem/3821215> NPN hasMethod and hasProperty functions should take NPObjects, not NPClass

        Reviewed by Chris.

        * bindings/NP_jsobject.cpp:
        (_NPN_GetProperty):
        (_NPN_HasProperty):
        (_NPN_HasMethod):
        * bindings/c/c_class.cpp:
        (CClass::methodsNamed):
        (CClass::fieldNamed):
        * bindings/c/c_class.h:
        * bindings/c/c_instance.cpp:
        (CInstance::invokeMethod):
        * bindings/jni/jni_class.cpp:
        (JavaClass::methodsNamed):
        * bindings/jni/jni_class.h:
        * bindings/npruntime.h:
        * bindings/objc/objc_class.h:
        * bindings/objc/objc_class.mm:
        (ObjcClass::methodsNamed):
        * bindings/runtime.h:
        * bindings/runtime_object.cpp:
        (RuntimeObjectImp::get):
        (RuntimeObjectImp::hasProperty):

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

18 years ago Fixed: <rdar://problem/3498680> switching back and forth between tabs stops calling...
cblu [Fri, 1 Oct 2004 00:18:47 +0000 (00:18 +0000)]
Fixed: <rdar://problem/3498680> switching back and forth between tabs stops calling anything in a plug-in

        Reviewed by darin.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendEvent:]): call setWindowIfNecessary because the window may have changed
        (-[WebBaseNetscapePluginView updateAndSetWindow]): new
        (-[WebBaseNetscapePluginView setWindowIfNecessary]): was setWindow, this method now just sets the window
        (-[WebBaseNetscapePluginView start]): call updateAndSetWindow
        (-[WebBaseNetscapePluginView viewDidMoveToWindow]): ditto
        (-[WebBaseNetscapePluginView viewHasMoved:]): ditto

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

18 years ago Fixed: <rdar://problem/3498668> switching out of tab doesn't send loseFocusEvent...
cblu [Thu, 30 Sep 2004 23:14:47 +0000 (23:14 +0000)]
Fixed: <rdar://problem/3498668> switching out of tab doesn't send loseFocusEvent to plug-in

        Reviewed by rjw.

        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView setHasFocus:]): new, sends events to plug-in
        (-[WebBaseNetscapePluginView becomeFirstResponder]): call setHasFocus
        (-[WebBaseNetscapePluginView resignFirstResponder]): ditto
        (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): ditto

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

18 years ago Fixed <rdar://problem/3822330> REGRESSION: crash on launch when homepage is set...
rjw [Thu, 30 Sep 2004 20:04:48 +0000 (20:04 +0000)]
Fixed <rdar://problem/3822330> REGRESSION: crash on launch when homepage is set to about:blank

Added nil check.

        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::setDisplaysWithFocusAttributes):

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

18 years ago Fixed: <rdar://problem/3792822> Safari is calling the Cocoa QuickTime plugin twice...
cblu [Thu, 30 Sep 2004 19:48:13 +0000 (19:48 +0000)]
Fixed: <rdar://problem/3792822> Safari is calling the Cocoa QuickTime plugin twice for the OBJECT and EMBED tags

        Reviewed by hyatt.

        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::attach): call dispatchHTMLEvent after updateWidget instead of every time this method is called
        (HTMLObjectElementImpl::recalcStyle): ditto

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

18 years ago - rolled out bad image change that caused performance regression
darin [Thu, 30 Sep 2004 18:56:45 +0000 (18:56 +0000)]
    - rolled out bad image change that caused performance regression

        * khtml/rendering/render_image.cpp: (RenderImage::setPixmap):
        Don't reference the new image before doing the assignment.
        This forced an unwanted.

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

18 years ago Fixed:
cblu [Thu, 30 Sep 2004 17:52:27 +0000 (17:52 +0000)]
Fixed:
Assertion failure when loading standalone netscape plug-in content.
Document loads of WebKit plug-in content should be cancelled since the plug-in does its own loading.

        Reviewed by john.

        * Misc.subproj/WebKitErrors.m: removed deprecated method
        * Misc.subproj/WebKitErrorsPrivate.h:
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]): fixed the assertion statement
        * Plugins.subproj/WebPluginDocumentView.h:
        * Plugins.subproj/WebPluginDocumentView.m:
        (-[WebPluginDocumentView dealloc]): remove retained plug-in
        (-[WebPluginDocumentView setDataSource:]): retain the plug-in, cancel the laod

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

18 years ago Reviewed by me, coded by Darin
kocienda [Thu, 30 Sep 2004 16:59:50 +0000 (16:59 +0000)]
    Reviewed by me, coded by Darin

        - fixed <rdar://problem/3818305> REGRESSION (Mail): Shift + page up has no effect; should modify selection

        * khtml/editing/selection.cpp: (khtml::Selection::modify): Fix problem where vertical distance
        was used as a distance threshold, but was a negative number. Now make it positive at the start
        of the function (and make a couple related changes).

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

18 years ago Fixed:
cblu [Thu, 30 Sep 2004 01:32:15 +0000 (01:32 +0000)]
Fixed:
<rdar://problem/3763832> Safari-155: Non-Embeded movies fail to open in Cocoa QT plug-in
<rdar://problem/3820517> "*** -[WebPluginPackage NPP_New]: selector not recognized [self = 0x5552c10]"

        Reviewed by rjw.

        * History.subproj/WebHistoryItem.m:
        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_firstResponderCausesFocusDisplay]):
        (-[NSView _webView]):
        (-[NSView _frame]):
        (-[NSView _bridge]):
        (-[NSView _dataSource]):
        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebBasePluginPackage.m:
        (-[WebBasePluginPackage hash]):
        (-[WebBasePluginPackage isQuickTimePlugIn]):
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController initWithDocumentView:]):
        (-[WebPluginController addPlugin:]):
        (-[WebPluginController destroyAllPlugins]):
        (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
        (-[WebPluginController webPlugInContainerShowStatus:]):
        (-[WebPluginController webPlugInContainerSelectionColor]):
        (-[WebPluginController webFrame]):
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
        (-[WebPluginDatabase refresh]):
        (WebPluginDocumentView::while):
        * Plugins.subproj/WebPluginDocumentView.h: Added.
        * Plugins.subproj/WebPluginDocumentView.m: Added.
        (-[WebPluginDocumentView initWithFrame:]):
        (-[WebPluginDocumentView dealloc]):
        (-[WebPluginDocumentView drawRect:]):
        (-[WebPluginDocumentView setDataSource:]):
        (-[WebPluginDocumentView setNeedsLayout:]):
        (-[WebPluginDocumentView layout]):
        (-[WebPluginDocumentView currentWindow]):
        (-[WebPluginDocumentView viewWillMoveToWindow:]):
        (-[WebPluginDocumentView viewDidMoveToWindow]):
        (-[WebPluginDocumentView viewWillMoveToHostWindow:]):
        (-[WebPluginDocumentView viewDidMoveToHostWindow]):
        (-[WebPluginDocumentView receivedData:withDataSource:]):
        (-[WebPluginDocumentView receivedError:withDataSource:]):
        (-[WebPluginDocumentView finishedLoadingWithDataSource:]):
        (-[WebPluginDocumentView canProvideDocumentSource]):
        (-[WebPluginDocumentView documentSource]):
        (-[WebPluginDocumentView title]):
        * Plugins.subproj/npapi.m:
        (NPN_ReleaseVariantValue):
        (NPN_GetStringIdentifier):
        (NPN_GetStringIdentifiers):
        (NPN_GetIntIdentifier):
        (NPN_IdentifierIsString):
        (NPN_UTF8FromIdentifier):
        (NPN_IntFromIdentifier):
        (NPN_CreateObject):
        (NPN_RetainObject):
        (NPN_ReleaseObject):
        (NPN_Invoke):
        (NPN_InvokeDefault):
        (NPN_Evaluate):
        (NPN_GetProperty):
        (NPN_SetProperty):
        (NPN_RemoveProperty):
        (NPN_HasProperty):
        (NPN_HasMethod):
        (NPN_SetException):
        (NPN_Call):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge frameRequiredForMIMEType:URL:]):
        * WebCoreSupport.subproj/WebViewFactory.m:
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDebugDOMNode.m:
        * WebView.subproj/WebDocumentInternal.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView initWithFrame:]):
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebImageRepresentation.h:
        * WebView.subproj/WebRenderNode.m:
        * WebView.subproj/WebView.m:

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

18 years ago Prepended underscores to NPN methods so that when the QT plug-in loads these symbols...
cblu [Thu, 30 Sep 2004 01:32:04 +0000 (01:32 +0000)]
Prepended underscores to NPN methods so that when the QT plug-in loads these symbols, it uses the non-underscore versions in WebKit. Without this, the QT plug-in was failing to load when launching Safari from the command-line.

        Reviewed by rjw.

        * JavaScriptCore.pbproj/project.pbxproj:
        * bindings/NP_jsobject.cpp:
        (_NPN_CreateScriptObject):
        (_NPN_InvokeDefault):
        (_NPN_Invoke):
        (_NPN_Evaluate):
        (_NPN_GetProperty):
        (_NPN_SetProperty):
        (_NPN_RemoveProperty):
        (_NPN_HasProperty):
        (_NPN_HasMethod):
        * bindings/c/c_class.cpp:
        (CClass::methodsNamed):
        (CClass::fieldNamed):
        * bindings/c/c_instance.cpp:
        (CInstance::CInstance):
        (CInstance::~CInstance):
        (CInstance::operator=):
        (CInstance::invokeMethod):
        (CInstance::invokeDefaultMethod):
        * bindings/c/c_runtime.cpp:
        * bindings/c/c_runtime.h:
        (KJS::Bindings::CField::name):
        (KJS::Bindings::CMethod::name):
        * bindings/npruntime.cpp:
        (_NPN_GetStringIdentifier):
        (_NPN_GetStringIdentifiers):
        (_NPN_GetIntIdentifier):
        (_NPN_IdentifierIsString):
        (_NPN_UTF8FromIdentifier):
        (_NPN_IntFromIdentifier):
        (NPN_InitializeVariantWithObject):
        (_NPN_ReleaseVariantValue):
        (_NPN_CreateObject):
        (_NPN_RetainObject):
        (_NPN_ReleaseObject):
        (_NPN_SetExceptionWithUTF8):
        (_NPN_SetException):

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

18 years agoWebKit:
rjw [Thu, 30 Sep 2004 00:39:53 +0000 (00:39 +0000)]
WebKit:
Fixed <rdar://problem/3779998> bringing window to front or sending to back does not send focus/blur events to JavaScript window object

The fix has two parts, 1) make onblur and onfocus work for windows,
        and 2), allow the dashboard to override WebKit's special key/non-key
        behaviors.

        Reviewed by Maciej.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView restartNullEvents]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView addMouseMovedObserver]):
        (-[WebHTMLView removeMouseMovedObserver]):
        * WebView.subproj/WebView.m:
        (-[WebView _dashboardBehavior:]):
        * WebView.subproj/WebViewInternal.h:
        * WebView.subproj/WebViewPrivate.h:

WebCore:
Fixed <rdar://problem/3779998> bringing window to front or sending to back does not send focus/blur events to JavaScript window object

The fix has two parts, 1) make onblur and onfocus work for windows,
        and 2), allow the dashboard to override WebKit's special key/non-key
        behaviors.

        Reviewed by Chris.

        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::setDisplaysWithFocusAttributes):

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

18 years ago Reviewed by Hyatt
kocienda [Wed, 29 Sep 2004 21:55:48 +0000 (21:55 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3705894> REGRESSION (Mail): if a single word is wider than the window,
        it doesn't break and just runs off the right side

        * khtml/css/css_computedstyle.cpp:
        (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Add support for CSS_PROP_WORD_WRAP.
        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue): Ditto.
        * khtml/css/cssproperties.c: Generated file.
        * khtml/css/cssproperties.h: Ditto.
        * khtml/css/cssproperties.in: Add word-wrap property.
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyProperty): Add support for CSS_PROP_WORD_WRAP.
        * khtml/css/cssvalues.c: Generated file.
        * khtml/css/cssvalues.h: Ditto.
        * khtml/css/cssvalues.in: Add break-word value.
        * khtml/rendering/bidi.cpp:
        (khtml::RenderBlock::findNextLineBreak): Add code to implement new word wrapping feature.
        * khtml/rendering/render_style.cpp:
        (StyleCSS3InheritedData): Add support for new wordWrap property.
        (StyleCSS3InheritedData::operator==): Ditto.
        (RenderStyle::diff): Ditto.
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::wordWrap): Ditto.
        (khtml::RenderStyle::setWordWrap): Ditto.
        (khtml::RenderStyle::initialWordWrap): Ditto.

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

18 years agoWebCore:
mjs [Wed, 29 Sep 2004 20:40:13 +0000 (20:40 +0000)]
WebCore:

        Reviewed by John.

- consolidated OS version checks into prefix header

        * WebCorePrefix.h:
        * khtml/rendering/render_canvasimage.cpp:
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject roleDescription]):
        (-[KWQAccObject accessibilityActionDescription:]):
        * kwq/KWQComboBox.mm:
        (QComboBox::QComboBox):
        * kwq/KWQFoundationExtras.h:

WebKit:

        Reviewed by John.

- consolidated OS version checks into prefix header

        * Misc.subproj/WebFileDatabase.m:
        (-[WebFileDatabase _createLRUList:]):
        (+[WebFileDatabase _syncLoop:]):
        * Misc.subproj/WebKitErrors.m:
        (registerErrors):
        * Misc.subproj/WebNSObjectExtras.h:
        (WebNSRetainCFRelease):
        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]):
        * Misc.subproj/WebUnicode.m:
        (_unicodeDirection):
        * WebCoreSupport.subproj/WebImageData.h:
        * WebCoreSupport.subproj/WebImageRenderer.h:
        * WebCoreSupport.subproj/WebKeyGenerator.h:
        * WebCoreSupport.subproj/WebNewKeyGeneration.c:
        * WebKitPrefix.h:
        * WebView.subproj/WebDataSource.m:
        (+[WebDataSource _repTypesAllowImageTypeOmission:]):
        (-[WebDataSource isLoading]):
        * WebView.subproj/WebFrameView.m:
        (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebPDFRepresentation.h:
        * WebView.subproj/WebPDFRepresentation.m:
        * WebView.subproj/WebPDFView.h:
        * WebView.subproj/WebPDFView.m:

WebBrowser:

        Reviewed by John.

- consolidated OS version checks into prefix header

        * AddressBarContentsManager.h:
        * AddressBarContentsManager.m:
        * AddressBarController.m:
        * AppController.m:
        (-[AppController applicationDidFinishLaunching:]):
        * BookmarkCollections.m:
        * BookmarksController.h:
        * BookmarksController.m:
        * BookmarksViewController.m:
        * BrowserDocument.h:
        * BrowserDocument.m:
        * BrowserDocumentController.h:
        * BrowserDocumentController.m:
        * BrowserNSNetServiceExtras.m:
        * BrowserWebBookmarkExtras.m:
        * BrowserWebController.m:
        * BrowserWebViewPrinting.m:
        * BrowserWindow.m:
        (-[BrowserWindow performKeyEquivalent:]):
        * BrowserWindowController.h:
        * BrowserWindowController.m:
        (-[BrowserWindowController locationField]):
        (-[BrowserWindowController searchField]):
        (-[BrowserWindowController locationBarIsShowing]):
        (-[BrowserWindowController setUpLocationBar]):
        (-[BrowserWindowController isShowingBar:]):
        (-[BrowserWindowController updateKeyboardLoop]):
        (-[BrowserWindowController windowDidLoad]):
        (-[BrowserWindowController dealloc]):
        (-[BrowserWindowController setDocument:]):
        (-[BrowserWindowController showLocationBarTemporarilyIfHidden]):
        (-[BrowserWindowController makeLocationBarPermanentIfTemporary]):
        (-[BrowserWindowController hideLocationBarIfTemporary]):
        (-[BrowserWindowController selectSearchField:]):
        (-[BrowserWindowController canShowInputFields]):
        (-[BrowserWindowController updateStopAndReloadButton]):
        (-[BrowserWindowController toggleLocationBar:]):
        (-[BrowserWindowController setToolbarsVisible:]):
        (-[BrowserWindowController closeTab:]):
        (-[BrowserWindowController fixFocusRingAroundLocationField]):
        (-[BrowserWindowController validateMenuItem:]):
        (-[BrowserWindowController showWindow:]):
        * ContextMenuHandler.m:
        * Debug/DebugUtilities.m:
        * DownloadProgressEntry.m:
        (-[NSFileManager setMetadataURL:referrer:atPath:]):
        * InternetConfigUtilities.m:
        * LoadProgressMonitor.m:
        * LocationChangeError.m:
        * NetworkController.h:
        * NetworkController.m:
        * OutlineViewPlus.h:
        * OutlineViewPlus.m:
        * Preferences.subproj/ISyncController.h:
        * Preferences.subproj/RSSPreferences.h:
        * Preferences.subproj/RSSPreferences.m:
        * Preferences.subproj/SecurityPreferences.m:
        * Preferences.subproj/WBPreferences.m:
        * PrintingAccessoryViewController.m:
        * SyndicationController.m:
        * TableViewPlus.m:
        * Test/PageLoadTestRunner.m:
        (-[PageLoadTestRunner setSingleTestURL:]):
        * ToolbarController.h:
        * ToolbarController.m:
        * WebBookmark.h:
        * WebBookmark.m:
        * WebBookmarkGroup.h:
        * WebBookmarkGroup.m:
        * WebBookmarkGroupPrivate.h:
        * WebBookmarkLeaf.m:
        * WebBookmarkList.m:
        * WebBookmarkPrivate.h:
        * WebBrowserPrefix.h:

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

18 years agoFix remaining fast tests to handle br changes.
hyatt [Wed, 29 Sep 2004 18:07:43 +0000 (18:07 +0000)]
Fix remaining fast tests to handle br changes.

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

18 years agoFix positioning tests to account for br changes.
hyatt [Wed, 29 Sep 2004 18:05:15 +0000 (18:05 +0000)]
Fix positioning tests to account for br changes.

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

18 years agoFix float 15 test to accurately reflect the image loading regression in that test.
hyatt [Wed, 29 Sep 2004 18:04:09 +0000 (18:04 +0000)]
Fix float 15 test to accurately reflect the image loading regression in that test.

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

18 years agoFix float tests to account for br changes.
hyatt [Wed, 29 Sep 2004 18:02:16 +0000 (18:02 +0000)]
Fix float tests to account for br changes.

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

18 years agoFix doctypes tests for list item changes.
hyatt [Wed, 29 Sep 2004 18:01:37 +0000 (18:01 +0000)]
Fix doctypes tests for list item changes.

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

18 years agoLand changes to CSS1 suite from <br> patch.
hyatt [Wed, 29 Sep 2004 17:59:43 +0000 (17:59 +0000)]
Land changes to CSS1 suite from <br> patch.

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

18 years agoLand changes to editing test from <br> patch.
hyatt [Wed, 29 Sep 2004 17:58:13 +0000 (17:58 +0000)]
Land changes to editing test from <br> patch.

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

18 years ago Make sure <br>s always get line boxes. Also prevent the creation of RenderTexts...
hyatt [Wed, 29 Sep 2004 17:55:00 +0000 (17:55 +0000)]
Make sure <br>s always get line boxes.  Also prevent the creation of RenderTexts for whitespace normal/nowrap nodes
that follow <br>s.

        Reviewed by kocienda

        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::isCandidate):
        * khtml/rendering/render_br.cpp:
        (RenderBR::RenderBR):
        (RenderBR::createInlineBox):
        (RenderBR::baselinePosition):
        (RenderBR::lineHeight):
        * khtml/rendering/render_br.h:
        * khtml/rendering/render_line.cpp:
        (khtml::InlineFlowBox::placeBoxesVertically):
        * khtml/rendering/render_line.h:
        (khtml::InlineBox::isText):
        (khtml::InlineFlowBox::addToLine):
        * khtml/rendering/render_text.cpp:
        (RenderText::detach):
        * khtml/rendering/render_text.h:
        (khtml::InlineTextBox:::InlineRunBox):
        (khtml::InlineTextBox::isInlineTextBox):
        (khtml::InlineTextBox::isText):
        (khtml::InlineTextBox::setIsText):
        * khtml/xml/dom_textimpl.cpp:
        (TextImpl::rendererIsNeeded):
        * kwq/KWQRenderTreeDebug.cpp:
        (operator<<):

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

18 years ago Reviewed by John
kocienda [Wed, 29 Sep 2004 17:51:52 +0000 (17:51 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3815895> exception inside fontForSelection causes Mail to abort when selection hits bottom

        * khtml/editing/selection.cpp:
        (khtml::Selection::toRange): Use RangeImpl calls to detect exceptions when creating a Range
        from a Selection. Return an empty Range when there is an exception.

        Fix for this bug:

        <rdar://problem/3817268> REGRESSION (Mail): Window does not scroll when selecting out of
        visible area of view with arrow keys

        * khtml/editing/selection.cpp: Did some name changing. m_needsCaretLayout -> m_needsLayout.
        Added m_expectedVisibleRect which supplies the right rectangle to update when scrolling.
        (khtml::Selection::Selection): m_needsCaretLayout -> m_needsLayout name change.
        (khtml::Selection::init): Handle m_expectedVisibleRect in initialization.
        (khtml::Selection::operator=): Handle m_expectedVisibleRect in assignment.
        (khtml::Selection::setNeedsLayout): m_needsCaretLayout -> m_needsLayout name change.
        (khtml::Selection::layout): Changed name from layoutCaret, since m_expectedVisibleRect
        is also calculated here.
        (khtml::Selection::caretRect): m_needsCaretLayout -> m_needsLayout name change.
        (khtml::Selection::expectedVisibleRect): New. Returns m_expectedVisibleRect, doing a
        layout if needed.
        (khtml::Selection::needsCaretRepaint): m_needsCaretLayout -> m_needsLayout name change.
        (khtml::Selection::paintCaret): Ditto.
        (khtml::Selection::validate): Ditto.
        * khtml/editing/selection.h: Add m_expectedVisibleRect member variable and
        expectedVisibleRect accessor.
        * kwq/WebCoreBridge.h: Change name of ensureCaretVisible to ensureSelectionVisible, since
        this is not only about making the caret visible anymore. Now it can reveal the varying
        end of the selection when scrolling with arrow keys.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge alterCurrentSelection:direction:granularity:]): ensureCaretVisible to
        ensureSelectionVisible name change.
        (-[WebCoreBridge alterCurrentSelection:verticalDistance:]): Ditto
        (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:]): Ditto
        (-[WebCoreBridge insertNewline]): Ditto
        (-[WebCoreBridge insertText:selectInsertedText:]): Ditto
        (-[WebCoreBridge deleteKeyPressed]): Ditto
        (-[WebCoreBridge ensureSelectionVisible]): Ditto

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

18 years agoWebCore:
kocienda [Wed, 29 Sep 2004 14:16:36 +0000 (14:16 +0000)]
WebCore:

        Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3818296> REGRESSION (Mail): centerSelectionInVisibleArea does not work correctly

        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::centerSelectionInVisibleArea): New function. Handles both caret
        and range selections correctly.
        * kwq/KWQNSViewExtras.h: Add forceCentering boolean to some methods in this file.
        * kwq/KWQNSViewExtras.m: Ditto. This addition has been done since the AppKit
        method we use to do the centering, -[NSView scrollRectToVisible:],  does not alter
        the view if the rectangle passed to it is already in view. When forceCentering is
        true, extra math is done to make scrollRectToVisible center the rectangle we want.
        (-[NSView _KWQ_scrollFrameToVisible]): Pass NO for forceCentering in call through to
        _KWQ_scrollRectToVisible:forceCentering:
        (-[NSView _KWQ_scrollRectToVisible:forceCentering:]): Add forceCentering argument.
        (-[NSView _KWQ_scrollRectToVisible:inView:forceCentering:]): Ditto.
        (-[NSClipView _KWQ_scrollRectToVisible:inView:forceCentering:]): Ditto. Do extra
        math to implement the forceCentering effect.
        * kwq/KWQScrollView.h: Add forceCentering default argument to ensureRectVisibleCentered.
        * kwq/KWQScrollView.mm:
        (QScrollView::ensureRectVisibleCentered): Ditto.
        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge centerSelectionInVisibleArea]): New function. Call through to KWQKHTMLPart.

WebKit:

        Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3818296> REGRESSION (Mail): centerSelectionInVisibleArea does not work correctly

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView centerSelectionInVisibleArea:]): Now calls new centerSelectionInVisibleArea
        bridge function instead of ensureCaretVisible. Now handles caret selections and range
        selections correctly.

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

18 years ago Fixed: WebArchives begin with "<#document/>"
cblu [Wed, 29 Sep 2004 01:19:40 +0000 (01:19 +0000)]
Fixed: WebArchives begin with "<#document/>"

        Reviewed by hyatt.

        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::startMarkup): don't return markup if this is a document node, forgot this when factoring this method out from toHTML

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

18 years ago Removed range parameter from recursive_toHTML and friends since that code path is...
cblu [Wed, 29 Sep 2004 01:02:38 +0000 (01:02 +0000)]
Removed range parameter from recursive_toHTML and friends since that code path is no longer used.

        Reviewed by mjs.

        * khtml/xml/dom2_rangeimpl.cpp:
        (DOM::RangeImpl::toHTML):
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::recursive_toString):
        (NodeImpl::recursive_toHTML):
        * khtml/xml/dom_nodeimpl.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge markupStringFromNode:nodes:]):

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

18 years ago Added timing code so that Doug can time RTF conversion.
cblu [Wed, 29 Sep 2004 00:34:09 +0000 (00:34 +0000)]
Added timing code so that Doug can time RTF conversion.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]):
        (-[WebHTMLView _attributeStringFromDOMRange:]):

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

18 years ago Reviewed by Ken.
darin [Wed, 29 Sep 2004 00:17:10 +0000 (00:17 +0000)]
    Reviewed by Ken.

        - improve spell checking so it doesn't unmark and remark as you move the cursor with the arrow

        * khtml/editing/htmlediting.h: Remove obsolete markMisspellingsInSelection private function.
        * khtml/editing/htmlediting.cpp:
        (khtml::EditCommand::EditCommand): Blow away the selection when starting an edit command.
        (khtml::EditCommand::apply): Remove code to mark misspellings because that's now done as part
        of blowing away the selection.
        (khtml::EditCommand::unapply): Blow away the selection instead of marking mispellings.
        (khtml::EditCommand::reapply): Ditto.
        (khtml::ReplaceSelectionCommand::doApply): Removed incorrect code that does spell checking
        on inserted text; this doesn't match NSText behavior.
        (khtml::TypingCommand::markMisspellingsAfterTyping): Use markMisspellingsInAdjacentWords
        function for greater clarity on what this actually does.

        * khtml/khtml_part.h: Replaced setSelection's "unmarkOldSelection" boolean parameter with a
        "keepTypingStyle" boolean parameter. Removed notifySelectionChanged.
        * khtml/khtml_part.cpp:
        (KHTMLPart::setSelection): Replaced the "unmarkOldSelection" boolean with a new "keepTypingStyle"
        boolean. This is a step on the way to simplifying how this works. Moved the code from the
        notifySelectionChanged function here, since there was no clear line between the two functions.
        (KHTMLPart::clearSelection): Call setSelection rather that having special case code here for
        the case of an empty selection.
        (KHTMLPart::appliedEditing): Remove the explicit "false" for "unmarkOldSelection".
        (KHTMLPart::unappliedEditing): Ditto.
        (KHTMLPart::reappliedEditing): Ditto.

        * kwq/KWQKHTMLPart.h: Replaced markMisspellingsInSelection and updateSpellChecking with
        markMisspellings and markMisspellingsInAdjacentWords. Added parameters to respondToChangedSelection.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::markMisspellingsInAdjacentWords): Added.
        (KWQKHTMLPart::markMisspellings): New name for markMisspellingsInSelection. Simplified logic a
        bit and made it the caller's responsibility to expand the selection passed in to word boundaries.
        (KWQKHTMLPart::respondToChangedSelection): Added parameter that identifies the old selection,
        and changed logic so it won't mark mispellings in a word if the selection still starts in that word.

        - implemented empty-cells property in computed style

        * khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
        Added code for CSS_PROP_EMPTY_CELLS. I think the HTML converter in AppKit uses this.

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

18 years ago Fixed n-squared issues with appending to KWQValueListImpl. This fixes the hang in...
cblu [Tue, 28 Sep 2004 22:55:28 +0000 (22:55 +0000)]
Fixed n-squared issues with appending to KWQValueListImpl. This fixes the hang in 3794799.

        Fixed by Darin, reviewed by me.

        * khtml/xml/dom2_rangeimpl.cpp:
        (DOM::RangeImpl::toHTML): tweaks
        * kwq/KWQValueListImpl.mm:
        (KWQValueListImpl::KWQValueListPrivate::KWQValueListPrivate):
        (KWQValueListImpl::KWQValueListPrivate::copyList):
        (KWQValueListImpl::clear):
        (KWQValueListImpl::appendNode):
        (KWQValueListImpl::prependNode):
        (KWQValueListImpl::removeEqualNodes):
        (KWQValueListImpl::containsEqualNodes):
        (KWQValueListImpl::removeIterator):
        (KWQValueListImpl::lastNode):
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge nodesFromList:]): use iterator, not at()

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

18 years agoWebCore:
rjw [Tue, 28 Sep 2004 20:57:48 +0000 (20:57 +0000)]
WebCore:
More dashboard region changes for John.

        <rdar://problem/3817421> add getter for dashboard regions (debugging)

        <rdar://problem/3817417> NSScrollView need autoregions for dashboard

        <rdar://problem/3817388> should have short form form control regions

        <rdar://problem/3817477> visibility does not work with dashboard control regions

        Reviewed by Hyatt.

        * WebCore-combined.exp:
        * WebCore.exp:
        * khtml/css/cssparser.cpp:
        (skipCommaInDashboardRegion):
        (CSSParser::parseDashboardRegions):
        * khtml/khtmlview.cpp:
        (KHTMLView::updateDashboardRegions):
        * khtml/rendering/render_object.cpp:
        (RenderObject::setStyle):
        (RenderObject::addDashboardRegions):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::setDashboardRegions):
        * khtml/xml/dom_docimpl.h:
        (DOM::DocumentImpl::setDashboardRegionsDirty):
        (DOM::DocumentImpl::dashboardRegionsDirty):
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::paint):
        (KWQKHTMLPart::dashboardRegionsDictionary):
        (KWQKHTMLPart::dashboardRegionsChanged):
        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge dashboardRegions]):
        * kwq/WebDashboardRegion.h:
        * kwq/WebDashboardRegion.m:
        (-[WebDashboardRegion description]):

WebKit:
More dashboard region changes for John.

        <rdar://problem/3817421> add getter for dashboard regions (debugging)

        <rdar://problem/3817417> NSScrollView need autoregions for dashboard
Also KWQScrollBars

        Reviewed by Hyatt.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dashboardRegionsChanged:]):
        * WebView.subproj/WebView.m:
        (-[WebView _setInitiatedDrag:]):
        (-[WebView _addScrollerDashboardRegions:from:]):
        (-[WebView _addScrollerDashboardRegions:]):
        (-[WebView _dashboardRegions]):
        * WebView.subproj/WebViewPrivate.h:

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

18 years agoUpdated the output of the script type test for more clarity; updated the expected...
sullivan [Tue, 28 Sep 2004 20:07:21 +0000 (20:07 +0000)]
Updated the output of the script type test for more clarity; updated the expected results too.

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

18 years ago Reviewed by Chris.
sullivan [Tue, 28 Sep 2004 18:55:48 +0000 (18:55 +0000)]
    Reviewed by Chris.

        - fixed <rdar://problem/3818558> REGRESSION: "Installed Plug-ins" is blank
        because of <script type="application/x-javascript">

        * khtml/html/htmltokenizer.cpp:
        (khtml::HTMLTokenizer::parseTag):
        add "application/x-javascript" to the list of legal scripting types. Mozilla
        accepts this, but WinIE doesn't.

        * layout-tests/fast/tokenizer/004.html:
        updated layout test to test some application/xxxx types

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

18 years agoNew list results.
hyatt [Tue, 28 Sep 2004 18:33:11 +0000 (18:33 +0000)]
New list results.

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

18 years ago Reworked lists to work well with RTL text. Specifically the following bugs have...
hyatt [Tue, 28 Sep 2004 18:32:47 +0000 (18:32 +0000)]
Reworked lists to work well with RTL text.  Specifically the following bugs have been fixed:

(1) All bullets use the same offset constant now (a padding of 7 pixels).  Before, images used 5 and others used 7.
(2) Line height now works properly, so that list items with no content aren't squished (and missing the line descent).
(3) Punctuation now works correctly with inside and outside style ordered lists in RTL.
(4) RTL lists now properly apply padding and margin to the right side rather than the left.  This was done by adding
-khtml-margin-start and -khtml-padding-start properties that are just mapped to left/right based off the direction.

        Reviewed by darin

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * khtml/css/cssproperties.c:
        (hash_prop):
        (findProp):
        * khtml/css/cssproperties.h:
        * khtml/css/cssproperties.in:
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyDeclarations):
        (khtml::CSSStyleSelector::applyProperty):
        * khtml/css/html4.css:
        * khtml/rendering/bidi.cpp:
        (khtml::BidiIterator::direction):
        * khtml/rendering/render_list.cpp:
        (RenderListItem::getAbsoluteRepaintRect):
        (RenderListMarker::paint):
        (RenderListMarker::calcMinMaxWidth):
        (RenderListMarker::lineHeight):
        (RenderListMarker::baselinePosition):

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

18 years agoList layout test changes.
hyatt [Tue, 28 Sep 2004 18:29:34 +0000 (18:29 +0000)]
List layout test changes.

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

18 years ago Reviewed by Darin
kocienda [Tue, 28 Sep 2004 18:24:53 +0000 (18:24 +0000)]
    Reviewed by Darin

        Mark the VisiblePosition taking (Position &, EAffinity=DOWNSTREAM) explicit. Recently, when I added
        the EAffinity argument, I left this constructor implicit. Darin pointed out to me that this is
        undesirable since implicit use of the the constructor involved making the affinity choice, something
        which should be done explicitly.

        * khtml/editing/selection.cpp:
        (khtml::Selection::modifyExtendingRightForward): Make explicit use of constructor mentioned above.
        (khtml::Selection::modifyMovingRightForward): Ditto.
        (khtml::Selection::modifyExtendingLeftBackward): Ditto.
        (khtml::Selection::modifyMovingLeftBackward): Ditto.
        (khtml::Selection::modify): Ditto.
        (khtml::Selection::validate): Ditto.
        * khtml/editing/visible_position.h: Make constructor taking (Position &, EAffinity) explicit.
        * khtml/editing/visible_units.cpp: Ditto.
        (khtml::previousWordBoundary): Make explicit use of constructor mentioned above.
        (khtml::nextWordBoundary): Ditto.
        (khtml::previousLinePosition): Ditto.
        (khtml::nextLinePosition): Ditto.
        * kwq/KWQKHTMLPart.mm: Ditto.
        (KWQKHTMLPart::findString): Ditto.
        (KWQKHTMLPart::advanceToNextMisspelling): Ditto.
        (KWQKHTMLPart::markMisspellingsInSelection): Ditto.
        (KWQKHTMLPart::updateSpellChecking): Ditto.

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

18 years ago Reviewed by John.
darin [Tue, 28 Sep 2004 16:43:27 +0000 (16:43 +0000)]
    Reviewed by John.

        - fixed a storage leak discovered by code inspection

        * khtml/html/htmlparser.cpp: (KHTMLParser::~KHTMLParser): Call setCurrent(0) to deref
        the parser's current node in the rare case where it still has one.

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

18 years ago - fixed <rdar://problem/3814705> 8A266: Safari authentication dialog "remembe...
sullivan [Tue, 28 Sep 2004 01:08:17 +0000 (01:08 +0000)]
    - fixed <rdar://problem/3814705> 8A266: Safari authentication dialog "remember password" text should match Mail

        * Panels.subproj/English.lproj/WebAuthenticationPanel.nib:
        changed "Remember this password" to "Remember this password in my keychain";
        this will need to go through CCC for this week's build.

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

18 years ago*** empty log message ***
hyatt [Tue, 28 Sep 2004 01:01:05 +0000 (01:01 +0000)]
*** empty log message ***

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

18 years ago Don't allow nested headers when only inlines are in between them. Fixes a hang...
hyatt [Tue, 28 Sep 2004 00:58:45 +0000 (00:58 +0000)]
Don't allow nested headers when only inlines are in between them.  Fixes a hang related to pathological nesting
on magicmethodsonline.com.

        Reviewed by darin

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::parseToken):
        (KHTMLParser::processCloseTag):
        (KHTMLParser::isHeaderTag):
        (KHTMLParser::popNestedHeaderTag):
        * khtml/html/htmlparser.h:

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

18 years agoChangeLog
hyatt [Tue, 28 Sep 2004 00:57:52 +0000 (00:57 +0000)]
ChangeLog

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

18 years ago Fixed: <rdar://problem/3594754> change null event interval from 20 ms to 10 ms to...
cblu [Mon, 27 Sep 2004 23:17:58 +0000 (23:17 +0000)]
Fixed: <rdar://problem/3594754> change null event interval from 20 ms to 10 ms to match speed on Windows

        Reviewed by NOBODY (OOPS!).

        * Plugins.subproj/WebBaseNetscapePluginView.m:

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

18 years agoWebKit:
cblu [Mon, 27 Sep 2004 22:56:01 +0000 (22:56 +0000)]
WebKit:

Fixed previous reviewer line.

        * ChangeLog:

WebBrowser:

Fixed typo.

        * ChangeLog:

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

18 years ago Fixed: <rdar://problem/3502138> text files don't remember scroll position when going...
cblu [Mon, 27 Sep 2004 22:22:32 +0000 (22:22 +0000)]
Fixed: <rdar://problem/3502138> text files don't remember scroll position when going back or reloading

        Reviewed by .

        * WebView.subproj/WebTextView.m:
        (-[WebTextView layout]): implemented, call sizeToFit, without this scrollPoint: won't work

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

18 years agoWebKit:
sullivan [Mon, 27 Sep 2004 21:30:50 +0000 (21:30 +0000)]
WebKit:

        Reviewed by Ken.

        - WebKit part of fix for <rdar://problem/3734466> ER: Support standard editing keystrokes
        like Cmd-B while editing rich text

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _toggleBold]):
        new method, toggles font-weight from "bold" to "normal"
        (-[WebHTMLView _toggleItalic]):
        new method, toggles font-style from "italic" to "normal"
        (-[WebHTMLView _handleStyleKeyEquivalent:]):
        new method, if the new preference is set and we're in an editable state, check for standard
        key equivalents for toggling styles (just command-B and command-I for now).
        (-[WebHTMLView performKeyEquivalent:]):
        Moved in file, now calls _handleStyleKeyEquivalent:

        * WebView.subproj/WebPreferenceKeysPrivate.h:
        new preference key WebKitRespectStandardStyleKeyEquivalentsPreferenceKey
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences initialize]):
        initial value of WebKitRespectStandardStyleKeyEquivalentsPreferenceKey is NO (maybe we'll
        change our minds about this, but this is more guaranteed to be backward-compatible)
        (-[WebPreferences respectStandardStyleKeyEquivalents]):
        read WebKitRespectStandardStyleKeyEquivalentsPreferenceKey
        (-[WebPreferences setRespectStandardStyleKeyEquivalents:]):
        write WebKitRespectStandardStyleKeyEquivalentsPreferenceKey

        * WebView.subproj/WebPreferencesPrivate.h:
        declare getter and setter

        * English.lproj/StringsNotToBeLocalized.txt:
        updated for these and other recent changes

WebBrowser:

        Reviewed by Ken.

        - WebBrowser part of fix for <rdar://problem/3734466> ER: Support standard editing keystrokes
        like Cmd-B while editing rich text

        * AppController.m:
        (-[AppController applicationDidFinishLaunching:]):
        turn on the new WebKit preference that makes command-B and command-I toggle styles in
        editable text.

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

18 years agoWebKit:
cblu [Mon, 27 Sep 2004 18:41:19 +0000 (18:41 +0000)]
WebKit:

Fixed: <rdar://problem/3806649> assertion failure after control-click of webcam

        Reviewed by john.

        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultUIDelegate contextMenuItemsForElement:]): don't provide "Copy Image" if the image is not fully loaded

WebBrowser:

Fixed:  Fixed: <rdar://problem/3806649> assertion failure after control-click of webcam

        Reviewed by john.

        * ContextMenuHandler.m:
        (-[BrowserWebView webView:contextMenuItemsForElement:defaultMenuItems:]): don't provide "Save Image", "Copy Image" and "Add Image to iPhoto Library" if the image is not fully loaded. Provide "Download Image" instead.

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

18 years agoland fixed frame result.
hyatt [Mon, 27 Sep 2004 18:39:02 +0000 (18:39 +0000)]
land fixed frame result.

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

18 years agoLand fixed overflow result.
hyatt [Mon, 27 Sep 2004 18:35:57 +0000 (18:35 +0000)]
Land fixed overflow result.

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

18 years ago Reviewed by John.
kdecker [Mon, 27 Sep 2004 18:00:13 +0000 (18:00 +0000)]
    Reviewed by John.

        * khtml/css/css_base.cpp:
        (CSSSelector::selectorText): changed another ATTR_CLASS case to properly return class selector names.

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

18 years ago Fix style sharing so that it doesn't share when it shouldn't. Partially fixes 36715...
hyatt [Mon, 27 Sep 2004 17:52:18 +0000 (17:52 +0000)]
Fix style sharing so that it doesn't share when it shouldn't.  Partially fixes 3671516, table cells don't update
their color on macosx.apple.com.

Fix 3521639, iframe mispositioned on bidi page.  Make sure that when the width of a line exceeds the available line
width that the spillage out of the block is determined by the direction of the block and not by the text-align value.

Partial fix for 3762962, make sure the image cells with specified widths but percentage heights don't just get a minwidth
of 0.

Fix for 3533878, framesets that use percentages that add up to a value > 100% should normalize those percentages.

        Reviewed by john

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::locateCousinList):
        (khtml::CSSStyleSelector::elementsCanShareStyle):
        (khtml::CSSStyleSelector::locateSharedStyle):
        * khtml/css/cssstyleselector.h:
        * khtml/html/html_elementimpl.h:
        (DOM::HTMLNamedAttrMapImpl::hasMappedAttributes):
        (DOM::HTMLElementImpl::inlineStyleDecl):
        * khtml/rendering/bidi.cpp:
        (khtml::RenderBlock::computeHorizontalPositionsForLine):
        * khtml/rendering/render_frames.cpp:
        (RenderFrameSet::layout):
        * khtml/rendering/render_replaced.cpp:
        (RenderReplaced::calcMinMaxWidth):
        * khtml/xml/dom_elementimpl.h:
        (DOM::ElementImpl::inlineStyleDecl):
        (DOM::ElementImpl::hasMappedAttributes):

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

18 years ago Reviewed by John
kocienda [Mon, 27 Sep 2004 17:49:54 +0000 (17:49 +0000)]
    Reviewed by John

        Removed closestRenderedPosition function from Position class and gave this work
        to VisiblePosition instead. However, in order to make the transfer possible,
        VisiblePosition needed upstream and downstream affinities added to its
        constructors. Also moved the EAffinity enum into its own file. Also moved it
        to the khtml namespace.

        Updated several functions which used closestRenderedPosition to use VisiblePosition
        instead.

        Also deleted Position::equivalentShallowPosition. This was unused.

        * ForwardingHeaders/editing/text_affinity.h: Added.
        * ForwardingHeaders/editing/visible_position.h: Added.
        * WebCore.pbproj/project.pbxproj: Added new files.
        * khtml/editing/selection.cpp:
        (khtml::Selection::validate): Use VisiblePosition instead of closestRenderedPosition.
        * khtml/editing/selection.h:
        * khtml/editing/text_affinity.h: Added.
        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::VisiblePosition):
        (khtml::VisiblePosition::initUpstream): New helper for finding upstream visible position.
        (khtml::VisiblePosition::initDownstream): Was old init function that unconditionally did
        downstream checks for visible position. Renamed to describe this more clearly.
        * khtml/editing/visible_position.h:
        * khtml/editing/visible_units.cpp:
        (khtml::previousWordBoundary): Use VisiblePosition instead of closestRenderedPosition.
        (khtml::nextWordBoundary): Use VisiblePosition instead of closestRenderedPosition.
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::updateSelection): Use VisiblePosition instead of closestRenderedPosition.
        * khtml/xml/dom_position.cpp:
        (DOM::Position::closestRenderedPosition): Removed.
        * khtml/xml/dom_position.h: Removed two functions mentioned above.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::fontForSelection) Use VisiblePosition instead of closestRenderedPosition.:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge setSelectedDOMRange:affinity:]): Use VisiblePosition instead of closestRenderedPosition.
        * layout-tests/editing/deleting/delete-block-merge-contents-012-expected.txt: Updated expected results.
        * layout-tests/editing/deleting/delete-block-merge-contents-017-expected.txt: Ditto.
        * layout-tests/editing/deleting/delete-contiguous-ws-001-expected.txt: Ditto.
        * layout-tests/editing/selection/move-by-character-004-expected.txt: Ditto.

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

18 years ago Fixed: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil to dictio...
cblu [Mon, 27 Sep 2004 16:36:01 +0000 (16:36 +0000)]
Fixed: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil to dictionary in dragging code

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _setMouseDownEvent:]): new
        (-[WebHTMLView acceptsFirstMouse:]): call _setMouseDownEvent
        (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto
        (-[WebHTMLView mouseDown:]): ditto
        (-[WebHTMLView _delegateDragSourceActionMask]): removed temp fix, assert that the mouse event is not nil

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

18 years ago * WebKit.pbproj/project.pbxproj: Added WebDashboardRegion.h as a private...
darin [Mon, 27 Sep 2004 15:30:06 +0000 (15:30 +0000)]
    * WebKit.pbproj/project.pbxproj: Added WebDashboardRegion.h as a private header.

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

18 years ago Reviewed by Darin and Maciej
kocienda [Mon, 27 Sep 2004 14:44:26 +0000 (14:44 +0000)]
    Reviewed by Darin and Maciej

        Removed EditCommand smart pointer wrappers from htmlediting.cpp/.h, save for the one
        at the root of the hierarchy, and this one has been renamed EditCommandPtr. Renamed
        each of the XXXCommandImpl classes, removing the Impl suffix from each, and rolled
        these into the htmlediting.cpp/.h files. The htmlediting_impl.cpp/.h files have
        been emptied and are being removed.

        For the remainder of files, perform the mechanical changes necessary to make everything
        compile and run as before.

        * WebCore.pbproj/project.pbxproj
        * khtml/editing/htmlediting.cpp
        * khtml/editing/htmlediting.h
        * khtml/editing/htmlediting_impl.cpp: Removed.
        * khtml/editing/htmlediting_impl.h: Removed.
        * khtml/editing/jsediting.cpp
        * khtml/khtml_part.cpp
        (KHTMLPart::openURL)
        (KHTMLPart::lastEditCommand)
        (KHTMLPart::appliedEditing)
        (KHTMLPart::unappliedEditing)
        (KHTMLPart::reappliedEditing)
        (KHTMLPart::applyStyle):
        * khtml/khtml_part.h
        * khtml/khtmlpart_p.h
        * kwq/KWQEditCommand.h
        * kwq/KWQEditCommand.mm
        (-[KWQEditCommand initWithEditCommandImpl:])
        (+[KWQEditCommand commandWithEditCommandImpl:])
        (-[KWQEditCommand impl])
        * kwq/KWQKHTMLPart.h
        * kwq/KWQKHTMLPart.mm
        (KWQKHTMLPart::registerCommandForUndo)
        (KWQKHTMLPart::registerCommandForRedo)
        * kwq/WebCoreBridge.mm
        (-[WebCoreBridge undoEditing:])
        (-[WebCoreBridge redoEditing:])
        (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:])
        (-[WebCoreBridge moveSelectionToDragCaret:smartMove:])
        (-[WebCoreBridge deleteSelectionWithSmartDelete:])

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

18 years ago Reviewed by Maciej.
darin [Mon, 27 Sep 2004 04:59:46 +0000 (04:59 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3816170> image.width/height not available from Image objects (works in Firefox)

        * khtml/ecma/kjs_html.h: Added width and height.
        * khtml/ecma/kjs_html.cpp: (Image::getValueProperty): Added width and height.
        * khtml/ecma/kjs_html.lut.h: Regenerated.

        - unrelated change; changed ordering of use count manipulation just in case we decide some day to do
          something when the use count hits 0

        * khtml/rendering/render_image.cpp: (RenderImage::setPixmap): Increment use count on new object before
        decrementing use count on old object.

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

18 years agoNew layout tests for the bugs I just fixed.
darin [Mon, 27 Sep 2004 02:07:37 +0000 (02:07 +0000)]
New layout tests for the bugs I just fixed.

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

18 years ago * kjs/string_object.cpp: (StringProtoFuncImp::call): Remove strange use of...
darin [Mon, 27 Sep 2004 01:54:30 +0000 (01:54 +0000)]
    * kjs/string_object.cpp: (StringProtoFuncImp::call): Remove strange use of high() and
        low() to get Unicode value of character, and just use unicode().

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

18 years ago - refine charAt/charCodeAt fix slightly
darin [Mon, 27 Sep 2004 01:52:53 +0000 (01:52 +0000)]
    - refine charAt/charCodeAt fix slightly

        * kjs/string_object.cpp: (StringProtoFuncImp::call): Treat undefined the same was as an
        omitted parameter, as we do everywhere else, and as other browsers do here.

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

18 years ago Reviewed by Kevin.
darin [Mon, 27 Sep 2004 01:02:39 +0000 (01:02 +0000)]
    Reviewed by Kevin.

        - fixed <rdar://problem/3812771> document.implementation.hasFeature returns false for a lot of features we implement

        * khtml/xml/dom_docimpl.cpp: (DOMImplementationImpl::hasFeature): Added all the DOM features that we implemented
        as part of the HTML editing work.

        * khtml/dom/dom_node.cpp: (Node::isSupported): Changed this to call DOMImplementationImpl::hasFeature to share
        code. Later this might need to be different per-node, but at the moment that does not seem to be so.

        * khtml/ecma/kjs_dom.cpp:
        (DOMNodeProtoFunc::tryCall): Pass a null string if the parameter is omitted, undefined, or null. This is better than
        having a special case for the string "null" in the DOM implementation.
        (DOMDOMImplementationProtoFunc::tryCall): Ditto.

        - fixed <rdar://problem/3814605> REGRESSION: fast/table/039 layout test is failing due to extra trailing whitespace in innerText

        * khtml/editing/visible_text.cpp: (khtml::TextIterator::advance): Check for the case where we are at the end of
        iteration, and don't call exitNode in that case. This prevents us from getting some unwanted trailing \n characters.

        - fixed <rdar://problem/3813253> method cloneNode() does not clone dynamically-set style attributes correctly

        * khtml/html/html_elementimpl.h: Added cloneNode override.
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::cloneNode): Added. Copies m_inlineStyleDecl.
        (HTMLElementImpl::parseHTMLAttribute): Changed to use getInlineStyleDecl().
        (HTMLElementImpl::innerText): Changed to do the same thing with fewer lines of code.
        (HTMLElementImpl::outerText): Tweaked comment.

        - other cleanup

        * khtml/xml/dom_elementimpl.cpp:
        (ElementImpl::cloneNode): Removed an uneeded type cast.
        (XMLElementImpl::cloneNode): Ditto.

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

18 years ago Reviewed by Kevin.
darin [Mon, 27 Sep 2004 01:01:00 +0000 (01:01 +0000)]
    Reviewed by Kevin.

        - fixed <rdar://problem/3816097> REGRESSION: mailblocks, and presumably many other pages, failing because variable not found

        * kjs/internal.cpp: (InterpreterImp::evaluate): Process variable declarations before executing
        the program. We were doing this properly for functions, but not entire programs.

        - fixed <rdar://problem/3814706> REGRESSION: text fields in mailblocks wizards do not accept keystrokes due to use of charCodeAt()

        * kjs/string_object.cpp: (StringProtoFuncImp::call): Changed the implementation of charAt
        and charCodeAt to treat a missing parameter as an index of 0, rather than an invalid index.

        * tests/mozilla/expected.html: Update for two tests that now pass with these changes.

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

18 years ago Reviewed by Maciej.
kdecker [Sat, 25 Sep 2004 00:44:50 +0000 (00:44 +0000)]
    Reviewed by Maciej.

<rdar://problem/3799334> DIG: Safari does not properly return style names [DigCSS.htm]

        * khtml/css/css_base.cpp:
        (CSSSelector::selectorText): Properly returns Class Selector names.
Before we would get *[CLASS"foo"] instead of .foo

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

18 years ago Reviewed by John
kocienda [Fri, 24 Sep 2004 23:27:41 +0000 (23:27 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3814660> REGRESSION (8A200-8A259): Select All has no effect on livepage.apple.com

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::updateSelection): Move the selection start and end to rendered positions
        before passing off to the RenderCanvas for drawing.
        * layout-tests/editing/selection/select-all-004-expected.txt: Added.
        * layout-tests/editing/selection/select-all-004.html: Added.

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

18 years ago Reviewed by Maciej.
sullivan [Fri, 24 Sep 2004 23:23:26 +0000 (23:23 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3528339> Turn on full keyboard access shows
        invisible <input> elements

        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLGenericFormElementImpl::isFocusable):
        reject elements that have zero width or height, even if they aren't hidden

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

18 years ago - fixed deployment build
mjs [Fri, 24 Sep 2004 23:09:10 +0000 (23:09 +0000)]
- fixed deployment build

        Reviewed by Ken.

        * khtml/dom/dom_string.cpp: put implementation of ascii() in #ifdef !NDEBUG
to match prototype.

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

18 years agoFix layout test 37.
hyatt [Fri, 24 Sep 2004 22:38:08 +0000 (22:38 +0000)]
Fix layout test 37.

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

18 years ago Fix for 3800316, test 37 for tables is failing on the layout tests. Make sure we...
hyatt [Fri, 24 Sep 2004 22:14:45 +0000 (22:14 +0000)]
Fix for 3800316, test 37 for tables is failing on the layout tests.  Make sure we don't incorrectly match
non-HTML elements with HTML tag selectors in CSS.

        Reviewed by rjw

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::checkOneSelector):

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

18 years ago Fix for 3601920, CSS "tabs" not switching properly on zen garden design. Improve...
hyatt [Fri, 24 Sep 2004 22:09:52 +0000 (22:09 +0000)]
Fix for 3601920, CSS "tabs" not switching properly on zen garden design.  Improve the repainting to account
for layer changes of z-index that necessitate an invalidation.

        Reviewed by kocienda

        * khtml/rendering/render_object.cpp:
        (RenderObject::setStyle):
        * khtml/rendering/render_style.cpp:
        (RenderStyle::diff):
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::):

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

18 years agoWebCore:
cblu [Fri, 24 Sep 2004 21:44:02 +0000 (21:44 +0000)]
WebCore:

Made markup copying 5 times faster. Unfortunately, this still doesn't fix:
<rdar://problem/3794799> Tiger8A252: copying a bunch o' text is so slow it seems like a hang

        Reviewed by rjw.

        * khtml/dom/dom_string.h:
        * khtml/xml/dom2_rangeimpl.cpp:
        (DOM::RangeImpl::toHTML): serialize the range by iterating through the range
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::startMarkup): new, factored out from recursive_toString
        (NodeImpl::endMarkup): ditto
        (NodeImpl::recursive_toString): call factored out methods
        * khtml/xml/dom_nodeimpl.h:

WebKit:

        Reviewed by rjw.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _selectedArchive]): added timing code for copying markup

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

18 years agoversioning for TOT, Safari 2.0 (v166u)
vicki [Fri, 24 Sep 2004 21:42:38 +0000 (21:42 +0000)]
versioning for TOT, Safari 2.0 (v166u)

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

18 years agoSafari-165 stamp for everything except WebBrowser. In these projects, CFBundleShortV...
vicki [Fri, 24 Sep 2004 21:31:27 +0000 (21:31 +0000)]
Safari-165 stamp for everything except WebBrowser.  In these projects, CFBundleShortVersionString matches CFBundleVersion (165 for both).

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

18 years ago Temp fix for: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil...
cblu [Fri, 24 Sep 2004 20:34:13 +0000 (20:34 +0000)]
Temp fix for: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil to dictionary in dragging code

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _delegateDragSourceActionMask]): return none if the mouse down event is nil

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

18 years ago Reviewed by me
kocienda [Fri, 24 Sep 2004 18:12:09 +0000 (18:12 +0000)]
    Reviewed by me

        Hyatt made an improvement in the render tree which caused the results
        to get a little thinner.

        * layout-tests/editing/deleting/delete-block-merge-contents-001-expected.txt.
        * layout-tests/editing/deleting/delete-block-merge-contents-008-expected.txt.

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

18 years ago Reviewed by Hyatt
kocienda [Fri, 24 Sep 2004 17:51:35 +0000 (17:51 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3812939> REGRESSION: move-between-blocks-no-001 editing layout test fails in DeleteSelectionCommandImpl

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::removeChild): Hyatt said this regression was caused by a bad merge.
        Found by code inspection.

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

18 years ago Reviewed by John
kocienda [Fri, 24 Sep 2004 17:49:46 +0000 (17:49 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3813917> REGRESSION (125-163): The font panel will change the font of any web page

        We were doing a laughably bad job at preventing edits in documents that were not editable.
        This change fixes the specific case of the bug mentioned above, and makes an attempt to
        fix similar bugs by checking for whether the view is in editing mode before making edits.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _canEdit]): Renamed from _canType. Used in many more places in the code now.
        (-[WebHTMLView _isMoveDrag]): Change around code to make the meaning more clear. This one
        was actually performing a correct check before.
        (-[WebHTMLView keyDown:]): Renamed _canType to _canEdit.
        (-[WebHTMLView paste:]): Don't beep if can't paste. This matches AppKit. Any paste-related beeps
        will come from failure to handle key equivalent. Menu validation will kick in to dim menu.
        (-[WebHTMLView _applyStyleToSelection:]): Bail if !_canEdit.
        (-[WebHTMLView pasteAsPlainText:]): Ditto.
        (-[WebHTMLView _alignSelectionUsingCSSValue:]): Ditto.
        (-[WebHTMLView insertNewline:]): Ditto.
        (-[WebHTMLView insertParagraphSeparator:]): Ditto.
        (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto.
        (-[WebHTMLView _deleteWithDirection:granularity:killRing:]): Ditto.
        (-[WebHTMLView complete:]): Ditto.
        (-[WebHTMLView _changeSpellingToWord:]): Ditto. Some code rearranging to eliminate bridge local variable.
        (-[WebHTMLView ignoreSpelling:]): Ditto.
        (-[WebHTMLView yank:]): Bail if !_canEdit.
        (-[WebHTMLView yankAndSelect:]): Ditto.
        (-[WebHTMLView deleteToMark:]): Ditto.
        (-[WebHTMLView swapWithMark:]): Ditto.
        (-[WebHTMLView transpose:]): Ditto.
        (-[WebHTMLView _updateFontPanel]): Ditto. Some code rearranging to eliminate bridge local variable.
        (-[WebHTMLView setMarkedText:selectedRange:]): Bail if !_canEdit.
        (-[WebHTMLView _insertText:selectInsertedText:]): Ditto. Some code rearranging to eliminate bridge local variable.
        * WebView.subproj/WebHTMLViewPrivate.h: Renamed _canType to _canEdit.

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

18 years ago Reviewed by me
kocienda [Fri, 24 Sep 2004 16:37:08 +0000 (16:37 +0000)]
    Reviewed by me

        * WebCoreSupport.subproj/WebDashboardRegion.h: Check in file copied from WebCore.

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

18 years agoLayout tests for acceptable and unacceptable values of "language" and "type" attribut...
sullivan [Fri, 24 Sep 2004 15:35:20 +0000 (15:35 +0000)]
Layout tests for acceptable and unacceptable values of "language" and "type" attributes for <script> tags.

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

18 years ago Reviewed by Maciej.
sullivan [Fri, 24 Sep 2004 02:20:14 +0000 (02:20 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3551850> hang caused by interpreting bad javascript
        guarded by a deliberately bogus "language" attribute (www.riibe.com)

        * khtml/html/htmltokenizer.cpp:
        (khtml::HTMLTokenizer::parseTag):
        Check for language attribute of <script> tag in a way that matches WinIE.
        Previously we were far too permissive.

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

18 years ago Fix for 3685234 and 3548444, the x-offset for frame borders was off by 1 pixel,...
hyatt [Fri, 24 Sep 2004 00:27:44 +0000 (00:27 +0000)]
Fix for 3685234 and 3548444, the x-offset for frame borders was off by 1 pixel, causing mojibake to occur when
repainting happened.

        * khtml/rendering/render_canvas.cpp:
        (RenderCanvas::repaintViewRectangle):

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

18 years ago Fixed <rdar://problem/3813271> dashboard-region-circle and dashboard-region-rectangl...
rjw [Fri, 24 Sep 2004 00:17:57 +0000 (00:17 +0000)]
Fixed <rdar://problem/3813271> dashboard-region-circle and dashboard-region-rectangle should be collapsed into dashboard-region
Fixed <rdar://problem/3813289> dashboard regions need to correctly account for overflow/scrolling

        Reviewed by Chris.

        * khtml/css/css_valueimpl.cpp:
        (CSSPrimitiveValueImpl::cssText):
        * khtml/css/css_valueimpl.h:
        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        (skipCommaInDashboardRegion):
        (CSSParser::parseDashboardRegions):
        * khtml/khtmlview.cpp:
        (KHTMLView::layout):
        (KHTMLView::updateDashboardRegions):
        * khtml/khtmlview.h:
        * khtml/rendering/render_layer.cpp:
        (RenderLayer::scrollToOffset):
        * khtml/rendering/render_object.cpp:
        (RenderObject::addDashboardRegions):
        * khtml/rendering/render_object.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::dashboardRegionsChanged):
        * kwq/WebDashboardRegion.h:
        * kwq/WebDashboardRegion.m:
        (-[WebDashboardRegion initWithRect:clip:type:]):
        (-[WebDashboardRegion dashboardRegionClip]):
        (-[WebDashboardRegion description]):

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

18 years ago Reviewed by Richard
kocienda [Fri, 24 Sep 2004 00:05:57 +0000 (00:05 +0000)]
    Reviewed by Richard

        * khtml/xml/dom_position.cpp:
        (DOM::Position::inRenderedContent): Make the "empty block" check the same as the one
        use in visible position. This fixes a recent regression which broke up and down
        arrowing between blocks with an empty block in between.

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