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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 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

17 years ago Reviewed by me
kocienda [Wed, 2 Feb 2005 19:53:24 +0000 (19:53 +0000)]
    Reviewed by me

        * khtml/editing/markup.cpp:
        (khtml::createMarkup): Removed debug spam I committed earlier in error.

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

17 years agoMissed adding changelog comments for one of a batch of fixes I landed
kocienda [Wed, 2 Feb 2005 19:23:36 +0000 (19:23 +0000)]
Missed adding changelog comments for one of a batch of fixes I landed

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

17 years ago Reviewed by Darin
kocienda [Wed, 2 Feb 2005 19:09:45 +0000 (19:09 +0000)]
    Reviewed by Darin

        Fix for this bug:

        <rdar://problem/3823109> WebKit should support -toggleBaseWritingDirection: (bidi editing support)

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]): New function that calls through to
        new feature that allows callers to force all properties in a style to be applied as block styles.
        (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]): Removed FIXME comment for something that has been fixed.
        (-[WebHTMLView toggleBaseWritingDirection:]): Implemented.

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

17 years ago Reviewed by Darin
kocienda [Wed, 2 Feb 2005 19:09:36 +0000 (19:09 +0000)]
    Reviewed by Darin

        Fix for this bug:

        <rdar://problem/3823109> WebKit should support -toggleBaseWritingDirection: (bidi editing support)

        Since base writing direction is a paragraph-level property in AppKit, and we use the CSS direction
        property in WebCore, which can be applied to inline elements as well as blocks, a new notion has
        been added to the WebCore apply style logic. It is now possible to force all properties in a
        style declaration to be applied as though they were block properties.

        * khtml/editing/htmlediting.cpp:
        (khtml::ApplyStyleCommand::ApplyStyleCommand): Add an enum and a flag to this command that controls whether to force all
        properties in the style to be applied as block styles. Default is "no", retaining previous behavior.
        (khtml::ApplyStyleCommand::doApply): Switch on new flag to apply styles as before, or force all preoperties to be applied
        as block styles.
        * khtml/editing/htmlediting.h:
        (khtml::ApplyStyleCommand::): Add an enum and a flag, as above.
        * khtml/khtml_part.cpp:
        (KHTMLPart::applyParagraphStyle): New method to force application of all style properties as block styles.
        * khtml/khtml_part.h: Update header declarations.
        * kwq/KWQKHTMLPart.h: Update header declarations.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::baseWritingDirectionForSelectionStart): Accessor to help WebKit do a toggle operation on
        writing direction.
        * kwq/WebCoreBridge.h: Update header declarations.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge applyParagraphStyle:withUndoAction:]): New method to force application of all style properties as block styles.
        (-[WebCoreBridge baseWritingDirectionForSelectionStart]): Accessor to help WebKit do a toggle operation on
        writing direction.

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

17 years ago Fixed <rdar://problem/3985535> QT Plug-in JavaScript support now fails in <embed...
rjw [Wed, 2 Feb 2005 02:51:58 +0000 (02:51 +0000)]
Fixed <rdar://problem/3985535> QT Plug-in JavaScript support now fails in <embed> tag only case

        Reviewed by Maciej.

        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLDocument::tryGet):

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

17 years ago Fixed <rdar://problem/3977727> WebKit should use new SPI to support faster GIF rendering
rjw [Wed, 2 Feb 2005 02:13:43 +0000 (02:13 +0000)]
Fixed <rdar://problem/3977727> WebKit should use new SPI to support faster GIF rendering

Note:  This REQUIRES build >= 3A362 when building on Tiger.

        Reviewed by John.

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

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

17 years ago Written by Darin, reviewed and tested by me
sullivan [Wed, 2 Feb 2005 01:54:18 +0000 (01:54 +0000)]
    Written by Darin, reviewed and tested by me

        - fixed <rdar://problem/3969684> Panther-only: extra blank lines between
        pasted content from Blot

        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::attributedString):
        don't emit paragraph breaks if the margins are tiny; matches what
        we do for plain-text conversion

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

17 years agoversioning for TOT, Safari 2.0 (182+)
vicki [Wed, 2 Feb 2005 01:06:52 +0000 (01:06 +0000)]
versioning for TOT, Safari 2.0 (182+)
the tree is open!

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

17 years agoSafari-182 stamp
vicki [Wed, 2 Feb 2005 00:50:15 +0000 (00:50 +0000)]
Safari-182 stamp

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

17 years agoAdditional part of last checkin that I missed.
rjw [Tue, 1 Feb 2005 23:06:59 +0000 (23:06 +0000)]
Additional part of last checkin that I missed.

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

17 years agoWebKit:
rjw [Tue, 1 Feb 2005 22:28:11 +0000 (22:28 +0000)]
WebKit:
Added new SPI for <rdar://problem/3967063> need spi on WebView to turn of lcd text for Dashboard

        Reviewed by Chris.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (_drawGlyphs):
        * WebView.subproj/WebView.m:
        (-[WebView drawRect:]):
        (-[WebView _dashboardBehavior:]):
        (+[WebView _setShouldUseFontSmoothing:]):
        (+[WebView _shouldUseFontSmoothing]):
        * WebView.subproj/WebViewInternal.h:
        * WebView.subproj/WebViewPrivate.h:

WebBrowser:
Used new SPI (from <rdar://problem/3967063> need spi on WebView to turn of lcd text for Dashboard)

        Reviewed by Chris.

        * EtchedStringButtonCell.m:
        (-[EtchedStringButtonCell drawInteriorWithFrame:inView:]):

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

17 years ago Reviewed by John
kocienda [Tue, 1 Feb 2005 21:23:02 +0000 (21:23 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3985160> Deficiencies in pasting architecture blocking progress on other bugs

        * khtml/editing/html_interchange.h: Move style span text used to mark element added to
        add style to this header.
        * khtml/editing/htmlediting.cpp:
        (khtml::styleSpanClassString): Change to use constant moved to html_interchange.h.
        (khtml::isStyleSpan): New helper function. Checks if this is a span we added to apply style.
        (khtml::CompositeEditCommand::insertNodeBefore): Added an assert to check that the node
        we are inserting before is not the body.
        (khtml::CompositeEditCommand::insertNodeAfter): Ditto, but check is for after.
        (khtml::ReplacementFragment::ReplacementFragment): Added code to process the "default style"
        that is added by the copy code.
        (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): first and last nodes inserted are
        now member variables instead of function locals. Initialize them here.
        (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand): Deref first and last nodes inserted
        if necessary.
        (khtml::ReplaceSelectionCommand::doApply): Change design to fix the bug. Major change is to
        separate out the code that inserts nodes into the tree so additional styling checks can
        be done in a centralized way. Also got rid of the notion of "merging into the end block." That
        concept was just wrong.
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement): Tweak interface now that first and
        last nodes inserted are member variables.
        (khtml::ReplaceSelectionCommand::insertNodeAfterAndUpdateNodesInserted): New helper used
        by replace code to do the stated DOM operation and update state internal to the command.
        This will also be a catch point to handle the kinds of additional style checks needed to
        make paste work right.
        (khtml::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted): Ditto.
        (khtml::ReplaceSelectionCommand::insertNodeBeforeAndUpdateNodesInserted): Ditto.
        (khtml::ReplaceSelectionCommand::updateNodesInserted): Ditto.
        * khtml/editing/htmlediting.h: Update declarations as needed.
        * khtml/editing/markup.cpp:
        (khtml::createMarkup): Adds a "default style" span to the content written to the pasteboard.
        This will help us to fix some of the bugs blocked by the bug above.
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::lastDescendent): New helper.
        * khtml/xml/dom_nodeimpl.h: Ditto.
        * khtml/xml/dom_position.cpp:
        (DOM::Position::upstream): Fixed a bug which would allow the upstream position returned to be
        in unrendered content.
        (DOM::Position::downstream): Ditto.

        * layout-tests/editing/deleting/delete-3775172-fix-expected.txt: Ending positions tweaked due to
        changes in upstream() and downstream() functions.
        * layout-tests/editing/inserting/insert-3851164-fix-expected.txt: Ditto
        * layout-tests/editing/inserting/insert-3907422-fix-expected.txt: Ditto
        * layout-tests/editing/selection/extend-by-character-006-expected.txt: Ditto

        * layout-tests/editing/pasteboard/paste-text-003-expected.txt: Changed what we expect, given
        new behavior of paste code.

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

17 years ago Reviewed by Dave Hyatt.
sullivan [Tue, 1 Feb 2005 01:20:56 +0000 (01:20 +0000)]
    Reviewed by Dave Hyatt.

        - fixed <rdar://problem/3983097> Tabbing on RSS pages gets stuck in search field
        with "full keyboard navigation" off

        * kwq/KWQSlider.h:
        * kwq/KWQSlider.mm:
        (QSlider::focusPolicy):
        Implemented this method for KWQSlider. It is needed for our widget subclasses that
        can become focused in some situations. I missed this when fixing 3949203 because
        it only comes into play when tab-to-controls is on, and because the other relevant
        methods are objective-C methods.

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

17 years ago Fixed: <rdar://problem/3949806> REGRESSION: Source window fails to refresh correctly...
cblu [Tue, 1 Feb 2005 00:40:40 +0000 (00:40 +0000)]
Fixed: <rdar://problem/3949806> REGRESSION: Source window fails to refresh correctly on reload

The data method was being called on WebDataSource before the data was set. This fix makes WebDataSource set the data before releasing the main client instead of waiting for the main client to set it when it is dealloced.

        Reviewed by darin.

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _setData:]): moved within file
        (-[WebDataSource _setPrimaryLoadComplete:]): call _setData: with the data from the main client before letting go of the main client
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient releaseResources]): removed call to _setData: since the data source may need the data before releaseResources is called

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

17 years ago Fixed: <rdar://problem/3946285> Seed: Safari crashed by selecting all at internet...
cblu [Tue, 1 Feb 2005 00:04:34 +0000 (00:04 +0000)]
Fixed: <rdar://problem/3946285> Seed: Safari crashed by selecting all at internet-moebel.com

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _hitViewForEvent:]): new, factored hit test hack to this method
        (-[WebHTMLView _updateMouseoverWithEvent:): call _hitViewForEvent:
        (-[WebHTMLView acceptsFirstMouse:]): call _setMouseDownEvent: and _isSelectionEvent: on the hit HTMLView or else when it's asked to drag it will assert
        (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto

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

17 years ago Reviewed by Darin.
harrison [Mon, 31 Jan 2005 23:52:28 +0000 (23:52 +0000)]
    Reviewed by Darin.

        <rdar://problem/3961239> AX Setting AXFocused on AXScrollArea of AXWebArea will cause keyboard selection change

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView maintainsInactiveSelection]):
        Keep the selection when the new first respomder is our own scrollview, in both editable and non-editaqble content.

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

17 years ago Reviewed by Darin.
harrison [Mon, 31 Jan 2005 23:16:39 +0000 (23:16 +0000)]
    Reviewed by Darin.

        <rdar://problem/3964164> AXWebArea needs to unregister on going invisible

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::detach):
        Detach the AX UIElement for the AXWebArea.

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

17 years ago Reviewed by Darin
harrison [Mon, 31 Jan 2005 23:08:26 +0000 (23:08 +0000)]
    Reviewed by Darin

        <rdar://problem/3850876> AX: button exposed as only an AXImage at http://appleseed.apple.com/ site (<input type=image>)

        * khtml/rendering/render_form.h:
        (khtml::RenderImageButton::isImageButton):
        New.
        * khtml/rendering/render_image.h:
        (khtml::RenderImage::isImageButton):
        New.
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject isImageButton]):
        (-[KWQAccObject actionElement]):
        (-[KWQAccObject role]):
        (-[KWQAccObject accessibilityActionNames]):
        (-[KWQAccObject accessibilityPerformAction:]):
        Represent RenderImageButton elements as buttons instead of images.

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

17 years ago Prevent nil dereference in debug code.
harrison [Mon, 31 Jan 2005 20:12:49 +0000 (20:12 +0000)]
    Prevent nil dereference in debug code.

        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::displayTree):
        Stop when parent is 0, too.

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

17 years ago Reviewed by Dave Hyatt.
sullivan [Mon, 31 Jan 2005 19:14:35 +0000 (19:14 +0000)]
    Reviewed by Dave Hyatt.

        - fixed <rdar://problem/3949203> cannot tab to, within, or out of the RSS sidebar

        * kwq/KWQSlider.mm:
        (-[KWQSlider becomeFirstResponder]):
        (-[KWQSlider resignFirstResponder]):
        (-[KWQSlider nextKeyView]):
        (-[KWQSlider previousKeyView]):
        (-[KWQSlider canBecomeKeyView]):
        (-[KWQSlider nextValidKeyView]):
        (-[KWQSlider previousValidKeyView]):
        Copied these methods from KWQButton. The lack of special handling for first-responder-ness
        here was causing the focus to get "stuck" on the RSS page's slider widget. Added FIXME
        about how it would be nice to share more of this code rather than replicating it in each
        KWQ widget subclass.

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

17 years ago Reviewed by Harrison.
darin [Mon, 31 Jan 2005 18:58:42 +0000 (18:58 +0000)]
    Reviewed by Harrison.

        - fixed <rdar://problem/3980066> Double-click on single character moves insertion point to previous line

        * khtml/khtml_part.cpp:
        (KHTMLPart::selectClosestWordFromMouseEvent): Set affinity too.
        (KHTMLPart::handleMousePressEventTripleClick): Ditto.
        (KHTMLPart::handleMouseMoveEventSelection): Ditto.
        (KHTMLPart::khtmlMouseReleaseEvent): Ditto.

        * khtml/editing/selection.cpp:
        (khtml::Selection::modifyExtendingRightForward): Use endOfLine and endOfDocument.
        (khtml::Selection::modifyMovingRightForward): Ditto.
        (khtml::Selection::modifyExtendingLeftBackward): Use startOfLine and startOfDocument.
        (khtml::Selection::modifyMovingLeftBackward): Ditto.
        (khtml::Selection::validate): Rewrote the section that handles double-click. Two main fixes: 1) use isStartOfLine to
        check for another case where we want to select the word to the right, and 2) use isEndOfParagraph, which seems
        to work correctly in cases where isLastVisiblePositionInParagraph is giving the wrong answer. Also changed the line
        code to use startOfLine/endOfLine and the document code to use startOfDocument/endOfDocument.

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

17 years ago Reviewed by Harrison.
darin [Mon, 31 Jan 2005 18:49:14 +0000 (18:49 +0000)]
    Reviewed by Harrison.

        - fixed <rdar://problem/3935275> unexpected quit scrolling over link; last.fm (works in IE and Firefox)

        * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): By using the correct document, fix the crash reported here.
        The page still crashes when you close the browser window, but it's not trivial to fix so I'll file a new bug after that.

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

17 years ago[3903199] Large background patterns slide around while loading
jens [Mon, 31 Jan 2005 18:48:53 +0000 (18:48 +0000)]
[3903199] Large background patterns slide around while loading

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

17 years ago Reviewed by Ken and Harrison.
darin [Mon, 31 Jan 2005 18:03:15 +0000 (18:03 +0000)]
    Reviewed by Ken and Harrison.

        - fixed <rdar://problem/3947901> REGRESSION (Mail): Pasting paragraph of rich text leaves insertion point before pasted text
        - fixed <rdar://problem/3949790> hitting return after underlined line results in too much or too little underlined
        - fixed <rdar://problem/3981759> nil-deref and crash when pasting just a paragraph break
        - fixed a couple problems I discovered while working with bug 3949790

        * khtml/editing/htmlediting.cpp:
        (khtml::ApplyStyleCommand::applyInlineStyle): Pass StayInBlock to upstream. Without this, we end up going too far
        upstream in the test case in bug 3949790.
        (khtml::ApplyStyleCommand::removeInlineStyle): Pass StayInBlock to upstream and downstream. Same reason as above.
        (khtml::ReplaceSelectionCommand::doApply): Update endPos if inserting a new node and endPos is using that node's
        parent and an offset past the node being inserted. That change fixes a problem with the position of the insertion point
        after pasting into the top level of a document (from test cases in 3947901 and 3949790). When setting insertionPos, use
        code that works when lastNodeInserted is a block rather than a text node. That change fixes a problem where a newline is
        not added when pasting an entire paragraph into the end of a document (from test case in 3949790). Added nil check before
        checking if lastNodeInserted is a <br> element, which fixes the crash when pasting just a paragraph break.

        * khtml/editing/visible_units.h: Filled out the set of calls to add some boolean checks for lines (needed for the
        bug fix), and calls for blocks (not yet implemented), and documents. The document checks may need refinement to
        properly handle documents with a mix of editable and non-editable content, but for now they just refactor code
        and make things a little clearer. Also removed the "include line break" parameter from endOfSentence.
        * khtml/editing/visible_units.cpp:
        (khtml::rootBoxForLine): Added.
        (khtml::startOfLine): Added. Algorithm taken from selectionForLine in selection.cpp.
        (khtml::endOfLine): Ditto.
        (khtml::inSameLine): Added.
        (khtml::isStartOfLine): Added.
        (khtml::isEndOfLine): Added.
        (khtml::endOfSentence): Removed "include line break" parameter.
        (khtml::inSameParagraph): Added a null check.
        (khtml::isStartOfParagraph): Ditto.
        (khtml::isEndOfParagraph): Ditto.
        (khtml::startOfBlock): Added.
        (khtml::endOfBlock): Added.
        (khtml::inSameBlock): Added.
        (khtml::isStartOfBlock): Added.
        (khtml::isEndOfBlock): Added.
        (khtml::startOfDocument): Added.
        (khtml::endOfDocument): Added.
        (khtml::inSameDocument): Added.
        (khtml::isStartOfDocument): Added.
        (khtml::isEndOfDocument): Added.

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

17 years ago Reviewed by John.
darin [Sun, 30 Jan 2005 18:21:08 +0000 (18:21 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3977000> form data set posted for <input type="image" ...> omits name/value pair

        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLInputElementImpl::appendFormData): Append a name/value pair for type IMAGE in addition to the X/Y
        coordinates.

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

17 years ago Reviewed by John.
darin [Sun, 30 Jan 2005 18:08:41 +0000 (18:08 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3974246> REGRESSION (125-180): popup menus are missing item text on Harmony Remote web site

        * khtml/html/html_formimpl.cpp: (DOM::HTMLOptionElementImpl::text): Change this function to traverse the entire tree
        and gather all the text rather than just looking at immediate children.

        * khtml/xml/dom_nodeimpl.h: Added const.
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::traverseNextNode): Added const.
        (NodeImpl::traverseNextSibling): Ditto.
        (NodeImpl::traversePreviousNodePostOrder): Ditto.
        (NodeImpl::detach): Add a missing nil check.

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

17 years agoWebKit:
darin [Sun, 30 Jan 2005 17:52:27 +0000 (17:52 +0000)]
WebKit:

        Reviewed by John.

        - fixed <rdar://problem/3965265> Safari displays HTML as source when default encoding is Hebrew (due to direction overrides added by encoding converter)

        * WebView.subproj/WebPreferencesPrivate.h: Added _systemCFStringEncoding, and changed
        _setInitialDefaultTextEncodingToSystemEncoding to be a class method.
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences _systemCFStringEncoding]): Added. New SPI to be used by Safari. Broken out of
        _setInitialDefaultTextEncodingToSystemEncoding, but also added cases for MacArabic and MacHebrew.
        (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Refactor to use _systemCFStringEncoding.

WebBrowser:

        - fixed <rdar://problem/3965265> Safari displays HTML as source when default encoding is Hebrew (due to direction overrides added by encoding converter)

        * Preferences.subproj/AppearancePreferences.m: (-[AppearancePreferences awakeFromNib]): Use the
        new +[WebPreferences _systemCFStringEncoding] instead of CFStringGetSystemEncoding because the latter
        can return Mac-specific encodings that we never want to use.
        * TextEncodingMenu.m: (-[NSMenu addStandardTextEncodingMenuItemsWithTarget:action:preferredEncoding:]):
        Same as above.

        * AppController.m: (-[AppController applicationDidFinishLaunching:]): Update call to use class method.

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

17 years ago Reviewed by John.
darin [Sun, 30 Jan 2005 17:33:03 +0000 (17:33 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3864536> crash copying text from other apps and pasting in a sticky in dashboard

        * khtml/editing/markup.cpp: (khtml::createFragmentFromText): Added missing ref/deref of newly created element.

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

17 years ago * khtml/css/cssproperties.c: Regenerated with newer gperf.
darin [Sat, 29 Jan 2005 00:38:43 +0000 (00:38 +0000)]
    * khtml/css/cssproperties.c: Regenerated with newer gperf.

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

17 years ago Fixed <rdar://problem/3980389> JavaScript bindings access incorrect runtime object
rjw [Sat, 29 Jan 2005 00:13:35 +0000 (00:13 +0000)]
Fixed <rdar://problem/3980389> JavaScript bindings access incorrect runtime object

Only use special 'back door' property to get the runtime object if thisObj isn't
already a runtime object.

<gratuitous> Cleaned up a couple of strcmp on ClassInfo name.  Used == on
ClassInfo pointer instead.

        Reviewed by Chris.

        * bindings/c/c_utility.cpp:
        (convertValueToNPVariant):
        * bindings/objc/WebScriptObject.mm:
        (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
        * bindings/runtime_method.cpp:
        (RuntimeMethodImp::call):

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

17 years ago[3727680] printing some page with WebKit generates a PDF with a 1x1 image with soft...
jens [Fri, 28 Jan 2005 23:19:13 +0000 (23:19 +0000)]
[3727680] printing some page with WebKit generates a PDF with a 1x1 image with soft mask

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

17 years ago Reviewed by John Sullivan.
harrison [Fri, 28 Jan 2005 23:02:14 +0000 (23:02 +0000)]
    Reviewed by John Sullivan.

        <rdar://problem/3968144> AX need to be able to focus an AXLink by setting AXFocused to true

        * kwq/KWQAccObject.mm:
        (-[KWQAccObject accessibilityPerformAction:]):
        (-[KWQAccObject accessibilityIsAttributeSettable:]):
        Add AXFocused for AXLinks.

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

17 years ago Reviewed by Darin.
harrison [Fri, 28 Jan 2005 21:26:34 +0000 (21:26 +0000)]
    Reviewed by Darin.

        <rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch

        Use AppKit SPI _accessibilityParentForSubview to return KWQAccObject parent of AppKit AX object.

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

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

17 years ago Reviewed by Darin.
harrison [Fri, 28 Jan 2005 21:04:22 +0000 (21:04 +0000)]
    Reviewed by Darin.

        <rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch

        Use AppKit SPI _accessibilityParentForSubview to return KWQAccObject parent of AppKit AX object.

        * kwq/KWQAccObject.mm:
        (-[KWQAccObject _accessibilityParentForSubview:]):
        New.

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

17 years ago WebKit side of: <rdar://problem/3951283> can view pages from the back/forward cache...
cblu [Fri, 28 Jan 2005 19:30:09 +0000 (19:30 +0000)]
WebKit side of: <rdar://problem/3951283> can view pages from the back/forward cache that should be disallowed by Parental Controls

        Reviewed by john.

        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate webView:shouldGoToHistoryItem:]): new private delegate method
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _goToItem:withLoadType:]): call new delegate method
        * WebView.subproj/WebPolicyDelegatePrivate.h:

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