Timeline



Apr 12, 2004:

3:19 PM Changeset in webkit [6355] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by John.

  • fix deployment build by avoiding deployment-only warning.
  • kjs/scope_chain.cpp: (KJS::ScopeChain::bottom):
2:13 PM Changeset in webkit [6354] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3556036, make sure that when the position changes via style that all render layer
descendants simply immediately repaint.

Reviewed by kocienda

  • khtml/rendering/render_layer.cpp: (RenderLayer::repaintIncludingDescendants):
  • khtml/rendering/render_layer.h:
  • khtml/rendering/render_object.cpp: (RenderObject::setStyle):
1:46 PM Changeset in webkit [6353] by cblu
  • 16 edits in trunk

WebCore:

  • Fixed build failure by removing references to WebArchive in WebCore.
  • For HTML copy/paste, relative URLs are now made absolute at paste time instead of at copy time. This allows relative URLs to be kept relative if the destination page has the same base URL as the source page.

Reviewed by kocienda.

  • khtml/editing/htmlediting.cpp: (PasteMarkupCommand::PasteMarkupCommand): take the base URL of the clipping
  • khtml/editing/htmlediting.h:
  • khtml/editing/htmlediting_impl.cpp: (PasteMarkupCommandImpl::PasteMarkupCommandImpl): take the base URL of the clipping (PasteMarkupCommandImpl::doApply): if we have a base URL and it is different than the base URL of the document, fix the URLs in the new DOM tree
  • khtml/editing/htmlediting_impl.h:
  • khtml/xml/dom2_rangeimpl.cpp: (RangeImpl::toHTMLWithOptions): removed completeURLs param
  • khtml/xml/dom2_rangeimpl.h:
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::recursive_toHTMLWithOptions): removed completeURLs param (NodeImpl::recursive_toHTML): ditto (NodeImpl::recursive_completeURLs): new
  • khtml/xml/dom_nodeimpl.h:
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge markupStringFromNode:subresourceURLStrings:]): call recursive_toHTML with less params (-[WebCoreBridge markupStringFromRange:subresourceURLStrings:]): ditto (-[WebCoreBridge replaceSelectionWithMarkupString:baseURLString:]): take a base URL

WebKit:

Factored out WebArchive to DOM code so that it could be used by both [WebHTMLView _pasteFromPasteboard:] and [WebView insertWebArchive:replacingDOMRange:].

Reviewed by kocienda.

  • WebView.subproj/WebDataSource.m: (-[WebDataSource _replaceSelectionWithMarkupString:baseURL:]): moved from WebHTMLView (-[WebDataSource _replaceSelectionWithImageResource:]): ditto (-[WebDataSource _replaceSelectionWithWebArchive:]): ditto
  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _replaceSelectionWithMarkupString:]): renamed (-[WebHTMLView _pasteFromPasteboard:]): call renamed methods
  • WebView.subproj/WebView.m: (-[WebView insertMarkupString:replacingDOMRange:]): call renamed methods (-[WebView insertWebArchive:replacingDOMRange:]): have data source handle the archive instead of the bridge
11:41 AM Changeset in webkit [6352] by kocienda
  • 12 edits
    7 adds in trunk

WebCore:

Reviewed by Dave

Added execCommand support for cut/copy/paste.

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::execCommand): Added cut/copy/paste atoms and added else if cases for the commands.
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::issueCutCommand): Glue for calling from WebCore to do a cut in Cocoa. (KWQKHTMLPart::issueCopyCommand): Same as above, but for copy. (KWQKHTMLPart::issuePasteCommand): Same as above, but for paste.
  • kwq/WebCoreBridge.h: Declared issueCutCommand, issueCopyCommand, and issuePasteCommand to be implemented on the WebKit side of the bridge.
  • layout-tests/editing/editing.js: Added cut/copy/paste support to js library to support making layout tests.
  • layout-tests/editing/pasteboard/copy-paste-text-001-expected.txt: Added.
  • layout-tests/editing/pasteboard/copy-paste-text-001.html: Added.
  • layout-tests/editing/pasteboard/cut-paste-text-002-expected.txt: Added.
  • layout-tests/editing/pasteboard/cut-paste-text-002.html: Added.
  • layout-tests/editing/pasteboard/cut-text-001-expected.txt: Added.
  • layout-tests/editing/pasteboard/cut-text-001.html: Added.

WebKit:

Reviewed by Dave

Added execCommand support for cut/copy/paste.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge issueCutCommand]): Glue for calling from WebCore to do a cut in Cocoa. (-[WebBridge issueCopyCommand]): Same as above, but for copy. (-[WebBridge issuePasteCommand]): Same as above, but for paste.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView copy:]): Move this to private implementation category so the bridge can see it. (-[WebHTMLView cut:]): Ditto. (-[WebHTMLView paste:]): Ditto.
  • WebView.subproj/WebHTMLViewPrivate.h: Move copy;, cut:, and paste: to private implementation category so the bridge can see it.
  • WebView.subproj/WebView.m: (-[WebView copy:]): Implemented by calling WebHTMLView to do the work. (-[WebView cut:]): Ditto. (-[WebView paste:]): Ditto.
  • WebView.subproj/WebViewPrivate.h: Added all the NSReponder methods we plan to implement as part of the WebKit editing API.
10:16 AM Changeset in webkit [6351] by kocienda
  • 5 edits in trunk

Reviewed by John

Some delete and insert cleanups.

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): For ending position case 1, the caret should be placed before the first child of the containing block, not before the containing block itself. Also, add some code to handle converting nbsp's back to regular spaces. This will need to be improved some day to convert only nbsp's added by the editor to make rendering come out right. (InputTextCommandImpl::execute): (TypingCommandImpl::issueCommandForDeleteKey): Make deleting collapsible whitespace part of the work of deleting a selection, rather than something that needs to be done by a user of DeleteSelectionCommandImpl. This makes it impossible to leave out this essential step. (TypingCommandImpl::deleteKeyPressed): We can't use a possible optimization here until the code to do deletions properly has been factored better. Big FIXME added.
  • layout-tests/editing/deleting/delete-block-contents-001-expected.txt: Updated for ending position case 1 behavior change.
  • layout-tests/editing/deleting/delete-block-contents-002-expected.txt: Ditto.
  • layout-tests/editing/deleting/delete-block-contents-003-expected.txt: Ditto.

Apr 9, 2004:

4:30 PM Changeset in webkit [6350] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by Darin

Added support for methods added to flesh out the WebKit
editing API.

  • khtml/khtml_part.h: Removed pasteMarkupString and deleteSelection functions. All this work is now done in WebCoreBridge.
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge isSelectionEditable]): Added a FIXME. (-[WebCoreBridge setDrawsBackground:]): Moved this since CVS merged this in the middle of editing code. (-[WebCoreBridge replaceSelectionWithNode:]): New method. (-[WebCoreBridge replaceSelectionWithText:]): Replaces insertText: (-[WebCoreBridge replaceSelectionWithMarkupString:]): New method. (-[WebCoreBridge replaceSelectionWithWebArchive:]): New method. (-[WebCoreBridge replaceSelectionWithNewline]): Replaces insertNewline: (-[WebCoreBridge deleteSelection]): New method. (-[WebCoreBridge applyStyle:toElementsInDOMRange:]): New method.

WebKit:

Reviewed by Darin

Stubbed in the entire WebKit editing API, improving some
methods already present in minor ways, and adding those
methods not yet present.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge editingKeyDown:]):
  • WebView.subproj/WebDefaultEditingDelegate.m: (-[WebDefaultEditingDelegate webView:shouldChangeSelectedDOMRange:toDOMRange:stillSelecting:]):
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteMarkupString:]):
  • WebView.subproj/WebView.m: (-[WebView _alterCurrentSelection:direction:granularity:]): (-[WebView _currentSelectionIsEditable]): (-[WebView computedStyleForElement:pseudoElement:]): (-[WebView _editingKeyDown:]): (-[WebView setEditable:]): (-[WebView isEditable]): (-[WebView setTypingStyle:]): (-[WebView typingStyle]): (-[WebView setSmartInsertDeleteEnabled:]): (-[WebView smartInsertDeleteEnabled]): (-[WebView setContinuousSpellCheckingEnabled:]): (-[WebView isContinuousSpellCheckingEnabled]): (-[WebView spellCheckerDocumentTag]): (-[WebView undoManager]): (-[WebView insertNode:replacingDOMRange:]): (-[WebView insertText:replacingDOMRange:]): (-[WebView insertMarkupString:replacingDOMRange:]): (-[WebView insertWebArchive:replacingDOMRange:]): (-[WebView deleteDOMRange:]): (-[WebView applyStyle:toElementsInDOMRange:]): (-[WebView centerSelectionInVisibleArea:]): (-[WebView moveBackward:]): (-[WebView moveBackwardAndModifySelection:]): (-[WebView moveDown:]): (-[WebView moveDownAndModifySelection:]): (-[WebView moveForward:]): (-[WebView moveForwardAndModifySelection:]): (-[WebView moveLeft:]): (-[WebView moveLeftAndModifySelection:]): (-[WebView moveRight:]): (-[WebView moveRightAndModifySelection:]): (-[WebView moveToBeginningOfDocument:]): (-[WebView moveToBeginningOfLine:]): (-[WebView moveToBeginningOfParagraph:]): (-[WebView moveToEndOfDocument:]): (-[WebView moveToEndOfLine:]): (-[WebView moveToEndOfParagraph:]): (-[WebView moveUp:]): (-[WebView moveUpAndModifySelection:]): (-[WebView moveWordBackward:]): (-[WebView moveWordBackwardAndModifySelection:]): (-[WebView moveWordForward:]): (-[WebView moveWordForwardAndModifySelection:]): (-[WebView moveWordLeft:]): (-[WebView moveWordLeftAndModifySelection:]): (-[WebView moveWordRight:]): (-[WebView moveWordRightAndModifySelection:]): (-[WebView pageDown:]): (-[WebView pageUp:]): (-[WebView scrollLineDown:]): (-[WebView scrollLineUp:]): (-[WebView scrollPageDown:]): (-[WebView scrollPageUp:]): (-[WebView selectAll:]): (-[WebView selectParagraph:]): (-[WebView selectLine:]): (-[WebView selectWord:]): (-[WebView copy:]): (-[WebView cut:]): (-[WebView paste:]): (-[WebView copyFont:]): (-[WebView pasteFont:]): (-[WebView delete:]): (-[WebView pasteAsPlainText:]): (-[WebView pasteAsRichText:]): (-[WebView changeFont:]): (-[WebView changeAttributes:]): (-[WebView changeDocumentBackgroundColor:]): (-[WebView changeColor:]): (-[WebView alignCenter:]): (-[WebView alignJustified:]): (-[WebView alignLeft:]): (-[WebView alignRight:]): (-[WebView indent:]): (-[WebView insertTab:]): (-[WebView insertBacktab:]): (-[WebView insertNewline:]): (-[WebView insertParagraphSeparator:]): (-[WebView changeCaseOfLetter:]): (-[WebView uppercaseWord:]): (-[WebView lowercaseWord:]): (-[WebView capitalizeWord:]): (-[WebView deleteForward:]): (-[WebView deleteBackward:]): (-[WebView deleteBackwardByDecomposingPreviousCharacter:]): (-[WebView deleteWordForward:]): (-[WebView deleteWordBackward:]): (-[WebView deleteToBeginningOfLine:]): (-[WebView deleteToEndOfLine:]): (-[WebView deleteToBeginningOfParagraph:]): (-[WebView deleteToEndOfParagraph:]): (-[WebView complete:]): (-[WebView checkSpelling:]): (-[WebView showGuessPanel:]): (-[WebView performFindPanelAction:]): (-[WebView startSpeaking:]): (-[WebView stopSpeaking:]): (-[WebView insertText:]):
  • WebView.subproj/WebViewPrivate.h:
4:04 PM Changeset in webkit [6349] by darin
  • 15 edits
    2 adds in trunk

WebCore:

Reviewed by Ken.

  • added "transparent mode"
  • khtml/khtmlview.h: Added isTransparent and setTransparent functions.
  • khtml/khtmlview.cpp: (KHTMLViewPrivate::KHTMLViewPrivate): Initialize isTransparent to false. (KHTMLView::isTransparent): Return isTransparent. (KHTMLView::setTransparent): Set isTransparent.
  • khtml/rendering/render_box.cpp: (RenderBox::paintRootBoxDecorations): Use slow repaints for the top frame when the view is transparent; also don't draw a background. This is the same thing we do for subframes. (RenderBox::paintBackgroundExtended): Don't do the extra draw so we can blend with the background color for the top frame when the view is transparent.
  • khtml/rendering/render_canvas.cpp: (RenderCanvas::paintBoxDecorations): More of the same.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::paint): Make "fill with red" debug mode work only when the view is not transparent.
  • kwq/WebCoreBridge.h: Added setDrawsBackground: method.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge setDrawsBackground:]): If told NO (don't draw background), then set isTransparent to true on the KHTMLView.

WebKit:

Reviewed by Ken.

  • added "transparent mode"
  • WebView.subproj/WebFrameInternal.h: Added. Contains _updateDrawsBackground.
  • WebView.subproj/WebFrame.m: (-[WebFrame _makeDocumentView]): Call _updateDrawsBackground to tell the newly created KHTMLView whether to draw a background or not. (-[WebFrame _setState:]): Don't tell the scroll view to start drawing background if the WebView is not supposed to draw a background. (-[WebFrame _updateDrawsBackground]): Call setDrawsBackground: on the bridge, and do the same for all subframes.
  • WebView.subproj/WebFrameView.m: (-[WebFrameView setFrameSize:]): Only call setDrawsBackground:YES on the scroll view if the WebView has drawsBackground set to YES.
  • WebView.subproj/WebViewPrivate.h: Added new proposed API, setDrawsBackground and drawsBackground. Also added drawsBackground boolean to private structure.
  • WebView.subproj/WebView.m: (-[WebView _commonInitializationWithFrameName:groupName:]): Set drawsBackground to YES by default. (-[WebView setDrawsBackground:]): Added. Sets boolean and calls _updateDrawsBackground to update the flag for each frame. (-[WebView drawsBackground]): Added. Returns value of boolean. (-[WebView _bridgeForCurrentSelection]): Tweaked comment for no good reason.
  • WebView.subproj/WebViewInternal.h: Added, but empty for the moment.
  • WebView.subproj/WebFramePrivate.h: Tweaked a bit.
1:18 PM Changeset in webkit [6348] by kocienda
  • 1 edit
    2 adds in trunk

Reviewed by me

Added one more layout test for editing.

  • layout-tests/editing/deleting/delete-3608445-fix-expected.txt: Added.
  • layout-tests/editing/deleting/delete-3608445-fix.html: Added.
1:07 PM Changeset in webkit [6347] by mjs
  • 30 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by John.

Changed things so that newly created objects get a prototype based
on the scope chain of the current function, rather than the
interpreter that started execution. This fixes the following bugs:

<rdar://problem/3368523>: ARCH: wrong prototype used to create new objects (hang on lookup.atomica.com)
<rdar://problem/3559173>: ARCH: Cannot scan using a HP Jetdirect product (JS object prototypes bind incorrectly)

  • JavaScriptCore.pbproj/project.pbxproj:
  • kjs/array_object.cpp: (CompareWithCompareFunctionArguments::CompareWithCompareFunctionArguments): (ArrayProtoFuncImp::ArrayProtoFuncImp): (ArrayProtoFuncImp::call): (ArrayObjectImp::construct):
  • kjs/bool_object.cpp: (BooleanObjectImp::construct):
  • kjs/date_object.cpp: (DateProtoFuncImp::DateProtoFuncImp): (DateProtoFuncImp::call): (DateObjectImp::construct):
  • kjs/error_object.cpp: (ErrorObjectImp::construct):
  • kjs/function.cpp: (FunctionImp::FunctionImp): (FunctionImp::call): (DeclaredFunctionImp::construct): (ArgumentsImp::ArgumentsImp): (GlobalFuncImp::call):
  • kjs/function_object.cpp: (FunctionProtoFuncImp::call): (FunctionObjectImp::construct):
  • kjs/internal.cpp: (BooleanImp::toObject): (StringImp::toObject): (NumberImp::toObject): (InterpreterImp::InterpreterImp): (InterpreterImp::clear): (InterpreterImp::interpreterWithGlobalObject):
  • kjs/internal.h:
  • kjs/interpreter.cpp: (ExecState::lexicalInterpreter):
  • kjs/interpreter.h: (KJS::ExecState::dynamicInterpreter): (KJS::ExecState::interpreter):
  • kjs/math_object.cpp: (MathFuncImp::MathFuncImp):
  • kjs/nodes.cpp: (StatementNode::hitStatement): (StatementNode::abortStatement): (RegExpNode::evaluate): (ElementNode::evaluate): (ArrayNode::evaluate): (ObjectLiteralNode::evaluate): (PropertyValueNode::evaluate): (FunctionCallNode::evaluate): (FuncDeclNode::processFuncDecl): (FuncExprNode::evaluate):
  • kjs/number_object.cpp: (NumberObjectImp::construct):
  • kjs/object.cpp: (KJS::ObjectImp::defaultValue): (KJS::Error::create):
  • kjs/object_object.cpp: (ObjectObjectImp::construct):
  • kjs/reference.cpp: (Reference::putValue):
  • kjs/regexp_object.cpp: (RegExpProtoFuncImp::call): (RegExpObjectImp::arrayOfMatches): (RegExpObjectImp::construct):
  • kjs/scope_chain.cpp: (KJS::ScopeChain::bottom):
  • kjs/scope_chain.h:
  • kjs/string_object.cpp: (StringProtoFuncImp::StringProtoFuncImp): (StringProtoFuncImp::call): (StringObjectImp::construct):

WebCore:

Reviewed by John.

Changed things so that newly created objects get a prototype based
on the scope chain of the current function, rather than the
interpreter that started execution. This fixes the following bugs:

<rdar://problem/3368523>: ARCH: wrong prototype used to create new objects (hang on lookup.atomica.com)
<rdar://problem/3559173>: ARCH: Cannot scan using a HP Jetdirect product (JS object prototypes bind incorrectly)

  • khtml/ecma/kjs_binding.h: (KJS::cacheDOMObject): (KJS::cacheGlobalObject):
  • khtml/ecma/kjs_css.cpp: (KJS::getDOMStyleSheet): (KJS::getDOMStyleSheetList): (KJS::getDOMCSSValue):
  • khtml/ecma/kjs_dom.cpp: (KJS::getDOMDocumentNode): (KJS::getDOMNode):
  • khtml/ecma/kjs_events.cpp: (KJS::getDOMEvent):
  • khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::tryGet): (KJS::HTMLDocument::putValue): (KJS::getSelectHTMLCollection):
  • khtml/ecma/kjs_navigator.cpp: (Navigator::Navigator): (PluginBase::PluginBase):
  • khtml/ecma/kjs_window.cpp: (KJS::History::History): (KJS::FrameArray::FrameArray): (Screen::Screen): (Window::retrieveActive): (Window::put): (Window::isSafeScript): (WindowFunc::tryCall): (Location::put): (LocationFunc::tryCall):
12:59 PM Changeset in webkit [6346] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3613081, repaint glitches when using overflow:auto/overlay.

Reviewed by john

  • khtml/rendering/render_layer.cpp: (RenderLayer::updateScrollInfoAfterLayout):
12:49 PM Changeset in webkit [6345] by rjw
  • 2 edits in trunk

Fixed build problem.

12:02 PM Changeset in webkit [6344] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3608445, garbage characters rendered after doing delete. Delta was unsigned when it was supposed to
be signed, since deletion involves a negative delta. Also had an off-by-one error in the line break end check.

Reviewed by john

  • khtml/rendering/render_text.cpp: (RenderText::setTextWithOffset):
11:48 AM Changeset in webkit [6343] by cblu
  • 17 edits in trunk/WebKit

WebKit:

Fixed:
<rdar://problem/3616873>: support for pasting and drag and dropping of URLS to editable WebViews
<rdar://problem/3546417>: support for pasting and drag and dropping of images to editable WebViews

Reviewed by rjw.

  • DOM.subproj/WebDOMOperations.h:
  • DOM.subproj/WebDOMOperations.m: (-[DOMNode webArchive]): renamed from "archive" because "archive" collides with DOMHTMLObjectElement's method (-[DOMRange webArchive]): ditto
  • Misc.subproj/WebNSPasteboardExtras.h:
  • Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_writeImage:URL:title:archive:]): take just an archive instead of an HTML string and file wrapper
  • Misc.subproj/WebNSViewExtras.h:
  • Misc.subproj/WebNSViewExtras.m: (-[NSView _web_dragImage:archive:rect:URL:title:event:]): take just an archive instead of an HTML string and file wrapper
  • WebView.subproj/WebDataProtocol.h:
  • WebView.subproj/WebDataProtocol.m: (+[NSURL _web_uniqueWebDataURL]): new (+[NSURL _web_uniqueWebDataURLWithRelativeString:]): new
  • WebView.subproj/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate copyImageToClipboard:]): call renamed _web_writeImage
  • WebView.subproj/WebFrame.m: (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:unreachableURL:]): use _web_uniqueWebDataURL for creating a URL
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteImageResource:]): new (-[WebHTMLView _pasteFromPasteboard:]): renamed, now handles images and URLs (-[WebHTMLView _handleMouseDragged:]): call renamed _web_dragImage (-[WebHTMLView paste:]): call renamed _pasteFromPasteboard (-[WebHTMLView concludeDragOperation:]): call renamed _pasteFromPasteboard
  • WebView.subproj/WebHTMLViewPrivate.h:
  • WebView.subproj/WebImageRepresentation.h:
  • WebView.subproj/WebImageRepresentation.m: (-[WebImageRepresentation archive]): new
  • WebView.subproj/WebImageView.m: (-[WebImageView writeImageToPasteboard:]): call renamed _web_writeImage (-[WebImageView mouseDragged:]): call renamed _web_dragImage

WebBrowser:

Reviewed by rjw.

  • BrowserDocument.m: (-[BrowserDocument dataRepresentationOfType:]): call renamed [DOMNode webArchive] (-[BrowserDocument mailPage:]): ditto
7:41 AM Changeset in webkit [6342] by kocienda
  • 1 edit
    4 adds in trunk

Reviewed by me

Added two more layout tests for editing.

  • layout-tests/editing/selection/move-between-blocks-no-001-expected.txt: Added.
  • layout-tests/editing/selection/move-between-blocks-no-001.html: Added.
  • layout-tests/editing/selection/move-between-blocks-yes-001-expected.txt: Added.
  • layout-tests/editing/selection/move-between-blocks-yes-001.html: Added.
7:13 AM Changeset in webkit [6341] by kocienda
  • 13 edits
    6 adds in trunk

Reviewed by Dave

Small collection of editing improvements.

  • ChangeLog:
  • khtml/editing/htmlediting_impl.cpp: (shouldDeleteUpstreamPosition): This was deleting significant spaces on preceding lines when the caret was at the start of a line. Fixed. (DeleteSelectionCommandImpl::doApply): Fixed a case where caret jumped to previous line when deleting a character at the start of a line after a BR. (InputNewlineCommandImpl::doApply): Handle more cases correctly. Previously, this only handled inserting a newline when the caret was already in a text node. (InputTextCommandImpl::prepareForTextInsertion): Ditto. (InputTextCommandImpl::execute): Ditto.
  • khtml/editing/htmlediting_impl.h:
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::checkSelectionPointIgnoringContinuations): Now can place caret with a click in an empty block.
  • khtml/rendering/render_block.h: Added checkSelectionPointIgnoringContinuations declaration.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::checkSelectionPointIgnoringContinuations): Now can place caret with a click on a replaced element.
  • khtml/rendering/render_replaced.h: Added checkSelectionPointIgnoringContinuations declaration.
  • khtml/rendering/render_text.cpp: (InlineTextBox::checkSelectionPoint): Now can place caret with a click in text on a line made "tall" by an image on the same line.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::createEditingTextNode): This creates a text node subclass that whill always create a renderer for itself.
  • khtml/xml/dom_docimpl.h:
  • khtml/xml/dom_position.cpp: (DOMPosition::isLastRenderedPositionInEditableBlock): Improved code to handle more cases.
  • khtml/xml/dom_textimpl.cpp: (TextImpl::TextImpl): Rolled out m_rendererIsNeeded flag. (TextImpl::rendererIsNeeded): Ditto. (EditingTextImpl::EditingTextImpl): New class. (EditingTextImpl::~EditingTextImpl): New. (EditingTextImpl::rendererIsNeeded): New. Always returns true.
  • khtml/xml/dom_textimpl.h: New EditingTextImpl class.
  • layout-tests/editing/deleting/delete-3608430-fix-expected.txt: Added.
  • layout-tests/editing/deleting/delete-3608430-fix.html: Added.
  • layout-tests/editing/deleting/delete-3608462-fix-expected.txt: Added.
  • layout-tests/editing/deleting/delete-3608462-fix.html: Added.
  • layout-tests/editing/deleting/delete-trailing-ws-002-expected.txt: Added.
  • layout-tests/editing/deleting/delete-trailing-ws-002.html: Added.

Apr 8, 2004:

6:05 PM Changeset in webkit [6340] by cblu
  • 9 edits in trunk/WebCore

Renamed the PasteHTMLCommand to PasteMarkupCommand. Removed PasteImageCommand because we will use PasteMarkupCommand for pasting images.

Reviewed by kocienda.

  • ChangeLog:
  • khtml/editing/htmlediting.cpp: (PasteMarkupCommand::PasteMarkupCommand): (PasteMarkupCommand::~PasteMarkupCommand): (PasteMarkupCommand::impl): (PasteMarkupCommand::markupString):
  • khtml/editing/htmlediting.h: (khtml::):
  • khtml/editing/htmlediting_impl.cpp: (PasteMarkupCommandImpl::PasteMarkupCommandImpl): (PasteMarkupCommandImpl::~PasteMarkupCommandImpl): (PasteMarkupCommandImpl::commandID): (PasteMarkupCommandImpl::doApply):
  • khtml/editing/htmlediting_impl.h: (khtml::PasteMarkupCommandImpl::markupString):
  • khtml/khtml_part.cpp: (KHTMLPart::pasteMarkupString):
  • khtml/khtml_part.h:
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge pasteMarkupString:]):
3:53 PM Changeset in webkit [6339] by vicki
  • 3 edits in trunk

change version number to 137u. the tree is open

3:48 PM Changeset in webkit [6338]
  • 3 copies in tags/Safari-136

This commit was manufactured by cvs2svn to create tag 'Safari-136'.

3:48 PM Changeset in webkit [6337] by vicki
  • 6 edits in trunk

Safari-136 stamp

3:42 PM Changeset in webkit [6336] by cblu
  • 9 edits in trunk/WebCore

Rolling out previous commit. Tree was closed. Doh!

3:31 PM Changeset in webkit [6335] by cblu
  • 9 edits in trunk/WebCore

Renamed the PasteHTMLCommand to PasteMarkupCommand. Removed PasteImageCommand because we will use PasteMarkupCommand for pasting images.

Reviewed by kocienda.

  • khtml/editing/htmlediting.cpp: (PasteMarkupCommand::PasteMarkupCommand): (PasteMarkupCommand::~PasteMarkupCommand): (PasteMarkupCommand::impl): (PasteMarkupCommand::markupString):
  • khtml/editing/htmlediting.h: (khtml::):
  • khtml/editing/htmlediting_impl.cpp: (PasteMarkupCommandImpl::PasteMarkupCommandImpl): (PasteMarkupCommandImpl::~PasteMarkupCommandImpl): (PasteMarkupCommandImpl::commandID): (PasteMarkupCommandImpl::doApply):
  • khtml/editing/htmlediting_impl.h: (khtml::PasteMarkupCommandImpl::markupString):
  • khtml/khtml_part.cpp: (KHTMLPart::pasteMarkupString):
  • khtml/khtml_part.h:
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge pasteMarkupString:]):
1:34 PM Changeset in webkit [6334] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3608430 and 3608462, crashes in findNextLineBreak when deleting. Make sure that the removal of line boxes
always checks the previous root line box's line break information and dirties the line if it is pointing
to the deleted object.

Reviewed by kocienda

  • khtml/rendering/render_line.cpp: (InlineFlowBox::removeChild):
11:43 AM Changeset in webkit [6333] by cblu
  • 5 edits in trunk

WebCore:

Removed DOMExtensions.h from DOM.h until it is public.

Reviewed by koicienda.

  • kwq/DOM.h:

WebKit:

Fixed: <rdar://problem/3548274>: API: DOM API for WebKit clients

Reviewed by kocienda.

  • DOM.subproj/DOM.h: copied from WebCore
  • WebKit.pbproj/project.pbxproj: made our DOM headers public!
11:05 AM Changeset in webkit [6332] by cblu
  • 8 edits
    2 adds in trunk/WebKit

Tests:

Support for moving WebArchive to its own file.

Reviewed by kocienda.

  • Blot/BlotApp.m:

WebKit:

Moved WebArchive to its own file.

Reviewed by kocienda.

  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebArchive.h: Added.
  • WebView.subproj/WebArchive.m: Added. (-[WebArchive data]): renamed from dataRepresentation
  • WebView.subproj/WebDataSource.m:
  • WebView.subproj/WebFrame.m:
  • WebView.subproj/WebHTMLRepresentation.m:
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _writeSelectionToPasteboard:]): call renamed [WebArchive data]
  • WebView.subproj/WebResource.h:
  • WebView.subproj/WebResource.m:

WebBrowser:

Support for moving WebArchive to its own file.

Reviewed by kocienda.

  • BrowserDocument.m: (-[BrowserDocument dataRepresentationOfType:]): call renamed [WebArchive data] (-[BrowserDocument mailPage:]): ditto (-[BrowserDocument mailPageAddress:]): ditto
Note: See TracTimeline for information about the timeline view.