WebKit-https.git
16 years agoSafari-162 stamp for everything except WebBrowser. In these project, CFBundleShortVe...
vicki [Fri, 3 Sep 2004 02:03:16 +0000 (02:03 +0000)]
Safari-162 stamp for everything except WebBrowser.  In these project, CFBundleShortVersionString matches CFBundleVersion (162 in both cases).

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

16 years ago Swap RenderBox and RenderContainer. Make leaf RenderObjects actually derive off...
hyatt [Fri, 3 Sep 2004 00:10:41 +0000 (00:10 +0000)]
Swap RenderBox and RenderContainer.  Make leaf RenderObjects actually derive off of RenderBox instead.

        Reviewed by kocienda

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::addChildToFlow):
        * khtml/rendering/render_box.cpp:
        (RenderBox::RenderBox):
        (RenderBox::detach):
        * khtml/rendering/render_box.h:
        * khtml/rendering/render_container.cpp:
        (RenderContainer::RenderContainer):
        (RenderContainer::detach):
        * khtml/rendering/render_container.h:
        * khtml/rendering/render_flow.cpp:
        (RenderFlow::detach):
        (RenderFlow::dirtyLineBoxes):
        (RenderFlow::createInlineBox):
        (RenderFlow::getAbsoluteRepaintRect):
        (RenderFlow::lowestPosition):
        (RenderFlow::rightmostPosition):
        (RenderFlow::leftmostPosition):
        (RenderFlow::caretPos):
        * khtml/rendering/render_flow.h:
        (khtml::RenderFlow::RenderFlow):
        * khtml/rendering/render_frames.cpp:
        (RenderFrameSet::RenderFrameSet):
        (RenderFrameSet::nodeAtPoint):
        (RenderFrameSet::dump):
        * khtml/rendering/render_frames.h:
        * khtml/rendering/render_inline.cpp:
        (RenderInline::addChildToFlow):
        * khtml/rendering/render_replaced.cpp:
        * khtml/rendering/render_replaced.h:
        (khtml::RenderReplaced::setIntrinsicHeight):
        * khtml/rendering/render_table.cpp:
        (RenderTableSection::RenderTableSection):
        (RenderTableSection::detach):
        (RenderTableSection::setStyle):
        * khtml/rendering/render_table.h:

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

16 years ago Reviewed by me
kocienda [Thu, 2 Sep 2004 23:41:16 +0000 (23:41 +0000)]
    Reviewed by me

        * khtml/editing/htmlediting_impl.h: Fix some inconsistent use of whitespace. No code change.

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

16 years ago Reviewed by Hyatt
kocienda [Thu, 2 Sep 2004 23:25:09 +0000 (23:25 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3786848> REGRESSION (Mail): Typing styles and font panel updates broken

        * khtml/xml/dom_position.cpp:
        (DOM::Position::inRenderedContent): Check for inlines that can have kids is wrong.
        I busted this the other day when making the PositionIterator class iterate over
        all nodes and not just leaves of the DOM tree.

        Update all the following functions. These use the PositionIterator class, but still
        only want to consider leaf nodes.

        (DOM::Position::isFirstRenderedPositionOnLine)
        (DOM::Position::isLastRenderedPositionOnLine)
        (DOM::Position::isLastRenderedPositionInEditableBlock)
        (DOM::Position::inFirstEditableInRootEditableElement)
        (DOM::Position::inLastEditableInRootEditableElement)
        (DOM::Position::inFirstEditableInContainingEditableBlock)
        (DOM::Position::inLastEditableInContainingEditableBlock)

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

16 years agoWebCore:
rjw [Thu, 2 Sep 2004 20:53:54 +0000 (20:53 +0000)]
WebCore:
Support for patterns in <canvas>

        Reviewed by Hyatt.

        * khtml/ecma/kjs_html.cpp:
        (KJS::Context2DFunction::tryCall):
        (Context2D::putValue):
        (drawPattern):
        (ImagePattern::ImagePattern):
        (ImagePattern::~ImagePattern):
        * khtml/ecma/kjs_html.h:
        (KJS::ImagePattern::getPattern):
        (KJS::ImagePattern::pixmap):
        * kwq/KWQPixmap.h:
        * kwq/KWQPixmap.mm:
        (QPixmap::imageRef):
        * kwq/WebCoreImageRenderer.h:

WebKit:
        Support for patterns in <canvas>.
        (These changes attempt to create a CGImageRef from a WebImageRenderer that
        is used by the pattern drawing function.)

        Reviewed by Hyatt.

        * WebCoreSupport.subproj/WebImageRenderer.h:
        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer dealloc]):
        (-[WebImageRenderer finalize]):
        (-[WebImageRenderer imageRef]):
        (_createImageRef):
        * WebView.subproj/WebPDFView.h:
        * WebView.subproj/WebPDFView.m:

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

16 years ago Fix for 3769409, a regression from 10.3.4 to 10.3.5 involving <colgroup>s in malform...
hyatt [Thu, 2 Sep 2004 20:50:48 +0000 (20:50 +0000)]
Fix for 3769409, a regression from 10.3.4 to 10.3.5 involving <colgroup>s in malformed HTML.

        Reviewed by mjs

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::insertNode):

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

16 years agoAdd layout test for crashing colgroup
hyatt [Thu, 2 Sep 2004 20:39:24 +0000 (20:39 +0000)]
Add layout test for crashing colgroup

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

16 years ago Fix for the <colgroup> crasher. Make sure adding to an anonymous box just returns...
hyatt [Thu, 2 Sep 2004 20:38:22 +0000 (20:38 +0000)]
Fix for the <colgroup> crasher.  Make sure adding to an anonymous box just returns immediately. Also eliminate
all the redundant setPos -500000 calls, since we don't need those at all.

        Reviewed by john

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::addChildToFlow):
        (khtml::RenderBlock::makeChildrenNonInline):
        * khtml/rendering/render_inline.cpp:
        (RenderInline::splitFlow):

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

16 years ago Reviewed by John
kocienda [Thu, 2 Sep 2004 17:06:05 +0000 (17:06 +0000)]
    Reviewed by John

        Fix for these bugs:

        <rdar://problem/3729219> REGRESSION (Mail): Caret placement and navigation not working correctly at yahoo.com
        <rdar://problem/3758606> REGRESSION (Mail): Deletions across DIV elements is broken
        <rdar://problem/3784810> REGRESSION (Mail): delete at beginning of line instead deletes to the end of the document (simple reduced test)

        I made some very big improvements to the code which handles deletions of selections
        which span more than one block.

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::CompositeEditCommandImpl::deleteUnrenderedText): An new, overloaded version of this
        function which works on a NodeImpl. The code in this function fell out of some refactoring
        I did in the function with the same name which takes a Position as an argument.
        (khtml::DeleteSelectionCommandImpl::moveNodesToBlock): New function. This new logic provides
        the smarts to fix the bugs listed above and greatly improves the code to perform deleting
        selections which span more than one block.
        (khtml::DeleteSelectionCommandImpl::doApply): Several changes. Constrain downstream positions
        so that they stay in the current block. This was a mistake before I think. Add code to detect
        when the insertion point is a caret at the start of a block. This is a special-case of a
        cross-block selection. Change the end-of-deletion-fixup case to operate on the downstreamEnd
        position of the selection rather than the upstream. This is more logical. Refine the block
        merge logic to handle more cases, like dealing with whitespace.
        * khtml/editing/htmlediting_impl.h: Associated header file changes.
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::rootEditableElement): Add code to clamp the return value to the body element.
        * khtml/xml/dom_selection.cpp:
        (DOM::Selection::validate): Make selection canonicalizations stay in the current block.
        * layout-tests/editing/deleting/delete-block-merge-contents-001-expected.txt:
        * layout-tests/editing/deleting/delete-block-merge-contents-001.html:
        * layout-tests/editing/deleting/delete-block-merge-contents-002-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-002.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-003-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-003.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-004-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-004.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-005-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-005.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-006-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-006.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-007-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-007.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-008-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-008.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-009-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-009.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-010-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-010.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-011-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-011.html: Added.
        * layout-tests/editing/inserting/insert-3654864-fix-expected.txt: Updated with new results.
        * layout-tests/editing/inserting/insert-3654864-fix.html: Updated test to deal better with
        improved select all behavior.
        * layout-tests/editing/selection/select-all-003-expected.txt: Updated with new results.

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

16 years agoAdding layout test for contentWindow for frames
adele [Thu, 2 Sep 2004 00:58:02 +0000 (00:58 +0000)]
Adding layout test for contentWindow for frames

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

16 years ago Add pid to exception messages (to help debug dashboard clients).
rjw [Wed, 1 Sep 2004 23:49:16 +0000 (23:49 +0000)]
Add pid to exception messages (to help debug dashboard clients).

        Reviewed by Chris.

        * kjs/interpreter.cpp:
        (Interpreter::evaluate):

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

16 years ago Fixed panther build glitch.
rjw [Wed, 1 Sep 2004 22:53:29 +0000 (22:53 +0000)]
Fixed panther build glitch.

        Reviewed by Ken.

        * khtml/ecma/kjs_html.cpp:

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

16 years ago Fixed deployment build failure.
cblu [Wed, 1 Sep 2004 22:17:57 +0000 (22:17 +0000)]
Fixed deployment build failure.

        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultUIDelegate menuItemWithTag:]):

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

16 years agoWebCore:
rjw [Wed, 1 Sep 2004 19:38:22 +0000 (19:38 +0000)]
WebCore:
Finished implementation of gradient support in <canvas>.

        Reviewed by John.

        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLElementFunction::tryCall):
        (isGradient):
        (isImagePattern):
        (KJS::Context2DFunction::tryCall):
        (Context2D::putValue):
        (Context2D::Context2D):
        (KJS::GradientFunction::tryCall):
        (gradientCallback):
        (Gradient::commonInit):
        (Gradient::Gradient):
        (Gradient::~Gradient):
        (Gradient::getShading):
        (Gradient::addColorStop):
        (sortStops):
        (Gradient::colorStops):
        * khtml/ecma/kjs_html.h:
        (KJS::ColorStop::ColorStop):
        * khtml/ecma/kjs_html.lut.h:
        (KJS::):

Tests:
        Test page for gradients usage in the <canvas>.

        Reviewed by John.

        * html/canvas_gradient.html: Added.
        * html/gibson.jpg: Added.

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

16 years ago Fix for 3784686, hidden links still active. Make sure text nodes exclude themselves...
hyatt [Wed, 1 Sep 2004 18:22:56 +0000 (18:22 +0000)]
Fix for 3784686, hidden links still active.  Make sure text nodes exclude themselves from nodeAtPoint checks
when hidden.

        * khtml/rendering/render_text.cpp:
        (RenderText::nodeAtPoint):

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

16 years agoAdd layout tests.
hyatt [Wed, 1 Sep 2004 17:29:37 +0000 (17:29 +0000)]
Add layout tests.

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

16 years ago Fixes for 3761411 and 3782201. This patch makes two changes to percentage heights...
hyatt [Wed, 1 Sep 2004 17:19:26 +0000 (17:19 +0000)]
Fixes for 3761411 and 3782201.  This patch makes two changes to percentage heights.  First it makes sure that
replaced elements always flex inside a cell (unlike blocks and tables, which do so only sometimes under bizarre
conditions that are still being guessed at by me).  The second fix is a recognition that empty tables do not
actually honor their heights, and so it is a mistake to try to flex them.

        Reviewed by mjs

        * khtml/rendering/render_table.cpp:
        (RenderTableSection::layoutRows):
        * khtml/rendering/render_table.h:
        (khtml::RenderTable::hasSections):

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

16 years ago Fixed:
cblu [Tue, 31 Aug 2004 22:12:12 +0000 (22:12 +0000)]
Fixed:
<rdar://problem/3699498> Context menu for editable WebViews should provide items like Cut and Paste
<rdar://problem/3781535> REGRESSION (Mail): no context menu after ctrl-clicking a misspelled word

        Reviewed by kocienda.

        * English.lproj/Localizable.strings:
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultUIDelegate menuItemWithTag:]): updated to handle new menu items
        (-[WebDefaultUIDelegate contextMenuItemsForElement:]): renamed from webView:contextMenuItemsForElement:defaultMenuItems:
        (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]): new
        (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): moved, now call contextMenuItemsForElement: or editingContextMenuItemsForElement:
        * WebView.subproj/WebDefaultUIDelegate.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _isSelectionMisspelled]): new
        (-[WebHTMLView _guessesForMisspelledSelection]): new
        (-[WebHTMLView _changeSpellingFromMenu:]): new
        (-[WebHTMLView _ignoreSpellingFromMenu:]): new
        (-[WebHTMLView _learnSpellingFromMenu:]): new
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebUIDelegate.h:

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

16 years ago - fixed B&I build failure
darin [Tue, 31 Aug 2004 21:58:44 +0000 (21:58 +0000)]
    - fixed B&I build failure

        * WebView.subproj/WebHTMLView.m: (-[WebTextCompleteController _buildUI]):
        Work around unwanted warning by adding a cast.

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

16 years ago Reviewed by Hyatt
kocienda [Tue, 31 Aug 2004 21:31:31 +0000 (21:31 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3781572> can't paste text in replied message view

        * khtml/xml/dom2_rangeimpl.cpp:
        (DOM::RangeImpl::toHTML): Copying text placed in an anonymous block was failing
        since the code in here depending on the text node's containing block having an
        element, which it won't. In fact, using containing block is wrong anyway, since
        positioned elements can have containing blocks far from where they live in the
        tree. This "move up to block check" should use the more DOM-wise enclosingBlockFlowElement()
        in NodeImpl.

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

16 years ago Reviewed by John.
mjs [Tue, 31 Aug 2004 20:18:38 +0000 (20:18 +0000)]
    Reviewed by John.

<rdar://problem/3778314> REGRESSION: Can't proceed to survey questions on Lominger's Apple website

Because we will stop parsing when there is a pending redirection,
avoid setting one if no navigation would actually take place
because the number of steps is out of range.

* WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge canGoBackOrForward:]):

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

16 years ago*** empty log message ***
hyatt [Tue, 31 Aug 2004 16:58:06 +0000 (16:58 +0000)]
*** empty log message ***

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

16 years ago Fix for 3742585, sony dhtml menus wrong size. The percentage table height algorithm...
hyatt [Tue, 31 Aug 2004 16:49:33 +0000 (16:49 +0000)]
Fix for 3742585, sony dhtml menus wrong size.  The percentage table height algorithm was wrong.  This patch
unifies the table percentage height algorithm with the block percentage height algorithm and fixes bugs in
both.

        Reviewed by john

        * khtml/rendering/render_box.cpp:
        (RenderBox::calcPercentageHeight):
        * khtml/rendering/render_table.cpp:
        (RenderTable::layout):

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

16 years ago Reviewed by me
kocienda [Tue, 31 Aug 2004 16:39:10 +0000 (16:39 +0000)]
    Reviewed by me

        Added more editing layout tests.

        * layout-tests/editing/deleting/delete-tab-001-expected.txt: Added.
        * layout-tests/editing/deleting/delete-tab-001.html: Added.
        * layout-tests/editing/deleting/delete-tab-002-expected.txt: Added.
        * layout-tests/editing/deleting/delete-tab-002.html: Added.
        * layout-tests/editing/deleting/delete-tab-003-expected.txt: Added.
        * layout-tests/editing/deleting/delete-tab-003.html: Added.
        * layout-tests/editing/deleting/delete-tab-004-expected.txt: Added.
        * layout-tests/editing/deleting/delete-tab-004.html: Added.
        * layout-tests/editing/editing.js: Fixed a little bug in one of the "delayed" commands.
        * layout-tests/editing/inserting/insert-tab-001-expected.txt: Added.
        * layout-tests/editing/inserting/insert-tab-001.html: Added.
        * layout-tests/editing/inserting/insert-tab-002-expected.txt: Added.
        * layout-tests/editing/inserting/insert-tab-002.html: Added.
        * layout-tests/editing/inserting/insert-tab-003-expected.txt: Added.
        * layout-tests/editing/inserting/insert-tab-003.html: Added.
        * layout-tests/editing/inserting/insert-tab-004-expected.txt: Added.
        * layout-tests/editing/inserting/insert-tab-004.html: Added.

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

16 years ago Reviewed by John
kocienda [Tue, 31 Aug 2004 16:29:26 +0000 (16:29 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3782521> Typing newline at start of block does not work

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::InputNewlineCommandImpl::doApply): Change handling of case to insert
        newline at the start of a block.
        * layout-tests/editing/inserting/insert-br-006-expected.txt: Updated layout test with
        new results.

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

16 years agoChecked this in by mistake, rolling back
kocienda [Tue, 31 Aug 2004 16:04:14 +0000 (16:04 +0000)]
Checked this in by mistake, rolling back

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

16 years agoChangeLog
kocienda [Tue, 31 Aug 2004 15:57:09 +0000 (15:57 +0000)]
ChangeLog

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

16 years ago Reviewed by NOBODY (OOPS!).
kocienda [Tue, 31 Aug 2004 15:56:53 +0000 (15:56 +0000)]
    Reviewed by NOBODY (OOPS!).

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::InputNewlineCommandImpl::doApply):
        * layout-tests/editing/deleting/collapse-whitespace-3587601-fix-expected.txt:
        * layout-tests/editing/selection/move-by-line-001-expected.txt:

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

16 years ago Reviewed by me
kocienda [Tue, 31 Aug 2004 15:41:34 +0000 (15:41 +0000)]
    Reviewed by me

        Added more editing layout tests.

        * layout-tests/editing/deleting/collapse-whitespace-3587601-fix-expected.txt: Added.
        * layout-tests/editing/deleting/collapse-whitespace-3587601-fix.html: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-001-expected.txt: Added.
        * layout-tests/editing/deleting/delete-block-merge-contents-001.html: Added.
        * layout-tests/editing/editing.js: Added some more navigation commands.
        * layout-tests/editing/inserting/insert-3778059-fix-expected.txt: Added.
        * layout-tests/editing/inserting/insert-3778059-fix.html: Added.
        * layout-tests/editing/selection/move-by-line-001-expected.txt: Added.
        * layout-tests/editing/selection/move-by-line-001.html: Added.
        * layout-tests/editing/style/typing-style-003-expected.txt: Added.
        * layout-tests/editing/style/typing-style-003.html: Added.

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

16 years ago Reviewed by me
kocienda [Tue, 31 Aug 2004 15:27:18 +0000 (15:27 +0000)]
    Reviewed by me

        Added more editing layout tests. Renamed some others.

        * layout-tests/editing/inserting/insert-br-001-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-001.html: Added.
        * layout-tests/editing/inserting/insert-br-002-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-002.html: Added.
        * layout-tests/editing/inserting/insert-br-003-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-003.html: Added.
        * layout-tests/editing/inserting/insert-br-004-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-004.html: Added.
        * layout-tests/editing/inserting/insert-br-005-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-005.html: Added.
        * layout-tests/editing/inserting/insert-br-006-expected.txt: Added.
        * layout-tests/editing/inserting/insert-br-006.html: Added.
        * layout-tests/editing/inserting/insert-br-case1-expected.txt: Removed.
        * layout-tests/editing/inserting/insert-br-case1.html: Removed.
        * layout-tests/editing/inserting/insert-br-case2-expected.txt: Removed.
        * layout-tests/editing/inserting/insert-br-case2.html: Removed.
        * layout-tests/editing/inserting/insert-br-case3-expected.txt: Removed.
        * layout-tests/editing/inserting/insert-br-case3.html: Removed.
        * layout-tests/editing/inserting/insert-br-case6-expected.txt: Removed.
        * layout-tests/editing/inserting/insert-br-case6.html: Removed.
        * layout-tests/editing/inserting/insert-text-with-newlines-expected.txt: Added.
        * layout-tests/editing/inserting/insert-text-with-newlines.html: Added.

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

16 years ago Reviewed by me
kocienda [Tue, 31 Aug 2004 15:14:57 +0000 (15:14 +0000)]
    Reviewed by me

        * layout-tests/editing/editing.js: Modified typeCharacterCommand so it can accept a character
        as an argument.

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

16 years ago Reviewed by Hyatt
kocienda [Tue, 31 Aug 2004 15:02:27 +0000 (15:02 +0000)]
    Reviewed by Hyatt

        Fix for these bugs:

        <rdar://problem/3777629> REGRESSION (Mail): can't delete blank lines in quoted text in HTML mail replies
        <rdar://problem/3780309> REGRESSION (Mail): can't delete past an empty span in a particular test case
        <rdar://problem/3780315> REGRESSION (Mail): right arrow works incorrectly in a particular test case with an empty span
        <rdar://problem/3780320> REGRESSION (Mail): left arrow works incorrectly in a particular test case with an empty span
        <rdar://problem/3780336> REGRESSION (Mail): down arrow fails in a reduction of a Mail reply test case (seems to be inside a span)

        * khtml/xml/dom_position.cpp:
        (DOM::Position::upstream): If this position's node is a block, use it for the StayInBlock case, not the block's
        enclosing block.
        (DOM::Position::downstream): Ditto.
        (DOM::Position::inRenderedContent): Refine the case for non-text nodes. This was erroneously returning true
        for any empty element (like <span></span>).
        * khtml/xml/dom_positioniterator.cpp: Change the following four functions to consider all nodes, not just
        leaves of the DOM tree. This is a step towards making this iteration less cranky and unpredictable, and
        was necessary to do now to keep the inRenderedContent() change above from breaking editign layout tests.
        (DOM::PositionIterator::peekPrevious)
        (DOM::PositionIterator::peekNext)
        (DOM::PositionIterator::atStart)
        (DOM::PositionIterator::atEnd)
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::fontForCurrentPosition): Check that the position being checked is an element and that the
        element is in rendered content. I ran across some null-check failures while I was coding this fix, and
        the additions seem prudent.

        Updated these layout tests with new results.

        * layout-tests/editing/deleting/delete-3608430-fix-expected.txt:
        * layout-tests/editing/deleting/delete-3775172-fix-expected.txt:
        * layout-tests/editing/deleting/delete-block-contents-001-expected.txt:
        * layout-tests/editing/deleting/delete-block-contents-002-expected.txt:
        * layout-tests/editing/deleting/delete-block-contents-003-expected.txt:
        * layout-tests/editing/deleting/delete-image-004-expected.txt:
        * layout-tests/editing/deleting/delete-trailing-ws-001-expected.txt:
        * layout-tests/editing/editing.js:
        * layout-tests/editing/execCommand/boldSelection-expected.txt:
        * layout-tests/editing/execCommand/italicizeByCharacter-expected.txt:
        * layout-tests/editing/execCommand/modifyForeColorByCharacter-expected.txt:
        * layout-tests/editing/execCommand/print-expected.txt:
        * layout-tests/editing/execCommand/selectAll-expected.txt:
        * layout-tests/editing/selection/extend-by-character-002-expected.txt:
        * layout-tests/editing/selection/extend-by-character-004-expected.txt:
        * layout-tests/editing/selection/extend-by-character-005-expected.txt:
        * layout-tests/editing/selection/extend-by-character-006-expected.txt:
        * layout-tests/editing/selection/select-all-001-expected.txt:
        * layout-tests/editing/selection/select-all-002-expected.txt:
        * layout-tests/editing/selection/select-all-003-expected.txt:

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

16 years agoWebCore:
darin [Tue, 31 Aug 2004 00:49:18 +0000 (00:49 +0000)]
WebCore:

        Reviewed by John.

        - fixed <rdar://problem/3637519> REGRESSION (125-128): unrepro crash in QListBox::sizeForNumberOfLines at istweb.apple.com

        * kwq/KWQListBox.h: Added a clearCachedTextRenderers function.
        * kwq/KWQListBox.mm:
        (itemTextRenderer): Change to use globals that are outside the function, and added retain calls.
        (groupLabelTextRenderer): Ditto.
        (QListBox::clearCachedTextRenderers): Release global text renderers and nil out the globals.

        * kwq/WebCoreBridge.h: Removed updateAllViews; not needed any more.
        * kwq/WebCoreBridge.mm: Ditto.

        * kwq/WebCoreTextRendererFactory.h: Added a clearCaches method.
        * kwq/WebCoreTextRendererFactory.mm:
        (-[WebCoreTextRendererFactory clearCaches]): Added. Tells all the views to repaint after clearing the cached
        text renderers from KWQListBox. To be more elegant, we could generalize the KWQListBox trick, but for now why bother?

        * kwq/WebCoreTextRendererFactory.m: Removed. I needed to put some C++ code in here, so changed the extension to .mm.
        * WebCore.pbproj/project.pbxproj: Removed WebCoreTextRendererFactory.m, and added WebCoreTextRendererFactory.mm.

WebKit:

        Reviewed by John.

        - part of fix for <rdar://problem/3637519> REGRESSION (125-128): unrepro crash in QListBox::sizeForNumberOfLines at istweb.apple.com

        * WebCoreSupport.subproj/WebTextRendererFactory.m: (-[WebTextRendererFactory clearCaches]):
        Call [super clearCaches].

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

16 years ago Reviewed by John.
darin [Mon, 30 Aug 2004 22:58:27 +0000 (22:58 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3528538> can paste a Return character into the Search field at amazon.com, other browsers won't

        * kwq/KWQTextField.mm: (-[KWQTextFieldController controlTextDidChange:]):
        Truncate text before the first line break.

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

16 years ago * kwq/KWQTextCodec.mm: (KWQTextDecoder::convertOneChunkUsingTEC):
darin [Mon, 30 Aug 2004 22:44:45 +0000 (22:44 +0000)]
    * kwq/KWQTextCodec.mm: (KWQTextDecoder::convertOneChunkUsingTEC):
        Added some more assertions I used to track down what looks like a TEC bug.

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

16 years ago Reviewed by Ken.
darin [Mon, 30 Aug 2004 22:36:16 +0000 (22:36 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3779122> No accesskey support on LABEL element

        * khtml/html/html_formimpl.h: Change type of m_currValue to DOMString. Should have been done
        as part of my form data check-in, but harmless to do now. Add accessKeyAction function for
        HTMLLabelElementImpl.
        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLButtonElementImpl::parseHTMLAttribute): Remove conversion of DOMString to QString
        for m_currValue.
        (DOM::HTMLLabelElementImpl::formElement): If there's no "for" attribute, search children for
        the first control.
        (DOM::HTMLLabelElementImpl::accessKeyAction): Forward the accesskey action to the formElement.

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

16 years ago Reviewed by Dave.
darin [Mon, 30 Aug 2004 21:50:53 +0000 (21:50 +0000)]
    Reviewed by Dave.

        - fixed <rdar://problem/3303968> final newline character omitted from <textarea> when parsing a new page

        * khtml/html/htmltokenizer.cpp: (khtml::HTMLTokenizer::processListing): Handle newline pending
        cases as well as space and tab pending spaces at the end of this function. This seems right for
        both scripts and text areas; it's not clear why omittiing the LF is ever needed. Tested by running
        all the layout tests; no regressions.

        - fixed <rdar://problem/3552736> word wrapped text fields that blur/focus when you type move the insertion point strangely (vtext.com)

        * khtml/rendering/render_form.cpp: (RenderTextArea::updateFromElement): Call text() instead of
        calling widget->text() directly. This prevents this function from running in cases where the
        text didn't really change for text areas in wrap mode.

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

16 years ago Reviewed by Dave.
darin [Mon, 30 Aug 2004 21:28:49 +0000 (21:28 +0000)]
    Reviewed by Dave.

        - got rid of ERROR message when running layout tests by implementing text-transform in computed style

        * khtml/css/css_computedstyle.cpp:
        (DOM::numberAsString): Added. Helper that returns "1" rather then "1.0" for integer values.
        (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Fixed use of tabs instead of
        spaces. Fixed switch statements so they don't use default so we get errors if we leave
        a case out. Changed callers to use numberAsString instead of QString::number. Added implementation
        of CSS_PROP_TEXT_TRANSFORM. Added code to prevent falling through to next property when no item
        in a switch statement matches.

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

16 years agoWebCore:
darin [Mon, 30 Aug 2004 20:35:41 +0000 (20:35 +0000)]
WebCore:

        Reviewed by Chris.

        - did work to prepare for uploading files incrementally when submitting forms

        * khtml/misc/formdata.h: Added. Class for holding form data inside WebCore.
        * khtml/misc/formdata.cpp: Added.

        * khtml/html/html_formimpl.h: Added the FormDataList type, changed the formData function parameters
        and made it private, renamed the encoding method to appendFormData and changed the parameters around.
        * khtml/html/html_formimpl.cpp:
        (DOM::FormDataList): Added. Class that replaces the old use of QValueList<QCString> for form data.
        Later we'll change it to accomodate filenames too.
        (DOM::HTMLFormElementImpl::formData): Changed code to use FormDataList intsead of the old encodingList.
        Also changed to return the "OK" result as the function result and put the form data into something
        passed as an "out" parameter; the old way was the other way around.
        (DOM::HTMLFormElementImpl::submit): Change to use FormData rather than a QByteArray when getting the
        form data to submit.
        (DOM::HTMLButtonElementImpl::appendFormData): Rename from encoding, and use the new appendData function
        instead of the old way of doing += to put data on the list.
        (DOM::HTMLInputElementImpl::appendFormData): Ditto.
        (DOM::HTMLSelectElementImpl::appendFormData): Ditto.
        (DOM::HTMLKeygenElementImpl::appendFormData): Ditto.
        (DOM::HTMLTextAreaElementImpl::appendFormData): Ditto.
        (DOM::FormDataList::FormDataList): Added.
        (DOM::FormDataList::appendString): Added.
        (DOM::FormDataList::begin): Added.
        (DOM::FormDataList::end): Added.

        * khtml/khtml_part.h: Changed the type of the submitForm parameter to FormData instead of QByteArray.
        * khtml/khtmlpart_p.h: Changed the type of the submitFormData data member to FormData instead of QByteArray.
        * khtml/khtml_part.cpp: (KHTMLPart::submitForm): Called the new flattenToString function in all the
        code that handles mailto forms. Called the new flatten function in the non-Apple code path.

        * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::submitForm): Pass NSArray for form data instead of NSData.

        * kwq/KWQKJob.h: Use FormData instead of QByteArray. A couple other small cleanups.
        * kwq/KWQKJobClasses.h: Ditto.
        * kwq/KWQKJobClasses.mm:
        (KIO::TransferJobPrivate::TransferJobPrivate): Ditto.
        (KIO::TransferJob::TransferJob): Ditto.
        (KIO::TransferJob::postData): Ditto.
        * kwq/KWQKPartsBrowserExtension.h: Ditto.
        * kwq/KWQLoader.mm:
        (KWQServeRequest): Ditto.
        (KWQServeSynchronousRequest): Ditto.

        * kwq/KWQFormData.h: Added. A function to convert KHTML form data into an NSArray for communication
        with the WebKit side.
        * kwq/KWQFormData.mm: Added.

        * kwq/WebCoreBridge.h: Pass NSArray instead of NSData for form data.

        * kwq/KWQArrayImpl.h: Added a detach member function. The old version would do unnecessary work when
        detach was called on an array that had exactly one reference.
        * kwq/KWQArrayImpl.mm: (KWQArrayImpl::detach): Added.
        * kwq/KWQMemArray.h: (QMemArray::detach): Call through to KWQArrayImpl.

        * kwq/KWQValueList.h:
        (QValueList::first): Added overload for non-const.
        (QValueList::last): Ditto.

        * ForwardingHeaders/misc/formdata.h: Added.
        * WebCore.pbproj/project.pbxproj: Added formdata.h, formdata.cpp, KWQFormData.h, and KWQFormData.cpp.

        * WebCore-tests.exp: Updated for changes to QValueList, and re-sorted.
        * WebCore-combined.exp: Regenerated.

WebKit:

        Reviewed by Chris.

        - did work to prepare for uploading files incrementally when submitting forms

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem _setFormInfoFromRequest:]): Use NSArray instead of NSData for form data.
        (-[WebHistoryItem formData]): Ditto.
        * History.subproj/WebHistoryItemPrivate.h: Ditto.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]): Ditto.
        (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Ditto.
        (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
        * WebCoreSupport.subproj/WebSubresourceClient.h: Ditto.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]): Ditto.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _loadItem:withLoadType:]): Ditto.
        (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
        * WebView.subproj/WebFramePrivate.h: Ditto.

        * WebView.subproj/WebFormDataStream.h: Added.
        * WebView.subproj/WebFormDataStream.m:
        (-[WebFormDataStream initWithFormDataArray:]): Placeholder; not done yet.
        (-[WebFormDataStream formDataArray]): Ditto.
        * WebKit.pbproj/project.pbxproj: Added WebFormDataStream files.

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

16 years ago Reviewed by Ken.
darin [Mon, 30 Aug 2004 18:00:15 +0000 (18:00 +0000)]
    Reviewed by Ken.

        - improved multiple submit logic in preparation for making command-click on a form
          button load a form in another frame

        * kwq/KWQKHTMLPart.h: Added const to a bunch of member functions for cleanup.
        Added prepareForUserAction member function.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::submitForm): Simplified logic and removed special case for "http" and "https".
        (KWQKHTMLPart::renderer): Added const.
        (KWQKHTMLPart::keyEvent): Added call to prepareForUserAction.
        (KWQKHTMLPart::lastEventIsMouseUp): Added const.
        (KWQKHTMLPart::eventMayStartDrag): Added const.
        (KWQKHTMLPart::mouseDown): Added call to prepareForUserAction.
        (KWQKHTMLPart::overrideMediaType): Added const.
        (KWQKHTMLPart::canGoBackOrForward): Added const.
        (KWQKHTMLPart::prepareForUserAction): Added. Clears _submittedFormURL.
        * kwq/KWQAccObject.mm: (-[KWQAccObject accessibilityPerformAction:]): Added call to prepareForUserAction.

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

16 years ago Reviewed by John
kocienda [Mon, 30 Aug 2004 17:43:00 +0000 (17:43 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3762231> REGRESSION (Mail): tab key inserts a single space

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::isTab): New helper. Checks a DOMString to see if it is one character and
        that character is a tab.
        (khtml::InputTextCommandImpl::execute): Trap tabs before handling insertion of
        other kinds of whitespace. Treat a tab like four spaces. Rearrange the code to
        update the ending position after the text insertion to cover the new tab case
        where the amount of advance is not the same as the number of character in the
        passed-in DOMString (i.e. tabs expand to four characters).

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

16 years ago Reviewed by Ken.
sullivan [Mon, 30 Aug 2004 17:39:40 +0000 (17:39 +0000)]
    Reviewed by Ken.

        - WebKit part of fix for <rdar://problem/3607720> myFrame.print() prints the window
        but should only print the frame

        * WebView.subproj/WebUIDelegatePrivate.h:
        declare new delegate method that includes which frame to print

        * WebView.subproj/WebDefaultUIDelegate.m:
        (-[WebDefaultUIDelegate webView:printFrameView:]):
        implement default (no-op) version of new delegate method

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge print]):
        call new delegate method if available, otherwise call old delegate method, for
        backward compatibility.

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

16 years ago Reviewed by John.
kocienda [Mon, 30 Aug 2004 15:38:31 +0000 (15:38 +0000)]
    Reviewed by John.
        Checked in by Ken

        Ken comments: It looks like Maciej forgot to land this when he checked in the
        WebCore portion of this change.

        <rdar://problem/3778314> REGRESSION: Can't proceed to survey questions on Lominger's Apple website

        Because we will stop parsing when there is a pending redirection,
        avoid setting one if no navigation would actually take place
        because the number of steps is out of range.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge canGoBackOrForward:]):

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

16 years ago Reviewed by Chris
kocienda [Mon, 30 Aug 2004 15:13:23 +0000 (15:13 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3779706> plain text on pasteboard loses indentation when pasted into Blot

        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::documentFragmentWithText): New function that takes over the code from
        KWQKHTMLPart and improves it to handle converting tabs and spaces for suitable
        display in HTML.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge documentFragmentWithText:]): Move smarts from here to KWQKHTMLPart.

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

16 years ago Reviewed by John.
mjs [Sun, 29 Aug 2004 21:47:25 +0000 (21:47 +0000)]
    Reviewed by John.

<rdar://problem/3778314> REGRESSION: Can't proceed to survey questions on Lominger's Apple website

Because we will stop parsing when there is a pending redirection,
avoid setting one if no navigation would actually take place
because the number of steps is out of range.

        * khtml/khtml_part.cpp:
        (KHTMLPart::scheduleHistoryNavigation):
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::canGoBackOrForward):
        * kwq/KWQKPartsBrowserInterface.h:
        * kwq/WebCoreBridge.h:

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

16 years ago Reviewed by Chris.
mjs [Sat, 28 Aug 2004 00:31:08 +0000 (00:31 +0000)]
    Reviewed by Chris.

- fixed <rdar://problem/3778043> REGRESSION: innerHTML is broken, breaks automated iBench testing
- also fixed outerHTML, which would spill over past the node for whch it was supposed to get HTML

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

- added new layout tests to cover the problems I fixed

* layout-tests/fast/innerHTML/001-expected.txt: Added.
        * layout-tests/fast/innerHTML/001.html: Added.
        * layout-tests/fast/innerHTML/002-expected.txt: Added.
        * layout-tests/fast/innerHTML/002.html: Added.
        * layout-tests/fast/innerHTML/003-expected.txt: Added.
        * layout-tests/fast/innerHTML/003.html: Added.

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

16 years ago*** empty log message ***
hyatt [Sat, 28 Aug 2004 00:07:36 +0000 (00:07 +0000)]
*** empty log message ***

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

16 years ago Fix for 3739239, getComputedStyle of top not being implemented broke a site that...
hyatt [Sat, 28 Aug 2004 00:06:51 +0000 (00:06 +0000)]
Fix for 3739239, getComputedStyle of top not being implemented broke a site that checked for it.

        Reviewed by kocienda

        * khtml/css/css_computedstyle.cpp:
        (DOM::valueForLength):
        (DOM::CSSComputedStyleDeclarationImpl::getPositionOffsetValue):
        (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
        * khtml/css/css_computedstyle.h:

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

16 years ago Reviewed by Ken.
sullivan [Fri, 27 Aug 2004 22:39:39 +0000 (22:39 +0000)]
    Reviewed by Ken.

        Tweaked option-tab handling to match good suggestion from Tim Omernick of OmniWeb

        * kwq/KWQTextArea.mm:
        removed override of textDidChange:
        (-[KWQTextAreaTextView keyDown:]):
        moved option-tab handling that was in textDidChange to here. Rearranged existing code
        a little for clarity.

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

16 years agoAdding layout test for contentWindow for iframe
adele [Fri, 27 Aug 2004 22:03:51 +0000 (22:03 +0000)]
Adding layout test for contentWindow for iframe

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

16 years ago Reviewed by Darin.
adele [Fri, 27 Aug 2004 21:52:24 +0000 (21:52 +0000)]
    Reviewed by Darin.

Fix for:
<rdar://problem/3689949> Provide contentWindow access on an iframe

        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLElement::getValueProperty): added cases for contentWindow for frames and iframes
        * khtml/ecma/kjs_html.h: added contentWindow to the list of properties for frames and iframes
        * khtml/ecma/kjs_html.lut.h: regenerated file
        * khtml/html/html_baseimpl.cpp:
        (HTMLFrameElementImpl::contentPart): factored out old contentDocument code to return KHTMLPart for frame
        (HTMLFrameElementImpl::contentDocument): now just gets the contentDocument from contentPart
        * khtml/html/html_baseimpl.h: added declaration for contentPart

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

16 years ago Reviewed by Chris
kocienda [Fri, 27 Aug 2004 19:07:19 +0000 (19:07 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3756997> WebKit aggressive in making pasted text into a URL, even when it's not much like a URL

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): Don't try so hard to coerce data
        on the pasteboard into a URL, and do not make an anchor with an href for any URLs that are
        explicitly present on the pasteboard. Also, move URL pasteboard type check beneath the RTF
        checks.

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

16 years agoback to 2.0, v162u for tip of tree
vicki [Fri, 27 Aug 2004 18:59:33 +0000 (18:59 +0000)]
back to 2.0, v162u for tip of tree

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

16 years agoSafari-161 stamp
vicki [Fri, 27 Aug 2004 18:49:16 +0000 (18:49 +0000)]
Safari-161 stamp

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

16 years ago Reviewed by Darin
kocienda [Fri, 27 Aug 2004 17:26:02 +0000 (17:26 +0000)]
    Reviewed by Darin

        Fix for this bug:

        <rdar://problem/3778059> Odd behaviour when editing between blockquote elements

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::CompositeEditCommandImpl::deleteUnrenderedText): This function should not move
        the selection out of the current block, ever. This is exactly what the bug reported.
        What was I thinking? Now, the code looks at the passed-in position and then the equivalent
        upstream and downstream positions to see if the selection can be placed there after the
        delete, and settles on the block containing the passed-in position as a fallback.
        * layout-tests/editing/inserting/insert-3778059-fix-expected.txt: Added.
        * layout-tests/editing/inserting/insert-3778059-fix.html: Added.

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

16 years ago Boiler plate for canvas gradients and patterns.
rjw [Fri, 27 Aug 2004 01:40:06 +0000 (01:40 +0000)]
    Boiler plate for canvas gradients and patterns.

        Reviewed by John.

        * khtml/ecma/kjs_html.cpp:
        (KJS::Context2DFunction::tryCall):
        (Context2D::tryPut):
        (Context2D::~Context2D):
        (KJS::GradientFunction::tryCall):
        (Gradient::Gradient):
        (Gradient::tryGet):
        (Gradient::getValueProperty):
        (Gradient::tryPut):
        (Gradient::putValue):
        (Gradient::~Gradient):
        (ImagePattern::ImagePattern):
        (ImagePattern::tryGet):
        (ImagePattern::getValueProperty):
        (ImagePattern::tryPut):
        (ImagePattern::putValue):
        (ImagePattern::~ImagePattern):
        * khtml/ecma/kjs_html.h:
        (KJS::Gradient::toBoolean):
        (KJS::Gradient::classInfo):
        (KJS::Gradient::):
        (KJS::ImagePattern::toBoolean):
        (KJS::ImagePattern::classInfo):
        (KJS::ImagePattern::):
        * khtml/ecma/kjs_html.lut.h:
        (KJS::):

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

16 years ago Fixed build failure on Panther.
cblu [Fri, 27 Aug 2004 01:02:17 +0000 (01:02 +0000)]
Fixed build failure on Panther.

        Reviewed by john.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): ifdef'd out call to AppKit SPI
        (-[WebHTMLView _attributeStringFromDOMRange:]): ditto

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

16 years ago Tweak to last check-in.
cblu [Fri, 27 Aug 2004 00:38:25 +0000 (00:38 +0000)]
Tweak to last check-in.

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

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

16 years ago Fixed:
cblu [Fri, 27 Aug 2004 00:10:46 +0000 (00:10 +0000)]
Fixed:
<rdar://problem/3546412> support for pasting and drag and dropping of RTF and RTFD to editable WebViews
<rdar://problem/3745345> use AppKit for converting from DOM to RTF

        Reviewed by rjw.

        * DOM.subproj/WebDOMOperations.m:
        (-[DOMDocument _documentRange]): new
        * DOM.subproj/WebDOMOperationsPrivate.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): call AppKit SPI to get a document fragment from an attributed string
        (-[WebHTMLView string]): added a FIXME
        (-[WebHTMLView _attributeStringFromDOMRange:]): new, calls AppKit SPI that creates an attributed string from a DOM Range
        (-[WebHTMLView attributedString]): call _attributeStringFromDOMRange:, fallback to old code if it returns nil
        (-[WebHTMLView selectedAttributedString]): ditto

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

16 years ago Reviewed by John
kocienda [Thu, 26 Aug 2004 23:54:40 +0000 (23:54 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3777899> REGRESSION (Mail): only first of several misspelled words separated by
        carriage returns is marked

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::TypingCommandImpl::markMisspellingsAfterTyping): Give the spellchecker a slightly larger
        selection to work with while typing. This should preclude bugs of this type.

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

16 years ago Reviewed by Chris
kocienda [Thu, 26 Aug 2004 22:43:47 +0000 (22:43 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3777804> Deleting all content in a document can result in giant tall-as-window insertion point

        * khtml/rendering/render_box.cpp:
        (RenderBox::caretPos): Always use the font height for calculating the caret height in
        non-replaced elements (like blocks), rather than the height of the box.

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

16 years ago Reviewed by me
kocienda [Thu, 26 Aug 2004 22:20:47 +0000 (22:20 +0000)]
    Reviewed by me

        Silly me. Forgot to add this file before.

        * layout-tests/editing/inserting/insert-3775316-fix-expected.txt: Added.

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

16 years ago Fixed: <rdar://problem/3774178> Plugin hooks for selected state aren't being called
cblu [Thu, 26 Aug 2004 22:19:31 +0000 (22:19 +0000)]
Fixed: <rdar://problem/3774178> Plugin hooks for selected state aren't being called

        Reviewed by darin.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge setIsSelected:forView:]): don't forget colons in method names

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

16 years ago Fixed: <rdar://problem/3768439> can't click in WebView in Carbon WebKit apps (GetEve...
cblu [Thu, 26 Aug 2004 21:59:25 +0000 (21:59 +0000)]
Fixed: <rdar://problem/3768439> can't click in WebView in Carbon WebKit apps (GetEventPlatformEventRecord returns false)

        Reviewed by rjw.

        * Carbon.subproj/HIWebView.m:
        (Click): use WebGetEventPlatformEventRecord not GetEventPlatformEventRecord
        (MouseUp): ditto
        (MouseMoved): ditto
        (MouseDragged): ditto
        (MouseWheelMoved): ditto
        (WindowHandler): ditto
        (HIWebViewEventHandler): ditto
        (UpdateObserver): ditto
        (WebGetEventPlatformEventRecord): Call GetEventPlatformEventRecord, if that fails fallback to the current event. This is code Eric Schlegel to me to use.

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

16 years ago Fix for 3777172, crash from nested colgroup. Don't allow nested table sections...
hyatt [Thu, 26 Aug 2004 21:36:31 +0000 (21:36 +0000)]
Fix for 3777172, crash from nested colgroup.  Don't allow nested table sections or col groups.

        Reviewed by darin

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::insertNode):

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

16 years ago Reviewed by Hyatt
kocienda [Thu, 26 Aug 2004 21:34:20 +0000 (21:34 +0000)]
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3775316> document sprouts an extra newline character at the end

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::InputNewlineCommandImpl::doApply): There was in insufficient check
        in the code which adds extra BR elements at the ends of blocks, which we do
        to work around the fact that BR elements, when they are the last element in a
        block, do not render. Now the code sees whether there already is one of these
        extra BR's in the document and won't add and "extra" extra.
        * layout-tests/editing/inserting/insert-3775316-fix.html: Added.

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

16 years ago Fix for 3710721 and 3504114, crashes because of bad ownership model for list markers.
hyatt [Thu, 26 Aug 2004 17:37:45 +0000 (17:37 +0000)]
Fix for 3710721 and 3504114, crashes because of bad ownership model for list markers.

        Reviewed by mjs

        * khtml/rendering/render_container.cpp:
        (RenderContainer::detach):
        * khtml/rendering/render_list.cpp:
        (RenderListItem::setStyle):
        (RenderListItem::detach):
        (RenderListItem::updateMarkerLocation):
        * khtml/rendering/render_list.h:

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

16 years ago Reviewed by John
kocienda [Thu, 26 Aug 2004 16:46:46 +0000 (16:46 +0000)]
    Reviewed by John

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::ApplyStyleCommandImpl::doApply): Remove the StayInBlock modifier from the
        call to upstream when passing the start position to removeStyle(). This makes the
        start position sufficiently upstream so that all relevant style tags are removed.
        (khtml::ApplyStyleCommandImpl::removeStyle): Pass the start position to nodeFullySelected.
        (khtml::ApplyStyleCommandImpl::nodeFullySelected): Change interface so start position
        for calculation is passed in, rather than recalculating it every time.
        * khtml/editing/htmlediting_impl.h: nodeFullySelected interface change.
        * khtml/xml/dom_position.h: Add a comment about the working of upstream() and
        downstream().

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

16 years ago Reviewed by me
kocienda [Thu, 26 Aug 2004 16:17:31 +0000 (16:17 +0000)]
    Reviewed by me

        Fix garbled contenteditable attribute. I must have checked
        this in with a typo.

        * layout-tests/editing/deleting/delete-3775172-fix.html

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

16 years ago Reviewed by John and Maciej.
kdecker [Thu, 26 Aug 2004 00:49:32 +0000 (00:49 +0000)]
    Reviewed by John and Maciej.

- Fixes SAP bug <rdar://problem/3751295> Personalize link at the
  top gives an error in the pop-up window.

        * khtml/ecma/kjs_window.cpp:
        (WindowFunc::tryCall): Passes a referrer to KHTMLPart::begin()

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

16 years ago Updated to <canvas> API to match the spec. (Still need
rjw [Wed, 25 Aug 2004 23:40:58 +0000 (23:40 +0000)]
Updated to <canvas> API to match the spec.  (Still need
to implement gradients and patterns.)

        Reviewed by Ken.

        * khtml/ecma/kjs_html.cpp:
        (KJS::Context2DFunction::tryCall):
        (Context2D::getValueProperty):
        (Context2D::drawingContext):
        (Context2D::colorRefFromValue):
        (Context2D::colorFromValue):
        (Context2D::setShadow):
        (Context2D::putValue):
        (Context2D::save):
        (Context2D::restore):
        (Context2D::Context2D):
        * khtml/ecma/kjs_html.h:
        (KJS::Context2D::):
        * khtml/ecma/kjs_html.lut.h:
        (KJS::):

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

16 years ago Reviewed by me
kocienda [Wed, 25 Aug 2004 21:54:49 +0000 (21:54 +0000)]
    Reviewed by me

        * layout-tests/editing/deleting/delete-3775172-fix.html: Wrong version of test checked in
        a moment ago.

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

16 years ago Reviewed by me
kocienda [Wed, 25 Aug 2004 21:54:10 +0000 (21:54 +0000)]
    Reviewed by me

        Added test case for <rdar://problem/3775172> Blot crashes after typing one character then deleting it

        * layout-tests/editing/deleting/delete-3775172-fix-expected.txt: Added.
        * layout-tests/editing/deleting/delete-3775172-fix.html: Added.

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

16 years ago Reviewed by me
kocienda [Wed, 25 Aug 2004 21:49:35 +0000 (21:49 +0000)]
    Reviewed by me

        * layout-tests/editing/style/style-3690704-fix-expected.txt: Fewer styling spans added
        on this test as a result of the previously-checked-in fix.

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

16 years ago Reviewed by John
kocienda [Wed, 25 Aug 2004 21:34:02 +0000 (21:34 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3775214> BR elements cause unnecessary spans to be added when applying style

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::ApplyStyleCommandImpl::doApply): BR elements can be grouped more liberally with other nodes
        now in the iteration when attempting to find nodes that can be styled together with one span.
        * layout-tests/editing/style/style-3690704-fix-expected.txt: Updated with new results after
        bug fix.

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

16 years ago Reviewed by John
kocienda [Wed, 25 Aug 2004 21:33:39 +0000 (21:33 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3775172> Blot crashes after typing one character then deleting it

        * khtml/css/css_computedstyle.cpp:
        (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Bail early if the element
        being queried does not have a renderer or that renderer does not have a style. Prevents
        a crash in the cases that it does not.
        * khtml/editing/htmlediting_impl.cpp:
        (khtml::DeleteSelectionCommandImpl::doApply): Add one more case to deleting when the
        start and end nodes are different. If the downstream end node is the last node in the
        block, then it may need to be deleted completely. Before this patch, the code
        erroneously assumed that any deletion in this node had to be trimming of a text node.
        This was asserted, and the description in 3775172 shows a simple case where this assertion
        does not hold. The additional case and associated checks now make it all better.
        * layout-tests/editing/deleting/delete-3775172-fix.html: Added.

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

16 years ago Fix for 3365086, large tables crash Safari. Make sure to use ints rather than short...
hyatt [Wed, 25 Aug 2004 21:19:35 +0000 (21:19 +0000)]
Fix for 3365086, large tables crash Safari.  Make sure to use ints rather than shorts for row and column
counts.  Also fix a pathological array resize scenario for tables as rows are added.

        Reviewed by darin

        * khtml/rendering/render_table.cpp:
        (RenderTable::splitColumn):
        (RenderTable::appendColumn):
        (RenderTableSection::RenderTableSection):
        (RenderTableSection::ensureRows):
        (RenderTableSection::setCellWidths):
        (RenderTableSection::calcRowHeight):
        (RenderTableSection::layoutRows):
        (RenderTableSection::paint):
        (RenderTableSection::recalcCells):
        (RenderTableSection::clearGrid):
        * khtml/rendering/render_table.h:
        (khtml::RenderTableSection::numRows):

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

16 years ago To save memory in the common case, move the margin***Collapse variables into the...
hyatt [Wed, 25 Aug 2004 20:01:00 +0000 (20:01 +0000)]
To save memory in the common case, move the margin***Collapse variables into the CSS3 struct instead of
bloating the surround struct.

        * khtml/rendering/render_style.cpp:
        (StyleSurroundData::StyleSurroundData):
        (StyleSurroundData::operator==):
        (marginBottomCollapse):
        (StyleCSS3NonInheritedData::operator==):
        (RenderStyle::diff):
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::marginTopCollapse):
        (khtml::RenderStyle::marginBottomCollapse):
        (khtml::RenderStyle::setMarginTopCollapse):
        (khtml::RenderStyle::setMarginBottomCollapse):

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

16 years ago Fix the "extra space in TypePad blogs" Emerson problem by adding the ability to...
hyatt [Wed, 25 Aug 2004 19:04:54 +0000 (19:04 +0000)]
Fix the "extra space in TypePad blogs" Emerson problem by adding the ability to collapse away margins.
Also added support for explicitly preventing margin collapsing.

        Reviewed by mjs

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * khtml/css/cssproperties.c:
        (hash_prop):
        (findProp):
        * khtml/css/cssproperties.h:
        * khtml/css/cssproperties.in:
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyProperty):
        * khtml/css/cssvalues.c:
        (hash_val):
        (findValue):
        * khtml/css/cssvalues.h:
        * khtml/css/cssvalues.in:
        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::isSelfCollapsingBlock):
        (khtml::RenderBlock::layoutBlockChildren):
        * khtml/rendering/render_style.cpp:
        (StyleSurroundData::StyleSurroundData):
        (StyleSurroundData::operator==):
        (RenderStyle::diff):
        * khtml/rendering/render_style.h:
        (khtml::):
        (khtml::RenderStyle::marginTopCollapse):
        (khtml::RenderStyle::marginBottomCollapse):
        (khtml::RenderStyle::setMarginTopCollapse):
        (khtml::RenderStyle::setMarginBottomCollapse):
        (khtml::RenderStyle::initialMarginTopCollapse):
        (khtml::RenderStyle::initialMarginBottomCollapse):

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

16 years agoset the TOT version number to '161u', since we burned 160 on ParisExpo-2004-branch
vicki [Wed, 25 Aug 2004 00:33:17 +0000 (00:33 +0000)]
set the TOT version number to '161u', since we burned 160 on ParisExpo-2004-branch

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

16 years ago Fixed with help from Trey:
cblu [Tue, 24 Aug 2004 23:37:23 +0000 (23:37 +0000)]
Fixed with help from Trey:
<rdar://problem/3764856> REGRESSION !25-154): Safari accepts mouse clicks (follows links) when not key

        Reviewed by rjw.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _isSelectionEvent:]): brought back from CVS
        (-[WebHTMLView acceptsFirstMouse:]): only call eventMayStartDrag if _isSelectionEvent returns YES since we only want to allow selection dragging on the first mouse down
        (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto

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

16 years agoWebCore:
kocienda [Tue, 24 Aug 2004 23:23:27 +0000 (23:23 +0000)]
WebCore:

        Reviewed by Hyatt

        Improved the ability of the bridge to report selection state.

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::TypingCommandImpl::doApply): Bail when there is no selection.
        * kwq/WebCoreBridge.h: Added an enum to report selection state. These constants
        mirror those used in DOM::Selection.
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge selectionState]): Replacement for haveSelection. Returns a value
        from an enum telling whether the selection is in the None, Caret, or Range state,
        rather than just true/false for the Range state as it did before.

WebKit:

        Reviewed by Hyatt

        Improved the checks used to see if certain operations can be done based
        on the state of the selection and whether the selection is editable. I
        added some helpers and improved some others to assist in making these
        determinations.

        This helps to fix this bug:
        <rdar://problem/3764987> Crash after adding newline to quoted text

        Since some editing methods expect the the selection to be in a certain state
        in order to work, these checks help obviate crashes like 3764987.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _writeSelectionToPasteboard:]): _haveSelection name changed to _hasSelection.
        (-[WebHTMLView _canCopy]): Checks to see if state is appropriate to perform this operation.
        (-[WebHTMLView _canCut]): Ditto. Function added.
        (-[WebHTMLView _canDelete]): Ditto. Function refined.
        (-[WebHTMLView _canPaste]): Ditto. Function refined.
        (-[WebHTMLView _canType]): Ditto. Function added.
        (-[WebHTMLView _hasSelection]): Name changed from _haveSelection.
        (-[WebHTMLView _hasSelectionOrInsertionPoint]): Added.
        (-[WebHTMLView _isEditable]): Added.
        (-[WebHTMLView takeFindStringFromSelection:]): _haveSelection name changed to _hasSelection.
        (-[WebHTMLView validateUserInterfaceItem:]): Ditto
        (-[WebHTMLView validRequestorForSendType:returnType:]): Ditto
        (-[WebHTMLView keyDown:]):
        (-[WebHTMLView copy:]): Uses new _canCopy check.
        (-[WebHTMLView cut:]): Uses new _canCut check.
        (-[WebHTMLView delete:]): Now uses _canDelete check.
        (-[WebHTMLView paste:]): Now uses _canPaste check.
        (-[WebHTMLView _updateFontPanel]): _haveSelection name changed to _hasSelection.
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebView.m:
        (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): Use selectionState check to
        determine whether or not operation can be done.

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

16 years ago Fixed <rdar://problem/3770469> Some PDFs open with line of previous page...
rjw [Tue, 24 Aug 2004 21:17:30 +0000 (21:17 +0000)]
    Fixed <rdar://problem/3770469> Some PDFs open with line of previous page above PDF view

        Set height resize flags on WebPDFView.

        Reviewed by Chris.

        * WebView.subproj/WebPDFView.m:
        (-[WebPDFView initWithFrame:]):

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

16 years ago Make sure the ifdef XSLT is present for Panther.
hyatt [Tue, 24 Aug 2004 20:39:38 +0000 (20:39 +0000)]
Make sure the ifdef XSLT is present for Panther.

        * khtml/xml/xml_tokenizer.cpp:
        (khtml::XMLTokenizer::insertErrorMessageBlock):

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

16 years ago Polish the XML error message so that it indicates when a document is the result...
hyatt [Tue, 24 Aug 2004 20:38:54 +0000 (20:38 +0000)]
Polish the XML error message so that it indicates when a document is the result of an XSL transformation
when reporting line/col #s.

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::applyXSLTransform):
        * khtml/xml/xml_tokenizer.cpp:
        (khtml::XMLTokenizer::insertErrorMessageBlock):
        * khtml/xsl/xslt_processorimpl.cpp:
        (DOM::XSLTProcessorImpl::documentFromXMLDocPtr):

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

16 years ago Add support for Atom and RSS MIME types to the set of XML types.
hyatt [Tue, 24 Aug 2004 20:23:23 +0000 (20:23 +0000)]
Add support for Atom and RSS MIME types to the set of XML types.

        Reviewed by rjw

        * khtml/ecma/xmlhttprequest.cpp:
        (KJS::XMLHttpRequest::getValueProperty):
        * khtml/khtml_part.cpp:
        (KHTMLPart::begin):
        * khtml/misc/loader.cpp:
        (CachedXSLStyleSheet::CachedXSLStyleSheet):
        (CachedXBLDocument::CachedXBLDocument):
        * khtml/xml/dom_xmlimpl.cpp:
        (DOM::ProcessingInstructionImpl::checkStyleSheet):

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

16 years ago Add Atom and RSS MIME types to set of supported XML types.
hyatt [Tue, 24 Aug 2004 20:22:20 +0000 (20:22 +0000)]
Add Atom and RSS MIME types to set of supported XML types.

        Reviewed by rjw

        * WebView.subproj/WebDataSource.m:
        (+[WebDataSource _repTypesAllowImageTypeOmission:]):
        * WebView.subproj/WebFrameView.m:
        (+[WebFrameView _viewTypesAllowImageTypeOmission:]):

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

16 years agoChange the file so that it isn't even close to RSS any more, since our sniffing code...
hyatt [Tue, 24 Aug 2004 18:37:20 +0000 (18:37 +0000)]
Change the file so that it isn't even close to RSS any more, since our sniffing code is broken.

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

16 years ago Fixed: <rdar://problem/3746447> hang loading geocities.com/cinemaorchestra
cblu [Tue, 24 Aug 2004 18:02:16 +0000 (18:02 +0000)]
Fixed: <rdar://problem/3746447> hang loading geocities.com/cinemaorchestra

        Reviewed by john.

        * khtml/rendering/render_frames.cpp:
        (RenderPartObject::updateWidget): do nothing if the src URL is the same as the part's URL

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

16 years ago Reviewed by Chris
kocienda [Tue, 24 Aug 2004 17:00:08 +0000 (17:00 +0000)]
    Reviewed by Chris

        Fix for this bug:

        <rdar://problem/3773564> REGRESSION (125-159): Code to remove HTML styles before applying new HTML styles is broken

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::ApplyStyleCommandImpl::doApply): Unrelated change to constrain downstream position of selection
        start to block boundaries. This is a new feature of the downstream function and I missed this usage
        when adding the feature.
        (khtml::ApplyStyleCommandImpl::removeCSSStyle): There once was code to remove style attributes from spans
        which became emptied as a result of removing CSS properties, but I do not see such code in the
        tree any more. A quick review of the ChangeLog did not reveal anything. I do not remember making such
        a change myself...

        In any case, I have restored logic to prune out styling spans we insert if the process of
        removing styles caused a span-plus-styles node to become emptied of markup which changes the style
        of its contents. This fixes the bug.

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

16 years ago Reviewed by John
kocienda [Tue, 24 Aug 2004 15:23:51 +0000 (15:23 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3765535> paste of text with newlines into text with newlines results in broken doc, crash

        This is a "belt and suspenders" fix. The issue is with the paste code path which was creating
        zero-length DOM text nodes when a selection being pasted ended with a newline. The normal
        code path for parsing HTML does not allow this, but the code to convert newlines to BR's
        during paste was creating such nodes. This will no longer happen.

        In the case where someone inserts such zero-length nodes using the DOM API, the render tree
        will no longer create render objects for these nodes, and it was these empty render text
        nodes that was confusing the code doing editing navigation.

        * khtml/xml/dom_textimpl.cpp:
        (CharacterDataImpl::rendererIsNeeded): Do not create renderers for zero-length DOM text nodes.
        * khtml/xml/dom_textimpl.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge documentFragmentWithText:]): Do not insert zero-length DOM text nodes as part
        of converting line-end sequences to BR's.

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

16 years ago Reviewed by Richard.
mjs [Tue, 24 Aug 2004 04:13:49 +0000 (04:13 +0000)]
    Reviewed by Richard.

- reduce cost of innerHTML from O(N^2) to O(N*D) where N is the
number of nodes and D is the maximum DOM tree depth.

        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::recursive_toString): New static helper method for
recursive_toHTML - this is recursive for children but iterative
for siblings.
        (NodeImpl::recursive_toHTML): Call the helper with this as the
first argument.
        * khtml/xml/dom_nodeimpl.h:

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

16 years ago Fix for 3558334.
hyatt [Tue, 24 Aug 2004 03:22:52 +0000 (03:22 +0000)]
Fix for 3558334.

Init the encodedURL explicitly for CSSStyleSelectors.  Construction time was too early to be passing in the
document m_url, since it doesn't get set during construction.

Fix for 3769643, crash on vancouverblast.org.

        Reviewed by darin

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::CSSStyleSelector):
        (khtml::CSSStyleSelector::init):
        (khtml::CSSStyleSelector::setEncodedURL):
        * khtml/css/cssstyleselector.h:
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::setURL):
        (DocumentImpl::recalcStyleSelector):
        * khtml/xml/dom_docimpl.h:
        (DOM::DocumentImpl::URL):

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

16 years ago Reviewed by Kevin.
mjs [Tue, 24 Aug 2004 02:50:42 +0000 (02:50 +0000)]
    Reviewed by Kevin.

- remove annoying ERROR spew and replace with comment

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

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

16 years ago Reviewed by Richard.
mjs [Tue, 24 Aug 2004 01:19:30 +0000 (01:19 +0000)]
    Reviewed by Richard.

- a bit of code cleanup

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _stringWithData:]): Call textEncodingName instead of
copying it's code.
        (-[WebDataSource textEncodingName]): Tweak formatting.

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

16 years ago Fixed build.
cblu [Tue, 24 Aug 2004 00:12:25 +0000 (00:12 +0000)]
Fixed build.

        * WebKit.pbproj/project.pbxproj: make sure we're doing -f on a file, not a directory

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

16 years ago Fixed: <rdar://problem/3674867> use new Security framework SPI's to reenable cert...
cblu [Mon, 23 Aug 2004 23:36:44 +0000 (23:36 +0000)]
Fixed: <rdar://problem/3674867> use new Security framework SPI's to reenable cert acquisition

        Reviewed by john.

        * WebCoreSupport.subproj/WebKeyGeneration.cpp:
        * WebCoreSupport.subproj/WebKeyGeneration.h:
        * WebCoreSupport.subproj/WebKeyGenerator.h:
        * WebCoreSupport.subproj/WebKeyGenerator.m:
        (-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]): re-enabled cert code, call Panther version on Panther, Tiger version on Tiger
        (-[WebKeyGenerator addCertificatesToKeychainFromData:]): ditto
        * WebCoreSupport.subproj/WebNewKeyGeneration.c: Added.
        (gnrAddContextAttribute):
        (gnrGetSubjPubKey):
        (gnrNullAlgParams):
        (gnrSign):
        (gnrFreeCssmData):
        (nssArraySize):
        (signedPublicKeyAndChallengeString):
        (addCertificateToKeychainFromData):
        (addCertificatesToKeychainFromData):
        * WebCoreSupport.subproj/WebNewKeyGeneration.h: Added.
        * WebKit.pbproj/project.pbxproj:

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

16 years agoGet rid of stray conflict markers.
darin [Mon, 23 Aug 2004 23:02:24 +0000 (23:02 +0000)]
Get rid of stray conflict markers.

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

16 years ago Reviewed by Maciej.
kdecker [Mon, 23 Aug 2004 21:17:38 +0000 (21:17 +0000)]
    Reviewed by Maciej.

- fixed rdar://problem/3681094> Crash in KJS::WindowFunc::tryCall
        with application/xhtml+xml Content-Type
        * khtml/ecma/kjs_window.cpp:
        (WindowFunc::tryCall): since this is an xml document, we get the
domain from the xmlDocImpl(), not docImpl().

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

16 years agobump all version numbers to 160u, since I just submitted WebBrowser-159
vicki [Mon, 23 Aug 2004 19:05:15 +0000 (19:05 +0000)]
bump all version numbers to 160u, since I just submitted WebBrowser-159

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