WebKit-https.git
15 years agoSafari-187 stamp
vicki [Thu, 17 Feb 2005 23:59:13 +0000 (23:59 +0000)]
Safari-187 stamp

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

15 years agoI checked in when the tree was closed. Rolling out.
kocienda [Thu, 17 Feb 2005 23:31:18 +0000 (23:31 +0000)]
I checked in when the tree was closed. Rolling out.

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

15 years ago Reviewed by Hyatt
kocienda [Thu, 17 Feb 2005 23:27:43 +0000 (23:27 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/4003463> Mail.app HTML uses inline styling markup not understood by Entourage and Eudora

        * khtml/editing/htmlediting.cpp:
        (khtml::StyleChange::styleModeForParseMode): Helper to map a document parse mode to a use/don't use
        legacy-html-styles value.
        (khtml::StyleChange::checkForLegacyHTMLStyleChange): Add support for colors, font faces, and font sizes.
        (khtml::ApplyStyleCommand::applyTextDecorationStyle): Now call styleModeForParseMode to determine
        whether to use legacy html styles or not.
        (khtml::ApplyStyleCommand::addBlockStyleIfNeeded): Ditto.
        (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto.
        * khtml/editing/htmlediting.h: All the following support the new bits of data we need to store.
        (khtml::StyleChange::applyFontColor)
        (khtml::StyleChange::applyFontFace)
        (khtml::StyleChange::applyFontSize)
        (khtml::StyleChange::fontColor)
        (khtml::StyleChange::fontFace)
        (khtml::StyleChange::fontSize)

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

15 years ago - roll out this change, since it causes a 1.5% performance regression
vicki [Thu, 17 Feb 2005 23:04:38 +0000 (23:04 +0000)]
- roll out this change, since it causes a 1.5% performance regression

    2005-02-15  Richard Williamson   <rjw@apple.com>

        Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead

        Lie about Osaka-Mono.  Treat it as fixed pitch, even though,
        strictly speaking it isn't.  (Similar to what we do with
        Courier New.)

        Reviewed by David Harrison.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _computeWidthForSpace]):
        * WebCoreSupport.subproj/WebTextRendererFactory.h:
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[NSFont _web_isFakeFixedPitch]):
        (-[WebTextRendererFactory isFontFixedPitch:]):
        (-[WebTextRendererFactory fontWithFamily:traits:size:]):

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

15 years ago Fixed <rdar://problem/4008163> dynamic support for -apple-dashboard-region is flakey
rjw [Thu, 17 Feb 2005 21:24:17 +0000 (21:24 +0000)]
Fixed <rdar://problem/4008163> dynamic support for -apple-dashboard-region is flakey

Style operator== wasn't including regions.

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

15 years ago Reviewed by Chris.
adele [Thu, 17 Feb 2005 21:17:26 +0000 (21:17 +0000)]
    Reviewed by Chris.

        fix for <rdar://problem/4010028> 8A383: Safari v185 crash loading united.com multi city fare finder page.

        * khtml/dom/dom_string.cpp: (DOM::DOMString::operator += ): prevent nil dereference when DOMString being added is nil

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

15 years agoFix for rdar://3963151 "Mail only pasted ~950 of 1407 text lines into my message...
jens [Thu, 17 Feb 2005 19:53:50 +0000 (19:53 +0000)]
Fix for rdar://3963151 "Mail only pasted ~950 of 1407 text lines into my message!" Force tokenizer to run synchronously while parsing document fragments, so it doesnt stop halfway through and cause truncated content.

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

15 years ago Reviewed by Ken.
sullivan [Thu, 17 Feb 2005 17:48:06 +0000 (17:48 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3997185> The Web view on .Mac Prefs caused System Prefs
        to lockup (resolved by re-boot only)

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge nextKeyViewOutsideWebFrameViews]):
        Don't allow recursion here; assert on debug build, return nil on deployment. I
        couldn't get my machine into a state to repro this problem (and neither could the
        originator), but it's obvious from the stack crawl that this method was recursing
        when it shouldn't have.

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

15 years ago Reviewed by Hyatt
kocienda [Thu, 17 Feb 2005 17:35:05 +0000 (17:35 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3982183> Mail's HTML paragraphs appear with unintended margins in Entourage and Eudora

        * khtml/editing/htmlediting.cpp:
        (khtml::createDefaultParagraphElement): Change element we make from <p> to <div>.
        This fixes the problem, as these other mailers show <div> elements without margins.

        Some test files needed to change to preserve the ability to "eyeball" the results.
        Many others changed just because their <p> elements changed to <div> elements.

        * layout-tests/editing/deleting/delete-3928305-fix-expected.txt
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt
        * layout-tests/editing/inserting/insert-div-013-expected.txt
        * layout-tests/editing/inserting/insert-div-013.html
        * layout-tests/editing/inserting/insert-div-014-expected.txt
        * layout-tests/editing/inserting/insert-div-014.html
        * layout-tests/editing/inserting/insert-div-018-expected.txt
        * layout-tests/editing/inserting/insert-div-018.html
        * layout-tests/editing/inserting/insert-div-019-expected.txt
        * layout-tests/editing/inserting/insert-div-019.html
        * layout-tests/editing/inserting/insert-div-020-expected.txt
        * layout-tests/editing/inserting/insert-div-020.html
        * layout-tests/editing/inserting/insert-div-021-expected.txt
        * layout-tests/editing/inserting/insert-div-021.html
        * layout-tests/editing/style/remove-underline-across-paragraph-expected.txt
        * layout-tests/editing/style/remove-underline-across-paragraph-in-bold-expected.txt
        * layout-tests/editing/style/remove-underline-after-paragraph-expected.txt
        * layout-tests/editing/style/remove-underline-after-paragraph-in-bold-expected.txt

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

15 years ago Reviewed by Hyatt
kocienda [Thu, 17 Feb 2005 17:28:00 +0000 (17:28 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3996737> REGRESSION (Mail): Copy/paste in Mail inserts returns

        The root cause of the problem is that a couple of pieces of code in AppKit and Mail
        insert newlines into markup as it is generated, and the paste code in WebCore was
        not smart about nodes that do not render (as is the case with these added newlines).
        So, the solution is to remove these unrendered nodes in the paste code in a pre-pass.
        Fortunately, my recent addition of such a pass to the paste code to handle styles
        gave me a convenient place to put this new logic.

        * khtml/editing/htmlediting.cpp:
        (khtml::ReplacementFragment::ReplacementFragment): Use new name for function below.
        (khtml::ReplacementFragment::computeStylesAndRemoveUnrendered): Name change from computeStylesForNodes().
        Now does the additional work of removing unrendered nodes, as mentioned above.
        (khtml::isNodeRendered): New helper function.
        * khtml/editing/htmlediting.h: Updated as necessary.

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

15 years agoForgot to paste in radar URL to show which bug I fixed
kocienda [Thu, 17 Feb 2005 17:23:29 +0000 (17:23 +0000)]
Forgot to paste in radar URL to show which bug I fixed

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

15 years ago Reviewed by Hyatt
kocienda [Thu, 17 Feb 2005 17:21:58 +0000 (17:21 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        The styling code did not move to the next node when the starting position was
        at the last offset of a node. Instead, it styled it. Clearly wrong. Solution
        is to borrow a check from the delete algorithm. Though I call caretMaxOffset(),
        which I consider deprecated, it is still the simplest and most strightforward
        way to ask the right question for this kind of problem.

        * khtml/editing/htmlediting.cpp:
        (khtml::ApplyStyleCommand::applyInlineStyle): Fixed, as described above.
        * layout-tests/editing/style/style-3998892-fix-expected.txt: Added.
        * layout-tests/editing/style/style-3998892-fix.html: Added.

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

15 years ago Fixed: <rdar://problem/3954842> Forward/reply to an HTML email can result in nothing...
cblu [Thu, 17 Feb 2005 01:39:20 +0000 (01:39 +0000)]
Fixed: <rdar://problem/3954842> Forward/reply to an HTML email can result in nothing (in cases with <link> tags for CSS)

        Reviewed by john.

        * khtml/xml/dom_nodeimpl.cpp:
        (NodeBaseImpl::addChild): don't call insertedIntoDocument on the added child if "this" itself is not in the document.

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

15 years ago Written by Darin, reviewed by Maciej and me
sullivan [Thu, 17 Feb 2005 01:34:06 +0000 (01:34 +0000)]
    Written by Darin, reviewed by Maciej and me

        - change required to make previous checkin work with English language RSS pages

        * kwq/KWQKURL.h:
        new private method isHierarchical
        * kwq/KWQKURL.mm:
        (KURL::KURL):
        add hierarchical base URL check when determining whether the URL is absolute
        (KURL::isHierarchical):
        new method, returns true if this is a valid URL with a slash just past the scheme's trailing colon

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

15 years ago- added extensions to toLocalString, toLocaleTimeString, toLocaleDateString to give...
kali [Thu, 17 Feb 2005 00:55:29 +0000 (00:55 +0000)]
- added extensions to toLocalString, toLocaleTimeString, toLocaleDateString to give more control over date formating (4007277)

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

15 years ago Written by Darin, reviewed by me.
sullivan [Thu, 17 Feb 2005 00:15:03 +0000 (00:15 +0000)]
    Written by Darin, reviewed by me.

        - WebKit part of fix for <rdar://problem/4007384>
        FILTER: Bookmark of RSS with Japanese search word & multiple RSS pages loses filter

        * DOM.subproj/DOMPrivate.h:
        updated this file, which is a copy of the WebCore version

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

15 years ago Written by Darin, reviewed by me.
sullivan [Thu, 17 Feb 2005 00:14:30 +0000 (00:14 +0000)]
    Written by Darin, reviewed by me.

        - WebCore part of fix for <rdar://problem/4007384>
        FILTER: Bookmark of RSS with Japanese search word & multiple RSS pages loses filter

        * kwq/DOM.mm:
        (-[DOMElement _getURLAttribute:]):
        new SPI method, uses parseURL and completeURL to get valid URL from attribute value

        * kwq/DOMPrivate.h:
        declare new SPI method

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

15 years ago Fixed <rdar://problem/3966973> Tiger 8A357: Binary Compatiblity: frequent Webstracto...
rjw [Wed, 16 Feb 2005 21:20:53 +0000 (21:20 +0000)]
Fixed <rdar://problem/3966973> Tiger 8A357: Binary Compatiblity: frequent Webstractor.app crashes [WebImageData _nextFrame]

Webstractor.app was playing tricks to create thumbnails of
pages.  This caused the 'focusView' to be incorrect during
animated GIF frame rendering.

        Reviewed by Chris.

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):

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

15 years ago Reviewed by me, code change by Darin.
vicki [Wed, 16 Feb 2005 19:55:51 +0000 (19:55 +0000)]
    Reviewed by me, code change by Darin.

        - fixed the build on Panther

        * WebView.subproj/WebFormDataStream.m: (webSetHTTPBody):
        Added a Panther-specific code path that just loads all the data into one big
        NSData object. This means that bug 3686434 won't be fixed on SUPanWheat; we'll
        still load the file into memory before sending it to the server on Panther.

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

15 years ago Fixed <rdar://problem/3998368> Tiger8A376: WebTextRenderer assertion failure in...
rjw [Wed, 16 Feb 2005 00:31:12 +0000 (00:31 +0000)]
Fixed <rdar://problem/3998368> Tiger8A376: WebTextRenderer assertion failure in Safari while browsing news.bbc.co.uk

Removed use of FATAL_ALWAYS from getUncachedWidth().  It's unclear
why we would trigger the FATAL_ALWAYS.  In the past we've seen
the message triggered because of corrupt fonts.  Anyway, in this
particular case, we will now return 0 for the character width,
rather than exiting.

        Reviewed by David Harrison.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (getUncachedWidth):

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

15 years ago Reviewed by Darin.
mjs [Tue, 15 Feb 2005 23:48:00 +0000 (23:48 +0000)]
    Reviewed by Darin.

<rdar://problem/3942428> reproducible crash loading cbs.sportsline.com

This change reverts the fix for <rdar://problem/3805311>, and
re-fixes it in a different (better) way. Instead of preventing
programmatic open from setting the parsing flag, instead make sure
that programmatic close resets it.

        * khtml/khtml_part.cpp:
        (KHTMLPart::openURL):
        (KHTMLPart::didExplicitOpen):
        (KHTMLPart::closeURL):
        (KHTMLPart::begin):
        (KHTMLPart::end):
        (KHTMLPart::endIfNotLoading):
        (KHTMLPart::slotFinishedParsing):
        (KHTMLPart::checkEmitLoadEvent):
        * khtml/khtml_part.h:
        * khtml/khtmlpart_p.h:
        (KHTMLPartPrivate::KHTMLPartPrivate):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::open):
        (DocumentImpl::implicitOpen):
        (DocumentImpl::close):
        (DocumentImpl::implicitClose):
        * khtml/xml/dom_docimpl.h:

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

15 years ago Reviewed by Maciej.
harrison [Tue, 15 Feb 2005 23:41:53 +0000 (23:41 +0000)]
    Reviewed by Maciej.

        <rdar://problem/3933665> smart delete seems to delete too much after expanding selection with arrow keys

        Fixed by updating the selection granularity.  Only byWord granularity enables smart delete, but in this
        case the granularity changed from byWord to byCharacter.

        * khtml/khtml_part.cpp:
        (KHTMLPart::setSelectionGranularity):
        * khtml/khtml_part.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge rangeByExpandingSelectionWithGranularity:]):
        (-[WebCoreBridge rangeByAlteringCurrentSelection:direction:granularity:]):
        (-[WebCoreBridge alterCurrentSelection:direction:granularity:]):

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

15 years ago Reviewed by Darin.
harrison [Tue, 15 Feb 2005 23:31:40 +0000 (23:31 +0000)]
    Reviewed by Darin.

        (continued) <rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

        This was supposed have been committed yesterday with the other part of the fix, but was not.

        * khtml/editing/visible_units.cpp:
        (khtml::endOfWord):

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

15 years ago Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font...
rjw [Tue, 15 Feb 2005 22:53:42 +0000 (22:53 +0000)]
Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead

Lie about Osaka-Mono.  Treat it as fixed pitch, even though,
strictly speaking it isn't.  (Similar to what we do with
Courier New.)

        Reviewed by David Harrison.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _computeWidthForSpace]):
        * WebCoreSupport.subproj/WebTextRendererFactory.h:
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[NSFont _web_isFakeFixedPitch]):
        (-[WebTextRendererFactory isFontFixedPitch:]):
        (-[WebTextRendererFactory fontWithFamily:traits:size:]):

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

15 years ago Reviewed by John
kocienda [Tue, 15 Feb 2005 17:01:57 +0000 (17:01 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3951178> REGRESSION (Mail): blank line lost after pasting as quotation

        Problem was that the blank line after the selection was getting deleted incorrectly since the
        paste code thought this was an unneeded placeholder rather than a placeholder outside of the
        selection.

        * khtml/editing/htmlediting.cpp:
        (khtml::CompositeEditCommand::removeBlockPlaceholderIfNeeded): Now calls findBlockPlaceholder.
        (khtml::CompositeEditCommand::findBlockPlaceholder): Moved finding code formerly in
        removeBlockPlaceholderIfNeeded to this new helper.
        (khtml::ReplaceSelectionCommand::doApply): Do not delete placeholder up front. Call
        findBlockPlaceholder, and delete it later if needed in the already-existing cleanup step.
        * khtml/editing/htmlediting.h: Add new function.

        New layout test.

        * layout-tests/editing/pasteboard/paste-text-017-expected.txt: Added.
        * layout-tests/editing/pasteboard/paste-text-017.html: Added.

        Result changed for the better.

        * layout-tests/editing/pasteboard/paste-text-011-expected.txt

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

15 years ago Reviewed by Darin.
harrison [Tue, 15 Feb 2005 01:52:35 +0000 (01:52 +0000)]
    Reviewed by Darin.

        <rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

        * khtml/editing/visible_text.cpp:
        (khtml::SimplifiedBackwardsTextIterator::advance):
        Add BR in for <rdar://problem/3917929> fix only if leaving a visible text node.

        * khtml/editing/visible_units.cpp:
        (khtml::endOfWord):
        Do not move left over a paragraph boundary.

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

15 years ago Reviewed by John.
darin [Mon, 14 Feb 2005 21:09:29 +0000 (21:09 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)

        * khtml/html/html_formimpl.cpp:
        (DOM::FormDataList::begin): Updated to use a list of FormDataListItem instead of QCString.
        (DOM::FormDataList::end): Ditto.
        (DOM::HTMLFormElementImpl::formData): Same here, and also use appendFile rather than appendData
        when we encounter a path name rather than data.
        (DOM::HTMLInputElementImpl::appendFormData): Use appendFile here rather than reading the file
        in; the reading now happens inside WebKit.
        (DOM::FormDataList::appendString): Updated for FormDataListItem.
        (DOM::FormDataList::appendFile): Added.

        * ForwardingHeaders/kfileitem.h: Emptied out the file; no longer includes KWQKFileItem.h.
        * ForwardingHeaders/netaccess.h: Emptied out the file; no longer includes KWQKIONetAccess.h.
        * kwq/KWQKFileItem.h: Removed.
        * kwq/KWQKFileItem.mm: Removed.
        * kwq/KWQKIONetAccess.h: Removed.
        * kwq/KWQKIONetAccess.mm: Removed.
        * WebCore.pbproj/project.pbxproj: Removed the 4 files above.

        - small unrelated fix (not reviewed by John)

        * khtml/ecma/kjs_window.cpp: (Window::isSafeScript): Put some logging code outside if statements so it works all the time.

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

15 years ago Reviewed by John.
darin [Mon, 14 Feb 2005 20:06:55 +0000 (20:06 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)

        * WebView.subproj/WebFormDataStream.h: Added webSetHTTPBody, which creates and connects an appropriate
        stream to an NSMutableURLRequest.
        * WebView.subproj/WebFormDataStream.m: Added implementation here.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
        Use webSetHTTPBody.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]):
        Use webSetHTTPBody.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _loadItem:withLoadType:]): Use webSetHTTPBody.
        (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.

        * English.lproj/StringsNotToBeLocalized.txt: Updated for this change and other recent changes.

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

15 years ago Reviewed by Darin.
harrison [Mon, 14 Feb 2005 18:19:18 +0000 (18:19 +0000)]
    Reviewed by Darin.

        <rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

        Fixed nextLinePosition to calculate affinity rather than take it as a parameter.  Propagated the parameter change out to related methods.

        * khtml/editing/htmlediting.cpp:
        (khtml::DeleteSelectionCommand::initializePositionData):
        (khtml::InsertLineBreakCommand::doApply):
        (khtml::InsertParagraphSeparatorCommand::doApply):
        (khtml::InsertTextCommand::input):
        (khtml::ReplaceSelectionCommand::doApply):
        (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes):
        * khtml/editing/selection.cpp:
        (khtml::Selection::modifyExtendingRightForward):
        (khtml::Selection::modifyMovingRightForward):
        (khtml::Selection::modifyExtendingLeftBackward):
        (khtml::Selection::modifyMovingLeftBackward):
        (khtml::Selection::modify):
        (khtml::Selection::validate):
        * khtml/editing/visible_position.cpp:
        (khtml::visiblePositionsOnDifferentLines):
        * khtml/editing/visible_units.cpp:
        (khtml::rootBoxForLine):
        (khtml::startOfLine):
        (khtml::endOfLine):
        (khtml::inSameLine):
        (khtml::isStartOfLine):
        (khtml::isEndOfLine):
        (khtml::previousLinePosition):
        (khtml::nextLinePosition):
        (khtml::previousSentencePosition):
        (khtml::nextSentencePosition):
        (khtml::previousParagraphPosition):
        (khtml::nextParagraphPosition):
        * khtml/editing/visible_units.h:
        * khtml/khtml_events.cpp:
        (khtml::MouseEvent::offset):
        * khtml/khtml_part.cpp:
        (KHTMLPart::isPointInsideSelection):
        (KHTMLPart::selectClosestWordFromMouseEvent):
        (KHTMLPart::handleMousePressEventTripleClick):
        (KHTMLPart::handleMousePressEventSingleClick):
        (KHTMLPart::handleMouseMoveEventSelection):
        (KHTMLPart::khtmlMouseReleaseEvent):
        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::positionForCoordinates):
        * khtml/rendering/render_block.h:
        * khtml/rendering/render_br.cpp:
        (RenderBR::positionForCoordinates):
        * khtml/rendering/render_br.h:
        * khtml/rendering/render_container.cpp:
        (RenderContainer::positionForCoordinates):
        * khtml/rendering/render_container.h:
        * khtml/rendering/render_inline.cpp:
        (RenderInline::positionForCoordinates):
        * khtml/rendering/render_inline.h:
        * khtml/rendering/render_object.cpp:
        (RenderObject::caretRect):
        (RenderObject::positionForCoordinates):
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_replaced.cpp:
        (RenderReplaced::positionForCoordinates):
        * khtml/rendering/render_replaced.h:
        * khtml/rendering/render_text.cpp:
        (RenderText::positionForCoordinates):
        * khtml/rendering/render_text.h:
        * khtml/xml/dom_position.cpp:
        (DOM::Position::previousCharacterPosition):
        (DOM::Position::nextCharacterPosition):
        (DOM::Position::leadingWhitespacePosition):
        (DOM::Position::trailingWhitespacePosition):
        * khtml/xml/dom_position.h:
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject value]):
        (-[KWQAccObject accessibilityAttributeValue:]):
        (-[KWQAccObject doAXLineForTextMarker:]):
        (-[KWQAccObject doAXTextMarkerRangeForLine:]):
        (-[KWQAccObject doAXTextMarkerForPosition:]):
        (-[KWQAccObject doAXLeftLineTextMarkerRangeForTextMarker:]):
        (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]):
        (-[KWQAccObject doAXNextLineEndTextMarkerForTextMarker:]):
        (-[KWQAccObject doAXPreviousLineStartTextMarkerForTextMarker:]):
        * kwq/KWQKHTMLPart.mm:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge _visiblePositionForPoint:]):

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

15 years ago Reviewed by Ken and John.
mjs [Sun, 13 Feb 2005 04:08:13 +0000 (04:08 +0000)]
    Reviewed by Ken and John.

Re-fixed a specific case of the following:

<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration

Oddly, Cmd-B, Cmd-U, type some text, return, Cmd-U, Cmd-B, type
some text, worked fine. But hitting the second Cmd-B before the
second Cmd-U still failed to remove underlining. The reason for
this is that our code to compute the style of the current position
did not work when you had a typing style and were positioned right
at a <br> element. For various reasons, this did not show up for
bold and italic, since those are handled through the font manager.

The following change fixes this - for elements that can't have
children, we add the dummy span after the element of interest,
rather than as a child of it.

        * khtml/khtml_part.cpp:
        (KHTMLPart::selectionComputedStyle):

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

15 years ago Fixed <rdar://problem/4002505> 8A378: Endlessly animating gif's on http://www.entropy.ch
rjw [Sat, 12 Feb 2005 01:51:47 +0000 (01:51 +0000)]
Fixed <rdar://problem/4002505> 8A378: Endlessly animating gif's on entropy.ch

If animated images had no loop count property we were incorrectly
looping forver.  Note, that in the course of fixing this bug
I found that ImageIO is incorrectly NOT reporting the loop count
for a whole class of animated GIFs.

        Reviewed by Ken Kocienda.

        * WebCoreSupport.subproj/WebImageData.m:
        (-[WebImageData _repetitionCount]):

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

15 years ago Reviewed by Darin.
harrison [Sat, 12 Feb 2005 01:03:34 +0000 (01:03 +0000)]
    Reviewed by Darin.

        <rdar://problem/3978980> Double Clicking on a line in Mail selected the entire body

        * khtml/editing/visible_units.cpp:
        (khtml::startOfWord):
        (khtml::endOfWord):
        Pay attention to being at the end of a paragraph.

        (khtml::previousLinePosition):
        (khtml::nextLinePosition):
        (khtml::endOfParagraph):
        Use DOWNSTREAM per recent affinity changes.

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

15 years agoWebCore:
rjw [Sat, 12 Feb 2005 00:58:13 +0000 (00:58 +0000)]
WebCore:
Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls

Re-factored how 'native' wrappers for JS objects are created.  The interpreter now
creates these wrappers.  The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.

        * WebCore.pbproj/project.pbxproj:
        * khtml/ecma/kjs_binding.cpp:
        (ScriptInterpreter::createLanguageInstanceForValue):
        * khtml/ecma/kjs_binding.h:
        * kwq/DOMUtility.mm: Added.
        (KJS::ScriptInterpreter::createObjcInstanceForValue):
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::getAppletInstanceForView):
        (getInstanceForView):
        (KWQKHTMLPart::getEmbedInstanceForView):
        (KWQKHTMLPart::getObjectInstanceForView):

JavaScriptCore:
Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls

Re-factored how 'native' wrappers for JS objects are created.  The interpreter now
creates these wrappers.  The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.

        Reviewed by Ken.

        * bindings/c/c_utility.cpp:
        (convertValueToNPVariant):
        * bindings/jni/jni_instance.cpp:
        (JavaInstance::invokeMethod):
        * bindings/jni/jni_runtime.cpp:
        (JavaField::valueFromInstance):
        (JavaArray::valueAt):
        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject _setExecutionContext:KJS::Bindings::]):
        (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
        * bindings/objc/WebScriptObjectPrivate.h:
        * bindings/objc/objc_utility.h:
        * bindings/objc/objc_utility.mm:
        (KJS::Bindings::convertObjcValueToValue):
        (KJS::Bindings::createObjcInstanceForValue):
        * bindings/runtime.cpp:
        (Instance::createBindingForLanguageInstance):
        (Instance::createRuntimeObject):
        (Instance::createLanguageInstanceForValue):
        * bindings/runtime.h:
        * kjs/interpreter.cpp:
        (Interpreter::createLanguageInstanceForValue):
        * kjs/interpreter.h:

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

15 years ago Fixed: <rdar://problem/3937352> Quote level not maintained when copied and pasted...
cblu [Fri, 11 Feb 2005 23:50:09 +0000 (23:50 +0000)]
Fixed: <rdar://problem/3937352> Quote level not maintained when copied and pasted within a Mail message

        Reviewed by harrison.

        * khtml/editing/markup.cpp:
        (khtml::isMailBlockquote): new
        (khtml::createMarkup): retain the Mail quote level by including all ancestor mail block quotes
        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::positionForCoordinates): default to downstream for the affinity since the affinity is only upstream when the cursor is clicked to the right of a wrapped line
        * khtml/rendering/render_text.cpp:
        (RenderText::positionForCoordinates): ditto

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

15 years ago Reviewed by Darin.
adele [Fri, 11 Feb 2005 23:22:33 +0000 (23:22 +0000)]
    Reviewed by Darin.

        fix for <rdar://problem/4004004> no need to add body element for xml documents

        In the fix for <rdar://problem/3758785> we decided to add a body element when closing a document
        to ensure that the onload handler would fire.  This is unnecessary for xml documents,
        so now we also check to see if we're dealing with an html document before adding the body element.

        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):

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

15 years ago Reviewed by Darin.
adele [Fri, 11 Feb 2005 22:59:07 +0000 (22:59 +0000)]
    Reviewed by Darin.

        * layout-tests/apple-only/base/www.excite.com/index-expected.txt: updates tests because of custom tag change.
        * layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
        * layout-tests/apple-only/base/www.time.com/index-expected.txt:
        * layout-tests/apple-only/base/www.travelocity.com/index-expected.txt:
        * layout-tests/apple-only/base/www.zdnet.com/index-expected.txt:
        * layout-tests/fast/overflow/003-expected.txt:

        * layout-tests/fast/js/window-object-cross-frame-calls-expected.txt: updated test because of added Body (see rdar://problem/3758785)

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

15 years agoversioning for TOT, Safari 2.0 (186+)
vicki [Fri, 11 Feb 2005 22:47:07 +0000 (22:47 +0000)]
versioning for TOT, Safari 2.0 (186+)

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

15 years agoSafari-186 stamp
vicki [Fri, 11 Feb 2005 22:22:38 +0000 (22:22 +0000)]
Safari-186 stamp

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

15 years ago Reviewed by Darin.
vicki [Fri, 11 Feb 2005 19:59:10 +0000 (19:59 +0000)]
    Reviewed by Darin.

- fix deployment build on Panther

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView changeBaseWritingDirection:]): ifdef out NSWritingDirectionNatural
        (-[WebHTMLView toggleBaseWritingDirection:]): fix a spacing issue

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

15 years ago Reviewed by John.
darin [Fri, 11 Feb 2005 17:05:32 +0000 (17:05 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3915449> paths are relative to the old src URL after document.open, which is supposed to clear the document, including the URL

        * khtml/xml/dom_docimpl.h: Added a new openInternal function for use by KHTMLPart.
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::open): Changed to do everything we did before, but also clear the URL and set the
        base URL based on the enclosing document. This is the basic JavaScript/DOM operation of opening a
        document, which is supposed to clear the document, including the URL. In the long run we might want
        to do even more document "resetting and clearing" in here, but this URL clearing is what's needed
        now to fix the most important problem.
        (DocumentImpl::openInternal): Moved the old open code in here, except for the "parsing" check, which
        is unnecessary and inappropriate in the one place we call this.

        * khtml/khtml_part.cpp: (KHTMLPart::begin): Call openInternal instead of open.

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

15 years ago Reviewed by Richard.
harrison [Fri, 11 Feb 2005 01:38:31 +0000 (01:38 +0000)]
    Reviewed by Richard.

        <rdar://problem/3991652> REGRESSION (Mail): Deleting entire line in reply deletes extra blank line and moves insertion point

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:]):
        (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
        (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
        (-[WebHTMLView selectToMark:]):
        (-[WebHTMLView swapWithMark:]):
        (-[WebHTMLView transpose:]):
        (-[WebHTMLView _selectMarkedText]):
        (-[WebHTMLView _selectRangeInMarkedText:]):
        Adopt new default affinity of NSSelectionAffinityDownstream as of <rdar://problem/3937447>.

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

15 years ago Reviewed by Hyatt
kocienda [Fri, 11 Feb 2005 00:35:54 +0000 (00:35 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3992092> 8A374: Mail crash while pasting - RemoveNodeCommand

        * khtml/editing/htmlediting.cpp:
        (khtml::ReplaceSelectionCommand::doApply): Code tried to remove a node that was no longer in
        the document. We try to do a good job of detecting all these cases, and generally do. This
        one was missed. Fixed.

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

15 years ago Reviewed by Harrison.
darin [Thu, 10 Feb 2005 23:50:51 +0000 (23:50 +0000)]
    Reviewed by Harrison.

        - fixed <rdar://problem/4002084> Setting ResourceLoadDelegate to nil can cause a crash

        * WebView.subproj/WebView.m: (-[WebView _cacheResourceLoadDelegateImplementations]):
        Set booleans to either YES or NO, rather than setting them only in the YES case.

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

15 years ago Reviewed by Harrison.
darin [Thu, 10 Feb 2005 23:48:08 +0000 (23:48 +0000)]
    Reviewed by Harrison.

        - fixed <rdar://problem/3991225> Format->Style->Underline menu item does not get checked when selected text is underlined

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView validateUserInterfaceItem:]): Added tons of additional cases in here for all the
        "action" style methods in this class that don't always want to be valid. For the ones where state
        makes sense, added the state-checking code too for the menu item case.
        (-[WebHTMLView ignoreSpelling:]): Removed unnecessary "editable text only" check since this command
        would work fine on a non-editable selection.
        (-[WebHTMLView swapWithMark:]): Ditto.
        (-[WebHTMLView changeBaseWritingDirection:]): Added. Like toggle, but based on the sender's tag.

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

15 years ago Reviewed by Harrison.
darin [Thu, 10 Feb 2005 23:47:48 +0000 (23:47 +0000)]
    Reviewed by Harrison.

        - added support needed to fix <rdar://problem/3991225> Format->Style->Underline menu item does not get checked when selected text is underlined

        * kwq/WebCoreBridge.h: Added selectionHasStyle: method.
        * kwq/WebCoreBridge.mm: (-[WebCoreBridge selectionHasStyle:]): Added. Calls selectionHasStyle on the part.

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

15 years ago Reviewed by Harrison.
darin [Thu, 10 Feb 2005 22:51:39 +0000 (22:51 +0000)]
    Reviewed by Harrison.

        - fixed <rdar://problem/3990484> cursor changes to I-beam when moving over text in widgets, even when selection off via CSS

        * khtml/khtmlview.cpp: (KHTMLView::viewportMouseMoveEvent): Changed code to check canSelect when deciding
        whether to show an I-beam cursor.

        * khtml/rendering/render_object.h: Added canSelect.
        * khtml/rendering/render_object.cpp:
        (selectStartNode): Added. Helper function with the guts of shouldSelect.
        (RenderObject::canSelect): Added. Like shouldSelect, but does not call the "start selecting" event handler.
        (RenderObject::shouldSelect): Refactored to use selectStartNode.

        * khtml/css/cssvalues.c: Regnerated with newer gperf.

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

15 years ago Fix for 3867759, .mac regression where scrollers don't show up. Make sure you can...
hyatt [Thu, 10 Feb 2005 22:30:56 +0000 (22:30 +0000)]
Fix for 3867759, .mac regression where scrollers don't show up.  Make sure you can set the .width and
.height properties on the Image object.

        Reviewed by John Sullivan

        * khtml/ecma/kjs_html.cpp:
        (ImageConstructorImp::construct):
        (Image::getValueProperty):
        (Image::putValue):
        (Image::Image):
        * khtml/ecma/kjs_html.h:

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

15 years ago Reviewed by Chris
kocienda [Thu, 10 Feb 2005 22:25:28 +0000 (22:25 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3965158> Drag-n-drop within a rich text message sometimes changes the color of the dragged text

        This change fixes the bug....and much more. Now, for the first time, the paste code can do "smart merging"
        or "smooshing" of styles during its operation. Since this new code is actively, rather than passively
        working with styles, it fixes the bug, and lays the groundwork for similar work we need to do to
        preserve quote levels in Mail.

        * khtml/css/css_valueimpl.cpp:
        (DOM::CSSMutableStyleDeclarationImpl::clear): New method.
        (DOM::CSSMutableStyleDeclarationImpl::removeBlockProperties): Ditto.
        (DOM::CSSMutableStyleDeclarationImpl::removePropertiesInSet): Ditto.
        (DOM::operator==): Add operator for CSSProperty.
        * khtml/css/css_valueimpl.h: Declare new functions.
        * khtml/editing/htmlediting.cpp:
        (khtml::isEmptyStyleSpan): Improved the test in this function, rolling together the old implementation
        with some code that did this work inline elsewhere. Sum of the parts is better than either test was by itself.
        (khtml::isStyleSpan): Check for ID_SPAN.
        (khtml::ApplyStyleCommand::removeCSSStyle): Call isEmptyStyleSpan. This was the place with an inline implementation before.
        (khtml::ReplacementFragment::ReplacementFragment): Now takes a DocumentImpl argument. No longer does a "default style"
        check, but rather calls functions which do a similar check to that, and much more.
        (khtml::ReplacementFragment::~ReplacementFragment): Deref document, and computed styles.
        (khtml::ReplacementFragment::styleForNode): New helper. Looks up and returns computed style for a node.
        (khtml::ReplacementFragment::removeNodePreservingChildren): New helper.
        (khtml::ReplacementFragment::computeStylesForNodes): New function which computes the "desired" style for
        every node in the fragment. This information is used later after paste is done as a reference for testing
        what styles need to be added, and which can be removed as redundant, from all the nodes inserted by the
        replacement code.
        (khtml::ReplacementFragment::removeStyleNodes): Clears out all style nodes from the fragment. They are
        no longer needed after the call to computeStylesForNodes(),
        (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): Add a document to the call to initialize the
        command's ReplacementFragment.
        (khtml::ReplaceSelectionCommand::doApply): Call applyStyleToInsertedNodes() after inserting nodes to make
        styles come out right.
        (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes): This is the "style smooshing" function. It
        computes the styles that need to be added to each node inserted, comparing the style it gets from just
        being inserted into its correct destination with the computed "desired style" done in the
        ReplacementFragment constructor. It then adds in all the necessary styles, and will also remove redundant styles.
        * khtml/editing/htmlediting.h: Update declarations and member variables as needed.
        * khtml/editing/markup.cpp:
        (khtml::startMarkup): Add additional style annotations to the markup we generate, so that paste code can preserve it.
        (khtml::markup): Ditto.
        (khtml::createMarkup): Ditto.

        These test results are subtly better with this change. They no longer have an unneeded empty span.
        Visually the same as before.

        * layout-tests/editing/style/remove-underline-across-paragraph-expected.txt
        * layout-tests/editing/style/remove-underline-across-paragraph-in-bold-expected.txt
        * layout-tests/editing/style/remove-underline-expected.txt
        * layout-tests/editing/style/remove-underline-from-stylesheet-expected.txt

        New tests:

        * layout-tests/editing/style/smoosh-styles-001-expected.txt
        * layout-tests/editing/style/smoosh-styles-002-expected.txt
        * layout-tests/editing/style/smoosh-styles-001.html
        * layout-tests/editing/style/smoosh-styles-002.html

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

15 years ago Reviewed by Adele.
darin [Thu, 10 Feb 2005 21:29:32 +0000 (21:29 +0000)]
    Reviewed by Adele.

        - fixed <rdar://problem/3974988> WebHTMLView drops scroll wheel events when deltas are 0

        * kwq/WebCoreScrollView.m: (-[WebCoreScrollView autoforwardsScrollWheelEvents]): Added, for Tiger only.
        For Tiger, removed the override of scrollWheel:, which doesn't work quite right because of how the
        delta attributes return all 0 for newfangled scrolling events from the new trackpads.

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

15 years ago "Reviewed" by Richard (he told me the file was obsolete).
darin [Thu, 10 Feb 2005 19:46:10 +0000 (19:46 +0000)]
    "Reviewed" by Richard (he told me the file was obsolete).

        - got rid of an obsolete file

        * bindings/npsap.h: Removed.

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

15 years ago "Reviewed" by Richard (he told me the file was obsolete).
darin [Thu, 10 Feb 2005 19:45:30 +0000 (19:45 +0000)]
    "Reviewed" by Richard (he told me the file was obsolete).

        - got rid of an obsolete file

        * Plugins.subproj/npsap.h: Removed.
        * copy-webcore-files-to-webkit: Removed npsap.h.

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

15 years ago Reviewed by Darin.
harrison [Thu, 10 Feb 2005 19:12:24 +0000 (19:12 +0000)]
    Reviewed by Darin.

        <rdar://problem/3991532> REGRESSION (Mail): Triple-click on trailing blank line should select previous line but doesn't

        * khtml/css/cssvalues.c:
        (hash_val):
        (findValue):
        * khtml/editing/selection.cpp:
        (khtml::Selection::validate):
        Do moral equiavalent of LeftWordIfOnBoundary for PARAGRAPH.

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

15 years ago Reviewed by Darin.
harrison [Thu, 10 Feb 2005 19:03:36 +0000 (19:03 +0000)]
    Reviewed by Darin.

        <rdar://problem/3991848> Double-click on first character selects wrong item

        * khtml/editing/selection.cpp:
        (khtml::Selection::validate):
        Honor the fact that clicking on a character positions the cursor on the left side of the character.

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

15 years ago Fix for 3980778, repro crash in RootInlineBox::paint. Make sure that when merging...
hyatt [Thu, 10 Feb 2005 10:21:00 +0000 (10:21 +0000)]
Fix for 3980778, repro crash in RootInlineBox::paint.  Make sure that when merging blocks we dirty them for layout
up front. That way as we do the merge, we dont attempt to examine the lines in dirtyLinesForChangedChild.

        Reviewed by mjs

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::removeChild):

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

15 years ago Fix for 3987010, fix a bug that caused the self-collapsing-block-cleared-float bit...
hyatt [Thu, 10 Feb 2005 09:55:35 +0000 (09:55 +0000)]
Fix for 3987010, fix a bug that caused the self-collapsing-block-cleared-float bit to never get set correctly.

        Reviewed by mjs

        * khtml/rendering/render_block.h:
        (khtml::RenderBlock::MarginInfo::setSelfCollapsingBlockClearedFloat):

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

15 years ago Fix for 3992440, text not wrapping correctly on half moon bay web site. Refine...
hyatt [Thu, 10 Feb 2005 09:34:27 +0000 (09:34 +0000)]
Fix  for 3992440, text not wrapping correctly on half moon bay web site.  Refine an incorrect optimization I
added to be less restrictive.

        Reviewed by mjs

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::layoutBlockChildren):

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

15 years ago Reviewed by Darin.
mjs [Thu, 10 Feb 2005 08:40:56 +0000 (08:40 +0000)]
    Reviewed by Darin.

<rdar://problem/3977973> pages on ebay leak referenced JavaScript objects -- over time browsing becomes super-slow

I fixed this by removing all event listeners for a document, it's
children, and any disconnected nodes that used to be in the
document at document detach time. Mozilla temporarily disables
event listeners on such nodes, but re-enables them if you
re-parant a node into a new document. However, in WebCore, you
can't re-parent a node into another document, so there is no
observable change in behavior.

We have to do this to break the possible reference cycles between
event listeners and the dom nodes they are attached to (e.g. via
scope chain, as in this case).

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::detach):
        (DocumentImpl::removeAllEventListenersFromAllNodesx):
        (DocumentImpl::registerDisconnectedNodeWithEventListeners):
        (DocumentImpl::unregisterDisconnectedNodeWithEventListeners):
        (DocumentImpl::removeAllDisconnectedNodeEventListeners):
        * khtml/xml/dom_docimpl.h:
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::~NodeImpl):
        (NodeImpl::addEventListener):
        (NodeImpl::removeEventListener):
        (NodeImpl::removeAllEventListeners):
        (NodeImpl::removeHTMLEventListener):
        (NodeImpl::insertedIntoDocument):
        (NodeImpl::removedFromDocument):
        * khtml/xml/dom_nodeimpl.h:

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

15 years ago Fixed: <rdar://problem/3999213> Sometimes 2 Windows Media Player plugin instances...
cblu [Thu, 10 Feb 2005 00:39:49 +0000 (00:39 +0000)]
Fixed: <rdar://problem/3999213> Sometimes 2 Windows Media Player plugin instances are loaded

        Reviewed by hyatt.

        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::attach): Set needWidgetUpdate to false before calling updateWidget because updateWidget may cause this method or another method (which also calls updateWidget) to be called.
        (HTMLObjectElementImpl::recalcStyle): ditto

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

15 years ago Fixed <rdar://problem/4000073> non-screen font error on www.worldofwarcraft.com
rjw [Thu, 10 Feb 2005 00:33:55 +0000 (00:33 +0000)]
Fixed <rdar://problem/4000073> non-screen font error on worldofwarcraft.com

        Reviewed by John Sullivan.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _smallCapsFont]):

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

15 years ago Reviewed by Darin.
harrison [Thu, 10 Feb 2005 00:30:06 +0000 (00:30 +0000)]
    Reviewed by Darin.

        <rdar://problem/3937447> Mail-689: Arrow key navigation in new message body stops working when a line ends with a bold word

        Added affinity to VisiblePosition.  Changed Selection code to use affinity more.

        (Partial) <rdar://problem/3982096> editing/pasteboard/paste-text-007 is failing

        Changed ReplaceSelectionCommand to also pay attention to the top children of the incoming fragment, not just the very last node inserted, when deciding whether to insert a paragraph for the Apple interchange newline.

        * khtml/ecma/kjs_window.cpp:
        (SelectionFunc::tryCall):
        * khtml/editing/htmlediting.cpp:
        (khtml::EditCommandPtr::setStartingSelection):
        (khtml::EditCommandPtr::setEndingSelection):
        (khtml::EditCommand::setStartingSelection):
        (khtml::EditCommand::setEndingSelection):
        (khtml::CompositeEditCommand::deleteInsignificantTextDownstream):
        (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
        (khtml::ApplyStyleCommand::splitTextAtStartIfNeeded):
        (khtml::ApplyStyleCommand::splitTextAtEndIfNeeded):
        (khtml::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
        (khtml::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
        (khtml::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
        (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical):
        (khtml::ApplyStyleCommand::joinChildTextNodes):
        (khtml::DeleteSelectionCommand::initializePositionData):
        (khtml::DeleteSelectionCommand::handleGeneralDelete):
        (khtml::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
        (khtml::DeleteSelectionCommand::doApply):
        (khtml::InsertLineBreakCommand::doApply):
        (khtml::InsertParagraphSeparatorCommand::doApply):
        (khtml::InsertParagraphSeparatorInQuotedContentCommand::doApply):
        (khtml::InsertTextCommand::input):
        (khtml::MoveSelectionCommand::doApply):
        (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand):
        (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand):
        (khtml::ReplaceSelectionCommand::doApply):
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement):
        (khtml::ReplaceSelectionCommand::updateNodesInserted):
        (khtml::TypingCommand::deleteKeyPressed):
        (khtml::TypingCommand::forwardDeleteKeyPressed):
        (khtml::TypingCommand::markMisspellingsAfterTyping):
        * khtml/editing/htmlediting.h:
        * khtml/editing/selection.cpp:
        (khtml::Selection::Selection):
        (khtml::Selection::init):
        (khtml::Selection::moveTo):
        (khtml::Selection::modifyExtendingRightForward):
        (khtml::Selection::modifyMovingRightForward):
        (khtml::Selection::modifyExtendingLeftBackward):
        (khtml::Selection::modifyMovingLeftBackward):
        (khtml::Selection::modify):
        (khtml::Selection::xPosForVerticalArrowNavigation):
        (khtml::Selection::clear):
        (khtml::Selection::setBase):
        (khtml::Selection::setExtent):
        (khtml::Selection::setBaseAndExtent):
        (khtml::Selection::layout):
        (khtml::Selection::validate):
        * khtml/editing/selection.h:
        (khtml::Selection::startAffinity):
        (khtml::Selection::endAffinity):
        (khtml::Selection::baseAffinity):
        (khtml::Selection::extentAffinity):
        (khtml::operator==):
        * khtml/editing/text_affinity.h:
        (khtml::):
        * khtml/editing/visible_position.cpp:
        (khtml::VisiblePosition::VisiblePosition):
        (khtml::VisiblePosition::init):
        (khtml::VisiblePosition::initUpstream):
        (khtml::VisiblePosition::initDownstream):
        (khtml::VisiblePosition::next):
        (khtml::VisiblePosition::previous):
        (khtml::startVisiblePosition):
        (khtml::endVisiblePosition):
        * khtml/editing/visible_position.h:
        (khtml::VisiblePosition::):
        (khtml::VisiblePosition::VisiblePosition):
        (khtml::VisiblePosition::affinity):
        (khtml::VisiblePosition::setAffinity):
        (khtml::operator==):
        * khtml/editing/visible_units.cpp:
        (khtml::previousBoundary):
        (khtml::nextBoundary):
        (khtml::startOfLine):
        (khtml::endOfLine):
        (khtml::previousLinePosition):
        (khtml::nextLinePosition):
        (khtml::startOfParagraph):
        (khtml::endOfParagraph):
        (khtml::previousParagraphPosition):
        (khtml::nextParagraphPosition):
        (khtml::startOfBlock):
        (khtml::endOfBlock):
        (khtml::startOfDocument):
        (khtml::endOfDocument):
        * khtml/editing/visible_units.h:
        * khtml/khtml_part.cpp:
        (KHTMLPart::findTextNext):
        (KHTMLPart::selectClosestWordFromMouseEvent):
        (KHTMLPart::handleMousePressEventTripleClick):
        (KHTMLPart::handleMousePressEventSingleClick):
        (KHTMLPart::handleMouseMoveEventSelection):
        (KHTMLPart::khtmlMouseReleaseEvent):
        (KHTMLPart::selectAll):
        (KHTMLPart::computeAndSetTypingStyle):
        (KHTMLPart::selectionComputedStyle):
        * khtml/rendering/render_br.cpp:
        (RenderBR::positionForCoordinates):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::updateSelection):
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeBaseImpl::setFocus):
        * khtml/xml/dom_position.cpp:
        (DOM::Position::previousCharacterPosition):
        (DOM::Position::nextCharacterPosition):
        * khtml/xml/dom_position.h:
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject value]):
        (-[KWQAccObject visiblePositionForStartOfTextMarkerRange:]):
        (-[KWQAccObject visiblePositionForEndOfTextMarkerRange:]):
        (-[KWQAccObject accessibilityAttributeValue:]):
        (-[KWQAccObject doAXLineForTextMarker:]):
        (-[KWQAccObject doAXTextMarkerRangeForLine:]):
        (-[KWQAccObject doAXTextMarkerForPosition:]):
        (-[KWQAccObject doAXLeftLineTextMarkerRangeForTextMarker:]):
        (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]):
        (-[KWQAccObject doAXNextWordEndTextMarkerForTextMarker:]):
        (-[KWQAccObject doAXPreviousWordStartTextMarkerForTextMarker:]):
        (-[KWQAccObject doAXNextLineEndTextMarkerForTextMarker:]):
        (-[KWQAccObject doAXPreviousLineStartTextMarkerForTextMarker:]):
        (-[KWQAccObject doSetAXSelectedTextMarkerRange:]):
        * kwq/KWQAccObjectCache.mm:
        (KWQAccObjectCache::textMarkerForVisiblePosition):
        (KWQAccObjectCache::visiblePositionForTextMarker):
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::findString):
        (KWQKHTMLPart::advanceToNextMisspelling):
        (KWQKHTMLPart::styleForSelectionStart):
        (KWQKHTMLPart::baseWritingDirectionForSelectionStart):
        (KWQKHTMLPart::setSelectionFromNone):
        (KWQKHTMLPart::respondToChangedSelection):
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge setSelectedDOMRange:affinity:]):
        (-[WebCoreBridge selectionAffinity]):
        (-[WebCoreBridge setMarkDOMRange:]):
        (-[WebCoreBridge _visiblePositionForPoint:]):
        (-[WebCoreBridge moveDragCaretToPoint:]):
        (-[WebCoreBridge editableDOMRangeForPoint:]):
        (-[WebCoreBridge ensureSelectionVisible]):
        (-[WebCoreBridge rangeOfCharactersAroundCaret]):

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

15 years ago Fixed: <rdar://problem/3985211> Seed: Mail: Drag-and-drop destination indicator...
cblu [Wed, 9 Feb 2005 21:52:28 +0000 (21:52 +0000)]
Fixed: <rdar://problem/3985211> Seed: Mail: Drag-and-drop destination indicator / insertion point disappears

        Reviewed by kocienda.

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::paintCaret): new
        (khtml::RenderBlock::paintObject): call paintCaret for the cursor caret and the drag caret
        * khtml/rendering/render_block.h:

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

15 years agoVersioning for TOT, Safari 2.0 (185+). The tree is open.
vicki [Tue, 8 Feb 2005 23:41:31 +0000 (23:41 +0000)]
Versioning for TOT, Safari 2.0 (185+).  The tree is open.

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

15 years agoSafari-185 stamp (can't use 184 b/c of the "4", of course)
vicki [Tue, 8 Feb 2005 23:31:13 +0000 (23:31 +0000)]
Safari-185 stamp (can't use 184 b/c of the "4", of course)

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

15 years ago Reviewed by John
kocienda [Tue, 8 Feb 2005 17:33:18 +0000 (17:33 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3996344> Entire document content is deleted when only the first paragraph was supposed to be

        Problem stems from my attempt to fix this bug: <rdar://problem/3986155> Insertion point goes
        to beginning of doc after deleting.

        I added an "optimization" that proved to do more harm than good. So, basically, the fix is to remove code.

        * khtml/editing/htmlediting.cpp:
        (khtml::DeleteSelectionCommand::handleGeneralDelete)

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

15 years ago Reviewed by Kevin.
darin [Tue, 8 Feb 2005 16:53:20 +0000 (16:53 +0000)]
    Reviewed by Kevin.

        - fixed <rdar://problem/3890352> REGRESSION (125-170, Panther-only): pasted textarea contents disappear (exception in NSText)

        * kwq/KWQTextArea.mm: (-[KWQTextArea tile]): Don't resize the text view immediately here.
        Use performWithDelay to defer it to avoid the re-entrancy that bothers the Panther version
        of NSTextView. On Tiger, leave the code alone.

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

15 years ago Reviewed by NOBODY (OOPS!).
darin [Tue, 8 Feb 2005 16:52:54 +0000 (16:52 +0000)]
    Reviewed by NOBODY (OOPS!).

        - fixed <rdar://problem/3890352> REGRESSION (125-170, Panther-only): pasted textarea contents disappear (exception in NSText)

        * kwq/KWQTextArea.mm: (-[KWQTextArea tile]): Don't resize the text view immediately here.
        Use performWithDelay to defer it to avoid the re-entrancy that bothers the Panther version
        of NSTextView. On Tiger, leave the code alone.

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

15 years ago Reviewed by Darin.
adele [Tue, 8 Feb 2005 01:33:11 +0000 (01:33 +0000)]
    Reviewed by Darin.

        Fix for <rdar://problem/3993628> REGRESSION (180-181): Logitelnet bank's website doesn't work

        This fixes an oversight in the fix for <rdar://problem/3964286>.
        We're now making sure there is a document before calling checkCompleted in slotLoaderRequestDone.
        That function is called even when other parts finish loads of their subresources, so we could end
up calling checkCompleted before we had a document. We also looked over all the other calls to
checkCompleted to convince ourselves no other call sites had a similar issue.

        * khtml/khtml_part.cpp: (KHTMLPart::slotLoaderRequestDone): Check if doc is nil before calling
checkCompleted.

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

15 years ago Fixed: <rdar://problem/3993354> Safari claims to put RTFD on the pasteboard, but...
cblu [Mon, 7 Feb 2005 22:42:17 +0000 (22:42 +0000)]
Fixed: <rdar://problem/3993354> Safari claims to put RTFD on the pasteboard, but doesn't, in some cases

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _stripAttachmentCharactersFromAttributedString:]): moved
        (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]): take cachedAttributedString parameter in case the attributed string was gotten already
        (-[WebHTMLView _writeSelectionToPasteboard:]): omit RTFD from the types list when there are no attachments

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

15 years ago Reviewed by Ken.
harrison [Mon, 7 Feb 2005 21:09:58 +0000 (21:09 +0000)]
    Reviewed by Ken.

        <rdar://problem/3990693> REGRESSION (8A373): ctrl-k now deletes just one character instead of line

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
        Set the selection so that deleteKeyPressedWithSmartDelete knows what to delete.

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

15 years ago Reviewed by Darin
kocienda [Mon, 7 Feb 2005 16:32:45 +0000 (16:32 +0000)]
    Reviewed by Darin

        Fix for this bug:

        <rdar://problem/3953302> Replacing quoted text ends up with blue-colored text that is not quoted

        * khtml/editing/htmlediting.cpp:
        (khtml::DeleteSelectionCommand::doApply): Removed special case delete code for select all. It was
        causing as many bugs as it fixed. What's more, the design concept is a bit shaky. By removing
        this special case, the bug goes away.
        * khtml/editing/htmlediting.h: Remove declaration.

        Test results using selectAll() updated to reflect changed behavior.

        * layout-tests/editing/deleting/delete-3775172-fix-expected.txt:
        * layout-tests/editing/deleting/delete-select-all-001-expected.txt:
        * layout-tests/editing/deleting/delete-select-all-003-expected.txt:
        * layout-tests/editing/inserting/insert-3654864-fix-expected.txt:
        * layout-tests/editing/inserting/insert-3775316-fix-expected.txt:
        * layout-tests/editing/inserting/insert-3851164-fix-expected.txt:
        * layout-tests/editing/inserting/insert-3907422-fix-expected.txt:
        * layout-tests/editing/pasteboard/paste-text-015-expected.txt:

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

15 years ago Reviewed by Ken.
darin [Mon, 7 Feb 2005 16:26:19 +0000 (16:26 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3994164> setting a new style attribute with setAttribute("style") doesn't blow away the old style

        * khtml/css/css_valueimpl.h: Renamed parseProperty to parseDeclaration, since it's used to parse
        an entire style declaration, not a single property.
        * khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::parseDeclaration): Renamed,
        and added code to clear m_values.
        * khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseHTMLAttribute): Call function by its
        new name, and remove some unnecessary comments.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:44:25 +0000 (06:44 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3993722> need oncut and onpaste handlers implemented for <textarea> (needed for widgets)

        * kwq/KWQTextArea.mm:
        (-[KWQTextAreaTextView dispatchHTMLEvent:]): Added.
        (-[KWQTextAreaTextView cut:]): Dispatch "before cut" and "cut" events.
        (-[KWQTextAreaTextView copy:]): Dispatch "before copy" and "copy" events.
        (-[KWQTextAreaTextView paste:]): Dispatch "before paste" and "paste" events.
        (-[KWQTextAreaTextView pasteAsPlainText:]): Ditto.
        (-[KWQTextAreaTextView pasteAsRichText:]): Ditto.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:37:51 +0000 (06:37 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3943038> <input type=search> that is focused in onload handler doesn't have a visible editor

        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::setFocusNode): Always update layout before giving focus to a widget.
        This prevents the bad case where we give a widget focus before it has been positioned or sized, causing us to
        exercise edge cases AppKit doesn't handle well.

        * kwq/KWQTextField.mm: (-[KWQTextFieldController initWithTextField:QLineEdit:]): Remove workaround code I added
        to fix bug 3943049. Updating the layout fixes the same problem in a cleaner, safer way, and solves another problem,
        with the way the clip view is set up.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:31:18 +0000 (06:31 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3425232> textarea won't trigger onchange action when clicking to new field

        * khtml/rendering/render_form.h: Added new m_dirty data member.
        * khtml/rendering/render_form.cpp:
        (RenderTextArea::RenderTextArea): Initialize m_dirty to false.
        (RenderTextArea::detach): Call value() on the DOM element to cause it to fetch the value from this object.
        (RenderTextArea::handleFocusOut): Ditto. Also send the onchange event based only on the m_dirty flag.
        (RenderTextArea::updateFromElement): Clear the m_dirty flag if the edited value is blown away by a value
        that comes from the DOM element. Remove code to clear the element's m_dirtyvalue flag; that's an unnecessary
        optimization, and ideally we'll stop having code in the render object that knows about that flag later.
        (RenderTextArea::slotTextChanged): Set the m_dirty flag.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:26:04 +0000 (06:26 +0000)]
    Reviewed by Maciej.

        - re-fixed <rdar://problem/3760910> please add support for custom tag names in HTML

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::tagId): Use ID_LAST_TAG + 1 for the ID of the first assigned tag ID. Before we'd use ID_LAST_TAG,
        which resulted in the same number being used for ID_COMMENT and the first custom tag.
        (DocumentImpl::tagName): Use ID_LAST_TAG + 1, as above.
        (DocumentImpl::namespaceURI): Change a < ID_LAST_TAG to <= ID_LAST_TAG in the same spirit as above.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:18:44 +0000 (06:18 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3986639> Crash occurs after choosing Undo Typing from the Edit menu

        * kwq/KWQTextArea.mm: (-[KWQTextArea viewWillMoveToWindow:]): Remove actions from undo manager when the view is
        removed from the window. Unfortunately, to do this the code has to know that the target of NSTextView actions
        will be the text storage object, but given the NSText architecture, that's pretty clear.

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

15 years ago Reviewed by Maciej.
darin [Mon, 7 Feb 2005 06:13:54 +0000 (06:13 +0000)]
    Reviewed by Maciej.

        - fixed <rdar://problem/3963166> PDFView SPI print method is being deprecated, moving to PDFDocument; please update WebKit

        * WebView.subproj/WebPDFView.m: (-[WebPDFView printOperationWithPrintInfo:]): Target the document instead of the view.

        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes and also moved one translation to be a file-specific
        item rather than a file-independent one.

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

15 years agoWebCore:
cblu [Sun, 6 Feb 2005 20:19:57 +0000 (20:19 +0000)]
WebCore:

Fixed: <rdar://problem/3991974> REGRESSION: www.jabra.com world location screen does not work

        Reviewed by hyatt.

        * kwq/KWQKJavaAppletWidget.mm:
        (KJavaAppletWidget::KJavaAppletWidget): fallback to the document's base URL if there is no baseURL attribute
        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge baseURL]): new

WebKit:

Fixed: <rdar://problem/3991974> REGRESSION: www.jabra.com world location screen does not work

        Reviewed by hyatt.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): use the baseURL from the bridge rather than from the response

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

15 years ago Reviewed by Darin.
harrison [Sat, 5 Feb 2005 01:49:09 +0000 (01:49 +0000)]
    Reviewed by Darin.

        Rolled out Ken's accidental checkin when committing <rdar://problem/3986155> fix yesterday.

        * khtml/editing/selection.cpp:
        (khtml::Selection::validate):

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

15 years ago Reviewed by Darin.
adele [Sat, 5 Feb 2005 01:45:23 +0000 (01:45 +0000)]
    Reviewed by Darin.

        Fix for <rdar://problem/3758785> Safari no longer works at BankOfAmerica online banking for military users

        When closing the document, if a body doesn't exist we now create one.  This bug was preventing the onload handler from
        firing in cases where there wasn't a body.  In the BankOfAmerica case, the page was just a bit of script where the onload
        handler redirected to the correct page.

        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):

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

15 years ago Fixed: <rdar://problem/3802781> rtf->html pasteboard conversion using xhtml
cblu [Fri, 4 Feb 2005 22:41:01 +0000 (22:41 +0000)]
Fixed: <rdar://problem/3802781> rtf->html pasteboard conversion using xhtml

        Reviewed by kocienda.

        * WebView.subproj/WebHTMLView.m:
        (+[WebHTMLView _excludedElementsForAttributedStringConversion]): new
        (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): call _excludedElementsForAttributedStringConversion

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

15 years ago Reviewed by Chris
kocienda [Fri, 4 Feb 2005 22:18:43 +0000 (22:18 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3986155> Insertion point goes to beginning of doc after deleting

        * khtml/editing/htmlediting.cpp:
        (khtml::DeleteSelectionCommand::setStartNode): New convenience to handle reference counting when setting.
        (khtml::DeleteSelectionCommand::handleGeneralDelete): This contains the crux of the bug fix. Improve tests
        that detect when a selected node needs to be retained, rather than deleted, to preserve the intent of the user.
        This has the side effect of causing the insertion point placement code to succeed rather than fail. Before
        this fix, the failure of the insertion point placement code caused the insertion point to jump to the start
        of the document, which is the symptom that can be perceived by users when editing.
        * khtml/editing/htmlediting.h: Add setStartNode declaration.
        * khtml/editing/visible_units.cpp:
        (khtml::startOfBlock): This function had a stubbed-in non-tested implementation. Implement and
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-001-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-001.html: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-002.html: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-003-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-003.html: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-004-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-004.html: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-005-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-005.html: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-006-expected.txt: Added.
        * layout-tests/editing/deleting/delete-at-paragraph-boundaries-006.html: Added.

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

15 years agoMove the Safari-183 marker in the ChangeLog, since we're going to include <rdar:...
vicki [Fri, 4 Feb 2005 18:45:37 +0000 (18:45 +0000)]
Move the Safari-183 marker in the ChangeLog, since we're going to include <rdar://problem/3972905> in today's Safari-183 submission

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

15 years ago Fixed: <rdar://problem/3832973> copy text from PowerPoint, paste into Blot (or presu...
cblu [Fri, 4 Feb 2005 18:25:41 +0000 (18:25 +0000)]
Fixed: <rdar://problem/3832973> copy text from PowerPoint, paste into Blot (or presumably Mail) and get a single missing image icon

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): prefer RTF and RTFD over images just as NSTextView does

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

15 years ago Fixed: <rdar://problem/3555137> REGRESSION (125-173): Flash animation can erase...
cblu [Fri, 4 Feb 2005 01:44:27 +0000 (01:44 +0000)]
Fixed: <rdar://problem/3555137> REGRESSION (125-173): Flash animation can erase parts of chrome (bookmarks bar & tab bar)

convertRect:toView: returns incorrect results inside of viewWillMoveToWindow: with a nil window. Workaround this by catching this case.

        Reviewed by darin.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView superviewsHaveSuperviews]): new
        (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): clip out the plug-in view when superviewsHaveSuperviews returns NO

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

15 years ago Fixed <rdar://problem/3972905> CrashTracer: ...36 crashes at com.apple.WebCore:...
rjw [Fri, 4 Feb 2005 01:41:27 +0000 (01:41 +0000)]
Fixed <rdar://problem/3972905> CrashTracer: ...36 crashes at com.apple.WebCore: khtml::CSSStyleSelector::applyDeclarations + 120

Revert to old (and correct) behavior of returning runtime object
when passed as a parameter, rather than it's corresponding DOM
object.

        Reviewed by Chris.

        * bindings/objc/WebScriptObject.mm:
        (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):

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

15 years ago Fixed: <rdar://problem/3893513> Sun iPlanet app: when saving to a file it brings...
cblu [Fri, 4 Feb 2005 00:02:31 +0000 (00:02 +0000)]
Fixed: <rdar://problem/3893513> Sun iPlanet app: when saving to a file it brings up a window with the thing to be saved instead

        Reviewed by adele.

        * WebView.subproj/WebTextView.m:
        (+[WebTextView unsupportedTextMIMETypes]): added "text/ldif" to the list of MIME types that our text view doesn't handle

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

15 years agoversioning for TOT, Safari 2.0 (183+)
vicki [Thu, 3 Feb 2005 23:57:26 +0000 (23:57 +0000)]
versioning for TOT, Safari 2.0 (183+)
The tree is open!

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

15 years agoSafari-183 stamp
vicki [Thu, 3 Feb 2005 23:46:13 +0000 (23:46 +0000)]
Safari-183 stamp

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

15 years ago Fixed <rdar://problem/3987419> Stocks and Weather leak what appears to XMLHTTPReques...
rjw [Thu, 3 Feb 2005 22:22:27 +0000 (22:22 +0000)]
Fixed <rdar://problem/3987419> Stocks and Weather leak what appears to XMLHTTPRequest results

XMLHTTPRequests were causing massive leaks.  _webcore_initWithHeaderString: did funky things with
self replacement.  Re-wrote to use more traditional factory constructor avoiding self replacement.

        Reviewed by David Harrison.

        * kwq/KWQLoader.mm:
        (+[NSDictionary _webcore_dictionaryWithHeaderString:]):
        (KWQServeRequest):
        (KWQServeSynchronousRequest):

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

15 years ago * English.lproj/StringsNotToBeLocalized.txt: updated
cblu [Thu, 3 Feb 2005 22:09:13 +0000 (22:09 +0000)]
    * English.lproj/StringsNotToBeLocalized.txt: updated

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

15 years ago Fixed: <rdar://problem/3989611> Evite style "add vCalendar to calendar" do not work
cblu [Thu, 3 Feb 2005 21:59:47 +0000 (21:59 +0000)]
Fixed: <rdar://problem/3989611> Evite style "add vCalendar to calendar" do not work

        Reviewed by adele.

        * WebView.subproj/WebTextView.m:
        (+[WebTextView unsupportedTextMIMETypes]): added "text/x-vcalendar" to the list of MIME types our text view doesn't handle

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

15 years ago Fixed: <rdar://problem/3938763> Cannot view Windows Media Player videos (soundtrack...
cblu [Thu, 3 Feb 2005 19:56:18 +0000 (19:56 +0000)]
Fixed: <rdar://problem/3938763> Cannot view Windows Media Player videos (soundtrack is played twice with delay)

        Reviewed by hyatt.

        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::attach): set needWidgetUpdate to false right after calling updateWidget because dispatchHTMLEvent can end up calling this method again
        (HTMLObjectElementImpl::recalcStyle): ditto

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

15 years ago Reviewed by Darin.
vicki [Thu, 3 Feb 2005 18:17:00 +0000 (18:17 +0000)]
    Reviewed by Darin.

- fix deployment build breakage on Panther

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView toggleBaseWritingDirection:]):

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

15 years ago Reviewed by Chris.
sullivan [Thu, 3 Feb 2005 01:44:46 +0000 (01:44 +0000)]
    Reviewed by Chris.

        - WebKit part of fix for <rdar://problem/3980651> REGRESSION (125-180): Huge number of pages printed from certain page,
        iFrame involved

        This also fixes the problems with printing from GMail, yay!

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
        Don't adjust margins for header/footer here, because this is called for each subframe.
        (-[WebHTMLView knowsPageRange:]):
        Do adjust margins for header/footer here (analogous to WebTextView and WebImageView).
        Also, round the page height to an integer here (noticed in passing).

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

15 years ago Reviewed by Chris.
sullivan [Thu, 3 Feb 2005 01:44:11 +0000 (01:44 +0000)]
    Reviewed by Chris.

        - WebCore part of fix for <rdar://problem/3980651> REGRESSION (125-180): Huge number of pages printed from certain page,
        iFrame involved

        This also fixes the problems with printing from GMail, yay!

        * khtml/rendering/render_flow.cpp:
        (RenderFlow::paintLines):
        If the current line is taller than the entire page height (e.g. tall iFrame), don't try
        to avoid splitting it across pages.

        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
        Handle error cases in a more obvious manner; this will cause future problems like this
        to print a blank page and complain to the console on debug builds, rather than print a
        zillionty mostly-blank pages.

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

15 years ago Fixed: <rdar://problem/3960304> can't load a particular applet (at www.escape.de...
cblu [Thu, 3 Feb 2005 00:47:31 +0000 (00:47 +0000)]
Fixed: <rdar://problem/3960304> can't load a particular applet (at escape.de) unless it's the first applet to be loaded

        Reviewed by hyatt.

        * khtml/rendering/render_frames.cpp:
        (RenderPartObject::updateWidget): when getting the MIME type from the PARAM tag, make sure the MIME type is the text from the left of the semi-colon if there is one. We do this elsewhere as well.

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

15 years ago Fixed: <rdar://problem/3986546> Cut, delete, and paste menu items are active when...
cblu [Thu, 3 Feb 2005 00:14:52 +0000 (00:14 +0000)]
Fixed: <rdar://problem/3986546> Cut, delete, and paste menu items are active when a image is opened in window

        Reviewed by john.

        * WebView.subproj/WebView.m:
        (-[WebView _responderValidateUserInterfaceItem:]): new, has the responder validate the item
        (-[WebView validateUserInterfaceItem:]): call VALIDATE for each repsonder selector using FOR_EACH_RESPONDER_SELECTOR macro
        (-[WebView _performResponderOperation:with:]): call factored out method _responderForResponderOperations
        (-[WebView _responderForResponderOperations]): new, code from _performResponderOperation:with:

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

15 years agoWebCore:
cblu [Wed, 2 Feb 2005 22:01:43 +0000 (22:01 +0000)]
WebCore:

Fixed: <rdar://problem/3983628> control-click on WebView is not selecting the word under the cursor (Mail, non-editable WebView)

        Reviewed by rjw.

        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::sendContextMenuEvent): check if SPI to always enable selecting closest word is enabled
        * kwq/WebCoreBridge.h:

WebKit:

Fixed: <rdar://problem/3983628> control-click on WebView is not selecting the word under the cursor (Mail, non-editable WebView)

        Reviewed by rjw.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge selectWordBeforeMenuEvent]): new
        * WebView.subproj/WebView.m:
        (-[WebView _selectWordBeforeMenuEvent]): new SPI
        (-[WebView _setSelectWordBeforeMenuEvent:]): new SPI
        * WebView.subproj/WebViewInternal.h:
        * WebView.subproj/WebViewPrivate.h:

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

15 years ago Fixed: <rdar://problem/3986013> Assertion failure going back after page load error...
cblu [Wed, 2 Feb 2005 21:31:22 +0000 (21:31 +0000)]
Fixed: <rdar://problem/3986013> Assertion failure going back after page load error (no apparent problem in nondebug build)

        Reviewed by rjw.

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _setPrimaryLoadComplete:]): don't set the data source data when the main client is nil

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