Timeline
Dec 15, 2004:
- 5:02 PM Changeset in webkit [8220] by
-
- 2 edits in trunk/WebCore
Reviewed by Ken.
- fixed problem where plain-text would put a blank line between each <p> even when they have no margins
- khtml/editing/visible_text.cpp: (khtml::TextIterator::exitNode): Add more checks and only set the "add one more newline" flag if the margin is sufficient. A more complete fix would ignore the node type altogether and use the render tree instead.
- 11:13 AM Changeset in webkit [8219] by
-
- 12 edits2 adds in trunk
WebCore:
Reviewed by Ken.
- rest of WebCore fix for <rdar://problem/3790011> undoable operations all say "Undo" in the menu, no specific action names
- khtml/editing/edit_actions.h: new header, contains EditAction enum (renamed from HTMLEditAction, formerly in htmlediting.h)
- ForwardingHeaders/editing/edit_actions.h: new forwarding header
- khtml/editing/htmlediting.h:
- removed HTMLEditAction enum in favor of including edit_actions.h; …
- namespace to EditAction usages; added m_editingAction ivar to ApplyStyleCommand
- khtml/editing/htmlediting.cpp: (khtml::EditCommandPtr::editingAction): update for enum name change (khtml::EditCommand::editingAction): ditto (khtml::ApplyStyleCommand::ApplyStyleCommand): added editingAction parameter to this constructor (khtml::ApplyStyleCommand::editingAction): return new ivar (khtml::DeleteSelectionCommand::editingAction): update for enum name change (khtml::MoveSelectionCommand::editingAction): ditto (khtml::TypingCommand::editingAction): ditto (khtml::ReplaceSelectionCommand::editingAction): ditto
- khtml/khtml_part.h: added EditAction parameter to applyStyle and computeAndSetTypingStyle
- khtml/khtml_part.cpp: (KHTMLPart::computeAndSetTypingStyle): added EditAction parameter (KHTMLPart::applyStyle): ditto
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::registerCommandForUndoOrRedo): do the cast from EditAction to WebUndoAction a different way to match other code
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge setTypingStyle:withUndoAction:]): added WebUndoAction parameter, passed into ApplyStyleCommand constructor (-[WebCoreBridge applyStyle:withUndoAction:]): ditto
- WebCore.pbproj/project.pbxproj: updated for new files
WebKit:
Reviewed by Ken.
- rest of WebKit fix for <rdar://problem/3790011> undoable operations all say "Undo" in the menu, no specific action names
I only know of one loose end currently, which I wrote up as <rdar://problem/3920971> Edit menu
says "Undo Change Attributes" when it should say "Undo Set Color", from font panel
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): use WebUndoActionSetColor when dragging color swatch (-[WebHTMLView _applyStyleToSelection:withUndoAction:]): new WebUndoAction parameter, passed across bridge (-[WebHTMLView _toggleBold]): use WebUndoActionSetFont (-[WebHTMLView _toggleItalic]): use WebUndoActionSetFont (-[WebHTMLView pasteFont:]): use WebUndoActionPasteFont (-[WebHTMLView changeFont:]): use WebUndoActionSetFont (-[WebHTMLView changeAttributes:]): use WebUndoActionChangeAttributes (-[WebHTMLView _undoActionFromColorPanelWithSelector:]): new method, returns WebUndoActionSetBackgroundColor or WebUndoActionSetColor (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]): now calls _undoActionFromColorPanelWithSelector (-[WebHTMLView changeColor:]): use WebUndoActionSetColor (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]): new WebUndoAction parameter, passed through (-[WebHTMLView alignCenter:]): use WebUndoActionCenter (-[WebHTMLView alignJustified:]): use WebUndoActionJustify (-[WebHTMLView alignLeft:]): use WebUndoActionAlignLeft (-[WebHTMLView alignRight:]): use WebUndoActionAlignRight (-[WebHTMLView subscript:]): use WebUndoActionAlignSubscript (-[WebHTMLView superscript:]): use WebUndoActionAlignSuperscript (-[WebHTMLView unscript:]): use WebUndoActionAlignUnscript (-[WebHTMLView underline:]): use WebUndoActionAlignUnderline
- WebView.subproj/WebView.m: (-[WebView setTypingStyle:]): pass WebUndoActionUnspecified through as new parameter since we don't have any more specific info (-[WebView applyStyle:]): ditto
Dec 14, 2004:
- 6:42 PM Changeset in webkit [8218] by
-
- 2 adds in trunk/LayoutTests/fast/table
Add layout test for large rowspans.
- 6:41 PM Changeset in webkit [8217] by
-
- 4 edits in trunk/WebCore
Fix for 3562458, rowspan and colspan converted to ints so that large values will work for them. Remove
the ridiculous 1024 limit on the span values.
- khtml/html/html_tableimpl.cpp: (HTMLTableCellElementImpl::parseHTMLAttribute):
- khtml/rendering/render_table.cpp: (RenderTableCell::collapsedBottomBorder):
- khtml/rendering/render_table.h: (khtml::RenderTableCell::colSpan): (khtml::RenderTableCell::setColSpan): (khtml::RenderTableCell::rowSpan): (khtml::RenderTableCell::setRowSpan): (khtml::RenderTableCol::span): (khtml::RenderTableCol::setSpan):
- 6:27 PM Changeset in webkit [8216] by
-
- 3 edits in trunk/WebCore
Make sure <col> and <colgroup> can have spans updated dynamically as well.
Reviewed by rjw
- khtml/html/html_tableimpl.cpp: (HTMLTableColElementImpl::parseHTMLAttribute):
- khtml/rendering/render_table.cpp: (RenderTableCell::updateFromElement): (RenderTableCol::updateFromElement):
- 6:20 PM Changeset in webkit [8215] by
-
- 1 edit in trunk/WebCore/khtml/rendering/render_table.cpp
Fix crasher caused by lack of null style check.
- 6:09 PM Changeset in webkit [8214] by
-
- 3 edits2 adds in trunk
Fix for 3833123, setting a cell's colspan does not update rendering like it should.
Reviewed by rjw
- khtml/html/html_tableimpl.cpp: (HTMLTableCellElementImpl::parseHTMLAttribute):
- khtml/rendering/render_table.cpp: (RenderTableCell::RenderTableCell): (RenderTableCell::updateFromElement):
- 6:00 PM Changeset in webkit [8213] by
-
- 4 edits in trunk
WebKit:
Helper method to get URL of plugin view.
Reviewed by Chris.
- Misc.subproj/WebNSViewExtras.m: (-[NSView _webViewURL]):
Pass URL of plugin view when call into JNI.
Reviewed by Chris.
- bindings/jni/jni_objc.mm: (KJS::Bindings::dispatchJNICall):
- 5:53 PM Changeset in webkit [8212] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3864536> crash copying text from other apps and pasting in a sticky in dashboard
Reviewed by hyatt.
- khtml/editing/markup.cpp: (khtml::createFragmentFromText): ref and deref the fragment since calling appendChild can completely deref it
- 5:13 PM Changeset in webkit [8211] by
-
- 2 edits5 adds in trunk
Fix for 3785211. Make sure to do a layout with the old position before doing a layout after changing to the new position.
This is actually a regression from my positioned object DHTML optimization.
Reviewed by kocienda
- khtml/rendering/render_object.cpp: (RenderObject::setStyle):
- 4:36 PM Changeset in webkit [8210] by
-
- 4 edits2 adds in trunk
Make sure the class attribute works when newlines are present in the attribute.
Reviewed by kocienda
- khtml/html/html_elementimpl.cpp: (HTMLNamedAttrMapImpl::parseClassAttribute):
- 2:34 PM Changeset in webkit [8209] by
-
- 2 edits in trunk/WebKit
Reviewed by rjw.
<rdar://problem/3855573> Remove reference to "WebScriptMethods" from WebScriptObject.h comments
- Plugins.subproj/WebPlugin.h: changed instances of "WebScriptMethods" to "WebScripting" in this file as well, as requested in the bug report
- 1:23 PM Changeset in webkit [8208] by
-
- 2 edits in trunk/WebKit
Reviewed by John.
<rdar://problem/3912488> Mail throws an exception after backspacing "away" inline input
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView setMarkedText:selectedRange:]): Don't try to set a selection if we end up with no marked text, since that case fails and is unnecessary.
- 11:52 AM Changeset in webkit [8207] by
-
- 3 edits in trunk/WebCore
Reviewed by Ken.
- added Undo action names for Cut, Paste, and Drag
- khtml/editing/htmlediting.h:
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::editingAction): overridden to return HTMLEditActionCut (khtml::MoveSelectionCommand::editingAction): overridden to return HTMLEditActionDrag (khtml::ReplaceSelectionCommand::editingAction): overridden to return HTMLEditActionPaste
- 11:17 AM Changeset in webkit [8206] by
-
- 8 edits in trunk
WebCore:
Reviewed by Ken.
- architecture for WebCore part of fix for <rdar://problem/3790011> undoable operations all say "Undo" in the menu, no specific action names
The remaining step is to make each EditCommand subclass override editingAction() to return an
appropriate value. (Unfortunately the mapping between subclass and user-distinguishable action
is not completely straightforward, so this next step isn't trivial.)
- khtml/editing/htmlediting.h: new enum for HTMLEditAction
- khtml/editing/htmlediting.cpp: (khtml::EditCommandPtr::editingAction): new method, calls through to EditCommand (khtml::EditCommand::editingAction): new method for subclasses to override, returns HTMLEditActionUnspecified at this level (khtml::TypingCommand::editingAction): proof of concept override, returns HTMLEditActionTyping
- kwq/KWQKHTMLPart.h: declare new private bottleneck method registerCommandForUndoOrRedo
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::registerCommandForUndoOrRedo): new bottleneck method to reduce code duplication; now calls over the bridge to get the localized string to use for the Undo action name (KWQKHTMLPart::registerCommandForUndo): now calls new bottleneck method (KWQKHTMLPart::registerCommandForRedo): now calls new bottleneck method
- kwq/WebCoreBridge.h: new enum for WebUndoAction, maps directly to HTMLEditAction. Declaration of nameForUndoAction:
WebKit:
Reviewed by Ken.
- WebKit part of fix for <rdar://problem/3790011> undoable operations all say "Undo" in the menu, no specific action names
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge nameForUndoAction:]): renamed from setUndoActionNamePlaceholder, replaced arbitrary integers with enum values, and handled new "unspecified" case as a fallback
- 9:26 AM Changeset in webkit [8205] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- added a bunch of missing nil checks; our old version of inherits used to work for nil (by accident)
- khtml/rendering/render_frames.cpp: (RenderPart::~RenderPart): Check widget for nil. (RenderPart::setWidget): Ditto. (RenderFrame::slotViewCleared): Ditto. (RenderPartObject::slotViewCleared): Ditto.
Dec 13, 2004:
- 8:08 PM Changeset in webkit [8204]
-
- 5 copies2 deletes in tags/WebCore-175~1
This commit was manufactured by cvs2svn to create tag
'WebCore-175~1'.
- 8:08 PM Changeset in webkit [8203] by
-
- 2 edits in branches/Safari-175-branch/WebCore
versioning for dot submission, WebCore-175.1
- 8:00 PM Changeset in webkit [8202] by
-
- 2 edits in branches/Safari-175-branch/WebCore
- fix <rdar://problem/3915008> REGRESSION (Mail): Too much white space between lines separated by carriage returns for dot submission to Tiger.
- khtml/editing/htmlediting.cpp: (khtml::InsertParagraphSeparatorCommand::doApply):
- 6:44 PM Changeset in webkit [8201] by
-
- 6 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3827799> repro. crash with IBM Rational ClearCase Web under Safari (Java/LiveConnect-related)
Add support for calling static Java methods from JavaScript.
Reviewed by Maciej.
- bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
- bindings/jni/jni_runtime.cpp: (JavaMethod::JavaMethod):
- bindings/jni/jni_runtime.h: (KJS::Bindings::JavaMethod::isStatic):
- bindings/jni/jni_utility.cpp: (callJNIStaticMethod): (KJS::Bindings::callJNIBooleanMethod): (KJS::Bindings::callJNIStaticBooleanMethod):
- bindings/jni/jni_utility.h:
- 4:29 PM Changeset in webkit [8200] by
-
- 7 edits in trunk
WebKit:
Fixed <rdar://problem/3887767> LiveConnect doesn't propagate Java exceptions back to JavaScript (prevents security suite from running)
Reviewed by John.
- Plugins.subproj/WebJavaPlugIn.h:
Fixed <rdar://problem/3887767> LiveConnect doesn't propagate Java exceptions back to JavaScript (prevents security suite from running)
Reviewed by John.
- bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
- bindings/jni/jni_objc.mm: (KJS::Bindings::dispatchJNICall):
- bindings/jni/jni_runtime.h:
- bindings/jni/jni_utility.h:
- 4:15 PM Changeset in webkit [8199] by
-
- 2 edits in trunk/WebKit
Reviewed by Maciej.
- fixed <rdar://problem/3744583> Safari can not quit when a webpage has a login sheet that can't be cancelled.
The proper fix for this would be to change the class of the NSPanel in the nib file.
But since this would require a localization change, I did a run-time hack instead.
I'll file a bug about fixing this when we're out of localization freeze.
- Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel replacePanelWithSubclassHack]): new method, creates a new panel that is identical to the original one except that it's our subclass, and moves all the subviews of the original panel into the new one. (-[WebAuthenticationPanel loadNib]): call replacePanelWithSubclassHack (-[NonBlockingPanel _blocksActionWhenModal:]): only method of new NSPanel subclass; overrides this SPI to allow the user to quit when one of these panels/sheets is on-screen
- 4:10 PM Changeset in webkit [8198] by
-
- 34 edits3 adds in trunk/WebCore
Reviewed by Ken.
- moved markup-related functions into new sources files in the editing directory
- removed all of the uses of dynamic_cast, preparing to turn off RTTI to make our code smaller and slightly faster
- ForwardingHeaders/editing/markup.h: Added.
- khtml/editing/markup.h: Added.
- khtml/editing/markup.cpp: Added.
- WebCore.pbproj/project.pbxproj: Added markup.h/cpp.
- khtml/dom/dom_node.cpp: (Node::toHTML): Call createMarkup since there's no toHTML in NodeImpl any more.
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::innerHTML): Changed to call createMarkup. (HTMLElementImpl::outerHTML): Ditto.
- khtml/ecma/kjs_window.cpp: (Window::retrieveWindow): Comment out assert that uses dynamic_cast. (Window::retrieveActive): Ditto.
- khtml/editing/htmlediting.h: Added forward class declaration needed now that I removed one elsewhere.
- khtml/xml/dom_docimpl.h: Ditto.
- khtml/khtml_part.cpp: (KHTMLPart::slotDebugDOMTree): Use createMarkup instead of toHTML. (KHTMLPart::processObjectRequest): Use inherits instead of dynamic_cast.
- khtml/rendering/render_image.cpp: (RenderImage::paint): Add an explicit QChar conversion so this code still works even with the additional replace overloads added to QString.
- kwq/KWQTextCodec.mm: (QTextCodec::fromUnicode): Ditto.
- khtml/rendering/render_object.h: Removed the version of arenaDelete that does not take an object base pointer, because it used dynamic_cast in its implementation. Made the other version public.
- khtml/rendering/render_object.cpp: Ditto.
- khtml/rendering/render_replaced.cpp: (RenderWidget::deref): Pass object base pointer to arenaDelete.
- khtml/xml/dom2_rangeimpl.h: Removed extra parameters from toHTML, and unneeded includes and declarations.
- khtml/xml/dom2_rangeimpl.cpp: (DOM::RangeImpl::toHTML): Changed to call createMarkup, and moved all the support code into markup.cpp.
- khtml/xml/dom_nodeimpl.h: Moved toHTML and related functions into markup.cpp.
- khtml/xml/dom_nodeimpl.cpp: Ditto.
- khtml/xml/dom_position.cpp: (DOM::startPosition): Implemented the version of this that takes a RangeImpl. Also added null checks so these return null positions rather than raising exceptions. (DOM::endPosition): Ditto.
- khtml/khtmlview.h: Added an APPLE_CHANGES function so inherits can detect this class without dynamic_cast.
- kwq/KWQFrame.h: Ditto.
- kwq/KWQFrame.mm: (QFrame::isQFrame): Ditto.
- kwq/KWQKPartsPart.h: Ditto.
- kwq/KWQKPartsPart.mm: (KParts::ReadOnlyPart::isKPartsReadOnlyPart): Ditto.
- kwq/KWQScrollView.h: Ditto.
- kwq/KWQScrollView.mm: (QScrollView::isQScrollView): Ditto.
- kwq/KWQKHTMLPart.h: Ditto.
- kwq/KWQKHTMLPart.mm: (KHTMLView::isKHTMLView): Ditto. (KWQKHTMLPart::setTitle): Added an explicit QChar conversion so this code still works even with the additional replace overloads added to QString. (KWQKHTMLPart::setStatusBarText): Ditto. (KWQKHTMLPart::runJavaScriptAlert): Ditto. (KWQKHTMLPart::runJavaScriptConfirm): Ditto. (KWQKHTMLPart::runJavaScriptPrompt): Ditto. (KWQKHTMLPart::attributedString): Ditto. (KWQKHTMLPart::isCharacterSmartReplaceExempt): Ditto. (KWQKHTMLPart::isKHTMLPart): That dynamic_cast thing (see above).
- kwq/KWQObject.h: Added virtual methods for the few cases where we need dynamic_cast-like behavior.
- kwq/KWQObject.mm: (QObject::inherits): Changed to not use dynamic cast. (QObject::isKHTMLPart): Added. Returns false. (QObject::isKHTMLView): Ditto. (QObject::isKPartsReadOnlyPart): Ditto. (QObject::isQFrame): Ditto. (QObject::isQScrollView): Ditto.
- kwq/KWQRenderTreeDebug.cpp: (write): Changed to use inherits rather than dynamic_cast. (writeSelection): Ditto.
- kwq/KWQSlot.mm: (KWQSlot::call): Call through to the version with just a job pointer parameter rather than going straight on to the "no parameters at all" version.
- kwq/KWQString.h:
- kwq/KWQString.mm: (QString::replace): Added overloads.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge markupStringFromNode:nodes:]): Changed to call functions in markup.h. (-[WebCoreBridge markupStringFromRange:nodes:]): Ditto. (-[WebCoreBridge selectedString]): Added an explicit QChar conversion so this code still works even with the additional replace overloads added to QString. (-[WebCoreBridge stringForRange:]): Ditto. (-[WebCoreBridge copyDOMNode:copier:]): Changed to call functions in markup.h. (-[WebCoreBridge elementAtPoint:]): QChar conversion. (-[WebCoreBridge documentFragmentWithMarkupString:baseURLString:]): Changed to call functions in markup.h. (-[WebCoreBridge documentFragmentWithText:]): Changed to call functions in markup.h.
- 3:17 PM Changeset in webkit [8197] by
-
- 2 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3917956> REGRESSION (Mail): pasting can leave insertion point inside pasted text
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): Fix coding mistake. Calculations of bool flag based on leading and trailing whitespace positions was reversed! I must have introduced this error recently when changing around this code.
- 2:59 PM Changeset in webkit [8196] by
-
- 3 edits in trunk/WebCore
Fix for 3915787, macobserver doesn't paint. floatRect() needed to be const in the base class. Also hit-testing
and painting was using the wrong rect when setting up the x/y of the rect.
Reviewed by mjs
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::paint): (khtml::RenderBlock::nodeAtPoint):
- khtml/rendering/render_object.h: (khtml::RenderObject::floatRect):
- 2:41 PM Changeset in webkit [8195] by
-
- 3 edits2 adds in trunk
Reviewed by John
Fix for this bug:
<rdar://problem/3917863> REGRESSION (Mail): pasting two lines of plain text copied from an RTF document results in two styles
Code to figuire out the end node to merge was missing the font tag in the second paragraph
written out by AppKit convert-to-HTML function. I refined the algorithm to be smarter.
- khtml/editing/htmlediting.cpp: (khtml::ReplacementFragment::mergeEndNode): Refine algorithm used to walk through the fragment being pasted looking for the node that is the last inline in the last block of the fragment. The old algorithm was insufficiently powerful. (khtml::ReplacementFragment::enclosingBlock): New helper function.
- khtml/editing/htmlediting.h: Add declaration for new helper function.
- layout-tests/editing/pasteboard/paste-text-011-expected.txt: Added.
- layout-tests/editing/pasteboard/paste-text-011.html: Added.
- 1:01 PM Changeset in webkit [8194] by
-
- 8 edits in trunk/WebCore
Reviewed by John
WebCore side of fix for this bug:
<rdar://problem/3768372> REGRESSION (Mail): paste of text ending in whitespace loses whitespace
Note that we are coordinating with Doug Davidson on the AppKit team to make a complete fix for this
bug. This change involves our half of the needed changes.
Note that a lot of this change has to do with changing code to use a <br> element instead of
a comment node as the mechanism to annotate HTML with information used to fix the bug. In some
other places, code to handle comments in markup can be removed since we do not use comments for
such annotations after this change.
- khtml/editing/htmlediting.cpp: Remove isComment() helper; no longer needed. (khtml::ReplacementFragment::ReplacementFragment): Change m_hasInterchangeNewlineComment name to m_hasInterchangeNewline. (khtml::ReplacementFragment::isInterchangeNewlineNode): Name changed from isInterchangeNewlineComment. (khtml::ReplacementFragment::isInterchangeConvertedSpaceSpan): Local variable name convertedSpaceSpanClass changed to convertedSpaceSpanClassString to match other uses of the idiom used here. (khtml::ReplaceSelectionCommand::doApply): Change hasInterchangeNewlineComment() name to hasInterchangeNewline().
- khtml/editing/htmlediting.h: Change names as noted in .cpp file. Remove isComment() helper; no longer needed. (khtml::ReplacementFragment::hasInterchangeNewline): Change hasInterchangeNewlineComment() name to hasInterchangeNewline().
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::createContextualFragment): No longer has includeCommentsInDOM flag; no longer needed as we do not annotate fragments with comments any longer.
- khtml/html/html_elementimpl.h: Ditto.
- khtml/xml/dom2_rangeimpl.cpp: Remove addCommentToHTMLMarkup() helper. No longer needed. (DOM::interchangeNewlineMarkupString): New helper to return <br> element markup we use to annotate content for interchange. (DOM::RangeImpl::toHTML): No longer uses addCommentToHTMLMarkup; now calls interchangeNewlineMarkupString(). Remove spurious semi-colon.
- khtml/xml/dom2_rangeimpl.h: Remove obsolete addCommentToHTMLMarkup() function and EAddToMarkup enum.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge documentFragmentWithMarkupString:baseURLString:]): No longer pass bool to ask for including comments in DOM when calling createContextualFragment().
- 12:59 PM Changeset in webkit [8193] by
-
- 3 edits in trunk
Versions were backwards in TOT. They should read Safari 2.0 (175+), not Safari 175+ (2.0).