Timeline
Jul 31, 2004:
- 10:32 AM Changeset in webkit [7168] by
-
- 2 edits in trunk/WebCore
Reviewed by John
<rdar://problem/3745498> HTMLCompose: Can't edit new empty message (and typing eventually crashes)
<rdar://problem/3746408> HTMLCompose: cannot type in message body of new messages (and tabbing causes a crash.)
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::setDisplaysWithFocusAttributes): Add in some smarts to look around for a good place to put the caret if focus is turning "on", the part is contentEditable, and it does not currently have a selection. This has the effect of flashing the caret in a contentEditable view automatically without requiring the programmer to set a selection explicitly. This also fixes the bug listed above. Both are cases where the bad behavior happened since the editing code tried to process input without an active selection. I always took the extra step of setting the selection explicitly when opening new windows in programs like Blot, but it seems silly to require developers to do this in general. With this patch, they no longer need to.
- 10:30 AM Changeset in webkit [7167] by
-
- 4 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3745498> HTMLCompose: Can't edit new empty message (and typing eventually crashes)
- khtml/xml/dom_selection.cpp: (DOM::Selection::layoutCaret): Don't bail when the start position of the selection is not in rendered content. The validate() bottleneck function will do all it can to make sure that the start is moved to rendered content if at all possible before this function runs. If no rendered position can be found, like in the case of an empty body element, we still want to flash the caret there. (DOM::Selection::validate): Look for rendered positions for the base and extent, but save off the base before making this move, and set the selection to the enclosing block flow element of this original base if no rendered positions can be found. This has the effect of flashing the caret someplace in an editable block, even if it does not contain any rendered content.
Jul 30, 2004:
- 11:17 AM Changeset in webkit [7166]
-
- 64 copies2 deletes in tags/WebCore-125~8~2
This commit was manufactured by cvs2svn to create tag
'WebCore-125~8~2'.
- 11:17 AM Changeset in webkit [7165] by
-
- 2 edits in branches/Safari-1-2-branch/WebCore
- versioning for SUPanMoccasin, WebCore-125.8.2
- 11:09 AM Changeset in webkit [7164] by
-
- 5 edits in trunk/WebCore
Reviewed by John
Fix a large number of editing layout test regressions.
- khtml/misc/khtml_text_operations.cpp: (khtml::TextIterator::TextIterator): Use a new way to compute the end offset of a node for purposes of text iteration. The end offset is either child count of a node with children, or the maxOffset() of a node that does not.
- khtml/xml/dom_nodeimpl.cpp: Remove maxOffset() implementation from NodeBaseImpl. This conflicted with the usage of this function that is needed for editing.
- khtml/xml/dom_nodeimpl.h: Ditto.
- 10:32 AM Changeset in webkit [7163] by
-
- 6 edits in trunk/WebCore
Next steps for spell checking: We have data structures for the marked pieces of
text and the smarts to draw them (although at this point, they just get a green
underline instead of using the real AppKit pattern.)
Note we don't call this code outside of development, since at this point I suspect
it could be made to crash by mixing spelling and editing.
Reviewed by Ken.
- khtml/rendering/render_text.cpp: (InlineTextBox::paintMarker): Paint one marker's intersection with a text run (RenderText::paint): Find intersections of all markers and runs, call paintMarker
- khtml/rendering/render_text.h:
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::addMarker): Adds a marker to a DOM Range. (DocumentImpl::removeMarker): Removes a marker from a DOM Range. (DocumentImpl::addMarker): Adds a marker to a single DOM Node, merging previous markers as needed. (DocumentImpl::removeMarker): Removes a marker from a single DOM Node, breaking up previous markers as needed. (DocumentImpl::markersForNode): Return markers for a Node.
- khtml/xml/dom_docimpl.h: (DOM::DocumentMarker::): New marker struct (DOM::DocumentMarker::operator == ): (DOM::DocumentMarker::operator != ):
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::advanceToNextMisspelling): Mark misspelled ranges when we find them. Debug only for now.
- 10:23 AM Changeset in webkit [7162]
-
- 64 copies2 deletes in tags/WebCore-125~8~3
This commit was manufactured by cvs2svn to create tag
'WebCore-125~8~3'.
- 10:23 AM Changeset in webkit [7161] by
-
- 2 edits in branches/Safari-1-2-branch/WebCore
- versioning for resubmission to SUPanXpress. The Security Update has to include all Moccasin changes, since it ships after Moccasin. We have to resubmit to both build trains because of <rdar://problem/3745334> *SUPanMoccasin* Seed: WebKit: Table's caption broken.
Jul 29, 2004:
- 9:18 PM Changeset in webkit [7160] by
-
- 5 edits in trunk/WebKit
Reviewed by John.
Added stubbed-out versions of all the NSTextInput protocol
methods, and put comments in places where we will need to call the
input manager to make input methods work 100%.
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge respondToChangedSelection]):
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseDown:]): (-[WebHTMLView mouseDragged:]): (-[WebHTMLView mouseUp:]): (-[WebHTMLView _interceptEditingKeyEvent:]): (-[WebHTMLView keyDown:]): (-[WebHTMLView _selectionChanged]): (-[WebHTMLView _delegateDragSourceActionMask]): (-[WebHTMLView validAttributesForMarkedText]): (-[WebHTMLView characterIndexForPoint:]): (-[WebHTMLView firstRectForCharacterRange:]): (-[WebHTMLView selectedRange]): (-[WebHTMLView markedRange]): (-[WebHTMLView attributedSubstringFromRange:]): (-[WebHTMLView conversationIdentifier]): (-[WebHTMLView hasMarkedText]): (-[WebHTMLView unmarkText]): (-[WebHTMLView setMarkedText:selectedRange:]): (-[WebHTMLView doCommandBySelector:]): (-[WebHTMLView insertText:]):
- WebView.subproj/WebHTMLViewInternal.h:
- WebView.subproj/WebView.m:
- 6:27 PM Changeset in webkit [7159] by
-
- 2 edits in branches/Safari-1-2-branch/WebCore
Rolled in the change below from HEAD to fix this SU bug:
<rdar://problem/3745334> *SUPanMoccasin* Seed: WebKit: Table's caption broken
2004-07-29 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
<rdar://problem/3745808> Seed: WebKit: Table's caption broken
- khtml/html/htmlparser.cpp: (KHTMLParser::insertNode): When a caption appears in an illegal place in a table, pop blocks until we hit a place where it's allowed.
- 6:22 PM Changeset in webkit [7158] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3745808> Seed: WebKit: Table's caption broken
- khtml/html/htmlparser.cpp: (KHTMLParser::insertNode): When a caption appears in an illegal place in a table, pop blocks until we hit a place where it's allowed.
- 2:51 PM Changeset in webkit [7157] by
-
- 3 edits in trunk
155u, 2.0 for TOT. The tree is open!
- 2:45 PM Changeset in webkit [7156]
-
- 3 copies in tags/Safari-154
This commit was manufactured by cvs2svn to create tag 'Safari-154'.
- 2:45 PM Changeset in webkit [7155] by
-
- 6 edits in trunk
Safari-154 stamp
- 1:18 PM Changeset in webkit [7154] by
-
- 2 edits in trunk/WebKit
Reviewed by Ken.
- fill in some unimplemented methods
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView moveToBeginningOfDocument:]): Implement, using new document granularity. (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]): Ditto. (-[WebHTMLView moveToBeginningOfParagraph:]): Implement, even though the underlying WebCore code is not yet implemented. (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]): Ditto. (-[WebHTMLView moveToEndOfDocument:]): More of the same. (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]): Ditto. (-[WebHTMLView moveToEndOfParagraph:]): More of the same. (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]): Ditto. (-[WebHTMLView pageDown:]): Added comment describing desired behavior. (-[WebHTMLView pageUp:]): Ditto. (-[WebHTMLView copyFont:]): Ditto. (-[WebHTMLView pasteFont:]): Ditto. (-[WebHTMLView changeAttributes:]): Ditto. (-[WebHTMLView indent:]): Ditto.
- 1:04 PM Changeset in webkit [7153] by
-
- 8 edits in trunk/WebCore
Reviewed by Ken.
- added constants for motion across entire document for use in operations like move to beginning of document
- khtml/xml/dom_selection.h: Added DOCUMENT to ETextGranularity.
- khtml/xml/dom_selection.cpp: (DOM::Selection::modifyExtendingRightForward): Added case for DOCUMENT. (DOM::Selection::modifyMovingRightForward): Added case for DOCUMENT. (DOM::Selection::modifyExtendingLeftBackward): Added case for DOCUMENT. (DOM::Selection::modifyMovingLeftBackward): Added case for DOCUMENT. (DOM::Selection::validate): Changed if statements into switch statement, added case for DOCUMENT.
- kwq/WebCoreBridge.h: Added WebCoreBridge to WebSelectionGranularity.
- 11:06 AM Changeset in webkit [7152] by
-
- 6 edits in trunk/WebCore
Small refinement of last checkin. The text iterators now return reasonable values
for range() when atEnd, which gets rid of special cases and pitfalls in the client.
Reviewed by Ken.
- khtml/misc/khtml_text_operations.cpp: (khtml::TextIterator::TextIterator): Set endOffset to a valid value instead of using LONG_MAX. (khtml::TextIterator::range): Implement when atEnd. (khtml::CharacterIterator::range): Don't massage result when atEnd. (khtml::WordAwareIterator::WordAwareIterator): Now that this is fixed, we no longer need this special case. (khtml::WordAwareIterator::advance): Always set range, even when atEnd, now that TextIterator::range() always works.
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::childNodeCount): Made const (NodeBaseImpl::maxOffset): Add missing implementation
- khtml/xml/dom_nodeimpl.h:
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::advanceToNextMisspelling): Get rid of special cases, always call range on our iterator even when it is atEnd.